<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
        "http://www.w3.org/TR/html4/strict.dtd">
<html lang="en">
<head>
</head>
<body>
<p><b>BUG ID:</b> <a href="rdar://problem/4247537">4247537</a> link jumping should scroll to tallest object on line, not first object on line</p>

<p id="test" style="background-color:skyblue; padding:3px;"><b>STEPS TO TEST:</b> 
Manually resize window to about 800 x 600.  Click the links in this document.</p>

<p id="success" style="background-color:palegreen; padding:3px;"><b>TEST PASS:</b> 
After clicking a link, the page should always scroll to the top of the green box.
</p>

<p id="failure" style="background-color:#FF3300; padding:3px;"><b>TEST FAIL:</b>  
After clicking a link, page scrolls to some unexpected area.
</p>

<div><a href="#foo">1. click to  test</a></div>

Lorem ipsum dolor sit amet, consectetuer adipiscing elit. In ornare risus. Aliquam nonummy libero et risus. Vestibulum sit amet massa nec mauris interdum luctus. Nam ut dolor ut nunc malesuada varius. Duis risus. Mauris vel nulla ut odio porta vestibulum. Mauris ac sapien. In a dolor at urna malesuada suscipit. Aenean nisl erat, nonummy quis, blandit in, sagittis et, ligula. Maecenas consequat. Donec nonummy rutrum nibh. Praesent tincidunt cursus mi. Donec adipiscing. Nulla at ipsum. Aenean fermentum.

Donec libero est, semper non, pretium vel, adipiscing dapibus, justo. Morbi viverra, odio at suscipit sollicitudin, risus felis convallis odio, sit amet mollis mauris nisl ac magna. Donec tincidunt ante non ante ultricies rutrum. Sed enim sem, pharetra faucibus, faucibus a, venenatis nec, sem. Fusce lacus. Vestibulum porta urna. Vivamus nonummy gravida nisl. In pharetra eros ac arcu. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos hymenaeos. Nullam et lacus. Nunc metus nunc, iaculis eu, bibendum molestie, semper vitae, arcu. Nullam accumsan fringilla diam. Mauris odio risus, facilisis vitae, tincidunt eget, placerat nec, lacus. Mauris faucibus. Donec rutrum mauris non elit. Morbi dolor purus, auctor a, euismod at, vestibulum sed, massa. Suspendisse quis lorem.

Donec blandit vestibulum mi. Donec turpis nisl, accumsan ut, vestibulum sed, mattis vel, turpis. Suspendisse placerat ultricies pede. Donec et diam vel libero volutpat vestibulum. Aenean luctus erat vitae urna. Etiam ac ligula. Praesent vestibulum urna vel lectus. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Quisque hendrerit porta lectus. Pellentesque sed velit sed massa malesuada egestas. Phasellus volutpat mauris vitae massa. Sed pretium est quis nulla. Quisque fringilla neque a nunc. Vivamus ligula risus, pharetra vitae, sodales ut, convallis et, quam. Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Sed a purus at turpis pellentesque porttitor.

Integer consequat justo. Duis cursus. Sed lorem ante, aliquam sed, mattis eu, luctus in, elit. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos hymenaeos. Morbi sem. Nam id pede et lectus luctus molestie. Vestibulum vulputate accumsan lectus. Proin ipsum libero, sagittis at, facilisis vitae, condimentum eu, urna. Vestibulum turpis magna, euismod in, pretium quis, cursus ut, diam. Vivamus in felis eget leo ultricies eleifend. Suspendisse sit amet dolor. Nam diam eros, tempor ut, tristique ut, accumsan commodo, neque. Etiam a orci eu ante suscipit tempor.

Donec blandit vestibulum mi. Donec turpis nisl, accumsan ut, vestibulum sed, mattis vel, turpis. Suspendisse placerat ultricies pede. Donec et diam vel libero volutpat vestibulum. Aenean luctus erat vitae urna. Etiam ac ligula. Praesent vestibulum urna vel lectus. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Quisque hendrerit porta lectus. Pellentesque sed velit sed massa malesuada egestas. Phasellus volutpat mauris vitae massa. Sed pretium est quis nulla. Quisque fringilla neque a nunc. Vivamus ligula risus, pharetra vitae, sodales ut, convallis et, quam. Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Sed a purus at turpis pellentesque porttitor.

