- #include <iostream> 
- #include <type_traits> 
- using namespace std; 
-   
- template <typename T, typename U> 
- struct decay_equiv :  
-     std::is_same<typename std::decay<T>::type, U>::type  
- {}; 
-   
- int main() { 
-   
-     int A[][3] = { 
- 			{ 1, 2, 3 }, 
- 			{ 4, 5, 6 }, 
- 			{ 7, 8, 9 }, 
- 			{ 10, 11, 12 } 
- 	}; 
-   
-     std::cout << std::boolalpha 
-               << decay_equiv<decltype(A), int(*)[3]>::value << '\n'; 
- } 
				I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8dHlwZV90cmFpdHM+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7Cgp0ZW1wbGF0ZSA8dHlwZW5hbWUgVCwgdHlwZW5hbWUgVT4Kc3RydWN0IGRlY2F5X2VxdWl2IDogCiAgICBzdGQ6OmlzX3NhbWU8dHlwZW5hbWUgc3RkOjpkZWNheTxUPjo6dHlwZSwgVT46OnR5cGUgCnt9OwoKaW50IG1haW4oKSB7CgogICAgaW50IEFbXVszXSA9IHsKCQkJeyAxLCAyLCAzIH0sCgkJCXsgNCwgNSwgNiB9LAoJCQl7IDcsIDgsIDkgfSwKCQkJeyAxMCwgMTEsIDEyIH0KCX07CiAgICAKICAgIHN0ZDo6Y291dCA8PCBzdGQ6OmJvb2xhbHBoYQogICAgICAgICAgICAgIDw8IGRlY2F5X2VxdWl2PGRlY2x0eXBlKEEpLCBpbnQoKilbM10+Ojp2YWx1ZSA8PCAnXG4nOwp9