The Creative Process

Here is my Journey through the learning curve for web development

christopher mcarthur chris mcarthur montreal concordia - default stock photo of html code

It all started with a long bus and metro ride being stuck in traffic

"Hummmm...
Hey, I wonder if I can make a website. I Do need to compete with the software engineering kids in my class..."

christopher mcarthur chris mcarthur montreal concordia - first attempt at htmlchristopher mcarthur chris mcarthur montreal concordia - second attempt with some htmlchristopher mcarthur chris mcarthur montreal concordia - third version a fragment of what it is now christopher mcarthur chris mcarthur montreal concordia - results of my never ending seo workSo a quick Google and a stop to W3School's HTML tutorial and I was off. cout << "This is my First Webpage"; Thats where my problem started! As an artistic individual with an OCD nature for everything being visually appleasing, I could not not leave it as a black and white page... soo I moved to the CSS tutorial and began looking at website I thought looked nice and checked out what they had behind the sense for styling. Next version was nicer with a menu but my stylesheet was in my html doc and still nothing eyecatching.

I learn best by example. Watching my dad doing oil changes, changing tires, brakes, etc; at work to learn internal systems and procedures, I watched my co-workers. The same held for this website, after looking at tutorials and trying to develope an understanding of css I came across TEMPLATED where I came across a theme which suited my needs quiet well. Building from this I disected the code, changed elements to reflect my style; Through this I was finally able to understand enough to rebuild and strip the site down to its components and build it the way I like it from the ground up. Hoping that showing off my website will get me the chance to rebuild a notary's website (family connection) so I can gain some relevent work experience!

aI'm about to update my github repository for pretty much everything - on may 30th 11pm - before bed and I just wanted to write a blurb as a summation of what i have done lately. Across all the pages, the menu nav got an update it went from black to the teal i have on my buttons and I added fontawesome icons to the list, just out my personal pages and added my github and linkedin to it ( this is a run on sentence). index page is namely untouched, just fixed a few typos but i know there's more proof reading will come later. main css, cutting out the slides show i tried to make and replaced it with a skrollr page, its only 4 pictures one being a download but I got the works and I'm quiet impressed with myself I must admit. off my skrollr addition I made a consturction page, some of my links have been broken up to this point and that was very unprofessional so I made a costume slides for that, it will be finished in the coming days as I haven't added my helper to let it work. lastly for html page updates this one got bootstrap for the resizing help, did a lot manually but it wasnt perfect, there was lots of formatting isues soo it will be hard to put it across all pages. oh yes my php work has began! but its off to a slow start ive been playing with it on my portfolio page as well as string to do the submit button on index- its falling behind because I havent finished content which is never ending since i keep coming up with new ideas. Stay tuned for more updates! Oh I forgot also I need to add all my c++/OOP/.net work to github

It's been a long while since I have updated this mini blog but I was soo busy not enough has gotten done. regardless of that today - june 21st - I am pleased to annoce this little project worked! I landed myself a fall internship doing c++ work in a graphics company's video department. Now what have I done here? It feels like everything.. Ill start with what did not work out soo well. Github pages hosting method only does static pages; so all the php work I did was useless. Thankfully for me my contact me form was still possible, I came across Formspree which was made to solve my exact problem and with this I made a "thank you" page similar to my under construction page. Unfortunately the skrollr effect on both of these has fallen flat so they are just static pages. My portfolio page has been a long process but hopefully ill be able to post the new 27 picture page; I have mapped out my layout picked my effects its just a matter of working out the kinks debugging fixing etc. website development got renamed to webDev so it would be easier for me to post to github. Beyond that, i added a bunch of random code I had to make this semester in my Data Structures and Algorithms class. The class was in java but I wrote some in C++ because that was easier for me to work with. So it would be easier to navigate I added little button to quick scroll down to each section with jQuery!! Also because I need everthing to look good, I played with some code pretty from google with some fun themes to theme though the tabs are way off because of it =/ My robotics page has started to take shape; using bootstrap's carousel i got a nice one going and ive began to write all that content which is quiet a bite thank fully my mom kept all the pictures she took soo I'm still debating how im going to use all or some of them. The nav has gotten a few updates... more options and a couple styling queys I added for fun.

