diff --git a/org b/org index d8899e210..3c282e755 100644 --- a/org +++ b/org @@ -5,7 +5,7 @@ START-INFO-DIR-ENTRY * Org Mode: (org). Outline-based notes management and organizer END-INFO-DIR-ENTRY - This manual is for Org-mode (version 5.01). + This manual is for Org-mode (version 5.02). Copyright (C) 2004, 2005, 2006, 2007 Free Software Foundation @@ -27,7 +27,7 @@ File: org, Node: Top, Next: Introduction, Prev: (dir), Up: (dir) Org Mode Manual *************** -This manual is for Org-mode (version 5.01). +This manual is for Org-mode (version 5.02). Copyright (C) 2004, 2005, 2006, 2007 Free Software Foundation @@ -51,7 +51,7 @@ This manual is for Org-mode (version 5.01). * Hyperlinks:: Notes in context * TODO items:: Every tree branch can be a TODO item * Tags:: Tagging headlines and matching sets of tags -* Properties:: +* Properties and columns:: * Timestamps:: Assign date and time to items * Agenda views:: Collecting information into views * Embedded LaTeX:: LaTeX fragments and formulas @@ -82,7 +82,8 @@ Document Structure * Archiving:: Move done task trees to a different place * Sparse trees:: Matches embedded in context * Plain lists:: Additional structure within an entry -* Drawers:: +* Drawers:: Tucking stuff away +* orgstruct-mode:: Structure editing outside Org-mode Archiving @@ -150,7 +151,7 @@ Tags * Setting tags:: How to assign tags to a headline * Tag searches:: Searching for combinations of tags -Properties +Properties and Columns * Property syntax:: How properties are spelled out * Special properties:: Access to other Org-mode features @@ -163,6 +164,11 @@ Column View * Defining columns:: The COLUMNS format property * Using column view:: How to create and use column view +Defining Columns + +* Scope of column definitions:: +* Column attributes:: + Timestamps * Time stamps:: Assigning a time to a tree entry @@ -349,7 +355,7 @@ selected by tags etc are created dynamically when you need them. Org-mode keeps simple things simple. When first fired up, it should feel like a straightforward, easy to use outliner. Complexity is not imposed, but a large amount of functionality is available when you need -it. Org-mode can be used on different levels and in different ways, for +it. Org-mode is a toolbox and can be used in different ways, for example as: * outline extension with visibility cycling and structure editing @@ -358,13 +364,16 @@ example as: * TODO list editor * full agenda and planner with deadlines and work scheduling * environment to implement David Allen's GTD system + * a basic database application * simple hypertext system, with HTML export * publishing tool to create a set of interlinked webpages Org-mode's automatic, context sensitive table editor with spreadsheet capabilities can be integrated into any major mode by activating the minor Orgtbl-mode. Using a translation step, it can be used to maintain -tables in arbitrary file types, for example in LaTeX. +tables in arbitrary file types, for example in LaTeX. The structure +editing and list creation capabilities can be used outside Org-mode with +the minor Orgstruct-mode. There is a website for Org-mode which provides links to the newest version of Org-mode, as well as additional information, frequently asked @@ -512,7 +521,8 @@ edit the structure of the document. * Archiving:: Move done task trees to a different place * Sparse trees:: Matches embedded in context * Plain lists:: Additional structure within an entry -* Drawers:: +* Drawers:: Tucking stuff away +* orgstruct-mode:: Structure editing outside Org-mode  File: org, Node: Outlines, Next: Headlines, Prev: Document structure, Up: Document structure @@ -996,15 +1006,15 @@ XEmacs, you should use Kyle E. Jones' `filladapt.el'. To turn this on, put into `.emacs': `(require 'filladapt)'  -File: org, Node: Drawers, Prev: Plain lists, Up: Document structure +File: org, Node: Drawers, Next: orgstruct-mode, Prev: Plain lists, Up: Document structure 2.9 Drawers =========== Sometimes you want to keep information associated with an entry, but you -normally don't want to see it, except when explicitly asking for it. -For this, Org-mode has _drawers_. Drawers need to be configured with -the variable `org-drawers', and look like this: +normally don't want to see it. For this, Org-mode has _drawers_. +Drawers need to be configured with the variable `org-drawers', and look +like this: ** This is a headline Still outside the drawer @@ -1017,7 +1027,29 @@ the variable `org-drawers', and look like this: hide and show the entry, but keep the drawer collapsed to a single line. In order to look inside the drawer, you need to move the cursor to the drawer line and press there. Org-mode uses a drawer for storing -properties (*note Properties::). +properties (*note Properties and columns::). + + +File: org, Node: orgstruct-mode, Prev: Drawers, Up: Document structure + +2.10 The Orgstruct minor mode +============================= + +If you like the intuitive way the Org-mode structure editing and list +formatting works, you might want to use these commands in other modes +like text-mode or mail-mode as well. The minor mode Orgstruct-mode +makes this possible. You can always toggle the mode with `M-x +orgstruct-mode'. To turn it on by default, for example in mail mode, +use + + (add-hook 'mail-mode-hook 'turn-on-orgstruct) + + When this mode is active and the cursor is on a line that looks to +Org-mode like a headline of the first line of a list item, most +structure editing commands will work, even if the same keys normally +have different functionality in the major mode you are using. If the +cursor is not in one of those special lines, Orgstruct-mode lurks +silently in the shadow.  File: org, Node: Tables, Next: Hyperlinks, Prev: Document structure, Up: Top @@ -1441,15 +1473,16 @@ line like #+CONSTANTS: c=299792458. pi=3.14 eps=2.4e-6 -Also properties (*note Properties::) can be used as constants in table -formulas: For a property `:XYZ:' use the name `$PROP_XYZ', and the -property will be searched in the current outline entry and in the -hierarchy above it. If you have the `constants.el' package, it will -also be used to resolve constants, including natural constants like -`$h' for Planck's constant, and units like `$km' for kilometers(1). -Column names and parameters can be specified in special table lines. -These are described below, see *Note Advanced features::. All names -must start with a letter, and further consist of letters and numbers. +Also properties (*note Properties and columns::) can be used as +constants in table formulas: For a property `:XYZ:' use the name +`$PROP_XYZ', and the property will be searched in the current outline +entry and in the hierarchy above it. If you have the `constants.el' +package, it will also be used to resolve constants, including natural +constants like `$h' for Planck's constant, and units like `$km' for +kilometers(1). Column names and parameters can be specified in special +table lines. These are described below, see *Note Advanced features::. +All names must start with a letter, and further consist of letters and +numbers. ---------- Footnotes ---------- @@ -2743,7 +2776,7 @@ The following commands work with checkboxes: with `C-c C-c'.  -File: org, Node: Tags, Next: Properties, Prev: TODO items, Up: Top +File: org, Node: Tags, Next: Properties and columns, Prev: TODO items, Up: Top 6 Tags ****** @@ -2982,10 +3015,10 @@ instead of any TAG an expression like `LEVEL=3'. For example, a search BOSS and are _not_ marked with the todo keyword DONE.  -File: org, Node: Properties, Next: Timestamps, Prev: Tags, Up: Top +File: org, Node: Properties and columns, Next: Timestamps, Prev: Tags, Up: Top -7 Properties -************ +7 Properties and Columns +************************ Properties are a set of key-value pairs associated with an entry. There are two main applications for properties in Org-mode. First, properties @@ -2995,6 +3028,8 @@ tags like `:release_1:', `:release_2:', it can be more efficient to use a property `RELEASE' with a value `1.0' or `2.0'. Second, you can use properties to implement (very basic) database capabilities in an Org-mode buffer, for example to create a list of Music CD's you own. +You can edit and view properties conveniently in column view (*note +Column view::). * Menu: @@ -3005,7 +3040,7 @@ Org-mode buffer, for example to create a list of Music CD's you own. * Property API:: Properties for Lisp programmers  -File: org, Node: Property syntax, Next: Special properties, Prev: Properties, Up: Properties +File: org, Node: Property syntax, Next: Special properties, Prev: Properties and columns, Up: Properties and columns 7.1 Property Syntax =================== @@ -3022,23 +3057,65 @@ and the value after it. Here is an example: :Title: Goldberg Variations :Composer: J.S. Bach :Artist: Glen Gould + :Publisher: Deutsche Grammphon + :NDisks: 1 :END: -The following commands help to insert properties: + You may define the allowed values for a particular property `XYZ' by +setting a property `XYZ_ALL'. This special property is _inherited_, so +if you set it in a level 1 entry, it will apply to the entire tree. +When allowed values are defined, setting the corresponding property +becomes easier and is less prone to typing errors. For the example +with the CD collection, we can predefine publishers and the number of +disks in a box like this: + + * CD collection + :PROPERTIES: + :NDisks_ALL: 1 2 3 4 + :Publisher_ALL: "Deutsche Grammophon" Phillips EMI + :END: + +The following commands help to work with properties: `M-' After an initial colon in a line, complete property keys. All keys used in the current file will be offered as possible completions. +`M-x org-insert-property-drawer' + Insert a property drawer into the current entry. The drawer will + be inserted early in the entry, but after the lines with planning + information like deadlines. + +`C-c C-c' + With the cursor in a property drawer, this executes property + commands. + +`C-c C-c s' + Set a property in the current entry. Both the property and the + value can be inserted using completion. + +`S-/' + Switch property at point to the next/previous allowed value. + +`C-c C-c d' + Remove a property from the current entry. + +`C-c C-c D' + Globally remove a property, from all entries in the current file. +  -File: org, Node: Special properties, Next: Property searches, Prev: Property syntax, Up: Properties +File: org, Node: Special properties, Next: Property searches, Prev: Property syntax, Up: Properties and columns 7.2 Special Properties ====================== -Several properties are special, because they can be used to access other -features of Org-mode like the TODO status: +Special properties provide alternative access method to Org-mode +features discussed in the previous chapters, like the TODO state or the +priority of an entry. This interface exists so that you can include +these states into columns view (*note Column view::). The following +property names are special and should not be used as keys in the +properties drawer: TODO The TODO keyword of the entry. TAGS The tags defined directly in the headline. @@ -3048,7 +3125,7 @@ features of Org-mode like the TODO status: SCHEDULED The scheduling time stamp, without the angular brackets.  -File: org, Node: Property searches, Next: Column view, Prev: Special properties, Up: Properties +File: org, Node: Property searches, Next: Column view, Prev: Special properties, Up: Properties and columns 7.3 Property searches ===================== @@ -3065,25 +3142,24 @@ and a `:with:' property that is matched by the regular expression `Sarah\|Denny'.  -File: org, Node: Column view, Next: Property API, Prev: Property searches, Up: Properties +File: org, Node: Column view, Next: Property API, Prev: Property searches, Up: Properties and columns 7.4 Column View =============== -If different items in a document have similar properties, it can be nice -to view and edit those properties in a table-like format, in _column -view_. Org-mode implements columns by overlaying a tabular structure -over the headline of an item. So the column view does not use a -special buffer, it happens in exactly the same buffer where the outline -is, and only temporarily changes the look of this buffer - not the -content. This has the advantage that you can still change the -visibility of the outline tree. For example, you get a compact table by -switching to CONTENTS view, but you can still open, read, and edit the -entry below each headline. Or, you can switch to column view after -executing a sparse tree command and in this way get a table only for the -selected items. Column view also works in agenda buffers (*note Agenda -views::) where queries have collected selected items, possibly from a -number of files. +A great way to view and edit properties in aan outline tree is _column +view_. In column view, each outline item is turned into a table row. +Columns in this table provide access to properties of the entries. +Org-mode implements columns by overlaying a tabular structure over the +headline of each item. While the headlines have been turned into a +table row, you can still change the visibility of the outline tree. +For example, you get a compact table by switching to CONTENTS view +(`S- S-', or simple `c' while column view is active), but you +can still open, read, and edit the entry below each headline. Or, you +can switch to column view after executing a sparse tree command and in +this way get a table only for the selected items. Column view also +works in agenda buffers (*note Agenda views::) where queries have +collected selected items, possibly from a number of files. * Menu: @@ -3096,60 +3172,84 @@ File: org, Node: Defining columns, Next: Using column view, Prev: Column view 7.4.1 Defining Columns ---------------------- -Setting up a column view first requires defining the columns. A column -definition is a property itself and looks like this: +Setting up a column view first requires defining the columns. This is +done by defining a column format line. - :COLUMNS: %25ITEM %TAGS %PRIORITY %TODO +* Menu: - This definition means that column 1 should be the first 25 -characters of the item itself, i.e. of the headline. You probably -always should start the column definition with the ITEM specifier - -just select a useful width for it. The other specifiers create columns -for the local tags, for the priority and for the TODO state. When no -width is given after the `%' character, the column will be exactly as -wide as it need to be in order to fully display all values. +* Scope of column definitions:: Where defined, where valid? +* Column attributes:: Appearance and content of a column + + +File: org, Node: Scope of column definitions, Next: Column attributes, Prev: Defining columns, Up: Defining columns + +7.4.1.1 Scope of column definitions +................................... + +To define a column format for an entire file, use a line like + + #+COLUMNS: %25ITEM %TAGS %PRIORITY %TODO + + To specify a format that only applies to a specific tree, add a +COLUMNS property to the top node of that tree, for example + ** Top node for columns view + :PROPERTIES: + :COLUMNS: %25ITEM %TAGS %PRIORITY %TODO + :END: If a `COLUMNS' property is present in an entry, it defines columns for the entry itself, and for the entire subtree below it. Since the -column definition is part of the hierarchical structure of the -document, you can define columns on level 1 that are general enough for -all sublevels, and more specific columns further down, when you edit a -deeper part of the tree. Here is an example: +column definition is part of the hierarchical structure of the document, +you can define columns on level 1 that are general enough for all +sublevels, and more specific columns further down, when you edit a +deeper part of the tree. - * People - :PROPERTIES: - :COLUMNS: %25ITEM %Name - :END: - ** Family - :PROPERTIES: - :COLUMNS: %25ITEM %Name %3Age - :END: - *** Sam - Info about Sam, including a property list with Name and Age. - *** Sarah - Info about Sarah, including a property list with Name and Age. - ** Office - :PROPERTIES: - :COLUMNS: %25ITEM %Name %Function %Salary - :END: - *** Boss - Info about the Boss, including a property list with Name, - Function and Salary (if only we knew....). + +File: org, Node: Column attributes, Prev: Scope of column definitions, Up: Defining columns - Now we have defined three different sets of columns. If you switch -to column view in the _Family_ section, you will get a different table -than if you do it in the _Office_ section. However, if you switch to -column view with the cursor on the _People_ section, the table will -cover all entries, but contain only the _Name_ column. +7.4.1.2 Column attributes +......................... - If no COLUMNS property applies to a given location, Org-mode uses a -default format specified in the variable `org-default-columns-format'. -This format in particular also applies when column view is invoked with -the cursor before the first headline. You can set the default format -on a per-file basis with a line (don't forget to press `C-c C-c' to -activate any changes to this line). +A column definition sets the attributes of a column. The general +definition looks like this: - #+COLUMNS: %25ITEM ....." + %[width]property[(title)][{summary-type}] + +Except for the percent sign and the property name, all items are +optional. The individual parts have the following meaning: + + width An integer specifying the width of the column in characters. + If omitted, the width will be determined automatically. + property The property that should be edited in this column. + (title) The header text for the column. If omitted, the + property name is used. + {summary-type} The summary type. If specified, the column values for + parent nodes are computed from the children. + Supported summary types are: + {+} Sum numbers in this column. + {:} Sum times, HH:MM:SS, plain numbers are hours. + {X} Checkbox status, [X] if all children are [X]. + +Here is an example for a complete columns definition, along with allowed +values. + + :COLUMNS: %20ITEM %9Approved(Approved?){X} %Owner %11Status %10Time_Spent{:} + :Owner_ALL: Tammy Mark Karl Lisa Don + :Status_ALL: "In progress" "Not started yet" "Finished" "" + :Approved_ALL: "[ ]" "[X]" + + The first column, `%25ITEM', means the first 25 characters of the +item itself, i.e. of the headline. You probably always should start the +column definition with the ITEM specifier. The other specifiers create +columns `Owner' with a list of names as allowed values, for `Status' +with four different possible values, and for a checkbox field +`Approved'. When no width is given after the `%' character, the column +will be exactly as wide as it needs to be in order to fully display all +values. The `Approved' column does have a modified title (`Approved?', +with a question mark). Summaries will be created for the `Time_Spent' +column by adding time duration expressions like HH:MM, and for the +`Approved' column, by providing an `[X]' status if all children have +been checked.  File: org, Node: Using column view, Prev: Defining columns, Up: Column view @@ -3157,15 +3257,35 @@ File: org, Node: Using column view, Prev: Defining columns, Up: Column view 7.4.2 Using Column View ----------------------- +Turning column view on and off +.............................. + `C-c C-x C-c' Create the column view for the local environment. This command searches the hierarchy, up from point, for a `COLUMNS' property that defines a format. When one is found, the column view table - is established for the entire subtree. + is established for the entire tree, starting from the entry that + contains the `COLUMNS' property. If none is found, the format is + taken from the `#+COLUMNS' line or from the variable + `org-columns-default-format', and column view is established for + the current entry and its subtree. + +`q' + Exit column view. + +Editing values +.............. ` ' Move through the column view from field to field. +`S-/' + Switch to the next/previous allowed value of the field. For this, + you have to have specified allowed values for a property. + +`n / p' + Same as `S-/' + `e' Edit the property at point. For the special properties, this will invoke the same interface that you normally use to change that @@ -3176,11 +3296,26 @@ File: org, Node: Using column view, Prev: Defining columns, Up: Column view View the full value of this property. This is useful if the width of the column is smaller than that of the value. -`q' - Exit column view. +`a' + Edit the list of allowed values for this property. If the list is + found in the hierarchy, the modified values is stored there. If + no list is found, the new value is stored in the first entry that + is part of the current column view. + +Modifying the table structure +............................. + +`< / >' + Make the column narrower/wider by one character. + +`S-M-' + Insert a new column, to the right of the current column. + +`S-M-' + Delete the current column.  -File: org, Node: Property API, Prev: Column view, Up: Properties +File: org, Node: Property API, Prev: Column view, Up: Properties and columns 7.5 The Property API ==================== @@ -3191,7 +3326,7 @@ features based on them. For more information see *Note Using the property API::.  -File: org, Node: Timestamps, Next: Agenda views, Prev: Properties, Up: Top +File: org, Node: Timestamps, Next: Agenda views, Prev: Properties and columns, Up: Top 8 Timestamps ************ @@ -4218,7 +4353,10 @@ Change display Delete other windows. `d w m y' - Switch to day/week/month/year view. + Switch to day/week/month/year view. When switching to day or week + view, this setting becomes the default for subseqent agenda + commands. Since month and year views are slow to create, the do + not become the default. `D' Toggle the inclusion of diary entries. See *Note Weekly/Daily @@ -5429,9 +5567,9 @@ tool. ---------- Footnotes ---------- - (1) `org-publish.el' is not yet part of Emacs, so if you are using -`org.el' as it comes with Emacs, you need to download this file -separately. Also make sure org.el is at least version 4.27. + (1) `org-publish.el' is not distributed with Emacs 21, if you are +still using Emacs 21, you need you need to download this file +separately.  File: org, Node: Configuration, Next: Sample configuration, Prev: Publishing, Up: Publishing @@ -5580,7 +5718,7 @@ respective variable for details. When a property is given a value in org-publish-project-alist, its setting overrides the value of the corresponding user variable (if any) -during publishing. options set within a file (*note Export options::), +during publishing. Options set within a file (*note Export options::), however, override everything.  @@ -5886,8 +6024,8 @@ file is visited again in a new Emacs session. logging record a timestamp when an item is marked DONE nologging don't record when items are marked DONE lognotedone record timestamp and a note when DONE - lognotestate record timestamp, note when TODO state changes - logrepeat record a not when re-instating a repeating item + lognotestate record timestamp and a note when TODO state changes + logrepeat record a note when re-instating a repeating item nologrepeat do not record when re-instating repeating item lognoteclock-out record timestamp and a note when clocking out Here are the options for hiding leading stars in outline headings. @@ -5961,6 +6099,9 @@ means in different contexts. - If the cursor is on a `<<>>', update radio targets and corresponding links in this buffer. + - If the cursor is in a property line or at the start or end of a + property drawer, offer property commands. + - If the cursor is in a plain list item with a checkbox, toggle the status of the checkbox. @@ -6888,12 +7029,12 @@ Index * agenda: Weekly/Daily agenda. (line 6) * agenda dispatcher: Agenda dispatcher. (line 6) * agenda files: Agenda files. (line 6) -* agenda files, removing buffers: Agenda commands. (line 236) +* agenda files, removing buffers: Agenda commands. (line 239) * agenda views: Agenda views. (line 6) * agenda views, custom: Custom agenda views. (line 6) * agenda views, exporting <1>: Exporting Agenda Views. (line 6) -* agenda views, exporting: Agenda commands. (line 225) +* agenda views, exporting: Agenda commands. (line 228) * agenda views, user-defined: Special agenda views. (line 6) * agenda, pipe: Extracting Agenda Information for other programs. @@ -6902,8 +7043,9 @@ Index * align, STARTUP keyword: In-buffer settings. (line 63) * allout.el: Conflicts. (line 6) * angular brackets, around links: External links. (line 43) -* API, for properties: Using the property API. +* API, for properties <1>: Using the property API. (line 6) +* API, for properties: Property API. (line 6) * archive locations: Moving subtrees. (line 21) * archiving: Archiving. (line 6) * ASCII export: ASCII export. (line 6) @@ -6924,7 +7066,7 @@ Index * calculations, in tables <1>: The spreadsheet. (line 6) * calculations, in tables: Built-in table editor. (line 141) -* calendar commands, from agenda: Agenda commands. (line 188) +* calendar commands, from agenda: Agenda commands. (line 191) * calendar integration: Weekly/Daily agenda. (line 24) * calendar, for selecting date: The date/time prompt. (line 26) @@ -6936,6 +7078,7 @@ Index * children, subtree visibility state: Visibility cycling. (line 10) * clean outline view: Clean view. (line 6) * column formula: Column formulas. (line 6) +* column view, for properties: Defining columns. (line 6) * commands, in agenda buffer: Agenda commands. (line 6) * comment lines: Comment lines. (line 6) * completion, of dictionary words: Completion. (line 6) @@ -6981,7 +7124,7 @@ Index * debugging, of table formulas: Editing and debugging formulas. (line 97) * demotion, of subtrees: Structure editing. (line 6) -* diary entries, creating from agenda: Agenda commands. (line 193) +* diary entries, creating from agenda: Agenda commands. (line 196) * diary integration: Weekly/Daily agenda. (line 24) * dictionary word completion: Completion. (line 6) * directories, for publishing: Sources and destinations. @@ -6990,6 +7133,7 @@ Index * display changing, in agenda: Agenda commands. (line 65) * document structure: Document structure. (line 6) * DONE, final TODO keyword: Per file keywords. (line 26) +* drawer, for properties: Property syntax. (line 6) * drawers: Drawers. (line 6) * dynamic blocks: Dynamic blocks. (line 6) * editing tables: Tables. (line 6) @@ -7003,14 +7147,14 @@ Index * exporting: Exporting. (line 6) * exporting agenda views <1>: Exporting Agenda Views. (line 12) -* exporting agenda views: Agenda commands. (line 225) +* exporting agenda views: Agenda commands. (line 228) * exporting, not: Comment lines. (line 6) * extended TODO keywords: TODO extensions. (line 6) * extension, third-party: Extensions. (line 6) * external archiving: Moving subtrees. (line 6) * external links: External links. (line 6) * external links, in HTML export: Links. (line 6) -* FAQ: Summary. (line 53) +* FAQ: Summary. (line 56) * feedback: Feedback. (line 6) * field formula: Field formulas. (line 6) * field references: References. (line 15) @@ -7128,6 +7272,7 @@ Index * matching, tags: Tags. (line 6) * math symbols: Math symbols. (line 6) * MH-E links: External links. (line 6) +* minor mode for structure editing: orgstruct-mode. (line 6) * minor mode for tables: orgtbl-mode. (line 6) * mode, for calc: Formula syntax for Calc. (line 14) @@ -7155,6 +7300,7 @@ Index * org-publish-project-alist: Project alist. (line 6) * org-publish.el: Extensions. (line 8) * org2rem.el: Extensions. (line 36) +* orgstruct-mode: orgstruct-mode. (line 6) * orgtbl-mode <1>: Tables in arbitrary syntax. (line 6) * orgtbl-mode: orgtbl-mode. (line 6) @@ -7177,7 +7323,15 @@ Index * progress logging: Progress logging. (line 6) * projects, for publishing: Project alist. (line 6) * promotion, of subtrees: Structure editing. (line 6) -* properties: Properties. (line 6) +* properties: Properties and columns. + (line 6) +* properties, API <1>: Using the property API. + (line 6) +* properties, API: Property API. (line 6) +* properties, column view: Defining columns. (line 6) +* properties, searching: Property searches. (line 6) +* properties, special: Special properties. (line 6) +* property syntax: Property syntax. (line 6) * publishing: Publishing. (line 6) * quoted HTML tags: Export options. (line 25) * radio tables: Radio tables. (line 6) @@ -7197,8 +7351,8 @@ Index * regular expressions, with tags search: Tag searches. (line 63) * remember.el <1>: Cooperation. (line 33) * remember.el: Remember. (line 6) -* remote editing, from agenda: Agenda commands. (line 103) -* remote editing, undo: Agenda commands. (line 104) +* remote editing, from agenda: Agenda commands. (line 106) +* remote editing, undo: Agenda commands. (line 107) * richer text: Enhancing text. (line 6) * RMAIL links: External links. (line 6) * SCHEDULED keyword: Deadlines and scheduling. @@ -7309,7 +7463,7 @@ Index * tty keybindings: TTY keys. (line 6) * types as TODO keywords: TODO types. (line 6) * underlined text: Enhancing text. (line 15) -* undoing remote-editing events: Agenda commands. (line 104) +* undoing remote-editing events: Agenda commands. (line 107) * updating, table: Updating the table. (line 6) * URL links: External links. (line 6) * USENET links: External links. (line 6) @@ -7317,6 +7471,7 @@ Index * vectors, in table calculations: Formula syntax for Calc. (line 11) * visibility cycling: Visibility cycling. (line 6) +* visibility cycling, drawers: Drawers. (line 6) * visible text, printing: Sparse trees. (line 41) * VM links: External links. (line 6) * WANDERLUST links: External links. (line 6) @@ -7335,23 +7490,24 @@ Key Index [index] * Menu: -* $: Agenda commands. (line 118) +* $: Agenda commands. (line 121) * ': CDLaTeX mode. (line 43) -* +: Agenda commands. (line 140) -* ,: Agenda commands. (line 132) -* -: Agenda commands. (line 146) -* .: Agenda commands. (line 95) -* :: Agenda commands. (line 126) -* <: The date/time prompt. +* +: Agenda commands. (line 143) +* ,: Agenda commands. (line 135) +* -: Agenda commands. (line 149) +* .: Agenda commands. (line 98) +* :: Agenda commands. (line 129) +* < <1>: The date/time prompt. (line 32) -* : Agenda commands. (line 92) +* <: Using column view. (line 54) +* : Agenda commands. (line 95) * <1>: Agenda commands. (line 39) * <2>: The date/time prompt. (line 57) * <3>: Setting tags. (line 76) * : Built-in table editor. (line 62) -* : Agenda commands. (line 87) +* : Agenda commands. (line 90) * <1>: Agenda commands. (line 28) * : Setting tags. (line 73) * <1>: CDLaTeX mode. (line 23) @@ -7363,20 +7519,22 @@ Key Index (line 55) * <6>: Plain lists. (line 41) * : Visibility cycling. (line 10) -* > <1>: Agenda commands. (line 168) -* >: The date/time prompt. +* > <1>: Agenda commands. (line 171) +* > <2>: The date/time prompt. (line 33) +* >: Using column view. (line 54) * ^: CDLaTeX mode. (line 33) * _: CDLaTeX mode. (line 33) * `: CDLaTeX mode. (line 39) -* a: Agenda commands. (line 129) +* a <1>: Agenda commands. (line 132) +* a: Using column view. (line 43) * b: Agenda commands. (line 49) -* C: Agenda commands. (line 208) -* c: Agenda commands. (line 188) +* C: Agenda commands. (line 211) +* c: Agenda commands. (line 191) * C-#: Advanced features. (line 9) * C-': Agenda files. (line 18) * C-,: Agenda files. (line 18) -* C-_: Agenda commands. (line 104) +* C-_: Agenda commands. (line 107) * C-a a L: Timeline. (line 10) * C-c ! <1>: Footnotes. (line 14) * C-c !: Creating timestamps. (line 19) @@ -7435,14 +7593,15 @@ Key Index (line 6) * C-c C-c <3>: Processing LaTeX fragments. (line 15) -* C-c C-c <4>: Setting tags. (line 10) -* C-c C-c <5>: Checkboxes. (line 37) -* C-c C-c <6>: Editing and debugging formulas. +* C-c C-c <4>: Property syntax. (line 46) +* C-c C-c <5>: Setting tags. (line 10) +* C-c C-c <6>: Checkboxes. (line 37) +* C-c C-c <7>: Editing and debugging formulas. (line 46) -* C-c C-c <7>: Built-in table editor. +* C-c C-c <8>: Built-in table editor. (line 54) * C-c C-c: Plain lists. (line 81) -* C-c C-d <1>: Agenda commands. (line 153) +* C-c C-d <1>: Agenda commands. (line 156) * C-c C-d: Inserting deadline/schedule. (line 9) * C-c C-e: Exporting. (line 19) @@ -7477,7 +7636,7 @@ Key Index * C-c C-r <1>: Editing and debugging formulas. (line 53) * C-c C-r: Visibility cycling. (line 34) -* C-c C-s <1>: Agenda commands. (line 150) +* C-c C-s <1>: Agenda commands. (line 153) * C-c C-s: Inserting deadline/schedule. (line 18) * C-c C-t <1>: Clocking work time. (line 27) @@ -7489,8 +7648,8 @@ Key Index * C-c C-x b: Visibility cycling. (line 41) * C-c C-x C-a: ARCHIVE tag. (line 28) * C-c C-x C-b: Checkboxes. (line 38) -* C-c C-x C-c <1>: Agenda commands. (line 215) -* C-c C-x C-c: Using column view. (line 6) +* C-c C-x C-c <1>: Agenda commands. (line 218) +* C-c C-x C-c: Using column view. (line 9) * C-c C-x C-d: Clocking work time. (line 35) * C-c C-x C-i: Clocking work time. (line 12) * C-c C-x C-k: Structure editing. (line 39) @@ -7524,7 +7683,7 @@ Key Index * C-c }: Editing and debugging formulas. (line 28) * C-c ~: Cooperation. (line 48) -* C-k: Agenda commands. (line 112) +* C-k: Agenda commands. (line 115) * C-S-: Multiple sets in one file. (line 25) * C-S-: Multiple sets in one file. @@ -7548,18 +7707,18 @@ Key Index (line 46) * C-x C-w <1>: Exporting Agenda Views. (line 11) -* C-x C-w: Agenda commands. (line 224) -* D: Agenda commands. (line 69) +* C-x C-w: Agenda commands. (line 227) +* D: Agenda commands. (line 72) * d: Agenda commands. (line 66) -* e: Using column view. (line 13) +* e: Using column view. (line 33) * f: Agenda commands. (line 42) -* g: Agenda commands. (line 73) -* H: Agenda commands. (line 212) -* i: Agenda commands. (line 193) -* I: Agenda commands. (line 173) +* g: Agenda commands. (line 76) +* H: Agenda commands. (line 215) +* i: Agenda commands. (line 196) +* I: Agenda commands. (line 176) * l: Agenda commands. (line 55) * L: Agenda commands. (line 30) -* M: Agenda commands. (line 199) +* M: Agenda commands. (line 202) * m: Agenda commands. (line 66) * M- <1>: Editing and debugging formulas. (line 76) @@ -7574,7 +7733,7 @@ Key Index (line 72) * M-: Structure editing. (line 24) * M- <1>: Completion. (line 10) -* M- <2>: Property syntax. (line 22) +* M- <2>: Property syntax. (line 38) * M- <3>: Setting tags. (line 6) * M- <4>: Per file keywords. (line 23) * M-: Editing and debugging formulas. @@ -7618,18 +7777,20 @@ Key Index * mouse-2: Handling links. (line 72) * mouse-3 <1>: Agenda commands. (line 28) * mouse-3: Handling links. (line 77) -* n: Agenda commands. (line 19) -* O: Agenda commands. (line 177) +* n <1>: Agenda commands. (line 19) +* n: Using column view. (line 30) +* O: Agenda commands. (line 180) * o: Agenda commands. (line 65) -* P: Agenda commands. (line 137) -* p: Agenda commands. (line 20) -* q <1>: Agenda commands. (line 235) -* q: Using column view. (line 23) -* r <1>: Agenda commands. (line 77) +* P: Agenda commands. (line 140) +* p <1>: Agenda commands. (line 20) +* p: Using column view. (line 30) +* q <1>: Agenda commands. (line 238) +* q: Using column view. (line 17) +* r <1>: Agenda commands. (line 80) * r: Global TODO list. (line 22) -* S: Agenda commands. (line 203) -* s: Agenda commands. (line 84) -* S- <1>: Agenda commands. (line 146) +* S: Agenda commands. (line 206) +* s: Agenda commands. (line 87) +* S- <1>: Agenda commands. (line 149) * S- <2>: The date/time prompt. (line 45) * S- <3>: Creating timestamps. (line 40) @@ -7637,30 +7798,34 @@ Key Index * S- <5>: Editing and debugging formulas. (line 67) * S-: Plain lists. (line 62) -* S- <1>: Agenda commands. (line 164) +* S- <1>: Agenda commands. (line 167) * S- <2>: The date/time prompt. (line 42) * S- <3>: Creating timestamps. (line 35) -* S- <4>: Multiple sets in one file. +* S- <4>: Using column view. (line 26) +* S- <5>: Property syntax. (line 54) +* S- <6>: Multiple sets in one file. (line 29) -* S- <5>: TODO basics. (line 20) +* S- <7>: TODO basics. (line 20) * S-: Editing and debugging formulas. (line 67) * S-: Built-in table editor. (line 144) -* S- <1>: Agenda commands. (line 156) +* S- <1>: Agenda commands. (line 159) * S- <2>: The date/time prompt. (line 39) * S- <3>: Creating timestamps. (line 35) -* S- <4>: Multiple sets in one file. +* S- <4>: Using column view. (line 26) +* S- <5>: Property syntax. (line 54) +* S- <6>: Multiple sets in one file. (line 29) -* S- <5>: TODO basics. (line 20) +* S- <7>: TODO basics. (line 20) * S-: Editing and debugging formulas. (line 67) * S- <1>: Built-in table editor. (line 59) * S-: Visibility cycling. (line 22) -* S- <1>: Agenda commands. (line 140) +* S- <1>: Agenda commands. (line 143) * S- <2>: The date/time prompt. (line 48) * S- <3>: Creating timestamps. (line 40) @@ -7668,217 +7833,222 @@ Key Index * S- <5>: Editing and debugging formulas. (line 67) * S-: Plain lists. (line 62) +* S-M-: Using column view. (line 58) * S-M-: TODO basics. (line 44) -* T: Agenda commands. (line 121) -* t: Agenda commands. (line 108) -* v: Using column view. (line 19) +* S-M-: Using column view. (line 55) +* T: Agenda commands. (line 124) +* t: Agenda commands. (line 111) +* v: Using column view. (line 39) * w: Agenda commands. (line 66) -* x: Agenda commands. (line 236) -* X: Agenda commands. (line 180) +* x: Agenda commands. (line 239) +* X: Agenda commands. (line 183) * y: Agenda commands. (line 66)  Tag Table: Node: Top970 -Node: Introduction12310 -Node: Summary12725 -Node: Installation15734 -Node: Activation17112 -Node: Feedback18361 -Node: Document structure20437 -Node: Outlines21223 -Node: Headlines21883 -Ref: Headlines-Footnote-122891 -Node: Visibility cycling22990 -Ref: Visibility cycling-Footnote-125200 -Ref: Visibility cycling-Footnote-225258 -Ref: Visibility cycling-Footnote-325308 -Node: Motion25578 -Node: Structure editing26532 -Node: Archiving29358 -Node: ARCHIVE tag29916 -Node: Moving subtrees31709 -Node: Sparse trees33020 -Ref: Sparse trees-Footnote-135152 -Ref: Sparse trees-Footnote-235334 -Node: Plain lists35449 -Ref: Plain lists-Footnote-139646 -Ref: Plain lists-Footnote-240004 -Node: Drawers40185 -Node: Tables41026 -Node: Built-in table editor41607 -Node: Narrow columns48846 -Ref: Narrow columns-Footnote-150781 -Node: Column groups50827 -Node: orgtbl-mode52360 -Node: The spreadsheet53163 -Node: References54250 -Ref: References-Footnote-158701 -Node: Formula syntax for Calc58990 -Node: Formula syntax for Lisp61447 -Node: Field formulas63165 -Node: Column formulas64473 -Node: Editing and debugging formulas66072 -Node: Updating the table70225 -Node: Advanced features71260 -Node: Hyperlinks75785 -Node: Link format76558 -Node: Internal links77851 -Ref: Internal links-Footnote-179776 -Node: Radio targets79911 -Node: External links80602 -Node: Handling links83006 -Ref: Handling links-Footnote-188293 -Ref: Handling links-Footnote-288530 -Node: Link abbreviations88604 -Node: Search options90283 -Ref: Search options-Footnote-192063 -Node: Custom searches92144 -Node: Remember93192 -Node: Setting up remember94179 -Node: Remember templates94761 -Ref: Remember templates-Footnote-198207 -Node: Storing notes98305 -Node: TODO items100192 -Node: TODO basics101169 -Node: TODO extensions102933 -Node: Workflow states103752 -Ref: Workflow states-Footnote-1104927 -Node: TODO types105020 -Ref: TODO types-Footnote-1106603 -Node: Multiple sets in one file106685 -Node: Per file keywords108296 -Ref: Per file keywords-Footnote-1109585 -Node: Priorities109786 -Node: Breaking down tasks111396 -Ref: Breaking down tasks-Footnote-1111916 -Node: Checkboxes112012 -Node: Tags114767 -Node: Tag inheritance115527 -Node: Setting tags116464 -Ref: Setting tags-Footnote-1120987 -Ref: Setting tags-Footnote-2121099 -Node: Tag searches121182 -Node: Properties123899 -Node: Property syntax124884 -Node: Special properties125705 -Node: Property searches126366 -Node: Column view127009 -Node: Defining columns128199 -Node: Using column view130710 -Node: Property API131627 -Node: Timestamps131969 -Node: Time stamps132418 -Ref: Time stamps-Footnote-1134846 -Node: Creating timestamps134962 -Node: The date/time prompt137036 -Ref: The date/time prompt-Footnote-1139024 -Node: Custom time format139130 -Node: Deadlines and scheduling140822 -Ref: Deadlines and scheduling-Footnote-1142172 -Node: Inserting deadline/schedule142327 -Node: Repeated tasks143265 -Node: Progress logging144904 -Node: Closing items145559 -Ref: Closing items-Footnote-1146493 -Ref: Closing items-Footnote-2146562 -Node: Tracking TODO state changes146635 -Node: Clocking work time147491 -Ref: Clocking work time-Footnote-1151137 -Ref: Clocking work time-Footnote-2151215 -Node: Agenda views151341 -Node: Agenda files153292 -Ref: Agenda files-Footnote-1154258 -Ref: Agenda files-Footnote-2154407 -Node: Agenda dispatcher154600 -Node: Built-in agenda views156297 -Node: Weekly/Daily agenda156877 -Node: Global TODO list159819 -Node: Matching tags and properties162097 -Node: Timeline163186 -Node: Stuck projects163858 -Node: Presentation and sorting165709 -Node: Categories166500 -Node: Time-of-day specifications167164 -Node: Sorting of agenda items169135 -Node: Agenda commands170417 -Node: Custom agenda views177503 -Node: Storing searches178222 -Node: Block agenda180134 -Node: Setting Options181364 -Node: Exporting Agenda Views184103 -Ref: Exporting Agenda Views-Footnote-1188387 -Ref: Exporting Agenda Views-Footnote-2188444 -Node: Extracting Agenda Information for other programs188630 -Node: Embedded LaTeX192756 -Ref: Embedded LaTeX-Footnote-1193850 -Node: Math symbols194040 -Node: Subscripts and Superscripts194807 -Node: LaTeX fragments195653 -Ref: LaTeX fragments-Footnote-1197889 -Node: Processing LaTeX fragments198151 -Node: CDLaTeX mode199099 -Ref: CDLaTeX mode-Footnote-1201585 -Node: Exporting201733 -Node: ASCII export203047 -Node: HTML export204337 -Node: Export commands204956 -Node: Quoting HTML tags206200 -Node: Links206830 -Node: Images207527 -Ref: Images-Footnote-1208398 -Node: CSS support208459 -Ref: CSS support-Footnote-1209778 -Node: XOXO export209891 -Node: iCalendar export210330 -Node: Text interpretation211549 -Node: Comment lines212140 -Node: Initial text212535 -Node: Footnotes214204 -Node: Enhancing text215019 -Ref: Enhancing text-Footnote-1216878 -Node: Export options216968 -Node: Publishing218913 -Ref: Publishing-Footnote-1219709 -Node: Configuration219905 -Node: Project alist220623 -Node: Sources and destinations221689 -Node: Selecting files222419 -Node: Publishing action223167 -Node: Publishing options224400 -Node: Publishing links226552 -Node: Project page index228065 -Node: Sample configuration228843 -Node: Simple example229335 -Node: Complex example230008 -Node: Triggering publication232084 -Node: Miscellaneous232769 -Node: Completion233403 -Node: Customization235073 -Node: In-buffer settings235656 -Node: The very busy C-c C-c key240989 -Node: Clean view242633 -Node: TTY keys245210 -Node: Interaction246820 -Node: Cooperation247217 -Node: Conflicts250093 -Node: Bugs252096 -Node: Extensions and Hacking253592 -Node: Extensions254263 -Node: Tables in arbitrary syntax256210 -Node: Radio tables257287 -Node: A LaTeX example259790 -Ref: A LaTeX example-Footnote-1263436 -Ref: A LaTeX example-Footnote-2263584 -Node: Translator functions264019 -Ref: Translator functions-Footnote-1267128 -Node: Dynamic blocks267216 -Node: Special agenda views269188 -Ref: Special agenda views-Footnote-1271498 -Node: Using the property API271758 -Node: History and Acknowledgments273239 -Node: Index279623 -Node: Key Index312363 +Node: Introduction12513 +Node: Summary12928 +Node: Installation16080 +Node: Activation17458 +Node: Feedback18707 +Node: Document structure20783 +Node: Outlines21675 +Node: Headlines22335 +Ref: Headlines-Footnote-123343 +Node: Visibility cycling23442 +Ref: Visibility cycling-Footnote-125652 +Ref: Visibility cycling-Footnote-225710 +Ref: Visibility cycling-Footnote-325760 +Node: Motion26030 +Node: Structure editing26984 +Node: Archiving29810 +Node: ARCHIVE tag30368 +Node: Moving subtrees32161 +Node: Sparse trees33472 +Ref: Sparse trees-Footnote-135604 +Ref: Sparse trees-Footnote-235786 +Node: Plain lists35901 +Ref: Plain lists-Footnote-140098 +Ref: Plain lists-Footnote-240456 +Node: Drawers40637 +Node: orgstruct-mode41475 +Node: Tables42375 +Node: Built-in table editor42956 +Node: Narrow columns50195 +Ref: Narrow columns-Footnote-152130 +Node: Column groups52176 +Node: orgtbl-mode53709 +Node: The spreadsheet54512 +Node: References55599 +Ref: References-Footnote-160063 +Node: Formula syntax for Calc60352 +Node: Formula syntax for Lisp62809 +Node: Field formulas64527 +Node: Column formulas65835 +Node: Editing and debugging formulas67434 +Node: Updating the table71587 +Node: Advanced features72622 +Node: Hyperlinks77147 +Node: Link format77920 +Node: Internal links79213 +Ref: Internal links-Footnote-181138 +Node: Radio targets81273 +Node: External links81964 +Node: Handling links84368 +Ref: Handling links-Footnote-189655 +Ref: Handling links-Footnote-289892 +Node: Link abbreviations89966 +Node: Search options91645 +Ref: Search options-Footnote-193425 +Node: Custom searches93506 +Node: Remember94554 +Node: Setting up remember95541 +Node: Remember templates96123 +Ref: Remember templates-Footnote-199569 +Node: Storing notes99667 +Node: TODO items101554 +Node: TODO basics102531 +Node: TODO extensions104295 +Node: Workflow states105114 +Ref: Workflow states-Footnote-1106289 +Node: TODO types106382 +Ref: TODO types-Footnote-1107965 +Node: Multiple sets in one file108047 +Node: Per file keywords109658 +Ref: Per file keywords-Footnote-1110947 +Node: Priorities111148 +Node: Breaking down tasks112758 +Ref: Breaking down tasks-Footnote-1113278 +Node: Checkboxes113374 +Node: Tags116129 +Node: Tag inheritance116901 +Node: Setting tags117838 +Ref: Setting tags-Footnote-1122361 +Ref: Setting tags-Footnote-2122473 +Node: Tag searches122556 +Node: Properties and columns125273 +Node: Property syntax126378 +Node: Special properties128538 +Node: Property searches129454 +Node: Column view130109 +Node: Defining columns131277 +Node: Scope of column definitions131675 +Node: Column attributes132597 +Node: Using column view134845 +Node: Property API136832 +Node: Timestamps137186 +Node: Time stamps137647 +Ref: Time stamps-Footnote-1140075 +Node: Creating timestamps140191 +Node: The date/time prompt142265 +Ref: The date/time prompt-Footnote-1144253 +Node: Custom time format144359 +Node: Deadlines and scheduling146051 +Ref: Deadlines and scheduling-Footnote-1147401 +Node: Inserting deadline/schedule147556 +Node: Repeated tasks148494 +Node: Progress logging150133 +Node: Closing items150788 +Ref: Closing items-Footnote-1151722 +Ref: Closing items-Footnote-2151791 +Node: Tracking TODO state changes151864 +Node: Clocking work time152720 +Ref: Clocking work time-Footnote-1156366 +Ref: Clocking work time-Footnote-2156444 +Node: Agenda views156570 +Node: Agenda files158521 +Ref: Agenda files-Footnote-1159487 +Ref: Agenda files-Footnote-2159636 +Node: Agenda dispatcher159829 +Node: Built-in agenda views161526 +Node: Weekly/Daily agenda162106 +Node: Global TODO list165048 +Node: Matching tags and properties167326 +Node: Timeline168415 +Node: Stuck projects169087 +Node: Presentation and sorting170938 +Node: Categories171729 +Node: Time-of-day specifications172393 +Node: Sorting of agenda items174364 +Node: Agenda commands175646 +Node: Custom agenda views182927 +Node: Storing searches183646 +Node: Block agenda185558 +Node: Setting Options186788 +Node: Exporting Agenda Views189527 +Ref: Exporting Agenda Views-Footnote-1193811 +Ref: Exporting Agenda Views-Footnote-2193868 +Node: Extracting Agenda Information for other programs194054 +Node: Embedded LaTeX198180 +Ref: Embedded LaTeX-Footnote-1199274 +Node: Math symbols199464 +Node: Subscripts and Superscripts200231 +Node: LaTeX fragments201077 +Ref: LaTeX fragments-Footnote-1203313 +Node: Processing LaTeX fragments203575 +Node: CDLaTeX mode204523 +Ref: CDLaTeX mode-Footnote-1207009 +Node: Exporting207157 +Node: ASCII export208471 +Node: HTML export209761 +Node: Export commands210380 +Node: Quoting HTML tags211624 +Node: Links212254 +Node: Images212951 +Ref: Images-Footnote-1213822 +Node: CSS support213883 +Ref: CSS support-Footnote-1215202 +Node: XOXO export215315 +Node: iCalendar export215754 +Node: Text interpretation216973 +Node: Comment lines217564 +Node: Initial text217959 +Node: Footnotes219628 +Node: Enhancing text220443 +Ref: Enhancing text-Footnote-1222302 +Node: Export options222392 +Node: Publishing224337 +Ref: Publishing-Footnote-1225133 +Node: Configuration225277 +Node: Project alist225995 +Node: Sources and destinations227061 +Node: Selecting files227791 +Node: Publishing action228539 +Node: Publishing options229772 +Node: Publishing links231924 +Node: Project page index233437 +Node: Sample configuration234215 +Node: Simple example234707 +Node: Complex example235380 +Node: Triggering publication237456 +Node: Miscellaneous238141 +Node: Completion238775 +Node: Customization240445 +Node: In-buffer settings241028 +Node: The very busy C-c C-c key246367 +Node: Clean view248128 +Node: TTY keys250705 +Node: Interaction252315 +Node: Cooperation252712 +Node: Conflicts255588 +Node: Bugs257591 +Node: Extensions and Hacking259087 +Node: Extensions259758 +Node: Tables in arbitrary syntax261705 +Node: Radio tables262782 +Node: A LaTeX example265285 +Ref: A LaTeX example-Footnote-1268931 +Ref: A LaTeX example-Footnote-2269079 +Node: Translator functions269514 +Ref: Translator functions-Footnote-1272623 +Node: Dynamic blocks272711 +Node: Special agenda views274683 +Ref: Special agenda views-Footnote-1276993 +Node: Using the property API277253 +Node: History and Acknowledgments278734 +Node: Index285118 +Node: Key Index318864  End Tag Table diff --git a/org.el b/org.el index a15b46b18..0a7bfc7db 100644 --- a/org.el +++ b/org.el @@ -5,7 +5,7 @@ ;; Author: Carsten Dominik ;; Keywords: outlines, hypermedia, calendar, wp ;; Homepage: http://www.astro.uva.nl/~dominik/Tools/org/ -;; Version: 5.01b +;; Version: 5.02 ;; ;; This file is part of GNU Emacs. ;; @@ -83,7 +83,7 @@ ;;; Version -(defconst org-version "5.01" +(defconst org-version "5.02" "The version number of the file org.el.") (defun org-version () (interactive) @@ -1763,7 +1763,7 @@ lined-up with respect to each other." :group 'org-properties :type 'string) -(defcustom org-default-columns-format "%25ITEM %TODO %3PRIORITY %TAGS" +(defcustom org-columns-default-format "%25ITEM %TODO %3PRIORITY %TAGS" "The default column format, if no other format has been defined. This variable can be set on the per-file basis by inserting a line @@ -3244,6 +3244,12 @@ color of the frame." "Face for column display of entry properties." :group 'org-faces) +(when (fboundp 'set-face-attribute) + ;; Make sure that a fixed-width face is used when we have a column table. + (set-face-attribute 'org-column nil + :height (face-attribute 'default :height) + :family (face-attribute 'default :family))) + (defface org-warning ;; font-lock-warning-face (org-compatible-face '((((class color) (min-colors 16) (background light)) (:foreground "Red1" :bold t)) @@ -3573,7 +3579,7 @@ means to push this value onto the list in the variable.") ((equal key "TAGS") (setq tags (append tags (org-split-string value splitre)))) ((equal key "COLUMNS") - (org-set-local 'org-default-columns-format value)) + (org-set-local 'org-columns-default-format value)) ((equal key "LINK") (when (string-match "^\\(\\S-+\\)[ \t]+\\(.+\\)" value) (push (cons (match-string 1 value) @@ -3678,15 +3684,15 @@ means to push this value onto the list in the variable.") (mapconcat 'regexp-quote org-not-done-keywords "\\|") "\\)\\>") org-todo-line-regexp - (concat "^\\(\\*+\\)[ \t]*\\(?:\\(" + (concat "^\\(\\*+\\)[ \t]+\\(?:\\(" (mapconcat 'regexp-quote org-todo-keywords-1 "\\|") "\\)\\>\\)? *\\(.*\\)") org-nl-done-regexp - (concat "[\r\n]\\*+[ \t]+" + (concat "\n\\*+[ \t]+" "\\(?:" (mapconcat 'regexp-quote org-done-keywords "\\|") "\\)" "\\>") org-todo-line-tags-regexp - (concat "^\\(\\*+\\)[ \t]*\\(?:\\(" + (concat "^\\(\\*+\\)[ \t]+\\(?:\\(" (mapconcat 'regexp-quote org-todo-keywords-1 "\\|") (org-re "\\)\\>\\)? *\\(.*?\\([ \t]:[[:alnum:]:_@]+:[ \t]*\\)?$\\)")) @@ -3982,7 +3988,7 @@ The following commands are available: (org-add-to-invisibility-spec '(org-cwidth)) (when (featurep 'xemacs) (org-set-local 'line-move-ignore-invisible t)) - (setq outline-regexp "\\*+") + (setq outline-regexp "\\*+ ") (setq outline-level 'org-outline-level) (when (and org-ellipsis (stringp org-ellipsis) (fboundp 'set-display-table-slot) (boundp 'buffer-display-table)) @@ -4412,17 +4418,20 @@ between words." (looking-at outline-regexp) (if (match-beginning 1) (+ (org-get-string-indentation (match-string 1)) 1000) - (- (match-end 0) (match-beginning 0))))) + (1- (- (match-end 0) (match-beginning 0)))))) (defvar org-font-lock-keywords nil) +(defconst org-property-re "^[ \t]*\\(:\\([a-zA-Z_0-9]+\\):\\)[ \t]*\\(\\S-.*\\)" + "Regular expression matching a property line.") + (defun org-set-font-lock-defaults () (let* ((em org-fontify-emphasized-text) (lk org-activate-links) (org-font-lock-extra-keywords ;; Headlines (list - '("^\\(\\**\\)\\(\\*\\)\\(.*\\)" (1 (org-get-level-face 1)) + '("^\\(\\**\\)\\(\\* \\)\\(.*\\)" (1 (org-get-level-face 1)) (2 (org-get-level-face 2)) (3 (org-get-level-face 3))) '("^[ \t]*\\(\\(|\\|\\+-[-+]\\).*\\S-\\)" (1 'org-table)) @@ -4436,7 +4445,7 @@ between words." '("^&?%%(.*\\|<%%([^>\n]*?>" (0 'org-sexp-date t)) '(org-hide-wide-columns (0 nil append)) ;; TODO lines - (list (concat "^\\*+[ \t]*" org-not-done-regexp) + (list (concat "^\\*+[ \t]+" org-not-done-regexp) '(1 'org-todo t)) ;; Priorities (list (concat "\\[#[A-Z0-9]\\]") '(0 'org-special-keyword t)) @@ -4458,7 +4467,7 @@ between words." '("\\[\\([0-9]*%\\)\\]\\|\\[\\([0-9]*\\)/\\([0-9]*\\)\\]" (0 (org-get-checkbox-statistics-face) t))) ;; COMMENT - (list (concat "^\\*+[ \t]*\\<\\(" org-comment-string + (list (concat "^\\*+[ \t]+\\<\\(" org-comment-string "\\|" org-quote-string "\\)\\>") '(1 'org-special-keyword t)) '("^#.*" (0 'font-lock-comment-face t)) @@ -4475,14 +4484,18 @@ between words." ;; Table stuff '("^[ \t]*\\(:.*\\)" (1 'org-table t)) '("| *\\(:?=[^|\n]*\\)" (1 'org-formula t)) - '("^[ \t]*| *\\([#!$*_^]\\) *|" (1 'org-formula t)) +; '("^[ \t]*| *\\([#!$*_^/]\\) *|" (1 'org-formula t)) + '("^[ \t]*| *\\([#*]\\) *|" (1 'org-formula t)) + '("^[ \t]*|\\( *\\([$!_^/]\\) *|.*\\)|" (1 'org-formula t)) ;; Drawers - (list org-drawer-regexp '(0 'org-drawer t)) - (list "^[ \t]*:END:" '(0 'org-drawer t)) +; (list org-drawer-regexp '(0 'org-drawer t)) +; (list "^[ \t]*:END:" '(0 'org-drawer t)) + (list org-drawer-regexp '(0 'org-special-keyword t)) + (list "^[ \t]*:END:" '(0 'org-special-keyword t)) ;; Properties - '("^[ \t]*\\(:[a-zA-Z0-9]+:\\)[ \t]*\\(\\S-.*\\)" - (1 'org-special-keyword t) (2 'org-property-value t)) -;FIXME (1 'org-tag t) (2 'org-property-value t)) + (list org-property-re + '(1 'org-special-keyword t) + '(3 'org-property-value t)) (if org-format-transports-properties-p '("| *\\(<[0-9]+>\\) *" (1 'org-formula t))) '("^\\*+ \\(.*:ARCHIVE:.*\\)" (1 'org-archived prepend)) @@ -4499,7 +4512,7 @@ between words." (defvar org-f nil) (defun org-get-level-face (n) "Get the right face for match N in font-lock matching of healdines." - (setq org-l (- (match-end 2) (match-beginning 1))) + (setq org-l (- (match-end 2) (match-beginning 1) 1)) (if org-odd-levels-only (setq org-l (1+ (/ org-l 2)))) (setq org-f (nth (% (1- org-l) org-n-levels) org-level-faces)) (cond @@ -4559,7 +4572,7 @@ between words." (interactive "P") (let* ((outline-regexp (if (and (org-mode-p) org-cycle-include-plain-lists) - "\\(?:\\*+\\|\\([ \t]*\\)\\([-+*]\\|[0-9]+[.)]\\) \\)" + "\\(?:\\*+ \\|\\([ \t]*\\)\\([-+*]\\|[0-9]+[.)]\\) \\)" outline-regexp)) (bob-special (and org-cycle-global-at-bob (bobp) (not (looking-at outline-regexp)))) @@ -5175,8 +5188,8 @@ If the region is active in `transient-mark-mode', promote all headings in the region." (org-back-to-heading t) (let* ((level (save-match-data (funcall outline-level))) - (up-head (make-string (org-get-legal-level level -1) ?*)) - (diff (abs (- level (length up-head))))) + (up-head (concat (make-string (org-get-legal-level level -1) ?*) " ")) + (diff (abs (- level (length up-head) -1)))) (if (= level 1) (error "Cannot promote to level 0. UNDO to recover if necessary")) (replace-match up-head nil t) ;; Fixup tag positioning @@ -5189,8 +5202,8 @@ If the region is active in `transient-mark-mode', demote all headings in the region." (org-back-to-heading t) (let* ((level (save-match-data (funcall outline-level))) - (down-head (make-string (org-get-legal-level level 1) ?*)) - (diff (abs (- level (length down-head))))) + (down-head (concat (make-string (org-get-legal-level level 1) ?*) " ")) + (diff (abs (- level (length down-head) -1)))) (replace-match down-head nil t) ;; Fixup tag positioning (and org-auto-align-tags (org-set-tags nil t)) @@ -5251,8 +5264,8 @@ level 5 etc." (let ((org-odd-levels-only nil) n) (save-excursion (goto-char (point-min)) - (while (re-search-forward "^\\*\\*+" nil t) - (setq n (1- (length (match-string 0)))) + (while (re-search-forward "^\\*\\*+ " nil t) + (setq n (- (length (match-string 0)) 2)) (while (>= (setq n (1- n)) 0) (org-demote)) (end-of-line 1)))))) @@ -5266,15 +5279,15 @@ is signaled in this case." (interactive) (goto-char (point-min)) ;; First check if there are no even levels - (when (re-search-forward "^\\(\\*\\*\\)+[^*]" nil t) + (when (re-search-forward "^\\(\\*\\*\\)+ " nil t) (org-show-context t) (error "Not all levels are odd in this file. Conversion not possible.")) (when (yes-or-no-p "Are you sure you want to globally change levels to odd-even? ") (let ((org-odd-levels-only nil) n) (save-excursion (goto-char (point-min)) - (while (re-search-forward "^\\*\\*+" nil t) - (setq n (/ (length (match-string 0)) 2)) + (while (re-search-forward "^\\*\\*+ " nil t) + (setq n (/ (length (1- (match-string 0))) 2)) (while (>= (setq n (1- n)) 0) (org-promote)) (end-of-line 1)))))) @@ -6285,6 +6298,8 @@ C-c C-c Set tags / toggle checkbox" '([(meta shift down)] org-shiftmetadown) '([(meta shift left)] org-shiftmetaleft) '([(meta shift right)] org-shiftmetaright) + '([(shift up)] org-shiftup) + '([(shift down)] org-shiftdown) '("\M-q" fill-paragraph) '("\C-c^" org-sort) '("\C-c-" org-cycle-list-bullet))) @@ -6466,8 +6481,7 @@ this heading." (if heading (progn (if (re-search-forward - (concat "\\(^\\|\r\\)" - (regexp-quote heading) + (concat "^" (regexp-quote heading) (org-re "[ \t]*\\(:[[:alnum:]_@:]+:\\)?[ \t]*\\($\\|\r\\)")) nil t) (goto-char (match-end 0)) @@ -7723,7 +7737,7 @@ should be done in reverse order." (setq beg (point-at-bol 1))) (goto-char pos) (if (re-search-forward org-table-hline-regexp tend t) - (setq end (point-at-bol 0)) + (setq end (point-at-bol 1)) (goto-char tend) (setq end (point-at-bol)))) (setq beg (move-marker (make-marker) beg) @@ -11015,12 +11029,14 @@ optional argument IN-EMACS is non-nil, Emacs will visit the file." (switch-to-buffer-other-window (org-get-buffer-for-internal-link (current-buffer))) (org-mark-ring-push)) - (org-link-search - path - (cond ((equal in-emacs '(4)) 'occur) - ((equal in-emacs '(16)) 'org-occur) - (t nil)) - pos)) + (let ((cmd `(org-link-search + ,path + ,(cond ((equal in-emacs '(4)) 'occur) + ((equal in-emacs '(16)) 'org-occur) + (t nil)) + ,pos))) + (condition-case nil (eval cmd) + (error (progn (widen) (eval cmd)))))) ((string= type "tree-match") (org-occur (concat "\\[" (regexp-quote path) "\\]"))) @@ -11170,7 +11186,7 @@ in all files. If AVOID-POS is given, ignore matches near that position." (let ((case-fold-search t) (s0 (mapconcat 'identity (org-split-string s "[ \t\r\n]+") " ")) (markers (concat "\\(?:" (mapconcat (lambda (x) (regexp-quote (car x))) - (append '((" ") ("\t") ("\n")) + (append '(("") (" ") ("\t") ("\n")) org-emphasis-alist) "\\|") "\\)")) (pos (point)) @@ -11197,10 +11213,10 @@ in all files. If AVOID-POS is given, ignore matches near that position." ;; (grep (concat "grep -n -e '" (match-string 1 s) "' *"))) (t (org-do-occur (match-string 1 s))))) (t - ;; A normal search string + ;; A normal search strings (when (equal (string-to-char s) ?*) ;; Anchor on headlines, post may include tags. - (setq pre "^\\*+[ \t]*\\(?:\\sw+\\)?[ \t]*" + (setq pre "^\\*+[ \t]+\\(?:\\sw+\\)?[ \t]*" post (org-re "[ \t]*\\(?:[ \t]+:[[:alnum:]_@:+]:[ \t]*\\)?$") s (substring s 1))) (remove-text-properties @@ -11707,6 +11723,7 @@ If the file does not exist, an error is thrown." ((or (stringp cmd) (eq cmd 'emacs)) (funcall (cdr (assq 'file org-link-frame-setup)) file) + (widen) (if line (goto-line line) (if search (org-link-search search)))) ((consp cmd) @@ -11842,14 +11859,18 @@ to be run from that hook to fucntion properly." (let* ((org-last-tags-completion-table (org-global-tags-completion-table (if (equal char "G") (org-agenda-files) (and file (list file))))) + (org-add-colon-after-tag-completion t) (ins (completing-read (if prompt (concat prompt ": ") "Tags: ") 'org-tags-completion-function nil nil nil 'org-tags-history))) - (insert (concat ":" (mapconcat 'identity - (org-split-string ins (org-re "[^[:alnum:]]+")) - ":") - ":")))) + (setq ins (mapconcat 'identity + (org-split-string ins (org-re "[^[:alnum:]]+")) + ":")) + (when (string-match "\\S-" ins) + (or (equal (char-before) ?:) (insert ":")) + (insert ins) + (or (equal (char-after) ?:) (insert ":"))))) (char (setq org-time-was-given (equal (upcase char) char)) (setq time (org-read-date (equal (upcase char) "U") t nil @@ -11939,7 +11960,7 @@ See also the variable `org-reverse-note-order'." (let* ((lines (split-string txt "\n")) first) (setq first (car lines) lines (cdr lines)) - (if (string-match "^\\*+" first) + (if (string-match "^\\*+ " first) ;; Is already a headline (setq indent nil) ;; We need to add a headline: Use time and first buffer line @@ -11990,7 +12011,7 @@ See also the variable `org-reverse-note-order'." (save-restriction (widen) (goto-char (point-min)) - (re-search-forward "^\\*" nil t) + (re-search-forward "^\\*+ " nil t) (beginning-of-line 1) (org-paste-subtree 1 txt))) ((and (org-on-heading-p t) (not current-prefix-arg)) @@ -12197,7 +12218,7 @@ At all other locations, this simply calls `ispell-complete-word'." (texp (setq type :tex) org-html-entities) - ((string-match "\\`\\*+[ \t]*\\'" + ((string-match "\\`\\*+[ \t]+\\'" (buffer-substring (point-at-bol) beg)) (setq type :todo) (mapcar 'list org-todo-keywords-1)) @@ -12258,12 +12279,12 @@ At all other locations, this simply calls `ispell-complete-word'." (save-excursion (org-back-to-heading) (if (looking-at (concat outline-regexp - "\\( +\\<" org-comment-string "\\>\\)")) + "\\( *\\<" org-comment-string "\\>\\)")) (replace-match "" t t nil 1) (if (looking-at outline-regexp) (progn (goto-char (match-end 0)) - (insert " " org-comment-string)))))) + (insert org-comment-string " ")))))) (defvar org-last-todo-state-is-todo nil "This is non-nil when the last TODO state change led to a TODO state. @@ -12297,7 +12318,7 @@ For calling through lisp, arg is also interpreted in the following way: (interactive "P") (save-excursion (org-back-to-heading) - (if (looking-at outline-regexp) (goto-char (match-end 0))) + (if (looking-at outline-regexp) (goto-char (1- (match-end 0)))) (or (looking-at (concat " +" org-todo-regexp " *")) (looking-at " *")) (let* ((this (match-string 1)) @@ -12490,7 +12511,7 @@ of `org-todo-keywords-1'." org-todo-keywords-1))) (t (error "Invalid prefix argument: %s" arg))))) (message "%d TODO entries found" - (org-occur (concat "^" outline-regexp " +" kwd-re ))))) + (org-occur (concat "^" outline-regexp " *" kwd-re ))))) (defun org-deadline () "Insert the DEADLINE: string to make a deadline. @@ -13139,11 +13160,12 @@ With prefix ARG, realign all tags in headings in the current buffer." ;; try completion (setq rtn (try-completion s2 ctable confirm)) (if (stringp rtn) - (concat s1 s2 (substring rtn (length s2)) - (if (and org-add-colon-after-tag-completion - (assoc rtn ctable)) - ":" ""))) - ) + (setq rtn + (concat s1 s2 (substring rtn (length s2)) + (if (and org-add-colon-after-tag-completion + (assoc rtn ctable)) + ":" "")))) + rtn) ((eq flag t) ;; all-completions (all-completions s2 ctable confirm) @@ -13202,7 +13224,7 @@ Returns the new tags string, or nil to not change the current settings." (save-excursion (beginning-of-line 1) (if (looking-at - (org-re ".*[ \t]\\(:[[:alnum:]_@:]+:\\)[ \t]*\\(\r\\|$\\)")) + (org-re ".*[ \t]\\(:[[:alnum:]_@:]+:\\)[ \t]*$")) (setq ov-start (match-beginning 1) ov-end (match-end 1) ov-prefix "") @@ -13358,7 +13380,7 @@ Returns the new tags string, or nil to not change the current settings." (error "Not on a heading")) (save-excursion (beginning-of-line 1) - (if (looking-at (org-re ".*[ \t]\\(:[[:alnum:]_@:]+:\\)[ \t]*\\(\r\\|$\\)")) + (if (looking-at (org-re ".*[ \t]\\(:[[:alnum:]_@:]+:\\)[ \t]*$")) (org-match-string-no-properties 1) ""))) @@ -13393,6 +13415,32 @@ but in some other way.") (defconst org-property-end-re "^[ \t]*:END:[ \t]*$" "Regular expression matching the first line of a property drawer.") +(defun org-property-action () + "Do an action on properties." + (interactive) + (let (c prop) + (org-at-property-p) + (setq prop (match-string 2)) + (message "Property Action: [s]et [d]elete [D]delete globally") + (setq c (read-char-exclusive)) + (cond + ((equal c ?s) + (call-interactively 'org-set-property)) + ((equal c ?d) + (call-interactively 'org-delete-property)) + ((equal c ?D) + (call-interactively 'org-delete-property-globally)) + (t (error "No such property action %c" c))))) + +(defun org-at-property-p () + "Is the cursor in a property line?" + ;; FIXME: Does not check if we are actually in the drawer. + ;; FIXME: also returns true on any drawers..... + ;; This is used by C-c C-c for property action. + (save-excursion + (beginning-of-line 1) + (looking-at "^[ \t]*\\(:\\([a-zA-Z_0-9]+\\):\\)[ \t]*\\(.*\\)"))) + (defmacro org-with-point-at (pom &rest body) "Move to buffer and point of point-or-marker POM for the duration of BODY." (declare (indent 1) (debug t)) @@ -13406,7 +13454,7 @@ but in some other way.") "Return the (beg . end) range of the body of the property drawer. BEG and END can be beginning and end of subtree, if not given they will be found. -If the drawer does not exist and FORCE is non-nil, greater the drawer." +If the drawer does not exist and FORCE is non-nil, create the drawer." (catch 'exit (save-excursion (let* ((beg (or beg (progn (org-back-to-heading t) (point)))) @@ -13414,18 +13462,14 @@ If the drawer does not exist and FORCE is non-nil, greater the drawer." (goto-char beg) (if (re-search-forward org-property-start-re end t) (setq beg (1+ (match-end 0))) - (or force (throw 'exit nil)) - (beginning-of-line 2) - (while (and (looking-at (concat "[ \t]*" org-keyword-time-regexp)) - (not (equal (match-string 1) org-clock-string))) - (beginning-of-line 2)) - (insert ":PROPERTIES:\n:END:\n") - (beginning-of-line -1) - (org-indent-line-function) - (setq beg (1+ (point-at-eol)) end beg) - (beginning-of-line 2) - (org-indent-line-function) - (throw 'exit (cons beg end))) + (if force + (save-excursion + (org-insert-property-drawer) + (setq end (progn (outline-next-heading) (point)))) + (throw 'exit nil)) + (goto-char beg) + (if (re-search-forward org-property-start-re end t) + (setq beg (1+ (match-end 0))))) (if (re-search-forward org-property-end-re end t) (setq end (match-beginning 0)) (or force (throw 'exit nil)) @@ -13448,10 +13492,11 @@ If WHICH is nil or `all', get all properties. If WHICH is (org-with-point-at pom (let ((clockstr (substring org-clock-string 0 -1)) (excluded '("TODO" "TAGS" "ALLTAGS" "PRIORITY")) - beg end range props key value) + beg end range props sum-props key value) (save-excursion (when (condition-case nil (org-back-to-heading t) (error nil)) (setq beg (point)) + (setq sum-props (get-text-property (point) 'org-summaries)) (outline-next-heading) (setq end (point)) (when (memq which '(all special)) @@ -13483,18 +13528,20 @@ If WHICH is nil or `all', get all properties. If WHICH is (when range (goto-char (car range)) (while (re-search-forward - "^[ \t]*:\\([a-zA-Z][a-zA-Z0-9]*\\):[ \t]*\\(\\S-.*\\S-\\)" + "^[ \t]*:\\([a-zA-Z][a-zA-Z_0-9]*\\):[ \t]*\\(\\S-.*\\)?" (cdr range) t) (setq key (org-match-string-no-properties 1) - value (org-match-string-no-properties 2)) + value (org-trim (or (org-match-string-no-properties 2) ""))) (unless (member key excluded) - (push (cons key value) props))))) - (nreverse props)))))) + (push (cons key (or value "")) props))))) + (append sum-props (nreverse props))))))) (defun org-entry-get (pom property &optional inherit) "Get value of PROPERTY for entry at point-or-marker POM. If INHERIT is non-nil and the entry does not have the property, -then also check higher levels of the hierarchy." +then also check higher levels of the hierarchy. +If the property is present but empty, the return value is the empty string. +If the property is not present at all, nil is returned." (org-with-point-at pom (if inherit (org-entry-get-with-inheritance property) @@ -13505,10 +13552,12 @@ then also check higher levels of the hierarchy." (if (and range (goto-char (car range)) (re-search-forward - (concat "^[ \t]*:" property ":[ \t]*\\(.*\\S-\\)") + (concat "^[ \t]*:" property ":[ \t]*\\(.*\\S-\\)?") (cdr range) t)) ;; Found the property, return it. - (org-match-string-no-properties 1))))))) + (if (match-end 1) + (org-match-string-no-properties 1) + ""))))))) (defun org-entry-delete (pom property) "Delete the property PROPERTY from entry at point-or-marker POM." @@ -13521,7 +13570,10 @@ then also check higher levels of the hierarchy." (re-search-forward (concat "^[ \t]*:" property ":[ \t]*\\(.*\\S-\\)") (cdr range) t)) - (delete-region (match-beginning 0) (1+ (point-at-eol)))))))) + (progn + (delete-region (match-beginning 0) (1+ (point-at-eol))) + t) + nil))))) (defvar org-entry-property-inherited-from (make-marker)) @@ -13575,7 +13627,8 @@ then also check higher levels of the hierarchy." (backward-char 1) (org-indent-line-function) (insert ":" property ":")) - (and value (insert " " value))))))) + (and value (insert " " value)) + (org-indent-line-function)))))) (defun org-buffer-property-keys (&optional include-specials) "Get all property keys in the current buffer." @@ -13594,56 +13647,195 @@ then also check higher levels of the hierarchy." (setq rtn (append org-special-properties rtn))) (sort rtn (lambda (a b) (string< (upcase a) (upcase b)))))) -;; FIXME: This should automatically find the right place int he entry. -;; And then org-entry-put should use it. (defun org-insert-property-drawer () - "Insert a property drawer at point." + "Insert a property drawer into the current entry." (interactive) - (beginning-of-line 1) - (insert ":PROPERTIES:\n:END:\n") - (beginning-of-line -1) - (org-indent-line-function) - (beginning-of-line 2) - (org-indent-line-function) - (end-of-line 0)) + (org-back-to-heading t) + (let ((beg (point)) + (re (concat "^[ \t]*" org-keyword-time-regexp)) + end hiddenp) + (outline-next-heading) + (setq end (point)) + (goto-char beg) + (while (re-search-forward re end t)) + (setq hiddenp (org-invisible-p)) + (end-of-line 1) + (insert "\n:PROPERTIES:\n:END:") + (beginning-of-line 0) + (org-indent-line-function) + (beginning-of-line 2) + (org-indent-line-function) + (beginning-of-line 0) + (if hiddenp + (save-excursion + (org-back-to-heading t) + (hide-entry)) + (org-flag-drawer t)))) -(defvar org-column-overlays nil +(defun org-set-property (property value) + "In the current entry, set PROPERTY to VALUE." + (interactive + (let* ((prop (completing-read "Property: " + (mapcar 'list (org-buffer-property-keys)))) + (cur (org-entry-get nil prop)) + (allowed (org-property-get-allowed-values nil prop 'table)) + (val (if allowed + (completing-read "Value: " allowed nil 'req-match) + (read-string + (concat "Value" (if (and cur (string-match "\\S-" cur)) + (concat "[" cur "]") "") + ": ") + "" cur)))) + (list prop (if (equal val "") cur val)))) + (unless (equal (org-entry-get nil property) value) + (org-entry-put nil property value))) + +(defun org-delete-property (property) + "In the current entry, delete PROPERTY." + (interactive + (let* ((prop (completing-read + "Property: " (org-entry-properties nil 'standard)))) + (list prop))) + (message (concat "Property " property + (if (org-entry-delete nil property) + " deleted" + " was not present in the entry")))) + +(defun org-delete-property-globally (property) + "Remove PROPERTY globally, from all entries." + (interactive + (let* ((prop (completing-read + "Globally remove property: " + (mapcar 'list (org-buffer-property-keys))))) + (list prop))) + (save-excursion + (save-restriction + (widen) + (goto-char (point-min)) + (let ((cnt 0)) + (while (re-search-forward + (concat "^[ \t]*:" (regexp-quote property) ":.*\n?") + nil t) + (setq cnt (1+ cnt)) + (replace-match "")) + (message "Property \"%s\" removed from %d entries" property cnt))))) + +(defun org-property-get-allowed-values (pom property &optional table) + "Get allowed values for the property PROPERTY. +When TABLE is non-nil, return an alist that can directly be used for +completion." + (let (vals) + (cond + ((equal property "TODO") + (setq vals (org-with-point-at pom + (append org-todo-keywords-1 '(""))))) + ((equal property "PRIORITY") + (let ((n org-lowest-priority)) + (while (>= n org-highest-priority) + (push (char-to-string n) vals) + (setq n (1- n))))) + ((member property org-special-properties)) + (t + (setq vals (org-entry-get pom (concat property "_ALL") 'inherit)) + (when (and vals (string-match "\\S-" vals)) + (setq vals (car (read-from-string (concat "(" vals ")")))) + (setq vals (mapcar (lambda (x) + (cond ((stringp x) x) + ((numberp x) (number-to-string x)) + ((symbolp x) (symbol-name x)) + (t "???"))) + vals))))) + (if table (mapcar 'list vals) vals))) + +;;; Column View + +(defvar org-columns-overlays nil "Holds the list of current column overlays.") -(defvar org-current-columns-fmt nil - "Loval variable, holds the currently active column format.") -(defvar org-current-columns-maxwidths nil +(defvar org-columns-current-fmt nil + "Local variable, holds the currently active column format.") +(defvar org-columns-current-fmt-compiled nil + "Local variable, holds the currently active column format. +This is the compiled version of the format.") +(defvar org-columns-current-maxwidths nil "Loval variable, holds the currently active maximum column widths.") +(defvar org-columns-begin-marker (make-marker) + "Points to the position where last a column creation command was called.") +(defvar org-columns-top-level-marker (make-marker) + "Points to the position where current columns region starts.") -(defvar org-column-map (make-sparse-keymap) +(defvar org-columns-map (make-sparse-keymap) "The keymap valid in column display.") -(define-key org-column-map "e" 'org-column-edit) -(define-key org-column-map "v" 'org-column-show-value) -(define-key org-column-map "q" 'org-column-quit) -(define-key org-column-map [left] 'backward-char) -(define-key org-column-map [right] 'forward-char) +(defun org-columns-content () + "Switch to contents view while in columns view." + (interactive) + (org-overview) + (org-content)) -(easy-menu-define org-column-menu org-column-map "Org Column Menu" +(org-defkey org-columns-map "c" 'org-columns-content) +(org-defkey org-columns-map "o" 'org-overview) +(org-defkey org-columns-map "e" 'org-columns-edit-value) +(org-defkey org-columns-map "v" 'org-columns-show-value) +(org-defkey org-columns-map "q" 'org-columns-quit) +(org-defkey org-columns-map "r" 'org-columns-redo) +(org-defkey org-columns-map [left] 'backward-char) +(org-defkey org-columns-map "a" 'org-columns-edit-allowed) +(org-defkey org-columns-map "s" 'org-columns-edit-attributes) +(org-defkey org-columns-map [right] 'forward-char) +(org-defkey org-columns-map [(shift right)] 'org-columns-next-allowed-value) +(org-defkey org-columns-map "\C-c\C-c" 'org-columns-next-allowed-value) +(org-defkey org-columns-map "n" 'org-columns-next-allowed-value) +(org-defkey org-columns-map [(shift left)] 'org-columns-previous-allowed-value) +(org-defkey org-columns-map "p" 'org-columns-previous-allowed-value) +(org-defkey org-columns-map "<" 'org-columns-narrow) +(org-defkey org-columns-map ">" 'org-columns-widen) +(org-defkey org-columns-map [(meta right)] 'org-columns-move-right) +(org-defkey org-columns-map [(meta left)] 'org-columns-move-left) +(org-defkey org-columns-map [(shift meta right)] 'org-columns-new) +(org-defkey org-columns-map [(shift meta left)] 'org-columns-delete) + +(easy-menu-define org-columns-menu org-columns-map "Org Column Menu" '("Column" - ["Edit property" org-column-edit t] - ["Show full value" org-column-show-value t] - ["Quit" org-column-quit t])) + ["Edit property" org-columns-edit-value t] + ["Next allowed value" org-columns-next-allowed-value t] + ["Previous allowed value" org-columns-previous-allowed-value t] + ["Show full value" org-columns-show-value t] + ["Edit allowed" org-columns-edit-allowed t] + "--" + ["Edit column attributes" org-columns-edit-attributes t] + ["Increase column width" org-columns-widen t] + ["Decrease column width" org-columns-narrow t] + "--" + ["Move column right" org-columns-move-right t] + ["Move column left" org-columns-move-left t] + ["Add column" org-columns-new t] + ["Delete column" org-columns-delete t] + "--" + ["CONTENTS" org-columns-content t] + ["OVERVIEW" org-overview t] + ["Refresh columns display" org-columns-redo t] + "--" + ["Quit" org-columns-quit t])) -(defun org-new-column-overlay (beg end &optional string face) - "Create a new column overlay an add it to the list." +(defun org-columns-new-overlay (beg end &optional string face) + "Create a new column overlay and add it to the list." (let ((ov (org-make-overlay beg end))) (org-overlay-put ov 'face (or face 'secondary-selection)) (org-overlay-display ov string face) - (push ov org-column-overlays) + (push ov org-columns-overlays) ov)) -(defun org-overlay-columns (&optional props) +(defun org-columns-display-here (&optional props) "Overlay the current line with column display." (interactive) - (let ((fmt (copy-sequence org-current-columns-fmt)) - (beg (point-at-bol)) - (start 0) props pom property ass width f string ov) + (let* ((fmt org-columns-current-fmt-compiled) + (beg (point-at-bol)) + (color (list :foreground + (face-attribute + (or (get-text-property beg 'face) 'default) + :foreground))) + props pom property ass width f string ov column) ;; Check if the entry is in another buffer. (unless props (if (eq major-mode 'org-agenda-mode) @@ -13651,11 +13843,9 @@ then also check higher levels of the hierarchy." (get-text-property (point) 'org-marker)) props (if pom (org-entry-properties pom) nil)) (setq props (org-entry-properties nil)))) - ;; Parse the format - (while (string-match "%\\([0-9]+\\)?\\([a-zA-Z0-9]+\\)\\-*" - fmt start) - (setq start (match-end 0) - property (match-string 2 fmt) + ;; Walk the format + (while (setq column (pop fmt)) + (setq property (car column) ass (if (equal property "ITEM") (cons "ITEM" (save-match-data @@ -13664,17 +13854,21 @@ then also check higher levels of the hierarchy." (buffer-substring-no-properties (point-at-bol) (point-at-eol)))))) (assoc property props)) - width (or (cdr (assoc property org-current-columns-maxwidths)) - (string-to-number (or (match-string 1 fmt) "10"))) + width (or (cdr (assoc property org-columns-current-maxwidths)) + (nth 2 column)) f (format "%%-%d.%ds | " width width) string (format f (or (cdr ass) ""))) ;; Create the overlay (org-unmodified - (setq ov (org-new-column-overlay - beg (setq beg (1+ beg)) string 'org-column)) - (org-overlay-put ov 'keymap org-column-map) - (org-overlay-put ov 'org-column-key property) - (org-overlay-put ov 'org-column-value (cdr ass))) + (setq ov (org-columns-new-overlay + beg (setq beg (1+ beg)) string + (list color 'org-column))) +;;; (list (get-text-property (point-at-bol) 'face) 'org-column))) + (org-overlay-put ov 'keymap org-columns-map) + (org-overlay-put ov 'org-columns-key property) + (org-overlay-put ov 'org-columns-value (cdr ass)) + (org-overlay-put ov 'org-columns-pom pom) + (org-overlay-put ov 'org-columns-format f)) (if (or (not (char-after beg)) (equal (char-after beg) ?\n)) (let ((inhibit-read-only t)) @@ -13682,64 +13876,72 @@ then also check higher levels of the hierarchy." (goto-char beg) (insert " "))))) ;; Make the rest of the line disappear. - ;; FIXME: put the keymap also at the end of the line! (org-unmodified - (setq ov (org-new-column-overlay beg (point-at-eol))) + (setq ov (org-columns-new-overlay beg (point-at-eol))) (org-overlay-put ov 'invisible t) - (org-overlay-put ov 'keymap 'org-column-map) - (push ov org-column-overlays) + (org-overlay-put ov 'keymap org-columns-map) + (push ov org-columns-overlays) (setq ov (org-make-overlay (1- (point-at-eol)) (1+ (point-at-eol)))) - (org-overlay-put ov 'keymap 'org-column-map) - (push ov org-column-overlays) + (org-overlay-put ov 'keymap org-columns-map) + (push ov org-columns-overlays) (let ((inhibit-read-only t)) (put-text-property (1- (point-at-bol)) (min (point-max) (1+ (point-at-eol))) 'read-only "Type `e' to edit property"))))) -(defun org-overlay-columns-title () +(defvar org-previous-header-line-format nil + "The header line format before column view was turned on.") +(defvar org-columns-inhibit-recalculation nil + "Inhibit recomputing of columns on column view startup.") + +(defvar header-line-format) +(defun org-columns-display-here-title () "Overlay the newline before the current line with the table title." (interactive) - (let ((fmt (copy-sequence org-current-columns-fmt)) - (start 0) + (let ((fmt org-columns-current-fmt-compiled) string (title "") - property width f ov) - (while (string-match "%\\([0-9]+\\)?\\([a-zA-Z0-9]+\\)\\-*" - fmt start) - (setq start (match-end 0) - property (match-string 2 fmt) - width (or (cdr (assoc property org-current-columns-maxwidths)) - (string-to-number (or (match-string 1 fmt) "10"))) + property width f column str) + (while (setq column (pop fmt)) + (setq property (car column) + str (or (nth 1 column) property) + width (or (cdr (assoc property org-columns-current-maxwidths)) + (nth 2 column)) f (format "%%-%d.%ds | " width width) - string (format f property) + string (format f str) title (concat title string))) - (org-unmodified - (setq ov (org-new-column-overlay - (1- (point-at-bol)) (point-at-bol) - (concat "\n" (make-string (length title) ?-) "\n" - title "\n" (make-string (length title) ?-) "\n") - 'bold)) - (org-overlay-put ov 'keymap org-column-map)))) + (setq title (concat + (org-add-props " " nil 'display '(space :align-to 0)) + (org-add-props title nil 'face '(:weight bold :underline t)))) + (org-set-local 'org-previous-header-line-format header-line-format) + (setq header-line-format title))) -(defun org-remove-column-overlays () +(defun org-columns-remove-overlays () "Remove all currently active column overlays." (interactive) - (org-unmodified - (mapc 'org-delete-overlay org-column-overlays) - (setq org-column-overlays nil) - (let ((inhibit-read-only t)) - (remove-text-properties (point-min) (point-max) '(read-only t))))) + (when (marker-buffer org-columns-begin-marker) + (with-current-buffer (marker-buffer org-columns-begin-marker) + (when (local-variable-p 'org-previous-header-line-format) + (setq header-line-format org-previous-header-line-format) + (kill-local-variable 'org-previous-header-line-format)) + (move-marker org-columns-begin-marker nil) + (move-marker org-columns-top-level-marker nil) + (org-unmodified + (mapc 'org-delete-overlay org-columns-overlays) + (setq org-columns-overlays nil) + (let ((inhibit-read-only t)) + (remove-text-properties (point-min) (point-max) '(read-only t))))))) -(defun org-column-show-value () +(defun org-columns-show-value () "Show the full value of the property." (interactive) - (let ((value (get-char-property (point) 'org-column-value))) + (let ((value (get-char-property (point) 'org-columns-value))) (message "Value is: %s" (or value "")))) -(defun org-column-quit () +(defun org-columns-quit () "Remove the column overlays and in this way exit column editing." (interactive) (org-unmodified - (org-remove-column-overlays) + (org-columns-remove-overlays) (let ((inhibit-read-only t)) ;; FIXME: is this safe??? ;; or are there other reasons why there may be a read-only property???? @@ -13747,13 +13949,13 @@ then also check higher levels of the hierarchy." (when (eq major-mode 'org-agenda-mode) (message "Modification not yet reflected in Agenda buffer, use `r' to refresh"))) -(defun org-column-edit () +(defun org-columns-edit-value () "Edit the value of the property at point in column view. Where possible, use the standard interface for changing this line." (interactive) (let* ((col (current-column)) - (key (get-char-property (point) 'org-column-key)) - (value (get-char-property (point) 'org-column-value)) + (key (get-char-property (point) 'org-columns-key)) + (value (get-char-property (point) 'org-columns-value)) (bol (point-at-bol)) (eol (point-at-eol)) (pom (or (get-text-property bol 'org-hd-marker) (point))) ; keep despite of compiler waring @@ -13763,8 +13965,8 @@ Where possible, use the standard interface for changing this line." (>= (overlay-start x) bol) (<= (overlay-start x) eol) x)) - org-column-overlays))) - nval eval) + org-columns-overlays))) + nval eval allowed) (when (equal key "ITEM") (error "Cannot edit item headline from here")) @@ -13788,7 +13990,10 @@ Where possible, use the standard interface for changing this line." (setq eval '(org-with-point-at pom (call-interactively 'org-deadline)))) (t - (setq nval (read-string "Edit: " value)) + (setq allowed (org-property-get-allowed-values pom key 'table)) + (if allowed + (setq nval (completing-read "Value: " allowed nil t)) + (setq nval (read-string "Edit: " value))) (setq nval (org-trim nval)) (when (not (equal nval value)) (setq eval '(org-entry-put pom key nval))))) @@ -13797,67 +14002,272 @@ Where possible, use the standard interface for changing this line." (remove-text-properties (1- bol) eol '(read-only t)) (unwind-protect (progn - (setq org-column-overlays - (org-delete-all line-overlays org-column-overlays)) + (setq org-columns-overlays + (org-delete-all line-overlays org-columns-overlays)) (mapc 'org-delete-overlay line-overlays) - (eval eval)) - (org-overlay-columns)))) - (move-to-column col))) + (org-columns-eval eval)) + (org-columns-display-here)))) + (move-to-column col) + (if (nth 3 (assoc key org-columns-current-fmt-compiled)) + (org-columns-update key)))) + +(defun org-columns-edit-allowed () + "Edit the list of allowed values for the current property." + (interactive) + (let* ((col (current-column)) + (key (get-char-property (point) 'org-columns-key)) + (key1 (concat key "_ALL")) + (value (get-char-property (point) 'org-columns-value)) + (allowed (org-entry-get (point) key1 t)) + nval) + (setq nval (read-string "Allowed: " allowed)) + (org-entry-put + (cond ((marker-position org-entry-property-inherited-from) + org-entry-property-inherited-from) + ((marker-position org-columns-top-level-marker) + org-columns-top-level-marker)) + key1 nval))) + +(defun org-columns-eval (form) + (let (hidep) + (save-excursion + (beginning-of-line 1) + (next-line 1) + (setq hidep (org-on-heading-p 1))) + (eval form) + (and hidep (hide-entry)))) + +(defun org-columns-previous-allowed-value () + "Switch to the previous allowed value for this column." + (interactive) + (org-columns-next-allowed-value t)) + +(defun org-columns-next-allowed-value (&optional previous) + "Switch to the next allowed value for this column." + (interactive) + (let* ((col (current-column)) + (key (get-char-property (point) 'org-columns-key)) + (value (get-char-property (point) 'org-columns-value)) + (bol (point-at-bol)) (eol (point-at-eol)) + (pom (or (get-text-property bol 'org-hd-marker) + (point))) ; keep despite of compiler waring + (line-overlays + (delq nil (mapcar (lambda (x) + (and (eq (overlay-buffer x) (current-buffer)) + (>= (overlay-start x) bol) + (<= (overlay-start x) eol) + x)) + org-columns-overlays))) + (allowed (or (org-property-get-allowed-values pom key) + (and (equal + (nth 4 (assoc key org-columns-current-fmt-compiled)) + 'checkbox) '("[ ]" "[X]")))) + nval) + (when (equal key "ITEM") + (error "Cannot edit item headline from here")) + (unless allowed + (error "Allowed values for this property have not been defined")) + (if previous (setq allowed (reverse allowed))) + (if (member value allowed) + (setq nval (car (cdr (member value allowed))))) + (setq nval (or nval (car allowed))) + (if (equal nval value) + (error "Only one allowed value for this property")) + (let ((inhibit-read-only t)) + (remove-text-properties (1- bol) eol '(read-only t)) + (unwind-protect + (progn + (setq org-columns-overlays + (org-delete-all line-overlays org-columns-overlays)) + (mapc 'org-delete-overlay line-overlays) + (org-columns-eval '(org-entry-put pom key nval))) + (org-columns-display-here))) + (move-to-column col) + (if (nth 3 (assoc key org-columns-current-fmt-compiled)) + (org-columns-update key)))) + +(defun org-verify-version (task) + (cond + ((eq task 'columns) + (if (or (featurep 'xemacs) + (< emacs-major-version 22)) + (error "Emacs 22 is required for the columns feature"))))) (defun org-columns () "Turn on column view on an org-mode file." (interactive) - (org-remove-column-overlays) + (org-verify-version 'columns) + (org-columns-remove-overlays) + (move-marker org-columns-begin-marker (point)) (let (beg end fmt cache maxwidths) - (move-marker org-entry-property-inherited-from nil) - (setq fmt (org-entry-get nil "COLUMNS" t)) - (unless fmt - (message "No local columns format defined, using default")) - (org-set-local 'org-current-columns-fmt (or fmt org-default-columns-format)) - (org-back-to-heading) + (when (condition-case nil (org-back-to-heading) (error nil)) + (move-marker org-entry-property-inherited-from nil) + (setq fmt (org-entry-get nil "COLUMNS" t))) + (setq fmt (or fmt org-columns-default-format)) + (org-set-local 'org-columns-current-fmt fmt) + (org-columns-compile-format fmt) (save-excursion (if (marker-position org-entry-property-inherited-from) (goto-char org-entry-property-inherited-from)) - (setq beg (point) - end (org-end-of-subtree t t)) + (setq beg (point)) + (move-marker org-columns-top-level-marker (point)) + (unless org-columns-inhibit-recalculation + (org-columns-compute-all)) + (setq end (or (condition-case nil (org-end-of-subtree t t) (error nil)) + (point-max))) (goto-char beg) ;; Get and cache the properties (while (re-search-forward (concat "^" outline-regexp) end t) (push (cons (org-current-line) (org-entry-properties)) cache)) (when cache - (setq maxwidths (org-get-columns-autowidth-alist fmt cache)) - (org-set-local 'org-current-columns-maxwidths maxwidths) + (setq maxwidths (org-columns-get-autowidth-alist fmt cache)) + (org-set-local 'org-columns-current-maxwidths maxwidths) (goto-line (car (org-last cache))) - (org-overlay-columns-title) + (org-columns-display-here-title) (mapc (lambda (x) (goto-line (car x)) - (org-overlay-columns (cdr x))) + (org-columns-display-here (cdr x))) cache))))) +(defun org-columns-new (&optional prop title width op fmt) + "Insert a new column, to the leeft o the current column." + (interactive) + (let ((editp (and prop (assoc prop org-columns-current-fmt-compiled))) + cell) + (setq prop (completing-read + "Property: " (mapcar 'list (org-buffer-property-keys t)) + nil nil prop)) + (setq title (read-string (concat "Column title [" prop "]: ") (or title prop))) + (setq width (read-string "Column width: " (if width (number-to-string width)))) + (if (string-match "\\S-" width) + (setq width (string-to-number width)) + (setq width nil)) + (setq fmt (completing-read "Summary [none]: " + '(("none") ("add_numbers") ("add_times") ("checkbox")) + nil t)) + (if (string-match "\\S-" fmt) + (setq fmt (intern fmt)) + (setq fmt nil)) + (if (eq fmt 'none) (setq fmt nil)) + (if editp + (progn + (setcar editp prop) + (setcdr editp (list title width nil fmt))) + (setq cell (nthcdr (1- (current-column)) + org-columns-current-fmt-compiled)) + (setcdr cell (cons (list prop title width nil fmt) + (cdr cell)))) + (org-columns-store-format) + (org-columns-redo))) + +(defun org-columns-delete () + "Delete the column at point from columns view." + (interactive) + (let* ((n (current-column)) + (title (nth 1 (nth n org-columns-current-fmt-compiled)))) + (when (y-or-n-p + (format "Are you sure you want to remove column \"%s\"? " title)) + (setq org-columns-current-fmt-compiled + (delq (nth n org-columns-current-fmt-compiled) + org-columns-current-fmt-compiled)) + (org-columns-store-format) + (org-columns-redo) + (if (>= (current-column) (length org-columns-current-fmt-compiled)) + (backward-char 1))))) + +(defun org-columns-edit-attributes () + "Edit the attributes of the current column." + (interactive) + (let* ((n (current-column)) + (info (nth n org-columns-current-fmt-compiled))) + (apply 'org-columns-new info))) + +(defun org-columns-widen (arg) + "Make the column wider by ARG characters." + (interactive "p") + (let* ((n (current-column)) + (entry (nth n org-columns-current-fmt-compiled)) + (width (or (nth 2 entry) + (cdr (assoc (car entry) org-columns-current-maxwidths))))) + (setq width (max 1 (+ width arg))) + (setcar (nthcdr 2 entry) width) + (org-columns-store-format) + (org-columns-redo))) + +(defun org-columns-narrow (arg) + "Make the column nrrower by ARG characters." + (interactive "p") + (org-columns-widen (- arg))) + +(defun org-columns-move-right () + "Swap this column with the one to the right." + (interactive) + (let* ((n (current-column)) + (cell (nthcdr n org-columns-current-fmt-compiled)) + e) + (when (>= n (1- (length org-columns-current-fmt-compiled))) + (error "Cannot shift this column further to the right")) + (setq e (car cell)) + (setcar cell (car (cdr cell))) + (setcdr cell (cons e (cdr (cdr cell)))) + (org-columns-store-format) + (org-columns-redo) + (forward-char 1))) + +(defun org-columns-move-left () + "Swap this column with the one to the left." + (interactive) + (let* ((n (current-column))) + (when (= n 0) + (error "Cannot shift this column further to the left")) + (backward-char 1) + (org-columns-move-right) + (backward-char 1))) + +(defun org-columns-store-format () + "Store the text version of the current columns format in appropriate place. +This is either in the COLUMNS property of the node starting the current column +display, or in the #+COLUMNS line of the current buffer." + (let (fmt) + (setq fmt (org-columns-uncompile-format org-columns-current-fmt-compiled)) + (if (marker-position org-columns-top-level-marker) + (save-excursion + (goto-char org-columns-top-level-marker) + (if (org-entry-get nil "COLUMNS") + (org-entry-put nil "COLUMNS" fmt) + (goto-char (point-min)) + (while (re-search-forward "^#\\+COLUMNS:.*" nil t) + (replace-match (concat "#+COLUMNS: " fmt t t))))) + (setq org-columns-current-fmt fmt)))) + (defvar org-overriding-columns-format nil - "FIXME:") + "When set, overrides any other definition.") (defvar org-agenda-view-columns-initially nil - "FIXME:") + "When set, switch to columns view immediately after creating the agenda.") (defun org-agenda-columns () "Turn on column view in the agenda." (interactive) - (let (fmt first-done cache maxwidths m) + (org-verify-version 'columns) + (org-columns-remove-overlays) + (move-marker org-columns-begin-marker (point)) + (let (fmt cache maxwidths m) (cond ((and (local-variable-p 'org-overriding-columns-format) org-overriding-columns-format) (setq fmt org-overriding-columns-format)) ((setq m (get-text-property (point-at-bol) 'org-hd-marker)) (setq fmt (org-entry-get m "COLUMNS" t))) - ((and (boundp 'org-current-columns-fmt) - (local-variable-p 'org-current-columns-fmt) - org-current-columns-fmt) - (setq fmt org-current-columns-fmt)) + ((and (boundp 'org-columns-current-fmt) + (local-variable-p 'org-columns-current-fmt) + org-columns-current-fmt) + (setq fmt org-columns-current-fmt)) ((setq m (next-single-property-change (point-min) 'org-hd-marker)) (setq m (get-text-property m 'org-hd-marker)) (setq fmt (org-entry-get m "COLUMNS" t)))) - (setq fmt (or fmt org-default-columns-format)) - (org-set-local 'org-current-columns-fmt fmt) + (setq fmt (or fmt org-columns-default-format)) + (org-set-local 'org-columns-current-fmt fmt) + (org-columns-compile-format fmt) (save-excursion ;; Get and cache the properties (goto-char (point-min)) @@ -13867,16 +14277,16 @@ Where possible, use the standard interface for changing this line." (push (cons (org-current-line) (org-entry-properties m)) cache)) (beginning-of-line 2)) (when cache - (setq maxwidths (org-get-columns-autowidth-alist fmt cache)) - (org-set-local 'org-current-columns-maxwidths maxwidths) + (setq maxwidths (org-columns-get-autowidth-alist fmt cache)) + (org-set-local 'org-columns-current-maxwidths maxwidths) (goto-line (car (org-last cache))) - (org-overlay-columns-title) + (org-columns-display-here-title) (mapc (lambda (x) (goto-line (car x)) - (org-overlay-columns (cdr x))) + (org-columns-display-here (cdr x))) cache))))) -(defun org-get-columns-autowidth-alist (s cache) +(defun org-columns-get-autowidth-alist (s cache) "Derive the maximum column widths from the format and the cache." (let ((start 0) rtn) (while (string-match "%\\([a-zA-Z]\\S-*\\)" s start) @@ -13891,6 +14301,167 @@ Where possible, use the standard interface for changing this line." rtn) rtn)) +(defun org-columns-compute-all () + "Compute all columns that have operators defined." + (remove-text-properties (point-min) (point-max) '(org-summaries t)) + (let ((columns org-columns-current-fmt-compiled) col) + (while (setq col (pop columns)) + (when (nth 3 col) + (save-excursion + (org-columns-compute (car col))))))) + +(defun org-columns-update (property) + "Recompute PROPERTY, and update the columns display for it." + (org-columns-compute property) + (let (fmt val pos) + (save-excursion + (mapc (lambda (ov) + (when (equal (org-overlay-get ov 'org-columns-key) property) + (setq pos (org-overlay-start ov)) + (goto-char pos) + (when (setq val (cdr (assoc property + (get-text-property (point-at-bol) 'org-summaries)))) + (setq fmt (org-overlay-get ov 'org-columns-format)) + (org-overlay-put ov 'display (format fmt val))))) + org-columns-overlays)))) + +(defun org-columns-compute (property) + "Sum the values of property PROPERTY hierarchically, for the entire buffer." + (interactive) + (let* ((re (concat "^" outline-regexp)) + (lmax 30) ; Does anyone use deeper levels??? + (lsum (make-vector lmax 0)) + (level 0) + (ass (assoc property org-columns-current-fmt-compiled)) + (format (nth 4 ass)) + (beg org-columns-top-level-marker) + last-level val end sumpos sum-alist sum str) + (save-excursion + ;; Find the region to compute + (goto-char beg) + (setq end (condition-case nil (org-end-of-subtree t) (error (point-max)))) + (goto-char end) + ;; Walk the tree from the back and do the computations + (while (re-search-backward re beg t) + (setq sumpos (match-beginning 0) + last-level level + level (org-outline-level) + val (org-entry-get nil property)) + (cond + ((< level last-level) + ;; put the sum of lower levels here as a property + (setq sum (aref lsum last-level) + str (org-column-number-to-string sum format) + sum-alist (get-text-property sumpos 'org-summaries)) + (if (assoc property sum-alist) + (setcdr (assoc property sum-alist) str) + (push (cons property str) sum-alist) + (add-text-properties sumpos (1+ sumpos) + (list 'org-summaries sum-alist))) + (when val + (org-entry-put nil property str)) + ;; add current to current level accumulator + (aset lsum level (+ (aref lsum level) sum)) + ;; clear accumulators for deeper levels + (loop for l from (1+ level) to (1- lmax) do (aset lsum l 0))) + ((>= level last-level) + ;; add what we have here to the accumulator for this level + (aset lsum level (+ (aref lsum level) + (org-column-string-to-number (or val "0") format)))) + (t (error "This should not happen"))))))) + +(defun org-columns-redo () + "Construct the column display again." + (interactive) + (message "Recomputing columns...") + (save-excursion + (if (marker-position org-columns-begin-marker) + (goto-char org-columns-begin-marker)) + (org-columns-remove-overlays) + (if (org-mode-p) + (call-interactively 'org-columns) + (call-interactively 'org-agenda-columns))) + (message "Recomputing columns...done")) + +(defun org-columns-not-in-agenda () + (if (eq major-mode 'org-agenda-mode) + (error "This command is only allowed in Org-mode buffers"))) + + +(defun org-string-to-number (s) + "Convert string to number, and interpret hh:mm:ss." + (if (not (string-match ":" s)) + (string-to-number s) + (let ((l (nreverse (org-split-string s ":"))) (sum 0.0)) + (while l + (setq sum (+ (string-to-number (pop l)) (/ sum 60)))) + sum))) + +(defun org-column-number-to-string (n fmt) + "Convert a computed column number to a string value, according to FMT." + (cond + ((eq fmt 'add_times) + (let* ((h (floor n)) (m (floor (+ 0.5 (* 60 (- n h)))))) + (format "%d:%02d" h m))) + ((eq fmt 'checkbox) + (cond ((= n (floor n)) "[X]") + ((> n 1.) "[-]") + (t "[ ]"))) + (t (number-to-string n)))) + +(defun org-column-string-to-number (s fmt) + "Convert a column value to a number that can be used for column computing." + (cond + ((string-match ":" s) + (let ((l (nreverse (org-split-string s ":"))) (sum 0.0)) + (while l + (setq sum (+ (string-to-number (pop l)) (/ sum 60)))) + sum)) + ((eq fmt 'checkbox) + (if (equal s "[X]") 1. 0.000001)) + (t (string-to-number s)))) + +(defun org-columns-uncompile-format (cfmt) + "Turn the compiled columns format back into a string representation." + (let ((rtn "") e s prop title op width fmt) + (while (setq e (pop cfmt)) + (setq prop (car e) + title (nth 1 e) + width (nth 2 e) + op (nth 3 e) + fmt (nth 4 e)) + (cond + ((eq fmt 'add_times) (setq op ":")) + ((eq fmt 'checkbox) (setq op "X")) + ((eq fmt 'add_numbers) (setq op "+"))) + (if (equal title prop) (setq title nil)) + (setq s (concat "%" (if width (number-to-string width)) + prop + (if title (concat "(" title ")")) + (if op (concat "{" op "}")))) + (setq rtn (concat rtn " " s))) + (org-trim rtn))) + +(defun org-columns-compile-format (fmt) + "FIXME" + (let ((start 0) width prop title op f) + (setq org-columns-current-fmt-compiled nil) + (while (string-match "%\\([0-9]+\\)?\\([a-zA-Z_0-9]+\\)\\(?:(\\([^)]+\\))\\)?\\(?:{\\([^}]+\\)}\\)?\\s-*" + fmt start) + (setq start (match-end 0) + width (match-string 1 fmt) + prop (match-string 2 fmt) + title (or (match-string 3 fmt) prop) + op (match-string 4 fmt) + f nil) + (if width (setq width (string-to-number width))) + (cond + ((equal op "+") (setq f 'add_numbers)) + ((equal op ":") (setq f 'add_times)) + ((equal op "X") (setq f 'checkbox))) + (push (list prop title width op f) org-columns-current-fmt-compiled)) + (setq org-columns-current-fmt-compiled + (nreverse org-columns-current-fmt-compiled)))) ;;;; Timestamps @@ -14084,7 +14655,7 @@ used to insert the time stamp into the buffer to include the time." ;; Help matching am/pm times, because `parse-time-string' does not do that. ;; If there is a time with am/pm, and *no* time without it, we convert ;; so that matching will be successful. - ;; FIXME: make this replace twoce, so that we catch the end time. + ;; FIXME: make this replace twice, so that we catch the end time. (when (and (not (string-match "[012]?[0-9]:[0-9][0-9]\\([ \t\n]\\|$\\)" ans)) (string-match "\\([012]?[0-9]\\)\\(:\\([0-5][0-9]\\)\\)?\\(am\\|AM\\|pm\\|PM\\)\\>" ans)) (setq hour (string-to-number (match-string 1 ans)) @@ -15308,8 +15879,7 @@ The following commands are available: (org-defkey org-agenda-mode-map [(right)] 'org-agenda-later) (org-defkey org-agenda-mode-map [(left)] 'org-agenda-earlier) (org-defkey org-agenda-mode-map "\C-c\C-x\C-c" 'org-agenda-columns) -; FIXME: other key? wtah about the menu???/ -;(org-defkey org-agenda-mode-map "\C-c\C-x\C-c" 'org-export-icalendar-combine-agenda-files) + (defvar org-agenda-keymap (copy-keymap org-agenda-mode-map) "Local keymap for agenda entries from Org-mode.") @@ -16555,7 +17125,6 @@ for a keyword. A numeric prefix directly selects the Nth keyword in (mapcar 'list kwds) nil nil))) (and (equal 0 arg) (setq org-select-this-todo-keyword nil)) (org-set-local 'org-last-arg arg) -;FIXME (org-set-local 'org-todo-keywords-for-agenda kwds) (setq org-agenda-redo-command '(org-todo-list (or current-prefix-arg org-last-arg))) (setq files (org-agenda-files) @@ -16581,7 +17150,7 @@ for a keyword. A numeric prefix directly selects the Nth keyword in (mapc (lambda (x) (setq s (format "(%d)%s" (setq n (1+ n)) x)) (if (> (+ (current-column) (string-width s) 1) (frame-width)) - (insert "\n ")) + (insert "\n ")) (insert " " s)) kwds)) (insert "\n")) @@ -16705,8 +17274,8 @@ MATCH is being ignored." "\\)\\>")) (tags (nth 2 org-stuck-projects)) (tags-re (if (member "*" tags) - (org-re "^\\*+.*:[[:alnum:]_@]+:[ \t]*$") - (concat "^\\*+.*:\\(" + (org-re "^\\*+ .*:[[:alnum:]_@]+:[ \t]*$") + (concat "^\\*+ .*:\\(" (mapconcat 'identity tags "\\|") (org-re "\\):[[:alnum:]_@:]*[ \t]*$")))) (gen-re (nth 3 org-stuck-projects)) @@ -16951,7 +17520,7 @@ the documentation of `org-diary'." (defun org-entry-is-done-p () "Is the current entry marked DONE?" (save-excursion - (and (re-search-backward "[\r\n]\\*" nil t) + (and (re-search-backward "[\r\n]\\* " nil t) (looking-at org-nl-done-regexp)))) (defun org-at-date-range-p (&optional inactive-ok) @@ -16984,7 +17553,7 @@ the documentation of `org-diary'." (format "mouse-2 or RET jump to org file %s" (abbreviate-file-name buffer-file-name)))) ;; FIXME: get rid of the \n at some point but watch out - (regexp (concat "[\n\r]\\*+ *\\(" + (regexp (concat "\n\\*+[ \t]+\\(" (if org-select-this-todo-keyword (if (equal org-select-this-todo-keyword "*") org-todo-regexp @@ -17093,12 +17662,12 @@ the documentation of `org-diary'." ;; substring should only run to end of time stamp (setq timestr (substring timestr 0 (match-end 0)))) (save-excursion - (if (re-search-backward "\\(^\\|\r\\)\\*+" nil t) + (if (re-search-backward "^\\*+ " nil t) (progn - (goto-char (match-end 1)) + (goto-char (match-beginning 0)) (setq hdmarker (org-agenda-new-marker) tags (org-get-tags-at)) - (looking-at "\\*+[ \t]*\\([^\r\n]+\\)") + (looking-at "\\*+[ \t]+\\([^\r\n]+\\)") (setq txt (org-format-agenda-item (format "%s%s" (if deadlinep "Deadline: " "") @@ -17202,12 +17771,12 @@ the documentation of `org-diary'." ;; substring should only run to end of time stamp (setq timestr (substring timestr 0 (match-end 0)))) (save-excursion - (if (re-search-backward "\\(^\\|\r\\)\\*+" nil t) + (if (re-search-backward "^\\*+ " nil t) (progn - (goto-char (match-end 1)) + (goto-char (match-beginning 0)) (setq hdmarker (org-agenda-new-marker) tags (org-get-tags-at)) - (looking-at "\\*+[ \t]*\\([^\r\n]+\\)") + (looking-at "\\*+[ \t]+\\([^\r\n]+\\)") (setq txt (org-format-agenda-item (if closedp "Closed: " "Clocked: ") (match-string 1) category tags timestr))) @@ -17252,10 +17821,10 @@ the documentation of `org-diary'." (if (and (< diff wdays) todayp (not (= diff 0))) (save-excursion (setq category (org-get-category)) - (if (re-search-backward "\\(^\\|\r\\)\\*+[ \t]*" nil t) + (if (re-search-backward "^\\*+[ \t]+" nil t) (progn (goto-char (match-end 0)) - (setq pos1 (match-end 1)) + (setq pos1 (match-beginning 0)) (setq tags (org-get-tags-at pos1)) (setq head (buffer-substring-no-properties (point) @@ -17311,10 +17880,10 @@ the documentation of `org-diary'." (if (and (< diff 0) todayp) (save-excursion (setq category (org-get-category)) - (if (re-search-backward "\\(^\\|\r\\)\\*+[ \t]*" nil t) + (if (re-search-backward "^\\*+[ \t]+" nil t) (progn (goto-char (match-end 0)) - (setq pos1 (match-end 1)) + (setq pos1 (match-beginning 0)) (setq tags (org-get-tags-at)) (setq head (buffer-substring-no-properties (point) @@ -17364,12 +17933,12 @@ the documentation of `org-diary'." (save-excursion (setq marker (org-agenda-new-marker (point))) (setq category (org-get-category)) - (if (re-search-backward "\\(^\\|\r\\)\\*+" nil t) + (if (re-search-backward "^\\*+ " nil t) (progn - (setq hdmarker (org-agenda-new-marker (match-end 1))) - (goto-char (match-end 1)) + (goto-char (match-beginning 0)) + (setq hdmarker (org-agenda-new-marker (point))) (setq tags (org-get-tags-at)) - (looking-at "\\*+[ \t]*\\([^\r\n]+\\)") + (looking-at "\\*+[ \t]+\\([^\r\n]+\\)") (setq txt (org-format-agenda-item (format (if (= d1 d2) "" "(%d/%d): ") (1+ (- d0 d1)) (1+ (- d2 d1))) @@ -17715,7 +18284,7 @@ If ERROR is non-nil, throw an error, otherwise just return nil." (if (not (one-window-p)) (delete-window)) (kill-buffer buf) (org-agenda-maybe-reset-markers 'force) - (org-remove-column-overlays)) + (org-columns-remove-overlays)) ;; Maybe restore the pre-agenda window configuration. (and org-agenda-restore-windows-after-quit (not (eq org-agenda-window-setup 'other-frame)) @@ -17814,10 +18383,12 @@ With prefix ARG, go backward that many times the current span." (defun org-agenda-day-view () "Switch to daily view for agenda." (interactive) + (setq org-agenda-ndays 1) (org-agenda-change-time-span 'day)) (defun org-agenda-week-view () "Switch to daily view for agenda." (interactive) + (setq org-agenda-ndays 7) (org-agenda-change-time-span 'week)) (defun org-agenda-month-view () "Switch to daily view for agenda." @@ -17860,8 +18431,9 @@ so that the date SD will be in that range." ((eq span 'week) (let* ((nt (calendar-day-of-week (calendar-gregorian-from-absolute sd))) - (n1 org-agenda-start-on-weekday) - (d (- nt n1))) + (d (if org-agenda-start-on-weekday + (- nt org-agenda-start-on-weekday) + 0))) (setq sd (- sd (+ (if (< d 0) 7 0) d))) (setq nd 7))) ((eq span 'month) @@ -18329,7 +18901,7 @@ the tags of the current headline come last." (org-back-to-heading t) (condition-case nil (while t - (if (looking-at (org-re "[^\r\n]+?:\\([[:alnum:]_@:]+\\):[ \t]*\\([\n\r]\\|\\'\\)")) + (if (looking-at (org-re "[^\r\n]+?:\\([[:alnum:]_@:]+\\):[ \t]*$")) (setq tags (append (org-split-string (org-match-string-no-properties 1) ":") tags))) @@ -19463,7 +20035,8 @@ translations. There is currently no way for users to extend this.") (re-archive (concat ":" org-archive-tag ":")) (re-quote (concat "^\\*+[ \t]+" org-quote-string "\\>")) (htmlp (plist-get parameters :for-html)) - (outline-regexp "\\*+") + (inhibit-read-only t) + (outline-regexp "\\*+ ") a b rtn p) (save-excursion @@ -19739,7 +20312,7 @@ underlined headlines. The default is 3." :skip-before-1st-heading (plist-get opt-plist :skip-before-1st-heading) :add-text (plist-get opt-plist :text)) - "[\r\n]"))) + "[\r\n]"))) ;; FIXME: why \r here???/ thetoc have-headings first-heading-pos table-open table-buffer) @@ -19846,7 +20419,7 @@ underlined headlines. The default is 3." (when custom-times (setq line (org-translate-time line))) (cond - ((string-match "^\\(\\*+\\)[ \t]*\\(.*\\)" line) + ((string-match "^\\(\\*+\\)[ \t]+\\(.*\\)" line) ;; a Headline (setq first-heading-pos (or first-heading-pos (point))) (setq level (org-tr-level (- (match-end 1) (match-beginning 1))) @@ -19953,7 +20526,7 @@ underlined headlines. The default is 3." ;; find the indentation of the next non-empty line (catch 'stop (while lines - (if (string-match "^\\*" (car lines)) (throw 'stop nil)) + (if (string-match "^\\* " (car lines)) (throw 'stop nil)) (if (string-match "^\\([ \t]*\\)\\S-" (car lines)) (throw 'stop (setq ind (org-get-indentation (car lines))))) (pop lines))) @@ -20145,12 +20718,12 @@ this line is also exported in fixed-width font." (save-excursion (org-back-to-heading) (if (looking-at (concat outline-regexp - "\\( +\\<" org-quote-string "\\>\\)")) + "\\( *\\<" org-quote-string "\\>\\)")) (replace-match "" t t nil 1) (if (looking-at outline-regexp) (progn (goto-char (match-end 0)) - (insert " " org-quote-string)))))))) + (insert org-quote-string " ")))))))) (defun org-export-as-html-and-open (arg) "Export the outline as HTML and immediately open it with a browser. @@ -20303,7 +20876,7 @@ the body tags themselves." (file-name-nondirectory buffer-file-name))) "UNTITLED")) (quote-re0 (concat "^[ \t]*" org-quote-string "\\>")) - (quote-re (concat "^\\(\\*+\\)\\([ \t]*" org-quote-string "\\>\\)")) + (quote-re (concat "^\\(\\*+\\)\\([ \t]+" org-quote-string "\\>\\)")) (inquote nil) (infixed nil) (in-local-list nil) @@ -20495,7 +21068,7 @@ lang=\"%s\" xml:lang=\"%s\"> (catch 'nextline ;; end of quote section? - (when (and inquote (string-match "^\\*+" line)) + (when (and inquote (string-match "^\\*+ " line)) (insert "\n") (setq inquote nil)) ;; inside a quote section? @@ -20672,7 +21245,7 @@ lang=\"%s\" xml:lang=\"%s\"> t t line))))) (cond - ((string-match "^\\(\\*+\\)[ \t]*\\(.*\\)" line) + ((string-match "^\\(\\*+\\)[ \t]+\\(.*\\)" line) ;; This is a headline (setq level (org-tr-level (- (match-end 1) (match-beginning 1))) txt (match-string 2 line)) @@ -21595,7 +22168,7 @@ The XOXO buffer is named *xoxo-*" (with-current-buffer out (erase-buffer)) ;; Kick off the output (org-export-as-xoxo-insert-into out "
    \n") - (while (re-search-forward "^\\(\\*+\\) \\(.+\\)" (point-max) 't) + (while (re-search-forward "^\\(\\*+\\)[ \t]+\\(.+\\)" (point-max) 't) (let* ((hd (match-string-no-properties 1)) (level (length hd)) (text (concat @@ -22052,6 +22625,7 @@ depending on context. See the individual commands for more information." (cond ((org-at-timestamp-p t) (call-interactively 'org-timestamp-up-day)) ((org-on-heading-p) (org-call-with-arg 'org-todo 'right)) + ((org-at-property-p) (call-interactively 'org-property-next-allowed-value)) (t (org-shiftcursor-error)))) (defun org-shiftleft () @@ -22060,6 +22634,8 @@ depending on context. See the individual commands for more information." (cond ((org-at-timestamp-p t) (call-interactively 'org-timestamp-down-day)) ((org-on-heading-p) (org-call-with-arg 'org-todo 'left)) + ((org-at-property-p) + (call-interactively 'org-property-previous-allowed-value)) (t (org-shiftcursor-error)))) (defun org-shiftcontrolright () @@ -22152,6 +22728,8 @@ This command does many different things, depending on context: ((and (local-variable-p 'org-finish-function (current-buffer)) (fboundp org-finish-function)) (funcall org-finish-function)) + ((org-at-property-p) + (call-interactively 'org-property-action)) ((org-on-target-p) (call-interactively 'org-update-radio-target-regexp)) ((org-on-heading-p) (call-interactively 'org-set-tags)) ((org-at-table.el-p) @@ -22361,17 +22939,7 @@ See the individual commands for more information." "--" ["Set Priority" org-priority t] ["Priority Up" org-shiftup t] - ["Priority Down" org-shiftdown t] - "--" - ;; FIXME: why is this still here???? -; ["Insert Checkbox" org-insert-todo-heading (org-in-item-p)] -; ["Toggle Checkbox" org-ctrl-c-ctrl-c (org-at-item-checkbox-p)] -; ["Insert [n/m] cookie" (progn (insert "[/]") (org-update-checkbox-count)) -; (or (org-on-heading-p) (org-at-item-p))] -; ["Insert [%] cookie" (progn (insert "[%]") (org-update-checkbox-count)) -; (or (org-on-heading-p) (org-at-item-p))] -; ["Update Statistics" org-update-checkbox-count t] - ) + ["Priority Down" org-shiftdown t]) ("TAGS and Properties" ["Set Tags" 'org-ctrl-c-ctrl-c (org-at-heading-p)] ["Column view of properties" org-columns t]) @@ -22811,16 +23379,16 @@ not an indirect buffer" ;; text in a line directly attached to a headline would otherwise ;; fill the headline as well. (org-set-local 'comment-start-skip "^#+[ \t]*") - (org-set-local 'paragraph-separate "\f\\|\\*\\|[ ]*$\\|[ \t]*[:|]") + (org-set-local 'paragraph-separate "\f\\|\\*+ \\|[ ]*$\\|[ \t]*[:|]") ;; FIXME!!!!!!! (org-set-local 'paragraph-separate "\f\\|[ ]*$") ;; The paragraph starter includes hand-formatted lists. (org-set-local 'paragraph-start - "\f\\|[ ]*$\\|\\([*\f]+\\)\\|[ \t]*\\([-+*][ \t]+\\|[0-9]+[.)][ \t]+\\)\\|[ \t]*[:|]") + "\f\\|[ ]*$\\|\\*+ \\|\f\\|[ \t]*\\([-+*][ \t]+\\|[0-9]+[.)][ \t]+\\)\\|[ \t]*[:|]") ;; Inhibit auto-fill for headers, tables and fixed-width lines. ;; But only if the user has not turned off tables or fixed-width regions (org-set-local 'auto-fill-inhibit-regexp - (concat "\\*\\|#\\+" + (concat "\\*+ \\|#\\+" "\\|[ \t]*" org-keyword-time-regexp (if (or org-enable-table-editor org-enable-fixed-width-editor) (concat @@ -23099,7 +23667,53 @@ Still experimental, may disappear in the furture." ;; make tree, check each match with the callback (org-occur "CLOSED: +\\[\\(.*?\\)\\]" nil callback))) +(defun org-fill-paragraph-experimental (&optional justify) + "Re-align a table, pass through to fill-paragraph if no table." + (let ((table-p (org-at-table-p)) + (table.el-p (org-at-table.el-p))) + (cond ((equal (char-after (point-at-bol)) ?*) t) ; skip headlines + (table.el-p t) ; skip table.el tables + (table-p (org-table-align) t) ; align org-mode tables + ((save-excursion + (let ((pos (1+ (point-at-eol)))) + (backward-paragraph 1) + (re-search-forward "\\\\\\\\[ \t]*$" pos t))) + (save-excursion + (save-restriction + (narrow-to-region (1+ (match-end 0)) (point-max)) + (fill-paragraph nil) + t))) + (t nil)))) ; call paragraph-fill +(defun org-property-previous-allowed-value (&optional previous) + "Switch to the next allowed value for this property." + (interactive) + (org-property-next-allowed-value t)) + +(defun org-property-next-allowed-value (&optional previous) + "Switch to the next allowed value for this property." + (interactive) + (unless (org-at-property-p) + (error "Not at a property")) + (let* ((key (match-string 2)) + (value (match-string 3)) + (allowed (or (org-property-get-allowed-values (point) key) + (and (member value '("[ ]" "[-]" "[X]")) + '("[ ]" "[X]")))) + nval) + (unless allowed + (error "Allowed values for this property have not been defined")) + (if previous (setq allowed (reverse allowed))) + (if (member value allowed) + (setq nval (car (cdr (member value allowed))))) + (setq nval (or nval (car allowed))) + (if (equal nval value) + (error "Only one allowed value for this property")) + (org-at-property-p) + (replace-match (concat " :" key ": " nval)) + (org-indent-line-function) + (beginning-of-line 1) + (skip-chars-forward " \t"))) ;;;; Finish up @@ -23109,3 +23723,4 @@ Still experimental, may disappear in the furture." ;; arch-tag: e77da1a7-acc7-4336-b19e-efa25af3f9fd ;;; org.el ends here + diff --git a/org.pdf b/org.pdf index 02ec72530..0adb7fa70 100644 Binary files a/org.pdf and b/org.pdf differ diff --git a/org.texi b/org.texi index c82df7414..a4a4a6e8f 100644 --- a/org.texi +++ b/org.texi @@ -3,7 +3,7 @@ @setfilename ../info/org @settitle Org Mode Manual -@set VERSION 5.01 +@set VERSION 5.02 @set DATE July 2007 @dircategory Emacs @@ -81,7 +81,7 @@ Software Foundation raise funds for GNU development.'' * Hyperlinks:: Notes in context * TODO items:: Every tree branch can be a TODO item * Tags:: Tagging headlines and matching sets of tags -* Properties:: +* Properties and columns:: * Timestamps:: Assign date and time to items * Agenda views:: Collecting information into views * Embedded LaTeX:: LaTeX fragments and formulas @@ -113,7 +113,8 @@ Document Structure * Archiving:: Move done task trees to a different place * Sparse trees:: Matches embedded in context * Plain lists:: Additional structure within an entry -* Drawers:: +* Drawers:: Tucking stuff away +* orgstruct-mode:: Structure editing outside Org-mode Archiving @@ -181,7 +182,7 @@ Tags * Setting tags:: How to assign tags to a headline * Tag searches:: Searching for combinations of tags -Properties +Properties and Columns * Property syntax:: How properties are spelled out * Special properties:: Access to other Org-mode features @@ -194,6 +195,11 @@ Column View * Defining columns:: The COLUMNS format property * Using column view:: How to create and use column view +Defining Columns + +* Scope of column definitions:: +* Column attributes:: + Timestamps * Time stamps:: Assigning a time to a tree entry @@ -379,7 +385,7 @@ tags etc are created dynamically when you need them. Org-mode keeps simple things simple. When first fired up, it should feel like a straightforward, easy to use outliner. Complexity is not imposed, but a large amount of functionality is available when you need -it. Org-mode can be used on different levels and in different ways, for +it. Org-mode is a toolbox and can be used in different ways, for example as: @example @@ -389,6 +395,7 @@ example as: @r{@bullet{} TODO list editor} @r{@bullet{} full agenda and planner with deadlines and work scheduling} @r{@bullet{} environment to implement David Allen's GTD system} +@r{@bullet{} a basic database application} @r{@bullet{} simple hypertext system, with HTML export} @r{@bullet{} publishing tool to create a set of interlinked webpages} @end example @@ -396,7 +403,9 @@ example as: Org-mode's automatic, context sensitive table editor with spreadsheet capabilities can be integrated into any major mode by activating the minor Orgtbl-mode. Using a translation step, it can be used to maintain -tables in arbitrary file types, for example in LaTeX. +tables in arbitrary file types, for example in LaTeX. The structure +editing and list creation capabilities can be used outside Org-mode with +the minor Orgstruct-mode. @cindex FAQ There is a website for Org-mode which provides links to the newest @@ -468,9 +477,10 @@ make install-info @iftex @b{Important:} @i{If you use copy-and-paste to copy lisp code from the -PDF documentation to your .emacs file, the single quote character comes -out incorrectly and the code will not work. You need to fix the single -quotes by hand, or copy from Info documentation.} +PDF documentation as viewed by Acrobat reader to your .emacs file, the +single quote character comes out incorrectly and the code will not work. +You need to fix the single quotes by hand, or copy from Info +documentation.} @end iftex Add the following lines to your @file{.emacs} file. The last two lines @@ -580,7 +590,8 @@ edit the structure of the document. * Archiving:: Move done task trees to a different place * Sparse trees:: Matches embedded in context * Plain lists:: Additional structure within an entry -* Drawers:: +* Drawers:: Tucking stuff away +* orgstruct-mode:: Structure editing outside Org-mode @end menu @node Outlines, Headlines, Document structure, Document structure @@ -1121,14 +1132,15 @@ bullets (@samp{-}, @samp{+}, @samp{*}, @samp{1.}, @samp{1)}). With prefix arg, select the nth bullet from this list. @end table -@node Drawers, , Plain lists, Document structure +@node Drawers, orgstruct-mode, Plain lists, Document structure @section Drawers @cindex drawers +@cindex visibility cycling, drawers Sometimes you want to keep information associated with an entry, but you -normally don't want to see it, except when explicitly asking for it. -For this, Org-mode has @emph{drawers}. Drawers need to be configured -with the variable @code{org-drawers}, and look like this: +normally don't want to see it. For this, Org-mode has @emph{drawers}. +Drawers need to be configured with the variable @code{org-drawers}, and +look like this: @example ** This is a headline @@ -1143,7 +1155,30 @@ Visibility cycling (@pxref{Visibility cycling}) on the headline will hide and show the entry, but keep the drawer collapsed to a single line. In order to look inside the drawer, you need to move the cursor to the drawer line and press @key{TAB} there. Org-mode uses a drawer for -storing properties (@pxref{Properties}). +storing properties (@pxref{Properties and columns}). + +@node orgstruct-mode, , Drawers, Document structure +@section The Orgstruct minor mode +@cindex orgstruct-mode +@cindex minor mode for structure editing + +If you like the intuitive way the Org-mode structure editing and list +formatting works, you might want to use these commands in other modes +like text-mode or mail-mode as well. The minor mode Orgstruct-mode +makes this possible. You can always toggle the mode with @kbd{M-x +orgstruct-mode}. To turn it on by default, for example in mail mode, +use + +@lisp +(add-hook 'mail-mode-hook 'turn-on-orgstruct) +@end lisp + +When this mode is active and the cursor is on a line that looks to +Org-mode like a headline of the first line of a list item, most +structure editing commands will work, even if the same keys normally +have different functionality in the major mode you are using. If the +cursor is not in one of those special lines, Orgstruct-mode lurks +silently in the shadow. @node Tables, Hyperlinks, Document structure, Top @chapter Tables @@ -1611,15 +1646,15 @@ line like @end example @noindent -Also properties (@pxref{Properties}) can be used as constants in table -formulas: For a property @samp{:XYZ:} use the name @samp{$PROP_XYZ}, and -the property will be searched in the current outline entry and in the -hierarchy above it. If you have the @file{constants.el} package, it -will also be used to resolve constants, including natural constants like -@samp{$h} for Planck's constant, and units like @samp{$km} for -kilometers@footnote{@file{Constant.el} can supply the values of -constants in two different unit systems, @code{SI} and @code{cgs}. -Which one is used depends on the value of the variable +Also properties (@pxref{Properties and columns}) can be used as +constants in table formulas: For a property @samp{:XYZ:} use the name +@samp{$PROP_XYZ}, and the property will be searched in the current +outline entry and in the hierarchy above it. If you have the +@file{constants.el} package, it will also be used to resolve constants, +including natural constants like @samp{$h} for Planck's constant, and +units like @samp{$km} for kilometers@footnote{@file{Constant.el} can +supply the values of constants in two different unit systems, @code{SI} +and @code{cgs}. Which one is used depends on the value of the variable @code{constants-unit-system}. You can use the @code{#+STARTUP} options @code{constSI} and @code{constcgs} to set this value for the current buffer.}. Column names and parameters can be specified in special table @@ -3030,7 +3065,7 @@ back into synch. Or simply toggle any checkbox twice with @kbd{C-c C-c}. @end table -@node Tags, Properties, TODO items, Top +@node Tags, Properties and columns, TODO items, Top @chapter Tags @cindex tags @cindex headline tagging @@ -3286,8 +3321,8 @@ instead of any TAG an expression like @samp{LEVEL=3}. For example, a search @samp{+LEVEL=3+BOSS/-DONE} lists all level three headlines that have the tag BOSS and are @emph{not} marked with the todo keyword DONE. -@node Properties, Timestamps, Tags, Top -@chapter Properties +@node Properties and columns, Timestamps, Tags, Top +@chapter Properties and Columns @cindex properties Properties are a set of key-value pairs associated with an entry. There @@ -3298,7 +3333,8 @@ tags like @code{:release_1:}, @code{:release_2:}, it can be more efficient to use a property @code{RELEASE} with a value @code{1.0} or @code{2.0}. Second, you can use properties to implement (very basic) database capabilities in an Org-mode buffer, for example to create a -list of Music CD's you own. +list of Music CD's you own. You can edit and view properties +conveniently in column view (@pxref{Column view}). @menu * Property syntax:: How properties are spelled out @@ -3308,8 +3344,10 @@ list of Music CD's you own. * Property API:: Properties for Lisp programmers @end menu -@node Property syntax, Special properties, Properties, Properties +@node Property syntax, Special properties, Properties and columns, Properties and columns @section Property Syntax +@cindex property syntax +@cindex drawer, for properties Properties are key-value pairs. They need to be inserted into a special drawer (@pxref{Drawers}) with the name @code{PROPERTIES}. Each property @@ -3324,26 +3362,65 @@ first, and the value after it. Here is an example: :Title: Goldberg Variations :Composer: J.S. Bach :Artist: Glen Gould - :END: + :Publisher: Deutsche Grammphon + :NDisks: 1 + :END: +@end example + +You may define the allowed values for a particular property @samp{XYZ} +by setting a property @samp{XYZ_ALL}. This special property is +@emph{inherited}, so if you set it in a level 1 entry, it will apply to +the entire tree. When allowed values are defined, setting the +corresponding property becomes easier and is less prone to typing +errors. For the example with the CD collection, we can predefine +publishers and the number of disks in a box like this: + +@example +* CD collection + :PROPERTIES: + :NDisks_ALL: 1 2 3 4 + :Publisher_ALL: "Deutsche Grammophon" Phillips EMI + :END: @end example @noindent -The following commands help to insert properties: +The following commands help to work with properties: @table @kbd @kindex M-@key{TAB} @item M-@key{TAB} After an initial colon in a line, complete property keys. All keys used in the current file will be offered as possible completions. +@item M-x org-insert-property-drawer +Insert a property drawer into the current entry. The drawer will be +inserted early in the entry, but after the lines with planning +information like deadlines. +@kindex C-c C-c +@item C-c C-c +With the cursor in a property drawer, this executes property commands. +@item C-c C-c s +Set a property in the current entry. Both the property and the value +can be inserted using completion. +@kindex S-@key{right} +@kindex S-@key{left} +@item S-@key{left}/@key{right} +Switch property at point to the next/previous allowed value. +@item C-c C-c d +Remove a property from the current entry. +@item C-c C-c D +Globally remove a property, from all entries in the current file. @end table - - -@node Special properties, Property searches, Property syntax, Properties +@node Special properties, Property searches, Property syntax, Properties and columns @section Special Properties +@cindex properties, special -Several properties are special, because they can be used to access other -features of Org-mode like the TODO status: +Special properties provide alternative access method to Org-mode +features discussed in the previous chapters, like the TODO state or the +priority of an entry. This interface exists so that you can include +these states into columns view (@pxref{Column view}). The following +property names are special and should not be used as keys in the +properties drawer: @example TODO @r{The TODO keyword of the entry.} @@ -3354,8 +3431,9 @@ DEADLINE @r{The deadline time string, without the angular brackets.} SCHEDULED @r{The scheduling time stamp, without the angular brackets.} @end example -@node Property searches, Column view, Special properties, Properties +@node Property searches, Column view, Special properties, Properties and columns @section Property searches +@cindex properties, searching To create sparse trees and special lists with selection based on properties, the same commands are used as for tag searches (@pxref{Tag @@ -3371,23 +3449,23 @@ also have a priority value @samp{A}, a @samp{:coffee:} property with the value @samp{unlimited}, and a @samp{:with:} property that is matched by the regular expression @samp{Sarah\|Denny}. -@node Column view, Property API, Property searches, Properties +@node Column view, Property API, Property searches, Properties and columns @section Column View -If different items in a document have similar properties, it can be nice -to view and edit those properties in a table-like format, in -@emph{column view}. Org-mode implements columns by overlaying a tabular -structure over the headline of an item. So the column view does not use -a special buffer, it happens in exactly the same buffer where the -outline is, and only temporarily changes the look of this buffer - not -the content. This has the advantage that you can still change the -visibility of the outline tree. For example, you get a compact table by -switching to CONTENTS view, but you can still open, read, and edit the -entry below each headline. Or, you can switch to column view after -executing a sparse tree command and in this way get a table only for the -selected items. Column view also works in agenda buffers (@pxref{Agenda -views}) where queries have collected selected items, possibly from a -number of files. +A great way to view and edit properties in aan outline tree is +@emph{column view}. In column view, each outline item is turned into a +table row. Columns in this table provide access to properties of the +entries. Org-mode implements columns by overlaying a tabular structure +over the headline of each item. While the headlines have been turned +into a table row, you can still change the visibility of the outline +tree. For example, you get a compact table by switching to CONTENTS +view (@kbd{S-@key{TAB} S-@key{TAB}}, or simple @kbd{c} while column view +is active), but you can still open, read, and +edit the entry below each headline. Or, you can switch to column view +after executing a sparse tree command and in this way get a table only +for the selected items. Column view also works in agenda buffers +(@pxref{Agenda views}) where queries have collected selected items, +possibly from a number of files. @menu * Defining columns:: The COLUMNS format property @@ -3396,81 +3474,122 @@ number of files. @node Defining columns, Using column view, Column view, Column view @subsection Defining Columns +@cindex column view, for properties +@cindex properties, column view -Setting up a column view first requires defining the columns. A column -definition is a property itself and looks like this: +Setting up a column view first requires defining the columns. This is +done by defining a column format line. + +@menu +* Scope of column definitions:: Where defined, where valid? +* Column attributes:: Appearance and content of a column +@end menu + +@node Scope of column definitions, Column attributes, Defining columns, Defining columns +@subsubsection Scope of column definitions + +To define a column format for an entire file, use a line like @example -:COLUMNS: %25ITEM %TAGS %PRIORITY %TODO +#+COLUMNS: %25ITEM %TAGS %PRIORITY %TODO @end example -This definition means that column 1 should be the first 25 characters of -the item itself, i.e. of the headline. You probably always should start -the column definition with the ITEM specifier - just select a useful -width for it. The other specifiers create columns for the local tags, -for the priority and for the TODO state. When no width is given after -the @samp{%} character, the column will be exactly as wide as it need to -be in order to fully display all values. - -If a @code{COLUMNS} property is present in an entry, it defines -columns for the entry itself, and for the entire subtree below it. -Since the column definition is part of the hierarchical structure of the -document, you can define columns on level 1 that are general enough for -all sublevels, and more specific columns further down, when you edit a deeper -part of the tree. Here is an example: - +To specify a format that only applies to a specific tree, add a COLUMNS +property to the top node of that tree, for example @example -* People - :PROPERTIES: - :COLUMNS: %25ITEM %Name - :END: -** Family +** Top node for columns view :PROPERTIES: - :COLUMNS: %25ITEM %Name %3Age + :COLUMNS: %25ITEM %TAGS %PRIORITY %TODO :END: -*** Sam - Info about Sam, including a property list with Name and Age. -*** Sarah - Info about Sarah, including a property list with Name and Age. -** Office - :PROPERTIES: - :COLUMNS: %25ITEM %Name %Function %Salary - :END: -*** Boss - Info about the Boss, including a property list with Name, - Function and Salary (if only we knew....). @end example -Now we have defined three different sets of columns. If you switch to -column view in the @emph{Family} section, you will get a different table -than if you do it in the @emph{Office} section. However, if you switch -to column view with the cursor on the @emph{People} section, the table -will cover all entries, but contain only the @emph{Name} column. +If a @code{COLUMNS} property is present in an entry, it defines columns +for the entry itself, and for the entire subtree below it. Since the +column definition is part of the hierarchical structure of the document, +you can define columns on level 1 that are general enough for all +sublevels, and more specific columns further down, when you edit a +deeper part of the tree. -If no COLUMNS property applies to a given location, Org-mode uses a -default format specified in the variable -@code{org-default-columns-format}. This format in particular also -applies when column view is invoked with the cursor before the first -headline. You can set the default format on a per-file basis with a -line (don't forget to press @kbd{C-c C-c} to activate any changes to -this line). +@node Column attributes, , Scope of column definitions, Defining columns +@subsubsection Column attributes +A column definition sets the attributes of a column. The general +definition looks like this: @example -#+COLUMNS: %25ITEM ....." + %[width]property[(title)][@{summary-type@}] @end example +@noindent +Except for the percent sign and the property name, all items are +optional. The individual parts have the following meaning: + +@example +width @r{An integer specifying the width of the column in characters.} + @r{If omitted, the width will be determined automatically.} +property @r{The property that should be edited in this column.} +(title) @r{The header text for the column. If omitted, the} + @r{property name is used.} +@{summary-type@} @r{The summary type. If specified, the column values for} + @r{parent nodes are computed from the children.} + @r{Supported summary types are:} + @{+@} @r{Sum numbers in this column.} + @{:@} @r{Sum times, HH:MM:SS, plain numbers are hours.} + @{X@} @r{Checkbox status, [X] if all children are [X].} +@end example + +@noindent +Here is an example for a complete columns definition, along with allowed +values. + +@example +:COLUMNS: %20ITEM %9Approved(Approved?)@{X@} %Owner %11Status %10Time_Spent@{:@} +:Owner_ALL: Tammy Mark Karl Lisa Don +:Status_ALL: "In progress" "Not started yet" "Finished" "" +:Approved_ALL: "[ ]" "[X]" +@end example + +The first column, @samp{%25ITEM}, means the first 25 characters of the +item itself, i.e. of the headline. You probably always should start the +column definition with the ITEM specifier. The other specifiers create +columns @samp{Owner} with a list of names as allowed values, for +@samp{Status} with four different possible values, and for a checkbox +field @samp{Approved}. When no width is given after the @samp{%} +character, the column will be exactly as wide as it needs to be in order +to fully display all values. The @samp{Approved} column does have a +modified title (@samp{Approved?}, with a question mark). Summaries will +be created for the @samp{Time_Spent} column by adding time duration +expressions like HH:MM, and for the @samp{Approved} column, by providing +an @samp{[X]} status if all children have been checked. + @node Using column view, , Defining columns, Column view @subsection Using Column View @table @kbd +@tsubheading{Turning column view on and off} @kindex C-c C-x C-c @item C-c C-x C-c Create the column view for the local environment. This command searches the hierarchy, up from point, for a @code{COLUMNS} property that defines a format. When one is found, the column view table is established for -the entire subtree. +the entire tree, starting from the entry that contains the @code{COLUMNS} +property. If none is found, the format is taken from the @code{#+COLUMNS} +line or from the variable @code{org-columns-default-format}, and column +view is established for the current entry and its subtree. +@kindex q +@item q +Exit column view. +@tsubheading{Editing values} @item @key{left} @key{right} @key{up} @key{down} Move through the column view from field to field. +@kindex S-@key{left} +@kindex S-@key{right} +@item S-@key{left}/@key{right} +Switch to the next/previous allowed value of the field. For this, you +have to have specified allowed values for a property. +@kindex n +@kindex p +@itemx n / p +Same as @kbd{S-@key{left}/@key{right}} @kindex e @item e Edit the property at point. For the special properties, this will @@ -3481,20 +3600,36 @@ or fast selection interface will pop up. @item v View the full value of this property. This is useful if the width of the column is smaller than that of the value. -@kindex q -@item q -Exit column view. +@kindex a +@item a +Edit the list of allowed values for this property. If the list is found +in the hierarchy, the modified values is stored there. If no list is +found, the new value is stored in the first entry that is part of the +current column view. +@tsubheading{Modifying the table structure} +@kindex < +@kindex > +@item < / > +Make the column narrower/wider by one character. +@kindex S-M-@key{right} +@item S-M-@key{right} +Insert a new column, to the right of the current column. +@kindex S-M-@key{left} +@item S-M-@key{left} +Delete the current column. @end table -@node Property API, , Column view, Properties +@node Property API, , Column view, Properties and columns @section The Property API +@cindex properties, API +@cindex API, for properties There is a full API for accessing and changing properties. This API can be used by Emacs Lisp programs to work with properties and to implement features based on them. For more information see @ref{Using the property API}. -@node Timestamps, Agenda views, Properties, Top +@node Timestamps, Agenda views, Properties and columns, Top @chapter Timestamps @cindex time stamps @cindex date stamps @@ -4604,7 +4739,9 @@ Delete other windows. @kindex m @kindex y @item d w m y -Switch to day/week/month/year view. +Switch to day/week/month/year view. When switching to day or week view, +this setting becomes the default for subseqent agenda commands. Since +month and year views are slow to create, the do not become the default. @c @kindex D @item D @@ -5947,16 +6084,15 @@ skip: @r{turn on/off skipping the text before the first heading} @chapter Publishing @cindex publishing -Org-mode includes@footnote{@file{org-publish.el} is not yet part of -Emacs, so if you are using @file{org.el} as it comes with Emacs, you -need to download this file separately. Also make sure org.el is at -least version 4.27.} a publishing management system -that allows you to configure automatic HTML conversion of -@emph{projects} composed of interlinked org files. This system is -called @emph{org-publish}. You can also configure org-publish to -automatically upload your exported HTML pages and related attachments, -such as images and source code files, to a web server. Org-publish turns -org-mode into a web-site authoring tool. +Org-mode includes@footnote{@file{org-publish.el} is not distributed with +Emacs 21, if you are still using Emacs 21, you need you need to download +this file separately.} a publishing management system that allows you to +configure automatic HTML conversion of @emph{projects} composed of +interlinked org files. This system is called @emph{org-publish}. You +can also configure org-publish to automatically upload your exported +HTML pages and related attachments, such as images and source code +files, to a web server. Org-publish turns org-mode into a web-site +authoring tool. Org-publish has been contributed to Org-mode by David O'Toole. @@ -6118,7 +6254,7 @@ respective variable for details. When a property is given a value in org-publish-project-alist, its setting overrides the value of the corresponding user variable (if any) -during publishing. options set within a file (@pxref{Export +during publishing. Options set within a file (@pxref{Export options}), however, override everything. @node Publishing links, Project page index, Publishing options, Configuration @@ -6445,8 +6581,8 @@ Logging TODO state changes and clock intervals (variable logging @r{record a timestamp when an item is marked DONE} nologging @r{don't record when items are marked DONE} lognotedone @r{record timestamp and a note when DONE} -lognotestate @r{record timestamp, note when TODO state changes} -logrepeat @r{record a not when re-instating a repeating item} +lognotestate @r{record timestamp and a note when TODO state changes} +logrepeat @r{record a note when re-instating a repeating item} nologrepeat @r{do not record when re-instating repeating item} lognoteclock-out @r{record timestamp and a note when clocking out} @end example @@ -6531,6 +6667,9 @@ default location. If the cursor is on a @code{<<>>}, update radio targets and corresponding links in this buffer. @item +If the cursor is in a property line or at the start or end of a property +drawer, offer property commands. +@item If the cursor is in a plain list item with a checkbox, toggle the status of the checkbox. @item @@ -7289,6 +7428,7 @@ MATCH is being ignored." @node Using the property API, , Special agenda views, Extensions and Hacking @section Using the property API @cindex API, for properties +@cindex properties, API Here is a description of the functions that can be used to work with properties. diff --git a/orgcard.pdf b/orgcard.pdf index 94e79232f..57787b80b 100644 Binary files a/orgcard.pdf and b/orgcard.pdf differ diff --git a/orgcard.tex b/orgcard.tex index d9f60f62f..9840a0e78 100644 --- a/orgcard.tex +++ b/orgcard.tex @@ -1,5 +1,5 @@ % Reference Card for Org Mode -\def\orgversionnumber{5.01} +\def\orgversionnumber{5.02} \def\versionyear{2007} % latest update \def\year{2007} % latest copyright year @@ -544,6 +544,24 @@ after ``{\tt :}'', and dictionary words elsewhere. \key{create sparse tree with matching tags}{C-c \\} \key{globally (agenda) match tags at cursor}{C-c C-o} +\section{Properties and Column View} + +\key{special commands in property lines}{C-c C-c} +\key{next/previous allowed value}{S-left/right} +\key{turn on column view}{C-c C-x C-c} + +\key{quit column view}{q} +\key{next/previous allowed value}{S-left/right} +\key{next/previous allowed value}{n / p} +\key{edit value}{e} +\key{edit allowed values list}{a} +\key{show value}{v} +\key{make column wider/narrower}{> / <} +\key{move column left/right}{M-left/right} +\key{add new column}{M-S-right} +\key{Delete current column}{M-S-left} + + \section{Timestamps} \key{prompt for date and insert timestamp}{C-c .} @@ -566,6 +584,8 @@ after ``{\tt :}'', and dictionary words elsewhere. %\key{... forward/backward one month}{M-S-LEFT/RIGT} \key{Toggle custom format display for dates/times}{C-c C-x C-t} +\newcolumn + {\bf Clocking time} \key{start clock on current item}{C-c C-x C-i} @@ -575,12 +595,6 @@ after ``{\tt :}'', and dictionary words elsewhere. \key{remove displayed times}{C-c C-c} \key{insert/update table with clock report}{C-c C-x C-r} -\section{LaTeX and cdlatex-mode} - -\key{preview LaTeX fragment}{C-c C-x C-l} -\key{Expand abbreviation (cdlatex-mode)}{TAB} -\key{Insert/modify math symbol (cdlatex-mode)}{` / '} - \section{Agenda Views} \key{add/move current file to front of agenda}{C-c [} @@ -648,6 +662,7 @@ To set categories, add lines like$^2$: \key{change timestamp to today}{>} \key{insert new entry into diary}{i} +\newcolumn \key{start the clock on current item (clock-in)}{I} \key{stop the clock (clock-out)}{O} \key{cancel current clock}{X} @@ -656,7 +671,6 @@ To set categories, add lines like$^2$: \key{Open link in current line}{C-c C-o} -\newcolumn {\bf Calendar commands} \key{find agenda cursor date in calendar}{c} @@ -678,6 +692,12 @@ Include Emacs diary entries into Org-mode agenda with: (setq org-agenda-include-diary t) \endexample +\section{LaTeX and cdlatex-mode} + +\key{preview LaTeX fragment}{C-c C-x C-l} +\key{Expand abbreviation (cdlatex-mode)}{TAB} +\key{Insert/modify math symbol (cdlatex-mode)}{` / '} + \section{Exporting and Publishing} Exporting creates files with extensions {\it .txt\/} and {\it .html\/} @@ -690,17 +710,17 @@ some other place. \key{insert template of export options}{C-c C-x t} \key{toggle fixed width for entry or region}{C-c :} -{\bf HTML formatting} +%{\bf HTML formatting} -\key{make words {\bf bold}}{*bold*} -\key{make words {\it italic}}{/italic/} -\key{make words \underbar{underlined}}{_underlined_} -\key{sub- and superscripts}{x\^{}3, J_dust} -\key{\TeX{}-like macros}{\\alpha, \\to} -\key{typeset lines in fixed width font}{start with :} -\key{tables are exported as HTML tables}{start with |} -\key{links become HTML links}{http:... etc} -\key{include html tags}{@...@} +%\key{make words {\bf bold}}{*bold*} +%\key{make words {\it italic}}{/italic/} +%\key{make words \underbar{underlined}}{_underlined_} +%\key{sub- and superscripts}{x\^{}3, J_dust} +%\key{\TeX{}-like macros}{\\alpha, \\to} +%\key{typeset lines in fixed width font}{start with :} +%\key{tables are exported as HTML tables}{start with |} +%\key{links become HTML links}{http:... etc} +%\key{include html tags}{@...@} %{\bf Export options} % diff --git a/orgcard_letter.pdf b/orgcard_letter.pdf index 3af5d77e1..863372f58 100644 Binary files a/orgcard_letter.pdf and b/orgcard_letter.pdf differ diff --git a/orgcard_letter.ps b/orgcard_letter.ps index d272b9852..3db3e0ca5 100644 --- a/orgcard_letter.ps +++ b/orgcard_letter.ps @@ -1,7 +1,7 @@ %!PS-Adobe-2.0 %%Creator: dvips(k) 5.92b Copyright 2002 Radical Eye Software %%Title: orgcard_letter.dvi -%%Pages: 2 +%%Pages: 3 %%PageOrder: Ascend %%Orientation: Landscape %%BoundingBox: 0 0 596 842 @@ -11,7 +11,7 @@ %DVIPSCommandLine: dvips -t landscape -o orgcard_letter.ps %+ orgcard_letter.dvi %DVIPSParameters: dpi=600, compressed -%DVIPSSource: TeX output 2007.06.20:0644 +%DVIPSSource: TeX output 2007.07.09:2136 %%BeginProcSet: texc.pro %! /TeXDict 300 dict def TeXDict begin/N{def}def/B{bind def}N/S{exch}N/X{S @@ -353,208 +353,205 @@ B0DAA1BA19D638676E9CF159AC7325EF17B9F74E082BEF75E07BB563C96C0A3E CCBD1F58ABBF1F53AD21E3BFF25EEEB046F66A924E5F431EBD7228050BE2DF43 0B9B538DAAD511EED97630CD9A9C05CC49DC251325A93EA842C6D07B44BE620F 08E66B611F54314B0177E299304F2294F8DEDE9914736944F125A50B5007373E -588AD80D9983CE7824DA30CEE5DC3114D69D7ACEC0758D8201805B82925EF3C2 -C87A1A169C5ADE44B561EC1660E617FB39D1B1547B33C0FEB33C3A1D7340A62A -CD9CEFA49481F19B39A704A53A0B98A11744143CDDA0E668E6325935C6497A9F -AFF471194932AFECBF25B441AD55A43751FBAB76F3E544C4254AEC4BEB5CFE4C -C1318C3A0FAD0E8C1BABEE20B203E1DD9412E66BC55BEBD6FBBEBA84F56604FD -85D50F733D9794611F4137EC10ACB4C4ECA5A81CAACC45213E92ED3C26726BBE -91430E7633A2BDB8EA3D0C55259D7DBE468AC0964A63728C9B8EA4E15CF0EEA3 -2E754B9170EAE6B8818DCCDDAD643B9F6C91C3C5B245CD442358C60AF390DC76 -342E659D4EC45552626F069F346F46B18062CE26D5912336C6B29FCBFA5C3113 -ED86E44B529CD95B7B5B934D899762C4F3457F56ACCC763BCCD5BD08975EB5F1 -C5216DA4CBF3409EC71054B0145183F7DFB31517D199EB16D4C6DB0AF05E5720 -10B06F395BE3C8C59CEEBCEA1E00F9EA3FD880AC197508CEC11E33B6B6EABE3C -0FAEBF246743F62D280875D052656696AA88DABB918F79279A980754F3DCFBEF -7999E7FB7C9E7F88CB15E1596F08E48FA74F1CB613B587BFE72717437E38D08A -C8B160982A6F92CD0BAD7E033766BB1D92F78F22FE5750D002AB2C7A101A57D6 -3E7ABA9BD4B8C0A4F2820123BBCCD520B9608AFD4372366D876F848ED068245B -6BC1DDF4B826E4A9FEC4390CEB2DAAA63D9D013B706059347709F3E996C3682A -F88D827B8B7E1206BF2B2A394AFB00B1207819DAE82D112003911EA8A70DC244 -D7AC4EAA9E8FEB152DBB56A092831B8E149DBBF89E38EE4B39AEC0516C059380 -F7629463356E1A99544E6DBAECDC8AC0A5DCEA38C6E60D06F931A0BCD18F897A -97217E61AA565EB017AD1A04F4BCB9D2773C04A068232F426DA17912BD61463E -E4D6442E5B5C15715DF0664E565A77CE40F05BF942079BF3EA4E62689130D998 -A3A975843EEC1A3E31216023416BA91B313DFCE984BEB2566FFC726BFA66A9A6 -AC34B75B15809A0E00C20FFCD4F44F9DAE54B5FB15ED097F9650CFAE3D403B83 -6B7732AAB14FF363A2A275E081023024B231B05CD6D3903A6E5CF73009401371 -08FF1217ADE5ECD84E418449793992DB9E696BDA6E6487653ED2EF9DB920EFE7 -013CD527528036A6D1A46BD971ABA77F829E50A73ED4869D9C66743E36FDA6B8 -1530EF6A758555C17159F2DDF2BE5D7BBFA339F6EB01FA025C290FD55375EEF4 -B52BE590A0250D624BCD2BF6DD92151E82280C7591845B7E3B793E323263880B -92DFB137CCB8C35E99ED7F24DC559B6CE2F89E428241B07B2109F96473326AC5 -0F011363C363C3A810AB6AB66177A1ECA7B0DA74A6AE052EE1A3093852B1AFB3 -7F9C3BB26BD1F5793A8DF2CF9D0C77A36E062881A0B9A6882C726679344ADE96 -CFF7F908B78C5DCD2348263BD3870BEDCC68AF0812D93C211E765BDBDE6FE729 -AC4336A5E930A2472ABA7E9944FE2B7BB4D71592D5948A60F1165099C71D74F8 -8776461440A5A96C122A4A1AB3D83C2C9BB8F9C4394DA44C2861085FD10F7534 -E4C6BBE52A5EB61F6F971A65BCFE66026153780EA4CC6CB55C9467E65CBFA574 -7B398DBCC1906B5B63B9E2ACF19D4B243DCF078434B5C4FEB51AAF779CF74A4F -0AFEEC9752AA25449E9E63647C7BDCF00AAE3CA0D11174B4728E3493B85C57B8 -4A1B47CB00D4B0000C9430D52551AAE7405C6B166FF32264E6D4B0030EA9E9CA -5DA8B841C21EDC0630EBB09FEF5887408EA20461D8DF408B13C82E2204FF0C7B -D8DD54E0E51F678065F565186D73A9A4727F52C2917E4A5D78F0CE7DA2615A97 -72BCA585B9A5D04186ACB6127F3C94825DAE7FEEE51AC5F11CA9F276950B0CA5 -35613395BD69E960854F4780820CD0DFE2730716C508A84DE2BC651248F8F4C9 -3BE2EB1C6CAB6AD0608D72863F2E48108D08F04360CA9FD2358B8500EBCED465 -07345D9528ADB5D35FE809C6F2A90CF42B48645221BB9A7C3B6D9B48A7B8CC77 -4F9BCB2D84D7B5A446CD889C43E34C80615547185F4EE7A82E071FFE007A1E44 -5D320D79BF93991420C6A7EBA78860004C4BC25C222C49D576BFCC411AEAC5A1 -CFC4A206FF9A004530AE9D78A1C481147C01349241910785BEDB04C5749F52D8 -2B274E1F9A8CF17DE0873DE0144BBD92824CBA8E43DDA4F7F782DDA226A7D701 -C77CC7F6C4F7C2515B27DC0F292042F60251F6170928A7E2260E0B9246AD1752 -BFD79FD49B8089A3310512318EA0259D1AA9458500D33FF404FBDE35540AF343 -161C30BF95232376C46BA8F172426DD8C03D8AD17CB717934DD5F03EE0B87F57 -53AA6B3C9A39964B298C3F2B7048A07EADEA069A73E56B8C7C192018E892713A -D670723B640698679BFA17AF05DAF27F90A4E3263674EA9D7EF3ECC4D4CBF26B -BC7A4C9E83B9430F1AB62537CE204F85B71737D64B7A2F737381FA4A05F346C7 -DDDBF0C6DC583AEC564826172FFD930EFCBB24DB195648C0ACC08A1688196579 -492EA39A4052B18394EF2D1078C5B07D9A772032325B5240FD63182C5AA1AC27 -C754CD344407FC8B3F62900E4773F3EB3544DAA51D31B08EF980C56A2CF0795D -02083B3334D7342B29F54B565822638F3823D748B7BCC0646E81CB2F9E523701 -C01CB8503843934193BAC1B31AE2CCC3D29DE5CA823CAC4535F0745FE8E57B60 -60DFD7C03B4727113F815631465C450CC645B7CB4EA563F86E5FE72ABD194D2C -E8969BE791039469D319AD510ADFCF04CFC542314ABEEC4D6519C337EF9ACB33 -9B0EF919A90D892D4B749B765C2F8992E24F512A0148B564B10D6C3F7F35CECB -0C47CD50B3FF260CBD39D3CDA3E4D63FD031CC3493E0D6A400DC0C7AB67C1B16 -B015BDD89816AD38292EDD99D164A3573389B20E64F80BE129E2ACD484B0D5ED -07FDCA8B9CAF89792E33CDF0F7077A133F9875EC9200E4DDAF61B00B984778EE -55DC6A78C0B0D5EA062D9FA67B93945B81EA5E7A0DB5076D4EAD858B9161273C -71A926091222629F457EFFD9B83828F4FDACB96B94FC5157E75167F6A1104A2F -EBB077CB52814DA1B736AD56B84AF5721B12AF5480B4F0437427647D9C4CABF9 -7457FE35D2B83043A67551334554196C83C272AF1CF8CD2F28DB664446635DAD -0C0438705849DC6E7E0589EDAEB458496BAA844B07E309F615984ED5F81E77C9 -95C68235356F5BD00E3347C7C87653261CE3EDCA886D602DBEA5E171914D09DF -AFFEB6203E50D4F139E7B71C0A66F9CF2316227F990D5852DB53B913CCA47F66 -88D1E25FA51D956E77DE7A4DD56BAF1B606421FE22EE1C85DB8A6E4C13868D67 -3263C1198CB7607B9812BA41C93CF296B6BBD448561B3C6DA7097FA6C8EE03E2 -1C9DAFCE3D45D5B58F461425A90B54B807C75ED162832F7D2EA5CC989FB4E770 -BF55BBB34AD9F3D8522822AB1FDC55A94EB88AF9DF2E18ED3105E89EC3865AB9 -1661769BFBFBB447B3ADC354AA922227EA612E33A491BA78F8DCAAB5A147C9DD -445B911D01998A2EEB11EE52C4597249B2930167CE1CD3CC1AB02AC16A8D97AB -589C9553D39FDC2932B135B6CFB1771AE374E7D5ACABF03721F8D08E1A82A7BC -4B4D5CA40AB911FCB54BE47992A7396DC90E96BD88460899648F61430C1E9D08 -BB5B5F61DBF6BE9A90370EF7BEA8E6B97AB4A30408A26F65EB762A23AA71E179 -82B3D663B5E317BF890E0C2467A28E04F4E05F02F96E7B04C8FC2E2541DB14EA -761512F142894325CFEBD76FFE68B6DA8E69C69D0C148E1D53E2C2E48F0FF25B -3968509889E9154B8A4B84C82469B6B52697D527EB929D0550FCB07805609A38 -F67916CF0F0F1F9CCC80EEB691143B6ECEA6E2C20B1188CDCF93C895D62DCC4E -8AA463895CC2FFB62D8FFDC7B35D1AB91BBA892E1794AF6EFAF6B0511D303BEC -C0B2DB5583F2515E17CA63651C9607C76548EB3AEBDDBC4AEE468086DF121019 -E0ABD0BD76C8EA0FDACB9F8E90BE0A29A046F9C8E317E8AC72B4E4C86C855735 -7E09BDD3B2A55E19E12BEA8C0AD387C0EBBE11174B2977EC864CB495780B2FE8 -B53634257A7182DD2FFE18A3E6C195C0F9C41910BFFF735C2A22C3F43718E3B9 -0F72E0B3ABA006EBA935BE170587ED798C22FD56C5C439CEB38F936C4E09D458 -A42845BAEDA4EDA0826B94D8572E9E4B7295085D43AE13B7AD66C845044B4FF2 -EBF32D729F1884B3FBE46A77BDB9E9E464E8DC2048DFF2250F0B0C189F4A6ECC -7BF4390EC86416A6897C6E2E6AD37113CD09CE2CA5929A8BA809965063A4E930 -C2FD4C96A6F2BEDD58568C207FEAF5BF774869A183E8A35349FEC530DC3B2547 -888AC0975316D82CAEC52572470F40E42E23AB4F7F49FDB34F07D56CB2D38E59 -399D3E8AC61A4FE6184CB73DA9D18654FDA92627B42EA866BF423EEACE3CD1F3 -EAFA5446A4B42AA9F27A8D617703D67C49BD54CE56D81BEA859353859F10C416 -D6D5903D85D3F68F6417D082637A608C58C4478120F9CF2D040E14E9E933D45C -4A5879BD9321EE6BF408F128B1E91927AF55C457EDB4B7476E726590F97F8A47 -E93C40342D67AA8F23E532277337915D9DA2C30E87F351BC804B00BD73A36DE6 -00E9F29177335B144CDF550E30B77732603BFCC48DFB77BA34FE80D9E72A6116 -5B3A23B55ACA17F47AF6C6A0371DA024F1477480F9AA8107BBC9C4C34AEC1DDA -0C748088E0B216D142AE704F9243705870FFE3AEF874EAD2A12EB987A433F890 -3C269CC5D696FBDBAAD75242E9A3BA00E9FBA0E43D525B46727776B7768708DA -0A6CED103E8F07772181DB8D5B505AA4AA4FBED5593455B1D72DED7BD210D9A8 -35CC85ACBAB57EF2EB6EE51D06A62227F75FAF76E417D126FC7FAA3570122E56 -36A7F9EF90CB4294214F6B94F2C03D9C9B71A4540B39361FE7CECA80E32404A6 -163873DA3D90A3CD42EDCAF0E4C16809F2A54EB44EC09A169656E9A12D008ADB -1AD954C3C8028421F7E229DDEF5CA0828D703149B1D35CD4820066437198A919 -DE56212BFDE4835575D7D63D65900ECA38279C4418354D978292C8C63E38AC91 -1B9B20DE9785A207928009DF28B6DFFF437B542F81601235C77C8B80620B530F -A9CC3616C6C993696ACEC6085E0B1FB00DCA11F871A61008D2F0DE8929CF4B68 -E45DB88CD50980AEE1B106D238CCA6715D89A6C306BCB1C4A07915514D1FB461 -34B6A6EDA80BB337C4BAF19F34B8F0917E50D2D0DD2FBB233AB44351657B905D -547CC57414C35DF68A4B7C7542D0B6CD2BBBB7CEA9D604E0787F9E84BC5CC21F -38CD662BEFE5BA4E744A4343AA1AB7F58D246E1DE6302C0AA4475E86F59849CB -B2671A1E51EB834AD93CC97BD5D9959FEFF0AD57F48F9FF8CEE98D39C7F21E92 -B0660D845F5F33A07C626BF00AC5BC286DE62CB3BBB55557A345049B95D26443 -B1E93C5F3D698FB25DD08BBD70C4A78599B7CA43D91E1E875AD84DCD557E3A93 -8A0B20FDD0FE6417CB5466B5BB7004A760A8C534F17265B1F2ECAA7C4D5FB7D6 -E4A4B79DFAFF95B5D302ED1A6A1696AAB186E716942BD21ACF7249E0363E3EDC -83BC97C9C6AA123C30380F90BF0733D27FD52B79FCFC2887099231C3F36D8D19 -43036E0895F5467E0E81CF95FEA75A6E0C249464D002464EC6F4B857D2C86ADA -E7C9D4140010C6ED28201EF6038AB29812063BD4C91AE90E2F50FD970E646231 -2ACD3E7921CAA5A7D00D38853E41912BB86DA088CF87E528603660D06C554CB6 -D8FCCA55202DAF32B03B5979BBA078991EF76FF596207D61536FCA64F4DA9416 -2EB1E19E31702644D66D48DA5F8AE0890E594A12BAFE4B06C61D96609EF633AE -FC3D193BA2A7B9ACBF7A08CEB4671F0B97EF5C4FE0CC3F875C539BB21E50E9BE -235A6E35FD94A478B926541624DD0E0E71C8DC76E57E0A0F3F4820A1BC64DD2E -AFA7FF37936F1490E6C960A5D6CC4E1BD405BA87418B363DEC26FA6840711307 -1586D0FFDEA7ADFAA35BD5A08417D7413B92E17A2A9EAD79ABFC16ED2EDA4D37 -96FDD5274C738C5A7B7F2827EDCF5FE387DD78F623AC678769539E5A4FB38A0E -DEBA6E944937B158FA2A4A18B3ADE5B0C0E187B4164275CC5F96826652980CAC -24B2467494AAF4C3F9E8D68B301F1C81DCA1C7EAA76CBF4B1E9E494C94E201E9 -AF26EB535E8C8EB7ECE3A346B3FE98E6294BDB02055E8AB5AD6FC5C9693A93FF -3C8663FE5EE6322A9EA9E451ED74DAC2DFE87F12866B8BA6B2600A7198E434B9 -9F86E5C79212E98AA8626DC3F66CAE7F9E04E0B652E811475DA86A7A555C61D7 -B5B04DD000A244D65FD4F46B3547993BC9B0ED655AF399312393944E85F08C15 -8D6C39693DCA494EBD31AC0269D7ED8847560672A4CCAA51C5C6CDF926FBCDC8 -F35F0867836D12307BFD7542321AD471BFF587379464B9F495B96D1C67F3DBBF -104D51811B67F5FCFA36A4BC4B4773007864FE3D13C98FC5B928BC281516DB47 -6D95DBB945641126C772B17B00D150348692BE44516DFD8DE4C634594313E57E -7DBB7EB72A5BA03600EA0619AC38EB570BEFCC917CF87E85DBFC929942DCD014 -121B03F4A4CA67FE8E591E0CEE56F78F4E95D5A6946FB29E5C304C846158EC92 -D5D6FA08ABD5CE2057A863A3EEB929C44E86AF87C477D0EB1D77C096BB3A0C8D -1A4F77ECB55AE717DA600FDA586568F15C50DFCA8D814BB814922F7BF9BE94FE -2FDFC71A6B19FA57B67C47189C4FA0BD570B6DB1CD73C46F32E6CFB5299C96F9 -76930CC9FF36DFDC59D6AF3CCA4A696F8DE42D773FD74AEC125A152F3EC1CE76 -C398913A53019D7E3EA4A45E121B74B2D1C6A3C830A1A02F7C9FEC685DF507FC -42D0612B650015078DDFE1CDE0F5F5A1A3314448325DE5ED3D221322AFA64E11 -5A3953094343E8296DA5A750A60F5935DFEDC01E4BCF7E127DDD903D0BE9DBA1 -8D7AD670B95ADE1848308A4B1B7B83E644A9183C2BF1E8790C32005E181FD2F9 -705C1CE35C4B482283E6667C31E88C515E90B45B8BDE2C6ECF13F05031FFA6DA -5567C7AA19E4EAA7A3094C6516916A63E4DB357A0E123D8EFFE29B0D79EFF7E9 -B5F3F340FADD5B669C2F6ECD2D6E16E6BA0EE85D65BAE68E774519B8F7619EF6 -0DF57C420643E166BF13A20C53F9A14A4E6B90806B7BBF56E63C07879D194328 -793ECB6CE7D45C028E7DF6993E54DDBAE1C99EE73504BE5DB19CEE1BDA53DB73 -C35DA8CC9F0EB30152337BC92849D8CFE133CB313DFE56B1848EB0D48A8D9426 -90FFEC0FD29C8B562D6E53881572EC8CA6A05EEB46E231BF4ED92FFC3C97E947 -910999608468A8507E76386D8CA2F3BA3D4372067B09C9C88817F7A9C762F16D -E3F0B28E289B2FC1A4CF45C1D6A40DF6997D8A25484EEB80F29F6E8AD0C74309 -3DECCF2507B45B3270908A008993B82005CC0B33519EA76DB96F1610C9858C80 -CBA7B99C002C466D80257493D5871CEE9FCFCE9CA34ECB2AF4F42491600F5879 -06692C6BCDCF0B14171B5DE62940CADD31A5A13F160A4581AADF661D6F922494 -54AD87868F85B3E7CF4339961050C1AA293A29D992F4239C792A6BE04AF0140A -E8748BE691E8403631D6938FF1AEA30E3FA98F8B23838D91D1DE272A57C42B5A -EC1E2F48FC3A7FA0E11AA87EA2A6F6485E176664A7413E3B16EA6CF2A41B750D -2ADE760FA4A49BB6AFEBFC4405A375AE4972553074F966E9DC96E112B7DE05ED -643FCDF9C806C84FC3E687CE62430E1C1203CFEE4427968286F28FF2BBFF6692 -98E871B4D968FE9AC2BC7E9DB4311ABCA0C089A5B655A0D16D13DE9866D3FD51 -325B6B7C99A15F5520238700F35C9977CCBEBF4DC7E43E104962463686C91AB7 -508A8632D0BD500E7F300EF144A6AC64A3032354121C265D961092C5EA3E4D1A -C9B911EF6AB1E1CB53864C597AB9619CCB7D5A48CFCF3EB90192CB834653E923 -EE5197DC1FA25E7BF7CD1A4BA3AA2856E9AEA3EB9B3757B1B6D82343BE5B15F5 -63145BF22AA4A11C034978BCF934BFB1D4471A2EAAAF978ECF981A390846D80F -997DA7A158063EF0B911F8C7FB071BE712BFC54B03619A3168620152998DD38C -068AC76EE2183E7680F053F69FBB216300B00A59D099C6C9FA1FE5EEE65C8F0C -AF7637B26A264BD866D7CD2F7EB2512288D4493863DEC8F36B4A8FC7149ADC32 -BD560D94B30EF41D7CBFF161078C8479E1BE0564FD4A52864EB749348DC98AE8 -22ED47A7C90032E7545FF68BF1E97DE5015A2A598CA2F331FD0B14146B3532B7 -E8140E47417EDBC7FDD4129C1FF22740CB61BE9F35C7453C446228BB2F1EDF42 -8A9BB92D6C19300F11F3270C4E5294B9724B68ECACF74D9366C77A6F86826FC3 -9B9012511FD8F40D34D249216FC49846431057574608DCFAC4842BD25F416721 -2DEBD6432313E67CF9F3FA24516E2E7E0CDF50D67A51D5C6CBB23038D6F98794 -2E0EF111C98017164E8468CBB3687D0D0EDCFEAA76AD170D73D28E426E5D7EA5 -3E4B6DB267FC740A7D4DA27D6E3E2C2102DEEC489B820C2B40729E195121726C -671F8249782880A4DF4936E74BD85F1A85935B7176FC10407AD06D9EB27EAC72 -69CD8E1871958D0B5DF440E34AAF53ED6E4F3737462A3DC250D54FAFE19BA491 -576A1763FB5B040C13BABD298CE2BFFE2B8F52A348F2C31E83BC61E52969E7F3 -F82C1B1AA1159B16540920F29FF45078070773DE39D84B95810DA09278458F84 -B2677A3BB90E9D37DDE92B4E0420CBB7C4628637408F21F3CA531215A41B8FBB -9B423395B956DA04B3A2822A2051A70B7C2A4A3C40F0118324E111F8574B152E -D6724FEDBFF94B34205B1CDD74DB56135395005848AE0E2666574DF4A46CA63A -A9EE837FC25E672F4376798B49F3D180B3AE3ED8000ABF60CF52BC7D1A4491E6 -AE518B96F44418003C19E2CC113F5DB4272CF490759BA7CA6E6336350CEC024D -E42D9CE26B02578C5715601F517554B50CF5CF016B289378863E3AA9F1984034 -65888D7A1ADB88DE23D57AA8C2175520709C87B96311EA755496BAF83A9974A6 -47F700D835706EB780A7E9E09D457C5911A900F12F36155BB23827FFD82EE7E7 -8663C5A2990A33DE710EFAE9556DECF412739B1765EAE1FD5B816DA155E498EE -F182323F9203C9A8CC2734B6D8A19887 +588AD80D9983CE7824DA30CEE5DC3114D69D7ACEC0758D8201805B82925EF3C1 +3A6757674B84D9B585F981DDFFB42163EADF90346248E014A74E3FB3E6276FC1 +B4289FCDB4FDBE9C70CAF38E410965A3610F649DF8F81C73B87FBE27D44A3CA6 +D7883821CA22795E3EED184F4F59AC687AC06DC4DE7FD098E0EA61C494A5E960 +643D78025B1D18B4B7FBACCE2DEA453E35C08A6AC093F45FA0B1DE132F743CBA +75F2E7BE0311132C0E63C69D5182B98AEFC610F61D1E1EA51120D8A9F5DFFA8C +37C0ECCA2120E1DF7A551343BD7573FA24144A8D59CA684FF9FCC1E023A3401E +9797D658E92CED2255A273E429FAF43B0355E27EC83974BA4675520B2DC70DDA +DF783452C679BB77759479CB02FF3377BCCD8580E3D87D34CD579AA3F89AAB44 +E526EE761B0D371E27B5A02A5C494C5169651FA79795D332045B3E7F2CA100FA +FA8ADA74DCA851DA1BC7531E58EE08FC22F2F35E94D5DA013A4C9669B2825D26 +021982566B4347E518E82602B0CE5CBA1CD38E8B3CEBBFDF9E9811C896313F37 +51D5F7162441E4B2DF18A7A34326114950BE85B3E5AB465D54652575AAC03DF3 +E50E9FE8D184D33534E12AB92DF20BD72DC129A86CCC24981FF82E297D0B0F9E +0B66137443B501B5FA711C7DF380DB1F64404DA241D1EF5F2D012A0293405302 +F828BF879F46962DFAF75F44D4A394DB9D42E4874477097FF6F8DB9BC8712BC8 +661A95A2467073355FE697CBE1D8E298569935E5405C22555C40DB775A808F54 +642939D8E4F76C61B2FE966F4FB55319873127C8EEB05732A78BA65F1A37E6DB +F801CDC3CA9E7618E38FA61A2E4F6953A268D2960270DC53F0D12C6D965627C4 +DD0704BDEA5940ACB9921375C6109A18C638ED7772C71A11ECB1C280157B8C2F +69D3F018631DEC01DCBF3D7E7AFD9B71298603D7B6009918FBAC4D61852ED30D +B89DADDA59B8E8E79F03228E5F170ED45883AD7B0BF5C3B1337B1B57C9BA8B8F +DC87AF79066F0508382487B5E19CD0BFF4D721825E7C294293E63F4137D7EAC9 +6AEE6C70E8BD59E39E7815D3405546D5424CA9F5D3D2A0A5D2FAF90DE4F3B8FF +1C1A21E5D29FEFF6D289927EEBFAFF7FB88A1C957FAD5615296ACF8CE81E3B94 +FF88FD00425D79D14BDF72C0A0D600E7FCA34A6D16510AA51217ADCD0D48E0B9 +4ED7AC3D819B0754409AB3FCCD39EC44DDB4355228120EBE8AD6AE997B80B7F5 +ADCBD81B3863101B0EAA0A5FE45D7EE3DCCA8A0D2E51F626726B14011A3618AC +2D4665047A628AA87BD064A25364397DAA00C2BC2E8AF22D1474879154470887 +3C2A698E3B16CF91845D8C8808BCCC616DF6715267639F915E199D73E3687236 +F02FBDB75F72A44CB6E0D1C4EB34703C9CE80E937B6CD8157F713E95F87A4A8C +32F5A1E46D29D61D26D038AE4801BFAEF10B9D436388BB428C856D4CAD9B7953 +223C7267F897739CCAF7D0354187F13FBEA8077CB331AFDA479573B7AE79E08E +E364C12B9BD283DB5927BE2245BBE492C9A25321A610244B823F69A1FD304AF9 +4A875798FFEAC3DDB65C1CE4FD2F1ABA4CD3FB3E4255B92E084C189FE7E6577E +6146FA949A6468C11519FF700F00680A8E98423B4EE0EC7748488D27DFD9CCC1 +8335BA8C534B1FE086D7D78CFE5FF439A55A1A5FCECA4C4A8B5C83FB23FAB10A +67689913824FEE5FD5F5E2B961257DCF0A81A341A7671D8E11465B3AD2C749A0 +CC609802E2BA88F82D73459DE225C98F3CEEF873BEF7201634EC59382090388A +069651AF9F4E82DB7D51FC547ED1F7629EB25E2BD0BBF6F3F7BA20DC418FB6EC +394C9B7BD16D9C0A3D90FD0F402A633A58B46308E0D8BFBEE373D0CF4A361226 +CEC2D5D111890C197662A44219F6BA6C50F32432106FA066B9FFA56BB86AF1DF +9B368C80927E1AD40B904B83C6708E90066DE7C8484F469AB54B019089E9D503 +6BACA20F75E2E3E40215653B13C1C481E7D637964F23DD80CC3FC117FE500417 +0859F7F221DD0E28448C8BD571B7D1C54FE61551B6EBD0B02AFE1AF99BF08B66 +3402ABA487FFA02C01E7482CBACDF95DE5FFB03314F316D4752FD660DCC36CB0 +3F6DEE92F0D05F0255E1CACD5F5C8D2B0FC065D50B706C468C113C0FCF25ECBF +CE8A73B55D9E3335EDAF948D953F612C2686A4A373BC86D88FFE86F234AC3B65 +EDE93DED8A4F680ADF4E0D8FE8AA3B888ADFC8D824CB0D40F8EF147CAC0B14F8 +69AD1CF9DF87738CC3CBE61FD99927E9BD7D42BEADC4B4A5E2281D7AE1E2619C +F7EB7897370785D301CE4347636D82F088ECA8B2B13F3FDC609862BA5C7362B0 +AE166F89E3FAB751BD7152F98764241D7A12CD6DD4BC15DE8269364A8655E0FD +6F77FAB79B7A0DC971C4E4BFD7412C2A97F8A3A598BC786ED8A7170E00910188 +456BF7D1746385380B4D06284A1454F4A10F0B75787737BFCD30149C2BE9D583 +8286AA25994C9DF5DB5BB03C3FD25CC0FC765F85CD7AF8A9D8C81CA87EDC5201 +F75806003FE978987DFD608B3A01B36BB027D6057087CDC945FFBC2289E07669 +7A7F0563CBC0CEBB7CA73A4FCEBC468BDCB261C24432DD19DEF921613A679A02 +82E075E23BE06A0E30C4BC74189DE27EDB281B0ABCDB726E4BF32F5FAB42FAE5 +7A166BC0D1E643AE6F33EE18E24EAB72B42B1CF577D503A7938421071E697D37 +A93673948C9795F3C9929106F927EB28C82BDD9DEB09D54024B12E3AF9A75C0C +D3F69B93CAB20B063FBF4D693C0C3427C54162377E5F46307E38DBBA9036B397 +FE0F570AE22141BF38D7DBD6DED8724E48F5EEC638F14E392962B90728160F19 +48F4E588759EE10AC465BD92E1514CA68BD9DB0746B0D24150BAE616BEAFC19F +DCADAD4FD4E5E1D93EFC84BDAA9762E8510988EDD82630AF1EF0DCB629D1A827 +7EE6F9E8175C69F17DE580D107C357D2EE9710F81390B6C7BB3966C3D578D2FC +7CBFE61FF03E7CAA5935DF0F35B2D8E3B41BD21742FE0C52AEC9D0530F3CF697 +A93D39D28405C2CFB8062168C2C31C441ADAC6487E35D76FDF15C6ECB990005E +647A62BB7408E20DC090C79CB7A646727CD9BFF1D56CCD7CE368DE5ABA2968DD +C713AFC2EB74EBFC85317F0D56883EE475759BCBBF27CC7F7EAFDB71307EC3BB +D6B5A404B67934A4A2E2F41862F457689E2CB140B573CA838F7C0FB9837FF61E +2BEFE2154908F024B05472EC009FC15088AA0E9B0C91A753278D63287443A3E8 +AADCBE809E825538AC6CB3E8D9D6B00F4798E760E1E88047FB168198CAC99326 +CD2B24698EF707F015DC45532A687E468A0CFD55AB8DA0FB3AE48747BF6AF92C +1473EA8734210DD20344220C578D79AE54DB5DE086104BBCDADF37449289EB7F +9C7097DCB615A751E6B22CD431D0B56A21BB80D772C01EDBF8832D1878AD4CC3 +C190E2DFA88645405C5D20377736A1E6955E746235502052FC36DEDC65B24686 +63E4D8880AA38ECBD7C2C93059E7BCF80666DB7652F664332C8B83CC7206F033 +217A40DE9661EF57B60E7AAB9FDDCAE67A5FA72AE0F99B6520691EB90321C71C +DC681F7725CFC94E413975F0218AC2AB5FA2B89DA2F101261B25650342C6A16E +70D49BD9DCA5C1995A4EB4AB35ED39DF8F4B97F5C39C38C2A024F2AD3685D17A +B7B6094696D35AAE7D602CD376226D1666E5583719A6EC80639E5C9F16A514C3 +2796E873D5C9F6CAE6ED53FF48425AD6E2FA8FAB6A8F86AD74F71A673B1DCE25 +59D12620AEEFFFC3CCF944600C76899E24B7B72D2298CA136BDC8B6FA42B6EF7 +1295775BEE826CDE11592575BF695DD8F74B987C32AADE081004726D019408A5 +B0DFCA0970AF17B468EBA3FE9C88D7B621F406159DBFF37FFEFF954AF0B8AC14 +1AD37B3D4C5C573A1B2B875BEE0A45291991B04902A774D1E0A3AEBA9FF1FD56 +0E455135B725DEA6EFD47C64E4E3391B6A5BB2ED15A5EBBF86CE9D9691D15425 +6B622DAF1BB1C13004E722BCCC0C9408C6F90D7B71452B304341CFDE669B123B +45E1AA74C6DDC1858FCA99EACB882DB4DBD4401E38992A76345EDC40DDC7681D +AFEFF6D985D96B33D08D7CEC5C062EF5DBA2E1A582588DC39322862FFD1DBD04 +B670CE04F8E46AF98A5331F9636846E7A0D4731AAC264C387DAA7D28B2D192C1 +F139E900EE8C7E37ADBDB56926AC4F735D522FDA7410817CEFC95E4E09016894 +9A656DEDDAA646E8F243CEAA5E2B8C9A1B99542E340B1C360E9E36E1815A816B +3A8E2BB23F8491200FE01862E5E914921885873AF5E13859F9467C8B105B7E89 +AF9E57496A55828C9358BDEC4CD5E2DA4B0BA40307CE9A8F96F78EC60C717BC0 +3D25D3CA81A08D24EDAA806213A68FC160682DDDCCE23EC2A711F2BA8BC77DBE +417C6333F8BC329CECA7DDE60FD986E9EF0E53B88ACB9C958EBA3E51A71D9162 +26BA317AFEC14D248AAF077D0136B8600EC97A324DD0DA45E684B4AABB719B2C +9DFEE8064CA8198968C906FE6AAE35EE9443A9C77734339BD84C4768774C1510 +7238BE7019430AFEF2369FDE918323960DAAC20DFC0BA7DBCF88F18D71FBB3BD +6DD72E7C44D3B1AE186DCDC43CB7D22D126EAB56ACE616F655A043DD98A0EFB3 +F2463A2995F1974EEE5550726EEB7B21E9CFEA9CEE45E250791D2F4DF3F61459 +57A8090D593663F76AAE33726F62BB957EE3FAC086F24F5FC5DFA9C32683B8A8 +B3FC54B7C4D0CECAF777FD13D7D4892B27DE3B665CBF7B806AEBE2DCA12B0587 +81C20E2EA0488E5167D8DDAE0A73235D1E4B3ECF337650BA8FD53E6EB57F4C7C +C91852C558FDC1B73910151C6607C12482BDFFB61D6720B65555279C4CD19748 +968D88512B7C50E549E2C1751AC815E437BCCA1CAD78EE8AD0E12032D78AC4AE +C10F73C83AE6660A846B2BE8DF20C7F1A5B263D1EDC5E6F6B3282822CF9995E6 +4A2C9AAECCAE4FF6F00958A1844E1F5E5B22FCE49F638E41654E1856FB6A47B9 +40E4626FBF958C1ED635D816EAF4C8EF403B256AEBF70D0F8818DFDAF96570BE +89D3CBB9A0456AE11553A36E8C2651B03B4C509F753C435B6E87DE45A3E7E66E +11815D33193B08F2B1E877345D035065C0BD8080D8F58230515D4089EB764755 +6E2AE0EE29A039A8712A480AA4F3E6424F8650C96AC187476A9039FC570DDF05 +0859069276F6E94107B7A760C411FD7392CE09872DA4083B363A2B61E2F60959 +3AF8647FDB696C3227D2A467C32B7FDABF8482CC975F8A2989A1CDF9E89C4D89 +6440510648DAA1C7A9496DEBF2134CE51AB95DE45FF09F03C8990D9527FC9BC5 +490BDA25FA316BF4D839BD6F3329AC7DED7BF54753620C454B2350ECACCA49FE +21C0CEFBF9BDDB29628A252FCA59654BA54EEA50ACD97862DB66F8636F5C05A2 +503FF702E88D24ABF9491151AC288279C50E7B6BB9EC669595F05D1C86B428A1 +532B082A915EED557B9AFBC096BEF3893E42DECAA567E1E0039612E52F43C692 +220798B4FE1CAB63C459F209766196A6FF056092F128190E313219A5A7A46BAB +6EA0D6C663F0380F1377A157E50410FA6BCF874EEBDB6E37D596D643459F831A +60AD4E810FC5F108084CA3E4D4EF192BF6CB5C7C49BCECC4429489CBC99F7F4A +19BEC2949063830A4DA2724CED0F13BE0292813E2BC06D3A7FA758B6B0844917 +7E4A48176AFC4EE8A1D4BC2D6E930839BE4E5DE23EA84ACB69FF6DA8749F5900 +B2790C31C622F0FE098F9019E8299A5C2C6D0BF73CD492FFD6D888541451D440 +6E138C2CE94F0D5BF91BDFC01C7232D449D61997D54BE8D07E13A978C0AB32E6 +717139558375C9EE13FC0738344AF2DBDD4E9B2E3E2119CFEE721431D4A44512 +79F8BB4B4B66E07AA42093A6662AAEFCE527A17635C8A5A68B545EBE74C11CCE +DEA8DDAFF16F5130519AFA6A0B69341054818C597EB2D4653A58BF8DB1ED95F9 +7E0C8064FDC9EC4BF146FD949AE065AEFB71B65E97CA682B3BE4BB765BC27A6C +DD09DFE6D1EFAB0CC6B0C03EB9E16438067EA11403D4BBDDF825769F40FB76B2 +60A41193FD59CCB94EF06A78F1BB620FF5122F8433B138F604E4DC71C935788D +CB001CCF52A8C52C0F9267CD7A0B5BC7F2FB1B6F25D71E6EBD95F10FB9B287ED +AA074CF7073D025992EDF6008E494566DEA1832B81427309EE68FB1E2E19EB7C +6BE55B83A1EEFBCB81EBBE30FF843F97408A39A4AC5218E932CCEE6438C75D0F +73A97F533A303AAA5232B8FFA0C315BE68E2FDE63D7D5D6D6501FA735257F03D +924A74E4ECD7411F6E07D6DFBFD65B74307C9959A49E1A900395896893247DA3 +01353AA427222F9D46C4C1019C077EC76B84EF818D1CEA50619E32AFF3E3D788 +E5E728A4CB7F751F3768B576DA2DA89354728B21235C8D9DAD6B7ACAC935920A +65D984748308FCC86E88B3ACE8A68AA425F27F401F783BADD51E52DE870DF4CB +A7B5957B2E7F92B14083179631C2AA8830CCDF0D4F568AE9D4E963D613FAD0B5 +775C1762029D0ADE5BF299F20B62C87F50A6E6F45A5D01D06F50724065EABB0E +12C672EF09F1DDE7BABB499E2EEA1B8F5973C40D28207613D978A9933175EE02 +A4675E8CA987F2298282E00EABBA478BCFD995360603681CB10F6F255A9C04D0 +30D7102F3116A49574F783DDF9EBECE90FA6E57A0B5A5D1A9DB3C59B6E2664C2 +D7C0DCF752EA5B29306B6C74AABBCF355B8D5E3885203719BA04A2EAD56BC015 +3B49943982BECA51E72D67C4E969E81229F314EE7EB205683B99CCD42DDFC613 +E93B8BA59C6744B17AA5B88AF9EFF23BA4C29A981EC7CAEE1E28E5810A2FC70A +FE652F4E35856F0EB5C6B1E7C9BEF33CE8D4327BC41C142FE557294E8C774244 +4A6C941C0DD44997D9F254C5CA667EC0CEBB9CA6989958871A95E95D0E089727 +C91340DA96B5664CF240FB15928DFCEBB638A5DAE67D7CE54813625FD3C9E4F7 +093947087587BDE7D112BB604DC290A12A1D2FBB621A8BAACA89F1509486D83F +D4648D137F408AAD6C204AD4B406E643318C5BD248469451700B170314A14FF2 +C342BD828D037C999F04FC460CF5C74E7CA93F4A62DC725CFE4B76CCB0DC109B +6BDEF0C89C837735C55E1EE6277A9EB1BBC9AF632A6585E70ECAC8ED48E0586D +C313D4A1606E3338479D76FB5A2EA6B6165712B9B3936702331BF457D57EE059 +A708261558BCE41006A4D388DD874E39AEF5E1035AD5A09400D0B7E79A811D36 +67960D60D8BBB58CAF967732F67AFA0490CC420A90E7F9CBECE4B3723D029ABA +47C8C3851DB344433A99501C42C5A21DBFBC261C9BADD20CE303115CBA5FD4F7 +F0F21097BA98F6A793BD4FE4022F7E1E46EF0CED9EF2F8BDC189E99D851FCC09 +385F1573448C7E4B28777627DAB9B98803AAB48C9D5CEC96F4420FC8E8621081 +E4A5D7D8851C24ACF7F878F927F27BC1600E87231DF18A8441C721171F2FE2AF +2B5F80E86628F1ABD2985B42BBE7EC7BD1B0638146590D977D60404FEF4044F9 +3ADFDFDAB1B9060C9BCCF308AEC80B90BEAE9921443902AFF362D701C4D53695 +E069FD4310DA5B1F8F363DA342CB92380810C43B78A78DC057DF41CC27A4AB80 +7F8C41844F678E2811922FDC14DE87809688206E522B14F5AF2C633504EC2ACC +8DBC7C04913BF847F6320153C14A0B1799A2EB59B21114DE66A533FE909C509B +2EDBE1AE3B271FF8A3E5AC6B57BB5BB4B584AC3D9FF38A03195D94A2E134B2D6 +DDA3A1CB61A9DEC773BEA4B77C664F182FE8B87DD602ACB0768B8C927B15F95D +972F732C9E7E32BC376E9CDA2878793A33960E552245F3F61A519198F0B51C55 +C172E27833EEB183885E6F2DC31BC70E59C48AA4D9CF096C842334AE9618FB1A +5A123E25211395FB73E880EFC4FBA99A403CF50F83DBFD53E1FDBA6435E33AA5 +850EE8A8B0B9F62F5D5983E27AE87A55295277EA725FE4C55F57D9A01915FFB6 +39D0421448868C23F068030F76A3884B5D5B2323EBA8C1E42AE41947870FBBA3 +BDCCE74F5B64BB8C4E22913930525C15241E8B33D2F173646D8E6BC086D92345 +1A9793B7FD483F0805900AA2E5FE7E86F93EC5573E70B4A48E2F750BEA6711BD +D508577ABF0FC189915E35B0158E6F7B160183B7988A882F9F0E815478D7CBB0 +F76E553CE5028203C9597CF4985A857E680B607800C7EB66313581921DC138F9 +8C1B0C066F91B80AD2604BF826C5F1E807B267DB59138C723DE00A22C049A73D +25ED24B00975ACFB4A974CF199C0A4D1280CFB932C97F9C397607AEAB52A362C +2AAC84C4EBD3448DB6663807A75F7FA23D8B6775E4F70F77D0BF5D79A068E4E9 +32B2A8530341DFB049D362EAE8841AEE8B09C4A0EC23DC87EA197124A762D93A +C73E6FC322DEFE3D9D67815992C4430B705D965CC1A5B5BB655D886ECBF38AE3 +3F0164D3B4EF76A2F870332D0A28A7A306143ADF11764B8AB8F1E689468DB104 +7AE5AE69BFE6BB7E9AA3A568538D8A65381DDF0A81DC441516A86CB60DD5FDF7 +4EE88E6779A7E8A5D5859E4E6BC4B648D452E0DB567733A0AA028EF7B45C16F5 +2BC9108CA2280D4C0B1DFFC9D6E8C2D2D08B0834415D030373B534EE1DA935BC +D2C734FB98FE3D5533650044E68DA5EC435D893552451F9944D76470A30DF30A +4C2062FE526056CD020B7EBCFAA31E975AE2B88D612BFCD499A4F31407D52452 +9C1CA2A5A83F84FDAE811B59B6CB5B8DFA3F6C3FE5FF45CF987FBB259C03C564 +B57FC3265333174AC4E45F67FB1528242B502146139AB3EF8FA2B3CCABDBF8CE +1964AE334B685EF644AE4B11B49C3F0ED04C5698B0E4003BF944342ED9DD80A5 +CCC4D492BEE4EABB35D6C63E0AC78DB52C548EB090E85D7EA23D130A0CC12207 +2B7766F96E8E656ED0F804F07DC44958EC925CE2321E4AFAAEEA1747547F13E4 +DD087B8D94E13F8212F08D8D008B8AF4F89611061402C6684BF92CD8DF1FA955 +C5049923DE5352353F70A98FA04AC7582FE0BFE8A26EBB24C16156C028B16CD5 +EEC0748AD48A88575BB1CBED43D893AE58EC93C930A1EB75ECA8985FA8421629 +EF3C9C1980C459E9C9 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 @@ -679,124 +676,120 @@ E1FD2A17AEEBF4974052D06734A409E26C457C06700C55896C90BB33E044A737 BB33455799E8120D2A4862424AA4A382972E2845E042506FC8F6E201D11DD0F2 09FAD8DC29C3E12B66293ACBFB13FA0F26238981F2CD52B47A8CDE6DF5CDFAAF 3113E1A6366B806EABA9C34E5D41167CD10D7B639021FB4CFDAE28CE72A93F3C -E8929A4813956AAB24BE7C20FCF9196E8E2F30816FE23F5AA6291AA1AB9F6814 -7B02C4A5343A2AC1A053CEBB1AE72B26E1B7EEC5C22D133330E995836CEAFD74 -A5BE7778239FF06F958027144B1E2C9A6BEB3AE95F785712A02746B5208B50AA -8B62DC4D29B72933AF97C0B497E6DD9FCCCA63667E50D5E293091448CB640E64 -4EF87FF0ED9C04C788DCCCAF14B84E83DB7BEE52C83ECA7D446EAF860D621F92 -012517DB14168E852CA38929E5DEE2B47E7E0779324BFED96919729D13F6E3E0 -8DB8F57D9FC28CA4E7F4ABE4EEB9021AD7BD8E811A923B63D999F4F5182F85C7 -D25710DEA490E8142EE4E245630F3B267C6D781BD95CF7A0FCDEA8B8F4CE7368 -8AC183A4CF8D0B369D1CBCDA0F36DFBEDA3C497DF20DBFBD2AD1DBE1FE0D7935 -C65E960F1FEF1B532F8983ED6C0CCA807505020C7F7863CCBC8FE97E2E440715 -06C323FFE65D889428E6DB0FFD2C0C2C4EC144AA8529211CEECA5AD4C978716C -02B71E9C6C9E68775A97720E52729C6828A3A5C2587BF237005B8CA7400A7A6C -9248C55E40572A32A029FD9764629BF8B56762639357F8A46084295417ED32BF -5F6CB1C3E480428F71603806387C03FADF7D91E290E013C861382AFA3A5EBF76 -7759FC1B1A90B1271A7F1D74C15CD41790EC0560A0F3853E1EAF2BCEF24A08F2 -87ECE614A48C71A6446D98FDE234BB247935C9FE6AE56D7C0482B46C5F08396F -2B14FD476AF6F959EA13AA7AA774F3AD74C8F62F3BA75E857602DF7768583046 -5862B17A9BB73015026C45A838A3BFA4132991BEC3F01D6A59C8B0605D73EDA3 -758D8FB661A18B89C50B5BF09278AC691AE0F3426D5B69C2A9EB5D23433029AF -BF92C34EBB1C90040AE8C48284C4038572AC97CE72054355839D4AB5736BB442 -7C7312AFDC7453C5428F2AA499A5A4F2C33F1C51372156439C388B67F45C853B -F72510E2BF414E3EE188ADC0B9AB0A840B6EA6A3A338FC25469D84F6E6394C19 -E61DDF07A06D0A7514B8BC7936CFD4804B625001975F551162FC607BC48F7FE3 -38814A1657BF1DBC5BB8DD5C6E34A95BF8D8C8C165FA576A7050DB62C3AF2CB0 -61EB816B342784552B7D01F0D00C5F363984B64FA2C07C8759AD1D2D724CB926 -85570EC731B230664C67F1C9608635A71AB32059399ECD0221C34C3E4841CBAA -396F852BA296505EC2FF53D3ADCE63EE5A731F3F392FF0C343E32043A621389A -C1F53C7AE67BA512A593BE88495CD825AFE45547FBBCD188B2C952958B3EE486 -D2727BEB8E5CF02CB99858A3B8B3A1AD811720B009EED33B1289137A2A46F2C7 -93D244DEC126DEF24BA3FF7A728C63D27990BC26B3F2CE0C3C77EDD712946F4D -A7A6CF25DEBD1FDA41351151E0451FEA15609FD1F3BD8C1FBD39D27DB1E6A831 -8C45B60233E83903EC2EB478E6A25E367F46393820BB0486A359D0E4373EAB61 -53FB1F0B3731E62CC51AD82E5C3DE9654CE39D9CB3B587FB8A12181D68B7D0FD -5D00011B6DAF974678641536389D4AF4AD8445746E0B1342E5AFC011CE1CA819 -3A19540B4744EE54C52F6837FC11E1DD6C446E08A135BA3BBD831B95F937E748 -4C1409B70DFEA0E4BFBB50DD32FEE036A9B31EC7E2A771825889B40CE4E56E5F -67EB747C0F23D54B9459DA8CE406E81A1E244A24A3387DBDBE55CCAD4EB25492 -18D328157DA081B932DB336B1091DF1C31D125962344B0010966DBFB32CF5EAD -B544B178A1A3D81389BDE406C3C741CD341BCE5C8DA39334F47927BA22D02651 -793C083FB75F50D7B4EB6D3352C86EFF5CB999013C37F7D47999793FD4359B02 -00985704843A05916635D02B1CA3402DC4F66A07072C9B40907AC11941A39D97 -70C612EEA99739A1DAA5469795E98CF151E85748785BD4144C6819AB998450F8 -0AE35494CDB5AEB07D03304113596A3B8DFD475AE3521DEE4F0F18C8628EAA49 -2C4FE3C611B5A6E6DD5E5608623BD42667B532854749B9776F0EA73B0D141642 -5B0C09A342CA1AF793ABB295E9A87889E5DEA2879872D50F1F4428E5EBCCCB8E -4CF112E47052C2B2A5935553DACC607BC14550E51066BF8EBAD36F7BB07B7EB7 -54A13A0B042C9F7DC4F27DD5790B1B01C11893478E88F320EDAE39028893D3E5 -E7A4EEC3F5804322F2FE6EF57A11FB7045923EAD73475A0F47270CBB24F2381F -CCC2110119DA132D96147798DCC48AF1A97E2C9759BB873E9C4F07C3BC5039D2 -D6CC3CA66F404C1BB51C135259FF10606254ED1CB6E15678C4BC96339DAEBB02 -0DE5CC2E5183DC6F85DE498071D4B82C32EC39E9F35837185A29D957ED17CEE0 -476103D549F941D46695159964C549E7F4E462FC73BA257290F832BB56FB1447 -C8CFEF46F3F5119D651E653F1D28A61BE29F55FF3D69978F1F371B0E6780EB8E -68DCAD5F334F02E2F762014F8009717FD43005D8EBCE6772107D7857F1738D89 -20B3D6EB00F307E68D01AE581B3B9B986A7BC87FB139DC75B400F113C3058963 -1B4BC79E433E4F01803BB1FE5D3962EC06C3BE1A6642E93E807D0FE69C540394 -D0A05F530D18D0657B7EF4FD17E2318CC0427F57EC144F68ED5A463212924E6A -75F724AC5E75E29D6E968045190DE0D319FB90AF2DBA1C8080E9E8949E685B02 -A3DC3E976A5BF87673C1BB8E950B6DAD0AB29708E112A5379AB8402FA23DE2E1 -8ECF3677C4F4C545037384B307DF8DD9D5139F6D3B64286E0D580F99F7014162 -B940AA8C2C0088556B4536BC7D27C09622026A378D900445BE03EB5AE304308B -00B50701D251D7637F6C042492D49065B81238C35C2134E8E864309598E31F47 -D1643768CC5CA78021E3693611BB1830E9D7EC1B789CE659F0939CC05319DBFE -6CA9B7C8423C3CB2F46194B85EAB033EAEE6B182BF12FB75D6DF10ACA78C455C -33699225E26E47BBA46C24C82894A423F7FC260EDEF94ED3EE7ED5183815D05E -3B3DE834799BF748DEFAC6DEBB07AEF8F8A7D48B78EF5E474D2048E71AA15DF9 -8F6BEB2CF122D3EED0276DF25CB239662636307AF093E32197DD858DDBB9D92C -8DD402DD14FB49B9BD1EF18765115963F7B80BC93B4DB3A3359C1BAF9AAF2775 -EF7101F7822B6085C70B661DBC0B2F6CF242185874D0DF6FB8368B06E5C31945 -4CDB643712C9A4E26CEDEF4EAE23C12EEF7A68F30C16A4D64E538994B7E0C1CB -9406C3C2CD7E0D803F73CBBF11C8EBF855930FFF03BE8EDD151356C0E2F051AC -9F0ED570C0DCD5F791A9980394C299ABBE5A6698E14110B65BD50848AC867F4B -88A47B8275042FB99C17C23E71A89119B381289B2B752DF421DC2DD57A7DCA93 -E188145CA9CE49B3A041553207D9C74B924D17DB089AF5CD271C12A7623F1FF7 -328430DB3647B2814ADA1775FD3BBFC7536E64EC0FD95A406E63A266E918030B -4C24A9E738A161D5C942EE1A1DD980DD5240B7F01E2A3DD673F46811DD5A0727 -27489BA74A9ED0AD48F18FFE2DA578874EDACA67E00EF79B0EF5BB4CEFFDA82B -FCA60CFBD29A29750AAE1214AAB73A63CDA03A9BAFB5DF31CDD73751A6F0769C -864FA5E23C1B9B9F6DCE4AEF94C13F25D35609143EEF7548F7F7853DCB050E5E -A198D7B47AD09D302F31C328B24A4582B8C914F00B817FECA4A79BAF11AF42B7 -0AD43C61AD72C9C5E03DAB9F85E38C489EEA70C56CF97B2EE720718F04089271 -C19297B7E5FA4F26F1C17CFD98FA0862420F63DFB5F0866A33363E459526B1D6 -6B31ACCA2785E1AC22F99FA38842339964A71A54BED1849894771AA91009E407 -70A2311E4A2597F67E5B2CAAF573C8553FB79F11792CD9907C8DAF72CAF51EAE -A6729644DD7B5C77BD0E5857F685739CD5DD6BE2E1F07A1CE677818233DBEA71 -F9DAD2908842FE4ABDBD46146D676513DA43D403F2586D64BED197491EA4E5FE -8329369E74EC754AAD8CD5AE6095CD182BF57CB4574CDB3BBF204AB78617E347 -738CE6D6C0F886D22BE3FB6295E838FAFDFF8CB9A04821500D47A212481CCF76 -8C94D344730842882E4F7DA1E10315F79F518F566102DF01EB0D508D75AE5A90 -35C3D7527C3E6472A0C63B9F018476B5F99DA762A76FD12C95E3542249485B6D -880E722BD0B03D86FB7A2387B98616857346E1D8CE107BE8A9094D628AB49A03 -B665D1E42A17128ADA2450CD7250682CC534987D61822FF1C61F3BC31A7EF06E -0119C59087B4F3B0532F6AEBBCC9A61BF4319C83CD8B21B4749CFBD8649C6FBD -A8B50468069EDF66F08C7330ABC9E169F9975EDFC085AB43F629EF33D7BD08C2 -8722B13054A3A097DB4333E2AA8D2E6E8316B8C97A4060833D1510CC56199C04 -22F5040F4FE7016C3F0957C2D38C3F42ECAAD0083F2AD6D974E3CBBFCDD611B9 -F258C599FCECBDE754196A924C1E8EE5720FFB277E41B118E54628A4930042CF -C613D6CFACFAAB2932D4D57E1117A87D978493F5BE5FEA3DF1C3EFAA0C62D55F -8B024B4AF815C9DB1F3EEC761EA2CF2820936189DB737BD114FA5A42B2DF2F27 -C8007149B5CD2DC57E277991431E342A6393FD12A568ED9F5314A2E54BB842D8 -1578A969A5FC9DF1A37E91A9070A9040085007FA9CA03BA64541C98E23546F89 -41D143B233C031214D563A6AB66EBC47A478C7231F90EBBB6CDCB416E555F8BA -E9B26849E243A927A8B6FC5C8B73F454A2A748EC35DDCD94CC1153A3397613C3 -BD6225FE3ED6B2D9F5FE63A679C893DF6EF73B181860C4F982BC58CCF4777471 -74958E38E24306D34351B38716D58F6E95ED04FE33EF5DE96EB9AF4F9A48F2F1 -BAE24B5A4E6C3418A37C5CA7E7105C3D5EE8D1387AF5881ED153A98D777B2611 -E4D6683369DEC0BAF6F531D8611A59D837E623421E3050EDC2BCDC9DF45774C1 -FF126DEE97E19E8FC4AED2B49473819F5A154CE41B9DD7A0429E0986997265F2 -E81F5D9E2E1D897FA4B3EF52AF189A8C444B42F4CDD05F46813369F87EE79979 -662158369C684E487B9F4020A721B7A30DEA4B996832944B8B376ED09ED08C30 -397D7413130C74F9B22C91B1C546784BF10627FB2F4958AFF5F7D106F207F5AF -A16E2C3A1ABE76745AA7EF8A0C5ADF1360A50314EF0CBAB5101E9E93D858B137 -74094A822D4D94DBC87BD4B2DDB2306E3FD1066D81256A7EBE43F57D9FA47A12 -762DD5A7F9701DC72EBD812BF407EBCF1D2FB594DFEC249AEC52C7E178136061 -CBC17E79B6D6E5FCA8303D14308A6E3F93DB977700838DA63DC52A67AA0A5C30 -1C03C758851489E6DF3DFAA0F51EE95165C1F6390FD0542D1243478C97F5DC1A -CDD6F3956F42368112A400794B6BE89AA57D8B0878B70110D9999C723DFEFA09 -9DE21120CFC2CB61DD3C03FF94C67BA963A324777CD1ACCC87E138 +E8929A4BB6D48613A88F926E0EB1BE5F6E29CA5350840AACE8FA21D1F22EA753 +C0CEF5747A16A34AB3617FEE185439F5AB8E28956B35FAA55EB1713E1E471BD5 +B39C30E01D1109E546EF0190AC00F2AADDBF065F4EB1686C442C525ADC63135E +11DE5FB1CA54E82B0F7937E0697FFF3073CDD3525E465419A22A20364327085D +4419359D12A7C2884E252EF32E464ACF779BA8B870612845438275A337F2386E +715DD24C5FFA0894060584C4C5DBDDE270493B879D45E5BB370C24FB8D51A060 +3538E1FA63C155350C537FE16ADD55CDB2D99630D1CCAA232572BBE6593CA20B +FDC4554A2B3D0E654FB7AEDC1AEB3DFD302B0EB2B5202C89E95E8FB2DA5F147C +1FB09363AC43DC9E10879D4CC2B1C800DE2EE1D7B3D684582FCDA3644E633991 +C0A2D914EE57E453470CD887660B932ECBA4168D649664E92BD38A73A7E9BC64 +4E100FDBDA5970C3B65E714FE34575E03C4C93AA252A3EB11BA2C9F9C69C3C02 +89E3DD93CD877B89FD9DF13B278209FC20F9C89089DCA0A23D5446C91112C2C4 +76B7AF12E82A612B4D771EF210EC5D6A47C4C4BECD4A34E90550365A360A7DB8 +EAF779784EF347431FAA40D2375175F84DB6EE15C3AF22E11DCA073D2AD59BEE +8A3A354AE05D6BFD3BDCE25617091EF56F93E3D98463B8F3F04E6BE5F8BA750A +437692B728C9D49632B2A6319CF67B509EC178E2376E244AA12EF2D692265A80 +E620136BEB6E17FEB07F9C350047480BB565EFDCF73D7426439B31D9923A84D6 +0403AC5E1CED9C92585D3203D1A5FFD9F38D91C8AAEFF5462219F1F7F12DDDFA +7286E1E2F7F8B4FC67FAA9658D6B88C29081C937145AFF90E435E9F83A58FF52 +E84056E3C439DCEF4984EB03B31A6988B53F252636A93039A56A7D93DC20C5E6 +1F71F8F54D86CD17A1F8C91CD61CE746D40C4461A25F41713012C8141D86D5ED +D5986DF2B5A76BDF4864AAF5C6509ED0FA4246009E51F848111654041EFF5681 +7CFD6E8036CF9A6721A94401DBF13ECB997BDA49472DE4E5F2FAEB6B5CE9B958 +CD895A99E2D35A08CF5192D5E3E73882C0D3ACF53A0CC5537F05AE0515BE0CD7 +04637885AA543FABA693EB40096F5C6FB48265DA24A825D03A86479713466300 +4AB2F82E799ED5A8A7DCC79A443C3EDB51336B4EB12D6C93352E155D9AE5304E +67C545225C82FBF9944BBCE8D157A14953414FA6255A8861249C6F0AECE7DE4E +6606AD5BEECFC40F10AAE4FA33284EEF9DEDD5C9C88459DAB1332A2685F34808 +A9D651CBA8B38CF75EFD7A8EC090234F883A06DD324BE86994EE4724CA5BB895 +B53AF2A40C05B532C0216FC1B96C6DF3BB11DC7D0BEEB331454DE42C40C95BF7 +E2E10515643FCD954D9FAFA16E6583995851A2CDACF153453ACDCAE17BB5D581 +D42BE942A55A21D2C3DC9B4A3D4918F9B22573092DABFC9FDFD9DCBB5DC9AF4E +B0895B1FF5E702A6110218567CF8DF80F41471E153D6A58D80D441650DBE55DD +9E2F7590107446FB31F1ABDB96F37AA5A1C065F224470ABDD7411998220BB2C2 +8B487639135228186BB197DA27707E0770A805A97EDF21CDBDA61283054BF74A +FC395B1E123507112AE6D41069E9D93F7981C9E31C3B5F97B1B27C4AEADB471E +3DC26B9ED1382474DA3A85D53E96628D02AF5E76B62F51138CDBBC4B521899E0 +B7DAD471E16EF3F48470BD4ED09A72A8570C8AD458F7F763073217387C29D6DF +3A47D1E7FFA47FFEE33ED652583B7D1CC405691C3579AA51A186B5D403A09693 +8930D1FE9A3A43CDD022D497E9A1091B319A63849724A7415CC72788A1088B7F +1CA0CDC8E3D04C119D7F686FC0587816B7683FD920FDBFFFDA962A357E0DF15C +9788026F301AB171F97DCC3B306CCE60C35DA3F5021F53E76878D03163634EB1 +83B09C1004242E9A3B0F06E5FC6F58F6DD7C5F5D79B61488F7F9FF87F7DA2B5D +72440636828646288AC68C743358CDFC57157441B835949C8CF1B49B4084D73B +408981593508E0A12387D8F688229509673574EE194F658156862F5EE2656298 +796A6180B3BF16B7B9472D295D9AE98CED9546BE9C6A9901ED784980317A2314 +9A3DD2606A12136D919D4CEDA53D392CF86758F9697B56195281CEB99708575F +C3E2DCB354334F980CAC1F65BCCFF22817512EBA01C254C62F319DABF2E276C4 +6CB14BCD9DBB3414099E847FEC5204EB90454A7DBC16AB3231CF46DB9EA6776B +B887BA3BD2752C9A37C9879F46D780F4E601C55D8AD6E1B1A03A6273DA118978 +1651F62BC4155F6B20A203688AE6E9D474A9E16A8DA41B7BEDF0E74FE6C06560 +C1FCDAE5B1BC44B5D8238E9013E39B4469DA265A5DC5E1102541F70D22CA2D57 +FF8AC5365D7410B265DBFEA02E05780667FF33B696FA9DE116647B953D6A0308 +9DCE391EB6DFC7BEFA121943BF7336826FBACB77BA6F363D3DD05106C9012806 +ACDB7354B2E5AB05D1138CEA7A8C5FDB5B587187E134A6CDA1289E4A0FCEE7D5 +ED47DB11B0FFF2B06CD4F14574C17F652934763BB162355C1E48678AD5190E6D +9C84F5838CDC330E39364A657E13C2650D855E89223E0D0DAD363E97AB2F7455 +FF172E56D7B4B486EA075179CCE4BE2E581389F8C783ABE0020DBA511A85606C +7AC6C7E5CB2D4722A2841B87508BA65E6D307C3EE4AC1CEDD9E9C90F73DC9B58 +0369696D0546B57339D8B3D241EC4A311A598D9D1748365BC78938929F0E44D3 +184D46A55E14B0C8CA23B8AAC54BC40029674C1F949A5D7A461184E8E4820D99 +78BD0676489099DC4CEA0FD06F136839C1E3DE4C4CC0B3A5C558DD9BF23704C3 +D73F895F16B73D2BFDDEC4A9B504C5A354C12700EC7AF63964C1DBF55C9AC7B6 +52E9AAA98EEDEBAAB0AFB6F7EB0FFE11F9AE464A5B78E485592AF358BE685655 +3716A1ABF150877EF11192B422225AD5C9A598393E404C591E291B86C2C21C06 +37F6AE0F6B62672BFFF21264D34B01100C941750B54A178614B679A15152B599 +C59AA75C23E9546108C633B094778A02F404DF9E148A66D092A31B6017E9E6D4 +0FEDBFCF5C48E842E9AE6915163A5B9B64EA23743F17AEE0799D6C1790DEC74C +75B242F477A4ABCD4AF0A2AA31E1977A5B05D1C86E76448D2C1624C46C6801C6 +C70AFC5EFE8963378425A9AD1EF307906FD4CB4D6DB36E58AC3B669DA95BD03B +E4A17D9767EB4904E587F8D1EF2CDA3CEB1634689A889DBB9518AD230E24C575 +2DD4EDD118DFB723A746C410DE879EF77483F1452101466F0CAB1A45674B07E4 +7DC4E6E183A88199AC17EF4137130835CBCBCFA90872E538CEBFC33951E6AE00 +DD5FF3EE83AEB9A2C1FDDD5BC64057E765BF8863B4909C95CA0DB34203FF1216 +9A0288A5BD931E6432CA1783B403504A90B62B4E0D4B5FC4164C84D68A312010 +DBA445B265DB9451360821E278064F2AD1EB723BF672B0D8A480768691575248 +07CABD977D67A9370A9298C245ECF34FA84D3F63D7D9A2B83BE888EB8142D530 +2C782946239A65945EB266F5FE61773A2AD8C17F93ADDBB48FC5AEDBC3F6C91F +752B663126C3B2262A4A4596A8DDF987DF43CE35ADE39A5439C8ADC169C8FB58 +7438CBEE8A3B545602C717FE9E2A56C96B80549F4FBB019418AE957897EA506A +80AD0D2FE2AE157BF451A7F56EC38BFC89D38D0546B8ADA0C1A4B6114F0F1AE4 +1F07C9C3CBD9A868A3BF17727B121086636AED1F0F517AAA532BDB6C9BFC3227 +EEF90C566D1E89191B13D49E5A13841A775404FF10E7D575B79267EB864CD93E +A3885886F420D8DC3CD6EED49862F6C560736221AE2972EA710D9C93F34BF794 +944EF0E3162D4A70DBE3B72B27F2B521FDFB794AE86F47C03DE3D88B8A2DAED9 +BD9C9082960E56CC176AC26EA98EEE594753F97D4D300D914855E2987CA29A6E +993B7638BA4EEB3EB100E76AC8E4B2E5F38B7930C78D47EC6BA92DD4C54FA67B +154CDB96D783B24BEB060FC8616EB6B3C499B384554CD26A4A3F363D03C8B51E +0791C0FD70F55D35EE8C02C2AB0404A4BCDF360E33502CF942CB1CE283E8697E +58D29382DF721C7ABC17606AA6A588AC5331C24126550B79A8073337B96B3335 +DC9B81F56AB76591E77ABD0CECD3F7731FF897E4F28F02ACB111BB5CAA282C27 +E53B589BEA0418EC172183C93A1CFAAE4B05FB1D75253E2404183CD92DF9028E +98B15EDD5801B0772772EE007E15D7AAB50DCBA579169A22D977D1B7FEDF4157 +BE342E3912CBC28EED71ECD5A44EBE99BE147E9156E6DEC74241B264BE2F165E +65BDDECFD36135B5C0F2F9156C44BF742BFBEDC5992F32B8C94CCBA964139035 +B79040095452D1CC5154F29212B1E064FA3472AF30C25B6C6F5B8AEBA7DBD14C +656808F42E10108F35623B8DB3BB88DFAD8B55D6E5395D0D6592F57B71CA3FE4 +3C246270792D1BFFC0FA97B342C5C97CC3E6EF05B3DB3B35CB5D6088E6210327 +769B6CEA03532BA7FF09E4FAFA0C1A0B0CF8A54ABC982EE18A0DB33BFE48D2DF +7E326E07B58EDFB36778EF711A1675974904383443C25CC7E570ABD2409F45F7 +CD25D23731353AF8A12C7AABFA35DFB562AC55171333344C1F5156303E15CEF6 +FF40A456B4C4923EDECE27179DADA941FD70F175E112A3266EE2204E4EF446CB +BA73903B070E548CCFF575CAFC9DF43A4978C73DC8C8EC65F32B2F29A4C0E33D +B34132190E8337DAEF7F3E4E23C8A4393D8C2FF7111295EA0C771866B47AAF05 +7F573567A4F445161886E1E58BE7121FE62FF8A158488E0DB01185ACE3F0BB35 +40E2140AD34D92AEAB56A07E3EE7E50D980E83F868044A44CA2498E7CC485270 +CE262B98A45EAB1490B8EE63852A5C5AB7C2F8800D9636BF9AD09638EACE1D62 +8E052D73959FD69562C869374214E4BCAF9FCD1241F6BD6DADFC9D9B07AF9700 +9366521B4E6BE3619B83DF2861ADFBAE6B6543C4F0DDDD8937D3E845E36A1560 +EEFE0CE458671CC2BAD3B13675F93482E81F46A0F38FFB08DD69697F25835FC6 +89AA0AA143E66B3109829993A2C8293F17A9FE58FED2C93F7DBB77BE3334E491 +66FBCBA1AEB6CC6A712287085851096681B849014CC7887DE22FED12B02A4BCB +328C8030C3C9E4215180C22822A6237132833E8F482D82E695C9219A4D784B98 +3EE96B11082B96EACDF6553C887F 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 @@ -859,200 +852,190 @@ B3F5A131BB19D1E5414C86C5F995521076340536E10613E427782B91F1098562 A0FAE064F599AEF095CA1816F7066EF0AFB220FE1DF11FAFD503505C5E6793A2 6475E95FB467E2F3B5E7C6663A70B15698A1D158E23D3ABE3B6942B24832AC3C 13F258038DDF209525C4124806A369ADB0423C2FD0F823AE3056F380B7128089 -689FD64442104C476657434FCEB87CF0F30CF5789A05E9F0B3B45FED518F05CE -983324411237FB9B56528388EEF6A35C701E0C98D8A9A5DBF0D45F433609EFD3 -163634C41AE0D7AE1522830E6D89AD5DC49F0414613EA370C9FA1F70423F71AA -0160996CC88F0F43D0AB0B7A531F1D8819CA47B588B1BAF5ECD9E52F6F1882BE -369D8102388B912D4D5D0D76D9CE0EB1D47879F51608039DE9006571253000CA -12B6C4C9999241799F7CFA5BCA73C219D180285AF1559F096FD746BD26CBF7A8 -511AADE1899A5F422B0225A2E00011332942678EF37F6F08A6EE3CF462640CAB -BB6A006ABC461015002C17DAA65903B91FBA22F4143954DE8279E427CA2EB2F6 -51EE80BC72106EF8E5D8283CCF5D09AF7ED0B0A50AF9F116AC8AAA8E1A1A1453 -D1C32687545F8E07202D23D6FECC39DFBAD16D4016B5BB0F7B18D49E929C4117 -AEEB314864795804C428C889B96BB536A92FF33BACBF12B8919A66C43F37C014 -A6DDC23536069409D9614B25EEBB6AF22880E761407AEEF853A90893D3C19F42 -3622985B08229DD7AC4C91CA86A73E3D1F34557A276DF3727553624B745B529F -63CBF07A124D5EC933F0C4271884811F82EFEC5D5B29D07B264A12175E75346B -B878036C01B747CCE042E6170B6D08B7AD3E2B690E605A8BB3C8CE0B4F338956 -45BA7E46941F759FB083539AF63BDB985CABC24BE259139A1094BDBF759B3458 -FCF9B84A8C7A23D8ACF926B2F80B566BF0B46DB19409D5F06636F309131264EC -108B920BE38A4750A26C726FEC89FA7318B796670ECD880CFF458AE138B92B1D -D1408A8D4E6137379A6B5DB9229F4932113E9E560D2377DB5D42F4B27279362E -EE425229D4E4643ADB87BDACB684418A2EAA406E5FA4A10EC42E7A090EEFA342 -ED7F4F1BA0F5FD980D1B922CB60E29557D3839EF4E6DA6D487B4EE23BBC3DEF4 -91B7269E53A4CF7F24CFC76D1F1192CEBC05A36F05487050B3BE7210A9EE5331 -99C315A2C08C295FD6D7B3364C99341F5B22BF8DE35143B569895BE17EF577FF -8045BB9F05721004C61B378DCEF34732AA0DFE0DC64749544A9497ED1AF6E4A8 -36B4518EB132608DD97330C83A6731FF826ACC5B92BBCB975A3F46EF5A76C4E3 -FDFDAACAEECC479C313FA17EBA5A57EB87B5215C249F79010FE9E95F0370E832 -B38265CE30B97189B9F61E89C48A3355E79F9577A68E33CE3D8D3DE946A1A58E -628F7FF2386692F153CC29EB26014933276D0DE30F19A0D99B052FCB123066CC -6D801AA67662D2ECF9FD189C6FBE94230B0F6DEFFDB11BB888C612D31818B9B8 -A305CC5A38168034CA14B63FB8B1C9A532EFEBB1ECADDBAA24801E828FFA5ABF -83FD230E4A1A3ABACD17EBBF4C77519C12DED9516FCED378A87F82EC14EE5D46 -D72A65F3316595A1FE971ABD5850494A7C5E78D81BEF8EBF49391E5CED0625E8 -46220D3757655A62B68AB3D89675331A9CC2C39A256C959623A5BF53A7D2BA98 -C2A4C20847ADA5E1AE05EB77D56665F1B0C255A054153A4085FBF34AD6CBC6FA -C3BAA96DE213371F3F3BEA00C2D30894681E5D264B3A9CDFE2BA7A107E3DE5F6 -CC8895B053824D1A85DA5E17D035D3F3BAC071764205576857709D7C98836EB3 -E124BDFD4B8E0C93A233597D725F951C35FED25E7250D6F4B8A98988E177B73B -BA64037678714B58C5ED6C1ACDFF9193687CECD894AAE5C355DA2E3ECE660C7B -84C31C07AC7292F9B4BC5A1BDE0537FC9D50988A23F41F07D32BE210EB0B78AD -5C6926027761411790B6D2A9C7373F7A11FF069351EE17F898E348F93C0E93BD -1858A1345C4109E441D80866902F1216BDB63C37D50D4AC1F0F77B8A876F1E0C -DF18C828388D9599CB97B21C80B7202AFE9AA00E5234798457378B2EC949C264 -2BE939EB43F5F83573DE0F2DED3BE78524F5072DBBA9A420503A91C3DA380853 -5591DAEC3DC9F23DD3ADCAB04943A6FE6C6E45D6C52CB7BC6F65F0CB808C73A6 -C3D2B64F2B76B757A9D5A4A404E7AF87DCD9A7D9AA3ACAEF98F9361E1A8A0B18 -5AB77AF8F87F517575E5BF172E1A09A00B8A8C628EE7A820BA8AF59B29DFA844 -A98D00BC6DA6A18570F2D45EB5C61E234EB51D48F03EA04DFE8340F4DF036BBE -97DAD5C1AAA1B7A6F4D75735B76CCDD0D4D57F89D7B8E4196DC64C003790420A -5849B4381A6A48174DAA5BD05B5C8FE1671DC0F2AB7A349855B08831C1A3C9FB -6BDF5C64C3DBD86A7AE290D01975C4F7FDAFAF851C999A0A18C4CBBE4C345466 -D0195293AB16D5079E062C2800EBADB27C4F42F6259EBE330200E3A83C9C17F5 -AECAAB00784A6AD4CBD8D84DFEDA0924733ADD7BCB4A95E50AE5669C534D572D -DAD5C52910A4B6A88A977E0C34D5BEF89303475C8A25673205A199A1A914AC50 -E548F20E94D0B4D6B4CAEFA4395CF4FC15B6C7D985EA0C29CF4E1B64B2C4EF1B -D5571B3CA7C0BF9AB8BE6D3C5C593B1D175E38E47151DBD729184CC1DBBED0D3 -140D64FD2DEA022A30F4D89FD0B9759C08D17C2458DC90E2DA2515D7E333F9C5 -7B44B22278BC9A6AAC42D66249FC554CB60D70CC913123B856EC52A05421D579 -CC2748E738A603462971195F67055C8FF8C7C3770ADDEF9017EB30E92BD7F40D -3EA4CEF15149FA7AF1CD4DDD60EDF24BD7692E0C1E82EDBB2BCC8109567FA7E4 -B0C46464016473637494DAC07FEC4F5932E1A4D16C8387AF090B16CB8582EE31 -0BFDB207BFAD1C99F99AB05FF25FE910ED1D6188FD2353BA237BB65A8BF98381 -D1D7BA3C7BC9307449545F38C4493D07A6601F38AA854175EB9CE2F4E497F29F -AAEFA9371EFCC7522300A03C2E95C07B6B292E37C7E951E3C93E33B4610BAB68 -94CF2B25500D84524AB737619F5CC5D80EDDB56B83CD3E86EE18C88B316B259B -E540E68B742CE1BFEC79F5E893FE18761123E3E7A9F0CEC8F3789A18E0B824A4 -A3A1E20F282F38E021F13382E562929D67C5DEA316310193ACD44870E558791F -5FACDF9CE5A5C7ABD92DD379B732AAB99D13E75760EF3BC1B891176FC156BBB7 -EC8CE38064400A4D664788B97684851AA3F2F22CCBFA44A21073B7BF24092837 -17F133CE0415445EBFA1530C4528273DAAE23959A10931B5D8EEE524768502F8 -5CEC564091D5DD968E3EB069667A0A514624734C017439F68315E040DD4E1F36 -FFCAB8ACB021B1B8C01653D6ECD7F452A5D7B361DE82E0AA2425554D467582FC -441C7E42B7C262F941B8C522DE52B5A416FC118A032666EDCB8869DE714E5963 -EAAC6D0DDC968BEF5421C01A3C61A3ADBD4EEA14CD5306E479EF5D80AE05A728 -94819269FBF2A3A3DA83EF06FB31D714D4F35E6A668A81E1F7FA9BE0AABE7731 -EE8028301D1EB657486B0A4150F713F6361F151F5D7C9AE114E9BBDB519CFED7 -F5D7A15572F2CEE0DE068CFEAE4EE7BF8481042719C351B5D02457BB000F328B -11DD6E33ED798B3BCEC3963270C17483D4A4C999F736AE32303D49DF8AD510CF -C10F79B76B0201810C272280D226674438361F67B560E67D3DF364D4C2006465 -12ED39B0B1FCB01971DF5C4ACE0961DB47BB98890483D856F6DB093D42AE4FB6 -A6516D364F2D2A8864C64A65F130D5FA5887EC197F7589CB138DA87EBEA4F7DB -F5F614EA61853248DB8908852E94F6AF0D8EDD8723A79E04D1227C9D9CC7FE6E -4A6B7026409B65CDC424D311A4A3364F1D63D90216B0443A71643B3EFDC28884 -832F0B61A6983EE6245E4B291867D3F3A0D9BF1A466033854620B634EE577BF3 -7A3E60B5E8938DE8EE44AD2F3578798F98124108F2845AC2839322DEE6C15AFF -D36D295AEF577FA0A6DE4D55B44D53F51F97848736DB42F0528CB3635EE8DE07 -F7D8FDF0B3ADCC8BBC2490513AD3404A35D59E874C258AD9BEAC9F20A797DCAE -3FC86DC0F572276BEC8F5953452DCC36F96EF1FA12B37578DEC2DA181BC84CA9 -6B7C45E973FA5AB271355104AF36D0BC0DFAE65BF3B381F5DE11C7EE432D0D87 -3C824994DA1E2168B9F71367C69AAA2E919EDFE24F7E600A98CE125595396972 -4E5BBB99F57E46070A9DDA6259F4EF59971A4E6F2B7A8383BE6FB48FCE86B236 -BE9AC3ACBFF54D85CE763C6806B67282110D35335D607B7FCDB6164A186211A2 -1C79DFB1CDD1CF6F4FE628DD7FE3F2FEF44E2BFB61EFBF2075B27F84FD8C514D -CCBC828DAF52C4B3B37208C15D73DAEAB8E64A4F0C07B72B3225BD745B1F6B11 -A374F3EDFF30230FC30C12D17042E934C34AE94F31CA7E57A37601565B25EC85 -2AEC891A339761C589259500B227DB3A026C0A8AB40FF3F094E952CADBF53A79 -B403881713D0C5B7073B9BD62232A92B5D79090BA46DE9AAECF073AAC72BDDFB -69A394552833B446EE651495246B5267DBED34BB853769DD002A8FA0B68B9057 -F75778AD7EEA182C15562CFC75C4982239D8EB95794D0730F89239A8EE644155 -CC30E00C4199EF27FECA5595BA76245DC90DECC8D060FE42BDA2086044998D05 -A615FC49EF5050D566C0CA59250792149081969AB9250102C1F9B903D551FDF5 -D52B0380450EA9351479427C09318D94F8050FCA2AB3F67B721EED133D40A1B2 -6A2AEB10939E38E01FB3F34AB1CE16EC8BF348E5E756043789E15046800E25ED -DC26BFF32AB133D0237E1881BBDFF24AE3B39EC952FF29BA766FB430CC7F94EE -929370CD29C6F383CDDD973C8387C27ED722E362E755D11F9E2B059F8F0FB0E8 -2D2F115C9581432E2CC65CC7C6A3A204FB9269B668E788D326061212B42945E3 -33CAFCC2F1848B27407C6E713D432BDFECE9CC000DF94C0E1336698BED9A3D09 -17683BDB14641906C0C3E4B24990617C563ECD08BF7312E5AA4DA8464FAB2854 -79BCD800EE972DB22CD5B6B2597B92B0C9A0EE413240F23CB053641D136C127F -C3E04629F3F03BDBC1DB371A868F777CBC6E4EFC0E3424D07F0EC55BFCB374E2 -51A6CAFD9E0FAD158A7423C3F9DFF9B4BCEE020B1C9B954649D8A246A2D26D5E -07943FE17D75945766CB888CE2B8E97938F5E943A304EEF496F5AC714FA2ABF5 -03F74E46D37168F248545D76777AD50B71E7C830B1E3AA4C2BE040AA9F67B89B -ACD82CEBFC366BA7BC3D733606514ADA25B3E20F560200B61D74676978771305 -8386DB9A15A5DCC3BBD42F314C1E21E940AD095C202F1F38110E486D193860C6 -61FFF0CE2D426E030A6963BB9C92E9222E8FC493017F1C88A37ABEA640661902 -8825E1F520A16F844CEBA0271AAB2346FF81DB892B83F3010ED94267C33FBC0D -20BD2B067413D4F485A5C0E3A8A295411F185CFE65038FC32FE836F261552ECF -2B3D4193B743C77F904B72CA43C6AF90E1F9796A7F652C09F5608E37DD24AC65 -A01D76448688160DEDBE0DC41504438E326C758A6F80EEBEAC33FFBC2BD3EF18 -E93DDE5A697B61EA17A08B149876632268E80FB9024114DBAE26D5F44877DE28 -C74DC44E16E26532338EE62BF4F81A99ADA36F5B1DE9548608C7B00479918E32 -E539DFAF12FCCA1966B3992261554A99C42311B949F481E720C3EB081DCD920B -7E4E262DE001D687330CB3CD9FEFC36895915BFEE9AA88A80E7FE1CC0183D83F -51C4A7DE1A1AC4E092DB4D38D9C4E2B1B84AF797991253E0BE4688A2C1AC52E4 -B243169D8B2C579E7080CF93D8B1F10EDB07077AAC5EB3FB0C8DA41A671A54CB -599BD2E1C7B1CDC63AE71F1D225383932E1D136300D479DA203BB3CB5A0C6471 -3B16932B51BB9E22D6634298CB71D9DA9079C7E76CF09B92820DFAF4E8E3216C -79E6C9BCE34C2CE9614D7926930CEC1C1569D6C6F5835302C09D6744674219F5 -749278A6BADDEECF49CFF2590F134EDE9EFE8A45BE728AAB2DB143A1E5AE1265 -87E16D6A0136FDBD841262E147FDE631F7464AC620E9CE476A913EC1A0EFA157 -D0EC566F985C101C60931E8BBE1E88B751D89143B997D725987FD57D03C9882F -85830F01D5E18623E0DCC7E97C33F3C06494F82758883B9574024211AC557CFD -79C9CF3FA68C09C8D89B204AED4A006D8370FA10C71837A50212A65FD50E4EFB -0490646F8316149D018F03479568101C10F646EC9AA682EB22D9F0BC99252CAF -515736FD4803C2AF6E560F28A8215FC32C17F231B1BA242D7122D10F46E1004E -0DEA0D438740DD25FC183F58ECE89E2039297781C03A5ED930E3CFF79A848F28 -FC415C9F4275EA6F7673ED4C0DE136F52B2C7C3C7A5EC23749D74C36C1C41AB4 -785DD4D09D3A1C41F9CAEAE4AE92720A4C835EFEC481EC4ECA58816D79AF729F -A45E671512553A039BF8E293DDCAF9268E63A06173A34CC3D70B879FF0806364 -458D99034FFFEDA90ECB03811ABDFD283603F6304D790662B519C0AFA5B40C6D -BB60334D3C716A269843011EE068504F200A9548AC6F99D7B874B132BA43217B -0B4D2E3098F7611C57BF3F5BB61DEE5B5B2CF4AFAE4EA1791C48C80A07D02E22 -E2A13B5A66AA7CF210C62BA3B53FF843C4CDA4C7D940525F47D7723D70473711 -B261AB9E60110224C7306265F55F65B7608B74743B1634AC02F596C85EE30819 -F547FA56B75EA6ED0D7860EBACF25EF43EDDE7ECDE2B85AFD61BBEB11A4100F2 -2670DC54DE65FC1145CD23F7E2B4C4B820683A15C3A3901A072D2B56EC9AD260 -A732ABCF8F90800504D1AAA3440F1C3717E3E3C3AFCABFE3FD41CAC43A0B241E -1FBCD4BC85032E3611C531C8804F600D7D4B8B189B32944E1FF1860003EC8EEA -0E001B0DFE4C7FD0B2D341EC440563F40CD858D86CA57BE791FBB4FA9CB2999A -D96DFD8DEC97850A74E62B6E4B7FD7EAF04B757C8530093A0CF0D610E8B4B8DF -7AD71D1D5CF09134C157DD58F598F90DA6ED4BDC7BA465E3090CCA09C1D668F8 -EB7BD9AD2A1CD81E3334FC14BEE24FFFA59E174588D4D147FA1A5823A23F9CD0 -207C42E24E10A95B62583FF2BA4E3EF4793C6C96127D8FD113DD8001088697E3 -7EEBAC0ECAECFC812BCB8AFCDA1184D27886A6C22A15F7DEB6C49936C6536A59 -ABE29B8EEFCBC0737006F97BA6B86448565DD175A866088CC2C457A625D0177A -E4DAEB8068DB288255645051C16807C4F5209EA1B3D994924CB4DB99A5532C74 -619E165BAC0331DBA808C2F929761DE7878B64AFD5C3B7C584F13418B3A276E9 -5499D2B7819FD8695605293F5324F0E9FE7CA33C815A5F6A85616679EEB7751A -45E33E8E42653B3727C190124A38C97BB69A455DF13291604B1221539F12590D -86CDE68E80A66EFD8A97FF105AF2CFE3F87C74D08EF2F995794751440D870B56 -7341CAC1DFE21A693D2135E79125944484A4828307EA99EE048E3170396BB894 -4BEFF7C03A7DFE4264E5D1F8C2AD0DE63C158E756389EEBB4C4F7600D777F6F9 -5A8D0F07750202026769DB17C48BDFA0B1990EAA54BC70EED3FB78087BF9EFA8 -CDCD1C56263D836A2372CD71104791AC549D152B5C9CD28DEE7C1BF518C7BBC3 -DA1613D5620BB6223F793EABBA85D110A56FF731165459D203316B1D9CDD10C1 -1256581293FF94B637B0C4B2812B48656B63D941A14EB814EA817BE1F47FDF57 -779C6E87D3E4BFF79CA9F6ED153C23C2073526E64DB7507DAAFBE08723808702 -3C6AE4A3B6443705FB82785F57DF6D2AC9C307F67A22E3F8EF0113024EE14F6D -AE3CA6581C56A1B11D86A4C54DC068C7608E90D6B6C9061E1D042AED9E64065C -6F0136B49643ECC088CBF08F696407166188B4F7A20640E5BE8FD09CC48D4B78 -77401F9B8EFA0FA992BB53EDDAF14EFCFA86AAECF47ADEA68E66AA7C0AA16D9D -79A8C15D3259D56650708E17A09EB1E43E97E1591082D8B1ACE59662490EF317 -73F337B0931F6B48B04EF6007A5DE389C7DC9E0295A8DBA5150C4CAFF298321C -202A84AD0D4CEE2AAD57A5882E16EAD1BC2FDB5B2A4A7433442911182E4C2549 -C0D99178D132BA5EAF6BA463E8461A4B22E2BEA3AE6D328F3FA9469F225806F3 -138CFFB891312D4E1FB7CACA2DC6BFCA3A5C063D9D49018572077526C1C999E7 -CCAD5514E13CC5B137C0EFED4B45B6B6A2542E194C59E2C3B0215D582D4ADADB -E58ACF7065A9589836674829A734A1E79635D9B7C383DEE8CB01BC97A55B3FDB -5CAE7E3886C53EE7F35A814BE5938588A7D7A90E112242932919FA75F08BFEE2 -14BDDA5D2F357940A512E4B8A28B85707BAD2F7DD9745585B499C0649260CDE0 -863A211E5D55D2418421ACF10B77C41FF33A36C55528C16C51080FBC64727A9B -22E9CD59F747B031335D1308FD9838BE3F0FFF098F4FBE6F90807620228C0AE0 -7F68918865F6F79A24D55F848D0DEFC4AE1032AAC800D2DF33203E3AF5CB3393 -5B08327AF23119FB5229C073289FAA9A7C11AA45FBB5F59BFA7652C524C52792 -92B248366ABF167F01EEA1941E4C052CC582AC0BAE87378BC3F58AEAB3577FE6 -104FE8648D58A30D8383FA890C1862060C3EC9F9B62ADF4B8E0458CC81006536 -3CEDE790C520E0382DB2E995D7003553B296FD646D10CD3EC822BF9D93E75B08 -721CB878667E3BF3ADFA5081B2DCEF9AB9DCDD36BA85CB459BA2C9CA5C174710 -710868F843528E991C61B7514B63462FD18860615A2BC2F54AD3A4872E8620DB -C1BC00CB3E9D0D3638FEB71226524985AA2293DFB3C1D88822682F06303568E1 -95AA67AC437383D4F4346501D90A20BC99D9A52075C93004A78E525590027B34 -60129411B7CEBB048EB8FC974BCE5964C73E24C2C107D6D617215A0CE5D3E6B8 -17B9826C82EDE472A720EF9B1160524911A729DAEF0F03EC1213933F1B5259DF -842F8D5D5FF83B +6898790EBE353C650B4DF47B13937B89A7B34B082BCDDBC4839E933255635DA9 +538054FC943362A3D3DEB790B19B239F15321CD1FC58474095E69356C427C94D +49B4A5CE8FB1A34025362B2E52DF68C40B5E86BCA4B1A8B0F6382233221FC2B5 +63BD27D52F06403F33ECE55C4FFE09B3A937DEF787E5F4D31F4873AF12FD366F +C9F112BD7E44771D27762309BEC861C07A53489B89B5B277114B13D6B6C8DADD +C0A510972CBD64B7547C6B97EA3E35BCCE170A50F692774175199F5FAD2CC193 +D2C2EFE9C8F10A3E7B344AFFA1BD78462333F4C5B0A8C06E780E60DE0A18092C +7F33E62A3DF9C234F69E7DA6B3250581108390704658F0DD36C4601C7D05C33C +68ADBBBDAC7FE5F00336BC80448EB6F03907265BDD7DB1D465AA714D634FD058 +3E13849294037EB7C67A7FB80586C1370EC6459D5EB89F0B3568ED28C196FDEA +8AD3967EEB5FC076875D45D5965076F3EC03E8B21B15325E1C365D9D90E07CFB +CD5A649E5FF0404A605B1CA5496A782A1118B9FE3CE34EB23310F007DA3FC57A +B94B5130845D0A5F16D9F963044F7719325C9A6CAE3B8F4C7D88FF56B9572F3E +0005CE8CEEE34D87C63DE7E15195FF24C6C7C8DFF34B5B890B24BE5AC7C00DC4 +6C54746482D20F1228957CB3BF90DDD4D5AA2E1793D91355B7578622B10507D7 +A1C3CAE380CD9BBCE9691CC193067C6C0C02EE71C995ACB6B6B254B71A5B74CA +D37D4D0BAD941298D9ADEA5DC428C863522E90E6B72DE008EFC1FF83810CAA00 +7BF8A7BD7893C33472FB0849878FBC7E09BC842031D3DBAEB99EDD94F7870878 +65D0B80058125EA8354A3D2DA77BD385A85317DAD5DA43D4A5C676B6E15E95AB +73D06A8BC0D0B02BD723C5EBB71884A571DBCA873E441DD278E6CF90390705CA +6117C70CBF053C37FBCFFDBC71B5E3152FE71F4061836DE982D4FA1C33B2B693 +C8318E24572BC824B4D00359D01F1A42943074753982085C2C66A1F539A26D83 +D649143D2E745250C055243D0F09CF6E832D6FF4B2D1AB2A476D16E76F4339BA +B3D2A17D261D8CBE9B3FB20744294232A858A91D706DF8BD406843D9FD5AC70C +31B453801E6D7444EF159E4628049B916FFA726B6900556BAAA9651B865949F1 +9873F77C7F7F36AD7564F588A6D2A7E42A78588A1B50857ABC50E457393FD093 +0E159FC348B7E3705D99DD87A75A6A6299E26777BA6A92F020238553E6832114 +EAAC63540B4A39ED024B013717A04844ADEC2FF9DCD5871FE2C046C5EA784A11 +B8C82E801DEA8A1B22F238C439E3D52482488FD185E1BEB48126566E8F6DD5F0 +C17EB72EEDF21118009ED08C30B00F33C2E97E32BDC6E812B2BC043795EA5F2B +747F024CC5BC9A19446B50952F01F68AC1A045C1B74EE6E0A4E442B115D503D1 +EEE575C4064976E78CC130D61A7C54CAC61916E27C1586E2537F7B5E0D8D6332 +B243141B4F2EEA8A4D80F76DC250140FF3A2008C2FDEFC907A3D16204C0C152C +3647601B40938B678A76AB60A54D1CB944DD04330FD2C450FD0C1A83D6FC189B +5C4A842208BA0A0D90C297125DE0A66DAB98A21481F29DF14CE6F7A76CD98892 +C8588B3674080D0D52351491ECE347EE491481BAB5B348F71D448287AC32C935 +D40632C2399751B6FC116BCFB17CBBE520298AA057A75F66D214DACC1EDDCAAF +5B0AE3F401FB7E6E8892DCAC7209172B85D6A071306E00B3266A7F16FAB32E18 +B6C39346C90B3EF859C6573304AD8F1DD9B71C41ADB3C265F91027567BF03AF8 +C467074A8F8D6398BCC97B302BBDB81925337F0E96E23A5BF7E828F81AA1E569 +6332E5A14FC9933EC2927B24BD0406F748014CBD1A280A6F4AB8E792ED6B9836 +B5FA8495567A785DAA00ADC33B45E2EF3B80CC3704FE7EF624F3FA0EE7FC7252 +4BEA715F4A884BFFFFEFD8B49CA062005175AEEEE79660A250A0C184E9F76AE4 +ED28BC4D0191C17B1CAB5443691F890ACF3A9156ECA16C0DC6BBDE0A9818BF84 +50DA94B7EC9154D130EB224234185AA7869E8C78B3625099CC1EB6981727EDD5 +01C425BE67931A5948CB79352D9262CA58FA29EBD7B5887833CF184FC8A3EBCF +9EA63E42DB945A17D8AC33B81A30DA2DF80EB640A0D88FB915052CD24DDB3B67 +EADA602CD66E850B55513E3423B4199457885E9F27F4256F72F7C52C2A5D4702 +50D6168754138D7FB5AECDF78A03708BCC366D270722FF4A339CD6C0DA892E13 +6CB72A5F06BD8068E0E5670CAACDCBBE9C5C21565555E5D8E66BED6FD185C17D +495DFD2CC739D0F64F4C94DE4BECB3B0E4B80FBFCDF6247F8CE7ACDF44F640AA +64CCBC660293D427A303487524B41D6D1D52EF73B9261B7B4F3497B342AB4333 +A12C6DD5238B9B7072DEDCB0B29994ED694CF8550CE7BC7E757AB6ACFF0CCA75 +34735D54CD4D951E0A5BFF9F12FD16AC888B49B11F583D1C012892EE56AE868D +22305E152222BD88B25A5E6D83D3FF61942D53663052920B7725F6B2D8BBC16F +B85AC39E8792CCCB7D3BD910C26A8E8C90BE934BC7111A7C161AE9C91DCF42F4 +E947AC7046E9599489AFF30E27D2C908997F1EC6EBD061F0D8029925380A070C +127AFFA5D328651577112D5C00AA0C8030D7CA0C691B2BFC35307420DE653145 +BDD7DB14A0561EE33FC0DC79A40399365DF0724E99CBBB5AA469D13C817A0EAA +61D011A9B177E2AFFE077E7A4524A4D4C8CEB4563DD078DED50575AD79441073 +A9B442D5EE14D323158C2983B1A0EAB313585F8A5EB3CADBC7DD281C0BBE67C4 +F090666390D533EF29D130A84670B110AC1CC3E89937575022B9FCA5C25E6EDC +C64BFB198BE4D12EC36B1A1C92BF9FE5D679524F1E7287F445B85E73E186A675 +E5B6E09CE387F5DB93D293145FBC37DF70767FD8B0028AB31F19C54056B347C8 +0CBFE97D9C7B04B710F673B60BE0F30B88C300B49EB4C036A2F815B85313DDD5 +8668A09117EBAF0EE08EB3BE4DFA85D33F64BA8902A47F36F81B8F70A79F4A99 +4E633569B63795D4EB52995B25B93AD6F76EE037A2C7F60A42EDF63B067727BE +A578734372B3668898C235F21886373A281BFC0D9B302370BF68C2DF2E7D0122 +B2A3B75C606B7B233BDAE2F678B6FABAC4146C6C869B6D02688DC451D9AF3836 +293666C8A29564AF9CC7307B442D90417C1031F36506FA3D150FD744BB00B284 +71B6F95E91414EA036AA2BE6748072E134892D9ED29EEBFD0CC2A0F10A22A70D +CDD977B0D6682CCCE5CE8FB294257187454DCF27D8898E355CE67876D7A714C0 +95C9FC6A965B48F6B16BAF12E97D34CE66DD347F02328A0C638BF326EFF03B5D +2956B482FFE3B28A919ED584A155EBF1A89A04D5D332DAB9391275295014BA45 +7AB073F7167B008C5326F1CF2EF61373B02EC196A0424F531F4493156CB55894 +D507CD32C1BEDDE9049A3FB280F0BE66DA2BFD0175ACB4CA040767EE20753638 +47FA25FA72BE472F17CD40997CB14FC5838258C581D4699BD1DD004960D89724 +A28EDF7ADB8572F0F2B741458EED8C1D8FE3F7EDDAE48FC6109577E4D55B96ED +ADA6B76F91CF721E480070FDDB8373F1CEB68362FD62BCD6D323F5DDDE46F991 +6C4BE549D52E92852116AFB3EC41E1A501780DD40561E65C0829A8DB8A63165A +359145427101DB8A27D78F5CC2B4C2C49817C028B5FDB92AA9B38437E873C648 +16738BF0AFDCB32F03388CB64830B8387989A8744C3EBDF80E1D400805B984DD +E2F20147A2C29D81132CD55C3DE115B9CC33C7B1BE6A5C25B91E491863BD30DB +267D3170B3F3727C4698E7BBF7A1DA38C8439A37413A25ECF24341554930E141 +377F449512C949904CAEBDA96FA031588B6280BD66D20A01D78EC579D5BC6E91 +82047E5B9A4646DF16619CA770575F8D16CBB15475B94F8665A2B19DB67B776F +31105247D0630C1DADC7C22C0453141385737DB9DAEE16DB081441BEDEA33EC6 +634E4BA669E81C8B3B6AB5F618ABBF238427A6D348048D59F7D18927DAD83320 +5FCE1B3CE164D56A52F940BB7D18C1D1FAD9F5590B253FA13B16F828938CAEF6 +C34DA906A666BCCE0A5B6537C1C840DF07CAD0E355CA819B6B2D59C2B161421A +B4AEECEABF60002BDB9AC784617FF42A0FE240484888A1CEE7B0766CE6DD0403 +AE8437D156F0A8AF854FEDC455C4B3C66D67D77518B1E76B5D1CEC1EC3C5AA0C +9E40F482E719732DAC2689AA47BA3E1ABFDC749D111A971A712FACE6DCBD019F +29DCB8FCF64502DE2011AD31E793031EFBB6B919171023C490B6AA734EE125D2 +91FB12964023AC5175652673EDCADDE2943810EC6638DA9AD586BF5E272E498F +0CADA95922AC762366B860CAD64FF075A07CC38786BD3749366C744F58E61B72 +A4208B1EC9160C6D5A694F8B4A79A44057B3E2BA9DEB04505988042FFB50AC93 +3A335C89A239D55F6E90C71EB9C562D425A8AEFE57C16C28313A33995A18466C +5A1E60189BFFFDDBE569C7F90C8495FD9F6A696B57EB43BD1861FE0A440A094B +F915D5549BEC46B5AE56B8288F856CB42191EE4AAFC1389293A0E651757A6BB3 +3BE00831FF1F585B10C5671E35E81211EE857983AC2EEA50F4BDDA4779D343BD +A386B8284747D42561F5C3DC8E34C43386C179C75A2472737D3A1537CDB90DC2 +118584D6B455CE4E4A1C1E2F2B1F83BCF8ABB86ED44EBFAB40706B9A0CB32C56 +899FAA2277D80467B9DFC1312C5FE5123C8EF3D9FA28D2887691FED20E358E89 +C7797147A60CF59373C1EB18CFCF6B4B609846D3B8A614BBCCDB5CEEE5B6B0A1 +91C5BF7C47592246AA9EEB271C6FF28A34A590901155B9F347CA220ADCE3696D +A71AAF79668AEF9D299DD0A4F3156EA25C7B2D4C371B5777CED70B9660A72CA9 +FD088A26C9E36CB2A94F8E6D15704585E2E4484A04C53FFDF4757D83C0991D9B +1B630C7F7F6355196CA937B461D850CF5385469C756B5268AE7B21500416A541 +724440F598603F2F1DA0180800C17FB1C74C7F3B3297A23BFABAFE18D76B8E97 +E29BB498A3544D31031FEBA516C051B5C42249CDCC7AE48D3657C3CA01BEE69F +CEA4E5F0B7C0A07EA3BAA664C4821317BB95F69705E94231EA30422DB9495B27 +09EF04B1AB47449CE6D539A58C9C374A5CEF6A9447FBA55FC68CD2CD6A75EA17 +162ACC633F7A39801263DB199748F1782B4E362E1F0B1AAA2318E8DDB086452E +26BE8B3C8DF906FAFC4521E6875A54672ECDDFD24CED2BF405FA05AA5019EF4E +BFA8EB86403BE4719FA93B706AF1702639B14933010DB2074C7D88EBD12A4B98 +BB020C2D60B6A5C70B64516716EBFABF10955F7038867C11FD8AD482E0E70CEA +A35B11714F41E3758AC9EBE0F2BF96E96623CF965601EAA216E56B707F5C3E0F +6B1FFC7E33EA556B2297A83737F20B54FCAE3DCC16434E2F90C573E21E11D14C +027DD188FFE8DF7FE09998A787525363C27ABA61BA9D1224E20883B65FEAC2C0 +F999824907CAC01F02312519EC80BEBED861E9E4CD6EAE27E47E4BC784819360 +1552F245738796ABC0D4E00573A816DE9138846890A64032E6B57AA0D70CAEE8 +DCEBA10AFB093923731D88A52E27C113927515A66AF2BFDCC91CB7ADD44B2D16 +51FE79A3041099D97C9215F6E1272347671E1329BF68BA96625A86B9EFEEBBEB +90F46977CF1288826774813041BAEAAB9CF2A40D98D62F9CADB15ABF003D81D3 +34007D36BAF3C0D9B829217338F7268FDBC94BFB36ED3FFFDD7E182D21380B13 +C6708DED611606E0932D29DC93B7DE5CEE2B60D064B83648F3184BC6F16E5A14 +CC9274DDC43AF37FE9B07338A1F05F49A801281829F32257ACECB6B86F1D40F0 +0D1816508B54130D347A7F1F9F3152BDDBC66DD879694B66832D714243B3225A +5E8B3FDFC4F474FADA11F5108789A1C710564F15020D79EBFC51A64199216F15 +8C9AA741D7446FBDA16CFB10985DAACC13D0FA82AC8426E2AA0340261E16C87E +60980C2649DD1069FCA0B642ADBBAA83719BB4A66CA4F124D63FBB3154987DF8 +EED536AF7A0B17C3DED454F3D9498DF114E13518F4D2A0A2CEB6177B82B30F04 +27A8BBC30D30A1CEBF31D49846D3A22DA46D573A0485719FE87031CC22D678DB +72558D05AE410F151F59ED729AE01DEDFC157678379008CC3DFE981765C2FCBE +EB6288673D66C07915C1EEE65AC23327F88FA2A7DC7877DEF37E8D5FDE239674 +BDE82F483E47630EA65611F1C69838E9E120C1E827479F2E04D8235D3C8236E7 +13562CA41D0C7E6A5F9AF975650F29E7B1DE73C0BAF09A57DF9D533402560750 +DCF27AE743DD9C5BB011620F0414B0A6BC064EA0AF6259DDFBFC33DCC056679E +E0E18AC1DC6A63A9402282B1E44C18E238DA3C4ED0FCDAA33EA4BDC6C52077C5 +410E18DD5FDEDBBBF47BEC65DC20F964EAE3BC436B34646BBF03BA3D38D4060D +8F73673D7AAEEEC55B4D886370DFE483666C36E95B31252CC05751FD6BB5D7BA +C82E662531EA5362B146D74A6114E16F18729E66FB52896C4DEC95642A5D0379 +0A11B1208E9A288E1F0C41FFC5F148C27E59C86A8D3D9958F9BECFAB2BB86AA0 +5BBC17601CBD47C2A58753589378A37EC5067D5CB05E8304F43593C0D66C8570 +A1520FE34CE0901C1FEA99ADF0792902A4DC1ABED760B7E35C06298E8AE5B26B +7B5F1DC8424573735A3B683883B59C2FEF809089314DBCDF94412915FCDDC9A7 +A55582D5B19140831FF4691AFEDCB9F5AFC6C42370100891167A8885D30FC20F +280A2228E195D36743875FF91FAF0542EFE1D4060391E13CA3186FA0C8A028CD +4DC236EAC727DF39694F1E5E6A64D28D50F027869BC50EE6C72097864A420DD2 +2C86D11A6FB258595134FED214BACC65210E712D3A8B4CD62AE443B81340A337 +367A63D19FFA07E60E68CFC82E861C596C720CD91B5005ABBE154622DFF46AFE +90FC00967A90363A25A2AD48AECF35185BE5F637D4F6227AE679F13D8A50C628 +BA4A67CD30E294E06331FD46AEEF654616D7D413A8E6780531DA83A226F64D55 +9AC24ECEC7CAEEF079D23FC5753A335AA896BF5C13FA70A82C0E95ABACD18A69 +2759DFE4DC70B94B432F889756F3E386BAD51A5D4B8B27F1A66EACF245C41049 +1D4BD667D757914935843B68EE79FBE7031DECED872370FBCC64686F63DA164C +32CB69AC5B1F9FABB74EA2920B2BB5E84E5AEF9BB3B7F7B22299F3DF74FAB452 +207622474BC13236E7F0F5B57C85A57C9DAC8405D09AA42DAEDC9ADD89ACAE67 +A8EDA81621C9AD2574D9D531B9A91F709FFED876BE61B3D7EBA1C902EAB94113 +0D231EBE2D5DED3319652E1332F268CBE89307A3BC8E77128FC423044EB92B3D +2CF633A54A890F36F3FEC38183AC1DE002889FE82A1909CCA288009F76CEFFEF +4CA28FE93DF999D05203C5230330C8101DE90311FCD7E18F93D7123279D543A2 +54BF4D958078DEB30987DB90E9D62E78FAC6FFDCB022CF271BB2EB6BE8AD3E37 +DF3B36586C45F050F00D681B13C8B3B5624F310FFF9EE025F9EB685A7E9AFAEC +328C16E4782DD1B0E59CCEFAFC6D7E259831345B773D9C9FDAF8B1BEC34DAD97 +454DD84EE8E1355A74EB6F5B34D6DCC77132A45B4B45CBE90B0C64A9DCF27A8D +F12130B70BD267A03F33BA5747F4BAB8A57B2C14E9BA4FF3A40B1951164A88A7 +676BCF6C2BA9BB968DF06E050953198258C38C891E463F4E08AC0603973F4A64 +8848321DB80D3909EFE5CC5CBD002B96ED439DF43DCABA866DF90B06DB886DA7 +E7FC4FB2CB2124B28A2101CABCE192AC463B698F7E79A35A17C04353BAACF712 +24185C2AA22FE3DCB1A4DFEFD6782511878DDB294B013CF3C62A683DE40959AD +CFCF2F819D7D9AABC0F0A0549D6C43307CE0CC7780050DB88A8AC7409E8E1C09 +A1DF0399283332B3F71B5DB8BB5FEF3BF89C115D231D23ED4B3E212C7C9EAC5B +006226603D9934FA3FAAE14A1ECC8AA274697E38380C94295DF15E3B157194DF +2990CEBC10CC81B51A09D621C6A7E1E10C57760A3FE1E1F3B02ECC6ACF80ACA5 +F0ECA3ED991AF7BAA6F9CDF712E8D763A22E6D59652D6051DC0ACAB95C596E20 +03C021BCCF139A55E3E7D749D09D5FE632BC62A3B56ADFCAC594179D37E01959 +603C7ED2142D3A9E5A83262B57AB6409E8A3D16FA114FD69DF34AF3EE481332B +E7E1E389D723EFA7B4D052B737C9D250C9D59948E7B9D68DE022B242F455E2C0 +917139BBEABF3F369C7F667FAD71ACD0B22687F0397A39D93DFEE48ADEC0548D +4508F90154D386C2AB5575678E1B414C41FB829AFDC2977BF3C2008E2B3B44F4 +A8D9B1476F47B833AE95165FA305AD6293CAC9D1F859923EF0AC9EAE01F1FE1D +B79B527743424A27BFE9 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 @@ -1194,405 +1177,398 @@ C4CF2F4F438A4E520CD864F3EAFB5363753B82978F6FD664A14E5D6F3A929348 1BA5EDB15F1BDBE806E51B294257D7087334165419A6520462D794D670A1D6E1 3BB03BF689391D056D55AD660D15A386E6D222C9572BDC4DC8A46EEC75124BB5 F0E8978FD6031A90E4768CCBF62A5ED8C8087FD66D2033011947634878BDC0AB -6501DA7E6D96E227068E993DBB0072F037CA411E43A07E33F7B09F2857AD105C -08EB767A9F9C2C040F3E577B74DD991C4113C44027A60B8183F23B527D74BC89 -CAFD464A929C40B5EE63D0B69B5DD928C52D0F9839232AD4E51591D15C32E331 -78CD45AE926E05C5FF0375F97B4329729976E213EAC877D8B00F85E3D589C589 -24507F435755EF67755684CDD0C0AE8771E554CD0EDEE97B77131D02CA1DF7C1 -C7F448DCB5DC4BF378B0317D21F512226770B611A3EAB0AC35738266CD03C04B -8113AC9706A39870A7371832E9955BBBB13FD47584CDD636744376E20A2A72FA -A1B554624DE8DDFE51ABFE1BBAD17BD357DB08B177AD0B33D864AC4CC04D7F7B -50BF3A26CA770502D639D64FE5A198EE3D217BAD1CEAF6195AEF54362334DEC0 -6E27B0AA124D5BD99A2FF168FA3685EFA9BF5809EC76F44FA3BC2C969F7ECE87 -C71A3EFC3256C2DAD0BC78570578B95A44797C965E963285122149283A77E3C8 -D4C553D1443D094DFCE9E9C9509F2F6CA8A58C5D63471A47901FC8E1562B9C11 -4670E53FF45F4DFAA6E3A27B4F955BD43784C5BB356A6FAB3CD049B9FE5275F8 -F930F83FC21579E61E7F20F05364B72371E1112287FA5C28917C5F98A48AD51A -87708812DD609A92FDB764D710DAB450724C84A28513973509C9E4CD3CD50A64 -F0CD0DB6A9FA459A178E7BF67D46A21B8EEFEB19FEBEB453D490EFE90094C294 -98A246B27618A049FAA90DD355DCB1AA6B602EB1BE472125791CA0E04AABCAAB -1BAFE92760A10CD9D0B501E55D3B2AAA76CFC374313C4BB5C765C9CEF1E7E5E8 -081D45C223E1DA398F77615C3A44CB0391C505A070B9061C875929874E32EB44 -0D9692148DF4A77CFBE77F7D5D70B239DD2A5E681097ED9742663A914EADB605 -8B1C0033F1B30C06605AD37A826DE7848D3B59779BB998C3E57DD2AE80B7BDB2 -B2367579E253A2674548F1B717A0CD84E5CA6ABE166CE2F1243A4D22AF519E6C -1C087AC5F81236BEDF794064D7F1B7A04EAFF6C628F7EEA7943B9F497E172E28 -49F8D3B3E41EFE2B0BFE65E72643F14A1853605D516E3BF7FC59C13B1134B9FA -7D9CEBC9608A66886D03F4F5C35E7241D9EF4086250CB5C00F7D94C0B6C7B639 -A9C198FCC41D6EFD89ED68CD447EEF62F196A4FD7A7C124557C370A5CCF9E926 -592FAD165DC03F37FEA13EDE22B64694BFC42B733D8E0BD9EA4976DEF3099048 -CD0FF471F72F1BA8D67FFAB61B4FDC8834CC475713A3D144873808B51AD266CF -BA55B8205BB40FD8A3FF28738A9990197D17B753A57B8FC24899500128A205F9 -5C8E0B63891C638B3F3E3BEC0FACBE02FD08EE9A9489CBB002E8BC0A1DE01FD0 -10A77C7FB9ECD009B61389841ED59543C10ACA8EC123F4B96F8B6E22BBE3ACAD -8EDC13394A1C10D8C6971C37E9ADB3B5CAE2A78D9E299FF17871EFD0BD483F02 -AC96C84F5499DED22B14F13A57BBE20510BE25F17F51F299429CFAB7514FB5A4 -F4173691B1CC7775F9FDAD392B0D84AC6DBDFAB9BDEFF67C56DCC3B02D954661 -A07D765C4A4EE98F58B13D28F3DAD22A896BEB1779B0274433EB5E2E906F9522 -96E74A9D5867CDB4B4858A80DD69532A44B0BB512330D003B188FD6B6F724263 -F011390DF160D0FA044A6F0828DDBCE0E2A7E956D7E09C6546601532F053D5F2 -62069615E3F6683D2B4F0A803E1E66D499DF3819CA3B83C469A0468D5CFD228A -70065B2B272421C0CE5BAB7671D69B4A92AAA802AA863E632EB44D2CED233A33 -3A09DAB712788E450B67D7139AD9BC3FDF80624D9B8DAEA438C0E6B5AA07684A -D11C1452F17F5E042C8A48BC13095FC3C078E9986693D1D9929C337B8161ADC9 -258CA267C9FBB136B09C6B84879D47EBBD5D6DBAC674E659FA3AA359CE69DEF6 -3D6D038E785D1C8A284162CD416880DD5F573D563316E5DB788037B683A26CD8 -C60B75E1A1138EDCD9AA998252110177F2A1CFBF4FCC0EF7AAEF02ADDFA74628 -AF11E50A8A851174B6DE8AFD381EB48B28003EC913183B0B7EB0016C84994266 -26448FAE7FF37B6EE7604113A4FEFCF421E6A4E0F98B7180A64E9946CFF2B4CD -A92B51C8803FFEB3B3C000DAD409715021BE9414CEBF0987F3B4456E7C27EBE2 -A3D8D250142DDB02A4FF49D9D8A67FFABC57361D619BF8B80BBECAAB9B576FBA -A580FEB7FC6F9FD556341025EF51EBAF765A626FE93B988F0C33CB1B37873C7B -63E9E855D07396B8BD361F4BE0E627459FDEC7B91472D22B574F546E41674D63 -62DF6225371C9DAD0A9129DCEDC89A81489708F14B6DFD79AC00A0DB7AA7D93F -EC5BFBDC17D06D599488ACF137AC92C55FF3DE619E6CCA4FF633919E59EE1FE3 -3D153E6B8B8C1CBB3135E0025C4BB8A3CDEA44B5FF7071319DFB0112982793D9 -860A2FC92638B7C30A944685687F8DC719B0048B375F801678D9C936CD3C083E -F5579977D7CC4267486DE97656FCAC59CD82B4DE3032445A30C8B6C8160C6016 -080AA9D647BC6649714A2282DCDD5FAFEF61EC3E7D96D8652FADEDE39BF2EBED -41DED35B9C2E3C76B4317BFE5262DFB14BB625BBFCB103EF0F67B4559E0222DF -CDC260F22208EF73515592B6D397E5C286C831676DEEFA29A8131072553F238E -5E17A0E3A080AF0968362F54F5EC1990E5A3312CD4E8FE5470192642273040B7 -9B94E435DD6A0DFC69947DE35ECCE13E14E64D879E84801DBD65F0C123A3F0B5 -CFBFB6ABEFF14F860B9595ABC25FAAF7AA20588172E46F52E77D4010036AB4F7 -9F0294FEF7E66766DA9270C27FA2B159E823758A57614489C5C5D711D4F3B019 -1DF3D1C065E7592E8D342C82C740C384648CEE7DE0699516BDD298A486119E2C -A567F5F81F76A8160996D5BD57A65557A682B77BA241B24348124C0B7BECB5A7 -60D6EA2A861C99F5F617B250C0FC760B1D81037A786166A75BF2408CFA77DE01 -152BEB50921B3624517F8023CB111527CE517C6104593F8F1C0DE3C4E6AB4E47 -E7419AF7553C784A6DCA3A4DE233245AF0F9CC749F9A7D81E19784E9677D6946 -E2D1F2A7C407C9420225A87D9E94AC52A275D8A19AF807FBBA36FE78E9C11E66 -D46602FE2D7F0E63D1E21D099B590F5EDFEEA0935C9C8056E02D57F510E71302 -F3E0F93DEAF28B3EBCF46D097F5F065B28B506392E17008C9FD21DC8654EB024 -1E5376C2427DEDD6C7369878B9DCCD04F35D594F3CE144DAD63FFB6E2AD71260 -EAB7F19290B2B8883B0E97D8A8B3D0D6E9B99503D8853223CABA8FA1AE289B8F -C0164CDC832069D7AAA6DBA23B9520ACB4EFD0145F317DED15D9B317646A9619 -F4EF45F2389448C1A7F75BCE53865D813C97D949C9D94F225C998A1403CE718C -A3C63CE6187801D3203CF4EA7F43440E2D620DFD3C1F7452CD9EC856188C5CBA -FEC2D90A2DE296D850142DBE6D50D5D43C7AA4F6207B4E5A32CD0A197DF729C1 -0388636EBA410A9982F9C16B966498BE61FA25DB0A44A4C24095A4D0E92305FB -84AC47D49C99209AAE281EA88E80D234EE1CB834771F32DBC1C1898F86802F7D -D86B6ED5588E8029809DBDF8A9E5139CD8ABDC9BE14F073755D40E21E1BBCC68 -9DDADEEA9F2E95480DA9F0BE40F82BC18849C84216612D8E42185061429A1908 -A8BBF1CEA0B66070C4EBDA360AD5BCDD4E636396A2F92A6012BDEA37A7765F8B -7654509788847E0ADE8EC67F87A40037F196BED1520691B9DF0D35EBF99D45FF -B3669D2817ED8781145C79979FACCBF5DA3210C478ED890C6E404C2C9D48BE5F -8AAB63094C7ACFC5ED7A4A56983A23C3A617BE52C0EBC20F3715D00ADA200ECB -13A5C9762670E3A04A605BC830F9A8DB0D21BC4ECDA28ABBA03824B98F4A61B7 -319FB56C9936E2AB79C954EB1A36AC8798FA450DEB871FAC1170CCCD80BA8B42 -26544AFBE99259576D9C440E31E2C0C2918D0508047CB79DECAF20709581E13F -1F8735E583DE60FD03E70929A75E49B3EB2D297868049BC55AFF959FE5631D9C -746A54CD8E2E91C6D3CEC4B4AE418CDBA3C6B9B252B55E869B7AC630C50DD342 -3898204FA82E7CCA3CC91294B159C579BFAF9864B200700196587CB0A21E9218 -7AA09DF7D2C1DB463066E3D4A6EE0F0F8AADD0E4AABD2C0F8362F860A4768B05 -5AA46FF0E6C08A52BB078C7187A7321F2D0B7563D3927B6740EEEB6D20A8FB7A -B7745CE3F751B8B6ED6DC24DB08B9E18BD6A24E93EDF9721650629AB5F3C3090 -E9C6163B15B1AE4417DD61822FC7E5C2BB3C868B3839FBCD5B1B5804D31B62F8 -14027E431828B072F7F7F3EA8D8F90D433632EE703CA43476851E3C5356FE9C5 -EC3AD392BDC12805F2FCEB66103044C32BDDAF03E8E8D18313FA6444B2E0D92B -BA0F041CC408A2F88CF9F0CCBE3240F222B1D73499B9D732D83B976B67AB347C -DC17A20435447D262A4AA72967A0F866D19A292684BA6DC7AF5636D266E32FCE -2C1A62224AEA1A79E543D2F793B0B8FBA7AAD3D5A914D51A59D73FB6F1F54C3D -54713CF59C5EFDF4C9190CAE614B217A23D8F0D69E89D102E0BCACB875EA0D02 -05EEE1DB5E95BA6D1FAE5E727140A5001190A23E5536E0B6C948E7AE1419FBB9 -7792704BEE0345A4EB038C142624A63A9FD40A27F96158214C1BB4DF2EC1A370 -D325D3EF16661BA76C6B7FCB0493EE58B89DA4C84A9C79795619781E886C6B70 -BDBBF392C846311BC58B783B30B187CBABEC60888E00BD429B39E4B7B99F874B -E39FB98794332FDF8E12C6751B299B9E03DAD3E60707668E1543E8F0CDA3DD2C -40C93BE077E42686390164AC9D41CBE2A1245062B053EBB608A4587AE7412B84 -CB86D3D43112CD1A3BC50C2CE958CAFAE983062AF001CD341C206AE3B612503C -074BCBB8729D96BF2C65CDD30542DE6AAB9C1AED638F8E877EFA7F48A484AE13 -99F671320AE9532449B64EBDA99576C4A1D64632482A9571DF06EAF113A61251 -28FCF6C93D4528BDFF10B695C10BBFBDA0E09513F710FE32810FFCF6042AF596 -373CE984EF21ED2D7DE36CE1352FE2F3359ACDF1886ABF265D0209D249EA26E0 -D04F64EE2B7173FFA1956F8490CB1E83070EC24F6F215217572DD5E9DFB93DE6 -F03F73A2F5EC6822C1CD331F7AB96AA694FBE4087BE6254FC2F618D2341F0839 -C851187967A878CD2D7C15E4F9F7159782C4A7F92CD27789F0C276F59F894FA4 -8E9C3C5BF1FBB95F28C97771182B330C3F112C54C3D2C7F24A5161C7C885C7AA -C3F8B756829468F1C1F6C06587BAEBE58BB5B2BA899AC37510696261FDE7BFDB -39F260E2EE831CA953C22B6D752C65320BEB215A4DB801322CE2B9164C6A28B6 -3B68B6D762815503328E984864E8C376C38D3FECB286973E11A1E070E5563157 -8323E44F60015A79971D4F51E11ECAEC8DEE3888D918214B07C5DD5EC9F2AE7B -E7C03B20BF005C2CD6EE2D901A8C1AB4D5B42E516D27B8AA49AAD3239194C371 -1FC129A71A1B9193A5D2E165AE86903005B44F2082080F365131AC55F3AE789F -793E1917065600ED9578C815263F3D89662ED06305A4266887A8C98B2BED94AA -76BC9D443976C37A0CDA5DC71070437159A9E5DF7A45D3428A1C2107796C81AB -DAF6E41DB09290DCA48E502CB464DE52455367BB868A704782DBD6F8332F59D4 -9BD1662F8A63BBD1A4E8DE63A080D96ACE48C97321DCFCD8F5E642FF191CAD8F -68D0D6658A8A5DBB8F35CC31D90CB44549676B335A0BF54C055966C552DE7DB6 -2A1E32EE7BAAE71C62D9D0104BC5B46C420EF3F2AF7A9300612C104BF3F104B4 -DE686971C770FA9550024118997F4AF8CA9A36DA51507B0DBC253C4D1D94E551 -460C37C1E0BDA5DFFA6A2C04A740283F42A812A2517D029A55A5D027A24B291F -EA4EC929F393F7A90FCD58F7DA0871FF849AA84BCC61A2AE6C17018F0B313617 -F13507F6215C8E7CA6F9C36944D47F9D26B0E382510B71310CAF6AA091084487 -6A7DECDEE38A6C920B2DD188BE66E8FB4474DA8872409424EE3E86F7D5FEE017 -ECBFE3B30984EE7D2A21B063E619E9DEE5395C73C0C11EF645450E351DD634A4 -B0EB5F1A212BF6C74F5C70D0170990114446A05C70E15FEA203C3508034B1E08 -F841CA1AE7D2074F3B4E99413B4F2ECE3F96530988799B0C0F8FF3FC344197BE -6D6D6F38ECF4B5D4C8626D3903EBFB7FA2881402F0505794133917C062940B4B -971650BF3A052C2852079B30334F1F88F569A27A0FF21B69E9E265D1A6388D74 -F41C23AFB0267D90222005BE6C70035DB0348B18DEB3A024989A67D4D262A52E -501C237DC7031B98F275ABFCE3CFF9AD80D3A22E096023E42B928C78A9CC1E28 -786362ECFBFFA1B3FC256F74C209EA02AC65B790FC277E89A9A16457F4F12453 -3C5BD1B1BC991FD9605088AED21DC1E7E723330884D24F534A696CE29799DB5A -D148A390C355C59A96F3BF7911EB8A2A4D438DCC2EFD97B4333F1AA6092C7E38 -1ECE0929CABF258CE4EACFA5B0D1966FB89E77A3C2A4436EA6C933DDA09D9673 -54F6E7077A15A86113B4571B753EA50C7E30D9D8E837BE60C90AD137EF960221 -FB21672C1BCCEF23440B3F3BE182C39348CDF2E9ED9B23284B10DD6D55E041A4 -35B81420197BC18E35172191815A18D4D34EB23A3E945F651E5990BBC8D72D96 -FA7772381F25231EF6955F17351BDDE45A9D4CA3765C794B48F0E59E0AE081C6 -451B7DBA0703251BAA90ABE78CEA8DF423F317D88EF061DECB1C2ECDBBB99937 -506F76F7632B6BA2A8AEEEDF84D63444AFC5EFA57ADD2F951E630C6FD0C88618 -E9E40D333E6A6A0693A5B43ECAA9EFEC1AAA9454F4D7CC2D78AA85F236A64C16 -D2D6882B11D7C1487EDE396E774FD952F1E9E9E6DEAA4F2EE134874C763B8ACB -050C2E8945602DD6C3DE22DF4883D9F29A156D7EF96AC75AD63C7DAE5D9E7C70 -4619A62938EC7DD03FEE15346198CC595E0AF5EE40EBECD97AB6A9545CF72711 -423A844D66BA7914C70D17E8283250D85DFE200EBEF4070B48BB059AB15C871D -A94C54B8B8FB76A5A97A4DA65F5516CD5B8E1B35E69073D0DAEA406BBE1B505B -AD6717AF7914DADB0E5164D4C874A7EEEB6D084BA86ECB1DE861F2EDC278CC8C -BFEA8238332547201232297F4CA6C8F8CF06EA26578F0A405FA32AE5E5A622F7 -F1965D81681AC6E9C9CE77B98A620DB88AA0FAE34E1C6FF931D7CCF0F29C4541 -54A54BF4CFBFD3A578A0233722DB68094B8A65A7364DA724CEEF28D4879A5E1B -279A0820B76F6B08CABA6B1DBE38F4D7ECB7420423479296909F023193ACE05F -C9CEC2409A4A56D66926E79A32B9CC2AE03592785E41C31707EFBA77B98AB8C9 -7FAA2DC6C319EA203D1A0B06DAC0F43CC60763FFF13641C8B24F7AEF55E80422 -F5C1A4A378A8A05128577A8BB214FA84BCC780105D9ED556E78996B82DC470B8 -78C69B438F03F9BAA1BBE61FCAEBB4459139BFCDF7C80F4DC5410560FA7B60A8 -5B906AB6F98C80A903607EF07CB242374261483C9D4C4F7511D5F336B0362640 -FECDAA67159A22EDD94C67728F8F7DB2436528EB1CF984100A173AEC0284F38B -74E00244512746A4DA0E2CCBE98AA9A8B27D28696075FE3959CE6CF1EC67AA45 -9F700FEC972C09BD02232BF7EF27D216138F8EF3C761B597A2FA7A08A9CFA39A -D045177988929F9A6C984CA160CB7ADD11B6E13951607FFA017DD3AF55134743 -83CF1CE955314CB035863D0FD6C8DA3881167486AE15951D0E07CD69E0C5FCCB -C55772ECE83EDB2F24A2540DCD181BC8474B53208B39C76CA1D205BE5AAAB47F -8084BF7B565DD6C338FDB81ED346E0572FC45EDA2684268E6950CB749AE36F88 -9A69E1BC2E0EA73A9886E4CDE44236E96AE55DD48A1CF3AC57D023A09DD878E5 -A9B76492C226DD82E384E8E86F35947DEEB4E4A3ECDC0735AEA8D9466D1CE8C5 -96FF354F321EDFAB5E4B68C55F9624D6ECA16A66855CB9CCF4A23A3CE8C4B1FB -6CADE3ED0539241FDF23B16B8A2E439A9CE01D7E7BB8AA406A05137DD1F4C0E6 -AEA8E68B69F6A3BF726AACE5FF5BB40BE8A3FE0E9C98F0073FD50A4CC38087F6 -91947A89B2FAD33D783E7146E93C94A16FD50624610CEBC2306E046DADC35EAC -0115D733A3D702810E527C5D903FE6484F20173FF561C04E3995258A8BE2A5E3 -F609FE5FF236C88702AC35B5507EF0B94D0E997531150BE4ACDF31BC86D29A4E -EF4EBDAFEC9AFB57CB079C00B6250051ED9D040538E5FDD5939F3282C5167E21 -A7F5B53028EC6CDB634E825C2E5983A7E32192676F86061A3ECE654C78B40CD8 -C7DDE58E33C9766FD2458EA023485BB07A8219AA4DDA9BF3188EDE35DA9B8E5D -F71440CA5F8C3213CE1F2F762C00616B586D31161648C360FE3D752181990E1D -AA745858702CFA4FE5D6510DBFA5E8F9E0765A45E87150F9276172454C5CE262 -470BBD1F9D1366AC35CDA1A7267F6FE684D4FD86B6B07D088F32BF47DBABCAB4 -B5C01B0914FBB221D3CFF148FB742F5FD4D1469EF3D477A78F54497C09A0DB00 -FD81988867D0B02BC2B503E71774C8B114B385C7AC9E0C200555F78B6184BA8B -1D2D7F2CA058D83862FC5DEA56DD40359DEBEDFE1D82975A639312874B391A21 -85DE652AAE18A355DC023929326D569502E386D7196CEFBEF996BB20D31EED2F -020817A2E55177612E8E20F504AA8A116AA3280BD76D2FC1D1B3CDFE7A63AC7B -890F7ADDCC05BC6D28BB3D86EA63FB4AE285B7F6429D6FC7FF3F85ED1AE216A5 -A840ADB17924B70EB010A1B537795F45EE331A4A4F3D4F30113108694B3FD220 -E9CE77DF8F0A4839343965B61F0866E973491ED2D76BCFECF15AE8EE62D50665 -D57878EC94F6E269ECEAC001EDFC673A1732C8AF0CE42B94C8870638F83610BE -D6FBC69726D9C3E2E71B6B836BC70B02A2B41359ADB8DC5585E2599C60D7E1F5 -3D6C1F27FB1CC35A61501381A1D3DF7E0AB931F3892ABE3A584A8DE8CD3E0917 -912FF78A47F90CE13B3280E0F91216D1B7EE5F3AA24FA9207A86E2351D8D8626 -B1F123A86F8EA842ECFCCFB4F6ACE989AFC9A0AA4D3E39E9BA19417D1F0FC74D -35C1C88D1AAE9EDE043DADB33B66A32558D9E1E37FF6FB077E8A5C9C6465FDE9 -DC53622D635126EB90732ED3873F433FC95821B19A4CD2342CC6809CF0FAE72A -6BC83EDE3CE3FBB845F602E4B358E4738937F3E15680C5F7EE4F4280D517C40B -A9950B4867AD2FCB57C426018192B690F1B1D574FECCE921C4E3DB7B57C17A13 -108CFEF2CCBA0F94516148C7B4AE5BD02B64D45C5861461B773F5C4D9FC64C5C -8D0841152EAE28985696DEA6B6FD2F9B5DF46E6D775F3277CE0D323FBCAB1433 -F64721B51B00349683A41FB1F261938A3F42D6FC7DDCB68CAE7B1E93B751AD24 -4BF04224EFCF424A37FFDD0F21820569EF48654C997FE339BCE53FBC0D74DE5C -4B46E294B38F32522BA33D70DBAE671D2FB59CDBA1F5FE0D6D1930BE8DC2FC85 -80B09E6D83FBAACF1E1289533F99494C34103FFA7210B82EAC860AAB77DFD1A9 -065A62DC723DD342A26F70C70AB2E033DEAC95850170C2AACFBEF3C99D1E3C2F -66CC4F8A3B3F56DE1792C359FC7F2401DBD8F04700603B18D8F943DF621D3DA5 -5A9CCE08E8757B0E8732D02F5CA4D524A5B9B66D29318D4E2006BCA423293003 -E6049946206530D449453ADFAA33705867A886C6FC93C24D3770903D4B3D8230 -40AD7502C894134717BB0346967323D0C9DE2C2954D97634A193DE37039832C0 -EB1A2F980FC4FEB25565D1F0C0DB72F430875FED5685E50CEA95B052102FC8D3 -76E89680DAD2C79664AF106E7C245E5F8DEB8346CF7C10FDEE86F174DF0257E6 -D023B3575348936A1333511E7C994D6E82D1A132E787C53A51D3930583D04352 -FABA8FC8C4B15360C82452A0CFC6377A655915A97BD9DFAB8EB73F25EC57BE1D -353BA61CDC6073D856061C4A1E96EB04A02DF5FE587B16BC4719E5EFB0CBE4AB -D544A70A628BA3F7234B1AB1D084D489402EE069356F78A0BA762BCDF40D6BA1 -25BF644A5B4C28B92FFCFE73CBAE62A9A4EFCC023F44A8589603F7D481B6D4CC -F77A30FDD235ACEDD098AD3F45F3EF6442FAE3CFADAB46277596EDCC636DCB79 -0FA095A118562B43DBE9AC776B7581696848F72F97DC5030CAF613B8B4AF1806 -71D3E6F4B08E5689749A5D35A3B0093A35359B0F119BDB5135553BA6EB3E4EF1 -D8CB1DF3A7236577D97A0D54CCD83735DF3F3779FB0E2B4A0FCF0E95A41B0F44 -CE9E3BDDA160158B11EB0E99B5002EB762CBE0160783572B49768E540A886D38 -CAA3BD42F5407AE3B47C9755BF97822769FD8429191B0B96EAA2A285F17B5EBB -681B96D5C7462767A189AF4655F38CB45E00E3C4419C1EAAF44FB8ED2DB81A30 -AC6731B61494D11555CEA13E66A6ADAB22A2CC0A646EAA6154DD45A49426AEAC -FA94B17C9BED4FF7F2442D824966604405339DAF63D05322B020D8C9139B1613 -93CCAD4985408F712030CAA2532BDFA5398CF5BA89255D59461B688B9E2CA723 -F26481E5BF9E2818F2C4017BB99F53F7C526830B3EDBEFBB5C7433FB6234AA5D -C307D4C46B2A0E1EFC873C8652DC2ABA903E00D68391AA9E820648858A4307B7 -3BEEEC8ACD760EDBAF148554D8B7590F64455D888CC401E0A78F3FEC32362289 -9BB7DFF961574FE93FDB7C184D78C4DEC4CE2AC1135CD5CD9386E8789601AEEE -525F306C12E9A415F035FF3B3DE3B0F209E99B27FAB08F6781D0B20C4B490B18 -9A5E30E03C3B37089348C91E06AD30C909110D1E4E91CA71CF1F342AC7658923 -774AD1FD146E7A7ADB72FC21122FCF0BE4D777B77F0CB75A531BCCF4C82780A9 -40E9D79D0C59D42B960DCEADA210ACB91AC6F26F06566B46FC5265F7E1872B81 -6A7080C85F92080C1DC165054805A8389F3DBB46497AA7617E64FBBBA18875AC -8125A8AEDFAA236C9086DE8BDB62BB4C3D99CA4081538AF721365CC5AA263792 -89B81E3735BE530DD2D30E3B2495B6DC1EE88CA439F600645283EE22A07AED2A -5F46750F9F0236CF6D187BED72D26EFDB705C51425BC037DFC2FD52A7DDD492C -5060C9D6EA8509FD4D220E2FB48818E83C2E4F2FAF0C6D8D6682D086D24C8E41 -B5F95C100B05C1CED23E0855D1F231EC22E362A2AD1468E5FA0157607E3AAAD7 -648F5F15877AE3D8E5850FCEEF564CFEE16FAA68D1EAE27D8878FAAB2AF8B2A8 -14A2D354DC87AC410FF57A34C02A46D8404D6E2E2111407481608B1F8C8A72FB -EB141DB7271D8A1BBF334ED6D162669EA739EC12BD411E3B8EE4846AF72D57CE -0594D3E65F616FA25F3774A8485EE3B4C9CCF3C322CEB29C13F780487976E13B -C90DAFBB61223611CC54B8B7C9D9B6EB414A64C493AA522819574A18AA6AE14A -C57649B6F2C67E417B676A8BDC064E6A1294B149578BF2715E3F69922CE07727 -65BECCADB22EB84723276D8F56B00F80500380E6B58BC80B162DD14A3A7A2E78 -22A224B429CD3FD1BAE30A02905C8BDD9EF527363E4B2066F85F48581DDDF16B -C44B18DCD78E2BBD5512CFB9E6515C90D097893F5B07CD637AADC437EA99EEEB -32D51A945BFA0FC9019E59780356D7535F9113CC11E4A51E9EA080AAED5A3B2C -F40487946062D3C8D928DD10A21D4F5CFAF5DD05DE714E98CD6402BC06D8900B -D6EB65F87C765B8F98C715B06BD1C699FF99C3674DE316E50EB9DF624903D384 -96747FF1FBCB12F4F03557F2735DF1C432B3EC17A0410595600BA11F5489F3B3 -8476F3AA509B75D1B73C798D3594FC8959C0DF6D3809E591BBFF11DD29B33400 -A9C432477EED57A573895C84190B34CB55C1D7F5FF48132B45C614D5F7FD625D -78B570F96766B44950A9B78D03395C4E0FF7B8C5AB4389DEE5A72F14FC8054AD -C0987A2F47C276E6909011DDF6CA4B84F9CA73B6DFD508D0403673B39454C3D1 -483D2F0EE1D499AADEB6960D852F1E4D3E418D1E7BD4C5C4939A6EB1E07EE149 -C88682B6D4828365B904C0C0CFEFBF90108276DDE51AE28B1E6A40ABCAD53ED3 -27B35457A54A16199A003D688D102878C4300A5B1B6F06A307A9CD2F9AB9CB92 -1A386F3C81433CBEDE8DD27EEB3D024779CA9A4817471A0A897379B213CBA214 -9A1982F0C3B1A87A080A60AB1BA262DBF48DA00B25FD995699C6573FA2F9FABA -E6AB9DF6082D51BCB8CC15C2E5A7061D2BCD1350A5A4E0B01F876260AF1B8F4B -E0533FC918213F4922EE539B6DF94463497DE77692698A0600FBA5CF14D01A7A -556D45A9B621EA0CEAD56CE5BFD44958E76F21ED9CEA78F441AB97C85AC54FE1 -6FA07AE4B9279211EB4062EDD5AE011DC86DDF4FC3666792E2A8441BC2072483 -88771568ADFAA726AE2257AF6E8F6145E3C05EF749E95AB482DFE98BB37C5360 -688E84AACA76F4C23D4F2BD09ABC562A271EBC39BC5635D367E46B0ED1FA1786 -AEC208D2FBA8AE5CAF1240834546FC6BB9B0B21A3F57DC9ED9E66B3377786D6F -29AC283E9D72872C01E57D7994C8F438F3978C07674AD85288A9F38B83D594D1 -1204BB05C0966B47FC47554CFAFC7425FE7C3E22D34B254E62333247F14E14EF -D0991DC581F622B3F1E39571F5BC658F0B7D0ABFD107F1275D1481A29AA6D335 -9CA919597157C444B0CA9BBC7E735802C01C55351466F5492193596D29842F50 -7997D56C3B26156BF5D7A269F9D63EC9D4489EF1D4DC2442EB3D818318B52A02 -FC77D38397154C26CC4218376DA9611C55232775489BBD7CB790E1CCCBFC9E4E -E828F7E3B875C01BA9FB849CC8B6BE7B60C45594D90DF606C606EBA8763EA8D7 -BB64467EE12F9CC44EA51A46ED4BE3753DB0B0FD9976B0F008F232B0BD2BCE87 -11482F14056377FF94B5B735B572534EAC7C58D3B3C5DD804160540EE8BF5ACC -DBBAEC71483E14D587975FB851A405C34709AC155789ABE2B235238269EA7562 -F6A7C7723290262DA95066807C94226303455C9477182B6EFA012D3A5537765A -39FB91437B7DA35D487F7D0962355EA75A2CD274CE18EC931E51A2B585C21404 -F030DF6C7049B78CEEC0A4244585DEF2EABE1F1B3FF258EC2AC3153D3CDDE808 -63EC65595C958D02F42C74272EA959A3BE47D4666A4651C7C07620A4695D6DCB -5DEE73DC8A0D120160CE49542BEACFFE11CA81C8A26959E76F20BA4B311AD0CA -EFA93CC30D2328B73130248E716F5522738CD13E4BF9225E4E27E564DF3147DA -CBDD40875D2EF386E7316998E2769B46F3CD9E0910596F67FC0FA057EC305286 -A19593E6FDED00F0C3D6488CAF172B4C427C41AE05CC36841ADBD43553D1928C -99D8C98E107BD644BD3A27D5AC01796335511567611B919B70648E8B3C83B99C -663EC53D8CEA054A9A4A5E4158D761991BE23E71DD3B89B3CC21E475654656D0 -A1BD03ED9D0A3B49DA2F1BE866D98561C64CDDB4CB0FE46D534899EAB097E405 -23B039257627ED7369AB271A81376903813863CC5311517FB5998710433F92B1 -EB4F8680118D142618FA23CD217B48A19FF7C08FF1C418BD291C3156DFE05F3A -D7B2D9B1B9077BAFB45D6F4EA581F707057684A7B49B133211E4F9CC0B14889B -CA744277B353B83104C52C2C29542F00DD2A3168FCC1638F4A2AF83C442FA562 -4FD95F00B4D0BA6A2BA4122DB2B752F58D6F48345713418B0D6A9C79201BAA5B -0E8E990BEAE0D0AE6DF298A92C796495655984FAA3F01C01402A7001F323C6F6 -1CFD4EDE699944D65C8BFE8487F1BA1CB557FED5F802FC0F4B92C7579F9C76CC -359E10556B03E6A21E06F0C611CE12A251426D79CF9558E269353DB8C8205F2B -44A49B1EF548538E7FD0F715FD76CEA9CBD0761FAE4764E2347C17E27A5FDB1F -516DCEE0BA18E3A4AB63F9E6D93EFB5DC2882DED4C029D0DE8D2B2B4A79F3773 -4D80D6B1A5444235C7D4518AA6F46D47A5EADDA22435BF343E63C165B7CC2BA3 -C9EBE5E386A7B834F373B2B99A0C9F4D68FFBF42BFEE505B36617BA9A1F1F6D0 -358AAF114C66DB99C5FA45C3258ADF48184E281FE7D1DA4720D795364551DAC3 -B31E5B23497B97C4BFAC8FC8CA524C60AB09E151CD4967B61DBE5A16BB5CC1CC -DD5807DDD7368CA76C5029710F3422F426461EF83A19F5A885F55B564096F87F -A3D461F06DD10E7B2084A078893E491F5C489F32F3A41267A6D3656A71502AFD -02CB1D70CE30020B0F0724C756870F11933E95CF4AA3F875E079E940816FF079 -66575DC4E72F127D604FE78261311D79A8B381A935E8B908D82DF1A4EFFAD3F2 -0FAA17A830AD79D2F639DCF6738147663460DB7CA4C269C6CD7C71FE8460FC79 -3F761C9907D474690AA710193771122E64AD83A4A388D4A0C0FB22C803FB9368 -3FCB76183C657A4FD481D8706055E63173F15206537B39081824A73F789FA011 -EA5071CD28F79ADE5D20E5174CB1ADD3920D8BBD78BC2D09F9AA416E9DBEF683 -73A0CC352F82633DE7496E96606FA199C8DC31B99B313969437B7F3AF25268FE -BFB2B56A992D5654B4CFD5CDC2D3501F249EC5A85DEC83470D731A7ED2509F60 -4FC9C83FE75E8411D1D07D2B114BB429D2A6B9CCBE50436AAA205526DD17B84C -F0CC78796DCEC2761474ECFA76E4E3852ED70B06DEC658A9C3AD1C125A071605 -96067A1DF5DF8A9F7F056FF1231D0AA2E95117B17010731AEBA93D4D7DF57FCF -4866DCD666C6A8D7C0FBA7A26510F71C3319E6302C0AA84FC4BAE7DA01CAE46A -DDEC498155D0FF05520CA24FC938DAD559E1E542D372066268939118AA873780 -43077E8CEDBB3F75CB0EE2869F7CB37FC6D3C751BF88E5559CA83E6E7B65FDC0 -CC457BB49707EEE55BEDD6EB60B140BA15D04123B56EB7B621876E80E50776D8 -210C19F1FCFEE5CE30BF59618F521E49638136CA4DBCC170E0738CA1228A294C -E6E07BD48D0DF5A687068A8DEA3E33FC4EDEFEEABBDEA80B3972534F55D1FDEA -72500434A4B5754C9F596146721D6833E525801AB3FA78126FB5192AC1D232C1 -7B2B94F16E6EAB19711C17C4EB627020E9250017A8DE2427FC8BA38DD7E740F6 -936397E2CC7E3597A343DBC33FEDF2A24828C29AE68511CF49877EEE6E853602 -B5E99AD548A583EEB56E85D09331D36F4652D2572F43A27E74AD8A8CE990362A -02C7DA4FCD6EB4EF6D0018077B55CB93637EBD4F18101E3755CA37491073A667 -9DB37B522743A3660FBA9B779C06C52AF2668656F4EE8C8E3A639339C8F3244E -AF495A4A680F37985C99ABF37221F2871CEF680F64F30240484DBF5E1AF6AA52 -17C887F7FDFC8961AEFDE13105B62EEC543F4CD358F8F33AE445CF5B95F9F9DC -3B8210BAC628F31843D5856208C5BE9A4B13BA98ACB8DBB09759452DE607CB87 -CAEDCD11DC6A8FE96B70FB8F9AD980CD6A63583A2B85291C4D33B906ED644750 -6CB640455634138CE7E10488AAA23F2A22FF22E8FFF7B5ABB7FF11FE0A72CC7D -05DDD3F2DC7110F1BBA0C4B3A590F30870EF24715D546E72ECEAC334F0BDCE54 -984E72C5729B9C821F5654B46A685C61B2CFB96997D0ECE652C982DB8AF312D6 -41631C00A9ACC654BBAB71176D0952C3F813C05F68CB50602EB55E8100BFFAE3 -816BC42A7F6B94689CDF6D4763A6C79B5AFEC2B3175D80032FA6BF64490555DF -B82663B63550A93DA1D4494731674FBBBE1A5A37E8A86F2A2931DEE11C308EFC -D98E1A9988EEE2F1FC94FA0E5B071D959F1B301BCACA0851DA6913915DDC3DE7 -E5BB775F00F4E1FC1A812163477E7D2F68BA82B0715789BEB007881CC35FEFE8 -EE67DBA578996AAFD81591804309DEB6847352A17959DEFC701C76F6051DD9BC -68AB1AE8A6B5AD4CBC156B09FBB67C6BFE32FA2AB7EF49ED41C270720255CAC6 -2949BE818E2EEC409BBB22A52FA3A5556D1B1ED63330CD6133EF1B6BC2F01A0F -E4D7C547B62436FFC74913F474252159D7E9705EA9D9EBA5DFF3802E21668556 -B4D3956E1DB442A01FEB0F1F958E1EBBEABDA84E2CD2DCC7A781EB793E887F9D -9528003BE57B9D0C6E0F9F623626863A9FE395F3C3DE44DFE57C3CE2C067F0BB -3002B69AA2826EECC6950D2C36A8EB66E7B9CA110B706C08F593299154B611D5 -27119D7EA0B1D1F5AE79558A8255A5F5BB892061E29E0E3553DA75B566131840 -7C8A3B5D8CC9DB76E152C1E06A398DC2BAA956FCF82D5E8B702EBA091D125F5D -8ADD2B8266CFAC300F6831A02083ABD68C7E449F4AFF8DBF73CC5781F0EE5CAE -67E946EA63F43852D0C875F717D9966CEE2FA4E931F5A090896A8CC9A0DDCDAD -EB6B27B8BAD01780001BA7C466C1A8DAC7C6D767AF3AD0C85121384E1B1761C8 -0BBC6CB1E4B875125AE04622A935B7411A5B5D1B9B9DED46E4C28F3F35B3597D -88637425CFE3A22BBF5A94524D9A4F112F8392009699E1AA176970BE0C1E25C8 -5F09CDFE67512BF9F91C4ECA2F22C624B4F572E3749A143AF1EAB237688996CE -BB7788AEC6AFD1C1A605B32EC26375A4322E70653C3ED3F65173D555010839C7 -B20A8C71DC11A993ABAC030FE3E6E7346D68F49F4C5A8A66A48DC774B68B8E8F -0B523A4AF55F744C071004F5A72AB853E69A5477384F38AE4AA9528B3399AB44 -4F66DB853C51A4686110856B8B9F02F6F1A279CADDE7A385E2C2CFC2A5955130 -520E8BFF0AA57A0A0208D2B5FBE83E995E6F87ADBF20BFC44B67CFCD1E8D0738 -70AE648FC8617C617D0A3A8BF9C2DFCB8A7F76245E6A85F2C585A47BAA18E290 -97765571A8E33F2DCE11149A0993B55A1E4A594C63F6809D127F5A6B3DE76DB4 -73161ADD60B285D61074FBC5BC7C0198CF9F47C1CD808C5876958019BCA98698 -36F8FC82ACB0AAA140822C9806A90479CF96FC1E0F48B0141C9BA316BA9A37CE -0D974D7198719DED14321452716A4A5F58D9C062006D4293B9BB7009FCCD7D2B -9385FF21E491125A93760D3026C9BAAA30675AD381FAF9B5C94A1D775E79C625 -DCAC212D128AA7A9BEBE45916676DEAB72A723FC07AC0EB3A6D6739FDB557500 -21E884BED9DD3B1E14F35F3E675DCD79A97FE879EAF2CABE378A589BF7905632 -A3360E619D9283474B82CC111BA2C9167697B1D4C023B71CDE8C9025231217AC -55FCCD7FC30C3AA6F3578BF458D221A790F5972C37460424AE4FD5D33248BB08 -7AB6DBBDF11A40FD3715D9C53F235C05E65C2DD98B307E3B1218EEC73BECD906 -D52627418FFFC96B1BD910295F31CE34ACEB1E51434F30760B69448C6C75306E -FFABDC23B7C9990E73006E9FD2EFA0C1183E1E6E7C2692078B4F1DFAD3E4D8B4 -B4F023657048DD4443582BF6DDABDB291B07B0B5DA07C2AF5521DC722BA12378 -928711696D580DD8C8D2034638F8BB67AD8FDC71C04A895777BF932D4E596DFE -9F25E6E3299BD24C2B8388B5917DEDD3081ECFE313F3BFEB0ED5F65C95EDD634 -7B6DE4A5A1378C50D111D34A6E3F2DC53CE75DA7A87F9FBCBE5AB72291B06737 -BB811A7EF4BEF0AC239B904C9B318AFECE34F77FFD4E3E043A99CF453CA7E6B0 -30C201D79784ACA38CEF30D1B325B87844E1DC4D381D76DE7274E49F72E46B62 -4A8630192F0425BD62EED6B68EFCCB26FD70E2FB5D1BA3B4C1B640A4761687DC -8EA250E1A568B7F8B18025BDC0583EA29BB05D20A1BB21CB3C602B507EF218FE -9786589F4F23F1FC8ECD2359241A653FE2BC9A3CBAFBED3454D7233AC8635CAB -996E097E5FA50E9E101AF1BE239AE191691B624FD1A8B2F827364CADA8EEAF05 -85A1DC83BFFB33F8077C91B0FA0BDDF54B603600EC5D48CCAEA31D33FDFEBB8A -CD91A2F7CFE49FFE01FD3C4DF52E78488912FF5024F2B71DD825DD94D7B2844C -E2E1A46E5070BB757A38BAD72D6F46205CAB99A22E40BCFDA440A47C6F9E9CBE -71CD164612E76779E1D56684D94C2CBCAC82890E883617B2B47803EDABAFE0EC -3596591C2F140F2F3653D4C116F6CA830763E5B166CFDC2B0632729F4A2AFDD3 -AD61FF39169761362AB40FB9C34A61D705CF136C13669F5BF98D4F02CA1D16E9 -F23A0FCE2C28223E8DF6B7AA53E7B9F839BC6CD6556E091CD068D6122F659CE0 -15AEBB346D913BA3EEA0722AC80FF5D0EF1C65A806267D25DDF19A11AC50BFE0 -CF00EF1862F3B157D56450FA2EA140D9E0645EA319A5464B226DF9BF2E6BD654 -22413F44 +6501DA7E6D96E227068E993DBB0072F037CA411E41C37AAA0DC3F94CEBD5EB01 +A96A178660A7725E958C0974D48C581A3D76B9970DC30562015DD95BDA05DD80 +8A322F2343DE6DA1A356A8E42F168ABF8184BFAB830193F88DBA4BA25A3D4588 +2AC7F7EDEB9D60A94A7B8B1D6421055A0CA89D8B618F05E8547845B0F83E46E3 +E59182BD44A55314C6E739E5CFB8C373E9397C1990815935F52AEEF6709DF439 +4BC4DAF1AED8218393A34AAEFC437F352CA563735BB02CB67FBF3FEAA4A1F00E +CFEB4C4C9B56A54B2E7C2FE9F5A9BEA88CC07ED0381F6F23A141E342C2298C2A +315171CB19E9362E41F9AE7BCB022FABC88F558BCD2F040C0809E309F6431B55 +899DE1B38263DEA4FA32F3E07AC9EA2656D71E0438175D4F3AB892AADB4C33E4 +B77E6F65FE51C46E4CF04B2E915B3DA4647F24A4E83894D176FA801D64BA3BCA +2B5047F86262B3A41D1023F05C3C43C709E3775C54699713918126FB655740DD +4EC7ED19EC95CC51FAA0421464FDA5BF49B91113CE6A69B2CB51D628256C4409 +3FF8919B88C3A8C670D0931E51C905EF1A36BFE80D8F46A6076B6D217DE80E08 +370547ED81E6496AD306523D35CA327400BA83AE14DF199A9FAEB24A449DF093 +B81F71EBEE92C13F0804EE583E9C2FDA2F33F1EB7C56F233EACF120890BD8CB5 +5D9E3940B09D8C0635EC5E96DE6992AD9141CE948F209BD807F2FC3A39AD2966 +69B1D8114F2DFF128ADF6C071783DA7A0D59E43D06AA8033629F642C52D9D9DF +01704CAA170BDC319B6218D34BC420CD5BED93813D7BD2C3468A2BF8C50706D7 +D89E43F3A78C34F3EB75FF8DC5382777AC1A50C609E34AA9C591B7ED0C1EDE17 +93ED8FD224F93CDA521A5BCB0C0CA303C5F32F8CBCB99602AE9A8BD0C97EF528 +85B48CB979A40D5863156723DFEAED9ED99A0B4C530395424CB7E97870A49BAC +797E8FAF7F1D17926D16452ED14042186F0282C17925C73825A7CDD10354446E +703A6AB25EAAA5E6E2BA1888AA1DF741465B8121643EF0556DAFF814A6605529 +EB893585E9AB51BA25832F112345ADC371FE26E0D81EB7D8075504D2CD256F84 +87FE62C2FB20A35B7AA284F4A75860BD6FDF5DE1D514D76AA38A105D95958BA4 +FA7775AB2D7166138F82BBE5286342461DAE3B99FF3AC98216970E12643E374D +61C040FAC7A2B9B667989F54007F582F10071A900285ECE4474B1CC801F3E583 +AAFDDFDED192C9A71E4842028D2DCA0D61D5E2FDE2F435B0BB603FDA85BE2DED +59D26A295B540FFD469C53D4179645AFC774977CDA828ED73C6C30885A1C605B +673B857F5A177883B87F1B655A1BE9A7188D5CFCDF566620E4D4B10500411469 +FE33373C4327DF53B351962C95041F93B87B8F4D4CB8AE11CFFB99413C05A726 +1C7E96067793C11457D63D8A09053199E19CAFD80E13FB48C66A22D35C424C58 +75F7BD233DB778BFD16BA381561111D04B060F70352B09051EE19B7C119A0F97 +B9DD32170B7D8D0D8356AB3CC68C5EB228672B80D022DFD50F3AE3DA036E7647 +92EEC92F52794BDA399273B92FD3DC0D39C3BBB0953711F2299A3117C65D56F9 +3CB71DF279140EEFD9091F4BDCF076B2AD664F9333D59B76B4FDFA73A079D297 +B730181A92C05CE01C0C599610A18205DB0988A6AF16EAFBDAB1ECAEA4127015 +04969BDE272B30429CB8B7E4B6A2AED123DAFACDA0C5ED7E5CD5C45AFF4F0502 +8A8DB69A4034D61A209A3226444D17617A53A5C5937BB301A303B455822F57EE +4094AFD2CD50450A27FA31F7778E13EABE099712472EA09D809B50B1E39E632F +980299EBC64C448E73293DB8573D475CA762F482920C677FC3D57702863876A7 +4AC48E55CB9AA28F85A7596CD0895BA503BF320D6CAD1DE515B0F50E25225F1B +676EEAE7B971A90D67B50498D95F03E10531B6DD31C10F206E2ABA357274FDD3 +8EB1DF79587BF5C3ED4754E716D14F09401CE7889D68F5F155BB5F1B47EDD455 +17FA649B4895E5D16FED1FC0F5C7DBB5B62AC4CB22B633970D034C7B4C35FE88 +5C32C06039AFDF490F8A55EC01A0ECF7C265970B945C13FA1C9A03A8860A6777 +C03DCFC96D7CF946BFABD32B34FD4736EED3F722424B8B09375774F2EBFDA7D4 +8010CEE32DB8CFCA60EA7F81AEB069865DB0CA52E2BE8B3B39DC0FD8EA4FE9CD +CDB33BD5A1F17DA91E400913C843DD22243578885CF78E6B912ABB54B8D5ABA8 +8937594B6D30009E14DE5540B58C4B25298717F05AAB337FC4D3DE197892471D +603F439B2E828B86A862931E0F8D4A781EE237AAE868FD784515186FB63B9DF0 +4A5F050BDD09307933F6373E9E27BFD8007A8751DD895192ECB25BFDE2797A19 +ECE4F9C91781B61209CF7EBF0AC33D7C72123968CE75293945B7402ED047C671 +3BAA373AC1B38509DE0E323166B3F8F849A733B7839DDBB7CE0AF0789B7C4F2B +87FCF4F1AC954F2787EE85EB440802CE36A7FFB10F027627287F904FB000BE19 +4ADA561EFD891EF51A950CA7E9811BCA4745D883DCFDEA38FC60ABE9CA4086CF +568A46AAE743ABF6F53BBC30EF51E7DA96260BF0B6DAFDDF69C7E507B1B31270 +05C424E0D8B6C938C976538FD4B7701E62706790FB728D8A13A0779A2DDF5CD8 +E0E8052ED21E34756F24BBA885C77382CBFD8090D2075DFB2418D2C2C5CDEDB2 +C9005B873107E8519D39C7C260CCF75B5AFE7B2779DDA641690AA967A4F11F12 +210E6D9BBC202A94A8FF65DA67EC744FF28D3A1579216AF5FFBF92BC56D342E7 +B4FA914C61BD9358B7F1F83BED66E590DFA6841D2990EFBE494CD3C1F2F589CB +4E3DE91B640AE6BA8C31550FDE105ABFF24F6CFDB867037FC36161976CDEF26F +EA38D9DFE16B593794A699CAAEE83356E610FC25B7F5454CFA7F45982DC2F042 +835CAE09C26BF53BCB0EA064F65C2C0D8F83C9E0C19519FFEE2805599BB9F9BF +9306C2A3E00159E19C0B883DB66840E31E91EDC6FF2B1EDE54260D867F0CD6A4 +3369556577033996D69B070CE555DA9493493A0508052FAD86369DF8ED9FF8AE +C733BBE5723D6CAC3E6260B7725B927B45748E35D037E796259C844DA2F7B967 +106E6F2BE133F45E9F1BDFD3139184BF4C9E24E920AA9E947F0BC666CA7EE082 +BEE42F27CED5FEE8511B1006295651FC998BC9204A93B9B05575D666782AC90D +B4349EFCAB94992D6092BBC261BB0876BD71AE0F1DFB99AA1A572AED3E86343F +56A0B62EF2676D30E627B5826ABC2AC921504F022A2BC3CFD1E42F3331143B99 +BDB7BBB5D9ACDC181DAA15E59E29A9DD48501283364EA7862F2FC902A0C586BC +FF32308C238EF2A9F637AC8AA2C8167B9ECE5EF665CE1494C95F3A198A57B764 +3DD6FE753E48D43E58986F9E66D3186679B253EA5237E1D10708F4C171060EE7 +7FC8FC6E34524B6B5804B18992C36248BAF8A692B04C305CC3FD0CF524848E06 +ED67CAF12085D898C707294D25C9996D4E4B851E76923B5D78A68F757849A713 +A1B72F171AADE5AB4AD235A8F1EC6C2D0B2058C93DDB19D3E623FA9D7662659C +4E81843527D2512FA0869AEF44CDA7B85B98D8F95DD1DFA848AC253EB48AD0BD +FEA1FF109098AE1548A43DEE93CEE415CAB53BFAF9F85333A84E7FAB03C8B5AF +282BCFC22D86BE1AA323B5D36482E2D23C740CBE1F3D5DD92DC2FB23AC3C237F +39A76455166BB0D3F37B050EA060F71EAF126AA8A0777F58254A863BC1347CD9 +9109F39560686B9404C79649B5CF06C10FEAFC188814588F0BBBDB8BE34A8CF0 +0459E57AFEDB1CC8F30B8FBD8EB3FCDDF3251A9847646E4BEF93108845E9E13A +134F1EF08EC68AC7236D1D96C834373EF1D32E48F2EA1AFB0C1803D8B4613CC4 +878FF4C297690AE6298F1B969D16C57CBE2977D0C0846E65B11AE15A11A6AC03 +842F8BF2E84CF4E2D71D2B3D22E06357885E820FB8791A4BA33B53A18C358AF9 +AD0DE0906ACDD6A10CC91ADE948E61E7108EC93998FF0D4A4DCEE890E9774EA4 +3DFC7CC77575B42CC26514E16A67940A2EEC3BD222D1FC141AB058F1DFD0F875 +0733820532814BC4F34C0F873689FAAFFE6BA1912643BF484D3174626418FA40 +9D1C8A2C05F628F48D52BBC607D1011AFD8AEA6DC7D76EB47EFDD3390D886B97 +00DF41633F09338EE6682785B441557C132D21847A049A067F617AA688516DF2 +5B54FA583D4C50C2A30E0F06259F48BF184D88C57DB17E35AC41B4865F6BFE88 +DCA988FD25577D1819C81D5FA76F9A4DE8BE7A7D35879640A29DC4138291C9B9 +485BF8AE75EF62089BE6B521BE4FE2D230EB790BCE05DD513F699FEE050D0072 +DFD83C883DF9F385F40396F0C8760DFD88BA6D4E9101A85E995BA2EF2F2B3BF0 +C232E917C1E091382A8ADD32E7B7C94D60566D7211ADCE8A1C125BB27A3ADC82 +3707109BDF07AF9131C9F976D24B67E129996665970735DA8ED064D6B5361E22 +9EFD3AFA43C62347D68FDC649E55A3174F69BC472F34B66310FB59BF0FA647E5 +F8B8D2F2D88326FC38FFFF5DC6A6932F223739418C7B82CBC7915D4302C0C249 +9328BB37B600C55AA299A6D0EE3EB846E58439E6C6FE23498C1442CF41CA988C +65DC02974588B2C9513A81AEF7A3586C0451790609669FBB18A5C920B05AC2CE +87044BD4E639EDBD9BCB1833144207DC3DD30CD60B9EB3EA73803290EED299BA +922130BFAD6ED301B4E16D143C72CDD37A16ED7BB8E8D3E40CDC278029344811 +10F74AECFA2BE68280DAF55A065E3C0643D0115D9550C848852DAE6A1DF9B4DE +56D74B54F3959FD7DF6711B965C2743DC74EFD4811DE703418F33D2FAF724A5F +539842D5286E0EF9174BF954173D63C3630199065468CBA36B6F779F200868E4 +068C31E607B3087B7285D7167D8355B45DF8C44D79C0929084D457E01B8461FC +193A7CD7667806E40FEE19FECF5E19B1F5F5545DCABD10FA259339F63E6A167D +4A1F8075DA2AAAD2A3E51D6FF02140AEC6C45DAAB2C97965227C7E95C385B681 +84B3790CD0CEE785B361E6232299C4A4745A6377125433278BAC06E74AE1A98E +5BE9FD43C889190EB9493C72590DCA5032CD6C22029E196C9154CE7F5B6D8007 +7B2BA62A227340959165AB5751B37C6C60D4465E518CF370624758E6841B6B6A +A04099AAE39C6497BFE204C2AF0BA3F5289D599926CD04D3253210F815FD1458 +34BB2DA7FB5AA1AC81AD585F6838E2A73F3A1388AD296F1560E930093E5BE7A5 +D4713D9CE925EC57EBA2778C72B3AFEB45395ACFAE91A009246D72A6A4B39A5B +E22C0C70B97E638EBA4DEACC3DFBD82D9209EF822E3B0AB674717427101E3ED2 +79739F5ABC138797DC2E4ACF668D2F0863002B35A79BA763055DADDE84F2D839 +317078FFE6398606B8FB672D2EA02E92EBCDDBC118566FAE03FA8A32B3DE9595 +B3FF7743F6EE5C6175DCFFA8CC9F56ACB5B04CB37D6DF6B9F4A355CD50827052 +96BB7DA2BAD9F6F04E1AABC7544D6A68513D000C644788C99D520AAB7310A492 +5D580B7920B2E2B14EC4C581498F3B7EC8661E91DF1F6F2104561A104C8558E2 +B0F6E87D66A56519F236A26A13AD8FD90B0A8CB55BA3028313602DF6B1D00F6A +9E4D97A94B589E22D4973780AD6CA1C3956D46E412166D1442D90E9AC1842E22 +0F5555964F4E5D2F618678E62CB41DDE0DFA950E98A3EF97E5B581B40A91EB18 +6378A4E45ADB70A0ED96EFE4E05DBA634BCCAB882B88D88D98A5F35CC31EFD7C +7787852F42A70AD273641D3AD16B09FA5A231CDE79F2F91F2603BC8857AA6D79 +2B6F288A5976A136465BDCDB5018D816F7A8A666E7807D60C8EA4053E6AA9441 +63037308DBC2D4A4DFF587A9069DD592A44ED61BDAC26EB68E210FDD1EFB4890 +407DE1F1D9B082E97C98564C5653819A436C93F4D64643EC48CDD17A1EF538C2 +035A7DB475C5AA74620B67B7CCBC1DC5895726518F11E6D460CE3F57D0526F46 +9083D44757BBE88124933119657D4C897F880D18FF1AAC79D2C7FDEB49847562 +2E393BFDDBE41A1A7A03CABD290119252A6EF466C944FCE338CB9B82DD845FEB +079BB9070A998444E55FE8308001575E8BACB9E5C6CDB5B53E7DA92123317643 +37C51A56C412130ACAAE62562FDA9E9DA4A9F9D271DB37DD509FA07A4ACA2400 +B8DE73709A139A13EF126214E9DBF9A4566BEE58EAB53447E26CBF768FD356E3 +9724D59A78A43DFFB6A2ABC69F6182FA113A14515324B91214E1416633466F8E +A4B3727AF23F0F14870DE1AE16FC043D3D968B7B299BDECA7817A40F0E2E78E9 +5C43183FAD64CA9A60E85DA7A28C28D01EBDDFA8121D35A2DCA506914EAC71DE +798033DC3565CB37F3442017924378579923791D7B72C0C0A11532AEA32FA391 +2B5C4C885AC6FE9B91F5CAF83E9E600F28DE70314482AFFE5935B3C72D71CAB0 +3AA351301FCA3DEAA98A932ED8C6936AE3E3D2457A3093E26BF4E96BBD5392EE +BB840578A83745AE065F6A0BC2933F6E2953831BF811716FF33BB782BC332FA3 +39FBAAFE706A8996BBEF8EFE393F465F51E37C929F23F37D9E638975587E3EEE +AE9CD6156AB1DFB7BDACC106C7E5A89D2E70EAAB554298AF95727C14160F266B +2D095D617D88A4A0E1701B395C77D818F9FEA1A1D1D2B42C436C3E2F2BE4E74A +07FE36F91DE5FCD20BDD8645EF2B743D298FC31F1475BAF77D7679AF2E7BE41A +12C91F0A76F8DA934259B086E32F0A6D1471235EF47032023DFC7861BFAF9CC1 +47B86E3A89DAC6DFB5E343457691EB91047420CFD9EBB50F9934919D6D53E474 +CACB8F84BCEE2B8380DD12CB215F9CE78145398DF05BFE761C7607BC415AE6EF +223DCAD36B497130C0CCA8145CA64CDA1356EDDCD06156AF94317654D7C001D3 +04D83B33F73D96F908AA7DE0D21FD2297B80CD06DF4D7CEF3B65A84DE9FF4ECF +765A57630CB3184C872384B75165F66080532E0F7EC2463F3E0CFD900B4E79EA +41B91E1B3AA57A7DB33318678E11315DDFB9A4DB5B143FC0E0ABE13D969BB67B +E53C7B7AB0FF1B7E5CE0A06267F2ECCE17148C818933FF668171225F0B39AC86 +1CAB48EE4CA035A7DB31B5D4F8C8956962A58F844B28D747FDEF15924E09BD15 +5645375D73EFA99B259FF63E45269620129568EE747B1CB4C23BCA33A83F32B8 +63CCCD548084048C98117802B8F551924CC5EC133E5EA44573C25DB6DAB36922 +CC2AD25CECE593D271F3E37CCF2AE7DB3B535E7BCB7D97A9152E716B814DD8EA +5EAD9DC3152E1CA45347EFA49123370BC63280B2BC8F876C30C0AF311391497E +DF3EBBD0A03EA45751E6FD3F4AD7AC53EBD44B5A358503AEFFBBECCEB4BE8B81 +59CD2F9E89114B7E24FC9E1CF6EF89E834845A4BF1B27B4ECCD2CCD44796A19E +F1553F7EA8D768601A5A6B30109666F58371A65D8FEF0408158A44859EB0B6ED +DFE757052C9D33B45CE337CC1EEF39B5FBABE33BAD1B0C69092C87D182C6C5EC +6ABD2E222767E00CCF03E54EF045847B127087CA677D00915A426407B5B93AD2 +2E51463E9729F07D46B238E27C5A0A9E5AE2F631550E6B60147A8290869C674B +4B3C095699BFD65AAB2882170684DCFB1C90529A25F82478E0239DE4EE4A54BF +BC454878C9857FD9B5DDB6EE0D2C2BCF6456143536B705DA09673EBD03B9ADAA +054D6A2204A9EDAC064F121389AF1ADE7B9167B138599A4A55A923734BC5ABF4 +D0BDB70C84C92167C644378804BE2917D7204F7C47721DDCF46E55E68CD2EC91 +C15EA489231DCB69BCEFB6EBAF2B4C65645BD215A630CD48DD984DFDDE5C5C13 +B81022A8A725BB0B45D863903D4595803A7925E4927341839CE9C5619A8FF7AE +CB39BE83EB7B57EA2A65432239290E3B9B2CFC8D59CAD0D3698FC23D141503B7 +5CE4DBB887FE4D893D5F6FD628731D6FCB5DECAA526743CE8D3FDBF619EC9E0F +4C25F966AC866A034D005A27EDCE79E5DF60D0F2CBC5C93A00733843B3D4D4D0 +76F164AEB0C63C8401AC3A6CA9A3AF25A333C20F6D0876952F9390102A8739BB +2B9AAD8F04F15330C312E6814A770855012BEB08EB5EE469ED24476159365525 +D45A68E61EA527FBE6D76727DAB64690BF27613E1EC2D3D69722D857DF1BBBE3 +D0D595C4AA3EC3394490CAC2EC77EE8C7D7C4D4974169E0A8F15D8F8C81F6D47 +82B63A25C7221F63D20150DF30ED6EB45B30014C2B2E8BBF23E435346F161FA2 +ABA637F52FBE19102BA15C18CCBDB4D79792BAED077FBD70FD2069C4CAF53B47 +C31F58455C4E17DD7C56BED2F0B9C9D4B455F5441558C87EA7708DB5233E6417 +5A94D25F87EB2932AEFC90350E93740148560C067F4D6F7CDC694F1D653BA412 +20AF92D77B89E551D610AF180A5CCD5A0A577AC96045321EE0FB235C90489F2F +D15518E6F8B4BADDA470AF9731A8A930D8DC546BA600F58F5545FEF8C9797456 +852267383374A36A1E909EC7AAEDA0BC206C0C034BBB4ED36CEDDFA5FA3BFE26 +AEAA22F569EC4E7247ADE27198F0865C13926DF0F0A23FCF361991F0245A7AD4 +33E41F6669A60FEB729C59395363668919F7A5164B4A03BFF647E6ECD6C1E8DC +B97AE44ECF925E7B00282072A935F37BD8612A6EB1D81A8FBA28BFC3C373AD1E +CF6372568925D51BD890C45EC471965EC641C81A37352E25C952299A31603907 +C3EA9D6CF0C0D99FDED1EF2740341BF97237D7F0B6FC85B51D51116C64EBBA4B +48214E105EB1D7C2D7E2C13EF990C334DD9E40A27F516F549E7178FD671F2F7A +6894A124D1CE05E0D561D4A4C636BDFDB2A83AB337FABCEB0B9C3E239067A6CD +D75C90E7D99CCC6C24B62012B015364EB3BCA39841E845E14A53C5299C0E73EE +235DDC7B7EBE8588A5C83E4A5B25E91E38F2F9631A3638CC18E476121652112C +3E8C6CBC468E5083779D1E8734F40AEC41D2157482E8D369C838B6991F14C76E +F54D18DB6D01070C15D5F1C0218040D28BE671E2956CE483C095AE17ED6A3BE7 +60D02A685B023A6DF7630C81DC58572DCEF314F60F85E34254465C9D621B18C3 +A5AAD41F4A1321CC87E7A979B379923FB4EF743F5860BCF237BF9BE665E51052 +78F3379C1D229092636D728D38BF61DD496DC30BC6B5D0D7ABB10E476BEE2658 +F68D8491C33F3E8398C16FFBBC03300E54843713B046F46C2D1BB10936F53338 +8A097DB1DD4290E4176722C6C8E035248A7484F42225108E040D7086EC124A9A +4C422762A70E311F64FC9A67FDAA8BB840089ABDEBFF0185CBFC30DCB1B8DA4D +EDCD6914ACA3A8BEF61D29B79D01AECE0B9DA1AB0973519D3BF016B0CC71DB34 +973E9D05B1B8DC14059327BC0A168466B627292F82CEFD4E5B5530C44344273F +BFB13908BB0C044B54FCA3087E6CE1CEA1ECDEB86B82DF4EFD5166C87A8E6BF6 +4FFDEA50E04E1371BE05539C606058473774A70A819733099FF948B425799AAF +13EA9E96C5B3EAF123C52917C085DAD94FB29F592BA136C1875239AB9F5AE725 +FB3A88BBBFC6A15FC3CBDE86A1EC87B50D4AD3CD72012E958B675DD67BC7AD11 +433B0B3EE1B43505F948C40843CB8695FE0F32016F04B851C088C6FC808941BC +4419487DF70F0FEFB40A9D60D000B8C8B2866660FFD3CA07CBAC4750917B982B +DA37F3FD249EA62E7B8D78772EB2CED4FE623A004F8BF9008ABBF301C1480E8E +C38AC6552E4D4BB9BEAF497BB440F45FB166C0FE5122FB27728D93800F8BF458 +9CD3C7CBD6033DB65FF497CA4144B68E877D3D5F8B18FED19DCB91EF1501DFCD +74375F47106A80E2620FDECD8739C8EED08ECD815D942B579FB933C8AF3D7010 +028EA6D05C875A32D0AC500BD876333427F31776360598E505EE41479CA5DF84 +F0C97E990B788C5AC10C185C58F98C316957404A44F3A39222655DCD7676F89D +32392EC8521EEA12B4BCC3EB103B37281DEC3BD5CD3C874DD418C48A544B9592 +A1E82694B288FDE9259AD6B6D850AD81FC6745FE42D5357693C5C589EED661C1 +D2671A038513255E77482F18A693C52748E46CC113C0F83E0E2716326173F905 +1676350C5926671814EC8ABF15B7EA609530EA01DCAB97D9E193BD4E233245D9 +667C4C1958B006663A1C14B0FFF1571B1E1FF2010DDFF7FB81797EE9944649CF +2B688C0D3D74F4DAED743024E864C11954C504F9BAFED7F649ECB91095BBD9A1 +CAFE151F8FF8CC7AC1C1BC43ABA6D87CDA4ABCF29D04C83ED68543C4EBC983CF +A46FDB18731C3FFB261682B690555F2EDAAF9089697ABF6D9044453215C1C7B4 +369D115744BE37EB81CA7375E1E3736CC43BCC7E434A543797BC135E7A7EDCA1 +686B0ED90DB946E15C1FE42BB7CB162F1969352602CFFE560D36DB3161F77AC6 +D643B354F43EC565A691C2E80F7209424ACD19B499D8291844684ACD989C5058 +7C768BBD02DDFE99CBAA9A1C427164F856B51AADEEA80652E878DF925AB9FDA6 +7040C663708FD44B024C195AED1FC249A86FC51D9951075F3A5A792CE3A74AF8 +75AA0B96A692320F4436B961A9AC20EE63DB4BB4928C76376B5C7C4FE40D77F4 +36E4E313BC41F67EE28006BE4E5623057EAB9D14FCCDB8BA096E5546853A0718 +BF239581D1620E0AF68645D0CF00C7CCB6BE7422CE25814E1E323B21F2795D5E +099149E4D410DFBE09287F34E6C0454D529F48A17F1DFB77F5F5755CA57E2159 +A1DC55479752C98259D1F38B96ECB20640A7BD7C3F772CD17BBA5F0CBD98ADF6 +3842277E1043CB1F2CF27CF32A359434EFA0887C63AF1BCD5F7FF465CC1A447D +CF11C194AEB916802C85349A34A5E664C3CBDF4148A8808C2DBF6E08DC49B3D0 +0566A1628E18D6C17B9AE8FDFD1F0B929E115E00B788115DEE924E2295F3825F +A50CDD1C08DE41F59FD2081EE87C52BD4BD41E61F6AF0FF714725EB5F1A1915F +F51539C53463F20BA4FB659657007340A332D81B562D615A211960BFB6F01736 +2FDC19B2B1985873438328FAAD3A095D045A19C5F3BB86017F1207CF87D5C7DF +5D313073078790DC09DB98DC735CC963D8811BA1B3E3D36950A36A6E0B4FE074 +E67EFD943B7DF8BF9A4EB2BA8162CD8D2107F91CDA7774FB8FE4FA58F7389C1F +7AB83578F0B064ED67423BA5B9FA7DA1C07956AF2F29B485A4EBCA4403C4C879 +03B8FA03C1DF631BA7E05AFB9FD549906D1BA1DC59DB7B00630E2D5EA245A581 +4CB9F2F5883E1FAC245CBF3FC439F659F2567EB8FC8E81C0685D3112AF7458C0 +D555B925CF911C1546654364AD3334F71CA4FCF15E8F0BCA4A7B2E0B9645FAD7 +F62CE50E6F8A33699DBC3D0BB0175610F28620D214FAD3647AF4D7840F87B5CD +30A9A14E356E6C7484AD4E9DF2E26004C5BDA99208EF611A75DD9344923F9A68 +8C29620461DFF1D4285627149B3195A61CC641969B5BB6791897F3739578EA94 +9FC495A1B0EE53951A3AA3F9051405D4886B378858308C977D4B86CA9DE39869 +3855C7CF8A82797D779EA2A91388057F4C6A4962F34D620B1A3458E6659B2D33 +CB443D87141699BEB6FC4CE7D39EA1B8336B971090E2FD31156100B78A938B09 +FA40A1DF8E9B3AD263383401378F0E0469B03611B1930A78228EF5F88B2556CA +70F5C245A2FF792A08B58EAD326A13A4A119798B95D5C3BAD2ACAC44E186FC06 +BBF51708A05F22CA3E5689C6048181E7856530BC544EE49A5E9C07FF2FC35663 +39F563FF011976E092AB8C416B9F832904B6890319BCF2BC51EBFEFD09948358 +ADDA3A2A86C03A65A2ECC2D7AA5A6BE40FE8C7768E9117B0E3FBECDA37A720A6 +BF788B5F28FD24E1CF5DF7FD1346DC1C9F7DF99C64AE2333C3409E13AD8E0F4D +B7F41340EBD59802AC7C1FF83033121E35B847A07BBB45504F7F8E75504CB634 +493903B7E198B27F1F83D9D3A19C65A239378DC5F40F8AC138991E0F3423B9F6 +19420A1A4AA19BFD9B6A02D2313837F693A954B53EF8AA06ABB465A47CB30DBE +13782F0C9592C96190C8329070A774725C67F9A63B8B28D9443B1BE2DF80072A +6FF02259BED0FA8C4F88EFE83F295DBBFD7999EEA830BE0E421A96D3C5C20CBF +61E6BAA65A13536E76241BC71AAE92FAFF32EA8F0B511341C6FA225E344F31F9 +FCE15EBF2A768CD1F4F3B9022AF52355DC2E394F34177FBCCACB4374BF37A72C +514EA569DD930C6DC218C60D4176CF8BE31913E58BF5392FB36A1319C78EC9A2 +7B018CB0B58252E5390040FF04AD11BC4F1B1144B049DF4AB0D920CB54E21009 +777C2091392AA9154623D6425427163FA4E8D399AB1C8D335781590031817735 +CB74A9811C88851002AD9C600E487B3BC4EA6FB71AF54231FC0F1B669EE62C65 +3A294435A33D87E033CA620866E7F90B6323E7906A40010FF01500F9F5B40E47 +001497426E0D622D7E85BC2AE905FE1D01822E93A89A08341D25100CFF1172E3 +754FEA64F9E1C841E2EE04442A5EDCF2DEBA4953CC04FB62A7877E6C2029A38C +AB2DB1EEB594EDB8B959BB706529F47920D1A27A29B7C92616AED8C2ED3E872B +A68D2E7955D27F896115B2433D5B473B8E7A43D3BCA27190F6C8ECE0410D2573 +9AC162392112EC5FAF02D6F3CAFE64A4A417A2D6FD450EB987208DF9AB32EAF6 +95C508B63507B367F13E37177C704D06EA2AC091B2F66EAF5C59501D3AD3F505 +2E231096094C76E62192AB45E9CD49BFF711B01CF2BC99D260887D41E0BECE97 +E059CA9764E16F3762E98C5DEE972DC426D440D66D8BEF21B358E950324F8735 +78C397170115EB3D56E74557AB18A25A16CBC48F77CCF3D403A05EB96FC7059C +37D20479C95545A287AC3B7EC3BB1D268F1C3C23C27CDBBC8DCAC56007617E1D +ABFBEAD115F4195198D7CC71F29AB6912E8B85C9A86C434FDAA988EB83064930 +A8BC5A26A33BBA4DA5122F7707B3365A9EB6729F0311FED2CB5AF4628914F871 +A8A49DC6BE8CE7D0AE073A057878153C70770F44E55956D0A0A90FA3F93AF0E7 +F875DD2E019F1F83FC2BF55039F9704DDB26DB53618A5A822B64040BF7755D9D +D407BC21E77FE97F3D18564E66678206FB0FFB5FBA09D9A8A5FEA0A8A0C5E90A +4C88C1ABB2550FF996D0F046786702A5563F11AF306F64302026AF6A5FB5E4CD +01636FAD255420EC232852E0F038928115879F7D8E9492BFFE1BB6051239C017 +80BD30592325C4F8A09479C81D99BEA27C5441CD1B0AA00FD022099A3EAF1ADB +F260F6C1DB20224FA8E71E9180731E33DABAF25A75C28B12A90C86E4F2B36722 +BA52F22A02E38AFCF805CE61FB81CD955344463CE9CB9175031B1D4BE374F11F +D8F038A9C93F54D1B48D5CB2AEC9EF50D803774CD7C201D7CE4AEBA47755D2E5 +F17AB21C18ECE634BCB0A9DBC209AB9673C96DF8A8968CF306C694CB12ECBC5D +774C65E30199C679393A439184E60096743178F776BFFC9179D39FD4CB9A4577 +2AFB4FA94A57E759D2C4A81EC66990E8FFD824601C3CD9D2BB065013AC921F55 +A9F26413280719FE016767795A78A386E492C9F2887587A19DF819F23E22976D +B0C21FF2EC0DE040151568AAC29AA16E4C4FDC6791BFE9255C201F78C20EEF8C +B84FE3CA0ADAE5FDC47806F43F552F5E05CF78AA0F27497E3B7DEEF84A8FF08A +398AEA2ABCB4E143A2B8AF3DB506F9653733ED690DA9BC445F1B6244205FE3FE +A37D563DE61A4530AF7D27D41E887A34305BC995A1B6DC8893069B1DE747A88C +09429CE5A5C39505EE550BE2B6D7B2A59F690A77F12699C2F68EDBFFF9AF4B7B +794C3FBB3A93E965AB1DF6AEE0A8D7A2D5FC5792B0D66BC0FA42E50948942435 +DABFCB20E4850A34D615901F32DA2C1E815027A5FC73AAECA5733831510094A0 +18142E62C3025E32651EEABE2FBEF2BF30DA53FBEA3D0E257299D1BEA714226C +4D517CE65C90CB8881E9E3222255B585409CF4E028F46119D7426CA819CF1630 +8DE86B92492BED7D926FEA7C108DAA602D98D0D705EF96E5D86FFEE5764D3CB4 +265E47C3EC5B594073F48BECE16CC6B0F25F399D55629FED8B8B96E2BC3869F3 +B36E7FD6753DB15B2263934ADFE1C7FCA03A526068B61807FBD4690680C50648 +84806D428DC4F52AE1A30DE22C13567B7DE694A6E80A076C6E9A1B779FD00F9A +252D85EA3FCEDA2E2CD917B882409FCCBAFCB96BB7088F909D57C76A80FE6C46 +EEDC449270AE85373386205340846A1105E658C7A92030E48D2D7720E0C75A4A +0A4F6D01B7886C2C485AC1E4F28F6AF631226062D605C9D4797A03A89952A5FA +72E32C8395DE75A8DFE1D9E549DF7F65BAE709E95D007BC410F1E4B68D7C0E50 +EF0C28A7E7ABEA5FAD1141725AA902C7E97F7DAB8C021A391D40D90190A1A628 +D74F1D25900828B371C63170B7E8A17A0C86E828CAD3C36E4BBBB7EE21B77916 +136B2005A0EFF7C578B20DEABA7ED290F0B15E5973FA152624E409DE68063674 +8221E693AFC99DB53A16353CC083D9BC39BE0D8F6AACEE9E04344145050D7CE8 +842BCDC0DDDD9DBD264F8ED4B0A157BDAB8E7BB2FED435DCCF1B8AD191E945E1 +29AFE685DC745E4325310874F6C7005B43B71130B223430631EFE63D2638D78A +CEE77C9506E2F67D13A84513899A46D2243726216DBBD8A1D9B4ABF60C3A757A +E7BE224F5309608B3069092051B3B8A57539A7D955B9D4811B1D9F9093F95F3B +E75FA25D3317F17E9FDF6FA71F50900598EC3813D7EC825B02B7A3EF0219A101 +54E9C262EAD699F0DD1573C840A34B806F7C34A53C8176332287993E76500E2F +576A3A26FD8774E04C1DE9B74C9F79223B560C8A55997FBC32F442A9FDBE4DED +069D57C585C7FA86FA486BE93A00E36FF2F3377E33F2DF09C11E911E3817AE38 +A3C1C495AB15A9AB35DDA2693765CF226AF4D3FA5B7313872A8837796440B6AE +CB12511F1CA8FDB6BA156DEBD0737CC8104779638A9B468FECAB6D20710BFE74 +EC2D391706659017F1BEB73AFDE3F3F53A0864AF3BC9891CAEF2E05E907EF5F4 +7730C11DD2D4B1F888C053528026D5F6A4847920D019B4F8F15DAB188F1E1755 +649152F6F911690B7FF46751A94A422E3BDFAB277BFC578000200CBAE787DE24 +43A8F601602A1A27026DF457CF74C22DA4FD3861081A47147753306126B9E561 +B2D8B45B8ABCC4C6023271B3989BF503A4C1BC36CEE05267BC6E48C5B77E2BCD +5B8E356356BA1C4A21034D27FF6F8BD7BDD15694A9ECC1CC45C1512991644E83 +7A3A7DD70DDA32BE72BCCC4ABD7562E7DD1E21A11B1FCA5C0D788FE747AB7D0E +F031EEF71F11897025722A0AEB5DED6611E7F454EEF184973C5CFD17D8A8006F +52A3AED89DE774EB4F629B27FC6BA8E07DDF1547670785C7B5493BD0693050FD +87BB647C82FA7E47E33FF21520BC6218C67FC5477AA6E463ACCE904677897DDA +0F14852F7A4D391137A4C329B128C1F688806059E8503364164CAF8F211DFF94 +0699A0D25274166C98B572AC24009D5FC5139DD539416A3A1851D6A9E5A56218 +D1849CB660D70C5F94D40BCF8B4D29B73C261F1F32939BA70EBCAC341F70D0F1 +4128CD1E5B8FDA70CE3D6EEBF28C2A37A48D3BD80033C97C89F10FC93F0B6F37 +F87B0C730FE5F978F54896275DABA3E237DA2E4AB93069C778B0B2AB614CA9D9 +D72B3A0E14CED4301AEAA9C276F63E77770C185230BB8D1FC551E8F4713C112A +5D28DBADDDB5A685B134B4D765EEDB0ADD4E3E4A8F920EFCB812F6C31FB33C8C +B6D36E14DE4F56F10EE15F989DCFEEE61D1F46378278D2C87C68D40D4FDEB8FF +109C4188196DB040DD401D76B5C49A624A3F5E506938B20784C38AB079ADCC8F +DA53AE62DD45781C6BCEE68BA4BA3A728E1B05C448408A9C8C75538102EF2414 +E5E7543C9EE708558F070CA1E9103CF21BE5ABBA5F80D29B006A01FAEE4AB9DA +D51AB868A7B568A73D0D405A01500995D793E62E90E37F6E930D4294009FF854 +EF2AAF35DD9D52809D019E003FDB988756A987E02E02DEEF40405D992EB457AA +179B3A29D9238BA495A4FCD1013773B11B8109105370D5A647D1F542031612E9 +126CE29DA30E70AE1E00989F1605F20684F9AD5F1A8779B55799CB6596875009 +DFDB23AB56EA32DA8E9C31F9045FFCF24DD77C9452D3598C49142D5E82764A2A +5AEEFB71BD3260C8563D348E142F0D1AF0EEFF0AA90EAED5F0BE509E602F70F5 +BCC3C7C66B97FF7C7B2DF83BDED2F5FBF07650DB3E657A1132B1330CECA89E3D +8649628417063C10510DFF062C33A98E817826B013861DDCE4D764E6981EA798 +AA5DBDB5BB9E1BB04ECCAB45C78A0AACE4363CDCDA6BE370910AD88F7701B474 +93B5DD2DF3D885117501C2CA99D9F15FB5A00E93C7D409B71DF5DE79B462FFA9 +640D9F6B60A392553F4A649412471FF707CD37226CFB6EE017CD58541901DDF5 +6E114CBB05ED82788E51325700D988719C64DEB843E7EA2D64AA2C54663C596B +85A0E5F6E5185EB51985AA20DA709D6957A27F9B3FCACDE24D51E2B55E4645E2 +45937F19B6900482B174D469B4D648C6CFE7AF2F01A8FC93521AF54712481C0D +FA514D2F66BA59F4378C443C931A2DC98289ECA93510E6CD4C3F5A38D69C3F29 +4A8D1775C72ECF5C451DCF6C3D23981AD5C5F64C3F953B1F5613729C5ADD8965 +EA8441030CEE26E88D4288BCCE1648412ACBD6442B943216667001DCC6B008F7 +199A67339E5306D00D16FB4AEE135ECC5F10D95B9D6C0D4317CCE0967FEFC281 +EEF173CCD692BEFC9277494EECAFA8C9238A724748B868703D9387F84905B8E3 +4D2880B7CB5D6DCA06CDC27967C8431FB1248887B95FCA0E828E9CA6394F49B7 +693124159FC60BA07F17BBAA31945339A8D444BC3878250ABF1E8183F9380D39 +1C4DD13F00469936236EDD6F37EF06097F71DC9BE607BB805FD0F603D0105DE0 +7C19AD8A2ED68E1479AD6C0E93BDEDAE11659DA88E44839745979026FD474C9B +B004926153C66CE2E3CC4F3B602E828B752515CA87A4EE3795B116B742511F1C +B6347E54F758E3DD624B7ABE0DCA99442E77BA65D6FCEA0F9F05DB81864EB954 +99EDF069D7E418B0DE6E33B6C19765CC4148D2106B23FFB61E6E034733B7CAB4 +5F8F8729B104F7EF34C715B51F151AC00A30E7E816D8C4A4C727CD8ABA4595A6 +B42998675B73C9993AE0EE9952072337ACD1C97865AD39ED81C7705341CC809F +FB7A41A2CC5E33F16911AADD1373C52482F131E095008DFD816D5CD50B405FCB +724B90F78E351FD1EFDB69FC09CF1146141AF71F13C838280DEB61C169A3E670 +E6A5163FD5AFEFF62E7BFE3CADE77916B520B952F38A1ECB15A6D9CF3F0F3F64 +150F2133F27F39BFCE6811B9F836356C9AAB89A380B3F912FDF2307BF8F03EDA +6A29A7FFEE570BCC23D8609AE0EA18EC259F0DEF5745F2882ECCD3CE6847830A +BD323E04D42D09CFB7A27D1BB325AF30F6ED39014FF5026698211894A1E04821 +36E84C03E1677A4A9E7DEFAFEFB7A9E5F0A7EB04468498383CA5E8DD2D565444 +219D1B6446BA3D9F9AD3E90F916247BFA2E43B87885DAB0CEA8B233505A88157 +01005CAAAC2C01B9D7BCCB4C8D7AC5215079E8C418EB2A6FA292A84A5C2449B0 +6BCA34AA25CF8FDEE0C5936E21840B38D4418B2AAE07B5BA463D4CC212EF2991 +00910D9DF2B832BC7F605C05FACB70AFF049D76488BC067846CD71591622ACD4 +1DCE7F9070BFD417C47DCB2B20D0BF23A74643E0CC98646EB2297C0C8A1C0C3C +343A14CED3C6662F355003E90B219696983D51EF207D7E6C696B61699D00A59D +AF4EC7BF51AFDDB5F1DE995981C3173B60E1E4A68EA26CB2DA9503142FB8B5DC +F39C458E67C633307824E5BC43EA194BF4B3C7CE39E18D571B50BCDBCCEF0897 +5BA873D35AE86699275F4AAAC12ED84F041F6EA68D1C24D8BD34B14234 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 @@ -1979,354 +1955,352 @@ A95CD2B6F18935C37F49E9A73E97A8602C5C26EE13D7A04A188336FCAB4CDEE0 23DE9D803FD6E8D846B3F729BD36137E834E016242CD2F7BF048959DD45AD413 19B985D05E5D422F3D0968375EA6A90FBEBF8B42B15F15280469D69629C08A42 1C298CC027CC288B9C984239ABB96B6A891C1360D08F9ECC22202861E4CE9B39 -8BF32D2E5635B6583D04BC0AA187D10FE773067ACF3B528CD412ED96902B0056 -567103E3FD911A099ADDB9EAEB3C08F1B36A918FE865B7DAE1C49F21650E65F0 -C6845C15740631BCB7618A3266D83E54976BCDC707883E531F3F833AD0DE88A0 -CDB84D8384602B992263C3C223D1B5393DC98C75EFF9AD8D98A764228C70A303 -28D87B1A5510A579D01088C26D9667DB86F72FA302A3A8EEF7E05DD1835E72C0 -66A0728CB0DD8C34BA1D772886333BC78C79374026347FAC9CED39B7FBA84DEC -E70EABA29B80B4E813C0E6D5ECA5E9ECDF0413AF7556EA458C3C3B49A4B14A05 -3034C04E1F8665532D053F810683C957050FCF44C5D4040CF09893DBF641D68C -0969D67BEBBA6DA451D446DCF87B8243365E7158D89332FB33CA28F0A83A7A63 -D22A0948A46F0AB9B2CDECECDA40FA75B046CED41C017FF79FBD7380CF33D726 -B03304BF8EE1EE450C065BC8B83643AA74F8D45924181D1D0C52CE78C36DFE66 -99CFBD08406AB9FDCC61242472612AF009F8625C966AC9A7228B85912CA77A9C -832F9D14190A1DC798D4E99B5D067A020FAD7E13E2E5A155A94E46853CB93619 -39183DAAB590F1BE12C3C4B0209A93CB015E58EEA72C0F71E68EDF1CAD4CA776 -9320076D70BD2874A166F2CF735BD5154F9FBB219C8689136AB6548919464A18 -176A274446F93DF50C6BF184E59FC2D74885ABAE9E1E5F1FBE1205103008DFFC -CF4721F2B93CDC91650732899BC8AB68B3669235A629CA1FA64AA0F8CE1043EE -ED8C9FDB36A8D89771E802B11C53FE23C6B547FCEE90C47007BF13BEF22F2A2E -6ACCBB183F63267C35A0F4FA94DD834323022D3AB960F4F2254BF1A3A7457446 -4E351E5ACB53CCB07F6255D3266F3D780760DEE4C8E3922A6F5ADC0AAC62D223 -768A0814A66FEDC8F424D7A0CE41922B5D52F6A32827E70A30C17126F0AF7C8B -0CED301731EF8B3F728A45680713CFA68230707ECEEC70C10D7E838E514F2349 -C15DF504AC19EB03D55B32A8C4AEC6DB5F674D1D17096D0F5D75BBC6B33C5DE3 -4CDA455F56505D087894842AD0447D434815BF64BE46408A5C88DA8B81BE77CF -1F0268755233FFC771569D2421490F380E5887DEA2CC56218B8B17ED7463FC60 -D152C6F90DB28DCBC8FF588B301EB48032DEACA09401D4A2EA4819B8A8F7CE05 -D5B4246509785CA6C88DD6CC5298CF28A64CFC03DCD8E043282D5704EDFE25F5 -0881AC56BE6E08C486307805D2D580A9702D7645593ED855D41AA871C596066C -042D40206CF2EBECE9127E2BEE1866BFFDE87DECD8B14C14ADCCF5322F9D463B -6B75F7184F4E8BB4EE8D661D1FB93EF6C7709904DA0E1ABAD6C6DCFD32AE2EE4 -DA7C7C6F4B4DDA70FDE9BF5EA3C62B3CDBFD388FC85057A700BDA718876BDA27 -1EC21BB0405A6982348C3602AC76C28CD2DD769BC4AAED98F878360EED1C065F -7B79357922446B8FA6CF9E1A03603D307C4A9ACC38DBF4871EE7192DDEC29841 -A6F5C814189BF15A4923DA61963E5790426625BA465D2CC3B850FB16D141E4E6 -F9F90740E71AEB3285C86259F13710ACAE37E1CEE0408DBFCCCE3423E2D2CA3B -9882FEABE25640C4A65960253D1EEACF4954A63596C4278178694BE0FC7579DF -EFAEFFA7A38A38EAA9EFD54B52289A2B8DCB3FE7DB6498A12149ED2974DAAD11 -84ED92E7074BD9DE37D8E601DFDC3B5080F9B61C3219283BA442374C3813E890 -3E06FD144DC3505CD18FE08BC35968F48355AC38452807CB808503D5A7DD8C0D -8FE15A30CA1D53AD070DE323932620CC479955E84818C925FAB8B2ACB8BD812C -703CEA7DF17397F19B574D8022365A3265EF743953635833E195C0C954BA9C47 -1D443A84C43DA1F18F3E8AC3E120561B9E9D63914312C851CD16D85E9B178A6E -AC05264C87A90E2834D0C315025BD0BF4BE0D6709964BF5E915686A7788992DE -B4FCB725A709F349E90AE0E4A81FE98580D1EE42899F3A135EB0986ABDEFD72A -120DB6D8B331216CCE770F728BC790FEC336056078182C1184C679080BFEE79F -5DBCE80ED71A5F5A90273EA8DB0A39CE4A841DD67F91F6B5E477E97A51D85C0B -1F96C0A76D58054FB43F96D68967CFB412FB10FA5F9AAB6D40DC140741D2E80D -338814CDF867A5F3628A278018A384FB2DCEAE0762D060B632EE34C48504DBCE -97CD95137DCC92FEB2B4797D09FF067C5D10F1A9067CB5F45E07919AC4FC8532 -15B3EBE86A76A2B9A924A446D8EE811B061DA1C19261BF92B30B8C88B3998200 -4514585026046BD49755746E2E927F11268DF8CF77D78849127F6060EA4A93DA -896ECFBF3E016AAE9E09FC4853908F2413FACE4A326672A41C908109D18A5605 -CF0D8FA7D1CD1EBF47ADEE757BAA4F51CD5A44E7B76B14B1630BA26095CDCE16 -136E214746497F23C59EB70A44798B5F9001901DB4FCAB57F6E4F8AB2377BB86 -3FEEE041B47F7DBCA5A50483F549B9462C1B7BFF7824E78D52DE2F76DE3ABB42 -1E6B927734AF16BFA71385D1530FE3ED5E87F2A46639F94482A5292069350ADC -0577823A9B28701168D5941593DC845484A3A04B1EBADDDBD072BF4B212265DC -E333A138323C2A82375ABF58AA5152A18D04D63E5E8E46A4AB6665BB39920332 -E2CE147AAD2CDDE3C62FA09949E0029FC783267BCAE9BE56A23E4744BD48A461 -0A5BA61762C2CD210B4A8F6C6DE2841F79E7B01B4CA583A6258FCBCAD89D6E0E -C4BA8D326A26F3B6B7405A4BAFFC49D177D0144E5877866C2425F9D8F3E8FE6D -042E6011718B1A68B71D97BC2962255B771A02A054272715D35E1E01B94C797F -4C2BE6E6007BE07A906EE212C9C0557099757CA1BA18A116A24783F6AD32C39B -C1AA44E149A919CDCBF96AF06275CF17E28719C7E27DC4A8B04CA2D35987E02B -3FC9B3AAF0367DB566FF85AABC4ECD87EEBB77011D91045B7EEF24659347183E -BB7A530D6BB0600D659EE0D05B19B7586C2CFB2AD8D2B1E8B40ABEAF938C153B -76864B88CAB1DCF1E827CB83ED99281D34DC8C426C20B54D48BF5EA182D1A5B2 -0C83EC5AF09CBD8E9237E15028BB111277873DCF17EB6AABBB8B8FB2F5AB9C7D -A6AAFE42CB8873A88B2A034E47F89A37ECDF143E92D42745A7259AB37849EF87 -880DB2EC76AF41B36FD065D9F243A5C7351FA6D374CDFD058990692041C8B22C -9EFD896ED41B648ED6964038585DD9BF7DFC9A664BE305214C5D6506ECB94DDE -C18F852645F3990F44A219CB7261DDA8BC12C224B849A716B8385D888FBAEC03 -51C3CF6F16FD960BB368B36578F1112D59238F4FB1771B19299F13AACAD85894 -00D923336DB2BB02251239862F35B0A124E78D03517F425D07925640D669C8E2 -D72B5848283834D6DD32AA359CE4FBB90BE74A2F32EA3F5AB3769EC05724BF40 -24602DC205A3CEE3199E609467D7E0708F4F366D668DEBCCB71F002C5258654C -BFEC58A6ABB82F0C1E15989819B1843BE038A147EE5D20BD463B1699072CAD7E -9BFF30A758168C6DEFF0AD2DFF55884E786A2EC05EFAF1430DB000E769BBC8F6 -1238CDC4BEF418DA7E1A7D9D5167BA8A884CF41D0B12CD012BC9F5AC824A1EF1 -B244A6930AE5F0D9E80C44F94DDE32BC00460ADA8E0C9C18C0F0989820C6FB57 -BF6DC7B0F3B0BC87F8E9D5E471D20E23E631CCD79D5574614FD2A2AE82EFFD29 -7E2C859228F1F5FC2816C6F92AB27555934AA6763905F722C7AC9910EC9168F0 -7D537C23F4B374E3AEE562739A860B961C97665A691FD65F6F92594E80758B18 -51F691F01E749547C1CC7327DFD13D6289D6C44CE596A7E941F08A3CFF427B01 -B0542EFBD906944E193499D98C66FDC5339A7F76F5FE72148ED6A71B4D0ADE59 -0B643E6AEB31CA21982857CF49F0B883E87EB7C05E7AE6212321FE786D63E4E6 -8ECCA23969C27DE5F69BFB63E544CC4E5955B136D9314068972E015AF105FA83 -52903632E7E60F7E5F0678170567720E62C6627DCCCCAF0C809EBE7B285A3D4D -8F80E248CDCFB04B330ADFD4617F29D47D870C1784592113C255042E73026053 -9DA028D40476156460AEEB671AE36E1A9C57762B4CC72F22357DE9932C1D9186 -BF5A9376D6063B27094A55B2FFE6165B5CEA596E215500C7DF49CB06307262E5 -B2FB040837476AA70C5CE11E83D263E58D44EC49977317F9A7B430AEB498013E -3FCFB06AEB75876247825D32F4F0592C513324BFA8A7391D869D2A402EEF7DA7 -441614B52DA8B4CA0BA0B1403A9C532B25085CB01B1E554A1D4BBA1C02404371 -1C8DEF14CDA814D7831D9DC6A328F2CE8F6E84CBE95217351AADA097BCB4B50F -F119F74F3CD45B6A1EC9CF29A126CAC6A9ED965E788278BC964096DCC98550B6 -986EC84E375D481C2A106DC9AF67D2A5CB1EDA4C3E7BBCB4A34FC37B6F63671B -1F48C02372A72ECDC748B419A50A62E1C227E6E9E9B9CDC1D7613BB36D6FE486 -198730F2889CB0A7165E8F7345EB53DB0E2C2C3509ED77BD27D0815C8F0DF897 -00EBD2F764B1272A958392ECEE898ADD0D9C10A345EE39243030D2A2D9531F74 -19A2CD45336ECD332E73971015503D9CAF8CE37BF8470572FA3B5B1912D867C2 -A58E90FB44F3F115A56F81C3D5101ACB1662194E1D417320F56E9FFD15F10EC4 -6C3D727571B2E2390D1F0BC07321D01DDCC7CB12C4135784060802B0E85CC06B -A4DCA92117D262C90006420729DBD25AAA3859D4DE32BFE0568BA63A0798FD5D -3F495A8FB9E545CE0D5AD680061C316A96D8ABDF4CBAB197127B273F20F9BBB7 -620066805DCF87B4C5FE7729248684A9A6A035344ED879C153990C91925A70E1 -D18B541C4F35C0A6B109AAF4718D7F1A0AF91F383FDBA803C47F37C12FE08BAF -E57FC166F56044F3ABFE670B1A070E0794A4B1601C14494DCBB0A5CE885D28CE -AFC5881A471465A06822CA8E99F390BBF12C126A9AE0C674D1E20423A739241F -5C69A9C732FB65BB7B562578A379C26D50343D2076E20CB4642B311B3DE7CF28 -3E1FF0CC34B3B87A17F5B28794E967B71641B0BE0CABC6C5C48143A89BAA5D54 -9BF4BD47EC9EC43810A0E1139844E3000732A6F2ACDC86413D152C4A785527EE -42B84337C3C6F4E0641E0984A46B477A7DEAB1E04E291EE886A48292DC7ECEF0 -7A95C79F157162E1B6F3BAC450C09FC97254A520A5ABCD5223CBEE8FD065E668 -6ED19DFF6E40E7C26BBC48ED225243444AD99C26DEB7557D49F0069BCA2D4924 -0F1508114A01FC8648F1AFEFA80C7DF242C951C061FAE61B7AF85526E2455E6E -370CC558B7C3D2CB9EE2C81BE601AA6BE3B18CC5B85EC3C18730E4A895EA839F -A2646BE7E4C44AC04717C1F450A33D82B4A8F4CD3C7C7693819FE922DF319A50 -9247A242E087A5BFBCD523DF2AFF25140365C4A7216ED5A32DD5C79B06A14C5C -F6EA816A371081197B2BF70B95A76E797B1F0A80C9A01B0CCB4433F9544BCB4C -04F8B50972622180937601C56BFCF4D57877C6186A812D2CB2AECF92D1610F30 -4BC114BE5A11B5B94799FF06AFAA48993487859500DDB63700C43CD6804DD95E -C23A74DA14228672E859BD86907098DF035F4014B6B9A5DE1BF32D16966453CD -4FF2689E4416FEFB53BCEF1C4A4DB4C4D290C96D8764D602ABC0FEE22BCE78E1 -BEF4A09D4C1B557FC64C98246A101A2733BA00DC68D09E46A93FD1EBC64CD8F1 -BEE20040826A6878EBCF03D16BA9B2F15FADA82413F3CEED1C73915A2A7C0B7A -27AFDF5FAA2CEA26EE8EF222BBA806EECB3D08C87433D6C651D7628B943C0BCA -60F3ED1BBEFAEC2C61AF1D08F62014C4B3447F768F667591AB54669820317ED3 -ED8ACA726EC4B81B6636428BFBD39EE4AF7239C08545EF605FAC455B09290514 -6BC7DC231B87447A70FE1E0803867EA9244E3BBB51894947ADFD7499165CCB9A -C79E9E06947846DFC972FDF0854F6589D0E8D242E7ACB1CF68D337E8765C6B03 -92CF9F1A47AB5E99438A64C9A6DB2391042FD711CB174D1F771FAF107CD8B6F5 -09A3930417E3409C53D2D36898DDF9ACEAB91502C964A73CB21124182294E978 -820F8EB1D58DB02B25CAECC6C661720045D64C0B6F0D912E659B5B127CADE0C1 -600669CEB01C2BDB423CE8F56CCBB9244ACEE39C167FC9C64E8FE87CAD7595AD -0D80B87B6001DF8467CA6BAB2CF68CA388E3A55115B18946A41F6C8198B20603 -F07767307AED14823B06D6A6F6B8CF2638B7F47CBCACF44B98E1AC75C1EABC8E -95E8262D68FD5836A63451A146265B86C904F528460203FEED23C67B7949E507 -0B203477C2E6AEA12AEB2FDE456F0849A3C89A362CC03649FC63A7BC18584B02 -7187DCD09FAF37B95F2E6070FC1564A7A6663251591DEB7681E14EEE135DF7DE -475E1F5C1B98A11C334890772F7FA45801425A2E44FC710BBA2ACB74BD835F78 -B17A22F28C357BECAB03C6FE2DB4669716374A7F00109F350969B257506687BC -56A1D281A5CFE3D5EA705EAEACB9EC1EC9432B7EBA887673221F0F6181CB6C6C -E303484BD6937102EAD264C47C18D684D6B60707FF252F7FBCE4A7905499F43E -46D38A4372C277FA26EB5B99B11DEFFEB0C2C6E031759722D20AEE0C56A01CC8 -3A3244265BBB228918F773EC31D6256C7E84075503258F77F96428AB939133FD -45DCE9157E390D94129548512AAAEEC15F90340C180CA28D6F01DA070F51C55F -794E08C722D29241A97C53569F55E0CCE0698D74F86809A3EED8D5CAB8125A01 -BE5AF91A4EBA33A2F81131E6DFE81A7D2B338395FC10E40D277E96389AC051CC -FCFC94A0E4986969F531E463A7DDA9F293EDE2BE4F2F840E36EA44F0D5F38B5D -51B98B92D1A823E25402C9D139E1859B9D12D74591DADC3935B319301ADDAA84 -0DB947E2FF141FAF45388C6C427F1803BC6EB93A792AEBCB1CA599C20A69E9ED -D70540950F7EC40027C5B15C09D4B3DF16AA77D932DB7FD1EEDA7490A9AC8EF0 -FBC5DB48D81F283419A4166D941FF027A2A7B333C40126A909D114ED61B1E4D8 -AE0AFCE22320FD54BFC756D4BF1DA2525CD1A003DF1EAE5DEE3E9400529B1556 -977B1D497ABA90BD170B855F1D3FD8CFA3713EEB38F145B6E33260A6BC15A744 -F6FF9D47EA047C69647298A2F9B5D9536B9E40F37442C798A79198AC3D0A1A1E -2AFB258BC6BC6A7983EDA85452DA83C85916E85BA65FEDF9934C537A97536564 -521603827F24E1C4C670D4E6F5A061EDF137891F6F16C89E9A9443763CDC15B7 -AA717A6611C55B0984584ED74D413D3E397AA917AE8484015B0162AE70C4AA0B -65153F2B58A5D19D1BA03297C4EC76283A01B310AEDBF18C1C6BD9891564D9B4 -79ADADF4E28F91D9A698083824D93ECF5CAA34D2973AF2559EA7D32C93EC34A1 -DC907D13891A4ED55845E0385E8F45EA62CA5E752A074F9B6FE5065A28315359 -C013E99666A5E45CD35B3A2B08D4480FF2332A895CC261C9307608D5E8E3802A -6BADFE767A544A434CCCBB80448319D2E9D1D92CCF3AA88D5AC84CC255688363 -2EEA8D8CFFFEBC7FEEEE9E5CD47FE4AFAA6E01A82F25033EB545F0DD865A0A0C -7F4B3DBDA560A92622AA8D9383A08C097D315E85FD9EC1C8C8A0B2D273D551F1 -FEC6277FCD41DDEC6576F1CAFEE28BEA31F254834B04941DDF269E1470A25F27 -A2181C5EC4CBDE56AD20255C562C0EDBC3551E318DA363FF3537493EBE72251D -32B83843F1AACA04C5A97B03AA82C1A6F875D970A5B408D0F5FF9C21D6C8FFA5 -9C7E2A16489050046961132EAC62D2609055556F7C054A87AA694D9E4B93AA67 -1D318D6337FA7E5F266EC9196ADB342B16912A2880D61F16A819EE9FE468B4D9 -67651E27CEDC2EF15F9DC0DC2A252472239AE565A92623A7DAEA5AE3420DFB31 -FD6BE1D35386443BBFD368D0F4B9ED8AA55049B653CE29615903CC4273FFD541 -6B3375E6F560B54601B19D14960CEAF16097E13BF39FF11EC0381CF67CB28567 -4A886BCAA1AB512C9704C527675354E6A59B2829E1DBDCC565C1F239C7837C0A -6084186BAEEAA00EF931FD62004412D245CFFA671CD28D7EE1A8158BE26E2B6D -024478AD096A70A472E3DD7F63A766E794DDBFE8CDA8D3D973706D0B5F167E5C -5048E0A8F4BA7FE50A05A4E501FD0C933FD8F18FE717AAB7057D233B1099C6C8 -4E8C4E5477A9CC8CC6565DB8D824C0075AEF2AE7998E2500A5F2FCF8D1A4632D -7EB6D0EE86D8CB1F03CA006A1B08A198215DE767DCB60C2934DE2084B56D7C3A -400D292B8C10638A8F68FB11F76636EE90705E761BD485B2DD7A2BEF1AA9CEC7 -D0276D3B7B5A48D9C803E268C793473B5E76F73115AE898423029A40F0F25868 -64E73248E42EF46A869BCA2F3D4E37D33407BD02EF1E11E7A18D13D401D77F92 -EC5FF11C547CB563E9C04C00EF04DC1F3EB4B40EB8F7635AB8695DC1DF874596 -8763ED7C4E33F50A0B5BEC07A3AFE56B193B3D83FB521827D2B2188B2E551F25 -04FBB530BEC27C53C9A919CD2243EFF5A8B5001F1ECCA3125D73D540DB1F6DAB -1DFBD3212E512FE35AC61CF2A1CBC45C9B7FF2C73C7C718C915A117906E33B79 -09FB7302062B9340015E8B7A54119BDA51FFD4921C02E992FB5D46B98BDBCE4B -18E546C94199C30AF1B02233294D24B2CBBC2766AFB575605A0596ACC48D2628 -65AB2B16F031908E8B8C830ADBF94CBFB562003F3D8EC701DCA7C0EDDF6845D4 -9AF57B67FD16C7D693A277EF0795B347E0DBE0835681A2B90FE7BBEC57F9B123 -525FBE08630CBC6735E2474DC10FD0D1DEB658A12FF63E97F0B23D6E8FF4CC3B -90BA6D3B4A9AC309B8CDAB15EBD2FDC3EE207AAAAC7BCE844F4333DDB1779D04 -23299EFFC50BC286EF9B9026952412DEAFDE9EBA81ED857E691FB7AEABF11860 -58E9B06431DD0248205F37612C4D07FA71537C70B090DE5DAE22624153E6776D -550FF83C128796F3E880053838A5AD014DB8E2624686458C8B3A9376B65D8A88 -92070D28F0E79B77F04DA53ACEAD512AE406A80F6FF1D236C2F2E6B038A705CD -7A990062871E05C57BA71DC8C857436A2A2B1DEFA5FC66ADF0E39CC96A818461 -FE2DB1F90B2EFD0DED209F2E3719BE68DE064DA69116EBE52CAD885CB591AA5E -39E021CDC837D12B996C16F2816128EC84D30721B0B9598F9FC83B168691908E -0101A232A4FBA9CE292F2C8397FFCA6F20D5EA42C78FD4765D92B10D64B80ABF -CB78ACF39028569E1CB1BB5D92F341D690D24980BD273B059123FD270E57B885 -CF8333F1D84B18F91582944E915E51DD6309393BED0DE5F48C5B826405261F7E -D44B3263C1674235516182D0D8BFC1B39716F3DB3F47A7385BBFB6CA457875DC -6CBB264911EEA8E25B726812285CCB2A12E50DD0C5E8EF1FE8C0BB3F6C19C4A6 -4D7400A611E1C8C4FE58A43F967F1FC142A5F1609ABFD9AF9E46DDD587124E70 -1005135EF2051922DB20BF228D335B85279ADCE7E680D1C399CC22C7A519ECD8 -C6AE2B6CA48C2F25240586797657C9B8EE8C8DFEE35C3BA2D9620732E82B96D3 -988FE4C54C18D66D47ED44CC782FD46ACE33C07148C733BC6294D48CDC7F0379 -4D6E003E703FD4124FDF2D0C5851C0E8F5D679A01C49D563EFF8048DB83A05AC -A72BB92B3E5252407A3E4A1F75F4CCBE8C3DC4DC7ED737C4A8901036F4B650B8 -BDB9154001201BBD4591B30E3937E407204E1550A88D24ECEC1CF5FCD6DEB528 -B1B85BC59CE1AC7C1F9EADCC40330842BA192B9A70EFFA962BA8449FD0832FA6 -01FE7A2187A0303FFFDBD73BA8B1EDAC12D3AE4A45B43BF854E04EF43DBC1AFF -B936522BD62DAE63BB64F7A96507CFB2B5519C77D4E6E0FDED0C8D6DF894939F -65FDC9157C9E46F43732E60A624A4CA3091FACE52612216CA6ABB389B27908D4 -166E05B3FF34B745831D060DE82CFB08C61F7D9066B7F1D22CD71AF6169E07E0 -89F83257265D7AF9E224E4BAF42D9667F2FA8ECADCC38BC705027F18C4BD31B8 -ED3517DDDF4258A8496971F5F19FFCC1CD3C6CEC3497D2B5710B81D733674219 -9F7D32A92A42B8C05EC65DCD639844EC17658FEB6E3FC91128A3C33F75F5E19C -589D7BD202D41FAC9D75F9B465CD11CDBCB12A3A547B851A869D93C354689579 -7C25457887DAD11DF74992789DA9C214AECEFDF37B881B3C3B084DDE917AB4F8 -0ACB07D7E878725893ABCE1321197CBCFAD241AC9B686826B67CA98C14BCE6C7 -F00C13111B602721D813662B2AFF5C29D117620B71AA5CA1F3FCCE0CFE613698 -B6F56BF28E9DBC3C61BD1D5436FE02988DEAB0086B38AD892B6E25A88BCE6606 -94DC13B7E6614320013EE7B8E9D580917735055AA69EED474767D3CAFBCCCFBA -7850D43648F4B8227EA842CA14B5A902FA5CDF7709882E4EF578AED995A8478F -B27E40E0BA3C0978126D0A2790EADBFBE64D95108E4D3BD14F3E806C1A9D5A0C -5CF433F7FA805F836E106F99C59506763595352865079C73CCDA723461881AAB -9BA1AACBA01DF953426CCAA6FC49979A0931EB9DD278A0B77BC3791778B425AE -D588703B278CDF1B952358242F77EF4956AE5FB9B90747B3A000788FFE151992 -B383968E6AAEC7A68E6B8FBE55464037E6C38BA1EB9C06CCF83FD9885B38D50E -349081A125B51856147A8CC96FEB60CAD6BBB7ACC16891F4645D53B55348EEE1 -5DDF47188C5171B0B38613609DDD4CDB625156653EA08611B56836926883C37D -A5CF9A41747D85D72924EA64C85022F0AF5D985C60716BDDD5A14A774B764B55 -30284274F7E58A3ACBC189BF36791E5679C5E25937B62B094CBA068E298BD90C -A7B438EC545234515E7352CF72C14A072D9168DC01D708AC721451CF9D92A751 -CB65177C830AA63B76ECD2880BBF8392FF046B7D69844CD339AF558432AAC618 -2308E7E2685F0974C64B1763BC0A0F9C95895EBF431AFC63D5B2B10C72636D86 -0B6C262C25061ADFA9FF4C52A0B104DDE1188B4DF6049408DCBACB64CBB8E2FB -1C959546CAF2A1FA5B6167441767645B69FC44747FAA9F733484180C066C0E92 -D056836388DF640475B7EE03F55E250D7CF3DBDC139B24368DC97818E449341C -AB03B24CA890124C7E98D8E8C0502FFE964CA715DD763A32F95CA96541CA5F1C -F5BCCAAEBC066F0384899A90B280DEC00328D08BDCA45DC2D2A8A732CFF034A4 -9E09E9AE43342F7AA27C792A26A5876953742E3A338BA3C1EBCC5DAEFAEEAC43 -04F2B2A95BF15C8D9FDE46C25DB2C67F19A7E1530FB6DBE1D32D3BAF8DE67522 -ECA343B6EF8596102E3B7826AFC8208A172E109BBE5905E881E09F1483FE4200 -8FD61D518DEA43BFBF8984CEEF0222CDDD0770488D285B03961F032A4E0E16F6 -5D36FA4B896669C8D48C1E460EC31EC4B6FB4DB51680302CA197C822BA80A6F9 -BC8B09DD8192574B6B5127CC1C832731E01E3040A98E744C347E64772FF99BA7 -5D55EA03A15AED6A5507A973F3F420BC01BADB5C21D43C6F55A5480579C756A4 -2304EA5F09AB254A756B50555EC2CF5E2CB12EA9B4607CD61AFA9FA5B52F3602 -1F505A4F57AA48F0F038764DBACDB0FBD2AB5BA4449F5CBA8817DB5F1AF2A098 -9F1D3FFC93DC85136D4983B84DFCB2C8C307175AA8BC49D0C61B3B22DACF85C2 -86580F3CC5C6E4B3713540D827BD0BECDFCD007159797013A8CF2A5A3CFF8C32 -B84DADB71CE52F3ECEEFE5D6B9D552F33DFFF3234A7A4062BF54D1BE682F48DA -2B95F40709B2D91DB057D0F5C275F75F06B742FBD064B936241CA3B213E8FBA4 -2F35E2B8A34E912B8F5A9A29EBB94988859B44CCA4D7FD5E582F85FA87E4CDCD -0FF49F787C6B9D44F50CBD569D6683A30B85C85DE712C95337A6119C6EB00D66 -5596D35DCD86D2C84914731FE1BC1647FE5FB025F422AB895D577411B6D66ACA -24214C32B633CA496D0FD586B10C0E50B60DE21C7AEABB02E383F12261CD87E5 -2FAB2806401B505D985D1FE1027828A88EA3DFE77F3345C55BF4E5C62DA52B9C -F4C3AE95E42A39395F2C977A6542A90B529587090F9F6B1BD65F86F980E9DDBD -D7B0B9DC5C545AD400D49371E65453A47D6A585751FDC244C37EA202020CA0F3 -16FBF11E8BA59E70673F787858D74B3B0DB56329A8CB752D07CBD49E586B3AF8 -070A2A9A964DB4265983F48A42E6065FC9C5D2D4843311673FDBD0D23CF8E6D6 -7A5FC3F5E14975EEEA84A49CB2DD4A0DD669CE82FA4D9AEEA3D6D8C5A7EE81C7 -B047A09C98598A47129240E6F0FF94EB631F77F9A60402EEA70A33CB67345C60 -F29E4E7BE18DD613B7C4E0C619F5542119405C63DFE4046EFA85160D0F9EE19B -A7038D708C4038C8739D9FC01392687E70F72BC4188BBF41DFE407EAB4F74262 -B124085B668D9AD6134129F6FA522A4DD57FF34C78A27790E48C94452407B370 -703D7DE3AF156887727ECFD3ADA63C93B843BEEABC79E9B9769B84DF95F3C2D6 -D5B66485802218501840F37FCF441E49E33BE27C3DD93956E2474A0F1DE5143F -2B1AC8DB623D2D1A195C9F3A15EB183904EAA046EFC68771CEF0150552AF2398 -AEB4C71928DB7102E9F5210C8485E7AB3EDB52ADD7529519B2CD0B3AFB69FAF7 -B2AF19D5299F5D4744BF2E34C74775DDB0ADA2A22C9C01EAD84B3B0D75D7A7F7 -5B07C5C660D17D6B10915169DADD1F8BCAB6B109D567D608E55161B6546CC3B6 -121B34A9146E333290A0ADF5D9AA2C3B02CDBEB6E6BC9F5A02826C0630E51F3E -A997E6582B4C9899858303AE81B305177414B2811CC1424769AEDBB845C179AA -B7450B5EB4E3E854EC41F457F5DCE2C3F1C9205AB2C0D9C465726925CECEF7A5 -E525FA7524B5F05BEF5CD0C96A4498714E78300E495B8ADCEB5FBC8F9D5D6E8D -9932539E29278547DEE1D787326D91EDDFF071A2EA558B63BC34E9600EC5BC86 -81EFED2CFC04EF06BA63E6B8EF024777C7365D7C2EBD56C5F0D4BCE95597921F -D0A270D1C640DD8C06942EE39CFDF295C637F5ACDCCDE025BF522EC572A079FC -BA7BA41C3D509FEA7ABF5C8FC13C2D31D5DC5C0A77B921F7B22094E18332BB02 -F408B6542F19F5668056FBD4E28DED1ACA2FFE788A205A5EA0AAA2687FCC172E -8EF26FA61D406060A3A39F53771D3B103E9128637AF865B8D45F83A5F120F048 -179613D6346716D2DFA609EB018CE827B5F3BB07F92EEC8379B773F1A59BD888 -91499F4B49E238E0FD9B6D857CB715FE006E15A6057293BBADA26ACB28B30656 -6C2826943C05458E4D499BA38BDFB4C68C117EF0CE0FD45A2A589DE8B5E357E3 -680F3E6CF0741947D75E760511447B5E805359AC4DDEFBF807C5F85154BB5291 -078D230892AA4FEE1BB5E954C293133F7C44E93674277E56AB1BC9A4310390E3 -9164D1BD6EF25A379827448EF1FE17EAC5C8D744D755CBED5E291D2CD35E5FE0 -C541F93BE8B31C8C34C671E684BE92996AE86894C45E44FC550DD7DDDB10C157 -A5CD6C0E0F1D711EFED3D75CA640159AEF3867E1B9282A877F8EEC804BB3E868 -B5CF83CCA609426A07E06A267EA4E40944AD1BA49610C5AA11342956FF4E7042 -7DB54645C481C7CE4E05DC25E3AAB578F333517BF265FEAD95A6C507C9CCEDE4 -9C78AB2465328245A0E01D977AA3DA44901C2BA85DC2279E84BA8CFB69D8801D -D68EDE5B8D3825510F076AA59E75557ABAAD00EAAC4001E3D8AC5E2FF16DFFE2 -DD05F28CEB7EAD2672C64654B9E979A138293048A3CDBE9DC4A98511BAB74F64 -E654A2BF6626E955E12646CF010A8A6957F19FD6810B4EB1DDAD096A1AC75E42 -5E725B49F601CB7C85F5C2B28DE81582A0F80DE44C8FF0BE322A1E30BA9558FB -192D92F11C5E780338BFF7B04398536ABD4BECCE750FEE6B5EF831DD02FDED63 -06984644F6FA654518A5984CB64C66B257ABE4A12EBD6447D12CA13C4C066D16 -6F59160B4DC3B8BE812E7FC7DC1729B8EAAA6E1E813D8C60291E8F3960E519B1 -7AAB5A0D93C623E554663DFE0FC0671B34517188324D2A67A337A4407CE9C653 -2B95788D3754031AD09A3471CE09B5352544206EA934E73CA2CB7D48CB0A868C -8C80286C0F49292B029F495DF5CAABEB8C1640B3FB2CF4C3060A66EE9CEAA489 -2CFC4606BD96B22EEAEBDF94BBAEE41077AFA73C773175641210263AA6CADC21 -0535B08DC31EEE2C3C1AE559BCA5EA98FC26DE45B8A509F41D383FE92BDE248A -60BC5F84E5524A96BF034F61350F11FE8FC7C12DCC922106221873FB00A9CD7B -FA39AB5957A83C1E3FB0978D451489AD6ECCE8490F472CD871FC6D1BD8F02DEA -7D1119159C3224869543A466B0269FCFE6E6F3CDB1C621F771CF639267AC0778 -611E8B8EDBEF73129EC7D9729F528AC369FA2FDE6AEC3467B35F46148B1E2987 -1465D515EEDB4F38EEF9774C70EA9219B9CDD309194BCACFEEBB854742DA5ACC -85F164626BEBC044F9BDA18BE1CD13DCEA60ED52348A166AAC0786DB24ECB843 -8376D10FECBDB71EB5FB285D443FC5AEE25F9633D196D6338B7233515ED26CEA -E0D5F9AFDF84CB53B8DE3A2FAAB59282E975317756D18179E78A653BDB1E5E8A -20FB382434BF28ED8B5F20A95539256F24FC6AC787C0D03570EE7734D0489F1B -F545EBE5F9ACFF31C29E2144991B957653C8D19630C5D54F47489924457C4042 -A09815E5A6D80632A4A3C7B0C5AEE6F6D0857B58A586A29FD85F2243BCD98CA3 -BB23E6C4D531571C38A61EC87A24B7571F3EA12042E891251B13054FE0F5D30F -72D5FAF5AB8B81C1715BD41A2321FE6719348E84A4A9A8CF08D5588174D52DB7 -D48FADB91F435A1C881C5FB8D1421150006DBB793A952021E5B1B68F40D976E6 -CF857B312A634DFB74D653C035C8E2DE8C8355E69A4826CD97921896B1A30B7D -2157069791D318FFEF065FF4F6D3DCF7CBDCB62ACD79D142A57784484D493DEB -6D4B85DF46630CC50DB13A90B883E5274C6D514777C21094646F774E9AF42E29 -5D3233A38F6709533384A835558BF74D38E026CBB0B4F6F2A85E87709F293CAA -894C3F1510A8D6DA517CF4035C54340C342AA92A0CD95F7011325351E5C1D383 -CDF0C1E5B3B4469F3C8F04E95A04EDE05E97C338CD59E0F6893BFE96660734BA -699137C6AE14972932DE5519BFC9A92D6BA1A3F04224DAC49AF43F7D237E712E -2C1AB496F4250BACA39194A96CB81CE68BD61E1E5857A38035889C126884B7EB -18424A84407DFE5014019DA8D06F69A2FA58152D6FFDAB8D1193AA834DC192D2 -2B9F983DCD6F741ED7BC2AD26126DF9DB2C360A46F7F536E08F2767C3F8E9A49 -3E5172F6D695E35244B63B7D9FB0D80CCFD020A6231C63F19BD2CB9A43287E9B -C741E14EB5DB96326ABAC548608F7E93F5F1FB39A34CDAD387E189F121A02D55 -AB9E4A616C24A0DBF28DD4DA9D99673EFD3AED22713607035BE31CA3E0483EF3 -91EFAB2E102E62B19140FF4A1F549A1789252A6C7C339056A7260F8311C91879 -A8571E2522B91C3C07AEF66382C35925A6C435B240CFC7B7256B171DA23D764F -BC73DE43784C6676FFDBFEF20DC8FFBE0372903A0B8EC66C6CE0F4462DE2AF37 -3C9F14DFAC378D234A77AEE3E48BE549D21AE2BB4881116AF8F7398963674672 -D741C285281C2A3E23E06363D2F38D1ED4879619D4F5FC0880B02D195DA99802 -90232B4C7B415F1E7B07DA394D97D41628010835390E23880F9AF1182C71D0B3 -F6530208D2A8398376CA58A87A1C4ECB9A5F6B6CE62D4FDBAD414042B317F380 -CD194957071DDE89C952F348B16E219ED7E036655A9482B219097CB0657B99CA -867DD1433B33E18E451E103D4518F8C3933AF8F2B0F831D173B8DEBB9126758B -94D846FC6EA96EA837EF34957EFCC278EBBE4EA0E6EC0FAE99CC8B +8BF32C1F1BE935F51A1E6A2B3EEC69C02A0BA8F2CB4A4F68FB7896DC43147822 +7617A156AA00BAB69F17AB7D05874335CE3C819E21DB0FEACF1E752980A202CA +BB393069D59FAAEA4B47BCC0FB9C4DAF2FA0710A8A3DF10E3300A162A988FD1B +D02BB074BC5A4AEB6F0F3F89B3D68E9392AE07E73D7B8D18FE83564C52823804 +979B6136D35154A701E9448881565857394B0D7405004459EE0C68EC17802041 +03FCE184AEDD76833090A32DAC65B34FB1BCDC136D12DA0D6F734F09A5F87BB2 +5407964AD8FBCA56F0CDF8AF907AD5352E4D93A6386BB2006E0FAF74AA8D548D +FFFC997F92F929B794A07CA8848DB5EBA8BA904DBE1AE6DB74FD125E11D39FD2 +293ED39ED1780FDB87D969679CD590297FD9939ACC30B4728227077FD6353E98 +9E62CB8E355522861928A6A4C4747D5794F4DAE08C94FF902D83E5C9FD260800 +FAF713E15B90131C1230A572514B78C4140A3BBE1C1A394F4C0FC8216C9A44B6 +56C67513A4D15B6FC3997D906F69BD022A380D1E6DEAC37434EEC14CB066C7A5 +3EDB6E01DEDF4D58FDAB5A263115D8DD8467F551283B349D0EDCD102A4CDC4DB +6133E4F3942264E0BC3D4FA9F42C3EA90B4FBC54DA6CF0339D0EB1B1BED4D7AB +86DFC6133D38627E2BF545E123B6B848938B4987D5C790641B0E867A9DE2045A +81C900F3FDD886CF6707EB37B0DA9533A62AB745FB0DDAB8E8F7B5D1761F23BB +75E21B81F0DEF1EAB0C64F70879778B916BDA2CDBBF5A081A1A0F3190FD27970 +D1B2F292214252554A2289B2EFF6B07E1C0B5E2F26359D5DF67F859DED8BCE08 +6A176D2E746A80865E5E7D4D1681BD45C068D881E126B4F299D83E5D2015DB76 +37511D91457D48404588E55BAAF19D35742EBB6430A518B8488C327AE6EE95EB +444105EA0797304A8DF058CB6688BA162A3076447F2490211F470CE4DF7B8EEE +7B8348B1EA3174F379F4FF31BE7372604ED931440DE62543B128ABA69F499C02 +EDA29838CA0EA925AC812C15E276652559A3B116700709E3E3D0D02D6A38839F +40228AA9B21599C52E29F8EF12880BC5EEB3BB8DB2683A373987DF131E2A3F31 +8D1641959A9C0F50423C71C2FAB1F3AB52B87302CEBFA000E8DFAD07DC8BAF45 +F849AC6B1D9173239F24EC893A155E6F0C82C83DA8D45194AE444B156B1A6144 +EB72064EB723346E65BB55702E57F4D13CB8D5DCD6D5329053972080915A4219 +EB0D3A93F1D0200A0677B1ED1315FBE810E2E689F882F8401A7F4270F0D57C66 +9BEA08E701FA7A609B91DB384D23ECCF9E2DCD41E28DDC69F2CDD340E56E2CDD +FFF0811905B1605F590546A3E2978E8C37246E7585F210B1AA6EC1E936CDD5BB +4C5E56691CC97F432EBB5F274A727D807BC6A8CD70B04A28E3321D7DC0DDF8B0 +0A8F4E7D01DF0AB89D2811C237C13F1E2F9827A9FA1530B049B9D1B4520F8546 +EB713228BB8B25CEB9F23409975168DAA6AE5A108972DB835225DDCF3866C5A5 +663B6D59064DDB5DF153BC5CF8237432143A7F589A28AEDB5060ED2165C2B851 +B8513CDF488213AFA644F5B824F4034A8540D4CAA6A296D74A3C353DD073680D +A7D9E7A4AEE116140160179E70B3E6E43CCF00B60B0ECA6F12334DA767DECCA9 +7B826D4EDD655124E63029DD18D309CCEA7D84B0932BFD7F8C09E9983EE22F3C +CF42B7B55576E2196F56032F056D17E274E6E1CDCAC5D892B02F17E800B092ED +B785508F31EA947DBBA08E7CE89C613A62EA21C7DA1C5B40B250BBF334AA93B4 +7E4CE4E24AF77FD0ABDF0849E84EC49FC4352B721739F1AB2E6B533AAAE73FED +4DBF97424EC04E5727C5FE208F7CF830BF96A32D4AEBF8AA6598FE48A1DAD9A3 +37C7711AB8B0A4B0E0725ADE77DCCEF22894F7C2205CBE5344911251013190BD +A9696FDD2E19DF39DD87D84D5BE011BB62CDE2E16B91698D87B8926F0E4B27AF +8D7548CDF7DC13DC8AABA5E71E8B0548D1F8BE3F460A1864B2BC66EB37C0EA69 +0A1A55380A690468CE74F892D542D666BBF09A1AE5EB3E0216614E676ECB9CF2 +5CB3EB07D8C19571ED523C1E113492C1208E50F28494236B6142353F6D16232F +0DB211A5264779E41CCA69C3658236ABB536492C599C3096525B7D6C2315AB91 +0431F4519590E1574C81BA6CDA0FFCE56E056F55D3DF12829E83053CED24DE0F +BB43668683EFA4A3E06D651430DAAC617DF3C3824A64C005802D927BBEC3166D +64AA4A8FE4B3AEB6F28B552C7277119C74180DD4FC883DDDB486EEB65C418CA9 +C1052D0F520DA003C4E690F9F87A0A01F7843C74DEFF3B751D5742D3C45FF2DF +E5332226E620900EB10490A8405BF541BE6763080630D92588837BFE5DEECBC4 +CC1B64AA2A7DEFD9EC45A3056A645890C1A45575EEB5C1CCA3C555F74615B188 +4AC7FF7AD8A53CB93210D242B1261B734EFCB43E19FE3C64FF44B2A8E1BADFFA +619F3C92319B2D7B2E6BE24350A7E3D6CDD168986553B9F9B560EC2EA3055218 +111616D19E77882EC94A5018F88C9C1A594E767210791394689B96A384AB231A +4FD834D72047331E7340FE5DC6A371E745845FD97F24B3563408FF434FDE3351 +73B6337BD48B94C7DEA5D349D869879568944AA005F07575972D285EEE23C076 +19C6965D295E88E95A5CCDB87965932F75131F51A91E9D700CFD5D4123426F93 +16FDF55041C3308B2693C1DE6AEFCDDBD729D24420A2B12C5203D7F44368BFF1 +0CBC634995C8671510C9AF7C235373C4B99F4662162A6EDC02489D5F86FF53C8 +A8E2D96ABA5EAD82895AD6573044263B3537DE42AFE327590DA0FBA4A20D9649 +85231F199666C6826ADD361B30B42AADAA7FB0D5ACA8DBAD5DB35CC6F6625A2F +7137545D7598959C5D61B320054C528F52218D405E24BDAAE271DF33558E1942 +CE9E26FEE43BE7D02F3E2EC32B09DFDC777E50101436A22586B2A1873DA60D22 +3BE0EE9734C4282CD66EABD21DE03D1580BA45E71D542B66B8AFA283192EF285 +5D8117866031BBA0F58658B2855AB7248FD61F42A0757A9B6361435380C3F293 +7969EFEB76659389B589FE48EE7BD92B1392EDA899615C926594503437C98296 +B44852D8A20BB6FC16837FEF07756622E0237B39F6A5A571C060118B451D5CAE +A6E4202E758C2BC8819D6B2DF2DEFF2C5BC0F1012D23D6BBA22DF2A5DB229B99 +7B21E6091048AE7D7D5E9E80382DE0D5EBC7E41DE0494A9BFB22517A5570D5CD +6CF1B941D672BF72C8A49575C4B1F9756D43E0E02A397648172E326458B620CA +7FAF9414E727864F299C2306DA380E3757B0C8F653E9E055A249FC3119EE3087 +517A60FB33BCF3435BFF6087351938FAC3BD8918D49FFE4BA0B7E2DD74BAEFCF +90F9AC42836B140E3C671E1ABFAD70AF9136AC0AFB6962F630E50307ECE1D81B +F263CCC0C4E1317E1DB0C93C144FA31400B24A3C0A5EB605AED28B75C5FA5B21 +69EA4613331C9698C88566F85A74C3BE183C25D83AA48C3BD929CD4DB8A009BB +6010457AAEDD753618874E29953B489231C29C48F18EFFEB262F75980FC24E96 +EB8630DAED9FF8A2BA8A94CA65E3F107E0831FCA3D171CF7736D00B7660A2F32 +0B913B67A3AD1F5E7F726150DEDC1F2CA0B696CDC04F48487D22A47F0E0448D8 +46A24CE937A1487440C27032EC46753917C45C2D1A8449CCABB2F00C965A5721 +09B8E33E4E57A073D5940223E78DAADF08BED9E550E80B3923FBE78C9488A97B +1BE447606796C0A859A523D58E3BAC752A287AC1FA49F0C100C7CEF57C8C1D07 +C6BF00F01554165FF5ACE7BB9A7730E9F1BA76C9BE0DBAC589A3A14B571579ED +EEE9D04C65063FFE597D1BFA10AC26E2B45A0ED6C75E65DF76B4B375F09F7CC6 +EB321AEEB833794C94CBD73971219C67E427A83DDCECEA450413840B0DE1EF09 +16F6B88AEAD653F8B796CB24D1FC37F55F32302F2E3B0A51547A3DA98EE6E285 +6484FF919D185E5CF9201585F9B4D83CDF828868273698594CA10630456CF681 +2232E94FC8227D36970E67C7D23DC6E706FBB497BE525C8BE6309B7846F17713 +EC78E0B35A1E289CFB64199A7731EAA0B569C2158ED05A15EB116FA82F959FB2 +9D148D8E0FA88734B7983CEFAEA5D3CDC2826D64DDCE82C94A4324F0280C25F0 +0F8792F433380C243C9B99D73969044B855CBA3B6CDE67E0E23C6A84169505DE +3C64F1FF716483F1D96EF5563A78BA149469C5399E1254C876919024E7706B4E +8B9FC95407E2E520AB503B1E86D4E2CC2AE2842246D2ED66F8B64FE6493B5561 +9446A3C7A7B62BE59A1E85E57A3E8BBAD0D2CA58E562AFCC2E7554A39D6B496A +3CBFF7D0CBE23C318CDA85E6883F756C3DC224355CF294A6D3967C70AEB8A6CD +9A6DD9DF89AFB1F3CBC2F47F5A36E9DF9496405EA74D4E2CD94606C037E1D6A7 +82B7258E519D0415DD9C9D7F121D291F253937170F177EA73F1EE132993A6264 +33358346AD0AA2E39D19E8E86ADEA08418538C8F34E823F13CAC88897EA02367 +53087649EC0548FFE567660B412085933AB216664155728EE667AAFC87C05A6D +9A9D177F5C722EDF2CC5DFBD390EAD35C19C2BA418E3BF40C9D490793D8D62B3 +3EBD4E3CE513FCD25B59A90E06014E53E8BE3C3081FB28BEEC3CBF8AF690FA9B +8CC59125A090130A782DDCA0EA6F18F181D06EBD0E2796F7EC1D593A7F3EC4BC +EE0F31B8312F6E4F6509821A90D548DC1C9B5AFA7885F9886ECCC852CA1B3DA8 +E19F48796A05F8A8B34CE1B511FEC26ED35584BF91BB28EE46061D303F76D0D0 +D47C4291392B3FE685AEBEEF488085C9CD895D4C4C3D81B4C244069402614107 +22F6BD1E6A5F16A5E81C838309A20FD560485DB58EEC45C4695E6D870ABFD140 +92B0E2E56ED341C8AAC95667A266698523E90A0F476951A9E887AC18AAEEA4F2 +E6F16CE24A56ABA4271B39E6E0CCDC41631B3C288A56C4A823A73939CFCB67EB +6F39FC9E73BB24961B57A58D0D3F8A8F29A89D74F29922B20FD8CE0DF06F39F3 +D3DDA5CE8865524E5114ECBBD4A3440E751462E1911BADC707E484577CB1309B +A779265A85FAC2C0105AE080E20E0F84567CC0FABC86FB105BED4FE5AB4A76FF +7D88B67C9D3BEA84E8137B3B3684992E7608B7ECED652D0D408A5254B8C5149E +2A17DDEC9F28FEA0764AA3A0EC2DFAB1E60DB2261DAF7205BE0357B56A508C50 +6380E353ED53DA6A1B714E3CEFCD40CCEC53A221C54420ABB755E72A18920883 +CFE235BD8E491D8531EB108791D87115F976BFB2EC01C7B2ABC370EA2E8FE7D6 +F6974729114F429015A5C5E054DDD85DB314A2664528BF5AB9EA65050CBE12A6 +E9346A5A4F4FE53A34AFABE1293452D0F5B16686C4918AFD60E9FF85AF97C237 +CC26FE99E7819F4F7642FE15E1A999BEEA2A49967EA5220CDD6FA941297998E1 +90EC3FF9FF92E632A5019030C5E81CC35EE0592E00E4B42689D2681FB85FDCB1 +5CE4567B07C0B964F101DBC8F3BCBEE69057A85C24314F3DD159D285A1DD118F +5E54A7C664A036A3257E150A0CA1ADFDB0888F7556ADC90F4F2E6F1A8DD15527 +FEB9E67D7829AC27C815AF717FF251C1EC8C1845A6D9D8E0495A723225BC0D0C +6E07CE1359270D3FE4D94CFCEFB29FF7D14AE5547D9635BF176504A7DD4EA9F0 +BADCC7735A2B17E16EBFC7B0E97A7249CAAE671FA034119AF00E5A47973F2DCC +6DE4859F49177C4639A5FD8ED0B4CAD1A9D24D577EB0D0C57AC9AAA7E27355CD +3525C516D5E279E509BA54726DD9A3F7176552F808F6D3E73A484872E3135ABF +56934C6AEC8008CD97EF53893871F0F8647677F33D586BF675D723A96BD6B0A0 +EFB8C5D93C9EF29509BE2398BFF3094F639E18CF7D27DA441DB5664D6B5E60BE +9FADD4FAC3914B88871758CBCCBB38E8C4E72A4B53744A22D9894BCABB014466 +7F9E22DBAAD793439447A5E39B437F9DDC8E5840E2C77F39DD8C47B2E2BF0AA8 +ECFE34BCC587AA4B2B081B9F3AD513868C8B50631DC0F7EA807EA22E772FEFCC +FFB486E7121BBFFEB2F7A1955AFDBA3E7138EC9AC103C3F2C344162DAE17E2D8 +69016A93C3D4AE91F90FEE36D5F29A076B40549438E92310A77314DF4BB0E9D4 +D79178CFBAE961262BF080F3A9FAD26665F38FD1D1D087DF88B398507C58AAA8 +E757B4305A178C22650D4D125BDB17B70803ABF6B82F10AB764809DDC46BD558 +E22DE40C239FF562430F3EDA29EAD4E7D13FA318DBBAF586966601E5B1C87A37 +45BA4B0F92BE457ECD09258A51529B340C246E854A75F83DE66498F9C7F3B9DD +EF6EC906EDCA38BB21B654C298ED33B0872D2793C94DA6FAB001083DF1DD714E +261554E707E4AA91C36F5BBEAAEEA0172BE8E19C4A511BA20853B2700C5CCD02 +5DB0F5D193E783ABCDA6A309985705C3E7FC5BFE886640ECB7580236D833B27D +5BF8A0E4DB9E59892143488A5C77B92D2E27DB4E76A4B2DEFF3B8B08113416BA +D4817B0D1B93583BD6EB0F54D6E991D30A7155297E25B60E6FA13EFE18AD751C +0B917C5DDFF8C2690AF2AC4CE57C910A1E636BE91472121D50964966FC1CEA04 +91D910636B8863CCDE068D10A3D4A91EA2E1E5DC2531E34F1A3A1A256363743C +FC875FC820B082B2D36DB873BCFF931C709BCBC1BB7541B61C727088FBD8B041 +D5F7DF75B12721632A552BD6EFB4A0C1911794392CB0CDE9E0E43A09DFDBC7EC +98150096DE1A2D3A0F2EBA4040E240FDAFB5AACB50F03256EEFAA19DDEF9F596 +5E593B713F58BA32119526E0A26A2F15DF42A55D9AE96BEB4649185189132646 +98C6EC59ACA83A709143541DEA162795891381AD67B6633547679860CFEDC802 +66E1ECCF2ACBD30F27BFD27385ABCFA0B52AFEC4D800CD9C6A00A7CBA27DE38B +B4AF967070910C34D1C0A8B4D0E807D439891E76A5AF0A29CB195A4AE74344DC +AEF11C51C3B2AC46A5F78F80A764A3303A37F15DD1A230D0940B63FF833A3FAC +2358EFA23184823ECACA8383187F0F63098C70180272E4D1A283CFA2D715A34E +B8202CBA3438E3443F811C1FDEE176525410661DDD0291FF5C5CBC7F6F856101 +A30D4BDDC069B70104B514B46146E5E2DE2E3601FDF06BA3559281E0963E21E2 +79E72BBA4A7D93B34EAEEE3F22663A4636F2E5B4F29F4B14761D15DCD33660ED +1FD491288438D901882F7EA9D9A4F7EC5132B2B805C638CC6A6CFD9F250346FA +610FC6F1A162DB3C2C7D02F85654D996CDCDD108055FAF3E0CB6E032585BE00F +D1461BEFCAE18F03D4D07C660E991C5F3BB4D9238FD211F4E9DB10BE4E3F2F19 +BD7DEF9B9B796597655F23205F209E3BE4E421C9D450F979E23D4DDAF8181E56 +27FE75B21491A8B57B7F2AB0FE406D6D9B72C29C0B15E1F2D6F95A1360FB94C1 +6EBB7B33CDD77CCFA28C4F95529607410F5551734DCCD14F3FF070664F7E01DE +49C21AF0E5635E6A8B3FD0CA43856B747C26B6ED0E23DCE6CCDD18EBA2542867 +FD90EF8779A6622E9B14C7CF343C255258FDD6DB75707866E238B52D5D3311B8 +2615E22335EA9B00DC5324CD4ABD0F3D6979AC3167EA2F5026520F6233D004B6 +F379A5C44DECA881621F744492CA6F364D6808DDB44FAC774479B9363DBDE1E7 +04BBA1D6C56C7019DCF89E881D858F43C1E121419822E94ABDB2FBA07CC1A679 +483DCEA8FDF5E540D5EB79D05F9B858FA2FF2BBEB37ECA34C4FD1D0296396055 +EF04F281B2963ACD372FCE59AA3D0FA0788B8E6DC7E23F477C31408E28EF5997 +1641463A1A163242B47CA0BF00CC28AA0656F421BAF39B8FFD323CA8AE001BC3 +25ED64029BF800E043147708BD7799221820DD17ABA5B227AA4C339CBDD1A045 +E8142BBDEC6BAB591784BB33455916422037CB455503B8D0F427D17356A3B5EF +A83771A3778E9F9B413B5FC97BC61DFB6F983B71FD2056B3D1C59A1C80874FC2 +76C30229E7372045FA2773C8453B2439223BCB7D19A89823D4BAC7BEAF5FA848 +7ED96D9EE58C2248E4A6033E1E75132005B875B0B99E9807AA2057B12ADDEA8D +925C14B26233FF174EFD8EF397E5CD30EF2BBABA2873205408E9B5C1AF63D6E2 +145B81A0C2B350E00C60BF304F1425C4B8F464A8A9921114999CFC2CFF3AD304 +A86D1AC6F5685FA3C3F5A407E3706F0BA3D9E5B25A7E19161CC852EEDAA08522 +00E8EB76DB6C86A8AD47A4001F13D707AAFBEA0839AB78906B98528EBAF97CC7 +521017EED44C0B94356CCB6BAB79EFE0A91B46233D009769BFA8A370C47EFF1B +4FA2A73D8778C2328A521D21E7308230EE49EB078937E33CA1513CD99028435C +80484463DCCB1724B5D036DC5AD228284BE825C42741FE9ED570A52C1C44A87B +38F5F45351045AC5EAEF7CFEEB9EEA1B1B8E32908423FB27F8935B2EBA17142C +8DA08019A2F7918644A47F657975D64FEE3FBDB0703A9FF0356D5E53FADE749C +86F3CC3AB4A3CD54EFC30CA393689FC209495F1D2CBC28054127A2F9666854B6 +213C2978816943D4196E96F8A0BCA24E74FCD77D9F9A2CD4169FBD542207C669 +3F41E411ACEE33B70B8934A1E80829382CC59407C2274D3617F088512AC75C17 +0017851C53ACA0C3C720625BA159C93145D1AAAE7403B1FD0409F6857FF987A6 +0465EF9A732D8D14662C6E8B8229CD7202827FE2A74B8EDDA28A828B11C0DDA6 +D1F6BAF94C7AA136226AC65EE9C780E9211BA9C9EAD1137416742EADA46A2474 +8AB70025261634D536C5CB05DDED6854BA8243DA07A05374B3B4EB9A22A6A5F7 +B447B0A4EA505078696B5848D0298FBD97D30490BAD970CA3E8C72C1AC578B2F +90D0E7D38870E537043E7D13AEA702007C1BCDAC90D9FA3ED941E975418C4E02 +4AC72EF548D7D180F6A4680E85A44E6EFBA501F5EBA4A536B3C8CDF2B659AA1C +EC8840130E87D804751F65645F58CB1A50A2DDC599E26A0BBFCE7136212854AE +C1C492362F0F34641F8A55F26FEC0096B5BB0CEAD604EF156F7C50F03091CEA0 +11315D09FA7AF1D891767F6AA26E0D1350294B7F42098CCDFCE7D7D6699A6244 +6EC67117D79619F6616BFEBAEB92357C2207BE52D12289B0D07912B7AC8B54BC +063F6DC5A8925BBB4841FDB000BF4C7C14924AE3AB4E7DDCB9801DD36A548A30 +B70F22FC44642B873E86078E46A6BDC98615264FAE5CE4E100B8BB4530D0310E +45DCD867173B923A87EC7EC121519B6DAA770B652D514F4D169B82C7619B7CAD +9ACAE165360B4FDD520EDDF7FCEE1CD4FC35068211A656E72EDB92C1B63991EB +8369E21AE6E6C5F5FB957539FFB8A6626FEC1899CD09D3D0E0E1127F00233914 +F4093C816071DAB7ACAE8D98A47310FF5A5F4A1004407CCF80E4716DF14ACFFE +C6F7C5D7500209F6F0DB031906CF2EE618464A44BF45847C7BCD90CE0136E86B +40CAEF5B216312EC22710EC4C154E336AC2CCE603F76896243AA162D09ABC17E +D6AC35F8E9BA2211FC81EE3E53EA352391C40C846EFE14C879F322EA8CDF9218 +6A259F89E123676B1EA10548CE997ED3C5C13133033D49715D3101BE1A8EF411 +4F3D7ED398A73BCB5319F1E8CCC24D2A27706E1A7A3AC030FCDA1CCA2F7906AF +79522DD20995419E77D399DE691D85DAA2BC71C9FC368FCC733F0DC3DA8AB8B4 +AD188D7D5388C7E114BD57B3008E8896029CD0736AB9AB0F25D762AFA6004AF2 +EAEECD986A826E97FCE399099001A3D6A226AF26BCA4C760B0FC3BD2FCD776A4 +31034789945A4BA93B2D663B046E1F0615127A9E5F990E1B777F7C64D8FA93C7 +5ED3F43B400D1ECB5AB2DCE0CE69118A4A8A0C8B53F705000D18B29C5EB6D251 +42D56F346F3044BB45CE215D683E96C3BFC8AE7FA6F197D5ECEF297656ED2678 +756409DA12122F19CB2D9762CA036EDE264C1A810E0FCC840621C5DC26A86FD9 +2ACD7CE5DD6F42B4392BAC41C2933B99DC6CCDA31B0B8CCF3EF7B36B5887FB4D +6B853D07DC89A521DFE4086B52B6BCA67C43A81A8718C053DC996DD67301D167 +40F6EBD3A4CB569137853BC436AB0619429C4EA7355F34588CCF37466A92A10E +95C9995F9D0B6E417F323DCD22202D46AD86C02565BF236CC0D0C0E9868BFB28 +07FB34FDAAD651D04F9092079F2789537A376CCEEA0EDE89E5E91AC0F2D8547B +B3B41AD0547F54F044A9BACC1A628B0BF48551E627C20F7C73DA6928A904E2F5 +A7085E44A23F2E631C54A111D9FA78380C559821FA51E6508FBB4840D102BD0D +060D3256A93FC85BA77D81AE97E981A91D604DDAE4987FEBB9EBE717BAD8CB36 +E28B2F9DF7F310D6997C00519AD7AC0C8B539D284EA186331F70F19A828791F6 +7E03E374D2238AB8A8580C36E3E661531BAC18E2006A5635F8651E5A0A060278 +55EEC10BD3E89D9A6B9D217450D33EC96D4630E8DFE286882E9E40A6548CC093 +0B82CBF2EC6D33FEA7B949C93389FB3E95FCDCC339C040C1F9A48AB1C6F8C238 +DC09A47B0FB27B663DC9B3FB3A28E65AA5AC9107E987C02DCD602D5847A3CC00 +E7BE48E7787CBF61D277AC7BCA6390017A397FBA66FC2D27BE4567F9538C6514 +316014813AA7B582761D3DDD41EB18D87EC9870FE413226B7D937D9F71F39695 +422C3CF3ADE334D1EBE5269AB4CF22A2D37577424FB7B7C5AC03E16BEA179610 +F82FBCD47BFDB2F7C453469D80FE606BBBB4DE61B98DEC265AD57E6629511C8E +F091E20F17F4170CD9FB81E1F60FE31AB97E461910CDE9D431F512D1334DE7A2 +8CB449360E92EF06C745EF108E76E512B1602061C9FD5669E7BC42E6B40B3440 +28E1A1546AAF862E3FAFA5984FD0FDB015285186FEEF64E5385F86D6D8EA4976 +A1510A4EBC49F73944A76B4039CD34748A21B0814D29AB28ACEEA22F6D980B92 +1C606509F5F840FDB35CD697D606D714482B25AE96C1B59D2EA26B213F0D585B +22BCB0D92969F26A96BF103B1BE33B5E7AE60E7BBFBC0BAF028D368B9433AA4A +1A9E4A3CBBB20D5D97EE92000E9389F8BFE63104084FF6556DCE2BAA1DEA9DF7 +945224D5FCBEE09F21E28A47E208C5E075FB1463389ADF1B189F2B6862FB8AE2 +D4E542B364C534233AE382BF6C3E3699B940199215A894427A527FAE0DA1F032 +2F9E47C2439652BD70D45552787BD7D2665A7F7963497761B91C56C0EF88D32E +F21EE29921997357B168E4AB95C8E74A5FB7E768A141F2D00FE10ED75A1AC4D5 +A2143F0BAD28B621F7B96F0A64B93D5A7951987D163ECF5D6C1C5BA070E28892 +805D7C7A1BF76FB29C4BF78BFB33C0FF72928692E2359CDD1841FB27DA2B4E6E +F5D25A82615CD787969DEF8B849FB8C07224DD1B4A184EACF50EBCDCBD3BB825 +0E6816B57FC4CDC9495D12D0B62DC9CED360CEF0A601A3A6718F1E3A44F84EEB +E3F4DEB8165A250D2D0F05D95C3C44E7B49BE6CC5E03972DAA8969263DFA3F11 +C66BC662459D379B051976732AE40E2047936D5BF250E2E57280A84DD95717E9 +1088E9C61CE4160A0E4D653E68C08ABEFEEE44E7DE877F396017AE297F0B53BF +1BE365558DEE627A9580423F3004B07D5B8C3BF01963EE43CE6C84B91D7951C5 +79A3A7615644C7676B1FCC6225066622B031C85C969EB8D27F53BBAADC50CAE2 +7C3E628DA269A9C95C2BAFD8F075A7E7A4921085BA98F3DF963227E0360360EF +4EFF86D3F12A53E6EB7493B282AE6199883901606D4F8A7C51527CF04619E394 +BEE8DBB30C80D185D34C678D3448CAE8533804039BF1ADE18E33BD4AAB9A6D96 +A6A175E047E392D231880204C1094CA29FB2CCE03863CFAEF68CCEAF5E2366AB +5915EAB48AA5078247B21B756F0C4951EBB091452AA9631EBB406C2B2557C24C +9753293686FD8F1051E84967B574823EA506A246DA4C838FBEE82AF82E833AD9 +E8AD351ED0DDEC43DF45EE35C0D3B71214B69A67C34A831773EA8E4089B8E78C +7BD56F8DFA8BBB05D6909A043B0D490CF7521886D30067C78AEA7850D22A8F93 +1DFFD6C26B9A7CADB774E733A38F0495070DDE754301083777181CB6C5D79456 +B4BDDBA186F83CB7B0E2481F189FA03EAF7F803F37F6DF14AD064EEEF567D0B0 +EE609AB57E0605AEF6C8FCD6ACA6DDE5B5EE31F5ADFE68D019F7CAD4B0632A27 +D9B7E79F5178EFADDA19CD46E1DADC9066BE34E412D77ECB3497F9E9BC0FDBCB +1B394243CD96573D95B74653A1F23A81ABE03CF80FCC9837F2D06F3314A81562 +DC3E3D969EBD0BD4D089A8DDD664EDED0E09C8C2C2A3DC7C6EC18C2A0370782D +82E35741B93D4958283406BA8D4A8611B3343C953DD31E8FE87AB3A290185821 +0DB21757F8FD611C1A23ED70A632BC736AFB3B01DCD47DEDEC2704904552FCBC +F4BEED24D6A03AF2862FD23C955ABFE24EF40D1180B19A89CDCD36BC1D863951 +406DF250BDBACD90FB784840FB2B94823F94148DCAFCC15B4CAE60FE9F7F9B2A +4A4D5B20FC7A81F87CE62A7EED5A53143F4F7B2794D012D9137015D37B416829 +F6E4B70E60DA093F89293FF6225FD5A9BE176B0CCAD2C958C77A22F7248E2A5A +8542FF80056F0709071239DAAD3C8EC3C5E38BA50224094F4CAD153D70E9D629 +7FF7F9DAD941C9A282427EC17E4599305E266CEEB3F0D4438E34421C00BA7599 +5A045965EAD16AF83F87BC75E5159A989BFC7989E3292F3727ECB0BE8D445EAC +4BAA84354C35C20619CA95E332F17029FC8EAE0D75CC2537A2BE3E338957D8C2 +74ED1A649B69F4A04D5C4E06D98A121AF021FF0B80C91DCECFA91750637E0C0A +7384C369B49D5C72245BD4FE32E4A597FDBB01404D9AF50B45F5B8AA00BC3A24 +46EE8FE738B7687B1E676DB5AEC196BD8FA27584887D67D0B77550BC7DA8042F +96692668C3117EEDCA3247E1E46A50FEDCC61F878A66C7A0F87AE7427218A6F1 +F852503680C3E435E052B432774CF6BD2EA97AC7B42E8F45FBB386036947F085 +B8BFA69B963B6A3F0ED5C0AB5C0258262C87F9F94F009BAA6C4BEBBB47483E07 +3BAE141B67FE723A38F39EA0AFDDB1C3A4911BFBFF213B34CE92AC997100FB43 +80C392103A427162969601BF2A885DC2EF318F1894E5CECC4979F7D613CDD407 +94F65FC40A05DA5516938592F0F1378AA1494661046C9F0D744BF028ABA9F559 +2E0C808E10F45913AF80F18EF7C23744CEF74436C7712E0F297AB0C1FC06D4E4 +D1D31B093BF4FE9197C1BCC61A2A76ED81B9C36476CDAB7A1547013F53D7709F +3039F5660CF4FAA57E8966033853F23C6F9BFB8FE37CB5AD11C2E7451E6AF5CB +119392F6EBAB9D73B596B0D47A914A31085EBC0DC57B256BAB66F84F4D04172B +44485BA12D421A9BBB0795F7E6E426153C1BA0F0B167F352402FA8DFA242A48E +5F9A47C2F2BDC9B65E06260E41F44A64AABB4AB7395F698F3E06227DAA918085 +F26743820D776165FE31469F9DC0AED0962B6A0EFD6AF9E1DEFECFD04A86833C +24A650751F494D053DD487BED34A4FC7CBDF247B5319FE2ADE0E06CDA53D0E42 +370AD20395279D4503256EFE451EA46B43A1E30AF8C77448A3B0E11DA066E0A7 +848243A844548B20601D2070AA3A48BA5DC4957D65D7BCF52745966AFB3EA5CB +179CB07310BEC86F5C56CCC77E8B3307E860E6767B78D788913DB5F14871853B +DECC3B91BE8A9F0BAF01D2E939E81098F84C49ABBCC80F9FEEE5DDCB20B0A07B +30BCB3D3372998D05A67352B82F1B6B5463E38A48A9D8714543559FC6DC3AA76 +242D899C232558A08A70926E37F6665F2973FD4E34F482A533449370D1241D0A +8215956031C5C961382BC2BD8CC53092D5413B68B0FE5A23F0CAA15555A6F206 +F45BB921C362B0EF179020D168B45945500BE81AF06375E78A6FE36A206DE877 +CF73B635370DBC0D73052775DB2CB28449CB818B1A679BCFCF71E752D1298AF2 +A338512EF0AD67A4066190D5E1FE1C909918CC6D5AE35BF01A901AE55C75AF8B +ED905C15C228109BF5A6C686F7E0AC0BE541D97CF0DA156459DCE834189E9367 +FF6B66B5AC1F5E0CB57A988CF29CE8D3036596A1D2F76710143D41C8305E0281 +0780D868D822DC6056DFA4690F2490BE5BB4F14902B97F5FB4CF31A6C8B346A7 +6B95D82EEF610AAFF9F6B88E782CF0E46DD18BD1CD53C92075AFEA0C1F0870DA +52455847B22A638DABEA04C90ACF0D89E8345F118E5E26A3934AC0C0C9F12699 +46E17F1AF5759123CE2359B60ED63FB22A23380A34DF818CDA8570B36B92C463 +4A80AA4ABEFFFE36865AFB384DA870E5CB4829052F8BEB962841C2030BBBF874 +EDEFE149EB8A38DE0ED59903FCBC25788EFBB825265AFD7FF2F8D5F9A947EA94 +A368C52986E8640A6D6A11B14DFDCF435B2F1F7C168D1E9C7B84B2C2D9E235DC +59799B99971FE9E6D9780EAC653C981FBDF083B949310FF20F7B383BD1073713 +6E88B9D294677C7C63CC50A41AC1B4649631134034DB9FF76E0B19799396A232 +809A5BE397B63B528A0E860D38ADA90BF0D4246F012E19CEABC74F21E2BD46FA +CF96D5F033B6023A98DA51653D59C306875AA02EDC3DB78060D72B0A00596BE3 +6367A1681ECFEEFA447DB8DE687918962C974B55038A8F67AA553ECD27C6C72D +46CEADA75D68D7DACB40B063F9F7464401B0AE4CC61A1F55A7E40FBD0FEB890D +D2FE36D9641E40BD2F6D20C54353C3B282E7F46D61EF3A41F8BCB31FA38EE2B9 +9B671841DA2FAD644C11AE20B6F8C7D5D99806643412273F874273FBD04C65F0 +48D76086EA1156F07A47CA0FE349391E906747C833320E84E18781C61DEA8FAC +B8D9DDF08D29E5983F2E1FDC8C72C200B63415529A45978010EA5C150BA9D70C +F4F5799DA551A1CF7041A17DD5F4153A868BD4B81A25551784E2A6EE42996F4D +6CFAED97725C940C0FE9FFE0AA31FB2A32941E6C555FCF33B4B8E802C40B4235 +99C8E88C6DF1AEEC28938FCF3BABB6846C20D7EC7278A909073BD15BA75F470F +82237BBFF6E7287A3771378A944C8CA6215F95437DCC9EA67F7A8721FA63614C +A7BC5054EF5E5716FD4B7DEFDE48FA8D2AF9F0B3BD92BF5F48A0DCC8406B0A94 +0FBB5D35B56A49B7D4605A00F82D495AEBF2B413F19FE37AECED8060D5C32E9F +E0EE9C0FB14045AE87D04B92A7340A35DBFFE12CB1ED64C924E4ADEE0AD635BF +C70CCEC92FB07B1DE13E3D14B09C94590CE5F2F4B7D0C697F6F30E217ED09B35 +917714712B1182D687302770C205C3D17944AC1CC6AE2A023707E13DC1299256 +DB1211650F76A969D74F940CA5806B499C40B76BA77D12688A8CF75E90A19AA3 +E368D6C99FCF8163450CAD6EA02884D4E9A5279013354D9C8D7FB8BCF3FD3143 +3C822F0A412A3115B0E5E71079F660C6BBE10380872D5D75F1BE9BB6DE755103 +E4B376458B97E0B50BF8932940AEF95D4002737966FF15A0B67C5B717AFF0E95 +B9F8F3498D7CCB538FF133A977EF3471FCE3B83D5395F282D1982B2A6CDBD1C0 +DE44B3CA286E7E3F3E82B35616356E462A4ABFAE8DE9331FEABA97AE7E7C93F0 +A30F4E3FDF4DFD66E5CBE234ADD80AEFB354B80ADBDC128EAE328AF10FFDEF58 +7B462A88F62F463D640C4F8898D41AAECA8EAE36639F6CC17B68BC1F1202F462 +BF7CB20CBD42FF2DEC420B4A700190A1F1499D49731DBC0C5DD4AADC4C32A734 +9219F25150117D733A0D51A7E51D88712AF2AC91D73A906CCFFAEA98C68DB967 +D96DA69E38A0406F2DD149B3E77168D65EF65F99A4AD33BB5B15672E57433BC8 +4C9023BA77997E82473C557D18A960F7064934EDDA12E614186A092930690D2D +F97E1955FA75CA3CA077EC39A56127FC8DCBF13DC183774AF61C2B1B65E5E4 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000000000000000000 @@ -2341,23 +2315,23 @@ TeXDict begin 55380996 39158280 1000 600 600 (orgcard_letter.dvi) @start /Fa 242[61 13[{ TeXbbad153fEncoding ReEncodeFont }1 49.8132 /CMSY6 rf /Fb 134[32 1[43 32 34 24 24 24 1[34 30 34 50 18 32 1[18 34 30 19 27 34 27 34 30 13[34 44 -1[41 47 1[54 3[22 1[47 39 2[43 1[45 6[18 1[30 30 2[30 -1[30 1[30 1[18 21 18 44[{ TeXf7b6d320Encoding ReEncodeFont }41 +1[41 47 1[54 3[22 1[47 39 2[43 1[45 6[18 2[30 1[30 2[30 +1[30 1[18 21 18 44[{ TeXf7b6d320Encoding ReEncodeFont }40 49.8132 /CMR6 rf /Fc 219[71 29[55 6[{ TeXbbad153fEncoding ReEncodeFont } 2 66.4176 /CMSY8 rf /Fd 135[33 2[38 24 29 30 2[36 40 -58 18 2[22 36 2[33 36 33 33 36 26[46 48 22[22 46[{ - TeX74afc74cEncoding ReEncodeFont }19 66.4176 /CMTI8 +58 18 2[22 36 2[33 36 1[33 36 26[46 48 22[22 46[{ + TeX74afc74cEncoding ReEncodeFont }18 66.4176 /CMTI8 rf /Fe 134[43 43 59 43 45 32 32 34 1[45 41 45 68 23 43 -1[23 45 41 25 37 45 36 45 40 10[61 1[57 45 61 61 1[61 -1[77 49 2[30 63 2[53 1[59 8[23 12[27 32[45 47 11[{ - TeXf7b6d320Encoding ReEncodeFont }39 66.4176 /CMBX8 +1[23 45 41 1[37 45 36 45 40 10[61 1[57 45 61 61 1[61 +1[77 49 2[30 3[53 1[59 8[23 12[27 32[45 47 11[{ + TeXf7b6d320Encoding ReEncodeFont }37 66.4176 /CMBX8 rf /Ff 204[33 33 33 49[{ TeXf7b6d320Encoding ReEncodeFont }3 58.1154 /CMR7 rf /Fg 129[35 35 35 35 35 35 35 35 35 35 35 35 35 35 35 35 35 35 35 35 35 35 35 35 35 35 35 35 -35 35 35 35 35 35 35 35 1[35 35 35 1[35 35 35 35 1[35 -35 35 35 35 35 35 35 35 35 35 35 35 35 35 35 35 35 35 +35 35 35 1[35 35 35 35 1[35 35 35 1[35 35 35 35 1[35 +35 35 35 35 35 1[35 35 35 35 35 35 35 35 35 35 35 35 35 35 35 35 35 5[35 35 35 35 35 35 35 35 35 35 35 35 -35 35 35 35 35 35 35 33[{ TeX09fbbfacEncoding ReEncodeFont }86 +35 35 35 35 35 35 35 33[{ TeX09fbbfacEncoding ReEncodeFont }84 66.4176 /CMTT8 rf /Fh 134[60 60 83 60 64 45 45 47 1[64 57 64 95 32 60 1[32 64 57 1[53 64 51 64 56 8[87 1[87 1[80 64 2[78 86 90 109 69 2[43 1[90 72 75 88 83 81 87 @@ -2365,13 +2339,12 @@ rf /Ff 204[33 33 33 49[{ TeXf7b6d320Encoding ReEncodeFont }3 /CMBX10 rf /Fi 133[31 37 37 51 37 39 27 28 28 37 39 35 39 59 20 37 22 20 39 35 22 31 39 31 39 35 2[35 1[35 3[53 1[53 53 51 39 52 1[48 55 53 65 44 55 1[25 53 55 46 48 -54 51 50 53 6[20 1[35 35 2[35 35 35 35 1[35 20 24 20 -1[35 27 27 20 2[35 59 35 20 20[39 41 11[{ - TeXf7b6d320Encoding ReEncodeFont }70 66.4176 /CMR8 rf -/Fj 141[57 2[69 76 6[69 42 63 76 61 1[67 14[103 2[103 -1[131 9[99 16[69 69 1[69 1[46 3[53 53 40[{ - TeXf7b6d320Encoding ReEncodeFont }19 119.552 /CMBX10 -rf end +54 51 50 53 6[20 4[35 1[35 35 35 35 35 20 24 20 1[35 +27 27 20 2[35 59 35 20 20[39 41 11[{ TeXf7b6d320Encoding ReEncodeFont } +69 66.4176 /CMR8 rf /Fj 141[57 2[69 76 6[69 42 63 76 +61 1[67 14[103 2[103 1[131 9[99 16[69 69 1[69 1[46 3[53 +53 40[{ TeXf7b6d320Encoding ReEncodeFont }19 119.552 +/CMBX10 rf end %%EndProlog %%BeginSetup %%Feature: *Resolution 600dpi @@ -2382,7 +2355,7 @@ TeXDict begin %%Page: 1 1 TeXDict begin @landscape 1 0 bop -469 -357 a Fj(Org-Mo)t(de)45 b(Reference)h(Card)g(\(1/2\))246 -249 y Fi(\(for)23 b(v)n(ersion)h -(4.78\))-450 -42 y Fh(Getting)37 b(Started)-450 100 y +(5.02\))-450 -42 y Fh(Getting)37 b(Started)-450 100 y Fg(\(add-to-list)i('auto-mode-alist)h('\("\\\\.org$")e(.)e (org-mode\)\))-450 179 y(\(define-key)i(global-map)h("\\C-cl")e ('org-store-link\))1204 156 y Ff(1)-450 259 y Fg(\(define-key)h @@ -2576,205 +2549,210 @@ eop end %%Page: 2 2 TeXDict begin @landscape 2 1 bop -469 -357 a Fj(Org-Mo)t(de)45 b(Reference)h(Card)g(\(2/2\))246 -249 y Fi(\(for)23 b(v)n(ersion)h -(4.78\))-450 -42 y Fh(TODO)38 b(Items)g(and)f(Chec)m(kb)s(o)m(xes)-450 -123 y Fi(rotate)25 b(the)f(state)h(of)f(the)g(curren)n(t)g(item)354 -b Fg(C-c)36 b(C-t)-450 203 y Fi(select)24 b(next/previous)i(state)507 -b Fg(S-LEFT/RIGHT)-450 283 y Fi(select)24 b(next/previous)i(set)569 -b Fg(C-S-LEFT/RIGHT)-450 362 y Fi(view)24 b(TODO)f(items)g(in)h(a)g -(sparse)f(tree)380 b Fg(C-c)36 b(C-v)-450 442 y Fi(view)24 +(5.02\))-450 -67 y Fh(TODO)38 b(Items)g(and)f(Chec)m(kb)s(o)m(xes)-450 +78 y Fi(rotate)25 b(the)f(state)h(of)f(the)g(curren)n(t)g(item)354 +b Fg(C-c)36 b(C-t)-450 158 y Fi(select)24 b(next/previous)i(state)507 +b Fg(S-LEFT/RIGHT)-450 238 y Fi(select)24 b(next/previous)i(set)569 +b Fg(C-S-LEFT/RIGHT)-450 318 y Fi(view)24 b(TODO)f(items)g(in)h(a)g +(sparse)f(tree)380 b Fg(C-c)36 b(C-v)-450 397 y Fi(view)24 b(3rd)f(TODO)g(k)n(eyw)n(ord's)h(sparse)g(tree)258 b -Fg(C-3)36 b(C-c)g(C-v)-450 550 y Fi(set)24 b(the)h(priorit)n(y)e(of)g +Fg(C-3)36 b(C-c)g(C-v)-450 501 y Fi(set)24 b(the)h(priorit)n(y)e(of)g (the)i(curren)n(t)f(item)369 b Fg(C-c)36 b(,)g([ABC])-450 -630 y Fi(remo)n(v)n(e)24 b(priorit)n(y)f(co)r(okie)i(from)d(curren)n(t) -j(item)179 b Fg(C-c)36 b(,)g(SPC)-450 710 y Fi(raise/lo)n(w)n(er)23 +580 y Fi(remo)n(v)n(e)24 b(priorit)n(y)f(co)r(okie)i(from)d(curren)n(t) +j(item)179 b Fg(C-c)36 b(,)g(SPC)-450 660 y Fi(raise/lo)n(w)n(er)23 b(priorit)n(y)g(of)h(curren)n(t)g(item)361 b Fg(S-UP/DOWN)1305 -686 y Ff(3)-450 818 y Fi(insert)23 b(new)i(c)n(hec)n(kb)r(o)n(x)g(item) -f(in)f(plain)h(list)282 b Fg(M-S-RET)-450 898 y Fi(toggle)24 +637 y Ff(3)-450 763 y Fi(insert)23 b(new)i(c)n(hec)n(kb)r(o)n(x)g(item) +f(in)f(plain)h(list)282 b Fg(M-S-RET)-450 843 y Fi(toggle)24 b(c)n(hec)n(kb)r(o)n(x\(es\))i(in)d(region/en)n(try/at)i(p)r(oin)n(t)71 -b Fg(C-c)36 b(C-x)g(C-b)-450 977 y Fi(toggle)25 b(c)n(hec)n(kb)r(o)n(x) -h(at)e(p)r(oin)n(t)684 b Fg(C-c)36 b(C-c)-450 1057 y +b Fg(C-c)36 b(C-x)g(C-b)-450 923 y Fi(toggle)25 b(c)n(hec)n(kb)r(o)n(x) +h(at)e(p)r(oin)n(t)684 b Fg(C-c)36 b(C-c)-450 1002 y Fi(c)n(hec)n(kb)r(o)n(x)26 b(statistics)e(co)r(okies:)32 -b(insert)23 b Fg([/])i Fi(or)e Fg([\045])-450 1137 y +b(insert)23 b Fg([/])i Fi(or)e Fg([\045])-450 1082 y Fi(up)r(date)i(c)n(hec)n(kb)r(o)n(x)h(statistics)e(\()p Fg(C-u)h Fi(:)31 b(whole)24 b(\014le\))81 b Fg(C-c)36 -b(#)-450 1343 y Fh(T)-10 b(ags)-450 1508 y Fi(set)24 +b(#)-450 1263 y Fh(T)-10 b(ags)-450 1409 y Fi(set)24 b(tags)h(for)d(curren)n(t)j(heading)589 b Fg(C-c)36 b(C-c)-450 -1588 y Fi(realign)23 b(tags)i(in)e(all)g(headings)613 -b Fg(C-u)36 b(C-c)g(C-c)-450 1668 y Fi(create)25 b(sparse)e(tree)i +1489 y Fi(realign)23 b(tags)i(in)e(all)g(headings)613 +b Fg(C-u)36 b(C-c)g(C-c)-450 1568 y Fi(create)25 b(sparse)e(tree)i (with)e(matc)n(hing)i(tags)285 b Fg(C-c)36 b(\\)-450 -1747 y Fi(globally)24 b(\(agenda\))i(matc)n(h)e(tags)h(at)f(cursor)243 -b Fg(C-c)36 b(C-o)-450 1954 y Fh(Timestamps)-450 2120 -y Fi(prompt)24 b(for)f(date)i(and)f(insert)f(timestamp)266 -b Fg(C-c)36 b(.)-450 2199 y Fi(lik)n(e)23 b Fg(C-c)i -Fi(.)31 b(but)24 b(insert)g(date)g(and)h(time)e(format)144 -b Fg(C-u)36 b(C-c)g(.)-450 2279 y Fi(Lik)n(e)24 b Fg(C-c)36 -b(.)24 b Fi(but)g(mak)n(e)g(stamp)h(inactiv)n(e)322 b -Fg(C-c)36 b(!)-450 2359 y Fi(insert)23 b(DEADLINE)h(timestamp)516 -b Fg(C-c)36 b(C-d)-450 2439 y Fi(insert)23 b(SCHEDULED)h(timestamp)451 -b Fg(C-c)36 b(C-s)-450 2518 y Fi(create)25 b(sparse)e(tree)i(with)e -(all)g(deadlines)i(due)204 b Fg(C-c)36 b(C-w)-450 2598 +1648 y Fi(globally)24 b(\(agenda\))i(matc)n(h)e(tags)h(at)f(cursor)243 +b Fg(C-c)36 b(C-o)-450 1830 y Fh(Prop)s(erties)i(and)f(Column)h(View) +-450 1975 y Fi(sp)r(ecial)24 b(commands)g(in)f(prop)r(ert)n(y)i(lines) +352 b Fg(C-c)36 b(C-c)-450 2055 y Fi(next/previous)25 +b(allo)n(w)n(ed)f(v)l(alue)580 b Fg(S-left/right)-450 +2135 y Fi(turn)24 b(on)g(column)g(view)799 b Fg(C-c)36 +b(C-x)g(C-c)-450 2238 y Fi(quit)24 b(column)g(view)907 +b Fg(q)-450 2318 y Fi(next/previous)25 b(allo)n(w)n(ed)f(v)l(alue)580 +b Fg(S-left/right)-450 2398 y Fi(next/previous)25 b(allo)n(w)n(ed)f(v)l +(alue)580 b Fg(n)36 b(/)f(p)-450 2477 y Fi(edit)24 b(v)l(alue)1141 +b Fg(e)-450 2557 y Fi(edit)24 b(allo)n(w)n(ed)g(v)l(alues)g(list)743 +b Fg(a)-450 2637 y Fi(sho)n(w)24 b(v)l(alue)1107 b Fg(v)-450 +2716 y Fi(mak)n(e)24 b(column)g(wider/narro)n(w)n(er)534 +b Fg(>)36 b(/)f(<)-450 2796 y Fi(mo)n(v)n(e)24 b(column)g(left/righ)n +(t)729 b Fg(M-left/right)-450 2876 y Fi(add)24 b(new)g(column)935 +b Fg(M-S-right)-450 2955 y Fi(Delete)25 b(curren)n(t)f(column)753 +b Fg(M-S-left)-450 3125 y Fh(Timestamps)-450 3270 y Fi(prompt)24 +b(for)f(date)i(and)f(insert)f(timestamp)266 b Fg(C-c)36 +b(.)-450 3350 y Fi(lik)n(e)23 b Fg(C-c)i Fi(.)31 b(but)24 +b(insert)g(date)g(and)h(time)e(format)144 b Fg(C-u)36 +b(C-c)g(.)-450 3430 y Fi(Lik)n(e)24 b Fg(C-c)36 b(.)24 +b Fi(but)g(mak)n(e)g(stamp)h(inactiv)n(e)322 b Fg(C-c)36 +b(!)-450 3509 y Fi(insert)23 b(DEADLINE)h(timestamp)516 +b Fg(C-c)36 b(C-d)-450 3589 y Fi(insert)23 b(SCHEDULED)h(timestamp)451 +b Fg(C-c)36 b(C-s)-450 3669 y Fi(create)25 b(sparse)e(tree)i(with)e +(all)g(deadlines)i(due)204 b Fg(C-c)36 b(C-w)-450 3748 y Fi(the)25 b(time)e(b)r(et)n(w)n(een)j(2)e(dates)g(in)g(a)f(time)h -(range)172 b Fg(C-c)36 b(C-y)-450 2678 y Fi(c)n(hange)25 +(range)172 b Fg(C-c)36 b(C-y)-450 3828 y Fi(c)n(hange)25 b(timestamp)g(at)f(cursor)f(b)n(y)h Fc(\006)p Fi(1)g(da)n(y)238 -b Fg(S-RIGHT/LEFT)1410 2654 y Ff(3)-450 2757 y Fi(c)n(hange)25 +b Fg(S-RIGHT/LEFT)1410 3805 y Ff(3)-450 3908 y Fi(c)n(hange)25 b(y)n(ear/mon)n(th/da)n(y)i(at)d(cursor)f(b)n(y)h Fc(\006)p -Fi(1)189 b Fg(S-UP/DOWN)1305 2734 y Ff(3)-450 2837 y +Fi(1)189 b Fg(S-UP/DOWN)1305 3884 y Ff(3)-450 3988 y Fi(access)25 b(the)f(calendar)g(for)f(the)i(curren)n(t)f(date)221 -b Fg(C-c)36 b(>)-450 2917 y Fi(insert)23 b(timestamp)i(matc)n(hing)g -(date)f(in)g(calendar)89 b Fg(C-c)36 b(<)-450 2996 y +b Fg(C-c)36 b(>)-450 4067 y Fi(insert)23 b(timestamp)i(matc)n(hing)g +(date)f(in)g(calendar)89 b Fg(C-c)36 b(<)-450 4147 y Fi(access)25 b(agenda)g(for)e(curren)n(t)h(date)507 b -Fg(C-c)36 b(C-o)-450 3076 y Fi(Select)25 b(date)g(while)e(prompted)598 -b Fg(mouse-1/RET)-450 3156 y Fi(T)-6 b(oggle)17 b(custom)g(format)f -(displa)n(y)g(for)f(dates/times)72 b Fg(C-c)36 b(C-x)g(C-t)-450 -3264 y Fe(Clo)r(c)n(king)26 b(time)-450 3372 y Fi(start)e(clo)r(c)n(k)g -(on)g(curren)n(t)h(item)612 b Fg(C-c)36 b(C-x)g(C-i)-450 -3452 y Fi(stop)24 b(clo)r(c)n(k)h(on)f(curren)n(t)g(item)628 -b Fg(C-c)36 b(C-x)g(C-o)-450 3532 y Fi(cancel)25 b(curren)n(t)f(clo)r -(c)n(k)829 b Fg(C-c)36 b(C-x)g(C-x)-450 3612 y Fi(displa)n(y)24 -b(total)g(subtree)h(times)619 b Fg(C-c)36 b(C-x)g(C-d)-450 -3691 y Fi(remo)n(v)n(e)24 b(displa)n(y)n(ed)g(times)726 -b Fg(C-c)36 b(C-c)-450 3771 y Fi(insert/up)r(date)25 -b(table)g(with)f(clo)r(c)n(k)g(rep)r(ort)289 b Fg(C-c)36 -b(C-x)g(C-r)-450 3978 y Fh(LaT)-10 b(eX)37 b(and)g(cdlatex-mo)s(de)-450 -4143 y Fi(preview)24 b(LaT)-6 b(eX)24 b(fragmen)n(t)673 -b Fg(C-c)36 b(C-x)g(C-l)-450 4223 y Fi(Expand)25 b(abbreviation)f -(\(cdlatex-mo)r(de\))305 b Fg(TAB)-450 4303 y Fi(Insert/mo)r(dify)24 -b(math)h(sym)n(b)r(ol)e(\(cdlatex-mo)r(de\))99 b Fg(`)36 -b(/)f(')1746 -364 y Fh(Agenda)i(Views)1746 -219 y Fi(add/mo)n(v)n(e)25 +Fg(C-c)36 b(C-o)-450 4227 y Fi(Select)25 b(date)g(while)e(prompted)598 +b Fg(mouse-1/RET)-450 4306 y Fi(T)-6 b(oggle)17 b(custom)g(format)f +(displa)n(y)g(for)f(dates/times)72 b Fg(C-c)36 b(C-x)g(C-t)1746 +-364 y Fe(Clo)r(c)n(king)26 b(time)1746 -256 y Fi(start)e(clo)r(c)n(k)g +(on)g(curren)n(t)h(item)612 b Fg(C-c)36 b(C-x)g(C-i)1746 +-176 y Fi(stop)24 b(clo)r(c)n(k)h(on)f(curren)n(t)g(item)628 +b Fg(C-c)36 b(C-x)g(C-o)1746 -96 y Fi(cancel)25 b(curren)n(t)f(clo)r(c) +n(k)829 b Fg(C-c)36 b(C-x)g(C-x)1746 -17 y Fi(displa)n(y)24 +b(total)g(subtree)h(times)619 b Fg(C-c)36 b(C-x)g(C-d)1746 +63 y Fi(remo)n(v)n(e)24 b(displa)n(y)n(ed)g(times)726 +b Fg(C-c)36 b(C-c)1746 143 y Fi(insert/up)r(date)25 b(table)g(with)f +(clo)r(c)n(k)g(rep)r(ort)289 b Fg(C-c)36 b(C-x)g(C-r)3942 +-364 y Fh(Agenda)h(Views)3942 -198 y Fi(add/mo)n(v)n(e)25 b(curren)n(t)f(\014le)g(to)g(fron)n(t)g(of)f(agenda)197 -b Fg(C-c)36 b([)1746 -139 y Fi(remo)n(v)n(e)24 b(curren)n(t)g(\014le)g -(from)f(y)n(our)g(agenda)299 b Fg(C-c)36 b(])1746 -60 +b Fg(C-c)36 b([)3942 -119 y Fi(remo)n(v)n(e)24 b(curren)n(t)g(\014le)g +(from)f(y)n(our)h(agenda)298 b Fg(C-c)36 b(])3942 -39 y Fi(cycle)24 b(through)h(agenda)g(\014le)f(list)551 -b Fg(C-')1746 44 y Fi(compile)24 b(agenda)h(for)e(the)h(curren)n(t)g(w) -n(eek)320 b Fg(C-c)36 b(a)g(a)3433 20 y Ff(1)1746 123 +b Fg(C-')3942 69 y Fi(compile)24 b(agenda)h(for)e(the)h(curren)n(t)g(w) +n(eek)320 b Fg(C-c)36 b(a)g(a)5629 46 y Ff(1)3942 149 y Fi(compile)24 b(global)g(TODO)f(list)640 b Fg(C-c)36 -b(a)g(t)3433 100 y Ff(1)1746 203 y Fi(compile)24 b(TODO)f(list)g(for)g -(sp)r(eci\014c)h(k)n(eyw)n(ord)218 b Fg(C-c)36 b(a)g(T)3433 -179 y Ff(1)1746 283 y Fi(matc)n(h)25 b(tags)f(in)f(agenda)j(\014les)637 -b Fg(C-c)36 b(a)g(m)3433 259 y Ff(1)1746 362 y Fi(matc)n(h)25 -b(tags)f(in)f(TODO)h(en)n(tries)554 b Fg(C-c)36 b(a)g(M)3433 -339 y Ff(1)1746 442 y Fi(\014nd)24 b(stuc)n(k)h(pro)t(jects)869 -b Fg(C-c)36 b(a)g(#)3433 419 y Ff(1)1746 522 y Fi(sho)n(w)24 +b(a)g(t)5629 125 y Ff(1)3942 229 y Fi(compile)24 b(TODO)f(list)g(for)g +(sp)r(eci\014c)h(k)n(eyw)n(ord)218 b Fg(C-c)36 b(a)g(T)5629 +205 y Ff(1)3942 308 y Fi(matc)n(h)25 b(tags)f(in)f(agenda)j(\014les)637 +b Fg(C-c)36 b(a)g(m)5629 285 y Ff(1)3942 388 y Fi(matc)n(h)25 +b(tags)f(in)f(TODO)h(en)n(tries)554 b Fg(C-c)36 b(a)g(M)5629 +365 y Ff(1)3942 468 y Fi(\014nd)24 b(stuc)n(k)h(pro)t(jects)869 +b Fg(C-c)36 b(a)g(#)5629 444 y Ff(1)3942 547 y Fi(sho)n(w)24 b(timeline)f(of)h(curren)n(t)g(org)f(\014le)458 b Fg(C-c)36 -b(a)g(L)3433 498 y Ff(1)1746 601 y Fi(con\014gure)25 -b(custom)f(commands)570 b Fg(C-c)36 b(a)g(C)3433 578 -y Ff(1)1746 681 y Fi(con\014gure)25 b(stuc)n(k)g(pro)t(jects)708 -b Fg(C-c)36 b(a)g(!)3433 658 y Ff(1)1746 761 y Fi(agenda)25 -b(for)e(date)i(at)f(cursor)661 b Fg(C-c)36 b(C-o)1746 -888 y Fi(T)-6 b(o)24 b(set)g(categories,)h(add)f(lines)f(lik)n(e)2710 -864 y Ff(2)2747 888 y Fi(:)1746 967 y Fg(#+CATEGORY:)38 -b(MyCateg)1746 1070 y Fe(Commands)26 b(a)n(v)-5 b(ailable)25 -b(in)i(an)g(agenda)g(bu\013er)1746 1173 y(View)g(Org)g(\014le)1746 -1277 y Fi(sho)n(w)d(original)f(lo)r(cation)h(of)g(item)524 -b Fg(SPC/mouse-3)1746 1356 y Fi(sho)n(w)24 b(and)g(recen)n(ter)h(windo) -n(w)626 b Fg(L)1746 1436 y Fi(goto)25 b(original)e(lo)r(cation)h(in)g -(other)g(windo)n(w)260 b Fg(TAB/mouse-2)1746 1516 y Fi(goto)25 +b(a)g(L)5629 524 y Ff(1)3942 627 y Fi(con\014gure)25 +b(custom)f(commands)570 b Fg(C-c)36 b(a)g(C)5629 604 +y Ff(1)3942 707 y Fi(con\014gure)25 b(stuc)n(k)g(pro)t(jects)708 +b Fg(C-c)36 b(a)g(!)5629 683 y Ff(1)3942 787 y Fi(agenda)25 +b(for)e(date)i(at)f(cursor)661 b Fg(C-c)36 b(C-o)3942 +918 y Fi(T)-6 b(o)24 b(set)g(categories,)h(add)f(lines)f(lik)n(e)4906 +895 y Ff(2)4943 918 y Fi(:)3942 1003 y Fg(#+CATEGORY:)38 +b(MyCateg)3942 1111 y Fe(Commands)26 b(a)n(v)-5 b(ailable)25 +b(in)i(an)g(agenda)g(bu\013er)3942 1220 y(View)g(Org)g(\014le)3942 +1328 y Fi(sho)n(w)d(original)f(lo)r(cation)h(of)g(item)524 +b Fg(SPC/mouse-3)3942 1408 y Fi(sho)n(w)24 b(and)g(recen)n(ter)h(windo) +n(w)626 b Fg(L)3942 1487 y Fi(goto)25 b(original)e(lo)r(cation)h(in)g +(other)g(windo)n(w)260 b Fg(TAB/mouse-2)3942 1567 y Fi(goto)25 b(original)e(lo)r(cation,)h(delete)h(other)f(windo)n(ws)91 -b Fg(RET)1746 1595 y Fi(sho)n(w)24 b(subtree)g(in)g(indirect)f -(bu\013er,)h(ded.)g(frame)127 b Fg(b)1746 1675 y Fi(toggle)25 -b(follo)n(w-mo)r(de)861 b Fg(f)1746 1778 y Fe(Change)27 -b(displa)n(y)1746 1881 y Fi(delete)e(other)f(windo)n(ws)791 -b Fg(o)1746 1961 y Fi(switc)n(h)24 b(to)g(daily)g(/)g(w)n(eekly)g(view) -534 b Fg(d)36 b(/)f(w)1746 2041 y Fi(toggle)25 b(inclusion)e(of)h -(diary)f(en)n(tries)473 b Fg(D)1746 2121 y Fi(toggle)25 -b(time)f(grid)f(for)g(daily)g(sc)n(hedule)388 b Fg(g)1746 -2200 y Fi(toggle)25 b(displa)n(y)e(of)h(logb)r(o)r(ok)g(en)n(tries)446 -b Fg(l)1746 2280 y Fi(refresh)23 b(agenda)i(bu\013er)f(with)g(an)n(y)g -(c)n(hanges)239 b Fg(r)1746 2360 y Fi(sa)n(v)n(e)24 b(all)f(org-mo)r -(de)h(bu\013ers)673 b Fg(s)1746 2439 y Fi(displa)n(y)24 -b(the)g(follo)n(wing)f Fg(org-agenda-ndays)221 b(RIGHT)1746 -2519 y Fi(displa)n(y)24 b(the)g(previous)g Fg(org-agenda-ndays)238 -b(LEFT)1746 2599 y Fi(goto)25 b(to)r(da)n(y)1110 b Fg(.)1746 -2702 y Fe(Remote)27 b(editing)1746 2805 y Fi(digit)d(argumen)n(t)984 -b Fg(0-9)1746 2885 y Fi(c)n(hange)25 b(state)g(of)f(curren)n(t)g(TODO)f -(item)333 b Fg(t)1746 2964 y Fi(kill)23 b(item)g(and)i(source)830 -b Fg(C-k)1746 3044 y Fi(arc)n(hiv)n(e)24 b(the)h(subtree)854 -b Fg($)1746 3124 y Fi(sho)n(w)24 b(tags)g(of)g(curren)n(t)g(headline) -536 b Fg(T)1746 3204 y Fi(set)24 b(tags)h(for)d(curren)n(t)j(headline) -573 b Fg(:)1746 3283 y Fi(toggle)25 b(AR)n(CHIVE)e(tag)779 -b Fg(a)1746 3363 y Fi(set)24 b(priorit)n(y)f(of)g(curren)n(t)i(item)612 -b Fg(p)1746 3443 y Fi(raise/lo)n(w)n(er)23 b(priorit)n(y)g(of)h(curren) -n(t)g(item)361 b Fg(S-UP/DOWN)3501 3419 y Ff(3)1746 3522 +b Fg(RET)3942 1647 y Fi(sho)n(w)24 b(subtree)g(in)g(indirect)f +(bu\013er,)h(ded.)g(frame)127 b Fg(b)3942 1727 y Fi(toggle)25 +b(follo)n(w-mo)r(de)861 b Fg(f)3942 1835 y Fe(Change)27 +b(displa)n(y)3942 1943 y Fi(delete)e(other)f(windo)n(ws)791 +b Fg(o)3942 2023 y Fi(switc)n(h)24 b(to)g(da)n(y/w)n(eek/mon)n(th/y)n +(ear)k(view)281 b Fg(d)36 b(w)f(m)h(y)3942 2103 y Fi(toggle)25 +b(inclusion)e(of)h(diary)f(en)n(tries)473 b Fg(D)3942 +2182 y Fi(toggle)25 b(time)f(grid)f(for)g(daily)g(sc)n(hedule)388 +b Fg(g)3942 2262 y Fi(toggle)25 b(displa)n(y)e(of)h(logb)r(o)r(ok)g(en) +n(tries)446 b Fg(l)3942 2342 y Fi(refresh)23 b(agenda)i(bu\013er)f +(with)g(an)n(y)g(c)n(hanges)239 b Fg(r)3942 2421 y Fi(sa)n(v)n(e)24 +b(all)f(org-mo)r(de)h(bu\013ers)673 b Fg(s)3942 2501 +y Fi(displa)n(y)24 b(the)g(follo)n(wing)f Fg(org-agenda-ndays)221 +b(RIGHT)3942 2581 y Fi(displa)n(y)24 b(the)g(previous)g +Fg(org-agenda-ndays)238 b(LEFT)3942 2660 y Fi(goto)25 +b(to)r(da)n(y)1110 b Fg(.)3942 2769 y Fe(Remote)27 b(editing)3942 +2877 y Fi(digit)d(argumen)n(t)984 b Fg(0-9)3942 2957 +y Fi(c)n(hange)25 b(state)g(of)f(curren)n(t)g(TODO)f(item)333 +b Fg(t)3942 3036 y Fi(kill)23 b(item)g(and)i(source)830 +b Fg(C-k)3942 3116 y Fi(arc)n(hiv)n(e)24 b(the)h(subtree)854 +b Fg($)3942 3196 y Fi(sho)n(w)24 b(tags)g(of)g(curren)n(t)g(headline) +536 b Fg(T)3942 3276 y Fi(set)24 b(tags)h(for)d(curren)n(t)j(headline) +573 b Fg(:)3942 3355 y Fi(toggle)25 b(AR)n(CHIVE)e(tag)779 +b Fg(a)3942 3435 y Fi(set)24 b(priorit)n(y)f(of)g(curren)n(t)i(item)612 +b Fg(p)3942 3515 y Fi(raise/lo)n(w)n(er)23 b(priorit)n(y)g(of)h(curren) +n(t)g(item)361 b Fg(S-UP/DOWN)5697 3491 y Ff(3)3942 3594 y Fi(displa)n(y)24 b(w)n(eigh)n(ted)h(priorit)n(y)e(of)g(curren)n(t)h -(item)189 b Fg(P)1746 3602 y Fi(sc)n(hedule/set)26 b(deadline)e(for)f -(this)g(item)377 b Fg(C-c)36 b(C-s/d)1746 3682 y Fi(c)n(hange)25 +(item)189 b Fg(P)3942 3674 y Fi(sc)n(hedule/set)26 b(deadline)e(for)f +(this)g(item)377 b Fg(C-c)36 b(C-s/d)3942 3754 y Fi(c)n(hange)25 b(timestamp)g(to)f(one)g(da)n(y)h(earlier/later)139 b -Fg(S-LEFT/RIGHT)3606 3658 y Ff(3)1746 3762 y Fi(c)n(hange)25 -b(timestamp)g(to)f(to)r(da)n(y)598 b Fg(>)1746 3841 y +Fg(S-LEFT/RIGHT)5802 3730 y Ff(3)3942 3833 y Fi(c)n(hange)25 +b(timestamp)g(to)f(to)r(da)n(y)598 b Fg(>)3942 3913 y Fi(insert)23 b(new)i(en)n(try)f(in)n(to)g(diary)612 b -Fg(i)1746 3944 y Fi(start)24 b(the)h(clo)r(c)n(k)f(on)g(curren)n(t)g -(item)g(\(clo)r(c)n(k-in\))176 b Fg(I)1746 4024 y Fi(stop)24 -b(the)h(clo)r(c)n(k)f(\(clo)r(c)n(k-out\))654 b Fg(O)1746 -4104 y Fi(cancel)25 b(curren)n(t)f(clo)r(c)n(k)829 b -Fg(X)1746 4207 y Fe(Misc)1746 4310 y Fi(Op)r(en)24 b(link)f(in)h -(curren)n(t)g(line)673 b Fg(C-c)36 b(C-o)3942 -364 y -Fe(Calendar)26 b(commands)3942 -268 y Fi(\014nd)e(agenda)h(cursor)f -(date)g(in)g(calendar)350 b Fg(c)3942 -188 y Fi(compute)25 -b(agenda)g(for)e(calendar)i(cursor)e(date)180 b Fg(c)3942 --109 y Fi(sho)n(w)24 b(phases)g(of)f(the)i(mo)r(on)669 -b Fg(M)3942 -29 y Fi(sho)n(w)24 b(sunrise/sunset)g(times)636 -b Fg(S)3942 51 y Fi(sho)n(w)24 b(holida)n(ys)1014 b Fg(H)3942 -130 y Fi(con)n(v)n(ert)25 b(date)g(to)f(other)g(calendars)478 -b Fg(C)3942 226 y Fe(Quit)27 b(and)g(Exit)3942 322 y +Fg(i)p eop end +%%Page: 3 3 +TeXDict begin @landscape 3 2 bop -450 -364 a Fi(start)24 +b(the)h(clo)r(c)n(k)f(on)g(curren)n(t)g(item)g(\(clo)r(c)n(k-in\))176 +b Fg(I)-450 -284 y Fi(stop)24 b(the)h(clo)r(c)n(k)f(\(clo)r(c)n +(k-out\))654 b Fg(O)-450 -205 y Fi(cancel)25 b(curren)n(t)f(clo)r(c)n +(k)829 b Fg(X)-450 -109 y Fe(Misc)-450 -14 y Fi(Op)r(en)24 +b(link)f(in)h(curren)n(t)g(line)673 b Fg(C-c)36 b(C-o)-450 +81 y Fe(Calendar)26 b(commands)-450 176 y Fi(\014nd)e(agenda)h(cursor)f +(date)g(in)g(calendar)350 b Fg(c)-450 256 y Fi(compute)25 +b(agenda)g(for)e(calendar)i(cursor)e(date)180 b Fg(c)-450 +336 y Fi(sho)n(w)24 b(phases)g(of)f(the)i(mo)r(on)669 +b Fg(M)-450 415 y Fi(sho)n(w)24 b(sunrise/sunset)g(times)636 +b Fg(S)-450 495 y Fi(sho)n(w)24 b(holida)n(ys)1014 b +Fg(H)-450 575 y Fi(con)n(v)n(ert)25 b(date)g(to)f(other)g(calendars)478 +b Fg(C)-450 670 y Fe(Quit)27 b(and)g(Exit)-450 765 y Fi(quit)d(agenda,)h(remo)n(v)n(e)f(agenda)h(bu\013er)376 -b Fg(q)3942 402 y Fi(exit)24 b(agenda,)h(remo)n(v)n(e)f(all)f(agenda)i -(bu\013ers)258 b Fg(x)3942 543 y Fh(Calendar)36 b(and)h(Diary)i(In)m -(tegration)3942 658 y Fi(Include)25 b(Emacs)f(diary)f(en)n(tries)h(in)n -(to)g(Org-mo)r(de)f(agenda)j(with:)3942 754 y Fg(\(setq)37 -b(org-agenda-include-diary)42 b(t\))3942 897 y Fh(Exp)s(orting)d(and)e -(Publishing)3942 1013 y Fi(Exp)r(orting)32 b(creates)g(\014les)g(with)f -(extensions)i Fd(.txt)k Fi(and)32 b Fd(.html)38 b Fi(in)31 -b(the)3942 1092 y(curren)n(t)c(directory)-6 b(.)38 b(Publishing)26 -b(puts)g(the)h(resulting)f(\014le)g(in)n(to)h(some)3942 -1172 y(other)d(place.)3942 1268 y(exp)r(ort/publish)h(dispatc)n(her)642 -b Fg(C-c)36 b(C-e)3942 1364 y Fi(exp)r(ort)25 b(visible)e(part)g(only) -715 b Fg(C-c)36 b(C-e)g(v)3942 1443 y Fi(insert)23 b(template)j(of)d -(exp)r(ort)h(options)423 b Fg(C-c)36 b(C-x)g(t)3942 1523 -y Fi(toggle)25 b(\014xed)f(width)g(for)f(en)n(try)h(or)g(region)295 -b Fg(C-c)36 b(:)3942 1619 y Fe(HTML)27 b(formatting)3942 -1715 y Fi(mak)n(e)d(w)n(ords)g Fe(b)r(old)897 b Fg(*bold*)3942 -1795 y Fi(mak)n(e)24 b(w)n(ords)g Fd(italic)898 b Fg(/italic/)3942 -1874 y Fi(mak)n(e)24 b(w)n(ords)g(underlined)p 4329 1887 -326 4 v 728 w Fg(_underlined_)3942 1954 y Fi(sub-)f(and)i(sup)r -(erscripts)781 b Fg(x^3,)36 b(J_dust)3942 2034 y Fi(T)3981 -2048 y(E)4020 2034 y(X-lik)n(e)23 b(macros)940 b Fg(\\alpha,)37 -b(\\to)3942 2113 y Fi(t)n(yp)r(eset)25 b(lines)f(in)f(\014xed)h(width)g -(fon)n(t)460 b Fg(start)37 b(with)f(:)3942 2193 y Fi(tables)24 -b(are)g(exp)r(orted)h(as)f(HTML)f(tables)321 b Fg(start)37 -b(with)f(|)3942 2273 y Fi(links)23 b(b)r(ecome)i(HTML)e(links)640 -b Fg(http:...)73 b(etc)3942 2352 y Fi(include)24 b(h)n(tml)g(tags)905 -b Fg(@...@)3942 2448 y Fe(Commen)n(ts:)35 b(T)-7 -b(ext)27 b(not)f(b)r(eing)i(exp)r(orted)3942 2544 y Fi(T)-6 -b(ext)22 b(b)r(efore)f(the)h(\014rst)f(headline)g(is)f(not)i -(considered)g(part)f(of)g(the)h(do)r(c-)3942 2624 y(umen)n(t)29 -b(and)f(is)f(therefore)h(nev)n(er)g(exp)r(orted.)44 b(Lines)28 -b(starting)g(with)g Fg(#)3942 2704 y Fi(are)j(commen)n(ts)g(and)h(are)e -(not)i(exp)r(orted.)53 b(Subtrees)32 b(whose)f(header)3942 -2783 y(starts)24 b(with)g(COMMENT)e(are)i(nev)n(er)g(exp)r(orted.)3942 -2879 y(toggle)h(COMMENT)d(k)n(eyw)n(ord)j(on)f(en)n(try)285 -b Fg(C-c)36 b(;)3942 3020 y Fh(Dynamic)i(Blo)s(c)m(ks)3942 -3136 y Fi(up)r(date)25 b(dynamic)f(blo)r(c)n(k)h(at)f(p)r(oin)n(t)486 -b Fg(C-c)36 b(C-x)g(C-u)3942 3215 y Fi(up)r(date)25 b(all)e(dynamic)h -(blo)r(c)n(ks)490 b Fg(C-u)36 b(C-c)g(C-x)g(C-u)3942 -3355 y Fh(Notes)3942 3448 y Ff(1)4013 3471 y Fi(This)e(is)f(only)h(a)h -(suggestion)g(for)e(a)h(binding)h(of)e(this)h(command.)3942 -3551 y(Cho)r(ose)24 b(y)n(ou)h(o)n(wn)f(k)n(ey)g(as)g(sho)n(wn)g(under) -g(INST)-6 b(ALLA)g(TION.)3942 3623 y Ff(2)4004 3647 y +b Fg(q)-450 845 y Fi(exit)24 b(agenda,)h(remo)n(v)n(e)f(all)f(agenda)i +(bu\013ers)258 b Fg(x)-450 983 y Fh(Calendar)36 b(and)h(Diary)i(In)m +(tegration)-450 1096 y Fi(Include)25 b(Emacs)f(diary)f(en)n(tries)h(in) +n(to)g(Org-mo)r(de)f(agenda)j(with:)-450 1191 y Fg(\(setq)37 +b(org-agenda-include-diary)42 b(t\))-450 1331 y Fh(LaT)-10 +b(eX)37 b(and)g(cdlatex-mo)s(de)-450 1444 y Fi(preview)24 +b(LaT)-6 b(eX)24 b(fragmen)n(t)673 b Fg(C-c)36 b(C-x)g(C-l)-450 +1524 y Fi(Expand)25 b(abbreviation)f(\(cdlatex-mo)r(de\))305 +b Fg(TAB)-450 1603 y Fi(Insert/mo)r(dify)24 b(math)h(sym)n(b)r(ol)e +(\(cdlatex-mo)r(de\))99 b Fg(`)36 b(/)f(')-450 1745 y +Fh(Exp)s(orting)k(and)e(Publishing)-450 1858 y Fi(Exp)r(orting)32 +b(creates)g(\014les)g(with)f(extensions)i Fd(.txt)k Fi(and)32 +b Fd(.html)38 b Fi(in)31 b(the)-450 1938 y(curren)n(t)c(directory)-6 +b(.)38 b(Publishing)26 b(puts)g(the)h(resulting)f(\014le)g(in)n(to)h +(some)-450 2018 y(other)d(place.)-450 2113 y(exp)r(ort/publish)h +(dispatc)n(her)642 b Fg(C-c)36 b(C-e)-450 2208 y Fi(exp)r(ort)25 +b(visible)e(part)g(only)715 b Fg(C-c)36 b(C-e)g(v)-450 +2288 y Fi(insert)23 b(template)j(of)d(exp)r(ort)h(options)423 +b Fg(C-c)36 b(C-x)g(t)-450 2367 y Fi(toggle)25 b(\014xed)f(width)g(for) +f(en)n(try)h(or)g(region)295 b Fg(C-c)36 b(:)-450 2463 +y Fe(Commen)n(ts:)f(T)-7 b(ext)27 b(not)f(b)r(eing)i(exp)r(orted)-450 +2558 y Fi(T)-6 b(ext)22 b(b)r(efore)f(the)h(\014rst)f(headline)g(is)f +(not)i(considered)g(part)f(of)g(the)h(do)r(c-)-450 2638 +y(umen)n(t)29 b(and)f(is)f(therefore)h(nev)n(er)g(exp)r(orted.)44 +b(Lines)28 b(starting)g(with)g Fg(#)-450 2717 y Fi(are)j(commen)n(ts)g +(and)h(are)e(not)i(exp)r(orted.)53 b(Subtrees)32 b(whose)f(header)-450 +2797 y(starts)24 b(with)g(COMMENT)e(are)i(nev)n(er)g(exp)r(orted.)-450 +2892 y(toggle)h(COMMENT)d(k)n(eyw)n(ord)j(on)f(en)n(try)285 +b Fg(C-c)36 b(;)-450 3030 y Fh(Dynamic)i(Blo)s(c)m(ks)-450 +3143 y Fi(up)r(date)25 b(dynamic)f(blo)r(c)n(k)h(at)f(p)r(oin)n(t)486 +b Fg(C-c)36 b(C-x)g(C-u)-450 3223 y Fi(up)r(date)25 b(all)e(dynamic)h +(blo)r(c)n(ks)490 b Fg(C-u)36 b(C-c)g(C-x)g(C-u)-450 +3360 y Fh(Notes)-450 3450 y Ff(1)-379 3473 y Fi(This)e(is)f(only)h(a)h +(suggestion)g(for)e(a)h(binding)h(of)e(this)h(command.)-450 +3553 y(Cho)r(ose)24 b(y)n(ou)h(o)n(wn)f(k)n(ey)g(as)g(sho)n(wn)g(under) +g(INST)-6 b(ALLA)g(TION.)-450 3624 y Ff(2)-388 3648 y Fi(After)24 b(c)n(hanging)i(a)f Fg(#+KEYWORD)i Fi(or)e -Fg(<<>>)j Fi(line,)c(press)g Fg(C-c)3942 3726 +Fg(<<>>)j Fi(line,)c(press)g Fg(C-c)-450 3728 y(C-c)g Fi(with)g(the)h(cursor)e(still)f(in)i(the)g(line)g(to)g(up)r -(date.)3942 3799 y Ff(3)4003 3822 y Fi(Keybinding)g(a\013ected)i(b)n(y) -e Fg(org-CUA-compatibility)p Fi(.)4235 3915 y Fb(Cop)n(yrigh)n(t)4538 -3913 y(c)4521 3915 y Fa(\015)d Fb(2007)i(F)-5 b(ree)21 -b(Soft)n(w)n(are)i(F)-5 b(oundation,)20 b(Inc.)4495 3978 -y(v4.78)h(for)h(Org-Mo)r(de)e(4.78,)i(2007)4612 4042 -y(Author:)k(Philip)18 b(Ro)r(ok)n(e)4173 4106 y(based)j(on)g(refcard)g -(design)g(and)f(format)i(b)n(y)f(Stephen)f(Gildea)3942 -4186 y(P)n(ermission)28 b(is)f(gran)n(ted)i(to)f(mak)n(e)h(and)e -(distribute)f(copies)j(of)f(this)f(card)h(pro-)3942 4250 -y(vided)23 b(the)h(cop)n(yrigh)n(t)h(notice)g(and)f(this)f(p)r -(ermission)h(notice)g(are)h(preserv)n(ed)g(on)3942 4313 -y(all)20 b(copies.)p eop end +(date.)-450 3799 y Ff(3)-389 3823 y Fi(Keybinding)g(a\013ected)i(b)n(y) +e Fg(org-CUA-compatibility)p Fi(.)-157 3915 y Fb(Cop)n(yrigh)n(t)146 +3913 y(c)129 3915 y Fa(\015)d Fb(2007)i(F)-5 b(ree)21 +b(Soft)n(w)n(are)i(F)-5 b(oundation,)20 b(Inc.)103 3979 +y(v5.02)h(for)h(Org-Mo)r(de)e(5.02,)i(2007)220 4043 y(Author:)k(Philip) +18 b(Ro)r(ok)n(e)-219 4107 y(based)j(on)g(refcard)g(design)g(and)f +(format)i(b)n(y)f(Stephen)f(Gildea)-450 4186 y(P)n(ermission)28 +b(is)f(gran)n(ted)i(to)f(mak)n(e)h(and)e(distribute)f(copies)j(of)f +(this)f(card)h(pro-)-450 4250 y(vided)23 b(the)h(cop)n(yrigh)n(t)h +(notice)g(and)f(this)f(p)r(ermission)h(notice)g(are)h(preserv)n(ed)g +(on)-450 4313 y(all)20 b(copies.)p eop end %%Trailer userdict /end-hook known{end-hook}if