Integer consequat justo. Duis cursus. Sed lorem ante, aliquam sed, mattis eu, luctus in, elit. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos hymenaeos. Morbi sem. Nam id pede et lectus luctus molestie. Vestibulum vulputate accumsan lectus. Proin ipsum libero, sagittis at, facilisis vitae, condimentum eu, urna. Vestibulum turpis magna, euismod in, pretium quis, cursus ut, diam. Vivamus in felis eget leo ultricies eleifend. Suspendisse sit amet dolor. Nam diam eros, tempor ut, tristique ut, accumsan commodo, neque. Etiam a orci eu ante suscipit tempor.
</p>

** The top of this box <img id="foo" style="height: 200px; width: 100px; background-color: green">  should be aligned to the top of the window **

<div><a href="#foo2">2. click to  test</a></div>


<p>
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. In ornare risus. Aliquam nonummy libero et risus. Vestibulum sit amet massa nec mauris interdum luctus. Nam ut dolor ut nunc malesuada varius. Duis risus. Mauris vel nulla ut odio porta vestibulum. Mauris ac sapien. In a dolor at urna malesuada suscipit. Aenean nisl erat, nonummy quis, blandit in, sagittis et, ligula. Maecenas consequat. Donec nonummy rutrum nibh. Praesent tincidunt cursus mi. Donec adipiscing. Nulla at ipsum. Aenean fermentum.

Donec libero est, semper non, pretium vel, adipiscing dapibus, justo. Morbi viverra, odio at suscipit sollicitudin, risus felis convallis odio, sit amet mollis mauris nisl ac magna. Donec tincidunt ante non ante ultricies rutrum. Sed enim sem, pharetra faucibus, faucibus a, venenatis nec, sem. Fusce lacus. Vestibulum porta urna. Vivamus nonummy gravida nisl. In pharetra eros ac arcu. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos hymenaeos. Nullam et lacus. Nunc metus nunc, iaculis eu, bibendum molestie, semper vitae, arcu. Nullam accumsan fringilla diam. Mauris odio risus, facilisis vitae, tincidunt eget, placerat nec, lacus. Mauris faucibus. Donec rutrum mauris non elit. Morbi dolor purus, auctor a, euismod at, vestibulum sed, massa. Suspendisse quis lorem.

Donec blandit vestibulum mi. Donec turpis nisl, accumsan ut, vestibulum sed, mattis vel, turpis. Suspendisse placerat ultricies pede. Donec et diam vel libero volutpat vestibulum. Aenean luctus erat vitae urna. Etiam ac ligula. Praesent vestibulum urna vel lectus. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Quisque hendrerit porta lectus. Pellentesque sed velit sed massa malesuada egestas. Phasellus volutpat mauris vitae massa. Sed pretium est quis nulla. Quisque fringilla neque a nunc. Vivamus ligula risus, pharetra vitae, sodales ut, convallis et, quam. Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Sed a purus at turpis pellentesque porttitor.

Integer consequat justo. Duis cursus. Sed lorem ante, aliquam sed, mattis eu, luctus in, elit. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos hymenaeos. Morbi sem. Nam id pede et lectus luctus molestie. Vestibulum vulputate accumsan lectus. Proin ipsum libero, sagittis at, facilisis vitae, condimentum eu, urna. Vestibulum turpis magna, euismod in, pretium quis, cursus ut, diam. Vivamus in felis eget leo ultricies eleifend. Suspendisse sit amet dolor. Nam diam eros, tempor ut, tristique ut, accumsan commodo, neque. Etiam a orci eu ante suscipit tempor.

