164 SUBROUTINE getgbmh(LUGB,LUGI,J,JPDS,JGDS,
165 & MBUF,CBUF,NLEN,NNUM,MNUM,
166 & KG,KF,K,KPDS,KGDS,IRET)
167 INTEGER JPDS(200),JGDS(200)
168 INTEGER KPDS(200),KGDS(200)
170 parameter(msk1=32000,msk2=4000)
171 INTEGER JENS(200),KENS(200)
183 IF(jr.GE.0.AND.(jr.LT.nnum.OR.irgi.EQ.0))
THEN
184 CALL getgb1s(cbuf,nlen,nnum,jr,jpds,jgds,jens,
185 & kr,kpds,kgds,kens,lskip,lgrib,irgs)
186 IF(irgs.EQ.0) k=kr+mnum
187 IF(irgi.EQ.1.AND.irgs.EQ.0) mnum=-1-mnum
188 IF(irgi.EQ.1.AND.irgs.GT.0) mnum=mnum+nnum
202 dowhile(irgi.EQ.1.AND.irgs.EQ.1)
204 CALL getgi(lugi,mnum,mbuf,cbuf,nlen,nnum,irgi)
206 CALL getgir(lugb,msk1,msk2,mnum,mbuf,cbuf,nlen,nnum,irgi)
209 CALL getgb1s(cbuf,nlen,nnum,jr,jpds,jgds,jens,
210 & kr,kpds,kgds,kens,lskip,lgrib,irgs)
211 IF(irgs.EQ.0) k=kr+mnum
212 IF(irgi.EQ.1.AND.irgs.EQ.0) mnum=-1-mnum
213 IF(irgi.EQ.1.AND.irgs.GT.0) mnum=mnum+nnum
220 ELSEIF(irgs.NE.0)
THEN