FOR DEVELOPERS TO DERIVE FROM,DO NOT BUY!!!