US posts $347B budget deficit in May