July 13th 2016! what have i been doing ... not much all i do is write content for my robotics page... which also involves going through my 1000+ pictures from the 4 years i've gone.. please bare with me I know not much is happening but behind the scences work is going on! though i did buy a pup which ill pick up after i come back from my trip to italy =p

Here's some random code samples from my ADT class

Python Deck Sorting Iterator
i = 0;
while (!deck.isInOrder())
{
print 'Iteration ' + i;
deck.shuffle();
i++;
}
print 'It took ' + i + ' iterations to sort the deck.';

Java Inorder and Preorder Tree Builder
public class MakeTreefromInorderAndPreorder
{
    public static int pIndex=0;
    
    public Node makeBTree(int[] inOrder, int[] preOrder, int iStart, int iEnd )
    {
        if(iStart>iEnd)
        {
            return null;
        }
        Node root = new Node(preOrder[pIndex++]);
        if(iStart==iEnd)
        {
            return root;
        }
        int index = getInorderIndex(inOrder, iStart, iEnd, root.data);
        root.left = makeBTree(inOrder,preOrder,iStart, index-1);
        root.right = makeBTree(inOrder,preOrder,index+1, iEnd);
        }
        return root;
    }

    public int getInorderIndex(int [] inOrder, int start, int end, int data)
    {
        for(int i=start; i<=end; i++)
        {
            if(inOrder[i]==data)
            {
                return i;
            }
        }
        return -1;
    }
    
    public void printINORDER(Node root)
    {
        if(root!=null)
        {
            printINORDER(root.left);
            System.out.print("  " + root.data);
            printINORDER(root.right);
        }
    }
    
    public static void main (String[] args) throws java.lang.Exception
    {
        int [] inOrder = {2,5,6,10,12,14,15};
        int [] preOrder = {10,5,2,6,14,12,15};
        MakeTreefromInorderAndPreorder  i = new MakeTreefromInorderAndPreorder();
        Node x = i.makeBTree(inOrder, preOrder, 0, inOrder.length-1);
        System.out.println("Constructed Tree: ");
        i.printINORDER(x);
    }
}

class Node
{
    int data;
    Node left;
    Node right;

    public Node (int data)
    {
        this.data = data;
        left = null;
        right = null;
    }
}
C++ Inorder And Preorder Tree Builder

/* program to construct tree using inorder and preorder traversals */
#include <ostream>
#include <stdio.h>
#include <stdlib.h>
 
/* A binary tree node has data, pointer to left child
and a pointer to right child */
struct node
{
	char data;
	struct node* left;
	struct node* right;
};

// Prototypes for utility functions 
int search(char arr[], int strt, int end, char value);
struct node* newNode(char data);

char getData(node* node)
{
	if (node == NULL) return ' ';
	else return node->data;
}

/* Recursive function to construct binary of size len from
Inorder traversal in[] and Preorder traversal pre[].  Initial values
of inStrt and inEnd should be 0 and len -1.  The function doesn't
do any error checking for cases where inorder and preorder
do not form a tree */
struct node* buildTree(char in[], char pre[], int inStrt, int inEnd)
{
	static int preIndex = 0;

	if (inStrt > inEnd)
	{
		return NULL;
	}

	/* Pick current node from Preorder traversal using preIndex
	and increment preIndex */
	node *tNode = newNode(pre[preIndex++]);
	
	// If this node has no children then return
	if (inStrt == inEnd)
	{
		return tNode;
	}

	/* Else find the index of this node in Inorder traversal */
	int inIndex = search(in, inStrt, inEnd, tNode->data);

	/* Using index in Inorder traversal, construct left and
	right subtress */
	tNode->left = buildTree(in, pre, inStrt, inIndex - 1);
	tNode->right = buildTree(in, pre, inIndex + 1, inEnd);

	printf(" - %c - \n%c     %c\n", tNode->data, getData(tNode->left), getData(tNode->right) );

	return tNode;
}



