Changed order, because typedefs were not available in includes.