static function init()
 {
     //return if already done
     if (MIME::$class_init) {
         return;
     }
     //populate the types list with data
     MIME::$mime_types = array('txt' => 'text/plain', 'html' => 'text/html', 'htm' => 'text/html', 'php' => 'text/plain', 'css' => 'text/css', 'js' => 'application/x-javascript', 'jpg' => 'image/jpeg', 'jpeg' => 'image/jpeg', 'gif' => 'image/gif', 'png' => 'image/png', 'bmp' => 'image/bmp', 'tif' => 'image/tiff', 'tiff' => 'image/tiff', 'doc' => 'application/msword', 'docx' => 'application/msword', 'xls' => 'application/excel', 'xlsx' => 'application/excel', 'ppt' => 'application/powerpoint', 'pptx' => 'application/powerpoint', 'pdf' => 'application/pdf', 'wmv' => 'application/octet-stream', 'mpg' => 'video/mpeg', 'mov' => 'video/quicktime', 'mp4' => 'video/quicktime', 'zip' => 'application/zip', 'rar' => 'application/x-rar-compressed', 'dmg' => 'application/x-apple-diskimage', 'exe' => 'application/octet-stream');
     //set init state to true
     MIME::$class_init = true;
 }