Although elastic scattering of nucleons may look like a simple process, it presents a long-lasting challenge for theory. Due to missing hard energy scale, the perturbative QCD cannot be applied. Instead, many phenomenological/theoretical models have emerged. In this paper we present a unified implementation of some of the most prominent models in a C++ library, moreover extended to account for effects of the electromagnetic interaction. The library is complemented with a number of utilities. For instance, programs to sample many distributions of interest in four-momentum transfer squared, t, impact parameter, b, and collision energy s. These distributions at ISR, Spp̄S, RHIC, Tevatron and LHC energies are available for download from the project web site. Both in the form of ROOT files and PDF figures providing comparisons among the models. The package includes also a tool for Monte-Carlo generation of elastic scattering events, which can easily be embedded in any other program framework. Program summaryProgram title: ElegentCatalogue identifier: AERT_v1_0Program summary URL:http://cpc.cs.qub.ac.uk/summaries/AERT_v1_0.htmlProgram obtainable from: CPC Program Library, Queen’s University, Belfast, N. IrelandLicensing provisions: GNU General Public License, version 3No. of lines in distributed program, including test data, etc.: 10551No. of bytes in distributed program, including test data, etc.: 126316Distribution format: tar.gzProgramming language: C++.Computer: Any in principle, tested on x86-64 architecture.Operating system: Any in principle, tested on GNU/Linux.RAM: Strongly depends on the task, but typically below 20MBClassification: 11.6.External routines: ROOT, HepMCNature of problem:Monte-Carlo simulation of elastic nucleon–nucleon collisionsSolution method:Implementation of some of the most prominent phenomenological/theoretical models providing cumulative distribution function that is used for random event generation.Running time:Strongly depends on the task, but typically below 1 h.