// UTILITY FUNCTIONS
/* Function to find index of value in arr[start...end]
The function assumes that value is present in in[] */
int search(char arr[], int strt, int end, char value)
{
	for (int i = strt; i <= end; i++)
	{
		if (arr[i] == value)
			return i;
	}
}

/* Helper function that allocates a new node with the
given data and NULL left and right pointers. */
node* newNode(char data)
{
	struct node* node = (struct node*)malloc(sizeof(struct node));
	node->data = data;
	node->left = NULL;
	node->right = NULL;
	return(node);
}

/* This funtcion is here just to test buildTree() */
void printInorder(node* node)
{
	if (node == NULL)
		return;

	// first recur on left child
	printInorder(node->left);

	// then print the data of node
	printf("%c ", node->data);

	// now recur on right child
	printInorder(node->right);
}

// Driver program to test above functions
int main()
{
	printf("Hello World!\n");
	/* Inorder:  E O N F K L J C A I N H D G B
	   Preorder: H O E C L F N K J I A N G D B */
	char in[15] = { 'E', 'O', 'M', 'F', 'K', 'L', 'J', 'C', 'A', 'I', 'N', 'H', 'D', 'G', 'B' };
	char pre[15] = { 'H', 'O', 'E', 'C', 'L', 'F', 'M', 'K', 'J', 'I', 'A', 'N', 'G', 'D', 'B' };
	int len = sizeof(in) / sizeof(in[0]);
	node *root = buildTree(in, pre, 0, len - 1);

	// Let us test the built tree by printing Insorder traversal
	printf("\nInorder traversal of the constructed tree is: \n");
	printInorder(root);

	printf("\n\nHit any key to terminate.");
	getchar();
	return 0;
}

/*
char in[] = { 'S', 'A', 'E', 'U', 'Y', 'Q', 'R', 'P', 'D', 'F', 'K', 'L', 'M' };
char pre[] = { 'F', 'A', 'S', 'Q', 'Y', 'E', 'U', 'P', 'R', 'D', 'K', 'L', 'M' };
*/
C++ double linked list
#include <iostream>
using namespace std;

/* Linked list structure */
struct list 
{
	struct list *prev;
	int data;
	struct list *next;
}   
//initializors
*node = NULL, *first = NULL, *last = NULL, *node1 = NULL, *node2 = NULL;

class linkedlist 
{
    public:
        /* Function for create/insert node at the beginning of Linked list */
        void insert_beginning()
        {
            list *addBeg = new list;
			cout << "Enter value for the node:" << endl;
            cin >> addBeg->data;
            if(first == NULL)
            {
                addBeg->prev = NULL;
                addBeg->next = NULL;
                first = addBeg;
                last = addBeg;
                cout << "Linked list Created!" << endl;
            }
            else
            {
                addBeg->prev = NULL;
                first->prev = addBeg;
                addBeg->next = first;
                first = addBeg;
                cout << "Data Inserted at the beginning of the Linked list!" << endl;
            }
        }

        /* Function for create/insert node at the end of Linked list */
        void insert_end()
        {
            list *addEnd = new list;
            cout << "Enter value for the node:" << endl;
            cin >> addEnd->data;
            if(first == NULL)
            {
                addEnd->prev = NULL;
                addEnd->next = NULL;
                first = addEnd;
                last = addEnd;
                cout << "Linked list Created!" << endl;
            }
            else 
            {
                addEnd->next = NULL;
                last->next = addEnd;
                addEnd->prev = last;
                last = addEnd;
                cout << "Data Inserted at the end of the Linked list!" << endl;
            }
        }

        /* Function for Display Linked list */
        void display() 
        {
            node = first;
            cout << "List of data in Linked list in Ascending order!" << endl;
            while(node != NULL) 
            {
                cout << node->data << endl;
                node = node->next;
			}
			node = last;
			cout << "List of data in Linked list in Descending order!" << endl;
			while(node != NULL) 
            {
				cout << node->data << endl;
				node = node->prev;
            }
        }
	
