Implemeting Template