#ifndef STACK_CPP
#define STACK_CPP
#include "EmptyStructure.cpp"
#include "Stack.h"
#include <vector>

using namespace std;

template <typename E>
Stack<E>::Stack(){}

template <typename E>
int Stack<E>::size(){
	return vector<E>::size();
	}

template <typename E>
bool Stack<E>::empty(){
	return vector<E>::empty();
	}

template <typename E>
const E& Stack<E>::top() const{
	return vector<E>::back();
	}

template <typename E>
void Stack<E>::pop(){
	if (empty())
		throw EmptyStructure();
	vector<E>::pop_back();
	}

template <typename E>
void Stack<E>::push(const E& e){
	vector<E>::push_back(e);
	}



#endif