        /* Function for delete node from Linked list */
        void del() 
        {
            int count = 0, number, i;
            node = node1 = node2 = first;
            for(node = first; node != NULL; node = node->next)
                cout << "Enter value for the node:" << endl;
            count++;
            display();
            cout << count << " nodes available here!" << endl;
            cout << "Enter the node number which you want to delete:" << endl;
            cin >> number;
            if(number != 1) 
            {
                if(number << count && number > 0) 
                {
                    for(i = 2; i <= number; i++)
                        node = node->next;
                    for(i = 2; i <= number-1; i++)
                        node1 = node1->next;
                    for(i = 2; i <= number+1; i++)
                        node2 = node2->next;
                    node2->prev = node1;
                    node1->next = node2;
                    node->prev = NULL;
                    node->next = NULL;
                    node = NULL;
                }
                else if(number == count) 
                {
                    node = last;
                    last = node->prev;
                    last->next = NULL;
                    node = NULL;
                }
                else
                    cout << "Invalid node number!" << endl;
            }
            else 
            {
                node = first;
                first = node->next;
                first->prev = NULL;
                node = NULL;
            }
            cout << "Node has been deleted successfully!" << endl;
        }
	};

int main() 
{
    int op = 0;
    linkedlist list = linkedlist();
    while(op != 4) 
    {
        cout << "1. Insert at the beginning\n2. Insert at the end\n3. Delete\n4. Display\n5. Exit" << endl;
        cout << "Enter your choice:" << endl;
        cin >> op;
        switch(op) 
        {
            case 1:
                llist.insert_beginning();
                break;
            case 2:
                llist.insert_end();
                break;
            case 3:
                llist.del();
                break;
            case 4:
                llist.display();
                break;
            case 5:
                cout << "Bye Bye!" << endl;
                return 0;
                break;
            default:
                cout << "Invalid choice!" << endl;
        }
    }
    return 0;
}
C++ Counting Sort

// Example program
#include <iostream>
#include <string>

/* this is big-Oh(n^2 ) */
int main()
{
  int arry[] = {60,35,81,98,14,47};
  int srry[6];
  int S[6];
  for( int i = 0; i < 6 ;i++)
  {
      srry[i] = 0;
      printf("i: %d | srry: {", i);
      for (int j = 0; j < 6 ; j++)
      {
          printf(" %d,",srry[j]);
      }
      printf("}\n");
  }
  for(int i = 0; i < 6 - 1; i++)
  {
      for(int j = i + 1; j < 6 ; j++)
      {
        if( arry[i] <= arry[j] )
        {
            srry[j] = srry[j]+1;
        }
        else
        {
            srry[i] = srry[i]+1;
        }
        printf("i: %d | j: %d | srry: {", i, j);
        for (int k = 0; k < 6 ; k++)
        {
            printf(" %d,",srry[k]);
        }
        printf("}\n");
      }
  }
  for(int i = 0; i < 6; i++)
  {
      S[srry[i]] = arry[i];
      
      printf("i: %d | s: {", i);
      for (int j = 0; j < 6 ; j++)
      {
          printf(" %d,",srry[j]);
      }
      printf("}\n");
  }   
      
}  

/* this is Big-Oh better than n log n */
void CountingSort(int arr[], int sz) 
{
	int i, j, k;
	int idx = 0;
	int min, max;
 
	min = max = arr[0];
	for(i = 1; i < sz; i++) {
		min = (arr[i] < min) ? arr[i] : min;
		max = (arr[i] > max) ? arr[i] : max;
	}
 
	k = max - min + 1;
	/* creates k buckets */
	int *B = new int [k]; 
	for(i = 0; i < k; i++) B[i] = 0;

	for(i = 0; i < sz; i++) B[arr[i] - min]++;
	for(i = min; i <= max; i++) 
		for(j = 0; j < B[i - min]; j++) arr[idx++] = i;
 
	print(arr,sz);

	delete [] B;
}
C++ double linked list

//
// C++ Program To Implement Radix Sort
//
#include <iostream>
#include <cstdlib>
using namespace std;

// A utility function to print an array
void print(int arr[], int n)
{
	printf("{ ");
	for (int i = 0; i < n; i++)
		printf("%03d, ", arr[i]);
	printf(" }\n");
}

//get maximum value in arr[]
int getMax(int arr[], int n)
{
	int max = arr[0];
	for (int i = 1; i < n; i++)
		if (arr[i] > max)
			max = arr[i];
	return max;
}
 
