begin CAN c# class template