extend gl capabilities