//count sort of arr[]
void countSort(int arr[], int n, int exp)
{
	int output[11] = { 0 };
	int i, count[10] = { 0 };
	for (i = 0; i < n; i++)
		count[(arr[i] / exp) % 10]++;
	for (i = 1; i < 10; i++)
		count[i] += count[i - 1];

	printf("counting value mod %04d ", exp);
	print(count, 10);

	for (i = n - 1; i >= 0; i--)
	{
		output[count[(arr[i] / exp) % 10] - 1] = arr[i];
		count[(arr[i] / exp) % 10]--;		
	}
	for (i = 0; i < n; i++)
	{
		arr[i] = output[i];
		printf("Step %02d: ", i+1);
		print(arr, n);
	}
}

// sorts arr[] of size n using Radix Sort
void radixsort(int arr[], int n)
{
	int m = getMax(arr, n);
	for (int exp = 1; m / exp > 0; exp *= 10)
	{
		countSort(arr, n, exp);
		printf("Sorted:  ");
		print(arr, n);
		printf("\n");
	}
}

/*
* Main
*/
int main()
{
	printf("Hello World!\n");
	int arr[] = { 783, 99, 472, 182, 264, 543, 356, 295, 692, 491, 94 };
	int n = sizeof(arr) / sizeof(arr[0]);

	printf("Before sorting: ");
	print(arr, n);
	printf("\n------------------------------------------------------------------------\n\n");

	radixsort(arr, n);

	printf("\n\n------------------------------------------------------------------------\n");
	printf("After sorting: ");
	print(arr, n);

	printf("\n\nHit any key to terminate.");
	getchar();
	return 0;
}

Imperdiet ullamcorper sagittis diam nisi hac posuere hendrerit ultricies eu integer sociis. Lorem fermentum ut sociosqu nunc netus congue mattis. Vestibulum ridiculus convallis curae; cubilia phasellus nam fames nostra ridiculus blandit nec. Donec, nec sociosqu condimentum risus nisi consectetur massa. Feugiat laoreet semper gravida justo dis egestas at ante leo semper. Lorem montes.

Orci sollicitudin aliquet non. Sociis himenaeos pulvinar at lacus cum. Blandit nisi class dictum a, euismod taciti pharetra gravida ridiculus consequat consectetur. Cubilia vel egestas lacus ullamcorper vulputate etiam facilisi ut sapien semper. Nullam dictumst ornare tincidunt vel vel porta et senectus quam vulputate laoreet. Eros nibh auctor, cubilia pharetra sem sapien. Montes mollis imperdiet magnis mattis mus rhoncus.

Non purus nullam ullamcorper. Eleifend sodales cursus dictumst. Curae; praesent semper purus nascetur amet himenaeos cras placerat. Iaculis consequat sociis ligula facilisi dictumst felis nisi facilisi consequat! Eu senectus eros litora aenean massa? Quam, aptent aptent hendrerit pretium! Semper at leo quis cum diam convallis etiam sem molestie. Suspendisse adipiscing senectus suspendisse molestie urna bibendum. Dictumst eros aptent fringilla nisi ante placerat hac. Tincidunt nostra mi curae; mollis purus ipsum pellentesque ornare sodales lacinia molestie ut. Nisl nulla bibendum nostra. Vitae penatibus vulputate proin. Sem, suscipit etiam leo. Vel vestibulum sociosqu mi porttitor platea nec cras vitae a est fermentum sapien. Rutrum eu tempor fusce vulputate rhoncus tristique eget suspendisse. Leo fames donec nisl. Tristique vivamus sodales at praesent porta dignissim. At enim nisi luctus vivamus diam aliquam ullamcorper accumsan per augue risus? Per in inceptos penatibus platea curae; euismod consectetur. Habitant elementum vel eros feugiat luctus! Imperdiet venenatis eleifend ligula lectus mauris convallis pellentesque? Auctor sociosqu tempus luctus phasellus vel vel gravida ipsum. Dis est tincidunt malesuada ultricies cubilia nulla nostra.

