Skip to content

Instantly share code, notes, and snippets.

@AnthonyDGreen
Created July 1, 2019 17:51
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save AnthonyDGreen/6bc2b1bd2fea32df3e189675f3b8e300 to your computer and use it in GitHub Desktop.
Save AnthonyDGreen/6bc2b1bd2fea32df3e189675f3b8e300 to your computer and use it in GitHub Desktop.
Source code (in VB) and output (in HTML) of the page shown in the Pattern-Based XML Literal: ASP.NET Core Revisited (Web Controls) prototype video.
Imports <xmlns="clr-namespace:WebViews">
<?xml version="1.0" encoding="UTF-8"?>
<html>
<head>
<meta charset="utf-8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<meta name="google" content="notranslate"/>
<style>
a.btn { color: black; background: lightgray; display: block; }
a.btn:hover { color: white; background: gray; }
</style>
<title><%= ViewData!Title %></title>
</head>
<body>
<menu alwaysOnTop=”true”>
<menuItem header="Declarations">
<menuItem header="Types">
<menuItem header="Class" url="/declarations/types#class"/>
<menuItem header="Structure" url="/declarations/types#class"/>
<menuItem header="Interface" url="/declarations/types#class"/>
<menuItem header="Module" url="/declarations/types#class"/>
<menuItem header="Delegate" url="/declarations/types#class"/>
</menuItem>
<menuItem header="Members" url="/declarations/members"/>
</menuItem>
<menuItem header="Statements">
<menuItem header="Variable Declarations" url="/locals"/>
<menuItem header="Control Flow (If, Select Case)..." url="/control"/>
<menuItem header="Loops (For, For Each, Do, While)..." url="/loops"/>
<menuItem header="Other..." url="/statements#other"/>
</menuItem>
<menuItem header="Expressions" url="/expressions"/>
</menu>
<carousel itemsSource=<%= Database.GetCarouselData() %>>
<carousel.itemTemplate>
<div>
<img src="{binding BackgroundImageUrl}" alt="{binding BackgroundImageAltText}"/>
<div class="carousel-caption">
<p>
<h3 content="{binding BackgroundImageAltText}"/>
<span content="{binding Description}"/>
<a class="btn btn-default" href="{binding DestinationUrl}">Learn More</a>
</p>
</div>
</div>
</carousel.itemTemplate>
</carousel>
<h1><%= ViewData!Message %></h1>
<expander header="Section 1">
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque posuere, orci non accumsan semper, arcu turpis auctor risus, lobortis elementum leo felis vel felis. Nulla sapien odio, ultricies et sapien vitae, maximus dignissim ligula. Praesent nec dapibus purus. Aenean vel nulla orci. Donec nisl neque, hendrerit nec magna vitae, semper vestibulum augue. Nulla augue ipsum, tincidunt sed cursus sed, varius vitae eros. Aenean mollis hendrerit ipsum, et iaculis nisi blandit ac. Morbi vitae diam ex. Interdum et malesuada fames ac ante ipsum primis in faucibus. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Praesent gravida purus a accumsan cursus. </p>
<p>Vestibulum ac massa et felis mattis imperdiet. Proin at ligula hendrerit, luctus erat id, gravida nibh. Cras hendrerit placerat lacus, quis maximus enim scelerisque eget. In sollicitudin neque a tellus interdum cursus. In hac habitasse platea dictumst. Vestibulum aliquam pulvinar velit vel maximus. Curabitur consectetur egestas scelerisque. Ut dictum dolor eu odio volutpat blandit. Proin lorem turpis, euismod varius massa vitae, interdum fermentum tortor. Aliquam ut felis et magna rhoncus egestas in lobortis enim. Integer imperdiet lobortis quam aliquam porta. Curabitur quis est eget lorem sagittis vehicula.</p>
<p>In semper, magna a finibus dapibus, odio tortor dictum quam, in gravida ante ante at ante. Duis ac elementum augue, vehicula consectetur massa. Phasellus vulputate metus vitae mi tempus volutpat. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Pellentesque erat metus, lacinia in massa vel, tincidunt blandit turpis. Phasellus ac elit fermentum ipsum pharetra auctor id vel magna. Vivamus a urna venenatis, tempor nisl in, luctus est. Nullam ullamcorper, turpis aliquam accumsan malesuada, purus eros condimentum eros, eget faucibus felis ligula a nunc. Aenean sollicitudin sed nulla et convallis.</p>
<p>Donec ut ante vel elit accumsan hendrerit nec et urna. Duis et dolor aliquet, sollicitudin ligula eget, iaculis eros. Quisque gravida nisl in sapien suscipit, non efficitur risus pulvinar. Maecenas blandit diam nunc. Sed ac venenatis justo, efficitur accumsan elit. In dictum felis mi, id malesuada ante accumsan at. Vivamus in velit vitae velit placerat gravida ac eget mi.</p>
<p>Vivamus eget metus eget urna consectetur tristique. Maecenas egestas pretium enim, vel facilisis ante pellentesque ac. Nam maximus sapien nec velit efficitur, at pretium nulla maximus. Phasellus dui quam, commodo vitae pharetra sit amet, viverra a purus. Integer vitae justo sed justo malesuada pretium at sed nibh. Ut semper erat non cursus lobortis. Etiam volutpat magna nec tellus commodo blandit quis ac neque. Duis et dui vitae ex bibendum euismod. Duis ac placerat erat. Curabitur ipsum sem, dapibus nec fringilla quis, mattis sed diam. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Cras placerat, massa cursus vulputate hendrerit, purus felis dignissim diam, pellentesque ultrices elit ipsum id dolor. Praesent ac sem vitae felis elementum mollis vel ultrices eros. Nullam ut odio lacinia, molestie lorem a, porttitor nibh. Aenean et diam non arcu porta vehicula at ornare libero. Aliquam odio urna, fermentum sed faucibus nec, dapibus in felis.</p>
</expander>
<br/>
<expander>
<expander.header>
<span style="font-weight: bold;">Section 2</span>
</expander.header>
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque posuere, orci non accumsan semper, arcu turpis auctor risus, lobortis elementum leo felis vel felis. Nulla sapien odio, ultricies et sapien vitae, maximus dignissim ligula. Praesent nec dapibus purus. Aenean vel nulla orci. Donec nisl neque, hendrerit nec magna vitae, semper vestibulum augue. Nulla augue ipsum, tincidunt sed cursus sed, varius vitae eros. Aenean mollis hendrerit ipsum, et iaculis nisi blandit ac. Morbi vitae diam ex. Interdum et malesuada fames ac ante ipsum primis in faucibus. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Praesent gravida purus a accumsan cursus. </p>
<p>Vestibulum ac massa et felis mattis imperdiet. Proin at ligula hendrerit, luctus erat id, gravida nibh. Cras hendrerit placerat lacus, quis maximus enim scelerisque eget. In sollicitudin neque a tellus interdum cursus. In hac habitasse platea dictumst. Vestibulum aliquam pulvinar velit vel maximus. Curabitur consectetur egestas scelerisque. Ut dictum dolor eu odio volutpat blandit. Proin lorem turpis, euismod varius massa vitae, interdum fermentum tortor. Aliquam ut felis et magna rhoncus egestas in lobortis enim. Integer imperdiet lobortis quam aliquam porta. Curabitur quis est eget lorem sagittis vehicula.</p>
<p>In semper, magna a finibus dapibus, odio tortor dictum quam, in gravida ante ante at ante. Duis ac elementum augue, vehicula consectetur massa. Phasellus vulputate metus vitae mi tempus volutpat. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Pellentesque erat metus, lacinia in massa vel, tincidunt blandit turpis. Phasellus ac elit fermentum ipsum pharetra auctor id vel magna. Vivamus a urna venenatis, tempor nisl in, luctus est. Nullam ullamcorper, turpis aliquam accumsan malesuada, purus eros condimentum eros, eget faucibus felis ligula a nunc. Aenean sollicitudin sed nulla et convallis.</p>
<p>Donec ut ante vel elit accumsan hendrerit nec et urna. Duis et dolor aliquet, sollicitudin ligula eget, iaculis eros. Quisque gravida nisl in sapien suscipit, non efficitur risus pulvinar. Maecenas blandit diam nunc. Sed ac venenatis justo, efficitur accumsan elit. In dictum felis mi, id malesuada ante accumsan at. Vivamus in velit vitae velit placerat gravida ac eget mi.</p>
<p>Vivamus eget metus eget urna consectetur tristique. Maecenas egestas pretium enim, vel facilisis ante pellentesque ac. Nam maximus sapien nec velit efficitur, at pretium nulla maximus. Phasellus dui quam, commodo vitae pharetra sit amet, viverra a purus. Integer vitae justo sed justo malesuada pretium at sed nibh. Ut semper erat non cursus lobortis. Etiam volutpat magna nec tellus commodo blandit quis ac neque. Duis et dui vitae ex bibendum euismod. Duis ac placerat erat. Curabitur ipsum sem, dapibus nec fringilla quis, mattis sed diam. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Cras placerat, massa cursus vulputate hendrerit, purus felis dignissim diam, pellentesque ultrices elit ipsum id dolor. Praesent ac sem vitae felis elementum mollis vel ultrices eros. Nullam ut odio lacinia, molestie lorem a, porttitor nibh. Aenean et diam non arcu porta vehicula at ornare libero. Aliquam odio urna, fermentum sed faucibus nec, dapibus in felis.</p>
</expander>
</body>
</html>
<html>
<head>
<style>
body {
font-family: Arial, Helvetica, sans-serif;
}
.menu {
top: 0;
left: 0;
width: 100%;
}
.menu.floating {
position: fixed;
}
.menu:not(.floating)
{
position: absolute;
}
.menu ul.menu-content, .menu ul.menu-item-content {
list-style: none;
}
.menu * {
margin: 0;
padding: 0;
}
.menu {
color: white;
background-color: #333;
font-size: 16px;
}
.menu a {
font-size: inherit;
color: inherit;
text-decoration: none;
}
.menu a:hover {
color: white;
text-decoration: none;
}
.menu-content {
color: inherit;
background-color: inherit;
font-size: inherit;
}
.menu-item {
color: inherit;
background-color: inherit;
float: left;
position: relative;
font-size: inherit;
}
.menu-item-content {
color: inherit;
background-color: inherit;
font-size: inherit;
box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
display: none;
}
.menu-item-header {
font-size: inherit;
text-align: left;
display: block;
width: 160px;
padding: 14px 16px;
}
.menu > .menu-content > .menu-item > .menu-item-content {
position: absolute;
left: 0;
top: 100%;
}
.menu-item-content > .menu-item > .menu-item-content {
position: absolute;
left: 100%;
top: 0;
}
.menu-item-header:hover {
background-color: red;
}
.menu:focus-within .menu-item:hover > .menu-item-content {
display: block;
}
.menu > .menu-content > .menu-item > .menu-item-header:not(:only-child):after {
content: "⯆";
float: right;
}
.menu-item-content > .menu-item > .menu-item-header:not(:only-child):after {
content: "⯈";
position: absolute;
top: 14px;
left: 85%;
}
.menu + * {
margin-top: 60px
}
</style>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js"></script>
<style>
/* Make the image fully responsive
.carousel-inner img {
width: 100%;
height: 100%;
}*/
</style>
<style>
.expander-header {
background-color: #eee;
color: #444;
cursor: pointer;
padding: 18px;
width: 100%;
border: none;
text-align: left;
outline: none;
font-size: 15px;
transition: 0.4s;
}
.expander-header:hover, .expander-header.active {
background-color: #ccc;
}
.expander-header:after {
content: '\002B';
color: #777;
font-weight: bold;
float: right;
margin-left: 5px;
}
.expander-header.active:after {
content: "\2212";
}
.expander-content {
padding: 0 18px;
background-color: white;
max-height: 0;
overflow: hidden;
transition: max-height 0.2s ease-out;
}
</style>
<script type="text/javascript">
function Expander_Clicked(sender, e)
{
var header = sender;
// Find "The Content"
var content = null;
if (header.nextElementSibling != null && header.nextElementSibling.id == "TEMPLATE_THE_CONTENT")
{
content = header.nextElementSibling
}
else
{
var parent = header.parentElement;
// Ideally this would search descendents, I think.
for (i = 0; i < parent.children.length; i++)
{
if (parent.children[i].id == "TEMPLATE_THE_CONTENT")
{
content = parent.children[i];
break;
}
}
if (content == null) return;
}
header.classList.toggle("active");
if (content.style.maxHeight)
{
content.style.maxHeight = null;
}
else
{
content.style.maxHeight = content.scrollHeight + "px";
}
}
</script>
<meta charset="utf-8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<meta name="google" content="notranslate"/>
<style>
a.btn { color: black; background: lightgray; display: block; }
a.btn:hover { color: white; background: gray; }
</style>
<title>ASP.NET Core View Engine Revisited</title>
</head>
<body>
<nav class="menu floating">
<ul class="menu-content">
<li class="menu-item">
<a class="menu-item-header" href="javascript:void(0);">Declarations</a>
<ul class="menu-item-content">
<li class="menu-item">
<a class="menu-item-header" href="javascript:void(0);">Types</a>
<ul class="menu-item-content">
<li class="menu-item">
<a class="menu-item-header" href="/declarations/types#class">Class</a>
</li>
<li class="menu-item">
<a class="menu-item-header" href="/declarations/types#class">Structure</a>
</li>
<li class="menu-item">
<a class="menu-item-header" href="/declarations/types#class">Interface</a>
</li>
<li class="menu-item">
<a class="menu-item-header" href="/declarations/types#class">Module</a>
</li>
<li class="menu-item">
<a class="menu-item-header" href="/declarations/types#class">Delegate</a>
</li>
</ul>
</li>
<li class="menu-item">
<a class="menu-item-header" href="/declarations/members">Members</a>
</li>
</ul>
</li>
<li class="menu-item">
<a class="menu-item-header" href="javascript:void(0);">Statements</a>
<ul class="menu-item-content">
<li class="menu-item">
<a class="menu-item-header" href="/locals">Variable Declarations</a>
</li>
<li class="menu-item">
<a class="menu-item-header" href="/control">Control Flow (If, Select Case)...</a>
</li>
<li class="menu-item">
<a class="menu-item-header" href="/loops">Loops (For, For Each, Do, While)...</a>
</li>
<li class="menu-item">
<a class="menu-item-header" href="/statements#other">Other...</a>
</li>
</ul>
</li>
<li class="menu-item">
<a class="menu-item-header" href="/expressions">Expressions</a>
</li>
</ul>
</nav>
<div id="myCarousel" class="carousel slide" data-ride="carousel" data-interval="6000">
<ol class="carousel-indicators">
<li data-target="#myCarousel" data-slide-to="0" class="active"></li>
<li data-target="#myCarousel" data-slide-to="1"></li>
<li data-target="#myCarousel" data-slide-to="2"></li>
</ol>
<div class="carousel-inner" role="listbox">
<div class="carousel-item active">
<div>
<img src="https://www.w3schools.com/bootstrap4/ny.jpg" alt="New York"/>
<div class="carousel-caption">
<p>
<h3>New York</h3>
<span>The Big Apple. Home of super heroes like Spider-man and the Avengers!</span><a class="btn btn-default" href="https://en.wikipedia.org/wiki/New_York_City">Learn More</a></p>
</div>
</div>
</div>
<div class="carousel-item">
<div>
<img src="https://www.w3schools.com/bootstrap4/chicago.jpg" alt="Chicago"/>
<div class="carousel-caption">
<p>
<h3>Chicago</h3>
<span>The Windy City. Home of Great Pizza and Hot Dogs!</span><a class="btn btn-default" href="https://en.wikipedia.org/wiki/Chicago">Learn More</a></p>
</div>
</div>
</div>
<div class="carousel-item">
<div>
<img src="https://www.w3schools.com/bootstrap4/la.jpg" alt="Los Angeles"/>
<div class="carousel-caption">
<p>
<h3>Los Angeles</h3>
<span>The City of Angels. Home of Hollywood!</span><a class="btn btn-default" href="https://en.wikipedia.org/wiki/Los_Angeles">Learn More</a></p>
</div>
</div>
</div>
</div>
<a class="carousel-control-prev" href="#myCarousel" role="button" data-slide="prev">
<span class="carousel-control-prev-icon"></span>
<span class="sr-only">Previous</span>
</a>
<a class="carousel-control-next" href="#myCarousel" role="button" data-slide="next">
<span class="carousel-control-next-icon"></span>
<span class="sr-only">Next</span>
</a>
</div>
<h1>Welcome!</h1>
<div class="expander">
<button class="expander-header" id="TEMPLATE_THE_BUTTON" onclick="Expander_Clicked(this, event);">Section 1</button>
<div class="expander-content" id="TEMPLATE_THE_CONTENT">
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque posuere, orci non accumsan semper, arcu turpis auctor risus, lobortis elementum leo felis vel felis. Nulla sapien odio, ultricies et sapien vitae, maximus dignissim ligula. Praesent nec dapibus purus. Aenean vel nulla orci. Donec nisl neque, hendrerit nec magna vitae, semper vestibulum augue. Nulla augue ipsum, tincidunt sed cursus sed, varius vitae eros. Aenean mollis hendrerit ipsum, et iaculis nisi blandit ac. Morbi vitae diam ex. Interdum et malesuada fames ac ante ipsum primis in faucibus. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Praesent gravida purus a accumsan cursus. </p>
<p>Vestibulum ac massa et felis mattis imperdiet. Proin at ligula hendrerit, luctus erat id, gravida nibh. Cras hendrerit placerat lacus, quis maximus enim scelerisque eget. In sollicitudin neque a tellus interdum cursus. In hac habitasse platea dictumst. Vestibulum aliquam pulvinar velit vel maximus. Curabitur consectetur egestas scelerisque. Ut dictum dolor eu odio volutpat blandit. Proin lorem turpis, euismod varius massa vitae, interdum fermentum tortor. Aliquam ut felis et magna rhoncus egestas in lobortis enim. Integer imperdiet lobortis quam aliquam porta. Curabitur quis est eget lorem sagittis vehicula.</p>
<p>In semper, magna a finibus dapibus, odio tortor dictum quam, in gravida ante ante at ante. Duis ac elementum augue, vehicula consectetur massa. Phasellus vulputate metus vitae mi tempus volutpat. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Pellentesque erat metus, lacinia in massa vel, tincidunt blandit turpis. Phasellus ac elit fermentum ipsum pharetra auctor id vel magna. Vivamus a urna venenatis, tempor nisl in, luctus est. Nullam ullamcorper, turpis aliquam accumsan malesuada, purus eros condimentum eros, eget faucibus felis ligula a nunc. Aenean sollicitudin sed nulla et convallis.</p>
<p>Donec ut ante vel elit accumsan hendrerit nec et urna. Duis et dolor aliquet, sollicitudin ligula eget, iaculis eros. Quisque gravida nisl in sapien suscipit, non efficitur risus pulvinar. Maecenas blandit diam nunc. Sed ac venenatis justo, efficitur accumsan elit. In dictum felis mi, id malesuada ante accumsan at. Vivamus in velit vitae velit placerat gravida ac eget mi.</p>
<p>Vivamus eget metus eget urna consectetur tristique. Maecenas egestas pretium enim, vel facilisis ante pellentesque ac. Nam maximus sapien nec velit efficitur, at pretium nulla maximus. Phasellus dui quam, commodo vitae pharetra sit amet, viverra a purus. Integer vitae justo sed justo malesuada pretium at sed nibh. Ut semper erat non cursus lobortis. Etiam volutpat magna nec tellus commodo blandit quis ac neque. Duis et dui vitae ex bibendum euismod. Duis ac placerat erat. Curabitur ipsum sem, dapibus nec fringilla quis, mattis sed diam. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Cras placerat, massa cursus vulputate hendrerit, purus felis dignissim diam, pellentesque ultrices elit ipsum id dolor. Praesent ac sem vitae felis elementum mollis vel ultrices eros. Nullam ut odio lacinia, molestie lorem a, porttitor nibh. Aenean et diam non arcu porta vehicula at ornare libero. Aliquam odio urna, fermentum sed faucibus nec, dapibus in felis.</p>
</div>
</div>
<br/>
<div class="expander">
<button class="expander-header" id="TEMPLATE_THE_BUTTON" onclick="Expander_Clicked(this, event);"><span style="font-weight: bold;">Section 2</span></button>
<div class="expander-content" id="TEMPLATE_THE_CONTENT">
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque posuere, orci non accumsan semper, arcu turpis auctor risus, lobortis elementum leo felis vel felis. Nulla sapien odio, ultricies et sapien vitae, maximus dignissim ligula. Praesent nec dapibus purus. Aenean vel nulla orci. Donec nisl neque, hendrerit nec magna vitae, semper vestibulum augue. Nulla augue ipsum, tincidunt sed cursus sed, varius vitae eros. Aenean mollis hendrerit ipsum, et iaculis nisi blandit ac. Morbi vitae diam ex. Interdum et malesuada fames ac ante ipsum primis in faucibus. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Praesent gravida purus a accumsan cursus. </p>
<p>Vestibulum ac massa et felis mattis imperdiet. Proin at ligula hendrerit, luctus erat id, gravida nibh. Cras hendrerit placerat lacus, quis maximus enim scelerisque eget. In sollicitudin neque a tellus interdum cursus. In hac habitasse platea dictumst. Vestibulum aliquam pulvinar velit vel maximus. Curabitur consectetur egestas scelerisque. Ut dictum dolor eu odio volutpat blandit. Proin lorem turpis, euismod varius massa vitae, interdum fermentum tortor. Aliquam ut felis et magna rhoncus egestas in lobortis enim. Integer imperdiet lobortis quam aliquam porta. Curabitur quis est eget lorem sagittis vehicula.</p>
<p>In semper, magna a finibus dapibus, odio tortor dictum quam, in gravida ante ante at ante. Duis ac elementum augue, vehicula consectetur massa. Phasellus vulputate metus vitae mi tempus volutpat. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Pellentesque erat metus, lacinia in massa vel, tincidunt blandit turpis. Phasellus ac elit fermentum ipsum pharetra auctor id vel magna. Vivamus a urna venenatis, tempor nisl in, luctus est. Nullam ullamcorper, turpis aliquam accumsan malesuada, purus eros condimentum eros, eget faucibus felis ligula a nunc. Aenean sollicitudin sed nulla et convallis.</p>
<p>Donec ut ante vel elit accumsan hendrerit nec et urna. Duis et dolor aliquet, sollicitudin ligula eget, iaculis eros. Quisque gravida nisl in sapien suscipit, non efficitur risus pulvinar. Maecenas blandit diam nunc. Sed ac venenatis justo, efficitur accumsan elit. In dictum felis mi, id malesuada ante accumsan at. Vivamus in velit vitae velit placerat gravida ac eget mi.</p>
<p>Vivamus eget metus eget urna consectetur tristique. Maecenas egestas pretium enim, vel facilisis ante pellentesque ac. Nam maximus sapien nec velit efficitur, at pretium nulla maximus. Phasellus dui quam, commodo vitae pharetra sit amet, viverra a purus. Integer vitae justo sed justo malesuada pretium at sed nibh. Ut semper erat non cursus lobortis. Etiam volutpat magna nec tellus commodo blandit quis ac neque. Duis et dui vitae ex bibendum euismod. Duis ac placerat erat. Curabitur ipsum sem, dapibus nec fringilla quis, mattis sed diam. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Cras placerat, massa cursus vulputate hendrerit, purus felis dignissim diam, pellentesque ultrices elit ipsum id dolor. Praesent ac sem vitae felis elementum mollis vel ultrices eros. Nullam ut odio lacinia, molestie lorem a, porttitor nibh. Aenean et diam non arcu porta vehicula at ornare libero. Aliquam odio urna, fermentum sed faucibus nec, dapibus in felis.</p>
</div>
</div>
</body>
</html>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment