Building Mashups by Example Rattapoom Tuchinda Doctoral Defense - - PowerPoint PPT Presentation

building mashups by example
SMART_READER_LITE
LIVE PREVIEW

Building Mashups by Example Rattapoom Tuchinda Doctoral Defense - - PowerPoint PPT Presentation

Building Mashups by Example Rattapoom Tuchinda Doctoral Defense July 22, 2008 1 Whats a Mashup? A website or application that combines content from more than one source into an integrated experience [wikipedia] a) LA crime map b) zillow.com


slide-1
SLIDE 1

1

Building Mashups by Example

Rattapoom Tuchinda Doctoral Defense

July 22, 2008

slide-2
SLIDE 2

2

What’s a Mashup?

a) LA crime map c) Ski bonk b) zillow.com

A website or application that combines content from more than one source into an integrated experience [wikipedia] Combined Data gives new insight / provides new services

  • Crime Report from

different counties

  • Map
  • Real Estate Listing
  • Property Tax
  • Weather
  • Snow Report
  • Snow Resorts

Introduction Approach Evaluation Related Work Conclusion

slide-3
SLIDE 3

3

Statistics and Trends

Survey of top 50 Mashups

  • Divide into five categories

based on programming structures

  • Focus of this thesis is on

the first four categories which account for 47% of the most popular Mashups

Introduction Approach Evaluation Related Work Conclusion

slide-4
SLIDE 4

4

Wrapper Wrapper

Data Retrieval

Clean Clean Attribute Attribute

Calibration

  • source modeling
  • cleaning

Combine

Integration

Customize Display

Display

Mashup Building Issues

Introduction Approach Evaluation Related Work Conclusion

slide-5
SLIDE 5

5

Wrapper

Data Retrieval

Clean Attribute

Calibration

  • source modeling
  • cleaning

Customize Display

Display

Type 1: One Simple Source

Introduction Approach Evaluation Related Work Conclusion

slide-6
SLIDE 6

6

Wrapper Wrapper

Data Retrieval

Clean Clean Attribute Attribute

Calibration

  • source modeling
  • cleaning

Union

Integration

Customize Display

Display

Type 2: Union

Introduction Approach Evaluation Related Work Conclusion

slide-7
SLIDE 7

7

Wrapper

Data Retrieval

Clean Attribute

Calibration

  • source modeling
  • cleaning

Customize Display

Display

Type 3: One Source with Form

Introduction Approach Evaluation Related Work Conclusion

slide-8
SLIDE 8

8

Wrapper Wrapper

Data Retrieval

Clean Clean Attribute Attribute

Calibration

  • source modeling
  • cleaning

Join

Integration

Customize Display

Display

Type 4: Database Join

Introduction Approach Evaluation Related Work Conclusion

slide-9
SLIDE 9

9

Wrapper Wrapper

Data Retrieval

Clean Clean Attribute Attribute

Calibration

  • source modeling
  • cleaning

Combine

Integration

Customize Display

Display

Type 5: Customized Display

Introduction Approach Evaluation Related Work Conclusion

slide-10
SLIDE 10

10

Goal: Create Mashups without Programming

  • Doesn’t translate to not having to understand programming.

Yahoo’s Pipes Widget Paradigm

  • Widgets (i.e., 43 for Pipes, 300+

for MS) represents an operation

  • n the data.
  • Locating and learning to

customize widget can be time consuming

  • Most tools focus on particular

issues and ignore others. Can we come up with a framework that addresses all of the issues while still making the Mashup building process easy?

Existing Approaches

Introduction Approach Evaluation Related Work Conclusion

slide-11
SLIDE 11

11

Web users can build Mashups effectively using an integrated framework that lets them solve the problems of data extraction, source modeling, data cleaning, and data integration by specifying examples instead of programming operations.

Thesis Statement

Introduction Approach Evaluation Related Work Conclusion

slide-12
SLIDE 12

12

Contributions

  • A programming by demonstration

approach that uses a single table for building a Mashup

  • An integrated approach that links data

extraction, source modeling, data cleaning, and data integration together.

  • A query formulation technique that allows

users to specify examples to build complicated queries.

Introduction Approach Evaluation Related Work Conclusion

slide-13
SLIDE 13

13

Key Ideas

  • Focus on data, not operations

– Users are more familiar with data.

  • Leverage existing database