Curabitur facilisis pede nec arcu. Proin ut turpis. Maecenas quam nulla, dapibus vel, accumsan non, volutpat quis, tellus. Suspendisse consectetuer augue in mauris. Duis consequat pede sit amet dolor. Nulla vestibulum enim auctor felis tincidunt sodales. Nullam lobortis massa eu magna. Ut nonummy leo porta quam. Proin dignissim, ante ut aliquet dignissim, est odio aliquet lacus, eu sodales quam arcu ornare urna. Fusce arcu erat, vulputate pulvinar, dapibus luctus, volutpat quis, metus. Mauris eu massa. Praesent eget tortor eget arcu fringilla feugiat. Mauris posuere, risus nec blandit ultrices, enim odio tincidunt tortor, non bibendum elit mi non justo. Fusce tristique lacinia est. Maecenas est sem, eleifend a, fermentum et, interdum non, elit. Etiam sem. Vestibulum ultricies velit. Vivamus a mauris eget arcu volutpat vestibulum. Duis sed dui sit amet libero tempus tempor. Nulla diam.Lorem ipsum dolor sit amet, consectetuer adipiscing elit. In ornare risus. Aliquam nonummy libero et risus. Vestibulum sit amet massa nec mauris interdum luctus. Nam ut dolor ut nunc malesuada varius. Duis risus. Mauris vel nulla ut odio porta vestibulum. Mauris ac sapien. In a dolor at urna malesuada suscipit. Aenean nisl erat, nonummy quis, blandit in, sagittis et, ligula. Maecenas consequat. Donec nonummy rutrum nibh. Praesent tincidunt cursus mi. Donec adipiscing. Nulla at ipsum. Aenean fermentum.

Donec libero est, semper non, pretium vel, adipiscing dapibus, justo. Morbi viverra, odio at suscipit sollicitudin, risus felis convallis odio, sit amet mollis mauris nisl ac magna. Donec tincidunt ante non ante ultricies rutrum. Sed enim sem, pharetra faucibus, faucibus a, venenatis nec, sem. Fusce lacus. Vestibulum porta urna. Vivamus nonummy gravida nisl. In pharetra eros ac arcu. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos hymenaeos. Nullam et lacus. Nunc metus nunc, iaculis eu, bibendum molestie, semper vitae, arcu. Nullam accumsan fringilla diam. Mauris odio risus, facilisis vitae, tincidunt eget, placerat nec, lacus. Mauris faucibus. Donec rutrum mauris non elit. Morbi dolor purus, auctor a, euismod at, vestibulum sed, massa. Suspendisse quis lorem.

Donec blandit vestibulum mi. Donec turpis nisl, accumsan ut, vestibulum sed, mattis vel, turpis. Suspendisse placerat ultricies pede. Donec et diam vel libero volutpat vestibulum. Aenean luctus erat vitae urna. Etiam ac ligula. Praesent vestibulum urna vel lectus. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Quisque hendrerit porta lectus. Pellentesque sed velit sed massa malesuada egestas. Phasellus volutpat mauris vitae massa. Sed pretium est quis nulla. Quisque fringilla neque a nunc. Vivamus ligula risus, pharetra vitae, sodales ut, convallis et, quam. Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Sed a purus at turpis pellentesque porttitor.

Integer consequat justo. Duis cursus. Sed lorem ante, aliquam sed, mattis eu, luctus in, elit. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos hymenaeos. Morbi sem. Nam id pede et lectus luctus molestie. Vestibulum vulputate accumsan lectus. Proin ipsum libero, sagittis at, facilisis vitae, condimentum eu, urna. Vestibulum turpis magna, euismod in, pretium quis, cursus ut, diam. Vivamus in felis eget leo ultricies eleifend. Suspendisse sit amet dolor. Nam diam eros, tempor ut, tristique ut, accumsan commodo, neque. Etiam a orci eu ante suscipit tempor.

Curabitur facilisis pede nec arcu. Proin ut turpis. Maecenas quam nulla, dapibus vel, accumsan non, volutpat quis, tellus. Suspendisse consectetuer augue in mauris. Duis consequat pede sit amet dolor. Nulla vestibulum enim auctor felis tincidunt sodales. Nullam lobortis massa eu magna. Ut nonummy leo porta quam. Proin dignissim, ante ut aliquet dignissim, est odio aliquet lacus, eu sodales quam arcu ornare urna. Fusce arcu erat, vulputate pulvinar, dapibus luctus, volutpat quis, metus. Mauris eu massa. Praesent eget tortor eget arcu fringilla feugiat. Mauris posuere, risus nec blandit ultrices, enim odio tincidunt tortor, non bibendum elit mi non justo. Fusce tristique lacinia est. Maecenas est sem, eleifend a, fermentum et, interdum non, elit. Etiam sem. Vestibulum ultricies velit. Vivamus a mauris eget arcu volutpat vestibulum. Duis sed dui sit amet libero tempus tempor. Nulla diam.Lorem ipsum dolor sit amet, consectetuer adipiscing elit. In ornare risus. Aliquam nonummy libero et risus. Vestibulum sit amet massa nec mauris interdum luctus. Nam ut dolor ut nunc malesuada varius. Duis risus. Mauris vel nulla ut odio porta vestibulum. Mauris ac sapien. In a dolor at urna malesuada suscipit. Aenean nisl erat, nonummy quis, blandit in, sagittis et, ligula. Maecenas consequat. Donec nonummy rutrum nibh. Praesent tincidunt cursus mi. Donec adipiscing. Nulla at ipsum. Aenean fermentum.</p>


