permanent programming