Chapter 10 - Liquids and Solids

Day 1

08/17

Syllabus

  • Introduction to intermolecular forces
    • Ask, “What makes an ideal gas, ideal?” at end. Lead into liquids.

Canvas Exams

  • Syllabus

Day 2

08/19

Intermolecular Forces

Opener
  • Show intermolecular forces graph
  • Draw structures and discuss boiling points (PDF)
    • IMF strength
    • Predominant IMF
    • Mass/size
    • Surface area
  • Viscosity
    • Correlates with IMF strength
    • Decreases with increasing temperature
  • Surface Tension
    • Correlates with IMF strength
    • Decreases with increasing temperature

Canvas Exams

  • Intermolecular Forces
  • Viscosity
  • Surface Tension

Day 3

08/22

Opener
  • Volatile vs non-volatile
  • Phase Transitions
    • q = Hgas - Hliquid = ΔHvap
    • q = Hliquid - Hsolid = ΔHfus
    • latent heat of vaporization, ΔHvap
    • latent heat of fusion, ΔHfus
    • latent heat of sublimation, ΔHsub = , ΔHfus + ΔHvap
    • Compare reverse process
      • Hcondensation = ΔHvap
      • Hfreezing = ΔHfus
      • Hdeposition = ΔHsub
  • Compare/contrast different values for ΔHvap and ΔHfus (extensive property)
    • Example: Water, 43.98 kJ mol-1; acetic acid 23.36 kJ mol-1
    • If 10 mol of each were vaporized at the same temperature, water would require more heat to vaporize
  • Vapor Pressure
    • Equilibrium of vapor and liquid at some temperature
      • Note: As vaporization occurs, the liquid cools - must be done slowly to ensure equilibrium
    • Increases with increasing temperature

Canvas Exams

  • Enthalpy
  • Vapor pressure

Day 4

8/24

  • Clausius-Clapeyron
    • Relates vapor pressure and temperature
    • Show “extensive property” of ΔHvap for Canvas Exam (Question 5)

Canvas Exams

  • Clausius-Clapeyron

Day 5

08/26

  • Discuss HW Exam Policies
  • Phase Diagrams
  • Heating Curves
    • For heating a substance (extensive property)
      • specific heat
    • For phase transitions (extensive property)
      • latent heat of vaporization
      • latent heat of fusion

Canvas Exams

  • Phases
  • Heating Curves

Day 6

08/29

Opener
  • Solids
    • General types
    • Unit cells (cubic) - pg. 130
    • Equivalent atoms
    • Empirical formula


Chapter 11 - Solutions

Day 7

8/31

Opener
  • Solutions
    • Types
  • Concentration Units (Part 1)
    • Concentration doesn’t change with mass/volume of solution
    • Whiteboard work PDF

No Canvas Exam – Fundamentals Exam at 6PM

Day 8

9/2

  • Solubility
    • Unsaturated
    • Saturated
  • Concentration Units (Part 2)

Canvas Exams

  • Concentration Units

HW Exam 10 due 9/4 at 5AM

Day 9

9/7

  • Solubility
    • “Like dissolves like”
    • Gases
      • Solubility vs temperature
        • CO2 in warming oceans
      • Solubility vs pressure
      • Henry’s Law
    • Inorganics
      • Solubility vs temperature

Canvas Exams

  • Henry’s Law

Day 10

9/9

  • Solubility
    • Organics
      • Solubility vs IMFs
      • Aryl halides – more dispersion – decreasing solubility
        • armoatics/resonance/hybrid orbitals
  • Electrolytes
    • Van’t Hoff factor
    • Difference between moles of X and moles of particles
      • NaCl(aq) → Na+(aq) + Cl(aq)     1 mol NaCl vs 2 mol of dissolved particles
    • Van’t Hoff flashcards (slides)

Canvas Exams

  • Electrolytes

Day 11

9/12

  • Colligative Properties
    • Board work
    • Vapor pressure lowering
    • Freezing point depression
    • Boiling point elevation
    • Osmotic pressure

Canvas Exams

  1. Colligative Properties

Chapter 12 - Kinetics

Day 12

9/14

Opener
  • Chemical Kinetics and Reaction Velocity
  • Average rate
  • Instantaneous rate
  • Rate expression
  • Board work

Canvas Exams

  • Average Rates

Day 13

9/16

Opener
  • Rate laws (PDF)
    • Multi-step vs. elementary step
  • Method of Initial rates

Canvas Exams

  • Method of Initial Rates

Day 14

9/19

  • Integrated Rate laws PDF
  • Rate constant units
  • Half-life
    • Derive zeroth-order
  • Molecularity

Canvas Exams

  • Integrated Rate Laws

Day 15

9/21

Canvas Exams

  • Arrhenius Equation

Day 16

9/23

  • Overview (PDF)
  • Kinetics Excel Worksheet (XLSX)
  • N2O4 Rate Data (Butterworths, 1973)
  • ΔH, ΔS, ΔG, K, k
  • Reaction energy diagram

Day 17

9/26

  • Review energy diagrams
  • Catalysts and enzymes (PDF)
  • Arrhenius and equilibrium board work (PDF)
    • Arrhenius plot (k vs. T; ln(k) vs 1/T)
    • Finding Ea
    • Finding K from ΔG°
    • Finding Krev

Canvas Exams

  • Energy Diagrams

Chapter 13 – Equilibrium

Day 18

9/28

  • Equilibrium board work (PDF)
  • Equilibrium expression from rate laws
  • ICE Tables and equilibrium problems
    • NO2 at 25 °C
    • Cubic functions
    • Small ‘x’ approximation

Day 19

9/30

  • Correcting the equilibrium constants (PDF)
  • Equilibrium board work (PDF)
    • NO2 at 727 °C