<span id="foo2">** The top of this box should be aligned <img style="height: 200px; width: 100px; background-color: green"> to the top of the window **</span>

<div><a href="#foo3">3. click to  test</a></div>


<p>
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. In ornare risus. Aliquam nonummy libero et risus. Vestibulum sit amet massa nec mauris interdum luctus. Nam ut dolor ut nunc malesuada varius. Duis risus. Mauris vel nulla ut odio porta vestibulum. Mauris ac sapien. In a dolor at urna malesuada suscipit. Aenean nisl erat, nonummy quis, blandit in, sagittis et, ligula. Maecenas consequat. Donec nonummy rutrum nibh. Praesent tincidunt cursus mi. Donec adipiscing. Nulla at ipsum. Aenean fermentum.

Donec libero est, semper non, pretium vel, adipiscing dapibus, justo. Morbi viverra, odio at suscipit sollicitudin, risus felis convallis odio, sit amet mollis mauris nisl ac magna. Donec tincidunt ante non ante ultricies rutrum. Sed enim sem, pharetra faucibus, faucibus a, venenatis nec, sem. Fusce lacus. Vestibulum porta urna. Vivamus nonummy gravida nisl. In pharetra eros ac arcu. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos hymenaeos. Nullam et lacus. Nunc metus nunc, iaculis eu, bibendum molestie, semper vitae, arcu. Nullam accumsan fringilla diam. Mauris odio risus, facilisis vitae, tincidunt eget, placerat nec, lacus. Mauris faucibus. Donec rutrum mauris non elit. Morbi dolor purus, auctor a, euismod at, vestibulum sed, massa. Suspendisse quis lorem.

Donec blandit vestibulum mi. Donec turpis nisl, accumsan ut, vestibulum sed, mattis vel, turpis. Suspendisse placerat ultricies pede. Donec et diam vel libero volutpat vestibulum. Aenean luctus erat vitae urna. Etiam ac ligula. Praesent vestibulum urna vel lectus. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Quisque hendrerit porta lectus. Pellentesque sed velit sed massa malesuada egestas. Phasellus volutpat mauris vitae massa. Sed pretium est quis nulla. Quisque fringilla neque a nunc. Vivamus ligula risus, pharetra vitae, sodales ut, convallis et, quam. Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Sed a purus at turpis pellentesque porttitor.

Integer consequat justo. Duis cursus. Sed lorem ante, aliquam sed, mattis eu, luctus in, elit. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos hymenaeos. Morbi sem. Nam id pede et lectus luctus molestie. Vestibulum vulputate accumsan lectus. Proin ipsum libero, sagittis at, facilisis vitae, condimentum eu, urna. Vestibulum turpis magna, euismod in, pretium quis, cursus ut, diam. Vivamus in felis eget leo ultricies eleifend. Suspendisse sit amet dolor. Nam diam eros, tempor ut, tristique ut, accumsan commodo, neque. Etiam a orci eu ante suscipit tempor.

