changed all internal to public / ComVisible(false)