added required proprietary stuff