Day 20

10/3

  • Equilibrium problems – Different types
  • Q vs. K

Canvas Exams

  • Equilibrium Basics

Day 21

10/5

  • Take-Home Exam – Instructions
  • Review
    • Kinetics and Equilibrium

Canvas Exams

  • Equilibrium

Day 22

10/07

  • Equilibrium concentrations vs. equilibrium pressures
    • Kc vs. Kp
  • Le Chatelier’s Principle
  • Transforming K

Canvas Exams

  • Le Chatelier’s Principle

Day 23

10/10

  • Ksp, solubility, and thermodynamics (Link)

Chapter 14 – Acid/Base Equilibria

Day 24

10/12

  • Oxidation-Reduction reactions
    • Oxidation numbers
  • Acid-ionization reactions
    • Strong vs. weak acids (Ka)
    • 3 M HCl vs HF equilibria and pH

Day 25

10/17

  • Acid/Base definitions
  • Identifying conjugates

Canvas Exams

  • Acid Base Basics

Day 26

10/19

  • Ka/Kb/Kw
  • pKa/pKb/pKw
  • pH/pOH/pKw
  • Acidic/basic salts

Day 27

10/21

  • Recap
    • Salts
    • pH of strong/weak acid solutions
    • pH of water (at varying T)
  • Percent ionization
  • Introduction to buffers

Canvas Exams

  • Acid Base Relationships
  • Acid Ionization

Day 28

10/24

  • Buffers and Henderson-Hasselbalch

Canvas Exams

  • Buffers

Day 29

10/26

  • Titrations

Day 30

10/28

  • Titrations

Chapter 15 – Other Equilibria

Day 31

10/31

  • Recap Ksp
  • Common ion
  • Formation constant

Canvas Exams

  • Solubility Product

Chapter 16 – Thermodynamics

Day 32

11/02

  • Recap ΔH, ΔS, and ΔG
  • Entropy – predictions

Day 33

11/04

  • Entropy

Day 34

11/07

  • Gibbs free energy
  • ΔG, K, and Q
  • Exam instructions

Day 35

11/09

No formal class meeting – Comprehensive Exam 6PM

Day 36

11/11

  • Thermodynamics: Energy scaling with reaction amount

Chapter 17 - Electrochemistry

Day 37

11/14

  • Exam recap
  • Refresh of redox reactions (PDF)
    • Oxidation-Reduction
    • Oxidation states

Day 38

11/16

  • Notes (PDF)
  • Half-reactions
  • Galvanic cell
  • Cell notation
  • Ecell, ΔG°, K

Day 39

11/18

  • Nernst Equation
  • Concentration Cell

Day 40

11/26

  • Quantitative electrochemistry

Chapter 21

Day 41

11/28

  • Isotopic notation
  • Radioactivity
  • Balancing nuclear reactions

Day 42

11/30

  • Nuclear kinetics
  • Mass-energy equivalence
  • Fusion/Fission