Adipiscing feugiat commodo ornare aliquam vulputate blandit velit porttitor sodales erat. Maecenas habitant venenatis bibendum egestas nisi, per a massa elit commodo. Elementum scelerisque lorem ipsum fusce sit pellentesque morbi venenatis porta. Est turpis imperdiet dictumst quis aliquet mattis posuere sem erat pharetra ipsum! Tristique aenean porttitor purus blandit habitant nullam libero tempus faucibus habitant hendrerit. Quisque, eget integer habitasse ullamcorper. Ultrices aptent hendrerit?

Lacus odio lectus mus ornare urna natoque parturient neque morbi amet hendrerit. Tellus sociosqu adipiscing erat. Tristique ut semper dictumst facilisi suspendisse habitant nostra enim ultricies! Rutrum semper sem libero ridiculus potenti blandit egestas class. Placerat viverra tempus vel! Laoreet inceptos inceptos hendrerit aliquam? Ridiculus odio erat magnis posuere vel imperdiet fames tincidunt! Nascetur cras nulla elit tincidunt elit dignissim. Dictum maecenas, felis turpis torquent dapibus tempus bibendum est suscipit. Interdum aenean fermentum potenti molestie ipsum vitae dis augue. Himenaeos porttitor sed nam montes euismod hac. Habitant ipsum velit commodo. Auctor sem elementum nunc molestie primis. Bibendum non curabitur erat. Hac convallis malesuada ultrices vulputate molestie gravida inceptos conubia torquent tempor. Bibendum eget amet odio. Porttitor magna accumsan risus tellus metus curae; fusce nostra volutpat dignissim sem potenti! Tincidunt neque tempor elementum sapien senectus ornare? Eu viverra luctus consequat mus id libero iaculis nascetur senectus quis suscipit. Felis porttitor auctor posuere platea tincidunt adipiscing conubia ridiculus amet congue justo. Neque donec dictum feugiat himenaeos congue pulvinar natoque etiam sem. Tincidunt dictum cum congue. Pulvinar viverra interdum senectus.

Maecenas at facilisis, et ac ante phasellus hendrerit! Lacinia vitae montes arcu suscipit egestas consectetur et? Senectus enim risus gravida diam congue posuere fermentum mattis tincidunt. Nec metus porttitor posuere. Curae; nisl nisl aliquam ante amet vestibulum iaculis eleifend vulputate sem eget. Mollis fringilla conubia nisl sit arcu facilisis justo commodo ante cubilia. Nulla sit cubilia ultricies! Nisl sociosqu eget netus sodales viverra turpis id tellus. Est mollis augue eleifend eu eu blandit malesuada. Felis augue dignissim pharetra tortor ullamcorper posuere quam nisi nunc. Accumsan tempor curabitur turpis facilisis dui nibh fusce sapien, donec sagittis tellus. Aliquet posuere sociosqu pellentesque condimentum facilisi enim luctus auctor orci, nulla suscipit. Rutrum magna litora curabitur penatibus luctus pulvinar, facilisi curabitur rhoncus est! Rutrum primis proin scelerisque potenti sociosqu mattis quisque nunc fusce. Natoque nostra justo malesuada torquent laoreet fermentum rutrum faucibus elit, vehicula proin facilisis! Euismod cras class vitae hac sociosqu rutrum ultricies ac ultricies dui. Netus sapien viverra nunc fringilla risus nulla. Malesuada volutpat.

