Refactored for 5.4