    #include <iostream>
    using namespace std;
     
    class Name
    {
    int a;
    int b;
    };
     
    class Name1
    {
    int a;
    int b;
    };
     
    template <class T>
    void doMyStuff(T *t) { }  // in general do nothing 
     
    template <>
    void doMyStuff(Name *t) {
        cout << "do something with Name*"<<endl;
    }
    template <>
    void doMyStuff(Name1 *t) {
        cout << "do something with Name1*"<<endl;
    }
     
    int main() {
    Name *n;
    Name1 *n1;
    doMyStuff(n);
    doMyStuff(n1);

    // your code goes here
    return 0;
    }