– Help source modeling, cleaning, and data integration.

  • Consolidate as opposed to Divide-And-Conquer

– Solving a problem in one issue can help solve another issue. – Interacting within a single spreadsheet platform

Introduction Approach Evaluation Related Work Conclusion

slide-14
SLIDE 14

14

Embedded Browser Our system: Karma Introduction Approach Evaluation Related Work Conclusion

slide-15
SLIDE 15

15

Embedded Browser Our system: Karma Introduction Approach Evaluation Related Work Conclusion

slide-16
SLIDE 16

16

Embedded Browser Table

Our system: Karma

Introduction Approach Evaluation Related Work Conclusion

slide-17
SLIDE 17

17

Embedded Browser Table Interaction Modes

Our system: Karma

Introduction Approach Evaluation Related Work Conclusion

slide-18
SLIDE 18

18

{Restaurant name, address, phone, Review} {Restaurant name, address, phone, review, Date of Inspection, Score}

Map Clean Extract

{Restaurant name, address, Date of Inspection, Score}

Clean Extract

Introduction Approach Evaluation Related Work Conclusion

slide-19
SLIDE 19

19

{Restaurant name, address, phone, Review} {Restaurant name, address, phone, review, Date of Inspection, Score}

Map Clean Extract

{Restaurant name, address, Date of Inspection, Score}

Clean Extract

Introduction Approach Evaluation Related Work Conclusion

slide-20
SLIDE 20

20

{Restaurant name, address, phone, Review} {Restaurant name, address, phone, review, Date of Inspection, Score}

Map Clean Extract Database

Introduction Approach Evaluation Related Work Conclusion

slide-21
SLIDE 21

21

{Restaurant name, address, phone, Review} {Restaurant name, address, phone, review, Date of Inspection, Score}

Map Clean Extract Database

Introduction Approach Evaluation Related Work Conclusion

slide-22
SLIDE 22

22

{Restaurant name, address, phone, Review} {Restaurant name, address, phone, review, Date of Inspection, Score}

Map Clean Extract Database

Introduction Approach Evaluation Related Work Conclusion

  • Database contains past

Mashups and data tables

slide-23
SLIDE 23

23

Data Retrieval: Extraction

Tbody/tr[1]/td[2]/a

TBODY tr tr td td

1. 2. Japon Bistro

td a br br

970 E Colora.. Upscale yet affordabl..

td a br br

8400 Wilshir. Chic elegance….. Hokusai

Introduction Approach Evaluation Related Work Conclusion

slide-24
SLIDE 24

24

Data Retrieval: Extraction

Tbody/tr[1]/td[2]/a

TBODY tr tr td td

1. 2. Japon Bistro

td a br br

970 E Colora.. Upscale yet affordabl..

td a br br

8400 Wilshir. Chic elegance….. Hokusai

Introduction Approach Evaluation Related Work Conclusion

  • Tbody/tr*/td*/a
slide-25
SLIDE 25

25

Data Retrieval: Navigation

TBODY tr tr td td

1. 2. Japon Bistro

td a br br

970 E Colora.. Upscale yet affordab

td a br br

8400 Wilshir. Chic elegance… Hokusai

Introduction Approach Evaluation Related Work Conclusion

slide-26
SLIDE 26

26

Data Retrieval: Navigation

TBODY tr tr td td

1. 2. Japon Bistro

td a br br

970 E Colora.. Upscale yet affordab

td a br br

8400 Wilshir. Chic elegance… Hokusai

Introduction Approach Evaluation Related Work Conclusion

slide-27
SLIDE 27

27

Data Retrieval: Navigation

TBODY tr tr td td

1. 2. Japon Bistro

td a br br

970 E Colora.. Upscale yet affordab

td a br br

8400 Wilshir. Chic elegance… Hokusai

Introduction Approach Evaluation Related Work Conclusion

slide-28
SLIDE 28

28

Source Modeling (Attribute selection)

Possible Attribute restaurant name (3) artist name (1) {a |a,s: a att (s) (val(a,s) V)}

Sushi Sasabune Hokusai Japon Bistro

Newly extracted data

.. .. 23 Katana .. .. 25 Sushi Roku .. .. 27 Sushi Sasabune .. .. zagat Rating restaurant name

Zagat