LS0tDQp0aXRsZTogIjIwMjIgRmFsbCBMZWN0dXJlIE5vdGVzIg0Kb3V0cHV0OiANCiAgaHRtbF9ub3RlYm9vazoNCiAgICBpbmNsdWRlczogICAgICANCiAgICAgIGluX2hlYWRlcjogLi4vLi4vZmlsZXMvZGlzdGlsbC1oZWFkZXIuaHRtbA0KLS0tDQoNCmBgYHtjc3N9DQpAaW1wb3J0IHVybCgnaHR0cHM6Ly91c2UudHlwZWtpdC5uZXQvbnJ3NnVmay5jc3MnKTsNCg0KaDEsIGgyLCBoMyB7DQogIGZvbnQtZmFtaWx5OiAnY2FsbHVuYSc7DQogIGZvbnQtd2VpZ2h0OiA3MDA7DQogIGZvbnQtc3R5bGU6IG5vcm1hbDsNCn0NCg0KYm9keSB7DQogIGZvbnQtZmFtaWx5OiAnY2FsbHVuYS1zYW5zJywgc2Fucy1zZXJpZjsNCiAgZm9udC1zaXplOiAxLjc0NWVtOw0KICBmb250LXdlaWdodDogNDAwOw0KfQ0KDQpkZXRhaWxzIHsNCiAgcGFkZGluZy1ib3R0b206IDEwcHg7DQp9DQoNCiNkcm9wZG93biB7DQogIGJhY2tncm91bmQtY29sb3I6ICMwMDZiYTYwYTsNCiAgYm9yZGVyLXJhZGl1czogNnB4Ow0KICBwYWRkaW5nOiAyMHB4Ow0KfQ0KYGBgDQoNCg0KIyMgQ2hhcHRlciAxMCAtIExpcXVpZHMgYW5kIFNvbGlkcw0KDQojIyMgRGF5IDENCg0KMDgvMTcNCg0KKipTeWxsYWJ1cyoqDQoNCiogSW50cm9kdWN0aW9uIHRvICppbnRlcm1vbGVjdWxhciBmb3JjZXMqDQogICogQXNrLCAiV2hhdCBtYWtlcyBhbiBpZGVhbCBnYXMsIGlkZWFsPyIgYXQgZW5kLiBMZWFkIGludG8gbGlxdWlkcy4NCg0KKipDYW52YXMgRXhhbXMqKg0KDQoqIFN5bGxhYnVzDQoNCiMjIyBEYXkgMg0KDQowOC8xOQ0KDQoqSW50ZXJtb2xlY3VsYXIgRm9yY2VzKg0KDQo8ZGV0YWlscz4NCjxzdW1tYXJ5PioqT3BlbmVyKio8L3N1bW1hcnk+DQo8ZGl2IGlkID0gImRyb3Bkb3duIj4NCg0KKk91dGxpbmVzIG9mIFRoZW9yZXRpY2FsIENoZW1pc3RyeSogLSBHZXRtYW4gLSAxOTEzIC0gcGcuIDc5DQoNCltQREZdKGxpcXVpZHMtaW50cm9kdWN0aW9uLnBkZikNCg0KIVtdKGxpcXVpZHMtaW50cm9kdWN0aW9uLmpwZyl7d2lkdGg9NTAlfQ0KDQo8L2Rpdj4NCjwvZGV0YWlscz4gDQoNCiogU2hvdyAqaW50ZXJtb2xlY3VsYXIgZm9yY2VzIGdyYXBoKg0KKiBEcmF3IHN0cnVjdHVyZXMgYW5kIGRpc2N1c3MgYm9pbGluZyBwb2ludHMgKFtQREZdKGltZnMtYW5kLWJwcy5wZGYpKQ0KICAqIElNRiBzdHJlbmd0aA0KICAqIFByZWRvbWluYW50IElNRg0KICAqIE1hc3Mvc2l6ZQ0KICAqIFN1cmZhY2UgYXJlYQ0KKiAqVmlzY29zaXR5Kg0KICAqIENvcnJlbGF0ZXMgd2l0aCBJTUYgc3RyZW5ndGgNCiAgKiBEZWNyZWFzZXMgd2l0aCBpbmNyZWFzaW5nIHRlbXBlcmF0dXJlDQoqICpTdXJmYWNlIFRlbnNpb24qDQogICogQ29ycmVsYXRlcyB3aXRoIElNRiBzdHJlbmd0aA0KICAqIERlY3JlYXNlcyB3aXRoIGluY3JlYXNpbmcgdGVtcGVyYXR1cmUNCiAgDQoqKkNhbnZhcyBFeGFtcyoqDQoNCiogSW50ZXJtb2xlY3VsYXIgRm9yY2VzDQoqIFZpc2Nvc2l0eQ0KKiBTdXJmYWNlIFRlbnNpb24NCg0KIyMjIERheSAzDQoNCjA4LzIyDQoNCjxkZXRhaWxzPg0KPHN1bW1hcnk+KipPcGVuZXIqKjwvc3VtbWFyeT4NCjxkaXYgaWQgPSAiZHJvcGRvd24iPg0KDQoqUHJpbmNpcGxlcyBvZiBQaHlzaWNhbCBDaGVtaXN0cnkqIC0gQnJleSAtIDE5NTggLSBwZy4gMjUtMjYNCg0KW1BERl0odmFwb3ItcHJlc3N1cmUucGRmKQ0KDQohW10odmFwb3ItcHJlc3N1cmUtMS5qcGcpe3dpZHRoPTUwJX0NCg0KIVtdKHZhcG9yLXByZXNzdXJlLTIuanBnKXt3aWR0aD01MCV9DQoNCiFbXSh2YXBvci1wcmVzc3VyZS0zLmpwZyl7d2lkdGg9NTAlfQ0KDQohW10odmFwb3ItcHJlc3N1cmUtNC5qcGcpe3dpZHRoPTUwJX0NCg0KIVtdKHZhcG9yLXByZXNzdXJlLTUuanBnKXt3aWR0aD01MCV9DQoNCjwvZGl2Pg0KPC9kZXRhaWxzPiANCg0KKiBWb2xhdGlsZSB2cyBub24tdm9sYXRpbGUNCiogUGhhc2UgVHJhbnNpdGlvbnMNCiAgKiAqcSogPSAqSCo8c3ViPmdhczwvc3ViPiAtICpIKjxzdWI+bGlxdWlkPC9zdWI+ID0gJkRlbHRhOypIKjxzdWI+dmFwPC9zdWI+DQogICogKnEqID0gKkgqPHN1Yj5saXF1aWQ8L3N1Yj4gLSAqSCo8c3ViPnNvbGlkPC9zdWI+ID0gJkRlbHRhOypIKjxzdWI+ZnVzPC9zdWI+DQogICogbGF0ZW50IGhlYXQgb2YgdmFwb3JpemF0aW9uLCAmRGVsdGE7KkgqPHN1Yj52YXA8L3N1Yj4NCiAgKiBsYXRlbnQgaGVhdCBvZiBmdXNpb24sICZEZWx0YTsqSCo8c3ViPmZ1czwvc3ViPg0KICAqIGxhdGVudCBoZWF0IG9mIHN1YmxpbWF0aW9uLCAmRGVsdGE7KkgqPHN1Yj5zdWI8L3N1Yj4gPSAsICZEZWx0YTsqSCo8c3ViPmZ1czwvc3ViPiArICZEZWx0YTsqSCo8c3ViPnZhcDwvc3ViPg0KICAqIENvbXBhcmUgcmV2ZXJzZSBwcm9jZXNzDQogICAgKiAtJkRlbHRhOypIKjxzdWI+Y29uZGVuc2F0aW9uPC9zdWI+ID0gJkRlbHRhOypIKjxzdWI+dmFwPC9zdWI+DQogICAgKiAtJkRlbHRhOypIKjxzdWI+ZnJlZXppbmc8L3N1Yj4gPSAmRGVsdGE7KkgqPHN1Yj5mdXM8L3N1Yj4NCiAgICAqIC0mRGVsdGE7KkgqPHN1Yj5kZXBvc2l0aW9uPC9zdWI+ID0gJkRlbHRhOypIKjxzdWI+c3ViPC9zdWI+DQoqIENvbXBhcmUvY29udHJhc3QgZGlmZmVyZW50IHZhbHVlcyBmb3IgJkRlbHRhOypIKjxzdWI+dmFwPC9zdWI+IGFuZCAmRGVsdGE7KkgqPHN1Yj5mdXM8L3N1Yj4gKGV4dGVuc2l2ZSBwcm9wZXJ0eSkNCiAgKiBFeGFtcGxlOiBXYXRlciwgNDMuOTgga0ogbW9sPHN1cD4tMTwvc3VwPjsgYWNldGljIGFjaWQgMjMuMzYga0ogbW9sPHN1cD4tMTwvc3VwPg0KICAqIElmIDEwIG1vbCBvZiBlYWNoIHdlcmUgdmFwb3JpemVkIGF0IHRoZSBzYW1lIHRlbXBlcmF0dXJlLCB3YXRlciB3b3VsZCByZXF1aXJlIG1vcmUgaGVhdCB0byB2YXBvcml6ZQ0KKiBWYXBvciBQcmVzc3VyZQ0KICAqIEVxdWlsaWJyaXVtIG9mIHZhcG9yIGFuZCBsaXF1aWQgYXQgc29tZSB0ZW1wZXJhdHVyZQ0KICAgICogTm90ZTogQXMgdmFwb3JpemF0aW9uIG9jY3VycywgdGhlIGxpcXVpZCBjb29scyAtIG11c3QgYmUgZG9uZSBzbG93bHkgdG8gZW5zdXJlIGVxdWlsaWJyaXVtDQogICogSW5jcmVhc2VzIHdpdGggaW5jcmVhc2luZyB0ZW1wZXJhdHVyZQ0KDQogICAgDQoqKkNhbnZhcyBFeGFtcyoqDQoNCiogRW50aGFscHkNCiogVmFwb3IgcHJlc3N1cmUNCg0KIyMjIERheSA0DQoNCjgvMjQNCg0KKiBDbGF1c2l1cy1DbGFwZXlyb24NCiAgKiBSZWxhdGVzIHZhcG9yIHByZXNzdXJlIGFuZCB0ZW1wZXJhdHVyZQ0KICAqIFNob3cgImV4dGVuc2l2ZSBwcm9wZXJ0eSIgb2YgJkRlbHRhOypIKjxzdWI+dmFwPC9zdWI+IGZvciBDYW52YXMgRXhhbSAoUXVlc3Rpb24gNSkNCiAgICANCioqQ2FudmFzIEV4YW1zKioNCg0KKiBDbGF1c2l1cy1DbGFwZXlyb24NCg0KIyMjIERheSA1DQoNCjA4LzI2DQoNCiogRGlzY3VzcyBIVyBFeGFtIFBvbGljaWVzDQoqIFBoYXNlIERpYWdyYW1zDQoqIEhlYXRpbmcgQ3VydmVzDQogICogRm9yIGhlYXRpbmcgYSBzdWJzdGFuY2UgKGV4dGVuc2l2ZSBwcm9wZXJ0eSkNCiAgICAqIHNwZWNpZmljIGhlYXQNCiAgKiBGb3IgcGhhc2UgdHJhbnNpdGlvbnMgKGV4dGVuc2l2ZSBwcm9wZXJ0eSkNCiAgICAqIGxhdGVudCBoZWF0IG9mIHZhcG9yaXphdGlvbg0KICAgICogbGF0ZW50IGhlYXQgb2YgZnVzaW9uDQoNCioqQ2FudmFzIEV4YW1zKioNCg0KKiBQaGFzZXMNCiogSGVhdGluZyBDdXJ2ZXMNCg0KDQojIyMgRGF5IDYNCg0KMDgvMjkNCg0KPGRldGFpbHM+DQo8c3VtbWFyeT4qKk9wZW5lcioqPC9zdW1tYXJ5Pg0KPGRpdiBpZCA9ICJkcm9wZG93biI+DQoNCipPdXRsaW5lcyBvZiBUaGVvcmV0aWNhbCBDaGVtaXN0cnkqIC0gR2V0bWFuIC0gMTkxMyAtIHBnLiAxMjjigJMxMzANCg0KW1BERl0oc29saWRzLnBkZikNCg0KIVtdKHNvbGlkcy0xLmpwZyl7d2lkdGg9NTAlfQ0KDQohW10oc29saWRzLTIuanBnKXt3aWR0aD01MCV9DQoNCiFbXShzb2xpZHMtMy5qcGcpe3dpZHRoPTUwJX0NCg0KPC9kaXY+DQo8L2RldGFpbHM+IA0KDQoqIFNvbGlkcw0KICAqIEdlbmVyYWwgdHlwZXMNCiAgKiBVbml0IGNlbGxzIChjdWJpYykgLSBwZy4gMTMwDQogICogRXF1aXZhbGVudCBhdG9tcw0KICAqIEVtcGlyaWNhbCBmb3JtdWxhDQoNCjxicj4NCg0KIyMgQ2hhcHRlciAxMSAtIFNvbHV0aW9ucw0KDQojIyMgRGF5IDcNCg0KOC8zMQ0KDQo8ZGV0YWlscz4NCjxzdW1tYXJ5PioqT3BlbmVyKio8L3N1bW1hcnk+DQo8ZGl2IGlkID0gImRyb3Bkb3duIj4NCg0KKk91dGxpbmVzIG9mIFRoZW9yZXRpY2FsIENoZW1pc3RyeSogLSBHZXRtYW4gLSAxOTEzIC0gcGcuIDE0NQ0KDQpbUERGXShzb2x1dGlvbnMucGRmKQ0KDQohW10oc29sdXRpb25zLTEuanBnKXt3aWR0aD01MCV9DQoNCjwvZGl2Pg0KPC9kZXRhaWxzPg0KDQoNCiogU29sdXRpb25zDQogICogVHlwZXMNCiogQ29uY2VudHJhdGlvbiBVbml0cyAoUGFydCAxKQ0KICAqIENvbmNlbnRyYXRpb24gZG9lc24ndCBjaGFuZ2Ugd2l0aCBtYXNzL3ZvbHVtZSBvZiBzb2x1dGlvbg0KICAqIFdoaXRlYm9hcmQgd29yayBbUERGXShzb2x1dGlvbnMtd2hpdGVib2FyZC5wZGYpDQoNCk5vIENhbnZhcyBFeGFtIC0tIEZ1bmRhbWVudGFscyBFeGFtIGF0IDZQTQ0KDQojIyMgRGF5IDgNCg0KOS8yDQoNCiogU29sdWJpbGl0eQ0KICAqIFVuc2F0dXJhdGVkDQogICogU2F0dXJhdGVkDQoqIENvbmNlbnRyYXRpb24gVW5pdHMgKFBhcnQgMikNCiAgKiBbQ29uY2VudHJhdGlvbiBDb252ZXJzaW9uc10oaHR0cHM6Ly9kb3Juc2h1bGQuY2hlbWlzdHJ5Lm1zc3RhdGUuZWR1L2Jvb2tzL2NoZW1pc3RyeS9jb25jZW50cmF0aW9uLWNvbnZlcnNpb25zLmh0bWwpDQogICogV2hpdGVib2FyZCB3b3JrIFtQREZdKGNvbmMtY29udmVyc2lvbnMucGRmKQ0KICAqIERlbW9uc3RyYXRlIHRoYXQgYW55IG1hc3MgY291bGQgYmUgYXNzdW1lZC4uLiBjb25jZW50cmF0aW9uIGRvZXNuJ3QgY2hhbmdlDQogIA0KKipDYW52YXMgRXhhbXMqKg0KDQoqIENvbmNlbnRyYXRpb24gVW5pdHMNCg0KSFcgRXhhbSAxMCBkdWUgOS80IGF0IDVBTQ0KDQojIyMgRGF5IDkNCg0KOS83DQoNCiogU29sdWJpbGl0eQ0KICAqICJMaWtlIGRpc3NvbHZlcyBsaWtlIg0KICAqIEdhc2VzDQogICAgKiBTb2x1YmlsaXR5IHZzIHRlbXBlcmF0dXJlDQogICAgICAqIENPPHN1Yj4yPC9zdWI+IGluIHdhcm1pbmcgb2NlYW5zDQogICAgKiBTb2x1YmlsaXR5IHZzIHByZXNzdXJlDQogICAgKiBbSGVucnkncyBMYXddKGhlbnJ5cy1sYXcucGRmKQ0KICAqIElub3JnYW5pY3MNCiAgICAqIFNvbHViaWxpdHkgdnMgdGVtcGVyYXR1cmUNCg0KKipDYW52YXMgRXhhbXMqKg0KDQoqIEhlbnJ5J3MgTGF3DQoNCiMjIyBEYXkgMTANCg0KOS85DQoNCiogU29sdWJpbGl0eQ0KICAqIE9yZ2FuaWNzDQogICAgKiBTb2x1YmlsaXR5IHZzIElNRnMNCiAgICAqIEFyeWwgaGFsaWRlcyAtLSBtb3JlIGRpc3BlcnNpb24gLS0gZGVjcmVhc2luZyBzb2x1YmlsaXR5DQogICAgICAqIGFybW9hdGljcy9yZXNvbmFuY2UvaHlicmlkIG9yYml0YWxzDQoqIFtFbGVjdHJvbHl0ZXNdKGVsZWN0cm9seXRlcy5wZGYpDQogICogVmFuJ3QgSG9mZiBmYWN0b3INCiAgKiBEaWZmZXJlbmNlIGJldHdlZW4gbW9sZXMgb2YgWCBhbmQgbW9sZXMgb2YgcGFydGljbGVzDQogICAgKiBOYUNsKCphcSopICZyYXJyOyBOYTxzdXA+Kzwvc3VwPigqYXEqKSArIENsPHN1cD7igJM8L3N1cD4oKmFxKikgJm5ic3A7Jm5ic3A7Jm5ic3A7IDEgbW9sIE5hQ2wgdnMgMiBtb2wgb2YgZGlzc29sdmVkIHBhcnRpY2xlcw0KICAqIFZhbid0IEhvZmYgZmxhc2hjYXJkcyAoW3NsaWRlc10oaHR0cHM6Ly9kb3Juc2h1bGQuY2hlbWlzdHJ5Lm1zc3RhdGUuZWR1L3NsaWRlcy92YW50LWhvZmYvKSkNCg0KDQoqKkNhbnZhcyBFeGFtcyoqDQoNCiogRWxlY3Ryb2x5dGVzDQoNCiMjIyBEYXkgMTENCg0KOS8xMg0KDQoqIENvbGxpZ2F0aXZlIFByb3BlcnRpZXMNCiAgKiBbQm9hcmQgd29ya10oY29sbGlnYXRpdmUtcHJvcGVydGllcy5wZGYpDQogICogVmFwb3IgcHJlc3N1cmUgbG93ZXJpbmcNCiAgKiBGcmVlemluZyBwb2ludCBkZXByZXNzaW9uDQogICogQm9pbGluZyBwb2ludCBlbGV2YXRpb24NCiAgKiBPc21vdGljIHByZXNzdXJlDQoNCioqQ2FudmFzIEV4YW1zKioNCg0KMS4gQ29sbGlnYXRpdmUgUHJvcGVydGllcw0KDQojIyBDaGFwdGVyIDEyIC0gS2luZXRpY3MNCg0KIyMjIERheSAxMg0KDQo5LzE0DQoNCjxkZXRhaWxzPg0KPHN1bW1hcnk+KipPcGVuZXIqKjwvc3VtbWFyeT4NCjxkaXYgaWQgPSAiZHJvcGRvd24iPg0KDQoqT3V0bGluZXMgb2YgVGhlb3JldGljYWwgQ2hlbWlzdHJ5KiAtIEdldG1hbiAtIDE5MTMgLSBwZy4gMTYxDQoNCltQREZdKGtpbmV0aWNzLWludHJvZHVjdGlvbi5wZGYpDQoNCiFbXShraW5ldGljcy1pbnRyb2R1Y3Rpb24tMS5qcGcpe3dpZHRoPTUwJX0NCg0KIVtdKGtpbmV0aWNzLWludHJvZHVjdGlvbi0yLmpwZyl7d2lkdGg9NTAlfQ0KDQo8L2Rpdj4NCjwvZGV0YWlscz4gDQoNCg0KKiBDaGVtaWNhbCBLaW5ldGljcyBhbmQgUmVhY3Rpb24gVmVsb2NpdHkNCiogQXZlcmFnZSByYXRlDQoqIEluc3RhbnRhbmVvdXMgcmF0ZQ0KKiBSYXRlIGV4cHJlc3Npb24NCiogW0JvYXJkIHdvcmtdKHJlYWN0aW9uLXJhdGVzLTEucGRmKQ0KDQoqKkNhbnZhcyBFeGFtcyoqDQoNCiogQXZlcmFnZSBSYXRlcw0KDQojIyMgRGF5IDEzDQoNCjkvMTYNCg0KPGRldGFpbHM+DQo8c3VtbWFyeT4qKk9wZW5lcioqPC9zdW1tYXJ5Pg0KPGRpdiBpZCA9ICJkcm9wZG93biI+DQoNCipPdXRsaW5lcyBvZiBUaGVvcmV0aWNhbCBDaGVtaXN0cnkqIC0gR2V0bWFuIC0gMTkxMyAtIHBnLiAxNjQNCg0KW1BERl0ocmF0ZS1sYXcucGRmKQ0KDQohW10ocmF0ZS1sYXctMS5qcGcpe3dpZHRoPTUwJX0NCg0KIVtdKHJhdGUtbGF3LTIuanBnKXt3aWR0aD01MCV9DQoNCiFbXShyYXRlLWxhdy0zLmpwZyl7d2lkdGg9NTAlfQ0KDQoNCiFbXShyYXRlLWxhdy00LmpwZyl7d2lkdGg9NTAlfQ0KDQo8L2Rpdj4NCjwvZGV0YWlscz4gDQoNCiogUmF0ZSBsYXdzIChbUERGXShyYXRlLWxhd3MucGRmKSkNCiAgKiBNdWx0aS1zdGVwIHZzLiBlbGVtZW50YXJ5IHN0ZXANCiogTWV0aG9kIG9mIEluaXRpYWwgcmF0ZXMNCg0KKipDYW52YXMgRXhhbXMqKg0KDQoqIE1ldGhvZCBvZiBJbml0aWFsIFJhdGVzDQoNCiMjIyBEYXkgMTQNCg0KOS8xOQ0KDQoqIEludGVncmF0ZWQgUmF0ZSBsYXdzIFtQREZdKGludC1yYXRlLWxhdy1oYWxmLWxpZmUucGRmKQ0KKiBSYXRlIGNvbnN0YW50IHVuaXRzDQoqIEhhbGYtbGlmZQ0KICAqIERlcml2ZSB6ZXJvdGgtb3JkZXINCiogTW9sZWN1bGFyaXR5DQoNCioqQ2FudmFzIEV4YW1zKioNCg0KKiBJbnRlZ3JhdGVkIFJhdGUgTGF3cw0KDQojIyMgRGF5IDE1DQoNCjkvMjENCg0KKiBBcnJoZW5pdXMgRXF1YXRpb24gKFtQREZdKGFycmhlbml1cy1lcXVhdGlvbi5wZGYpKQ0KKiBbTk88c3ViPjI8L3N1Yj4gUmF0ZSBEYXRhXShubzItcmF0ZS1kYXRhLWJ1dHRlcndvcnRocy0xOTczLnBkZikgKEJ1dHRlcndvcnRocywgMTk3MykNCg0KKipDYW52YXMgRXhhbXMqKg0KDQoqIEFycmhlbml1cyBFcXVhdGlvbg0KDQojIyMgRGF5IDE2DQoNCjkvMjMNCg0KKiBPdmVydmlldyAoW1BERl0odGhlcm1vLWFuZC1raW5ldGljcy5wZGYpKQ0KKiBLaW5ldGljcyBFeGNlbCBXb3Jrc2hlZXQgKFtYTFNYXShubzItd29ya3NoZWV0Lnhsc3gpKQ0KKiBbTjxzdWI+Mjwvc3ViPk88c3ViPjQ8L3N1Yj4gUmF0ZSBEYXRhXShuMm80LXJhdGUtZGF0YS1idXR0ZXJ3b3J0aHMtMTk3My5wZGYpIChCdXR0ZXJ3b3J0aHMsIDE5NzMpDQoqICZEZWx0YTsqSCosICZEZWx0YTsqUyosICZEZWx0YTsqRyosICpLKiwgKmsqDQoqIFJlYWN0aW9uIGVuZXJneSBkaWFncmFtDQoNCiMjIyBEYXkgMTcNCg0KOS8yNg0KDQoqIFJldmlldyBlbmVyZ3kgZGlhZ3JhbXMNCiogQ2F0YWx5c3RzIGFuZCBlbnp5bWVzIChbUERGXShjYXRhbHlzdHMtYW5kLWVuenltZXMucGRmKSkNCiogQXJyaGVuaXVzIGFuZCBlcXVpbGlicml1bSBib2FyZCB3b3JrIChbUERGXShhcnJoZW5pdXMtYW5kLWVxdWlsaWJyaXVtLnBkZikpDQogICogQXJyaGVuaXVzIHBsb3QgKGsgdnMuIFQ7IGxuKGspIHZzIDEvVCkNCiAgKiBGaW5kaW5nICpFKjxzdWI+YTwvc3ViPg0KICAqIEZpbmRpbmcgKksqIGZyb20gJkRlbHRhOypHKiZkZWc7DQogICogRmluZGluZyAqSyo8c3ViPnJldjwvc3ViPg0KDQoqKkNhbnZhcyBFeGFtcyoqDQoNCiogRW5lcmd5IERpYWdyYW1zDQoNCiMjIENoYXB0ZXIgMTMg4oCTIEVxdWlsaWJyaXVtDQoNCiMjIyBEYXkgMTgNCg0KOS8yOA0KDQoqIEVxdWlsaWJyaXVtIGJvYXJkIHdvcmsgKFtQREZdKGVxdWlsaWJyaXVtLTEucGRmKSkNCiogRXF1aWxpYnJpdW0gZXhwcmVzc2lvbiBmcm9tIHJhdGUgbGF3cw0KKiBJQ0UgVGFibGVzIGFuZCBlcXVpbGlicml1bSBwcm9ibGVtcw0KICAqIE5PPHN1Yj4yPC9zdWI+IGF0IDI1ICZkZWc7Qw0KICAqIEN1YmljIGZ1bmN0aW9ucw0KICAqIFNtYWxsICd4JyBhcHByb3hpbWF0aW9uDQoNCiMjIyBEYXkgMTkNCg0KOS8zMA0KDQoqIENvcnJlY3RpbmcgdGhlIGVxdWlsaWJyaXVtIGNvbnN0YW50cyAoW1BERl0oZmluZGluZy1lcXVpbGlicml1bS1jb25zdGFudC5wZGYpKQ0KKiBFcXVpbGlicml1bSBib2FyZCB3b3JrIChbUERGXShlcXVpbGlicml1bS0yLnBkZikpDQogICogTk88c3ViPjI8L3N1Yj4gYXQgNzI3ICZkZWc7Qw0KDQojIyMgRGF5IDIwDQoNCjEwLzMNCg0KKiBFcXVpbGlicml1bSBwcm9ibGVtcyAtLSBEaWZmZXJlbnQgdHlwZXMNCiogKlEqIHZzLiAqSyogDQoNCioqQ2FudmFzIEV4YW1zKioNCg0KKiBFcXVpbGlicml1bSBCYXNpY3MNCg0KIyMjIERheSAyMQ0KDQoxMC81DQoNCiogVGFrZS1Ib21lIEV4YW0gLS0gSW5zdHJ1Y3Rpb25zDQoqIFJldmlldw0KICAqIEtpbmV0aWNzIGFuZCBFcXVpbGlicml1bQ0KDQoqKkNhbnZhcyBFeGFtcyoqDQoNCiogRXF1aWxpYnJpdW0NCg0KIyMjIERheSAyMg0KDQoxMC8wNw0KDQoqIEVxdWlsaWJyaXVtIGNvbmNlbnRyYXRpb25zIHZzLiBlcXVpbGlicml1bSBwcmVzc3VyZXMNCiAgKiAqSyo8c3ViPmM8L3N1Yj4gdnMuICpLKjxzdWI+cDwvc3ViPg0KKiBMZSBDaGF0ZWxpZXIncyBQcmluY2lwbGUNCiogVHJhbnNmb3JtaW5nICpLKg0KDQoqKkNhbnZhcyBFeGFtcyoqDQoNCiogTGUgQ2hhdGVsaWVyJ3MgUHJpbmNpcGxlDQoNCiMjIyBEYXkgMjMNCg0KMTAvMTANCg0KKiAqSyo8c3ViPnNwPC9zdWI+LCBzb2x1YmlsaXR5LCBhbmQgdGhlcm1vZHluYW1pY3MgKFtMaW5rXShodHRwczovL2Rvcm5zaHVsZC5jaGVtaXN0cnkubXNzdGF0ZS5lZHUvYm9va3MvY2hlbWlzdHJ5L3NvbHViaWxpdHktcHJvZHVjdC1rc3AuaHRtbCkpDQoNCiMjIENoYXB0ZXIgMTQg4oCTIEFjaWQvQmFzZSBFcXVpbGlicmlhDQoNCiMjIyBEYXkgMjQNCg0KMTAvMTINCg0KKiBPeGlkYXRpb24tUmVkdWN0aW9uIHJlYWN0aW9ucw0KICAqIE94aWRhdGlvbiBudW1iZXJzDQoqIEFjaWQtaW9uaXphdGlvbiByZWFjdGlvbnMNCiAgKiBTdHJvbmcgdnMuIHdlYWsgYWNpZHMgKCpLKjxzdWI+YTwvc3ViPikNCiAgKiAzICpNKiBIQ2wgdnMgSEYgZXF1aWxpYnJpYSBhbmQgcEgNCg0KIyMjIERheSAyNQ0KDQoxMC8xNw0KDQoqIEFjaWQvQmFzZSBkZWZpbml0aW9ucw0KKiBJZGVudGlmeWluZyBjb25qdWdhdGVzDQoNCioqQ2FudmFzIEV4YW1zKioNCg0KKiBBY2lkIEJhc2UgQmFzaWNzDQoNCiMjIyBEYXkgMjYNCg0KMTAvMTkNCg0KKiAqSyo8c3ViPmE8L3N1Yj4vKksqPHN1Yj5iPC9zdWI+LypLKjxzdWI+dzwvc3ViPg0KKiBwKksqPHN1Yj5hPC9zdWI+L3AqSyo8c3ViPmI8L3N1Yj4vcCpLKjxzdWI+dzwvc3ViPg0KKiBwSC9wT0gvcCpLKjxzdWI+dzwvc3ViPg0KKiBBY2lkaWMvYmFzaWMgc2FsdHMNCg0KIyMjIERheSAyNw0KDQoxMC8yMQ0KDQoqIFJlY2FwDQogICogU2FsdHMNCiAgKiBwSCBvZiBzdHJvbmcvd2VhayBhY2lkIHNvbHV0aW9ucw0KICAqIHBIIG9mIHdhdGVyIChhdCB2YXJ5aW5nICpUKikNCiogUGVyY2VudCBpb25pemF0aW9uDQoqIEludHJvZHVjdGlvbiB0byBidWZmZXJzDQoNCioqQ2FudmFzIEV4YW1zKioNCg0KKiBBY2lkIEJhc2UgUmVsYXRpb25zaGlwcw0KKiBBY2lkIElvbml6YXRpb24NCg0KIyMjIERheSAyOA0KDQoxMC8yNA0KDQoqIEJ1ZmZlcnMgYW5kIEhlbmRlcnNvbi1IYXNzZWxiYWxjaA0KDQoqKkNhbnZhcyBFeGFtcyoqDQoNCiogQnVmZmVycw0KDQojIyMgRGF5IDI5DQoNCjEwLzI2DQoNCiogVGl0cmF0aW9ucw0KDQojIyMgRGF5IDMwDQoNCjEwLzI4DQoNCiogVGl0cmF0aW9ucw0KDQojIyBDaGFwdGVyIDE1IC0tIE90aGVyIEVxdWlsaWJyaWENCg0KIyMjIERheSAzMQ0KDQoxMC8zMQ0KDQoqIFJlY2FwICpLKjxzdWI+c3A8L3N1Yj4NCiogQ29tbW9uIGlvbg0KKiBGb3JtYXRpb24gY29uc3RhbnQNCg0KKipDYW52YXMgRXhhbXMqKg0KDQoqIFNvbHViaWxpdHkgUHJvZHVjdA0KDQojIyBDaGFwdGVyIDE2IC0tIFRoZXJtb2R5bmFtaWNzDQoNCiMjIyBEYXkgMzINCg0KMTEvMDINCg0KKiBSZWNhcCAmRGVsdGE7KkgqLCAmRGVsdGE7KlMqLCBhbmQgJkRlbHRhOypHKg0KKiBFbnRyb3B5IC0tIHByZWRpY3Rpb25zDQoNCiMjIyBEYXkgMzMNCg0KMTEvMDQNCg0KKiBFbnRyb3B5DQoNCiMjIyBEYXkgMzQNCg0KMTEvMDcNCg0KKiBHaWJicyBmcmVlIGVuZXJneQ0KKiAmRGVsdGE7KkcqLCAqSyosIGFuZCAqUSoNCiogRXhhbSBpbnN0cnVjdGlvbnMNCg0KIyMjIERheSAzNQ0KDQoxMS8wOQ0KDQpObyBmb3JtYWwgY2xhc3MgbWVldGluZyAtLSBDb21wcmVoZW5zaXZlIEV4YW0gNlBNDQoNCg0KIyMjIERheSAzNg0KDQoxMS8xMQ0KDQoqIFRoZXJtb2R5bmFtaWNzOiBFbmVyZ3kgc2NhbGluZyB3aXRoIHJlYWN0aW9uIGFtb3VudA0KDQojIyBDaGFwdGVyIDE3IC0gRWxlY3Ryb2NoZW1pc3RyeQ0KDQojIyMgRGF5IDM3DQoNCjExLzE0DQoNCiogRXhhbSByZWNhcA0KKiBSZWZyZXNoIG9mIHJlZG94IHJlYWN0aW9ucyAoW1BERl0ob3hpZGF0aW9uLW51bWJlcnMtcmVkb3gucGRmKSkNCiAgKiBPeGlkYXRpb24tUmVkdWN0aW9uDQogICogT3hpZGF0aW9uIHN0YXRlcw0KDQojIyMgRGF5IDM4DQoNCjExLzE2DQoNCiogTm90ZXMgKFtQREZdKGVsZWN0cm9jaGVtLTEucGRmKSkNCiogSGFsZi1yZWFjdGlvbnMNCiogR2FsdmFuaWMgY2VsbA0KKiBDZWxsIG5vdGF0aW9uDQoqICpFKjxzdWI+Y2VsbDwvc3ViPiwgJkRlbHRhOypHKiZkZWc7LCAqSyoNCg0KIyMjIERheSAzOQ0KDQoxMS8xOA0KDQoqIE5lcm5zdCBFcXVhdGlvbg0KKiBDb25jZW50cmF0aW9uIENlbGwNCg0KIyMjIERheSA0MA0KDQoxMS8yNg0KDQoqIFF1YW50aXRhdGl2ZSBlbGVjdHJvY2hlbWlzdHJ5DQoNCiMjIENoYXB0ZXIgMjENCg0KIyMjIERheSA0MQ0KDQoxMS8yOA0KDQoqIElzb3RvcGljIG5vdGF0aW9uDQoqIFJhZGlvYWN0aXZpdHkNCiogQmFsYW5jaW5nIG51Y2xlYXIgcmVhY3Rpb25zDQoNCiMjIyBEYXkgNDINCg0KMTEvMzANCg0KKiBOdWNsZWFyIGtpbmV0aWNzDQoqIE1hc3MtZW5lcmd5IGVxdWl2YWxlbmNlDQoqIEZ1c2lvbi9GaXNzaW9uDQoNCjxicj4NCjxicj4NCg==