implement 5.4 support