.. .. .. .. .. .. French Renoir .. .. Japanese Hokusai .. .. nationality artist name

Artist Info

95 .. 927 E.. Japon Bistro 99 .. 8439.. Katana 90 .. 8400.. Hokusai Health Rating .. Address restaurant name

LA Health Rating

Introduction Approach Evaluation Related Work Conclusion

  • Database
slide-29
SLIDE 29

29

Data Cleaning: using existing values

Data repository

95 .. 927 E.. Japon Bistro 99 .. 8439.. Katana 90 .. 8400.. Hokusai Health Rating .. Address restaurant name .. .. 23 Katana .. .. 25 Sushi Roku .. .. 27 Sushi Sasabune .. .. zagat Rating restaurant name

Zagat LA Health Rating

Sushi Roka Sushi Sasabune Hokusai Japon Bistro

Newly extracted data

Restaurant name

Introduction Approach Evaluation Related Work Conclusion

slide-30
SLIDE 30

30

Data Cleaning: using existing values

Data repository

95 .. 927 E.. Japon Bistro 99 .. 8439.. Katana 90 .. 8400.. Hokusai Health Rating .. Address restaurant name .. .. 23 Katana .. .. 25 Sushi Roku .. .. 27 Sushi Sasabune .. .. zagat Rating restaurant name

Zagat LA Health Rating

Sushi Roka Sushi Sasabune Hokusai Japon Bistro

Newly extracted data

Restaurant name

Introduction Approach Evaluation Related Work Conclusion

slide-31
SLIDE 31

31

Data Cleaning: using predefined rules

. . .

Predefined Rules

31 Reviews 31 Subset Rule: (s1s2..sk) (d1d2…dt) (k <= t) si {d1,d2,…,dt} di dj Introduction Approach Evaluation Related Work Conclusion

slide-32
SLIDE 32

32

Data Cleaning: using predefined rules

. . .

Predefined Rules

31 Reviews 31 Subset Rule: (s1s2..sk) (d1d2…dt) (k <= t) si {d1,d2,…,dt} di dj Introduction Approach Evaluation Related Work Conclusion

slide-33
SLIDE 33

33

Data Integration [tuchinda 2007]

Introduction Approach Evaluation Related Work Conclusion

slide-34
SLIDE 34

34

Data Integration [tuchinda 2007]

Introduction Approach Evaluation Related Work Conclusion

slide-35
SLIDE 35

35

Data Integration [tuchinda 2007]

Introduction Approach Evaluation Related Work Conclusion

slide-36
SLIDE 36

36

Data Integration (cont.)

Data repository

95 .. 927 E.. Japon Bistro 99 .. 8439.. Katana 90 .. 8400.. Hokusai Health Rating .. Address restaurant name .. .. 23 Katana .. .. 25 Sushi Roku .. .. 27 Sushi Sasabune .. .. zagat Rating restaurant name

Zagat LA Health Rating

Introduction Approach Evaluation Related Work Conclusion

slide-37
SLIDE 37

37

Data Integration (cont.)

Data repository

95 .. 927 E.. Japon Bistro 99 .. 8439.. Katana 90 .. 8400.. Hokusai Health Rating .. Address restaurant name .. .. 23 Katana .. .. 25 Sushi Roku .. .. 27 Sushi Sasabune .. .. zagat Rating restaurant name

Zagat LA Health Rating

Introduction Approach Evaluation Related Work Conclusion

slide-38
SLIDE 38

38

Data Integration (cont.)

Data repository

95 .. 927 E.. Japon Bistro 99 .. 8439.. Katana 90 .. 8400.. Hokusai Health Rating .. Address restaurant name .. .. 23 Katana .. .. 25 Sushi Roku .. .. 27 Sushi Sasabune .. .. zagat Rating restaurant name

Zagat LA Health Rating

Introduction Approach Evaluation Related Work Conclusion

slide-39
SLIDE 39

39

Data Integration (cont.)

{v} = val(a,s) where a {x} s is any source where att(s) {x} {}

{a}R = possible new attribute selection for row i. {x} = Set intersection({a}) over all the value rows.

Data repository

95 .. 927 E.. Japon Bistro 99 .. 8439.. Katana 90 .. 8400.. Hokusai Health Rating .. Address restaurant name .. .. 23 Katana .. .. 25 Sushi Roku .. .. 27 Sushi Sasabune .. .. zagat Rating restaurant name

