Gallai-Edmonds Decomposition