 
 
SUBROUTINE  Means(a, b, c, Am, Gm, Hm)
   IMPLICIT  NONE
   REAL, INTENT(IN)  :: a, b, c
   REAL, INTENT(OUT) :: Am, Gm, Hm
      ..........
END SUBROUTINE  Means
     
SUBROUTINE  Swap(a, b)
   IMPLICIT  NONE
   INTEGER, INTENT(INOUT) :: a, b
      ..........
END SUBROUTINE  Swap