Curabitur facilisis pede nec arcu. Proin ut turpis. Maecenas quam nulla, dapibus vel, accumsan non, volutpat quis, tellus. Suspendisse consectetuer augue in mauris. Duis consequat pede sit amet dolor. Nulla vestibulum enim auctor felis tincidunt sodales. Nullam lobortis massa eu magna. Ut nonummy leo porta quam. Proin dignissim, ante ut aliquet dignissim, est odio aliquet lacus, eu sodales quam arcu ornare urna. Fusce arcu erat, vulputate pulvinar, dapibus luctus, volutpat quis, metus. Mauris eu massa. Praesent eget tortor eget arcu fringilla feugiat. Mauris posuere, risus nec blandit ultrices, enim odio tincidunt tortor, non bibendum elit mi non justo. Fusce tristique lacinia est. Maecenas est sem, eleifend a, fermentum et, interdum non, elit. Etiam sem. Vestibulum ultricies velit. Vivamus a mauris eget arcu volutpat vestibulum. Duis sed dui sit amet libero tempus tempor. Nulla diam.Lorem ipsum dolor sit amet, consectetuer adipiscing elit. In ornare risus. Aliquam nonummy libero et risus. Vestibulum sit amet massa nec mauris interdum luctus. Nam ut dolor ut nunc malesuada varius. Duis risus. Mauris vel nulla ut odio porta vestibulum. Mauris ac sapien. In a dolor at urna malesuada suscipit. Aenean nisl erat, nonummy quis, blandit in, sagittis et, ligula. Maecenas consequat. Donec nonummy rutrum nibh. Praesent tincidunt cursus mi. Donec adipiscing. Nulla at ipsum. Aenean fermentum.

Donec libero est, semper non, pretium vel, adipiscing dapibus, justo. Morbi viverra, odio at suscipit sollicitudin, risus felis convallis odio, sit amet mollis mauris nisl ac magna. Donec tincidunt ante non ante ultricies rutrum. Sed enim sem, pharetra faucibus, faucibus a, venenatis nec, sem. Fusce lacus. Vestibulum porta urna. Vivamus nonummy gravida nisl. In pharetra eros ac arcu. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos hymenaeos. Nullam et lacus. Nunc metus nunc, iaculis eu, bibendum molestie, semper vitae, arcu. Nullam accumsan fringilla diam. Mauris odio risus, facilisis vitae, tincidunt eget, placerat nec, lacus. Mauris faucibus. Donec rutrum mauris non elit. Morbi dolor purus, auctor a, euismod at, vestibulum sed, massa. Suspendisse quis lorem.

Donec blandit vestibulum mi. Donec turpis nisl, accumsan ut, vestibulum sed, mattis vel, turpis. Suspendisse placerat ultricies pede. Donec et diam vel libero volutpat vestibulum. Aenean luctus erat vitae urna. Etiam ac ligula. Praesent vestibulum urna vel lectus. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Quisque hendrerit porta lectus. Pellentesque sed velit sed massa malesuada egestas. Phasellus volutpat mauris vitae massa. Sed pretium est quis nulla. Quisque fringilla neque a nunc. Vivamus ligula risus, pharetra vitae, sodales ut, convallis et, quam. Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Sed a purus at turpis pellentesque porttitor.

Integer consequat justo. Duis cursus. Sed lorem ante, aliquam sed, mattis eu, luctus in, elit. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos hymenaeos. Morbi sem. Nam id pede et lectus luctus molestie. Vestibulum vulputate accumsan lectus. Proin ipsum libero, sagittis at, facilisis vitae, condimentum eu, urna. Vestibulum turpis magna, euismod in, pretium quis, cursus ut, diam. Vivamus in felis eget leo ultricies eleifend. Suspendisse sit amet dolor. Nam diam eros, tempor ut, tristique ut, accumsan commodo, neque. Etiam a orci eu ante suscipit tempor.</p>




<img style="height: 200px; width: 100px; background-color: yellow"><img id="foo3" style="height: 100px; width: 100px; background-color: green">** The top of the GREEN box should be aligned to the top of the window **

<div><a href="#foo4">4. click to  test</a></div>


<p>
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. In ornare risus. Aliquam nonummy libero et risus. Vestibulum sit amet massa nec mauris interdum luctus. Nam ut dolor ut nunc malesuada varius. Duis risus. Mauris vel nulla ut odio porta vestibulum. Mauris ac sapien. In a dolor at urna malesuada suscipit. Aenean nisl erat, nonummy quis, blandit in, sagittis et, ligula. Maecenas consequat. Donec nonummy rutrum nibh. Praesent tincidunt cursus mi. Donec adipiscing. Nulla at ipsum. Aenean fermentum.

