--- /dev/null
+
+DEAL::Checking Q1 in 1d:
+DEAL::FE_Q<1>(1): true
+DEAL::Checking Q1 in 2d:
+DEAL::FE_Q<2>(1): true
+DEAL::Checking Q1 in 3d:
+DEAL::FE_Q<3>(1): true
+DEAL::Checking Q2 in 1d:
+DEAL::FE_Q<1>(2): true
+DEAL::Checking Q2 in 2d:
+DEAL::FE_Q<2>(2): true
+DEAL::Checking Q2 in 3d:
+DEAL::FE_Q<3>(2): true
+DEAL::Checking Q3 in 1d:
+DEAL::FE_Q<1>(3): true
+DEAL::Checking Q3 in 2d:
+DEAL::FE_Q<2>(3): true
+DEAL::Checking Q3 in 3d:
+DEAL::FE_Q<3>(3): true
+DEAL::Checking DGQ0 in 1d:
+DEAL::FE_DGQ<1>(0): true
+DEAL::Checking DGQ0 in 2d:
+DEAL::FE_DGQ<2>(0): true
+DEAL::Checking DGQ0 in 3d:
+DEAL::FE_DGQ<3>(0): true
+DEAL::Checking DGQ1 in 1d:
+DEAL::FE_DGQ<1>(1): true
+DEAL::Checking DGQ1 in 2d:
+DEAL::FE_DGQ<2>(1): true
+DEAL::Checking DGQ1 in 3d:
+DEAL::FE_DGQ<3>(1): true
+DEAL::Checking DGQ3 in 1d:
+DEAL::FE_DGQ<1>(3): true
+DEAL::Checking DGQ3 in 2d:
+DEAL::FE_DGQ<2>(3): true
+DEAL::Checking DGQ3 in 3d:
+DEAL::FE_DGQ<3>(3): true
+DEAL::Checking DGP0 in 1d:
+DEAL::FE_DGP<1>(0): true
+DEAL::Checking DGP0 in 2d:
+DEAL::FE_DGP<2>(0): true
+DEAL::Checking DGP0 in 3d:
+DEAL::FE_DGP<3>(0): true
+DEAL::Checking DGP1 in 1d:
+DEAL::FE_DGP<1>(1): true
+DEAL::Checking DGP1 in 2d:
+DEAL::FE_DGP<2>(1): true
+DEAL::Checking DGP1 in 3d:
+DEAL::FE_DGP<3>(1): true
+DEAL::Checking DGP3 in 1d:
+DEAL::FE_DGP<1>(3): true
+DEAL::Checking DGP3 in 2d:
+DEAL::FE_DGP<2>(3): true
+DEAL::Checking DGP3 in 3d:
+DEAL::FE_DGP<3>(3): true
+DEAL::Checking Nedelec1 in 2d:
+DEAL::FE_Nedelec<2>(1): false
+DEAL::Checking Nedelec1 in 3d:
+DEAL::FE_Nedelec<3>(1): false
+DEAL::Checking RaviartThomas0 in 2d:
+DEAL::FE_RaviartThomas<2>(0): false
+DEAL::Checking RaviartThomas1 in 2d:
+DEAL::FE_RaviartThomas<2>(1): false
+DEAL::Checking RaviartThomas2 in 2d:
+DEAL::FE_RaviartThomas<2>(2): false
+DEAL::Checking RaviartThomasNodal0 in 2d:
+DEAL::FE_RaviartThomasNodal<2>(0): false
+DEAL::Checking RaviartThomasNodal1 in 2d:
+DEAL::FE_RaviartThomasNodal<2>(1): false
+DEAL::Checking RaviartThomasNodal2 in 2d:
+DEAL::FE_RaviartThomasNodal<2>(2): false
+DEAL::Checking RaviartThomasNodal0 in 3d:
+DEAL::FE_RaviartThomasNodal<3>(0): false
+DEAL::Checking RaviartThomasNodal1 in 3d:
+DEAL::FE_RaviartThomasNodal<3>(1): false
+DEAL::Checking RaviartThomasNodal2 in 3d:
+DEAL::FE_RaviartThomasNodal<3>(2): false
+DEAL::Checking FE_Q<1>(1)3 in 1d:
+DEAL::FESystem<1>[FE_Q<1>(1)^3]: true
+DEAL::Checking FE_DGQ<1>(2)2 in 1d:
+DEAL::FESystem<1>[FE_DGQ<1>(2)^2]: true
+DEAL::Checking FE_DGP<1>(3)1 in 1d:
+DEAL::FESystem<1>[FE_DGP<1>(3)]: true
+DEAL::Checking FE_Q<2>(1)3 in 2d:
+DEAL::FESystem<2>[FE_Q<2>(1)^3]: true
+DEAL::Checking FE_DGQ<2>(2)2 in 2d:
+DEAL::FESystem<2>[FE_DGQ<2>(2)^2]: true
+DEAL::Checking FE_DGP<2>(3)1 in 2d:
+DEAL::FESystem<2>[FE_DGP<2>(3)]: true
+DEAL::Checking FE_Q<3>(1)3 in 3d:
+DEAL::FESystem<3>[FE_Q<3>(1)^3]: true
+DEAL::Checking FE_DGQ<3>(2)2 in 3d:
+DEAL::FESystem<3>[FE_DGQ<3>(2)^2]: true
+DEAL::Checking FE_DGP<3>(3)1 in 3d:
+DEAL::FESystem<3>[FE_DGP<3>(3)]: true
+DEAL::Checking FE_Q<1>(1)3FE_DGQ<1>(2)2 in 1d:
+DEAL::FESystem<1>[FE_Q<1>(1)^3-FE_DGQ<1>(2)^2]: true
+DEAL::Checking FE_DGQ<1>(2)2FE_DGP<1>(3)1 in 1d:
+DEAL::FESystem<1>[FE_DGQ<1>(2)^2-FE_DGP<1>(3)]: true
+DEAL::Checking FE_DGP<1>(3)1FE_DGQ<1>(2)2 in 1d:
+DEAL::FESystem<1>[FE_DGP<1>(3)-FE_DGQ<1>(2)^2]: true
+DEAL::Checking FE_Q<2>(1)3FE_DGQ<2>(2)2 in 2d:
+DEAL::FESystem<2>[FE_Q<2>(1)^3-FE_DGQ<2>(2)^2]: true
+DEAL::Checking FE_DGQ<2>(2)2FE_DGP<2>(3)1 in 2d:
+DEAL::FESystem<2>[FE_DGQ<2>(2)^2-FE_DGP<2>(3)]: true
+DEAL::Checking FE_DGP<2>(3)1FE_DGQ<2>(2)2 in 2d:
+DEAL::FESystem<2>[FE_DGP<2>(3)-FE_DGQ<2>(2)^2]: true
+DEAL::Checking FE_Q<1>(1)3FE_DGP<1>(3)1FE_Q<1>(1)3 in 1d:
+DEAL::FESystem<1>[FE_Q<1>(1)^3-FE_DGP<1>(3)-FE_Q<1>(1)^3]: true
+DEAL::Checking FE_DGQ<1>(2)2FE_DGQ<1>(2)2FE_Q<1>(3)3 in 1d:
+DEAL::FESystem<1>[FE_DGQ<1>(2)^2-FE_DGQ<1>(2)^2-FE_Q<1>(3)^3]: true
+DEAL::Checking FE_DGP<1>(3)1FE_DGP<1>(3)1FE_Q<1>(2)3 in 1d:
+DEAL::FESystem<1>[FE_DGP<1>(3)-FE_DGP<1>(3)-FE_Q<1>(2)^3]: true
+DEAL::Checking FE_Q<2>(1)3FE_DGP<2>(3)1FE_Q<2>(1)3 in 2d:
+DEAL::FESystem<2>[FE_Q<2>(1)^3-FE_DGP<2>(3)-FE_Q<2>(1)^3]: true
+DEAL::Checking FE_DGQ<2>(2)2FE_DGQ<2>(2)2FE_Q<2>(3)3 in 2d:
+DEAL::FESystem<2>[FE_DGQ<2>(2)^2-FE_DGQ<2>(2)^2-FE_Q<2>(3)^3]: true
+DEAL::Checking FE_DGP<2>(3)1FE_DGP<2>(3)1FE_Q<2>(2)3 in 2d:
+DEAL::FESystem<2>[FE_DGP<2>(3)-FE_DGP<2>(3)-FE_Q<2>(2)^3]: true
+DEAL::Checking FE_DGQ<3>(1)3FE_DGP<3>(3)1FE_Q<3>(1)3 in 3d:
+DEAL::FESystem<3>[FE_DGQ<3>(1)^3-FE_DGP<3>(3)-FE_Q<3>(1)^3]: true
+DEAL::Checking (FESystem<2>(FE_Q<2>(1),3))3FE_DGQ<2>(0)1FE_Q<2>(1)3 in 2d:
+DEAL::FESystem<2>[FESystem<2>[FE_Q<2>(1)^3]^3-FE_DGQ<2>(0)-FE_Q<2>(1)^3]: true
+DEAL::Checking FE_DGQ<2>(3)1FESystem<2>(FE_DGQ<2>(0),3)1FESystem<2>(FE_Q<2>(2),1, FE_DGQ<2>(0),1)2 in 2d:
+DEAL::FESystem<2>[FE_DGQ<2>(3)-FESystem<2>[FE_DGQ<2>(0)^3]-FESystem<2>[FE_Q<2>(2)-FE_DGQ<2>(0)]^2]: true
+DEAL::Checking FE_DGQ<2>(3)1FE_Nedelec<2>(1)2 in 2d:
+DEAL::FESystem<2>[FE_DGQ<2>(3)-FE_Nedelec<2>(1)^2]: false
+DEAL::Checking FE_Nedelec<2>(1)1FESystem<2>(FE_DGQ<2>(1),2)1FESystem<2>(FE_Q<2>(2),1, FE_Nedelec<2>(1),2)2 in 2d:
+DEAL::FESystem<2>[FE_Nedelec<2>(1)-FESystem<2>[FE_DGQ<2>(1)^2]-FESystem<2>[FE_Q<2>(2)-FE_Nedelec<2>(1)^2]^2]: false