solving Linear first order differential equations