updated to support the latest compiler changes