Zagat LA Health Rating

Introduction Approach Evaluation Related Work Conclusion

slide-40
SLIDE 40

40

Honolulu : {(city, tax_properties), (city, favorite_vacation_spot)} Honolulu v all value Los Angeles : {(city, tax_properties), (song name, pop_music)} Los Angeles a all attribute v all values attributeOf(v) {city, song name} Can we determine the attribute now? Yes

Single Column Example

{x} = Set intersection({a}) over all the value rows. {v} = val(a,s) where a {x} s is any source where att(s) {x} {} City

Introduction Approach Evaluation Related Work Conclusion

slide-41
SLIDE 41

41

Map Generation

Introduction Approach Evaluation Related Work Conclusion

slide-42
SLIDE 42

42

Evaluation

  • Baseline: A combination of Dapper/Pipes
  • Claims:
  • 1. Users with no programming experiences can build all

four Mashup types.

  • 2. Karma takes less time to complete each subtask.
  • 3. Overall, the user takes less time to build the same

Mashup in Karma compared to Dapper/Pipes

  • Users:

– Programmers (20) – Non-programmers (3)

Introduction Approach Evaluation Related Work Conclusion

  • If subjects (programmers) who are familiar with workflow and widgets spend

more time on Dapper/Pipes in general, then the non-programmer subjects would spend more time on Dapper/Pipes as well if they were to learn how to use those systems.

slide-43
SLIDE 43

43

Evaluation: Setup

Introduction Approach Evaluation Related Work Conclusion

  • Familiarization
  • Programmers

(2 assignments on DP)

  • Review Package
  • 30 minutes tutorial

Practice

  • 2-3 tasks using

Karma

Test (3 tasks)

  • Programmers: Alternating

between Karma vs. DP for each task

  • Non Programmers: use only

Karma

  • Screen are recorded using

video capture software

Using 5 minutes cut off time

slide-44
SLIDE 44

44

Evaluation: Tasks

Task No. Mashup Type Data Extraction Source Modeling Data Cleaning Data Integration 1 1 (1 source) Moderate Simple Difficult N/A 2 2,3 (union+form) Difficult Simple Simple Union (simple) 3 4 (join 2 sources) Simple Simple N/A Join (difficult)

Introduction Approach Evaluation Related Work Conclusion

  • Claim 1

Users with no programming experiences can build all four Mashup types.

slide-45
SLIDE 45

45

Evaluation: Tasks

Task No. Mashup Type Data Extraction Source Modeling Data Cleaning Data Integration 1 1 (1 source) Moderate Simple Difficult N/A 2 2,3 (union+form) Difficult Simple Simple Union (simple) 3 4 (join 2 sources) Simple Simple N/A Join (difficult)

Introduction Approach Evaluation Related Work Conclusion

  • Claim 2

When the Mashup subtask is difficult, Karma takes less time to complete that subtask.

slide-46
SLIDE 46

46

Evaluation: Tasks

Task No. Mashup Type Data Extraction Source Modeling Data Cleaning Data Integration 1 1 (1 source) Moderate Simple Difficult N/A 2 2,3 (union+form) Difficult Simple Simple Union (simple) 3 4 (join 2 sources) Simple Simple N/A Join (difficult)

Introduction Approach Evaluation Related Work Conclusion

  • Claim 3

Overall, the user takes less time to build the same Mashup in Karma compared to Dapper/Pipes

slide-47
SLIDE 47

47

Claim 1: Users with no programming experiences can build all four Mashup types

slide-48
SLIDE 48

48

Evaluation: Non-Programmers

Introduction Approach Evaluation Related Work Conclusion

slide-49
SLIDE 49

49

Claim 2: Karma takes less time to complete each subtask

slide-50
SLIDE 50

50

Evaluation: Extraction

Introduction Approach Evaluation Related Work Conclusion

  • Dapper/Pipes

Karma Karma (programmer) Dapper/Pipes

slide-51
SLIDE 51

51

Evaluation: Extraction

Introduction Approach Evaluation Related Work Conclusion

  • As the extraction task gets more

difficult, Dapper/Pipes takes

  • longer
  • more subjects failing to complete

the task (11% for moderate and 25% for difficult) Dapper/Pipes Karma

slide-52
SLIDE 52

52

