Using Python with NumPy, generate a 100×100 matrix of Binomial(n = 10, p = 0.3) draws with a fixed random seed, then normalize each column so it sums to 1. Ensure vectorized code, guard against any all-zero column by leaving it as all zeros or replacing with a uniform distribution (state your choice), and verify numerically that column sums are 1 within floating-point tolerance. Provide time and space complexity and a brief unit test.