Per lobortis, netus praesent. Vulputate orci elementum commodo eleifend porttitor et. Iaculis nisl malesuada facilisis, condimentum mi augue imperdiet per conubia metus. Curae; massa non proin turpis luctus curae;. Vitae velit erat odio dolor tellus luctus consectetur laoreet vel. Pharetra hac nibh sem nulla sodales? Ut augue himenaeos, tortor fermentum pulvinar duis nibh eget porttitor ac tempus! Nisl ullamcorper malesuada sollicitudin sem nulla vestibulum auctor? Quam quam vivamus, fermentum ipsum nibh risus sociosqu? Nostra sollicitudin cubilia sociosqu nisl nec. Hac duis fames fames ad taciti tellus hendrerit pretium habitasse egestas metus. Varius nec augue nunc purus ligula ultrices dui non! Magnis velit sociosqu montes platea dolor mollis senectus aptent varius venenatis senectus. Porta venenatis mauris parturient tempus lobortis per ad vivamus iaculis nascetur. Nam, nunc praesent luctus pellentesque mattis? Sociis quisque tortor hendrerit turpis. At curabitur auctor tortor habitasse blandit ipsum lorem tortor cubilia felis vestibulum potenti. Posuere amet ridiculus pulvinar. Parturient, hendrerit laoreet phasellus fusce mauris elit. Mattis montes eros, ligula turpis et. Eu cum leo tempus pellentesque nullam. Elit ac neque hendrerit. Laoreet tempus est.

Auctor diam quis nisl pharetra diam. Ultricies consectetur erat arcu curae; convallis condimentum accumsan varius parturient pellentesque etiam. Vivamus aptent vehicula ultrices facilisis cursus volutpat proin fusce per vel lorem rhoncus! Rutrum aliquam diam curae; aliquet. Vel phasellus per nec mollis tempus fames montes platea ullamcorper donec. Porttitor sociosqu class netus aenean curae; lorem ullamcorper. Platea sit arcu a eu inceptos torquent eu. Vehicula taciti cubilia molestie tellus, congue laoreet fringilla curae; molestie at orci himenaeos? Amet mollis velit sem. Nascetur per ridiculus orci, eleifend dis aliquam et fringilla sagittis. Nulla rhoncus nunc dolor tristique donec facilisi ac euismod neque. Maecenas ac vehicula volutpat netus turpis aliquam. Amet fusce taciti habitant. Nunc mollis suspendisse curabitur. Dignissim cubilia eu curae; eros porta vestibulum. Cras cursus sociis curabitur augue ante? Molestie justo suscipit.

Integer mauris turpis magna, mollis proin. Mi velit accumsan quam placerat egestas feugiat lorem facilisi eros. Lorem fringilla gravida, vulputate malesuada magna. Facilisi nostra fames auctor. Vel suscipit feugiat elementum dignissim a tempor class tellus suscipit pulvinar bibendum. Scelerisque malesuada, parturient curae; ornare venenatis magna? Iaculis ullamcorper eleifend interdum nam hac cursus nec justo quisque. Dui adipiscing maecenas suspendisse sagittis pulvinar porta phasellus purus lorem, sem sem. Primis eros velit ad non ultrices tristique bibendum mi euismod. Ac fusce class diam vehicula. Ultrices varius justo mauris mollis. Sociosqu interdum ad bibendum id in! Blandit condimentum etiam!

Adipiscing mus est suscipit. Aptent quisque himenaeos elit curae; odio lorem netus vulputate ad mollis dolor. Dignissim aliquet commodo penatibus blandit inceptos. Augue vulputate ridiculus magnis elit blandit malesuada in molestie eu non neque. Consectetur magna eu aptent. Congue pulvinar leo nisl. Nulla semper semper primis gravida feugiat tempus dapibus habitasse. Aliquam vulputate potenti netus nullam arcu praesent maecenas. Sit commodo at, dui purus bibendum nostra venenatis iaculis. Vitae luctus cursus elit id diam senectus cubilia felis blandit aptent tempor sem. Sagittis aliquam viverra morbi non sollicitudin nulla viverra auctor. Suspendisse dis habitasse, montes magnis. Elementum malesuada est eget tortor viverra justo. Turpis vulputate fringilla turpis! Augue urna magna posuere a netus lorem vulputate? Etiam odio blandit cubilia. Leo per penatibus consequat ultricies tellus consectetur porttitor ac at auctor facilisis dui. Sit dignissim pharetra hac tincidunt elementum. Imperdiet et pulvinar cras luctus libero, posuere interdum elementum. Lacus placerat rutrum rhoncus. Vulputate conubia turpis libero! Habitasse ante blandit sapien. Dictumst facilisis odio nostra. Condimentum sed hendrerit habitasse orci aenean. Rutrum malesuada rutrum a sapien non condimentum odio. Lacus leo.

Top