The lepton propagator PROPOSAL is a Monte-Carlo Simulation library written in C++, propagating high energy muons and other charged particles over large distances in media. In this article, a restructuring of the code is described, which yields a performance improvement of up to 30%. For an improved accuracy of the propagation processes, more exact calculations of the leptonic and hadronic decay process and more precise parametrizations for the interaction cross sections are now available. The new modular structure allows a more flexible and customized usage, which is further facilitated with a Python interface. Program summaryProgram Title: PROPOSALProgram Files doi:http://dx.doi.org/10.17632/g478pjdcxy.1Licensing provisions: LGPLProgramming language: C++Nature of problem: Propagation of charged particles over large distances in three dimensions through different kinds of media. These particles lose their energy stochastically via the processes of ionization, pair production, bremsstrahlung and inelastic nuclear interaction and eventually decay, producing secondary particles along the trajectory.Solution method: Monte-Carlo simulation. The program samples the next stochastic interaction point, the type of interaction and the amount of energy lost in the interaction until either the particle decays, its energy is below a certain threshold or it reaches a given distance. To improve the performance and to deal with the bremsstrahlung divergence at small energy losses, an adaptable energy cut is used below which all losses are treated continuously. The use of interpolation tables further reduces computation time.The sampled energy till the next stochastic loss is smeared out with a Gaussian randomization inside the physically allowed limits of the continuous losses using the second moment of the summed processes to avoid artifacts introduced by the energy cut. The deviation from a straight trajectory is evaluated using the multiple scattering calculation by Molière or the Highland parametrization, a Gaussian approximation to Molière’s theory. Multiple kinds of parametrizations are also available for bremsstrahlung, pair production and inelastic nuclear interaction to study the effects of the uncertainty of the cross sections on the propagation and further simulation steps.