template <typename T, typename U> class hoge {
void a(void) {
// 処理
};
void b(void) {
// 処理
};
// 他にも関数たくさん
}

template<>void hoge<char, int>:a(void) {
// 特殊化
}

template<>void hoge<char, int>:b(void) {
// 特殊化
}

と、あるテンプレート内の関数を2つ特殊化しようと書いたのですが
これではコンパイラを通りません。
うまい書き方を教えてください。