  The Wright--Fisher diffusion is important in population genetics in modelling
the evolution of allele frequencies over time subject to the influence of
biological phenomena such as selection, mutation, and genetic drift. Simulating
paths of the process is challenging due to the form of the transition density.
We present EWF, a robust and efficient sampler which returns exact draws for
the diffusion and diffusion bridge processes, accounting for general models of
selection including those with frequency-dependence. Given a configuration of
selection, mutation, and endpoints, EWF returns draws at the requested sampling
times from the law of the corresponding Wright--Fisher process. Output was
validated by comparison to approximations of the transition density via the
Kolmogorov--Smirnov test and QQ plots. All software is available at
https://github.com/JaroSant/EWF