Donec libero est, semper non, pretium vel, adipiscing dapibus, justo. Morbi viverra, odio at suscipit sollicitudin, risus felis convallis odio, sit amet mollis mauris nisl ac magna. Donec tincidunt ante non ante ultricies rutrum. Sed enim sem, pharetra faucibus, faucibus a, venenatis nec, sem. Fusce lacus. Vestibulum porta urna. Vivamus nonummy gravida nisl. In pharetra eros ac arcu. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos hymenaeos. Nullam et lacus. Nunc metus nunc, iaculis eu, bibendum molestie, semper vitae, arcu. Nullam accumsan fringilla diam. Mauris odio risus, facilisis vitae, tincidunt eget, placerat nec, lacus. Mauris faucibus. Donec rutrum mauris non elit. Morbi dolor purus, auctor a, euismod at, vestibulum sed, massa. Suspendisse quis lorem.

Donec blandit vestibulum mi. Donec turpis nisl, accumsan ut, vestibulum sed, mattis vel, turpis. Suspendisse placerat ultricies pede. Donec et diam vel libero volutpat vestibulum. Aenean luctus erat vitae urna. Etiam ac ligula. Praesent vestibulum urna vel lectus. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Quisque hendrerit porta lectus. Pellentesque sed velit sed massa malesuada egestas. Phasellus volutpat mauris vitae massa. Sed pretium est quis nulla. Quisque fringilla neque a nunc. Vivamus ligula risus, pharetra vitae, sodales ut, convallis et, quam. Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Sed a purus at turpis pellentesque porttitor.

Integer consequat justo. Duis cursus. Sed lorem ante, aliquam sed, mattis eu, luctus in, elit. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos hymenaeos. Morbi sem. Nam id pede et lectus luctus molestie. Vestibulum vulputate accumsan lectus. Proin ipsum libero, sagittis at, facilisis vitae, condimentum eu, urna. Vestibulum turpis magna, euismod in, pretium quis, cursus ut, diam. Vivamus in felis eget leo ultricies eleifend. Suspendisse sit amet dolor. Nam diam eros, tempor ut, tristique ut, accumsan commodo, neque. Etiam a orci eu ante suscipit tempor.

Curabitur facilisis pede nec arcu. Proin ut turpis. Maecenas quam nulla, dapibus vel, accumsan non, volutpat quis, tellus. Suspendisse consectetuer augue in mauris. Duis consequat pede sit amet dolor. Nulla vestibulum enim auctor felis tincidunt sodales. Nullam lobortis massa eu magna. Ut nonummy leo porta quam. Proin dignissim, ante ut aliquet dignissim, est odio aliquet lacus, eu sodales quam arcu ornare urna. Fusce arcu erat, vulputate pulvinar, dapibus luctus, volutpat quis, metus. Mauris eu massa. Praesent eget tortor eget arcu fringilla feugiat. Mauris posuere, risus nec blandit ultrices, enim odio tincidunt tortor, non bibendum elit mi non justo. Fusce tristique lacinia est. Maecenas est sem, eleifend a, fermentum et, interdum non, elit. Etiam sem. Vestibulum ultricies velit. Vivamus a mauris eget arcu volutpat vestibulum. Duis sed dui sit amet libero tempus tempor. Nulla diam.Lorem ipsum dolor sit amet, consectetuer adipiscing elit. In ornare risus. Aliquam nonummy libero et risus. Vestibulum sit amet massa nec mauris interdum luctus. Nam ut dolor ut nunc malesuada varius. Duis risus. Mauris vel nulla ut odio porta vestibulum. Mauris ac sapien. In a dolor at urna malesuada suscipit. Aenean nisl erat, nonummy quis, blandit in, sagittis et, ligula. Maecenas consequat. Donec nonummy rutrum nibh. Praesent tincidunt cursus mi. Donec adipiscing. Nulla at ipsum. Aenean fermentum.

Donec libero est, semper non, pretium vel, adipiscing dapibus, justo. Morbi viverra, odio at suscipit sollicitudin, risus felis convallis odio, sit amet mollis mauris nisl ac magna. Donec tincidunt ante non ante ultricies rutrum. Sed enim sem, pharetra faucibus, faucibus a, venenatis nec, sem. Fusce lacus. Vestibulum porta urna. Vivamus nonummy gravida nisl. In pharetra eros ac arcu. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos hymenaeos. Nullam et lacus. Nunc metus nunc, iaculis eu, bibendum molestie, semper vitae, arcu. Nullam accumsan fringilla diam. Mauris odio risus, facilisis vitae, tincidunt eget, placerat nec, lacus. Mauris faucibus. Donec rutrum mauris non elit. Morbi dolor purus, auctor a, euismod at, vestibulum sed, massa. Suspendisse quis lorem.

