templateをつかった genericはインスタンス化するまで型チェックできないので
parameterized classをつかった genericが正解。