Evaluation: Source Modeling

Introduction Approach Evaluation Related Work Conclusion

  • Karma performed worse in task 1 and

tasks 2

  • nly 30 sec difference
  • subjects take times selecting

attributes

  • the saving will be realized in the

data integration step.

  • Karma performed better in task 3

because of union Dapper/Pipes Karma

slide-53
SLIDE 53

53

Evaluation: Data Cleaning

Introduction Approach Evaluation Related Work Conclusion

  • Karma performed better in both tasks
  • When the cleaning task gets harder,

more subjects are failing in Dapper/ Pipes (35% for simple and 83% in hard) Dapper/Pipes Karma

slide-54
SLIDE 54

54

Evaluation: Data Integration

Introduction Approach Evaluation Related Work Conclusion

  • Because of the table structure,

subjects can specify union indirectly by dropping data into the right cell

  • The time spent in source modeling

step allows Karma to suggest the linking source

  • Dapper/Pipes: 30% fail in the union

case and 95% fail in the join case Dapper/Pipes Karma

slide-55
SLIDE 55

55

Claim 3: Overall, the user takes less time to build the same Mashup in Karma compared to Dapper/Pipes

slide-56
SLIDE 56

56

Evaluation: Overall

Introduction Approach Evaluation Related Work Conclusion

  • Dapper/Pipes

Karma

slide-57
SLIDE 57

57

Evaluation: Average

Introduction Approach Evaluation Related Work Conclusion

  • 2.18x

1.13x 4.16x 6.49x 3.54x

Dapper/Pipes Karma

slide-58
SLIDE 58

58

Related Work: Mashup Systems

Introduction Approach Evaluation Related Work Conclusion

slide-59
SLIDE 59

59

Related Work: Mashup Systems

Introduction Approach Evaluation Related Work Conclusion

  • Require an expert
slide-60
SLIDE 60

60

Related Work: Mashup Systems

Introduction Approach Evaluation Related Work Conclusion

  • Require an expert

Early work. Focus on DOM, too basic

slide-61
SLIDE 61

61

Related Work: Mashup Systems

Introduction Approach Evaluation Related Work Conclusion

  • Require an expert

Early work. Focus on DOM, too basic RDF / Manually specify data int

slide-62
SLIDE 62

62

Related Work: Mashup Systems

Introduction Approach Evaluation Related Work Conclusion

  • Require an expert

Mainly focus on extraction / linear Early work. Focus on DOM, too basic RDF / Manually specify data int

slide-63
SLIDE 63

63

Related Work: Mashup Systems

Introduction Approach Evaluation Related Work Conclusion

  • Require an expert

Mainly focus on extraction / linear Widgets Fancier UI/ more widgets Fewer Widgets / Confusion on workflow Early work. Focus on DOM, too basic RDF / Manually specify data int

slide-64
SLIDE 64

64

Related Work: Mashup Systems

Introduction Approach Evaluation Related Work Conclusion

  • Require an expert

Mainly focus on extraction / linear Widgets Fancier UI/ more widgets Fewer Widgets / Confusion on workflow Early work. Focus on DOM, too basic Create points on Map RDF / Manually specify data int

slide-65
SLIDE 65

65

Related Work: Mashup Systems

Introduction Approach Evaluation Related Work Conclusion

  • Require an expert

Mainly focus on extraction / linear Q/A approach / linear / scalability Widgets Fancier UI/ more widgets Fewer Widgets / Confusion on workflow Early work. Focus on DOM, too basic Create points on Map RDF / Manually specify data int

slide-66
SLIDE 66

66

Related Work: Mashup Systems

Introduction Approach Evaluation Related Work Conclusion

  • Require an expert

Mainly focus on extraction / linear Q/A approach / linear / scalability Widgets Fancier UI/ more widgets Fewer Widgets / Confusion on workflow Early work. Focus on DOM, too basic Create points on Map RDF / Manually specify data int Tuple = card. Drawing links for relations

slide-67
SLIDE 67

67

  • Automatic extraction: table and lists only

– RoadRunner (exploit HTML structure) [Crescenzi et al., 2001] – Adel (grammer induction to detect rows) [Lerman+ 2001] – VisualWeb (OCR technique to detect tables) [Gatterbauer+ 2007]

  • Semi-Automatic: require more label examples