Donec blandit vestibulum mi. Donec turpis nisl, accumsan ut, vestibulum sed, mattis vel, turpis. Suspendisse placerat ultricies pede. Donec et diam vel libero volutpat vestibulum. Aenean luctus erat vitae urna. Etiam ac ligula. Praesent vestibulum urna vel lectus. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Quisque hendrerit porta lectus. Pellentesque sed velit sed massa malesuada egestas. Phasellus volutpat mauris vitae massa. Sed pretium est quis nulla. Quisque fringilla neque a nunc. Vivamus ligula risus, pharetra vitae, sodales ut, convallis et, quam. Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Sed a purus at turpis pellentesque porttitor.

Integer consequat justo. Duis cursus. Sed lorem ante, aliquam sed, mattis eu, luctus in, elit. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos hymenaeos. Morbi sem. Nam id pede et lectus luctus molestie. Vestibulum vulputate accumsan lectus. Proin ipsum libero, sagittis at, facilisis vitae, condimentum eu, urna. Vestibulum turpis magna, euismod in, pretium quis, cursus ut, diam. Vivamus in felis eget leo ultricies eleifend. Suspendisse sit amet dolor. Nam diam eros, tempor ut, tristique ut, accumsan commodo, neque. Etiam a orci eu ante suscipit tempor.</p>



<a name="foo4"></a>
<img style="height: 100px; width: 100px; background-color: green">** The top of this box should be aligned to the top of the window **

<div><b>You're done!</b></div>


<p>
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. In ornare risus. Aliquam nonummy libero et risus. Vestibulum sit amet massa nec mauris interdum luctus. Nam ut dolor ut nunc malesuada varius. Duis risus. Mauris vel nulla ut odio porta vestibulum. Mauris ac sapien. In a dolor at urna malesuada suscipit. Aenean nisl erat, nonummy quis, blandit in, sagittis et, ligula. Maecenas consequat. Donec nonummy rutrum nibh. Praesent tincidunt cursus mi. Donec adipiscing. Nulla at ipsum. Aenean fermentum.

Donec libero est, semper non, pretium vel, adipiscing dapibus, justo. Morbi viverra, odio at suscipit sollicitudin, risus felis convallis odio, sit amet mollis mauris nisl ac magna. Donec tincidunt ante non ante ultricies rutrum. Sed enim sem, pharetra faucibus, faucibus a, venenatis nec, sem. Fusce lacus. Vestibulum porta urna. Vivamus nonummy gravida nisl. In pharetra eros ac arcu. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos hymenaeos. Nullam et lacus. Nunc metus nunc, iaculis eu, bibendum molestie, semper vitae, arcu. Nullam accumsan fringilla diam. Mauris odio risus, facilisis vitae, tincidunt eget, placerat nec, lacus. Mauris faucibus. Donec rutrum mauris non elit. Morbi dolor purus, auctor a, euismod at, vestibulum sed, massa. Suspendisse quis lorem.

Donec blandit vestibulum mi. Donec turpis nisl, accumsan ut, vestibulum sed, mattis vel, turpis. Suspendisse placerat ultricies pede. Donec et diam vel libero volutpat vestibulum. Aenean luctus erat vitae urna. Etiam ac ligula. Praesent vestibulum urna vel lectus. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Quisque hendrerit porta lectus. Pellentesque sed velit sed massa malesuada egestas. Phasellus volutpat mauris vitae massa. Sed pretium est quis nulla. Quisque fringilla neque a nunc. Vivamus ligula risus, pharetra vitae, sodales ut, convallis et, quam. Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Sed a purus at turpis pellentesque porttitor.

