JAVA ACCEPTED SOLUTION ! CLEAR EXPLANATION, ONE TRAVERSAL
IDEA : Given that any two numbers can be multiplied with -1 for any number of times, even if the negative numbers are not adjacent we can bring negatives to adj
IDEA : Given that any two numbers can be multiplied with -1 for any number of times, even if the negative numbers are not adjacent we can bring negatives to adjacent by multiplying there entire path of 2-2 elements with -1,  if there are even number of negative numbers we can multiply them with -1 and make them even,if there are odd number of negative values(2*n+1) we can make 2*n elements to positive and remain with 1 element. \n\nNow problem comes down to 1 element, we will have to look out for element which has a smaller value and shift our minus sign to that element.\n\nAt the end, we remove that minimum number from total sum\n\nNOTE : if matrix contains atleast one zero, then we can make every element positive(by dragging neg sign towards zero and multiplying it with -1)\n\n```\npublic long maxMatrixSum(int[][] matrix) {\n        int count =0;    \t\t//To store number of negative values\n        long sum =0;     \t\t//To store sum of all elements of matrix\n        boolean haszero = false;\t//Boolean value to check if mat has a zero\n        int min = Integer.MAX_VALUE;\n        for(int i=0;i<matrix.length;i++){\n            for(int j=0;j<matrix[0].length;j++){\n                if(matrix[i][j]<0){\n                    count++;\n                }\n                if(matrix[i][j]==0) haszero = true;\n                sum+=Math.abs(matrix[i][j]);\t\t//Adding absolute value, because we are going to remove neg signs to maximize sum\n                min = Math.min(min,Math.abs(matrix[i][j]));\t//keeping track of min element, for case where we will have odd number of neg signs\n            }\n        }\n        if(count%2==0 || haszero){\t\t\t//If there are even number of neg values or matrix has a zero then we can change \n            return sum;\t\t\t\t//every element to postive\n        }\n        return sum-2*min;\t\t\t//Else removing our minimum number from total sum and also subracting that value\n    }\n```
[]