restructured for multiple IDE versions