Integer consequat justo. Duis cursus. Sed lorem ante, aliquam sed, mattis eu, luctus in, elit. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos hymenaeos. Morbi sem. Nam id pede et lectus luctus molestie. Vestibulum vulputate accumsan lectus. Proin ipsum libero, sagittis at, facilisis vitae, condimentum eu, urna. Vestibulum turpis magna, euismod in, pretium quis, cursus ut, diam. Vivamus in felis eget leo ultricies eleifend. Suspendisse sit amet dolor. Nam diam eros, tempor ut, tristique ut, accumsan commodo, neque. Etiam a orci eu ante suscipit tempor.

Curabitur facilisis pede nec arcu. Proin ut turpis. Maecenas quam nulla, dapibus vel, accumsan non, volutpat quis, tellus. Suspendisse consectetuer augue in mauris. Duis consequat pede sit amet dolor. Nulla vestibulum enim auctor felis tincidunt sodales. Nullam lobortis massa eu magna. Ut nonummy leo porta quam. Proin dignissim, ante ut aliquet dignissim, est odio aliquet lacus, eu sodales quam arcu ornare urna. Fusce arcu erat, vulputate pulvinar, dapibus luctus, volutpat quis, metus. Mauris eu massa. Praesent eget tortor eget arcu fringilla feugiat. Mauris posuere, risus nec blandit ultrices, enim odio tincidunt tortor, non bibendum elit mi non justo. Fusce tristique lacinia est. Maecenas est sem, eleifend a, fermentum et, interdum non, elit. Etiam sem. Vestibulum ultricies velit. Vivamus a mauris eget arcu volutpat vestibulum. Duis sed dui sit amet libero tempus tempor. Nulla diam.Lorem ipsum dolor sit amet, consectetuer adipiscing elit. In ornare risus. Aliquam nonummy libero et risus. Vestibulum sit amet massa nec mauris interdum luctus. Nam ut dolor ut nunc malesuada varius. Duis risus. Mauris vel nulla ut odio porta vestibulum. Mauris ac sapien. In a dolor at urna malesuada suscipit. Aenean nisl erat, nonummy quis, blandit in, sagittis et, ligula. Maecenas consequat. Donec nonummy rutrum nibh. Praesent tincidunt cursus mi. Donec adipiscing. Nulla at ipsum. Aenean fermentum.

Donec libero est, semper non, pretium vel, adipiscing dapibus, justo. Morbi viverra, odio at suscipit sollicitudin, risus felis convallis odio, sit amet mollis mauris nisl ac magna. Donec tincidunt ante non ante ultricies rutrum. Sed enim sem, pharetra faucibus, faucibus a, venenatis nec, sem. Fusce lacus. Vestibulum porta urna. Vivamus nonummy gravida nisl. In pharetra eros ac arcu. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos hymenaeos. Nullam et lacus. Nunc metus nunc, iaculis eu, bibendum molestie, semper vitae, arcu. Nullam accumsan fringilla diam. Mauris odio risus, facilisis vitae, tincidunt eget, placerat nec, lacus. Mauris faucibus. Donec rutrum mauris non elit. Morbi dolor purus, auctor a, euismod at, vestibulum sed, massa. Suspendisse quis lorem.

Donec blandit vestibulum mi. Donec turpis nisl, accumsan ut, vestibulum sed, mattis vel, turpis. Suspendisse placerat ultricies pede. Donec et diam vel libero volutpat vestibulum. Aenean luctus erat vitae urna. Etiam ac ligula. Praesent vestibulum urna vel lectus. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Quisque hendrerit porta lectus. Pellentesque sed velit sed massa malesuada egestas. Phasellus volutpat mauris vitae massa. Sed pretium est quis nulla. Quisque fringilla neque a nunc. Vivamus ligula risus, pharetra vitae, sodales ut, convallis et, quam. Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Sed a purus at turpis pellentesque porttitor.

Integer consequat justo. Duis cursus. Sed lorem ante, aliquam sed, mattis eu, luctus in, elit. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos hymenaeos. Morbi sem. Nam id pede et lectus luctus molestie. Vestibulum vulputate accumsan lectus. Proin ipsum libero, sagittis at, facilisis vitae, condimentum eu, urna. Vestibulum turpis magna, euismod in, pretium quis, cursus ut, diam. Vivamus in felis eget leo ultricies eleifend. Suspendisse sit amet dolor. Nam diam eros, tempor ut, tristique ut, accumsan commodo, neque. Etiam a orci eu ante suscipit tempor.</p>
</body>
</html>
