implementation of GEP-78