– WIEN (inductive – less expressive than stalker) [Kushmerick 1997] – Stalker (Cotesting) [Muslea+ 1999] – SoftMealy (finite state transducer) [Hsu 1998] – WHISK (rigid format, exact delimiter) [Soderland 1998]

  • DOM: rely on well-formed HTML and less labeling

– Simile [Huynh+ 2005] – Dapper – Interactive Wrapper Generation (ML + prediction on DOM) [Irmak+ 2006] – PLOW (add natural language) [Allen+ 2007] – Cards [Dontcheva+ 2007] – Karma [Tuchinda+ 2008]

Related Work: Data Extraction

Introduction Approach Evaluation Related Work Conclusion

slide-68
SLIDE 68

68

  • 1:1 mapping, N:M mapping

– Schema-level match

  • TranScm

[Milo+ 98]

  • DIKE

[Palopoli+ 99]

  • Artemis

[Castano+ 01]

  • Delta

[Clifton+ 97]

– +Instance-based matcher

  • SemInt

[Li 00]

  • LSD

[Doan 01]

  • ILA

[Etzioni 95]

  • iMapp

[Dhamanka 04]

  • Clio (interactive)

[Ling 01]

  • Inducing Source Description

[Carman 07]

  • Karma leverages existing techniques to narrow candidate matches

– String Similarities [Cohen+ 2003]

Related Work: Source Modeling

Introduction Approach Evaluation Related Work Conclusion

slide-69
SLIDE 69

69

  • Commercial Tools: Focus on writing transformation

– ACR/Data, Migration Architect

[Chaudhuri+ 1997]

  • Discrepancy Detection: Use as a stepping stone for record linkage and

cleaning system

– Levenshtein distance

[Needleman+ 70]

– Vector based

[Baeza-Yates+ 99]

– EM

[Ristad+ 98]

– SVM

[Bilenko+ 03]

  • Record linkage & cleaning systems: Focus on ranking [Winkler 06]

– Fuzzy Match

[Chaudhuri+ 03]

– Apollo

[Michalowski+ 05]

– Phoebus

[Michelson+ 07]

– Potter’s wheel

[Raman+ 01]

  • Karma

– Gained reference sources through source modeling process – Provided predefined transformations

Related Work: Data Cleaning

Introduction Approach Evaluation Related Work Conclusion

slide-70
SLIDE 70

70

  • Universal Relation: Make it easier to formulate the query but users still need to

formulate the query [Ullman 1980, 1988]

  • Query by example: Need to know which data sources to use and the query may

not return results

– QBE [Zloof 1975]

  • Retrieval by formulation: Need to understand domain model to formulate

partial description

– Helgon [Fischer 1989]

– RABBIT [Williams 1982]

  • Graphical Query Language: Users still need to navigate through sources

(graphs)

– Gql [Benzi 1998, Haw 1994, Papantonakis 1988]

  • Question-Answering Technique: Understanding about database operations

required.

– Agent Wizard [Tuchinda+ 2004]

  • Interactive Schema/data integration: Understanding about source schema

required

– Clio [Ling 01]

  • Karma is based on Programming by Demonstration [Cyper 2001; Lau2001]

Related Work: Data Integration

Introduction Approach Evaluation Related Work Conclusion

slide-71
SLIDE 71

71

Conclusion

  • Mashup is a fast growing area

– Need an efficient way to for casual web users to build it.

Introduction Approach Evaluation Related Work Conclusion

  • Contributions

– A PBD approach that uses a single table for building a Mashup – An integrated approach that links four Mashup buildling issues. – A query formulation technique that allows users to specify examples to build complicated queries.

  • Evaluated the validity of the Karma approach

– Subjects were able to complete Mashup building tasks in Karma – The overall improvement is at least 3.5

slide-72
SLIDE 72

72

Future Work

  • Customizing display by examples
  • Implementing feedback and quality
  • Adding planning components to handle

dynamic data.

Introduction Approach Evaluation Related Work Conclusion

slide-73
SLIDE 73

73

Thank You!

slide-74
SLIDE 74

74

Backup Slides

slide-75
SLIDE 75

75

Document Object Model (DOM)

Source: http://www.w3.org

slide-76
SLIDE 76

76

Vertical Expansion

slide-77
SLIDE 77

77

slide-78
SLIDE 78

78

slide-79
SLIDE 79

79