update to complete GFM