improve 2/3 compatibility