!--
! *** Caution!! ***
! 
! This file is generated from "historyget.rb2f90" by Ruby 1.8.5.
! Please do not edit this file directly.
!
! [JAPANESE]
!
! ※※※ 注意!!! ※※※
!
! このファイルは "historyget.rb2f90" から Ruby 1.8.5
! によって自動生成されたファイルです.
! このファイルを直接編集しませんようお願い致します.
!
!
!++
!
!= gtool4 netCDF データの入力
!= Input gtool4 netCDF data
!
! Authors::   Yasuhiro MORIKAWA
! Version::   $Id: historyget.f90,v 1.13 2008-06-05 05:13:01 morikawa Exp $
! Tag Name::  $Name: gt4f90io-20080812 $
! Copyright:: Copyright (C) GFD Dennou Club, 2006. All rights reserved.
! License::   See COPYRIGHT[link:../../COPYRIGHT]
!
! 以下のサブルーチン, 関数は gt4_history から gt4_history#HistoryGet
! もしくは gt4_history#HistoryGetPointer として提供されます.
!
! Following subroutines and functions are provided as 
! gt4_history#HistoryGet or gt4_history#HistoryGetPointer from 
! gt4_history.
!


subroutine HistoryGetDouble0(file, varname, array, range, quiet, err)
  !
  ! <b>Note that Japanese and English are described in parallel.</b>
  !
                                            !
  ! netCDF データを入力します. gtool4 netCDF 規約に基づくデータを想定
  ! していますが, 大抵の netCDF データの入力は可能であると期待されます.
  !
  ! デフォルトでは, ファイル内の最新データ, すなわちデータを
  ! 時刻最大で切り出したものを入力します. 別の時刻または
  ! 別の次元で切り出したデータを
  ! 入力したい場合には, 下記の *time* オプションもしくは 
  ! *range* オプションを利用してください. 
  !
  ! *file* にファイル名を, *varname* に変数名を与えます. 
  ! *array* にはファイルから入力されたデータが返ります. 
  ! ポインタの配列へデータを入力を行う場合は, 
  ! HistoryGetPointer を利用してください. 
  !
  ! ある時刻のデータを明示したい場合には, その時刻を 
  ! *time* に与えます. 
  ! 整数型, 単精度実数型, 倍精度実数型の数値を与えることが可能です. 
  !
  ! *range* には gtool4 のコンマ記法
  ! ({gtool4 netCDF 規約}[link:../xref.htm#label-6] の「5.4 コンマ記法」参照) 
  ! を与えることで, 任意の次元で入力データを切り出すことが可能です. 
  ! *range* に空文字を与えた場合は切り出しを行いません. 
  !
  ! *HistoryGet* は複数のサブルーチンの総称名です. *array* には
  ! 0 〜 7 次元の整数型, 単精度実数型, 
  ! 倍精度実数型の配列を与えることが可能です.
  !
  ! デフォルトでは, データの入力時にどのファイルのどの変数が
  ! どの次元で切り出されて入力されたのかを表示します. 
  ! メッセージ出力が不要な場合は *quiet* に .true. を与えてください.
  !
  ! Input netCDF data. NetCDF data with gtool4 conventions is assumed,
  ! but most netCDF data is expected to be input.
  !
  ! Give filename to *file*, variable name to *varname*.
  ! Input data is returned to *array*.
  ! If you want to use pointer array, use "HistoryGetPointer".
  !
  ! By default, recent data, that is to say, data clipped with 
  ! maximum time is input. In order to input data clipped with
  ! other time or other dimension, 
  ! use *time* option or *range* option as follows.
  !
  ! In order to get data at certain time, specify the time to *time*. 
  ! Type is integer or single precision real or double precision.
  !
  ! Give gtool4 comma-graphy
  ! (See "5.4 gtool4 comma-graphy" in {gtool4 netCDF Convention}[link:../xref.htm#label-6]) 
  ! to *range*, then input data can be clipped by an arbitrary dimension.
  ! If null character is given to *range*, data is not clipped.
  !
  ! *HistoryGet* is generic name of multiple subroutines.
  ! Integer, single precision real, and double precision real
  ! 0 -- 7 rank array can be given to *array*.
  !
  ! By default, when data is input, filename and variable name and
  ! clipping information is printed. 
  ! The message is suppressed when .true. is given to *quiet*
  !
                      
                    
  !
  use gtdata_types, only: GT_VARIABLE
  use gtdata_generic, only: Open, Inquire, Close, Get
  use dc_string, only: toChar, Split, JoinChar, StoA
  use dc_url, only: GT_ATMARK, GT_COMMA, GT_EQUAL, UrlSplit, UrlMerge
  use dc_present, only: present_select, present_and_not_empty, present_and_true
  use regex,      only: match
  use dc_types, only: DP, STRING
  use dc_message, only: MessageNotify
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_error, only: StoreError, DC_NOERR, GT_ENOTURL, GT_ERANKMISMATCH, &
    & GT_EARGSIZEMISMATCH
  character(*), intent(in):: file
                                                                        ! netCDF ファイル名. 
                              ! NetCDF filename.
                      
                    
  character(*), intent(in):: varname
                                                                        ! 変数名. 
                              ! Variable name
                      
                    
  character(*), intent(in), optional:: range
                                                                        ! 切り出し用オプション.
                              ! gtool4 変数のコンマ記法で記述
                              ! {(例: time=100.0,x=10:20,y=^1:^5)}
                              !
                              ! 詳しくは
                              ! {gtool4 netCDF 規約}[link:../xref.htm#label-6]
                              ! の「5.4 コンマ記法」を参照して
                              ! ください.
                              ! 
                              ! Option for clipping.
                              ! Give gtool4 comma-graphy 
                              ! {(ex. time=100.0,x=10:20,y=^1:^5)}
                              ! 
                              ! For details, see "5.4 gtool4
                              ! comma-graphy" in 
                              ! {gtool4 netCDF Convention}[link:../xref.htm#label-6]
                      
                    
  logical, intent(in), optional:: quiet
  real(DP), intent(out) :: array
                                                                        ! 取得するデータを格納する配列
                              !
                              ! 型は整数型, 単精度実数型, 倍精度実数型
                              ! かのいづれかです.  取得するデータの空
                              ! 間次元のサイズと配列のサイズとが一致し
                              ! ている必要があります.  入力するデータ
                              ! の型と *array* の型が異なる場合は, 自
                              ! 動的に *array* の型に変換されます.
                              ! 
                              ! Array in which input data is store
                              !
                              ! Type is integer or single precision
                              ! real or double precision.  Size of
                              ! array must be identical to input data
                              ! size.  When type of input data is
                              ! different from type of *array*, data
                              ! is converted to type of *array*
                              ! automatically.
                              ! 
                      
                    
  logical, intent(out), optional:: err
                                                                        ! 例外処理用フラグ.
                              ! デフォルトでは, この手続き内でエラーが
                              ! 生じた場合, プログラムは強制終了します.
                              ! 引数 *err* が与えられる場合,
                              ! プログラムは強制終了せず, 代わりに
                              ! *err* に .true. が代入されます.
                              !
                              ! Exception handling flag. 
                              ! By default, when error occur in 
                              ! this procedure, the program aborts. 
                              ! If this *err* argument is given, 
                              ! .true. is substituted to *err* and 
                              ! the program does not abort. 
                      
                    

                      real(DP):: array_tmp(1)
                    
  type(GT_VARIABLE)             :: var
  character(STRING)             :: url, actual_url
  integer:: rank
  integer:: domain   ! 変数の入出力領域の大きさ
                     ! (= 変数が依存する各次元サイズの積)
  integer:: stat
  character(STRING):: cause_c
  character(*), parameter :: subname = "HistoryGetDouble0"
  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file
      character(*), intent(in) :: varname
      character(*), intent(out) :: url
      character(*), intent(in), optional:: range
      logical, intent(out), optional :: err
    end subroutine lookup_growable_url
  end interface
  interface
    subroutine actual_iorange_dump(url, actual_url, err)
      character(*), intent(in) :: url            ! 変数 URL
      character(*), intent(out), optional :: actual_url
                                                 ! 正確な入出力範囲指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine actual_iorange_dump
  end interface
continue
  call BeginSub(subname, 'file=%c varname=%c range=%c', &
    & c1 = trim(file), c2 = trim(varname), &
    & c3 = trim(present_select('', 'no-range', range)))
  cause_c = ''
  stat = DC_NOERR

                                        


  !-------------------------------------
  !  最新時刻の URL 取得
  !  Get URL of latest time
  call lookup_growable_url(file, varname, url, range, err = err)
  if ( present_and_true(err) ) then
    stat = GT_ENOTURL
    cause_c = url
    goto 999
  end if

  !-------------------------------------
  !  ファイルオープン
  !  File open
  call Open( var, url, err = err )

  if ( present_and_true(err) ) then
    stat = GT_ENOTURL
    cause_c = url
    goto 999
  end if

  !-------------------------------------
  !  配列形状のチェック
  !  Check array shape
  call Inquire( var = var, & ! (in)
    & rank = rank )          ! (out)

  if ( .not. 0 == rank ) then
    if ( .not. present_and_true(quiet) ) then
      call MessageNotify('W', subname, &
        & 'Rank of data (%c) is "%d", rank of argument is "%d"', &
        & i = (/rank, 0/), c1 = trim(url) )
    end if
    stat = GT_ERANKMISMATCH
    cause_c = 'array'
    goto 999
  end if
                                        

  !-------------------------------------
  !  データ取得
  !  Get data
  call Inquire( var = var, & ! (in)
    & size = domain )        ! (out)

                    
  call Get( var = var, & ! (inout)
    & nvalue = domain, & ! (in)
    & value = array_tmp) ! (out)
  array = array_tmp(1)

                    

  call Close( var )

  !-------------------------------------
  !  データファイル名と切り出し範囲の印字
  !  Print data filename and clipping range
  call actual_iorange_dump(url, actual_url, err = err)
  if ( .not. present_and_true(quiet) ) then
    call MessageNotify('M', subname, 'Input %c', c1=trim(actual_url))
  end if

999 continue
  call StoreError(stat, subname, err, cause_c)
  call EndSub(subname)
end subroutine HistoryGetDouble0


subroutine HistoryGetDouble1(file, varname, array, range, quiet, err)
  !
  ! <b>Note that Japanese and English are described in parallel.</b>
  !
                                            !
  ! 使用方法に関しては HistoryGet を参照してください.
  ! 
  ! See "HistoryGet", for basic usage.
  !
                      
                    
  !
  use gtdata_types, only: GT_VARIABLE
  use gtdata_generic, only: Open, Inquire, Close, Get
  use dc_string, only: toChar, Split, JoinChar, StoA
  use dc_url, only: GT_ATMARK, GT_COMMA, GT_EQUAL, UrlSplit, UrlMerge
  use dc_present, only: present_select, present_and_not_empty, present_and_true
  use regex,      only: match
  use dc_types, only: DP, STRING
  use dc_message, only: MessageNotify
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_error, only: StoreError, DC_NOERR, GT_ENOTURL, GT_ERANKMISMATCH, &
    & GT_EARGSIZEMISMATCH
  character(*), intent(in):: file
                                          
                    
  character(*), intent(in):: varname
                                          
                    
  character(*), intent(in), optional:: range
                                          
                    
  logical, intent(in), optional:: quiet
  real(DP), intent(out) :: array(:)
                                          
                    
  logical, intent(out), optional:: err
                                          
                    

                      real(DP), allocatable:: array_tmp(:)
  integer:: array_allsize
  integer:: array_shape(1), data_shape(1)
  integer:: allcount

                    
  type(GT_VARIABLE)             :: var
  character(STRING)             :: url, actual_url
  integer:: rank
  integer:: domain   ! 変数の入出力領域の大きさ
                     ! (= 変数が依存する各次元サイズの積)
  integer:: stat
  character(STRING):: cause_c
  character(*), parameter :: subname = "HistoryGetDouble1"
  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file
      character(*), intent(in) :: varname
      character(*), intent(out) :: url
      character(*), intent(in), optional:: range
      logical, intent(out), optional :: err
    end subroutine lookup_growable_url
  end interface
  interface
    subroutine actual_iorange_dump(url, actual_url, err)
      character(*), intent(in) :: url            ! 変数 URL
      character(*), intent(out), optional :: actual_url
                                                 ! 正確な入出力範囲指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine actual_iorange_dump
  end interface
continue
  call BeginSub(subname, 'file=%c varname=%c range=%c', &
    & c1 = trim(file), c2 = trim(varname), &
    & c3 = trim(present_select('', 'no-range', range)))
  cause_c = ''
  stat = DC_NOERR

                      !-------------------------------------
  !  配列形状の取得
  !  Get array shape
  array_shape = shape( array )
  array_allsize = size( array )
                    


  !-------------------------------------
  !  最新時刻の URL 取得
  !  Get URL of latest time
  call lookup_growable_url(file, varname, url, range, err = err)
  if ( present_and_true(err) ) then
    stat = GT_ENOTURL
    cause_c = url
    goto 999
  end if

  !-------------------------------------
  !  ファイルオープン
  !  File open
  call Open( var, url, err = err )

  if ( present_and_true(err) ) then
    stat = GT_ENOTURL
    cause_c = url
    goto 999
  end if

  !-------------------------------------
  !  配列形状のチェック
  !  Check array shape
  call Inquire( var = var, & ! (in)
    & rank = rank )          ! (out)

  if ( .not. 1 == rank ) then
    if ( .not. present_and_true(quiet) ) then
      call MessageNotify('W', subname, &
        & 'Rank of data (%c) is "%d", rank of argument is "%d"', &
        & i = (/rank, 1/), c1 = trim(url) )
    end if
    stat = GT_ERANKMISMATCH
    cause_c = 'array'
    goto 999
  end if
                                            call Inquire( var = var , dimord = 1, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(1) = allcount
                      

  if ( .not. all( array_shape == data_shape ) ) then
    if ( .not. present_and_true(quiet) ) then
      call MessageNotify('W', subname, &
        & 'Shape of data (%c) is (%c), shape of argument is (%c)', &
        & c1 = trim( url ), &
        & c2 = trim( toChar( data_shape ) ), &
        & c3 = trim( toChar( array_shape ) ) )
    end if
    stat = GT_EARGSIZEMISMATCH
    cause_c = 'array'
    goto 999
  end if
                    

  !-------------------------------------
  !  データ取得
  !  Get data
  call Inquire( var = var, & ! (in)
    & size = domain )        ! (out)

                    
  if ( allocated( array_tmp ) ) deallocate( array_tmp )
  allocate( array_tmp(array_allsize) )
  call Get( var, array_tmp, domain )
  array = reshape( array_tmp, array_shape )
  deallocate( array_tmp )

                    

  call Close( var )

  !-------------------------------------
  !  データファイル名と切り出し範囲の印字
  !  Print data filename and clipping range
  call actual_iorange_dump(url, actual_url, err = err)
  if ( .not. present_and_true(quiet) ) then
    call MessageNotify('M', subname, 'Input %c', c1=trim(actual_url))
  end if

999 continue
  call StoreError(stat, subname, err, cause_c)
  call EndSub(subname)
end subroutine HistoryGetDouble1


subroutine HistoryGetDouble2(file, varname, array, range, quiet, err)
  !
  ! <b>Note that Japanese and English are described in parallel.</b>
  !
                                            !
  ! 使用方法に関しては HistoryGet を参照してください.
  ! 
  ! See "HistoryGet", for basic usage.
  !
                      
                    
  !
  use gtdata_types, only: GT_VARIABLE
  use gtdata_generic, only: Open, Inquire, Close, Get
  use dc_string, only: toChar, Split, JoinChar, StoA
  use dc_url, only: GT_ATMARK, GT_COMMA, GT_EQUAL, UrlSplit, UrlMerge
  use dc_present, only: present_select, present_and_not_empty, present_and_true
  use regex,      only: match
  use dc_types, only: DP, STRING
  use dc_message, only: MessageNotify
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_error, only: StoreError, DC_NOERR, GT_ENOTURL, GT_ERANKMISMATCH, &
    & GT_EARGSIZEMISMATCH
  character(*), intent(in):: file
                                          
                    
  character(*), intent(in):: varname
                                          
                    
  character(*), intent(in), optional:: range
                                          
                    
  logical, intent(in), optional:: quiet
  real(DP), intent(out) :: array(:,:)
                                          
                    
  logical, intent(out), optional:: err
                                          
                    

                      real(DP), allocatable:: array_tmp(:)
  integer:: array_allsize
  integer:: array_shape(2), data_shape(2)
  integer:: allcount

                    
  type(GT_VARIABLE)             :: var
  character(STRING)             :: url, actual_url
  integer:: rank
  integer:: domain   ! 変数の入出力領域の大きさ
                     ! (= 変数が依存する各次元サイズの積)
  integer:: stat
  character(STRING):: cause_c
  character(*), parameter :: subname = "HistoryGetDouble2"
  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file
      character(*), intent(in) :: varname
      character(*), intent(out) :: url
      character(*), intent(in), optional:: range
      logical, intent(out), optional :: err
    end subroutine lookup_growable_url
  end interface
  interface
    subroutine actual_iorange_dump(url, actual_url, err)
      character(*), intent(in) :: url            ! 変数 URL
      character(*), intent(out), optional :: actual_url
                                                 ! 正確な入出力範囲指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine actual_iorange_dump
  end interface
continue
  call BeginSub(subname, 'file=%c varname=%c range=%c', &
    & c1 = trim(file), c2 = trim(varname), &
    & c3 = trim(present_select('', 'no-range', range)))
  cause_c = ''
  stat = DC_NOERR

                      !-------------------------------------
  !  配列形状の取得
  !  Get array shape
  array_shape = shape( array )
  array_allsize = size( array )
                    


  !-------------------------------------
  !  最新時刻の URL 取得
  !  Get URL of latest time
  call lookup_growable_url(file, varname, url, range, err = err)
  if ( present_and_true(err) ) then
    stat = GT_ENOTURL
    cause_c = url
    goto 999
  end if

  !-------------------------------------
  !  ファイルオープン
  !  File open
  call Open( var, url, err = err )

  if ( present_and_true(err) ) then
    stat = GT_ENOTURL
    cause_c = url
    goto 999
  end if

  !-------------------------------------
  !  配列形状のチェック
  !  Check array shape
  call Inquire( var = var, & ! (in)
    & rank = rank )          ! (out)

  if ( .not. 2 == rank ) then
    if ( .not. present_and_true(quiet) ) then
      call MessageNotify('W', subname, &
        & 'Rank of data (%c) is "%d", rank of argument is "%d"', &
        & i = (/rank, 2/), c1 = trim(url) )
    end if
    stat = GT_ERANKMISMATCH
    cause_c = 'array'
    goto 999
  end if
                                            call Inquire( var = var , dimord = 1, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(1) = allcount
                      
  call Inquire( var = var , dimord = 2, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(2) = allcount
                      

  if ( .not. all( array_shape == data_shape ) ) then
    if ( .not. present_and_true(quiet) ) then
      call MessageNotify('W', subname, &
        & 'Shape of data (%c) is (%c), shape of argument is (%c)', &
        & c1 = trim( url ), &
        & c2 = trim( toChar( data_shape ) ), &
        & c3 = trim( toChar( array_shape ) ) )
    end if
    stat = GT_EARGSIZEMISMATCH
    cause_c = 'array'
    goto 999
  end if
                    

  !-------------------------------------
  !  データ取得
  !  Get data
  call Inquire( var = var, & ! (in)
    & size = domain )        ! (out)

                    
  if ( allocated( array_tmp ) ) deallocate( array_tmp )
  allocate( array_tmp(array_allsize) )
  call Get( var, array_tmp, domain )
  array = reshape( array_tmp, array_shape )
  deallocate( array_tmp )

                    

  call Close( var )

  !-------------------------------------
  !  データファイル名と切り出し範囲の印字
  !  Print data filename and clipping range
  call actual_iorange_dump(url, actual_url, err = err)
  if ( .not. present_and_true(quiet) ) then
    call MessageNotify('M', subname, 'Input %c', c1=trim(actual_url))
  end if

999 continue
  call StoreError(stat, subname, err, cause_c)
  call EndSub(subname)
end subroutine HistoryGetDouble2


subroutine HistoryGetDouble3(file, varname, array, range, quiet, err)
  !
  ! <b>Note that Japanese and English are described in parallel.</b>
  !
                                            !
  ! 使用方法に関しては HistoryGet を参照してください.
  ! 
  ! See "HistoryGet", for basic usage.
  !
                      
                    
  !
  use gtdata_types, only: GT_VARIABLE
  use gtdata_generic, only: Open, Inquire, Close, Get
  use dc_string, only: toChar, Split, JoinChar, StoA
  use dc_url, only: GT_ATMARK, GT_COMMA, GT_EQUAL, UrlSplit, UrlMerge
  use dc_present, only: present_select, present_and_not_empty, present_and_true
  use regex,      only: match
  use dc_types, only: DP, STRING
  use dc_message, only: MessageNotify
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_error, only: StoreError, DC_NOERR, GT_ENOTURL, GT_ERANKMISMATCH, &
    & GT_EARGSIZEMISMATCH
  character(*), intent(in):: file
                                          
                    
  character(*), intent(in):: varname
                                          
                    
  character(*), intent(in), optional:: range
                                          
                    
  logical, intent(in), optional:: quiet
  real(DP), intent(out) :: array(:,:,:)
                                          
                    
  logical, intent(out), optional:: err
                                          
                    

                      real(DP), allocatable:: array_tmp(:)
  integer:: array_allsize
  integer:: array_shape(3), data_shape(3)
  integer:: allcount

                    
  type(GT_VARIABLE)             :: var
  character(STRING)             :: url, actual_url
  integer:: rank
  integer:: domain   ! 変数の入出力領域の大きさ
                     ! (= 変数が依存する各次元サイズの積)
  integer:: stat
  character(STRING):: cause_c
  character(*), parameter :: subname = "HistoryGetDouble3"
  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file
      character(*), intent(in) :: varname
      character(*), intent(out) :: url
      character(*), intent(in), optional:: range
      logical, intent(out), optional :: err
    end subroutine lookup_growable_url
  end interface
  interface
    subroutine actual_iorange_dump(url, actual_url, err)
      character(*), intent(in) :: url            ! 変数 URL
      character(*), intent(out), optional :: actual_url
                                                 ! 正確な入出力範囲指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine actual_iorange_dump
  end interface
continue
  call BeginSub(subname, 'file=%c varname=%c range=%c', &
    & c1 = trim(file), c2 = trim(varname), &
    & c3 = trim(present_select('', 'no-range', range)))
  cause_c = ''
  stat = DC_NOERR

                      !-------------------------------------
  !  配列形状の取得
  !  Get array shape
  array_shape = shape( array )
  array_allsize = size( array )
                    


  !-------------------------------------
  !  最新時刻の URL 取得
  !  Get URL of latest time
  call lookup_growable_url(file, varname, url, range, err = err)
  if ( present_and_true(err) ) then
    stat = GT_ENOTURL
    cause_c = url
    goto 999
  end if

  !-------------------------------------
  !  ファイルオープン
  !  File open
  call Open( var, url, err = err )

  if ( present_and_true(err) ) then
    stat = GT_ENOTURL
    cause_c = url
    goto 999
  end if

  !-------------------------------------
  !  配列形状のチェック
  !  Check array shape
  call Inquire( var = var, & ! (in)
    & rank = rank )          ! (out)

  if ( .not. 3 == rank ) then
    if ( .not. present_and_true(quiet) ) then
      call MessageNotify('W', subname, &
        & 'Rank of data (%c) is "%d", rank of argument is "%d"', &
        & i = (/rank, 3/), c1 = trim(url) )
    end if
    stat = GT_ERANKMISMATCH
    cause_c = 'array'
    goto 999
  end if
                                            call Inquire( var = var , dimord = 1, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(1) = allcount
                      
  call Inquire( var = var , dimord = 2, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(2) = allcount
                      
  call Inquire( var = var , dimord = 3, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(3) = allcount
                      

  if ( .not. all( array_shape == data_shape ) ) then
    if ( .not. present_and_true(quiet) ) then
      call MessageNotify('W', subname, &
        & 'Shape of data (%c) is (%c), shape of argument is (%c)', &
        & c1 = trim( url ), &
        & c2 = trim( toChar( data_shape ) ), &
        & c3 = trim( toChar( array_shape ) ) )
    end if
    stat = GT_EARGSIZEMISMATCH
    cause_c = 'array'
    goto 999
  end if
                    

  !-------------------------------------
  !  データ取得
  !  Get data
  call Inquire( var = var, & ! (in)
    & size = domain )        ! (out)

                    
  if ( allocated( array_tmp ) ) deallocate( array_tmp )
  allocate( array_tmp(array_allsize) )
  call Get( var, array_tmp, domain )
  array = reshape( array_tmp, array_shape )
  deallocate( array_tmp )

                    

  call Close( var )

  !-------------------------------------
  !  データファイル名と切り出し範囲の印字
  !  Print data filename and clipping range
  call actual_iorange_dump(url, actual_url, err = err)
  if ( .not. present_and_true(quiet) ) then
    call MessageNotify('M', subname, 'Input %c', c1=trim(actual_url))
  end if

999 continue
  call StoreError(stat, subname, err, cause_c)
  call EndSub(subname)
end subroutine HistoryGetDouble3


subroutine HistoryGetDouble4(file, varname, array, range, quiet, err)
  !
  ! <b>Note that Japanese and English are described in parallel.</b>
  !
                                            !
  ! 使用方法に関しては HistoryGet を参照してください.
  ! 
  ! See "HistoryGet", for basic usage.
  !
                      
                    
  !
  use gtdata_types, only: GT_VARIABLE
  use gtdata_generic, only: Open, Inquire, Close, Get
  use dc_string, only: toChar, Split, JoinChar, StoA
  use dc_url, only: GT_ATMARK, GT_COMMA, GT_EQUAL, UrlSplit, UrlMerge
  use dc_present, only: present_select, present_and_not_empty, present_and_true
  use regex,      only: match
  use dc_types, only: DP, STRING
  use dc_message, only: MessageNotify
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_error, only: StoreError, DC_NOERR, GT_ENOTURL, GT_ERANKMISMATCH, &
    & GT_EARGSIZEMISMATCH
  character(*), intent(in):: file
                                          
                    
  character(*), intent(in):: varname
                                          
                    
  character(*), intent(in), optional:: range
                                          
                    
  logical, intent(in), optional:: quiet
  real(DP), intent(out) :: array(:,:,:,:)
                                          
                    
  logical, intent(out), optional:: err
                                          
                    

                      real(DP), allocatable:: array_tmp(:)
  integer:: array_allsize
  integer:: array_shape(4), data_shape(4)
  integer:: allcount

                    
  type(GT_VARIABLE)             :: var
  character(STRING)             :: url, actual_url
  integer:: rank
  integer:: domain   ! 変数の入出力領域の大きさ
                     ! (= 変数が依存する各次元サイズの積)
  integer:: stat
  character(STRING):: cause_c
  character(*), parameter :: subname = "HistoryGetDouble4"
  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file
      character(*), intent(in) :: varname
      character(*), intent(out) :: url
      character(*), intent(in), optional:: range
      logical, intent(out), optional :: err
    end subroutine lookup_growable_url
  end interface
  interface
    subroutine actual_iorange_dump(url, actual_url, err)
      character(*), intent(in) :: url            ! 変数 URL
      character(*), intent(out), optional :: actual_url
                                                 ! 正確な入出力範囲指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine actual_iorange_dump
  end interface
continue
  call BeginSub(subname, 'file=%c varname=%c range=%c', &
    & c1 = trim(file), c2 = trim(varname), &
    & c3 = trim(present_select('', 'no-range', range)))
  cause_c = ''
  stat = DC_NOERR

                      !-------------------------------------
  !  配列形状の取得
  !  Get array shape
  array_shape = shape( array )
  array_allsize = size( array )
                    


  !-------------------------------------
  !  最新時刻の URL 取得
  !  Get URL of latest time
  call lookup_growable_url(file, varname, url, range, err = err)
  if ( present_and_true(err) ) then
    stat = GT_ENOTURL
    cause_c = url
    goto 999
  end if

  !-------------------------------------
  !  ファイルオープン
  !  File open
  call Open( var, url, err = err )

  if ( present_and_true(err) ) then
    stat = GT_ENOTURL
    cause_c = url
    goto 999
  end if

  !-------------------------------------
  !  配列形状のチェック
  !  Check array shape
  call Inquire( var = var, & ! (in)
    & rank = rank )          ! (out)

  if ( .not. 4 == rank ) then
    if ( .not. present_and_true(quiet) ) then
      call MessageNotify('W', subname, &
        & 'Rank of data (%c) is "%d", rank of argument is "%d"', &
        & i = (/rank, 4/), c1 = trim(url) )
    end if
    stat = GT_ERANKMISMATCH
    cause_c = 'array'
    goto 999
  end if
                                            call Inquire( var = var , dimord = 1, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(1) = allcount
                      
  call Inquire( var = var , dimord = 2, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(2) = allcount
                      
  call Inquire( var = var , dimord = 3, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(3) = allcount
                      
  call Inquire( var = var , dimord = 4, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(4) = allcount
                      

  if ( .not. all( array_shape == data_shape ) ) then
    if ( .not. present_and_true(quiet) ) then
      call MessageNotify('W', subname, &
        & 'Shape of data (%c) is (%c), shape of argument is (%c)', &
        & c1 = trim( url ), &
        & c2 = trim( toChar( data_shape ) ), &
        & c3 = trim( toChar( array_shape ) ) )
    end if
    stat = GT_EARGSIZEMISMATCH
    cause_c = 'array'
    goto 999
  end if
                    

  !-------------------------------------
  !  データ取得
  !  Get data
  call Inquire( var = var, & ! (in)
    & size = domain )        ! (out)

                    
  if ( allocated( array_tmp ) ) deallocate( array_tmp )
  allocate( array_tmp(array_allsize) )
  call Get( var, array_tmp, domain )
  array = reshape( array_tmp, array_shape )
  deallocate( array_tmp )

                    

  call Close( var )

  !-------------------------------------
  !  データファイル名と切り出し範囲の印字
  !  Print data filename and clipping range
  call actual_iorange_dump(url, actual_url, err = err)
  if ( .not. present_and_true(quiet) ) then
    call MessageNotify('M', subname, 'Input %c', c1=trim(actual_url))
  end if

999 continue
  call StoreError(stat, subname, err, cause_c)
  call EndSub(subname)
end subroutine HistoryGetDouble4


subroutine HistoryGetDouble5(file, varname, array, range, quiet, err)
  !
  ! <b>Note that Japanese and English are described in parallel.</b>
  !
                                            !
  ! 使用方法に関しては HistoryGet を参照してください.
  ! 
  ! See "HistoryGet", for basic usage.
  !
                      
                    
  !
  use gtdata_types, only: GT_VARIABLE
  use gtdata_generic, only: Open, Inquire, Close, Get
  use dc_string, only: toChar, Split, JoinChar, StoA
  use dc_url, only: GT_ATMARK, GT_COMMA, GT_EQUAL, UrlSplit, UrlMerge
  use dc_present, only: present_select, present_and_not_empty, present_and_true
  use regex,      only: match
  use dc_types, only: DP, STRING
  use dc_message, only: MessageNotify
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_error, only: StoreError, DC_NOERR, GT_ENOTURL, GT_ERANKMISMATCH, &
    & GT_EARGSIZEMISMATCH
  character(*), intent(in):: file
                                          
                    
  character(*), intent(in):: varname
                                          
                    
  character(*), intent(in), optional:: range
                                          
                    
  logical, intent(in), optional:: quiet
  real(DP), intent(out) :: array(:,:,:,:,:)
                                          
                    
  logical, intent(out), optional:: err
                                          
                    

                      real(DP), allocatable:: array_tmp(:)
  integer:: array_allsize
  integer:: array_shape(5), data_shape(5)
  integer:: allcount

                    
  type(GT_VARIABLE)             :: var
  character(STRING)             :: url, actual_url
  integer:: rank
  integer:: domain   ! 変数の入出力領域の大きさ
                     ! (= 変数が依存する各次元サイズの積)
  integer:: stat
  character(STRING):: cause_c
  character(*), parameter :: subname = "HistoryGetDouble5"
  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file
      character(*), intent(in) :: varname
      character(*), intent(out) :: url
      character(*), intent(in), optional:: range
      logical, intent(out), optional :: err
    end subroutine lookup_growable_url
  end interface
  interface
    subroutine actual_iorange_dump(url, actual_url, err)
      character(*), intent(in) :: url            ! 変数 URL
      character(*), intent(out), optional :: actual_url
                                                 ! 正確な入出力範囲指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine actual_iorange_dump
  end interface
continue
  call BeginSub(subname, 'file=%c varname=%c range=%c', &
    & c1 = trim(file), c2 = trim(varname), &
    & c3 = trim(present_select('', 'no-range', range)))
  cause_c = ''
  stat = DC_NOERR

                      !-------------------------------------
  !  配列形状の取得
  !  Get array shape
  array_shape = shape( array )
  array_allsize = size( array )
                    


  !-------------------------------------
  !  最新時刻の URL 取得
  !  Get URL of latest time
  call lookup_growable_url(file, varname, url, range, err = err)
  if ( present_and_true(err) ) then
    stat = GT_ENOTURL
    cause_c = url
    goto 999
  end if

  !-------------------------------------
  !  ファイルオープン
  !  File open
  call Open( var, url, err = err )

  if ( present_and_true(err) ) then
    stat = GT_ENOTURL
    cause_c = url
    goto 999
  end if

  !-------------------------------------
  !  配列形状のチェック
  !  Check array shape
  call Inquire( var = var, & ! (in)
    & rank = rank )          ! (out)

  if ( .not. 5 == rank ) then
    if ( .not. present_and_true(quiet) ) then
      call MessageNotify('W', subname, &
        & 'Rank of data (%c) is "%d", rank of argument is "%d"', &
        & i = (/rank, 5/), c1 = trim(url) )
    end if
    stat = GT_ERANKMISMATCH
    cause_c = 'array'
    goto 999
  end if
                                            call Inquire( var = var , dimord = 1, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(1) = allcount
                      
  call Inquire( var = var , dimord = 2, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(2) = allcount
                      
  call Inquire( var = var , dimord = 3, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(3) = allcount
                      
  call Inquire( var = var , dimord = 4, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(4) = allcount
                      
  call Inquire( var = var , dimord = 5, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(5) = allcount
                      

  if ( .not. all( array_shape == data_shape ) ) then
    if ( .not. present_and_true(quiet) ) then
      call MessageNotify('W', subname, &
        & 'Shape of data (%c) is (%c), shape of argument is (%c)', &
        & c1 = trim( url ), &
        & c2 = trim( toChar( data_shape ) ), &
        & c3 = trim( toChar( array_shape ) ) )
    end if
    stat = GT_EARGSIZEMISMATCH
    cause_c = 'array'
    goto 999
  end if
                    

  !-------------------------------------
  !  データ取得
  !  Get data
  call Inquire( var = var, & ! (in)
    & size = domain )        ! (out)

                    
  if ( allocated( array_tmp ) ) deallocate( array_tmp )
  allocate( array_tmp(array_allsize) )
  call Get( var, array_tmp, domain )
  array = reshape( array_tmp, array_shape )
  deallocate( array_tmp )

                    

  call Close( var )

  !-------------------------------------
  !  データファイル名と切り出し範囲の印字
  !  Print data filename and clipping range
  call actual_iorange_dump(url, actual_url, err = err)
  if ( .not. present_and_true(quiet) ) then
    call MessageNotify('M', subname, 'Input %c', c1=trim(actual_url))
  end if

999 continue
  call StoreError(stat, subname, err, cause_c)
  call EndSub(subname)
end subroutine HistoryGetDouble5


subroutine HistoryGetDouble6(file, varname, array, range, quiet, err)
  !
  ! <b>Note that Japanese and English are described in parallel.</b>
  !
                                            !
  ! 使用方法に関しては HistoryGet を参照してください.
  ! 
  ! See "HistoryGet", for basic usage.
  !
                      
                    
  !
  use gtdata_types, only: GT_VARIABLE
  use gtdata_generic, only: Open, Inquire, Close, Get
  use dc_string, only: toChar, Split, JoinChar, StoA
  use dc_url, only: GT_ATMARK, GT_COMMA, GT_EQUAL, UrlSplit, UrlMerge
  use dc_present, only: present_select, present_and_not_empty, present_and_true
  use regex,      only: match
  use dc_types, only: DP, STRING
  use dc_message, only: MessageNotify
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_error, only: StoreError, DC_NOERR, GT_ENOTURL, GT_ERANKMISMATCH, &
    & GT_EARGSIZEMISMATCH
  character(*), intent(in):: file
                                          
                    
  character(*), intent(in):: varname
                                          
                    
  character(*), intent(in), optional:: range
                                          
                    
  logical, intent(in), optional:: quiet
  real(DP), intent(out) :: array(:,:,:,:,:,:)
                                          
                    
  logical, intent(out), optional:: err
                                          
                    

                      real(DP), allocatable:: array_tmp(:)
  integer:: array_allsize
  integer:: array_shape(6), data_shape(6)
  integer:: allcount

                    
  type(GT_VARIABLE)             :: var
  character(STRING)             :: url, actual_url
  integer:: rank
  integer:: domain   ! 変数の入出力領域の大きさ
                     ! (= 変数が依存する各次元サイズの積)
  integer:: stat
  character(STRING):: cause_c
  character(*), parameter :: subname = "HistoryGetDouble6"
  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file
      character(*), intent(in) :: varname
      character(*), intent(out) :: url
      character(*), intent(in), optional:: range
      logical, intent(out), optional :: err
    end subroutine lookup_growable_url
  end interface
  interface
    subroutine actual_iorange_dump(url, actual_url, err)
      character(*), intent(in) :: url            ! 変数 URL
      character(*), intent(out), optional :: actual_url
                                                 ! 正確な入出力範囲指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine actual_iorange_dump
  end interface
continue
  call BeginSub(subname, 'file=%c varname=%c range=%c', &
    & c1 = trim(file), c2 = trim(varname), &
    & c3 = trim(present_select('', 'no-range', range)))
  cause_c = ''
  stat = DC_NOERR

                      !-------------------------------------
  !  配列形状の取得
  !  Get array shape
  array_shape = shape( array )
  array_allsize = size( array )
                    


  !-------------------------------------
  !  最新時刻の URL 取得
  !  Get URL of latest time
  call lookup_growable_url(file, varname, url, range, err = err)
  if ( present_and_true(err) ) then
    stat = GT_ENOTURL
    cause_c = url
    goto 999
  end if

  !-------------------------------------
  !  ファイルオープン
  !  File open
  call Open( var, url, err = err )

  if ( present_and_true(err) ) then
    stat = GT_ENOTURL
    cause_c = url
    goto 999
  end if

  !-------------------------------------
  !  配列形状のチェック
  !  Check array shape
  call Inquire( var = var, & ! (in)
    & rank = rank )          ! (out)

  if ( .not. 6 == rank ) then
    if ( .not. present_and_true(quiet) ) then
      call MessageNotify('W', subname, &
        & 'Rank of data (%c) is "%d", rank of argument is "%d"', &
        & i = (/rank, 6/), c1 = trim(url) )
    end if
    stat = GT_ERANKMISMATCH
    cause_c = 'array'
    goto 999
  end if
                                            call Inquire( var = var , dimord = 1, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(1) = allcount
                      
  call Inquire( var = var , dimord = 2, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(2) = allcount
                      
  call Inquire( var = var , dimord = 3, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(3) = allcount
                      
  call Inquire( var = var , dimord = 4, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(4) = allcount
                      
  call Inquire( var = var , dimord = 5, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(5) = allcount
                      
  call Inquire( var = var , dimord = 6, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(6) = allcount
                      

  if ( .not. all( array_shape == data_shape ) ) then
    if ( .not. present_and_true(quiet) ) then
      call MessageNotify('W', subname, &
        & 'Shape of data (%c) is (%c), shape of argument is (%c)', &
        & c1 = trim( url ), &
        & c2 = trim( toChar( data_shape ) ), &
        & c3 = trim( toChar( array_shape ) ) )
    end if
    stat = GT_EARGSIZEMISMATCH
    cause_c = 'array'
    goto 999
  end if
                    

  !-------------------------------------
  !  データ取得
  !  Get data
  call Inquire( var = var, & ! (in)
    & size = domain )        ! (out)

                    
  if ( allocated( array_tmp ) ) deallocate( array_tmp )
  allocate( array_tmp(array_allsize) )
  call Get( var, array_tmp, domain )
  array = reshape( array_tmp, array_shape )
  deallocate( array_tmp )

                    

  call Close( var )

  !-------------------------------------
  !  データファイル名と切り出し範囲の印字
  !  Print data filename and clipping range
  call actual_iorange_dump(url, actual_url, err = err)
  if ( .not. present_and_true(quiet) ) then
    call MessageNotify('M', subname, 'Input %c', c1=trim(actual_url))
  end if

999 continue
  call StoreError(stat, subname, err, cause_c)
  call EndSub(subname)
end subroutine HistoryGetDouble6


subroutine HistoryGetDouble7(file, varname, array, range, quiet, err)
  !
  ! <b>Note that Japanese and English are described in parallel.</b>
  !
                                            !
  ! 使用方法に関しては HistoryGet を参照してください.
  ! 
  ! See "HistoryGet", for basic usage.
  !
                      
                    
  !
  use gtdata_types, only: GT_VARIABLE
  use gtdata_generic, only: Open, Inquire, Close, Get
  use dc_string, only: toChar, Split, JoinChar, StoA
  use dc_url, only: GT_ATMARK, GT_COMMA, GT_EQUAL, UrlSplit, UrlMerge
  use dc_present, only: present_select, present_and_not_empty, present_and_true
  use regex,      only: match
  use dc_types, only: DP, STRING
  use dc_message, only: MessageNotify
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_error, only: StoreError, DC_NOERR, GT_ENOTURL, GT_ERANKMISMATCH, &
    & GT_EARGSIZEMISMATCH
  character(*), intent(in):: file
                                          
                    
  character(*), intent(in):: varname
                                          
                    
  character(*), intent(in), optional:: range
                                          
                    
  logical, intent(in), optional:: quiet
  real(DP), intent(out) :: array(:,:,:,:,:,:,:)
                                          
                    
  logical, intent(out), optional:: err
                                          
                    

                      real(DP), allocatable:: array_tmp(:)
  integer:: array_allsize
  integer:: array_shape(7), data_shape(7)
  integer:: allcount

                    
  type(GT_VARIABLE)             :: var
  character(STRING)             :: url, actual_url
  integer:: rank
  integer:: domain   ! 変数の入出力領域の大きさ
                     ! (= 変数が依存する各次元サイズの積)
  integer:: stat
  character(STRING):: cause_c
  character(*), parameter :: subname = "HistoryGetDouble7"
  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file
      character(*), intent(in) :: varname
      character(*), intent(out) :: url
      character(*), intent(in), optional:: range
      logical, intent(out), optional :: err
    end subroutine lookup_growable_url
  end interface
  interface
    subroutine actual_iorange_dump(url, actual_url, err)
      character(*), intent(in) :: url            ! 変数 URL
      character(*), intent(out), optional :: actual_url
                                                 ! 正確な入出力範囲指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine actual_iorange_dump
  end interface
continue
  call BeginSub(subname, 'file=%c varname=%c range=%c', &
    & c1 = trim(file), c2 = trim(varname), &
    & c3 = trim(present_select('', 'no-range', range)))
  cause_c = ''
  stat = DC_NOERR

                      !-------------------------------------
  !  配列形状の取得
  !  Get array shape
  array_shape = shape( array )
  array_allsize = size( array )
                    


  !-------------------------------------
  !  最新時刻の URL 取得
  !  Get URL of latest time
  call lookup_growable_url(file, varname, url, range, err = err)
  if ( present_and_true(err) ) then
    stat = GT_ENOTURL
    cause_c = url
    goto 999
  end if

  !-------------------------------------
  !  ファイルオープン
  !  File open
  call Open( var, url, err = err )

  if ( present_and_true(err) ) then
    stat = GT_ENOTURL
    cause_c = url
    goto 999
  end if

  !-------------------------------------
  !  配列形状のチェック
  !  Check array shape
  call Inquire( var = var, & ! (in)
    & rank = rank )          ! (out)

  if ( .not. 7 == rank ) then
    if ( .not. present_and_true(quiet) ) then
      call MessageNotify('W', subname, &
        & 'Rank of data (%c) is "%d", rank of argument is "%d"', &
        & i = (/rank, 7/), c1 = trim(url) )
    end if
    stat = GT_ERANKMISMATCH
    cause_c = 'array'
    goto 999
  end if
                                            call Inquire( var = var , dimord = 1, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(1) = allcount
                      
  call Inquire( var = var , dimord = 2, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(2) = allcount
                      
  call Inquire( var = var , dimord = 3, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(3) = allcount
                      
  call Inquire( var = var , dimord = 4, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(4) = allcount
                      
  call Inquire( var = var , dimord = 5, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(5) = allcount
                      
  call Inquire( var = var , dimord = 6, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(6) = allcount
                      
  call Inquire( var = var , dimord = 7, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(7) = allcount
                      

  if ( .not. all( array_shape == data_shape ) ) then
    if ( .not. present_and_true(quiet) ) then
      call MessageNotify('W', subname, &
        & 'Shape of data (%c) is (%c), shape of argument is (%c)', &
        & c1 = trim( url ), &
        & c2 = trim( toChar( data_shape ) ), &
        & c3 = trim( toChar( array_shape ) ) )
    end if
    stat = GT_EARGSIZEMISMATCH
    cause_c = 'array'
    goto 999
  end if
                    

  !-------------------------------------
  !  データ取得
  !  Get data
  call Inquire( var = var, & ! (in)
    & size = domain )        ! (out)

                    
  if ( allocated( array_tmp ) ) deallocate( array_tmp )
  allocate( array_tmp(array_allsize) )
  call Get( var, array_tmp, domain )
  array = reshape( array_tmp, array_shape )
  deallocate( array_tmp )

                    

  call Close( var )

  !-------------------------------------
  !  データファイル名と切り出し範囲の印字
  !  Print data filename and clipping range
  call actual_iorange_dump(url, actual_url, err = err)
  if ( .not. present_and_true(quiet) ) then
    call MessageNotify('M', subname, 'Input %c', c1=trim(actual_url))
  end if

999 continue
  call StoreError(stat, subname, err, cause_c)
  call EndSub(subname)
end subroutine HistoryGetDouble7


subroutine HistoryGetReal0(file, varname, array, range, quiet, err)
  !
  ! <b>Note that Japanese and English are described in parallel.</b>
  !
                      !
  ! 使用方法に関しては HistoryGet を参照してください.
  ! 
  ! See "HistoryGet", for basic usage.
  !
                    
  !
  use gtdata_types, only: GT_VARIABLE
  use gtdata_generic, only: Open, Inquire, Close, Get
  use dc_string, only: toChar, Split, JoinChar, StoA
  use dc_url, only: GT_ATMARK, GT_COMMA, GT_EQUAL, UrlSplit, UrlMerge
  use dc_present, only: present_select, present_and_not_empty, present_and_true
  use regex,      only: match
  use dc_types, only: DP, STRING
  use dc_message, only: MessageNotify
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_error, only: StoreError, DC_NOERR, GT_ENOTURL, GT_ERANKMISMATCH, &
    & GT_EARGSIZEMISMATCH
  character(*), intent(in):: file
                    
  character(*), intent(in):: varname
                    
  character(*), intent(in), optional:: range
                    
  logical, intent(in), optional:: quiet
  real, intent(out) :: array
                    
  logical, intent(out), optional:: err
                    

                      real:: array_tmp(1)
                    
  type(GT_VARIABLE)             :: var
  character(STRING)             :: url, actual_url
  integer:: rank
  integer:: domain   ! 変数の入出力領域の大きさ
                     ! (= 変数が依存する各次元サイズの積)
  integer:: stat
  character(STRING):: cause_c
  character(*), parameter :: subname = "HistoryGetReal0"
  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file
      character(*), intent(in) :: varname
      character(*), intent(out) :: url
      character(*), intent(in), optional:: range
      logical, intent(out), optional :: err
    end subroutine lookup_growable_url
  end interface
  interface
    subroutine actual_iorange_dump(url, actual_url, err)
      character(*), intent(in) :: url            ! 変数 URL
      character(*), intent(out), optional :: actual_url
                                                 ! 正確な入出力範囲指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine actual_iorange_dump
  end interface
continue
  call BeginSub(subname, 'file=%c varname=%c range=%c', &
    & c1 = trim(file), c2 = trim(varname), &
    & c3 = trim(present_select('', 'no-range', range)))
  cause_c = ''
  stat = DC_NOERR

                                        


  !-------------------------------------
  !  最新時刻の URL 取得
  !  Get URL of latest time
  call lookup_growable_url(file, varname, url, range, err = err)
  if ( present_and_true(err) ) then
    stat = GT_ENOTURL
    cause_c = url
    goto 999
  end if

  !-------------------------------------
  !  ファイルオープン
  !  File open
  call Open( var, url, err = err )

  if ( present_and_true(err) ) then
    stat = GT_ENOTURL
    cause_c = url
    goto 999
  end if

  !-------------------------------------
  !  配列形状のチェック
  !  Check array shape
  call Inquire( var = var, & ! (in)
    & rank = rank )          ! (out)

  if ( .not. 0 == rank ) then
    if ( .not. present_and_true(quiet) ) then
      call MessageNotify('W', subname, &
        & 'Rank of data (%c) is "%d", rank of argument is "%d"', &
        & i = (/rank, 0/), c1 = trim(url) )
    end if
    stat = GT_ERANKMISMATCH
    cause_c = 'array'
    goto 999
  end if
                                        

  !-------------------------------------
  !  データ取得
  !  Get data
  call Inquire( var = var, & ! (in)
    & size = domain )        ! (out)

                    
  call Get( var = var, & ! (inout)
    & nvalue = domain, & ! (in)
    & value = array_tmp) ! (out)
  array = array_tmp(1)

                    

  call Close( var )

  !-------------------------------------
  !  データファイル名と切り出し範囲の印字
  !  Print data filename and clipping range
  call actual_iorange_dump(url, actual_url, err = err)
  if ( .not. present_and_true(quiet) ) then
    call MessageNotify('M', subname, 'Input %c', c1=trim(actual_url))
  end if

999 continue
  call StoreError(stat, subname, err, cause_c)
  call EndSub(subname)
end subroutine HistoryGetReal0


subroutine HistoryGetReal1(file, varname, array, range, quiet, err)
  !
  ! <b>Note that Japanese and English are described in parallel.</b>
  !
                      !
  ! 使用方法に関しては HistoryGet を参照してください.
  ! 
  ! See "HistoryGet", for basic usage.
  !
                    
  !
  use gtdata_types, only: GT_VARIABLE
  use gtdata_generic, only: Open, Inquire, Close, Get
  use dc_string, only: toChar, Split, JoinChar, StoA
  use dc_url, only: GT_ATMARK, GT_COMMA, GT_EQUAL, UrlSplit, UrlMerge
  use dc_present, only: present_select, present_and_not_empty, present_and_true
  use regex,      only: match
  use dc_types, only: DP, STRING
  use dc_message, only: MessageNotify
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_error, only: StoreError, DC_NOERR, GT_ENOTURL, GT_ERANKMISMATCH, &
    & GT_EARGSIZEMISMATCH
  character(*), intent(in):: file
                    
  character(*), intent(in):: varname
                    
  character(*), intent(in), optional:: range
                    
  logical, intent(in), optional:: quiet
  real, intent(out) :: array(:)
                    
  logical, intent(out), optional:: err
                    

                      real, allocatable:: array_tmp(:)
  integer:: array_allsize
  integer:: array_shape(1), data_shape(1)
  integer:: allcount

                    
  type(GT_VARIABLE)             :: var
  character(STRING)             :: url, actual_url
  integer:: rank
  integer:: domain   ! 変数の入出力領域の大きさ
                     ! (= 変数が依存する各次元サイズの積)
  integer:: stat
  character(STRING):: cause_c
  character(*), parameter :: subname = "HistoryGetReal1"
  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file
      character(*), intent(in) :: varname
      character(*), intent(out) :: url
      character(*), intent(in), optional:: range
      logical, intent(out), optional :: err
    end subroutine lookup_growable_url
  end interface
  interface
    subroutine actual_iorange_dump(url, actual_url, err)
      character(*), intent(in) :: url            ! 変数 URL
      character(*), intent(out), optional :: actual_url
                                                 ! 正確な入出力範囲指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine actual_iorange_dump
  end interface
continue
  call BeginSub(subname, 'file=%c varname=%c range=%c', &
    & c1 = trim(file), c2 = trim(varname), &
    & c3 = trim(present_select('', 'no-range', range)))
  cause_c = ''
  stat = DC_NOERR

                      !-------------------------------------
  !  配列形状の取得
  !  Get array shape
  array_shape = shape( array )
  array_allsize = size( array )
                    


  !-------------------------------------
  !  最新時刻の URL 取得
  !  Get URL of latest time
  call lookup_growable_url(file, varname, url, range, err = err)
  if ( present_and_true(err) ) then
    stat = GT_ENOTURL
    cause_c = url
    goto 999
  end if

  !-------------------------------------
  !  ファイルオープン
  !  File open
  call Open( var, url, err = err )

  if ( present_and_true(err) ) then
    stat = GT_ENOTURL
    cause_c = url
    goto 999
  end if

  !-------------------------------------
  !  配列形状のチェック
  !  Check array shape
  call Inquire( var = var, & ! (in)
    & rank = rank )          ! (out)

  if ( .not. 1 == rank ) then
    if ( .not. present_and_true(quiet) ) then
      call MessageNotify('W', subname, &
        & 'Rank of data (%c) is "%d", rank of argument is "%d"', &
        & i = (/rank, 1/), c1 = trim(url) )
    end if
    stat = GT_ERANKMISMATCH
    cause_c = 'array'
    goto 999
  end if
                                            call Inquire( var = var , dimord = 1, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(1) = allcount
                      

  if ( .not. all( array_shape == data_shape ) ) then
    if ( .not. present_and_true(quiet) ) then
      call MessageNotify('W', subname, &
        & 'Shape of data (%c) is (%c), shape of argument is (%c)', &
        & c1 = trim( url ), &
        & c2 = trim( toChar( data_shape ) ), &
        & c3 = trim( toChar( array_shape ) ) )
    end if
    stat = GT_EARGSIZEMISMATCH
    cause_c = 'array'
    goto 999
  end if
                    

  !-------------------------------------
  !  データ取得
  !  Get data
  call Inquire( var = var, & ! (in)
    & size = domain )        ! (out)

                    
  if ( allocated( array_tmp ) ) deallocate( array_tmp )
  allocate( array_tmp(array_allsize) )
  call Get( var, array_tmp, domain )
  array = reshape( array_tmp, array_shape )
  deallocate( array_tmp )

                    

  call Close( var )

  !-------------------------------------
  !  データファイル名と切り出し範囲の印字
  !  Print data filename and clipping range
  call actual_iorange_dump(url, actual_url, err = err)
  if ( .not. present_and_true(quiet) ) then
    call MessageNotify('M', subname, 'Input %c', c1=trim(actual_url))
  end if

999 continue
  call StoreError(stat, subname, err, cause_c)
  call EndSub(subname)
end subroutine HistoryGetReal1


subroutine HistoryGetReal2(file, varname, array, range, quiet, err)
  !
  ! <b>Note that Japanese and English are described in parallel.</b>
  !
                      !
  ! 使用方法に関しては HistoryGet を参照してください.
  ! 
  ! See "HistoryGet", for basic usage.
  !
                    
  !
  use gtdata_types, only: GT_VARIABLE
  use gtdata_generic, only: Open, Inquire, Close, Get
  use dc_string, only: toChar, Split, JoinChar, StoA
  use dc_url, only: GT_ATMARK, GT_COMMA, GT_EQUAL, UrlSplit, UrlMerge
  use dc_present, only: present_select, present_and_not_empty, present_and_true
  use regex,      only: match
  use dc_types, only: DP, STRING
  use dc_message, only: MessageNotify
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_error, only: StoreError, DC_NOERR, GT_ENOTURL, GT_ERANKMISMATCH, &
    & GT_EARGSIZEMISMATCH
  character(*), intent(in):: file
                    
  character(*), intent(in):: varname
                    
  character(*), intent(in), optional:: range
                    
  logical, intent(in), optional:: quiet
  real, intent(out) :: array(:,:)
                    
  logical, intent(out), optional:: err
                    

                      real, allocatable:: array_tmp(:)
  integer:: array_allsize
  integer:: array_shape(2), data_shape(2)
  integer:: allcount

                    
  type(GT_VARIABLE)             :: var
  character(STRING)             :: url, actual_url
  integer:: rank
  integer:: domain   ! 変数の入出力領域の大きさ
                     ! (= 変数が依存する各次元サイズの積)
  integer:: stat
  character(STRING):: cause_c
  character(*), parameter :: subname = "HistoryGetReal2"
  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file
      character(*), intent(in) :: varname
      character(*), intent(out) :: url
      character(*), intent(in), optional:: range
      logical, intent(out), optional :: err
    end subroutine lookup_growable_url
  end interface
  interface
    subroutine actual_iorange_dump(url, actual_url, err)
      character(*), intent(in) :: url            ! 変数 URL
      character(*), intent(out), optional :: actual_url
                                                 ! 正確な入出力範囲指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine actual_iorange_dump
  end interface
continue
  call BeginSub(subname, 'file=%c varname=%c range=%c', &
    & c1 = trim(file), c2 = trim(varname), &
    & c3 = trim(present_select('', 'no-range', range)))
  cause_c = ''
  stat = DC_NOERR

                      !-------------------------------------
  !  配列形状の取得
  !  Get array shape
  array_shape = shape( array )
  array_allsize = size( array )
                    


  !-------------------------------------
  !  最新時刻の URL 取得
  !  Get URL of latest time
  call lookup_growable_url(file, varname, url, range, err = err)
  if ( present_and_true(err) ) then
    stat = GT_ENOTURL
    cause_c = url
    goto 999
  end if

  !-------------------------------------
  !  ファイルオープン
  !  File open
  call Open( var, url, err = err )

  if ( present_and_true(err) ) then
    stat = GT_ENOTURL
    cause_c = url
    goto 999
  end if

  !-------------------------------------
  !  配列形状のチェック
  !  Check array shape
  call Inquire( var = var, & ! (in)
    & rank = rank )          ! (out)

  if ( .not. 2 == rank ) then
    if ( .not. present_and_true(quiet) ) then
      call MessageNotify('W', subname, &
        & 'Rank of data (%c) is "%d", rank of argument is "%d"', &
        & i = (/rank, 2/), c1 = trim(url) )
    end if
    stat = GT_ERANKMISMATCH
    cause_c = 'array'
    goto 999
  end if
                                            call Inquire( var = var , dimord = 1, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(1) = allcount
                      
  call Inquire( var = var , dimord = 2, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(2) = allcount
                      

  if ( .not. all( array_shape == data_shape ) ) then
    if ( .not. present_and_true(quiet) ) then
      call MessageNotify('W', subname, &
        & 'Shape of data (%c) is (%c), shape of argument is (%c)', &
        & c1 = trim( url ), &
        & c2 = trim( toChar( data_shape ) ), &
        & c3 = trim( toChar( array_shape ) ) )
    end if
    stat = GT_EARGSIZEMISMATCH
    cause_c = 'array'
    goto 999
  end if
                    

  !-------------------------------------
  !  データ取得
  !  Get data
  call Inquire( var = var, & ! (in)
    & size = domain )        ! (out)

                    
  if ( allocated( array_tmp ) ) deallocate( array_tmp )
  allocate( array_tmp(array_allsize) )
  call Get( var, array_tmp, domain )
  array = reshape( array_tmp, array_shape )
  deallocate( array_tmp )

                    

  call Close( var )

  !-------------------------------------
  !  データファイル名と切り出し範囲の印字
  !  Print data filename and clipping range
  call actual_iorange_dump(url, actual_url, err = err)
  if ( .not. present_and_true(quiet) ) then
    call MessageNotify('M', subname, 'Input %c', c1=trim(actual_url))
  end if

999 continue
  call StoreError(stat, subname, err, cause_c)
  call EndSub(subname)
end subroutine HistoryGetReal2


subroutine HistoryGetReal3(file, varname, array, range, quiet, err)
  !
  ! <b>Note that Japanese and English are described in parallel.</b>
  !
                      !
  ! 使用方法に関しては HistoryGet を参照してください.
  ! 
  ! See "HistoryGet", for basic usage.
  !
                    
  !
  use gtdata_types, only: GT_VARIABLE
  use gtdata_generic, only: Open, Inquire, Close, Get
  use dc_string, only: toChar, Split, JoinChar, StoA
  use dc_url, only: GT_ATMARK, GT_COMMA, GT_EQUAL, UrlSplit, UrlMerge
  use dc_present, only: present_select, present_and_not_empty, present_and_true
  use regex,      only: match
  use dc_types, only: DP, STRING
  use dc_message, only: MessageNotify
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_error, only: StoreError, DC_NOERR, GT_ENOTURL, GT_ERANKMISMATCH, &
    & GT_EARGSIZEMISMATCH
  character(*), intent(in):: file
                    
  character(*), intent(in):: varname
                    
  character(*), intent(in), optional:: range
                    
  logical, intent(in), optional:: quiet
  real, intent(out) :: array(:,:,:)
                    
  logical, intent(out), optional:: err
                    

                      real, allocatable:: array_tmp(:)
  integer:: array_allsize
  integer:: array_shape(3), data_shape(3)
  integer:: allcount

                    
  type(GT_VARIABLE)             :: var
  character(STRING)             :: url, actual_url
  integer:: rank
  integer:: domain   ! 変数の入出力領域の大きさ
                     ! (= 変数が依存する各次元サイズの積)
  integer:: stat
  character(STRING):: cause_c
  character(*), parameter :: subname = "HistoryGetReal3"
  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file
      character(*), intent(in) :: varname
      character(*), intent(out) :: url
      character(*), intent(in), optional:: range
      logical, intent(out), optional :: err
    end subroutine lookup_growable_url
  end interface
  interface
    subroutine actual_iorange_dump(url, actual_url, err)
      character(*), intent(in) :: url            ! 変数 URL
      character(*), intent(out), optional :: actual_url
                                                 ! 正確な入出力範囲指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine actual_iorange_dump
  end interface
continue
  call BeginSub(subname, 'file=%c varname=%c range=%c', &
    & c1 = trim(file), c2 = trim(varname), &
    & c3 = trim(present_select('', 'no-range', range)))
  cause_c = ''
  stat = DC_NOERR

                      !-------------------------------------
  !  配列形状の取得
  !  Get array shape
  array_shape = shape( array )
  array_allsize = size( array )
                    


  !-------------------------------------
  !  最新時刻の URL 取得
  !  Get URL of latest time
  call lookup_growable_url(file, varname, url, range, err = err)
  if ( present_and_true(err) ) then
    stat = GT_ENOTURL
    cause_c = url
    goto 999
  end if

  !-------------------------------------
  !  ファイルオープン
  !  File open
  call Open( var, url, err = err )

  if ( present_and_true(err) ) then
    stat = GT_ENOTURL
    cause_c = url
    goto 999
  end if

  !-------------------------------------
  !  配列形状のチェック
  !  Check array shape
  call Inquire( var = var, & ! (in)
    & rank = rank )          ! (out)

  if ( .not. 3 == rank ) then
    if ( .not. present_and_true(quiet) ) then
      call MessageNotify('W', subname, &
        & 'Rank of data (%c) is "%d", rank of argument is "%d"', &
        & i = (/rank, 3/), c1 = trim(url) )
    end if
    stat = GT_ERANKMISMATCH
    cause_c = 'array'
    goto 999
  end if
                                            call Inquire( var = var , dimord = 1, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(1) = allcount
                      
  call Inquire( var = var , dimord = 2, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(2) = allcount
                      
  call Inquire( var = var , dimord = 3, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(3) = allcount
                      

  if ( .not. all( array_shape == data_shape ) ) then
    if ( .not. present_and_true(quiet) ) then
      call MessageNotify('W', subname, &
        & 'Shape of data (%c) is (%c), shape of argument is (%c)', &
        & c1 = trim( url ), &
        & c2 = trim( toChar( data_shape ) ), &
        & c3 = trim( toChar( array_shape ) ) )
    end if
    stat = GT_EARGSIZEMISMATCH
    cause_c = 'array'
    goto 999
  end if
                    

  !-------------------------------------
  !  データ取得
  !  Get data
  call Inquire( var = var, & ! (in)
    & size = domain )        ! (out)

                    
  if ( allocated( array_tmp ) ) deallocate( array_tmp )
  allocate( array_tmp(array_allsize) )
  call Get( var, array_tmp, domain )
  array = reshape( array_tmp, array_shape )
  deallocate( array_tmp )

                    

  call Close( var )

  !-------------------------------------
  !  データファイル名と切り出し範囲の印字
  !  Print data filename and clipping range
  call actual_iorange_dump(url, actual_url, err = err)
  if ( .not. present_and_true(quiet) ) then
    call MessageNotify('M', subname, 'Input %c', c1=trim(actual_url))
  end if

999 continue
  call StoreError(stat, subname, err, cause_c)
  call EndSub(subname)
end subroutine HistoryGetReal3


subroutine HistoryGetReal4(file, varname, array, range, quiet, err)
  !
  ! <b>Note that Japanese and English are described in parallel.</b>
  !
                      !
  ! 使用方法に関しては HistoryGet を参照してください.
  ! 
  ! See "HistoryGet", for basic usage.
  !
                    
  !
  use gtdata_types, only: GT_VARIABLE
  use gtdata_generic, only: Open, Inquire, Close, Get
  use dc_string, only: toChar, Split, JoinChar, StoA
  use dc_url, only: GT_ATMARK, GT_COMMA, GT_EQUAL, UrlSplit, UrlMerge
  use dc_present, only: present_select, present_and_not_empty, present_and_true
  use regex,      only: match
  use dc_types, only: DP, STRING
  use dc_message, only: MessageNotify
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_error, only: StoreError, DC_NOERR, GT_ENOTURL, GT_ERANKMISMATCH, &
    & GT_EARGSIZEMISMATCH
  character(*), intent(in):: file
                    
  character(*), intent(in):: varname
                    
  character(*), intent(in), optional:: range
                    
  logical, intent(in), optional:: quiet
  real, intent(out) :: array(:,:,:,:)
                    
  logical, intent(out), optional:: err
                    

                      real, allocatable:: array_tmp(:)
  integer:: array_allsize
  integer:: array_shape(4), data_shape(4)
  integer:: allcount

                    
  type(GT_VARIABLE)             :: var
  character(STRING)             :: url, actual_url
  integer:: rank
  integer:: domain   ! 変数の入出力領域の大きさ
                     ! (= 変数が依存する各次元サイズの積)
  integer:: stat
  character(STRING):: cause_c
  character(*), parameter :: subname = "HistoryGetReal4"
  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file
      character(*), intent(in) :: varname
      character(*), intent(out) :: url
      character(*), intent(in), optional:: range
      logical, intent(out), optional :: err
    end subroutine lookup_growable_url
  end interface
  interface
    subroutine actual_iorange_dump(url, actual_url, err)
      character(*), intent(in) :: url            ! 変数 URL
      character(*), intent(out), optional :: actual_url
                                                 ! 正確な入出力範囲指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine actual_iorange_dump
  end interface
continue
  call BeginSub(subname, 'file=%c varname=%c range=%c', &
    & c1 = trim(file), c2 = trim(varname), &
    & c3 = trim(present_select('', 'no-range', range)))
  cause_c = ''
  stat = DC_NOERR

                      !-------------------------------------
  !  配列形状の取得
  !  Get array shape
  array_shape = shape( array )
  array_allsize = size( array )
                    


  !-------------------------------------
  !  最新時刻の URL 取得
  !  Get URL of latest time
  call lookup_growable_url(file, varname, url, range, err = err)
  if ( present_and_true(err) ) then
    stat = GT_ENOTURL
    cause_c = url
    goto 999
  end if

  !-------------------------------------
  !  ファイルオープン
  !  File open
  call Open( var, url, err = err )

  if ( present_and_true(err) ) then
    stat = GT_ENOTURL
    cause_c = url
    goto 999
  end if

  !-------------------------------------
  !  配列形状のチェック
  !  Check array shape
  call Inquire( var = var, & ! (in)
    & rank = rank )          ! (out)

  if ( .not. 4 == rank ) then
    if ( .not. present_and_true(quiet) ) then
      call MessageNotify('W', subname, &
        & 'Rank of data (%c) is "%d", rank of argument is "%d"', &
        & i = (/rank, 4/), c1 = trim(url) )
    end if
    stat = GT_ERANKMISMATCH
    cause_c = 'array'
    goto 999
  end if
                                            call Inquire( var = var , dimord = 1, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(1) = allcount
                      
  call Inquire( var = var , dimord = 2, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(2) = allcount
                      
  call Inquire( var = var , dimord = 3, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(3) = allcount
                      
  call Inquire( var = var , dimord = 4, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(4) = allcount
                      

  if ( .not. all( array_shape == data_shape ) ) then
    if ( .not. present_and_true(quiet) ) then
      call MessageNotify('W', subname, &
        & 'Shape of data (%c) is (%c), shape of argument is (%c)', &
        & c1 = trim( url ), &
        & c2 = trim( toChar( data_shape ) ), &
        & c3 = trim( toChar( array_shape ) ) )
    end if
    stat = GT_EARGSIZEMISMATCH
    cause_c = 'array'
    goto 999
  end if
                    

  !-------------------------------------
  !  データ取得
  !  Get data
  call Inquire( var = var, & ! (in)
    & size = domain )        ! (out)

                    
  if ( allocated( array_tmp ) ) deallocate( array_tmp )
  allocate( array_tmp(array_allsize) )
  call Get( var, array_tmp, domain )
  array = reshape( array_tmp, array_shape )
  deallocate( array_tmp )

                    

  call Close( var )

  !-------------------------------------
  !  データファイル名と切り出し範囲の印字
  !  Print data filename and clipping range
  call actual_iorange_dump(url, actual_url, err = err)
  if ( .not. present_and_true(quiet) ) then
    call MessageNotify('M', subname, 'Input %c', c1=trim(actual_url))
  end if

999 continue
  call StoreError(stat, subname, err, cause_c)
  call EndSub(subname)
end subroutine HistoryGetReal4


subroutine HistoryGetReal5(file, varname, array, range, quiet, err)
  !
  ! <b>Note that Japanese and English are described in parallel.</b>
  !
                      !
  ! 使用方法に関しては HistoryGet を参照してください.
  ! 
  ! See "HistoryGet", for basic usage.
  !
                    
  !
  use gtdata_types, only: GT_VARIABLE
  use gtdata_generic, only: Open, Inquire, Close, Get
  use dc_string, only: toChar, Split, JoinChar, StoA
  use dc_url, only: GT_ATMARK, GT_COMMA, GT_EQUAL, UrlSplit, UrlMerge
  use dc_present, only: present_select, present_and_not_empty, present_and_true
  use regex,      only: match
  use dc_types, only: DP, STRING
  use dc_message, only: MessageNotify
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_error, only: StoreError, DC_NOERR, GT_ENOTURL, GT_ERANKMISMATCH, &
    & GT_EARGSIZEMISMATCH
  character(*), intent(in):: file
                    
  character(*), intent(in):: varname
                    
  character(*), intent(in), optional:: range
                    
  logical, intent(in), optional:: quiet
  real, intent(out) :: array(:,:,:,:,:)
                    
  logical, intent(out), optional:: err
                    

                      real, allocatable:: array_tmp(:)
  integer:: array_allsize
  integer:: array_shape(5), data_shape(5)
  integer:: allcount

                    
  type(GT_VARIABLE)             :: var
  character(STRING)             :: url, actual_url
  integer:: rank
  integer:: domain   ! 変数の入出力領域の大きさ
                     ! (= 変数が依存する各次元サイズの積)
  integer:: stat
  character(STRING):: cause_c
  character(*), parameter :: subname = "HistoryGetReal5"
  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file
      character(*), intent(in) :: varname
      character(*), intent(out) :: url
      character(*), intent(in), optional:: range
      logical, intent(out), optional :: err
    end subroutine lookup_growable_url
  end interface
  interface
    subroutine actual_iorange_dump(url, actual_url, err)
      character(*), intent(in) :: url            ! 変数 URL
      character(*), intent(out), optional :: actual_url
                                                 ! 正確な入出力範囲指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine actual_iorange_dump
  end interface
continue
  call BeginSub(subname, 'file=%c varname=%c range=%c', &
    & c1 = trim(file), c2 = trim(varname), &
    & c3 = trim(present_select('', 'no-range', range)))
  cause_c = ''
  stat = DC_NOERR

                      !-------------------------------------
  !  配列形状の取得
  !  Get array shape
  array_shape = shape( array )
  array_allsize = size( array )
                    


  !-------------------------------------
  !  最新時刻の URL 取得
  !  Get URL of latest time
  call lookup_growable_url(file, varname, url, range, err = err)
  if ( present_and_true(err) ) then
    stat = GT_ENOTURL
    cause_c = url
    goto 999
  end if

  !-------------------------------------
  !  ファイルオープン
  !  File open
  call Open( var, url, err = err )

  if ( present_and_true(err) ) then
    stat = GT_ENOTURL
    cause_c = url
    goto 999
  end if

  !-------------------------------------
  !  配列形状のチェック
  !  Check array shape
  call Inquire( var = var, & ! (in)
    & rank = rank )          ! (out)

  if ( .not. 5 == rank ) then
    if ( .not. present_and_true(quiet) ) then
      call MessageNotify('W', subname, &
        & 'Rank of data (%c) is "%d", rank of argument is "%d"', &
        & i = (/rank, 5/), c1 = trim(url) )
    end if
    stat = GT_ERANKMISMATCH
    cause_c = 'array'
    goto 999
  end if
                                            call Inquire( var = var , dimord = 1, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(1) = allcount
                      
  call Inquire( var = var , dimord = 2, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(2) = allcount
                      
  call Inquire( var = var , dimord = 3, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(3) = allcount
                      
  call Inquire( var = var , dimord = 4, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(4) = allcount
                      
  call Inquire( var = var , dimord = 5, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(5) = allcount
                      

  if ( .not. all( array_shape == data_shape ) ) then
    if ( .not. present_and_true(quiet) ) then
      call MessageNotify('W', subname, &
        & 'Shape of data (%c) is (%c), shape of argument is (%c)', &
        & c1 = trim( url ), &
        & c2 = trim( toChar( data_shape ) ), &
        & c3 = trim( toChar( array_shape ) ) )
    end if
    stat = GT_EARGSIZEMISMATCH
    cause_c = 'array'
    goto 999
  end if
                    

  !-------------------------------------
  !  データ取得
  !  Get data
  call Inquire( var = var, & ! (in)
    & size = domain )        ! (out)

                    
  if ( allocated( array_tmp ) ) deallocate( array_tmp )
  allocate( array_tmp(array_allsize) )
  call Get( var, array_tmp, domain )
  array = reshape( array_tmp, array_shape )
  deallocate( array_tmp )

                    

  call Close( var )

  !-------------------------------------
  !  データファイル名と切り出し範囲の印字
  !  Print data filename and clipping range
  call actual_iorange_dump(url, actual_url, err = err)
  if ( .not. present_and_true(quiet) ) then
    call MessageNotify('M', subname, 'Input %c', c1=trim(actual_url))
  end if

999 continue
  call StoreError(stat, subname, err, cause_c)
  call EndSub(subname)
end subroutine HistoryGetReal5


subroutine HistoryGetReal6(file, varname, array, range, quiet, err)
  !
  ! <b>Note that Japanese and English are described in parallel.</b>
  !
                      !
  ! 使用方法に関しては HistoryGet を参照してください.
  ! 
  ! See "HistoryGet", for basic usage.
  !
                    
  !
  use gtdata_types, only: GT_VARIABLE
  use gtdata_generic, only: Open, Inquire, Close, Get
  use dc_string, only: toChar, Split, JoinChar, StoA
  use dc_url, only: GT_ATMARK, GT_COMMA, GT_EQUAL, UrlSplit, UrlMerge
  use dc_present, only: present_select, present_and_not_empty, present_and_true
  use regex,      only: match
  use dc_types, only: DP, STRING
  use dc_message, only: MessageNotify
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_error, only: StoreError, DC_NOERR, GT_ENOTURL, GT_ERANKMISMATCH, &
    & GT_EARGSIZEMISMATCH
  character(*), intent(in):: file
                    
  character(*), intent(in):: varname
                    
  character(*), intent(in), optional:: range
                    
  logical, intent(in), optional:: quiet
  real, intent(out) :: array(:,:,:,:,:,:)
                    
  logical, intent(out), optional:: err
                    

                      real, allocatable:: array_tmp(:)
  integer:: array_allsize
  integer:: array_shape(6), data_shape(6)
  integer:: allcount

                    
  type(GT_VARIABLE)             :: var
  character(STRING)             :: url, actual_url
  integer:: rank
  integer:: domain   ! 変数の入出力領域の大きさ
                     ! (= 変数が依存する各次元サイズの積)
  integer:: stat
  character(STRING):: cause_c
  character(*), parameter :: subname = "HistoryGetReal6"
  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file
      character(*), intent(in) :: varname
      character(*), intent(out) :: url
      character(*), intent(in), optional:: range
      logical, intent(out), optional :: err
    end subroutine lookup_growable_url
  end interface
  interface
    subroutine actual_iorange_dump(url, actual_url, err)
      character(*), intent(in) :: url            ! 変数 URL
      character(*), intent(out), optional :: actual_url
                                                 ! 正確な入出力範囲指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine actual_iorange_dump
  end interface
continue
  call BeginSub(subname, 'file=%c varname=%c range=%c', &
    & c1 = trim(file), c2 = trim(varname), &
    & c3 = trim(present_select('', 'no-range', range)))
  cause_c = ''
  stat = DC_NOERR

                      !-------------------------------------
  !  配列形状の取得
  !  Get array shape
  array_shape = shape( array )
  array_allsize = size( array )
                    


  !-------------------------------------
  !  最新時刻の URL 取得
  !  Get URL of latest time
  call lookup_growable_url(file, varname, url, range, err = err)
  if ( present_and_true(err) ) then
    stat = GT_ENOTURL
    cause_c = url
    goto 999
  end if

  !-------------------------------------
  !  ファイルオープン
  !  File open
  call Open( var, url, err = err )

  if ( present_and_true(err) ) then
    stat = GT_ENOTURL
    cause_c = url
    goto 999
  end if

  !-------------------------------------
  !  配列形状のチェック
  !  Check array shape
  call Inquire( var = var, & ! (in)
    & rank = rank )          ! (out)

  if ( .not. 6 == rank ) then
    if ( .not. present_and_true(quiet) ) then
      call MessageNotify('W', subname, &
        & 'Rank of data (%c) is "%d", rank of argument is "%d"', &
        & i = (/rank, 6/), c1 = trim(url) )
    end if
    stat = GT_ERANKMISMATCH
    cause_c = 'array'
    goto 999
  end if
                                            call Inquire( var = var , dimord = 1, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(1) = allcount
                      
  call Inquire( var = var , dimord = 2, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(2) = allcount
                      
  call Inquire( var = var , dimord = 3, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(3) = allcount
                      
  call Inquire( var = var , dimord = 4, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(4) = allcount
                      
  call Inquire( var = var , dimord = 5, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(5) = allcount
                      
  call Inquire( var = var , dimord = 6, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(6) = allcount
                      

  if ( .not. all( array_shape == data_shape ) ) then
    if ( .not. present_and_true(quiet) ) then
      call MessageNotify('W', subname, &
        & 'Shape of data (%c) is (%c), shape of argument is (%c)', &
        & c1 = trim( url ), &
        & c2 = trim( toChar( data_shape ) ), &
        & c3 = trim( toChar( array_shape ) ) )
    end if
    stat = GT_EARGSIZEMISMATCH
    cause_c = 'array'
    goto 999
  end if
                    

  !-------------------------------------
  !  データ取得
  !  Get data
  call Inquire( var = var, & ! (in)
    & size = domain )        ! (out)

                    
  if ( allocated( array_tmp ) ) deallocate( array_tmp )
  allocate( array_tmp(array_allsize) )
  call Get( var, array_tmp, domain )
  array = reshape( array_tmp, array_shape )
  deallocate( array_tmp )

                    

  call Close( var )

  !-------------------------------------
  !  データファイル名と切り出し範囲の印字
  !  Print data filename and clipping range
  call actual_iorange_dump(url, actual_url, err = err)
  if ( .not. present_and_true(quiet) ) then
    call MessageNotify('M', subname, 'Input %c', c1=trim(actual_url))
  end if

999 continue
  call StoreError(stat, subname, err, cause_c)
  call EndSub(subname)
end subroutine HistoryGetReal6


subroutine HistoryGetReal7(file, varname, array, range, quiet, err)
  !
  ! <b>Note that Japanese and English are described in parallel.</b>
  !
                      !
  ! 使用方法に関しては HistoryGet を参照してください.
  ! 
  ! See "HistoryGet", for basic usage.
  !
                    
  !
  use gtdata_types, only: GT_VARIABLE
  use gtdata_generic, only: Open, Inquire, Close, Get
  use dc_string, only: toChar, Split, JoinChar, StoA
  use dc_url, only: GT_ATMARK, GT_COMMA, GT_EQUAL, UrlSplit, UrlMerge
  use dc_present, only: present_select, present_and_not_empty, present_and_true
  use regex,      only: match
  use dc_types, only: DP, STRING
  use dc_message, only: MessageNotify
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_error, only: StoreError, DC_NOERR, GT_ENOTURL, GT_ERANKMISMATCH, &
    & GT_EARGSIZEMISMATCH
  character(*), intent(in):: file
                    
  character(*), intent(in):: varname
                    
  character(*), intent(in), optional:: range
                    
  logical, intent(in), optional:: quiet
  real, intent(out) :: array(:,:,:,:,:,:,:)
                    
  logical, intent(out), optional:: err
                    

                      real, allocatable:: array_tmp(:)
  integer:: array_allsize
  integer:: array_shape(7), data_shape(7)
  integer:: allcount

                    
  type(GT_VARIABLE)             :: var
  character(STRING)             :: url, actual_url
  integer:: rank
  integer:: domain   ! 変数の入出力領域の大きさ
                     ! (= 変数が依存する各次元サイズの積)
  integer:: stat
  character(STRING):: cause_c
  character(*), parameter :: subname = "HistoryGetReal7"
  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file
      character(*), intent(in) :: varname
      character(*), intent(out) :: url
      character(*), intent(in), optional:: range
      logical, intent(out), optional :: err
    end subroutine lookup_growable_url
  end interface
  interface
    subroutine actual_iorange_dump(url, actual_url, err)
      character(*), intent(in) :: url            ! 変数 URL
      character(*), intent(out), optional :: actual_url
                                                 ! 正確な入出力範囲指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine actual_iorange_dump
  end interface
continue
  call BeginSub(subname, 'file=%c varname=%c range=%c', &
    & c1 = trim(file), c2 = trim(varname), &
    & c3 = trim(present_select('', 'no-range', range)))
  cause_c = ''
  stat = DC_NOERR

                      !-------------------------------------
  !  配列形状の取得
  !  Get array shape
  array_shape = shape( array )
  array_allsize = size( array )
                    


  !-------------------------------------
  !  最新時刻の URL 取得
  !  Get URL of latest time
  call lookup_growable_url(file, varname, url, range, err = err)
  if ( present_and_true(err) ) then
    stat = GT_ENOTURL
    cause_c = url
    goto 999
  end if

  !-------------------------------------
  !  ファイルオープン
  !  File open
  call Open( var, url, err = err )

  if ( present_and_true(err) ) then
    stat = GT_ENOTURL
    cause_c = url
    goto 999
  end if

  !-------------------------------------
  !  配列形状のチェック
  !  Check array shape
  call Inquire( var = var, & ! (in)
    & rank = rank )          ! (out)

  if ( .not. 7 == rank ) then
    if ( .not. present_and_true(quiet) ) then
      call MessageNotify('W', subname, &
        & 'Rank of data (%c) is "%d", rank of argument is "%d"', &
        & i = (/rank, 7/), c1 = trim(url) )
    end if
    stat = GT_ERANKMISMATCH
    cause_c = 'array'
    goto 999
  end if
                                            call Inquire( var = var , dimord = 1, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(1) = allcount
                      
  call Inquire( var = var , dimord = 2, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(2) = allcount
                      
  call Inquire( var = var , dimord = 3, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(3) = allcount
                      
  call Inquire( var = var , dimord = 4, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(4) = allcount
                      
  call Inquire( var = var , dimord = 5, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(5) = allcount
                      
  call Inquire( var = var , dimord = 6, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(6) = allcount
                      
  call Inquire( var = var , dimord = 7, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(7) = allcount
                      

  if ( .not. all( array_shape == data_shape ) ) then
    if ( .not. present_and_true(quiet) ) then
      call MessageNotify('W', subname, &
        & 'Shape of data (%c) is (%c), shape of argument is (%c)', &
        & c1 = trim( url ), &
        & c2 = trim( toChar( data_shape ) ), &
        & c3 = trim( toChar( array_shape ) ) )
    end if
    stat = GT_EARGSIZEMISMATCH
    cause_c = 'array'
    goto 999
  end if
                    

  !-------------------------------------
  !  データ取得
  !  Get data
  call Inquire( var = var, & ! (in)
    & size = domain )        ! (out)

                    
  if ( allocated( array_tmp ) ) deallocate( array_tmp )
  allocate( array_tmp(array_allsize) )
  call Get( var, array_tmp, domain )
  array = reshape( array_tmp, array_shape )
  deallocate( array_tmp )

                    

  call Close( var )

  !-------------------------------------
  !  データファイル名と切り出し範囲の印字
  !  Print data filename and clipping range
  call actual_iorange_dump(url, actual_url, err = err)
  if ( .not. present_and_true(quiet) ) then
    call MessageNotify('M', subname, 'Input %c', c1=trim(actual_url))
  end if

999 continue
  call StoreError(stat, subname, err, cause_c)
  call EndSub(subname)
end subroutine HistoryGetReal7


subroutine HistoryGetInt0(file, varname, array, range, quiet, err)
  !
  ! <b>Note that Japanese and English are described in parallel.</b>
  !
                      !
  ! 使用方法に関しては HistoryGet を参照してください.
  ! 
  ! See "HistoryGet", for basic usage.
  !
                    
  !
  use gtdata_types, only: GT_VARIABLE
  use gtdata_generic, only: Open, Inquire, Close, Get
  use dc_string, only: toChar, Split, JoinChar, StoA
  use dc_url, only: GT_ATMARK, GT_COMMA, GT_EQUAL, UrlSplit, UrlMerge
  use dc_present, only: present_select, present_and_not_empty, present_and_true
  use regex,      only: match
  use dc_types, only: DP, STRING
  use dc_message, only: MessageNotify
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_error, only: StoreError, DC_NOERR, GT_ENOTURL, GT_ERANKMISMATCH, &
    & GT_EARGSIZEMISMATCH
  character(*), intent(in):: file
                    
  character(*), intent(in):: varname
                    
  character(*), intent(in), optional:: range
                    
  logical, intent(in), optional:: quiet
  integer, intent(out) :: array
                    
  logical, intent(out), optional:: err
                    

                      integer:: array_tmp(1)
                    
  type(GT_VARIABLE)             :: var
  character(STRING)             :: url, actual_url
  integer:: rank
  integer:: domain   ! 変数の入出力領域の大きさ
                     ! (= 変数が依存する各次元サイズの積)
  integer:: stat
  character(STRING):: cause_c
  character(*), parameter :: subname = "HistoryGetInt0"
  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file
      character(*), intent(in) :: varname
      character(*), intent(out) :: url
      character(*), intent(in), optional:: range
      logical, intent(out), optional :: err
    end subroutine lookup_growable_url
  end interface
  interface
    subroutine actual_iorange_dump(url, actual_url, err)
      character(*), intent(in) :: url            ! 変数 URL
      character(*), intent(out), optional :: actual_url
                                                 ! 正確な入出力範囲指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine actual_iorange_dump
  end interface
continue
  call BeginSub(subname, 'file=%c varname=%c range=%c', &
    & c1 = trim(file), c2 = trim(varname), &
    & c3 = trim(present_select('', 'no-range', range)))
  cause_c = ''
  stat = DC_NOERR

                                        


  !-------------------------------------
  !  最新時刻の URL 取得
  !  Get URL of latest time
  call lookup_growable_url(file, varname, url, range, err = err)
  if ( present_and_true(err) ) then
    stat = GT_ENOTURL
    cause_c = url
    goto 999
  end if

  !-------------------------------------
  !  ファイルオープン
  !  File open
  call Open( var, url, err = err )

  if ( present_and_true(err) ) then
    stat = GT_ENOTURL
    cause_c = url
    goto 999
  end if

  !-------------------------------------
  !  配列形状のチェック
  !  Check array shape
  call Inquire( var = var, & ! (in)
    & rank = rank )          ! (out)

  if ( .not. 0 == rank ) then
    if ( .not. present_and_true(quiet) ) then
      call MessageNotify('W', subname, &
        & 'Rank of data (%c) is "%d", rank of argument is "%d"', &
        & i = (/rank, 0/), c1 = trim(url) )
    end if
    stat = GT_ERANKMISMATCH
    cause_c = 'array'
    goto 999
  end if
                                        

  !-------------------------------------
  !  データ取得
  !  Get data
  call Inquire( var = var, & ! (in)
    & size = domain )        ! (out)

                    
  call Get( var = var, & ! (inout)
    & nvalue = domain, & ! (in)
    & value = array_tmp) ! (out)
  array = array_tmp(1)

                    

  call Close( var )

  !-------------------------------------
  !  データファイル名と切り出し範囲の印字
  !  Print data filename and clipping range
  call actual_iorange_dump(url, actual_url, err = err)
  if ( .not. present_and_true(quiet) ) then
    call MessageNotify('M', subname, 'Input %c', c1=trim(actual_url))
  end if

999 continue
  call StoreError(stat, subname, err, cause_c)
  call EndSub(subname)
end subroutine HistoryGetInt0


subroutine HistoryGetInt1(file, varname, array, range, quiet, err)
  !
  ! <b>Note that Japanese and English are described in parallel.</b>
  !
                      !
  ! 使用方法に関しては HistoryGet を参照してください.
  ! 
  ! See "HistoryGet", for basic usage.
  !
                    
  !
  use gtdata_types, only: GT_VARIABLE
  use gtdata_generic, only: Open, Inquire, Close, Get
  use dc_string, only: toChar, Split, JoinChar, StoA
  use dc_url, only: GT_ATMARK, GT_COMMA, GT_EQUAL, UrlSplit, UrlMerge
  use dc_present, only: present_select, present_and_not_empty, present_and_true
  use regex,      only: match
  use dc_types, only: DP, STRING
  use dc_message, only: MessageNotify
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_error, only: StoreError, DC_NOERR, GT_ENOTURL, GT_ERANKMISMATCH, &
    & GT_EARGSIZEMISMATCH
  character(*), intent(in):: file
                    
  character(*), intent(in):: varname
                    
  character(*), intent(in), optional:: range
                    
  logical, intent(in), optional:: quiet
  integer, intent(out) :: array(:)
                    
  logical, intent(out), optional:: err
                    

                      integer, allocatable:: array_tmp(:)
  integer:: array_allsize
  integer:: array_shape(1), data_shape(1)
  integer:: allcount

                    
  type(GT_VARIABLE)             :: var
  character(STRING)             :: url, actual_url
  integer:: rank
  integer:: domain   ! 変数の入出力領域の大きさ
                     ! (= 変数が依存する各次元サイズの積)
  integer:: stat
  character(STRING):: cause_c
  character(*), parameter :: subname = "HistoryGetInt1"
  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file
      character(*), intent(in) :: varname
      character(*), intent(out) :: url
      character(*), intent(in), optional:: range
      logical, intent(out), optional :: err
    end subroutine lookup_growable_url
  end interface
  interface
    subroutine actual_iorange_dump(url, actual_url, err)
      character(*), intent(in) :: url            ! 変数 URL
      character(*), intent(out), optional :: actual_url
                                                 ! 正確な入出力範囲指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine actual_iorange_dump
  end interface
continue
  call BeginSub(subname, 'file=%c varname=%c range=%c', &
    & c1 = trim(file), c2 = trim(varname), &
    & c3 = trim(present_select('', 'no-range', range)))
  cause_c = ''
  stat = DC_NOERR

                      !-------------------------------------
  !  配列形状の取得
  !  Get array shape
  array_shape = shape( array )
  array_allsize = size( array )
                    


  !-------------------------------------
  !  最新時刻の URL 取得
  !  Get URL of latest time
  call lookup_growable_url(file, varname, url, range, err = err)
  if ( present_and_true(err) ) then
    stat = GT_ENOTURL
    cause_c = url
    goto 999
  end if

  !-------------------------------------
  !  ファイルオープン
  !  File open
  call Open( var, url, err = err )

  if ( present_and_true(err) ) then
    stat = GT_ENOTURL
    cause_c = url
    goto 999
  end if

  !-------------------------------------
  !  配列形状のチェック
  !  Check array shape
  call Inquire( var = var, & ! (in)
    & rank = rank )          ! (out)

  if ( .not. 1 == rank ) then
    if ( .not. present_and_true(quiet) ) then
      call MessageNotify('W', subname, &
        & 'Rank of data (%c) is "%d", rank of argument is "%d"', &
        & i = (/rank, 1/), c1 = trim(url) )
    end if
    stat = GT_ERANKMISMATCH
    cause_c = 'array'
    goto 999
  end if
                                            call Inquire( var = var , dimord = 1, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(1) = allcount
                      

  if ( .not. all( array_shape == data_shape ) ) then
    if ( .not. present_and_true(quiet) ) then
      call MessageNotify('W', subname, &
        & 'Shape of data (%c) is (%c), shape of argument is (%c)', &
        & c1 = trim( url ), &
        & c2 = trim( toChar( data_shape ) ), &
        & c3 = trim( toChar( array_shape ) ) )
    end if
    stat = GT_EARGSIZEMISMATCH
    cause_c = 'array'
    goto 999
  end if
                    

  !-------------------------------------
  !  データ取得
  !  Get data
  call Inquire( var = var, & ! (in)
    & size = domain )        ! (out)

                    
  if ( allocated( array_tmp ) ) deallocate( array_tmp )
  allocate( array_tmp(array_allsize) )
  call Get( var, array_tmp, domain )
  array = reshape( array_tmp, array_shape )
  deallocate( array_tmp )

                    

  call Close( var )

  !-------------------------------------
  !  データファイル名と切り出し範囲の印字
  !  Print data filename and clipping range
  call actual_iorange_dump(url, actual_url, err = err)
  if ( .not. present_and_true(quiet) ) then
    call MessageNotify('M', subname, 'Input %c', c1=trim(actual_url))
  end if

999 continue
  call StoreError(stat, subname, err, cause_c)
  call EndSub(subname)
end subroutine HistoryGetInt1


subroutine HistoryGetInt2(file, varname, array, range, quiet, err)
  !
  ! <b>Note that Japanese and English are described in parallel.</b>
  !
                      !
  ! 使用方法に関しては HistoryGet を参照してください.
  ! 
  ! See "HistoryGet", for basic usage.
  !
                    
  !
  use gtdata_types, only: GT_VARIABLE
  use gtdata_generic, only: Open, Inquire, Close, Get
  use dc_string, only: toChar, Split, JoinChar, StoA
  use dc_url, only: GT_ATMARK, GT_COMMA, GT_EQUAL, UrlSplit, UrlMerge
  use dc_present, only: present_select, present_and_not_empty, present_and_true
  use regex,      only: match
  use dc_types, only: DP, STRING
  use dc_message, only: MessageNotify
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_error, only: StoreError, DC_NOERR, GT_ENOTURL, GT_ERANKMISMATCH, &
    & GT_EARGSIZEMISMATCH
  character(*), intent(in):: file
                    
  character(*), intent(in):: varname
                    
  character(*), intent(in), optional:: range
                    
  logical, intent(in), optional:: quiet
  integer, intent(out) :: array(:,:)
                    
  logical, intent(out), optional:: err
                    

                      integer, allocatable:: array_tmp(:)
  integer:: array_allsize
  integer:: array_shape(2), data_shape(2)
  integer:: allcount

                    
  type(GT_VARIABLE)             :: var
  character(STRING)             :: url, actual_url
  integer:: rank
  integer:: domain   ! 変数の入出力領域の大きさ
                     ! (= 変数が依存する各次元サイズの積)
  integer:: stat
  character(STRING):: cause_c
  character(*), parameter :: subname = "HistoryGetInt2"
  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file
      character(*), intent(in) :: varname
      character(*), intent(out) :: url
      character(*), intent(in), optional:: range
      logical, intent(out), optional :: err
    end subroutine lookup_growable_url
  end interface
  interface
    subroutine actual_iorange_dump(url, actual_url, err)
      character(*), intent(in) :: url            ! 変数 URL
      character(*), intent(out), optional :: actual_url
                                                 ! 正確な入出力範囲指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine actual_iorange_dump
  end interface
continue
  call BeginSub(subname, 'file=%c varname=%c range=%c', &
    & c1 = trim(file), c2 = trim(varname), &
    & c3 = trim(present_select('', 'no-range', range)))
  cause_c = ''
  stat = DC_NOERR

                      !-------------------------------------
  !  配列形状の取得
  !  Get array shape
  array_shape = shape( array )
  array_allsize = size( array )
                    


  !-------------------------------------
  !  最新時刻の URL 取得
  !  Get URL of latest time
  call lookup_growable_url(file, varname, url, range, err = err)
  if ( present_and_true(err) ) then
    stat = GT_ENOTURL
    cause_c = url
    goto 999
  end if

  !-------------------------------------
  !  ファイルオープン
  !  File open
  call Open( var, url, err = err )

  if ( present_and_true(err) ) then
    stat = GT_ENOTURL
    cause_c = url
    goto 999
  end if

  !-------------------------------------
  !  配列形状のチェック
  !  Check array shape
  call Inquire( var = var, & ! (in)
    & rank = rank )          ! (out)

  if ( .not. 2 == rank ) then
    if ( .not. present_and_true(quiet) ) then
      call MessageNotify('W', subname, &
        & 'Rank of data (%c) is "%d", rank of argument is "%d"', &
        & i = (/rank, 2/), c1 = trim(url) )
    end if
    stat = GT_ERANKMISMATCH
    cause_c = 'array'
    goto 999
  end if
                                            call Inquire( var = var , dimord = 1, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(1) = allcount
                      
  call Inquire( var = var , dimord = 2, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(2) = allcount
                      

  if ( .not. all( array_shape == data_shape ) ) then
    if ( .not. present_and_true(quiet) ) then
      call MessageNotify('W', subname, &
        & 'Shape of data (%c) is (%c), shape of argument is (%c)', &
        & c1 = trim( url ), &
        & c2 = trim( toChar( data_shape ) ), &
        & c3 = trim( toChar( array_shape ) ) )
    end if
    stat = GT_EARGSIZEMISMATCH
    cause_c = 'array'
    goto 999
  end if
                    

  !-------------------------------------
  !  データ取得
  !  Get data
  call Inquire( var = var, & ! (in)
    & size = domain )        ! (out)

                    
  if ( allocated( array_tmp ) ) deallocate( array_tmp )
  allocate( array_tmp(array_allsize) )
  call Get( var, array_tmp, domain )
  array = reshape( array_tmp, array_shape )
  deallocate( array_tmp )

                    

  call Close( var )

  !-------------------------------------
  !  データファイル名と切り出し範囲の印字
  !  Print data filename and clipping range
  call actual_iorange_dump(url, actual_url, err = err)
  if ( .not. present_and_true(quiet) ) then
    call MessageNotify('M', subname, 'Input %c', c1=trim(actual_url))
  end if

999 continue
  call StoreError(stat, subname, err, cause_c)
  call EndSub(subname)
end subroutine HistoryGetInt2


subroutine HistoryGetInt3(file, varname, array, range, quiet, err)
  !
  ! <b>Note that Japanese and English are described in parallel.</b>
  !
                      !
  ! 使用方法に関しては HistoryGet を参照してください.
  ! 
  ! See "HistoryGet", for basic usage.
  !
                    
  !
  use gtdata_types, only: GT_VARIABLE
  use gtdata_generic, only: Open, Inquire, Close, Get
  use dc_string, only: toChar, Split, JoinChar, StoA
  use dc_url, only: GT_ATMARK, GT_COMMA, GT_EQUAL, UrlSplit, UrlMerge
  use dc_present, only: present_select, present_and_not_empty, present_and_true
  use regex,      only: match
  use dc_types, only: DP, STRING
  use dc_message, only: MessageNotify
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_error, only: StoreError, DC_NOERR, GT_ENOTURL, GT_ERANKMISMATCH, &
    & GT_EARGSIZEMISMATCH
  character(*), intent(in):: file
                    
  character(*), intent(in):: varname
                    
  character(*), intent(in), optional:: range
                    
  logical, intent(in), optional:: quiet
  integer, intent(out) :: array(:,:,:)
                    
  logical, intent(out), optional:: err
                    

                      integer, allocatable:: array_tmp(:)
  integer:: array_allsize
  integer:: array_shape(3), data_shape(3)
  integer:: allcount

                    
  type(GT_VARIABLE)             :: var
  character(STRING)             :: url, actual_url
  integer:: rank
  integer:: domain   ! 変数の入出力領域の大きさ
                     ! (= 変数が依存する各次元サイズの積)
  integer:: stat
  character(STRING):: cause_c
  character(*), parameter :: subname = "HistoryGetInt3"
  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file
      character(*), intent(in) :: varname
      character(*), intent(out) :: url
      character(*), intent(in), optional:: range
      logical, intent(out), optional :: err
    end subroutine lookup_growable_url
  end interface
  interface
    subroutine actual_iorange_dump(url, actual_url, err)
      character(*), intent(in) :: url            ! 変数 URL
      character(*), intent(out), optional :: actual_url
                                                 ! 正確な入出力範囲指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine actual_iorange_dump
  end interface
continue
  call BeginSub(subname, 'file=%c varname=%c range=%c', &
    & c1 = trim(file), c2 = trim(varname), &
    & c3 = trim(present_select('', 'no-range', range)))
  cause_c = ''
  stat = DC_NOERR

                      !-------------------------------------
  !  配列形状の取得
  !  Get array shape
  array_shape = shape( array )
  array_allsize = size( array )
                    


  !-------------------------------------
  !  最新時刻の URL 取得
  !  Get URL of latest time
  call lookup_growable_url(file, varname, url, range, err = err)
  if ( present_and_true(err) ) then
    stat = GT_ENOTURL
    cause_c = url
    goto 999
  end if

  !-------------------------------------
  !  ファイルオープン
  !  File open
  call Open( var, url, err = err )

  if ( present_and_true(err) ) then
    stat = GT_ENOTURL
    cause_c = url
    goto 999
  end if

  !-------------------------------------
  !  配列形状のチェック
  !  Check array shape
  call Inquire( var = var, & ! (in)
    & rank = rank )          ! (out)

  if ( .not. 3 == rank ) then
    if ( .not. present_and_true(quiet) ) then
      call MessageNotify('W', subname, &
        & 'Rank of data (%c) is "%d", rank of argument is "%d"', &
        & i = (/rank, 3/), c1 = trim(url) )
    end if
    stat = GT_ERANKMISMATCH
    cause_c = 'array'
    goto 999
  end if
                                            call Inquire( var = var , dimord = 1, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(1) = allcount
                      
  call Inquire( var = var , dimord = 2, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(2) = allcount
                      
  call Inquire( var = var , dimord = 3, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(3) = allcount
                      

  if ( .not. all( array_shape == data_shape ) ) then
    if ( .not. present_and_true(quiet) ) then
      call MessageNotify('W', subname, &
        & 'Shape of data (%c) is (%c), shape of argument is (%c)', &
        & c1 = trim( url ), &
        & c2 = trim( toChar( data_shape ) ), &
        & c3 = trim( toChar( array_shape ) ) )
    end if
    stat = GT_EARGSIZEMISMATCH
    cause_c = 'array'
    goto 999
  end if
                    

  !-------------------------------------
  !  データ取得
  !  Get data
  call Inquire( var = var, & ! (in)
    & size = domain )        ! (out)

                    
  if ( allocated( array_tmp ) ) deallocate( array_tmp )
  allocate( array_tmp(array_allsize) )
  call Get( var, array_tmp, domain )
  array = reshape( array_tmp, array_shape )
  deallocate( array_tmp )

                    

  call Close( var )

  !-------------------------------------
  !  データファイル名と切り出し範囲の印字
  !  Print data filename and clipping range
  call actual_iorange_dump(url, actual_url, err = err)
  if ( .not. present_and_true(quiet) ) then
    call MessageNotify('M', subname, 'Input %c', c1=trim(actual_url))
  end if

999 continue
  call StoreError(stat, subname, err, cause_c)
  call EndSub(subname)
end subroutine HistoryGetInt3


subroutine HistoryGetInt4(file, varname, array, range, quiet, err)
  !
  ! <b>Note that Japanese and English are described in parallel.</b>
  !
                      !
  ! 使用方法に関しては HistoryGet を参照してください.
  ! 
  ! See "HistoryGet", for basic usage.
  !
                    
  !
  use gtdata_types, only: GT_VARIABLE
  use gtdata_generic, only: Open, Inquire, Close, Get
  use dc_string, only: toChar, Split, JoinChar, StoA
  use dc_url, only: GT_ATMARK, GT_COMMA, GT_EQUAL, UrlSplit, UrlMerge
  use dc_present, only: present_select, present_and_not_empty, present_and_true
  use regex,      only: match
  use dc_types, only: DP, STRING
  use dc_message, only: MessageNotify
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_error, only: StoreError, DC_NOERR, GT_ENOTURL, GT_ERANKMISMATCH, &
    & GT_EARGSIZEMISMATCH
  character(*), intent(in):: file
                    
  character(*), intent(in):: varname
                    
  character(*), intent(in), optional:: range
                    
  logical, intent(in), optional:: quiet
  integer, intent(out) :: array(:,:,:,:)
                    
  logical, intent(out), optional:: err
                    

                      integer, allocatable:: array_tmp(:)
  integer:: array_allsize
  integer:: array_shape(4), data_shape(4)
  integer:: allcount

                    
  type(GT_VARIABLE)             :: var
  character(STRING)             :: url, actual_url
  integer:: rank
  integer:: domain   ! 変数の入出力領域の大きさ
                     ! (= 変数が依存する各次元サイズの積)
  integer:: stat
  character(STRING):: cause_c
  character(*), parameter :: subname = "HistoryGetInt4"
  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file
      character(*), intent(in) :: varname
      character(*), intent(out) :: url
      character(*), intent(in), optional:: range
      logical, intent(out), optional :: err
    end subroutine lookup_growable_url
  end interface
  interface
    subroutine actual_iorange_dump(url, actual_url, err)
      character(*), intent(in) :: url            ! 変数 URL
      character(*), intent(out), optional :: actual_url
                                                 ! 正確な入出力範囲指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine actual_iorange_dump
  end interface
continue
  call BeginSub(subname, 'file=%c varname=%c range=%c', &
    & c1 = trim(file), c2 = trim(varname), &
    & c3 = trim(present_select('', 'no-range', range)))
  cause_c = ''
  stat = DC_NOERR

                      !-------------------------------------
  !  配列形状の取得
  !  Get array shape
  array_shape = shape( array )
  array_allsize = size( array )
                    


  !-------------------------------------
  !  最新時刻の URL 取得
  !  Get URL of latest time
  call lookup_growable_url(file, varname, url, range, err = err)
  if ( present_and_true(err) ) then
    stat = GT_ENOTURL
    cause_c = url
    goto 999
  end if

  !-------------------------------------
  !  ファイルオープン
  !  File open
  call Open( var, url, err = err )

  if ( present_and_true(err) ) then
    stat = GT_ENOTURL
    cause_c = url
    goto 999
  end if

  !-------------------------------------
  !  配列形状のチェック
  !  Check array shape
  call Inquire( var = var, & ! (in)
    & rank = rank )          ! (out)

  if ( .not. 4 == rank ) then
    if ( .not. present_and_true(quiet) ) then
      call MessageNotify('W', subname, &
        & 'Rank of data (%c) is "%d", rank of argument is "%d"', &
        & i = (/rank, 4/), c1 = trim(url) )
    end if
    stat = GT_ERANKMISMATCH
    cause_c = 'array'
    goto 999
  end if
                                            call Inquire( var = var , dimord = 1, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(1) = allcount
                      
  call Inquire( var = var , dimord = 2, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(2) = allcount
                      
  call Inquire( var = var , dimord = 3, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(3) = allcount
                      
  call Inquire( var = var , dimord = 4, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(4) = allcount
                      

  if ( .not. all( array_shape == data_shape ) ) then
    if ( .not. present_and_true(quiet) ) then
      call MessageNotify('W', subname, &
        & 'Shape of data (%c) is (%c), shape of argument is (%c)', &
        & c1 = trim( url ), &
        & c2 = trim( toChar( data_shape ) ), &
        & c3 = trim( toChar( array_shape ) ) )
    end if
    stat = GT_EARGSIZEMISMATCH
    cause_c = 'array'
    goto 999
  end if
                    

  !-------------------------------------
  !  データ取得
  !  Get data
  call Inquire( var = var, & ! (in)
    & size = domain )        ! (out)

                    
  if ( allocated( array_tmp ) ) deallocate( array_tmp )
  allocate( array_tmp(array_allsize) )
  call Get( var, array_tmp, domain )
  array = reshape( array_tmp, array_shape )
  deallocate( array_tmp )

                    

  call Close( var )

  !-------------------------------------
  !  データファイル名と切り出し範囲の印字
  !  Print data filename and clipping range
  call actual_iorange_dump(url, actual_url, err = err)
  if ( .not. present_and_true(quiet) ) then
    call MessageNotify('M', subname, 'Input %c', c1=trim(actual_url))
  end if

999 continue
  call StoreError(stat, subname, err, cause_c)
  call EndSub(subname)
end subroutine HistoryGetInt4


subroutine HistoryGetInt5(file, varname, array, range, quiet, err)
  !
  ! <b>Note that Japanese and English are described in parallel.</b>
  !
                      !
  ! 使用方法に関しては HistoryGet を参照してください.
  ! 
  ! See "HistoryGet", for basic usage.
  !
                    
  !
  use gtdata_types, only: GT_VARIABLE
  use gtdata_generic, only: Open, Inquire, Close, Get
  use dc_string, only: toChar, Split, JoinChar, StoA
  use dc_url, only: GT_ATMARK, GT_COMMA, GT_EQUAL, UrlSplit, UrlMerge
  use dc_present, only: present_select, present_and_not_empty, present_and_true
  use regex,      only: match
  use dc_types, only: DP, STRING
  use dc_message, only: MessageNotify
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_error, only: StoreError, DC_NOERR, GT_ENOTURL, GT_ERANKMISMATCH, &
    & GT_EARGSIZEMISMATCH
  character(*), intent(in):: file
                    
  character(*), intent(in):: varname
                    
  character(*), intent(in), optional:: range
                    
  logical, intent(in), optional:: quiet
  integer, intent(out) :: array(:,:,:,:,:)
                    
  logical, intent(out), optional:: err
                    

                      integer, allocatable:: array_tmp(:)
  integer:: array_allsize
  integer:: array_shape(5), data_shape(5)
  integer:: allcount

                    
  type(GT_VARIABLE)             :: var
  character(STRING)             :: url, actual_url
  integer:: rank
  integer:: domain   ! 変数の入出力領域の大きさ
                     ! (= 変数が依存する各次元サイズの積)
  integer:: stat
  character(STRING):: cause_c
  character(*), parameter :: subname = "HistoryGetInt5"
  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file
      character(*), intent(in) :: varname
      character(*), intent(out) :: url
      character(*), intent(in), optional:: range
      logical, intent(out), optional :: err
    end subroutine lookup_growable_url
  end interface
  interface
    subroutine actual_iorange_dump(url, actual_url, err)
      character(*), intent(in) :: url            ! 変数 URL
      character(*), intent(out), optional :: actual_url
                                                 ! 正確な入出力範囲指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine actual_iorange_dump
  end interface
continue
  call BeginSub(subname, 'file=%c varname=%c range=%c', &
    & c1 = trim(file), c2 = trim(varname), &
    & c3 = trim(present_select('', 'no-range', range)))
  cause_c = ''
  stat = DC_NOERR

                      !-------------------------------------
  !  配列形状の取得
  !  Get array shape
  array_shape = shape( array )
  array_allsize = size( array )
                    


  !-------------------------------------
  !  最新時刻の URL 取得
  !  Get URL of latest time
  call lookup_growable_url(file, varname, url, range, err = err)
  if ( present_and_true(err) ) then
    stat = GT_ENOTURL
    cause_c = url
    goto 999
  end if

  !-------------------------------------
  !  ファイルオープン
  !  File open
  call Open( var, url, err = err )

  if ( present_and_true(err) ) then
    stat = GT_ENOTURL
    cause_c = url
    goto 999
  end if

  !-------------------------------------
  !  配列形状のチェック
  !  Check array shape
  call Inquire( var = var, & ! (in)
    & rank = rank )          ! (out)

  if ( .not. 5 == rank ) then
    if ( .not. present_and_true(quiet) ) then
      call MessageNotify('W', subname, &
        & 'Rank of data (%c) is "%d", rank of argument is "%d"', &
        & i = (/rank, 5/), c1 = trim(url) )
    end if
    stat = GT_ERANKMISMATCH
    cause_c = 'array'
    goto 999
  end if
                                            call Inquire( var = var , dimord = 1, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(1) = allcount
                      
  call Inquire( var = var , dimord = 2, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(2) = allcount
                      
  call Inquire( var = var , dimord = 3, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(3) = allcount
                      
  call Inquire( var = var , dimord = 4, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(4) = allcount
                      
  call Inquire( var = var , dimord = 5, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(5) = allcount
                      

  if ( .not. all( array_shape == data_shape ) ) then
    if ( .not. present_and_true(quiet) ) then
      call MessageNotify('W', subname, &
        & 'Shape of data (%c) is (%c), shape of argument is (%c)', &
        & c1 = trim( url ), &
        & c2 = trim( toChar( data_shape ) ), &
        & c3 = trim( toChar( array_shape ) ) )
    end if
    stat = GT_EARGSIZEMISMATCH
    cause_c = 'array'
    goto 999
  end if
                    

  !-------------------------------------
  !  データ取得
  !  Get data
  call Inquire( var = var, & ! (in)
    & size = domain )        ! (out)

                    
  if ( allocated( array_tmp ) ) deallocate( array_tmp )
  allocate( array_tmp(array_allsize) )
  call Get( var, array_tmp, domain )
  array = reshape( array_tmp, array_shape )
  deallocate( array_tmp )

                    

  call Close( var )

  !-------------------------------------
  !  データファイル名と切り出し範囲の印字
  !  Print data filename and clipping range
  call actual_iorange_dump(url, actual_url, err = err)
  if ( .not. present_and_true(quiet) ) then
    call MessageNotify('M', subname, 'Input %c', c1=trim(actual_url))
  end if

999 continue
  call StoreError(stat, subname, err, cause_c)
  call EndSub(subname)
end subroutine HistoryGetInt5


subroutine HistoryGetInt6(file, varname, array, range, quiet, err)
  !
  ! <b>Note that Japanese and English are described in parallel.</b>
  !
                      !
  ! 使用方法に関しては HistoryGet を参照してください.
  ! 
  ! See "HistoryGet", for basic usage.
  !
                    
  !
  use gtdata_types, only: GT_VARIABLE
  use gtdata_generic, only: Open, Inquire, Close, Get
  use dc_string, only: toChar, Split, JoinChar, StoA
  use dc_url, only: GT_ATMARK, GT_COMMA, GT_EQUAL, UrlSplit, UrlMerge
  use dc_present, only: present_select, present_and_not_empty, present_and_true
  use regex,      only: match
  use dc_types, only: DP, STRING
  use dc_message, only: MessageNotify
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_error, only: StoreError, DC_NOERR, GT_ENOTURL, GT_ERANKMISMATCH, &
    & GT_EARGSIZEMISMATCH
  character(*), intent(in):: file
                    
  character(*), intent(in):: varname
                    
  character(*), intent(in), optional:: range
                    
  logical, intent(in), optional:: quiet
  integer, intent(out) :: array(:,:,:,:,:,:)
                    
  logical, intent(out), optional:: err
                    

                      integer, allocatable:: array_tmp(:)
  integer:: array_allsize
  integer:: array_shape(6), data_shape(6)
  integer:: allcount

                    
  type(GT_VARIABLE)             :: var
  character(STRING)             :: url, actual_url
  integer:: rank
  integer:: domain   ! 変数の入出力領域の大きさ
                     ! (= 変数が依存する各次元サイズの積)
  integer:: stat
  character(STRING):: cause_c
  character(*), parameter :: subname = "HistoryGetInt6"
  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file
      character(*), intent(in) :: varname
      character(*), intent(out) :: url
      character(*), intent(in), optional:: range
      logical, intent(out), optional :: err
    end subroutine lookup_growable_url
  end interface
  interface
    subroutine actual_iorange_dump(url, actual_url, err)
      character(*), intent(in) :: url            ! 変数 URL
      character(*), intent(out), optional :: actual_url
                                                 ! 正確な入出力範囲指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine actual_iorange_dump
  end interface
continue
  call BeginSub(subname, 'file=%c varname=%c range=%c', &
    & c1 = trim(file), c2 = trim(varname), &
    & c3 = trim(present_select('', 'no-range', range)))
  cause_c = ''
  stat = DC_NOERR

                      !-------------------------------------
  !  配列形状の取得
  !  Get array shape
  array_shape = shape( array )
  array_allsize = size( array )
                    


  !-------------------------------------
  !  最新時刻の URL 取得
  !  Get URL of latest time
  call lookup_growable_url(file, varname, url, range, err = err)
  if ( present_and_true(err) ) then
    stat = GT_ENOTURL
    cause_c = url
    goto 999
  end if

  !-------------------------------------
  !  ファイルオープン
  !  File open
  call Open( var, url, err = err )

  if ( present_and_true(err) ) then
    stat = GT_ENOTURL
    cause_c = url
    goto 999
  end if

  !-------------------------------------
  !  配列形状のチェック
  !  Check array shape
  call Inquire( var = var, & ! (in)
    & rank = rank )          ! (out)

  if ( .not. 6 == rank ) then
    if ( .not. present_and_true(quiet) ) then
      call MessageNotify('W', subname, &
        & 'Rank of data (%c) is "%d", rank of argument is "%d"', &
        & i = (/rank, 6/), c1 = trim(url) )
    end if
    stat = GT_ERANKMISMATCH
    cause_c = 'array'
    goto 999
  end if
                                            call Inquire( var = var , dimord = 1, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(1) = allcount
                      
  call Inquire( var = var , dimord = 2, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(2) = allcount
                      
  call Inquire( var = var , dimord = 3, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(3) = allcount
                      
  call Inquire( var = var , dimord = 4, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(4) = allcount
                      
  call Inquire( var = var , dimord = 5, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(5) = allcount
                      
  call Inquire( var = var , dimord = 6, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(6) = allcount
                      

  if ( .not. all( array_shape == data_shape ) ) then
    if ( .not. present_and_true(quiet) ) then
      call MessageNotify('W', subname, &
        & 'Shape of data (%c) is (%c), shape of argument is (%c)', &
        & c1 = trim( url ), &
        & c2 = trim( toChar( data_shape ) ), &
        & c3 = trim( toChar( array_shape ) ) )
    end if
    stat = GT_EARGSIZEMISMATCH
    cause_c = 'array'
    goto 999
  end if
                    

  !-------------------------------------
  !  データ取得
  !  Get data
  call Inquire( var = var, & ! (in)
    & size = domain )        ! (out)

                    
  if ( allocated( array_tmp ) ) deallocate( array_tmp )
  allocate( array_tmp(array_allsize) )
  call Get( var, array_tmp, domain )
  array = reshape( array_tmp, array_shape )
  deallocate( array_tmp )

                    

  call Close( var )

  !-------------------------------------
  !  データファイル名と切り出し範囲の印字
  !  Print data filename and clipping range
  call actual_iorange_dump(url, actual_url, err = err)
  if ( .not. present_and_true(quiet) ) then
    call MessageNotify('M', subname, 'Input %c', c1=trim(actual_url))
  end if

999 continue
  call StoreError(stat, subname, err, cause_c)
  call EndSub(subname)
end subroutine HistoryGetInt6


subroutine HistoryGetInt7(file, varname, array, range, quiet, err)
  !
  ! <b>Note that Japanese and English are described in parallel.</b>
  !
                      !
  ! 使用方法に関しては HistoryGet を参照してください.
  ! 
  ! See "HistoryGet", for basic usage.
  !
                    
  !
  use gtdata_types, only: GT_VARIABLE
  use gtdata_generic, only: Open, Inquire, Close, Get
  use dc_string, only: toChar, Split, JoinChar, StoA
  use dc_url, only: GT_ATMARK, GT_COMMA, GT_EQUAL, UrlSplit, UrlMerge
  use dc_present, only: present_select, present_and_not_empty, present_and_true
  use regex,      only: match
  use dc_types, only: DP, STRING
  use dc_message, only: MessageNotify
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_error, only: StoreError, DC_NOERR, GT_ENOTURL, GT_ERANKMISMATCH, &
    & GT_EARGSIZEMISMATCH
  character(*), intent(in):: file
                    
  character(*), intent(in):: varname
                    
  character(*), intent(in), optional:: range
                    
  logical, intent(in), optional:: quiet
  integer, intent(out) :: array(:,:,:,:,:,:,:)
                    
  logical, intent(out), optional:: err
                    

                      integer, allocatable:: array_tmp(:)
  integer:: array_allsize
  integer:: array_shape(7), data_shape(7)
  integer:: allcount

                    
  type(GT_VARIABLE)             :: var
  character(STRING)             :: url, actual_url
  integer:: rank
  integer:: domain   ! 変数の入出力領域の大きさ
                     ! (= 変数が依存する各次元サイズの積)
  integer:: stat
  character(STRING):: cause_c
  character(*), parameter :: subname = "HistoryGetInt7"
  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file
      character(*), intent(in) :: varname
      character(*), intent(out) :: url
      character(*), intent(in), optional:: range
      logical, intent(out), optional :: err
    end subroutine lookup_growable_url
  end interface
  interface
    subroutine actual_iorange_dump(url, actual_url, err)
      character(*), intent(in) :: url            ! 変数 URL
      character(*), intent(out), optional :: actual_url
                                                 ! 正確な入出力範囲指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine actual_iorange_dump
  end interface
continue
  call BeginSub(subname, 'file=%c varname=%c range=%c', &
    & c1 = trim(file), c2 = trim(varname), &
    & c3 = trim(present_select('', 'no-range', range)))
  cause_c = ''
  stat = DC_NOERR

                      !-------------------------------------
  !  配列形状の取得
  !  Get array shape
  array_shape = shape( array )
  array_allsize = size( array )
                    


  !-------------------------------------
  !  最新時刻の URL 取得
  !  Get URL of latest time
  call lookup_growable_url(file, varname, url, range, err = err)
  if ( present_and_true(err) ) then
    stat = GT_ENOTURL
    cause_c = url
    goto 999
  end if

  !-------------------------------------
  !  ファイルオープン
  !  File open
  call Open( var, url, err = err )

  if ( present_and_true(err) ) then
    stat = GT_ENOTURL
    cause_c = url
    goto 999
  end if

  !-------------------------------------
  !  配列形状のチェック
  !  Check array shape
  call Inquire( var = var, & ! (in)
    & rank = rank )          ! (out)

  if ( .not. 7 == rank ) then
    if ( .not. present_and_true(quiet) ) then
      call MessageNotify('W', subname, &
        & 'Rank of data (%c) is "%d", rank of argument is "%d"', &
        & i = (/rank, 7/), c1 = trim(url) )
    end if
    stat = GT_ERANKMISMATCH
    cause_c = 'array'
    goto 999
  end if
                                            call Inquire( var = var , dimord = 1, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(1) = allcount
                      
  call Inquire( var = var , dimord = 2, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(2) = allcount
                      
  call Inquire( var = var , dimord = 3, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(3) = allcount
                      
  call Inquire( var = var , dimord = 4, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(4) = allcount
                      
  call Inquire( var = var , dimord = 5, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(5) = allcount
                      
  call Inquire( var = var , dimord = 6, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(6) = allcount
                      
  call Inquire( var = var , dimord = 7, & ! (in)
    & allcount = allcount )                      ! (out)
  data_shape(7) = allcount
                      

  if ( .not. all( array_shape == data_shape ) ) then
    if ( .not. present_and_true(quiet) ) then
      call MessageNotify('W', subname, &
        & 'Shape of data (%c) is (%c), shape of argument is (%c)', &
        & c1 = trim( url ), &
        & c2 = trim( toChar( data_shape ) ), &
        & c3 = trim( toChar( array_shape ) ) )
    end if
    stat = GT_EARGSIZEMISMATCH
    cause_c = 'array'
    goto 999
  end if
                    

  !-------------------------------------
  !  データ取得
  !  Get data
  call Inquire( var = var, & ! (in)
    & size = domain )        ! (out)

                    
  if ( allocated( array_tmp ) ) deallocate( array_tmp )
  allocate( array_tmp(array_allsize) )
  call Get( var, array_tmp, domain )
  array = reshape( array_tmp, array_shape )
  deallocate( array_tmp )

                    

  call Close( var )

  !-------------------------------------
  !  データファイル名と切り出し範囲の印字
  !  Print data filename and clipping range
  call actual_iorange_dump(url, actual_url, err = err)
  if ( .not. present_and_true(quiet) ) then
    call MessageNotify('M', subname, 'Input %c', c1=trim(actual_url))
  end if

999 continue
  call StoreError(stat, subname, err, cause_c)
  call EndSub(subname)
end subroutine HistoryGetInt7


subroutine HistoryGetDouble0Pointer(file, varname, array, range, quiet, err)
  !
  ! <b>Note that Japanese and English are described in parallel.</b>
  !
                                            ! netCDF データを入力します. gtool4 netCDF 規約に基づくデータを想定
  ! していますが, 大抵の netCDF データの入力は可能であると期待されます.
  !
  ! 基本的な使い方に関しては HistoryGet を参照してください. 
  ! HistoryGet との違いは, *array* にポインタ配列を与えることです.
  ! *array* には必ず空状態の配列を与えてください. 
  ! すなわち与える配列に対し, 初期値 =>null() を設定するか 
  ! nullify を用いてください. 
  ! 既に割り付けられている場合, もしくは不定状態の場合には
  ! エラーを返します. 
  !
  ! Input netCDF data. NetCDF data with gtool4 conventions is assumed,
  ! but most netCDF data is expected to be input.
  !
  ! See "HistoryGet", for basic usage.
  ! Difference from "HistoryGet" is that *array* is pointer array.
  ! Give null array to *array*. 
  ! More specifically, use '=>null()' as initial value or 
  ! use 'nullify' to the array. 
  ! If the array is allocated already, or undefined, 
  ! error is occurred. 
  !
                      
                    
  !
  use gtdata_types, only: GT_VARIABLE
  use gtdata_generic, only: Open, Inquire, Close, Get
  use dc_string, only: toChar
  use dc_present,only: present_select, present_and_true
  use dc_types, only: DP, STRING
  use dc_message, only: MessageNotify
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  character(*), intent(in):: file
  character(*), intent(in):: varname
  character(*), intent(in), optional:: range
  logical, intent(in), optional:: quiet
  real(DP), pointer :: array ! (out)
                                                                        ! 
                              ! 取得するデータを格納する
                              ! ポインタ配列. 
                              !
                              ! 必ず空状態の配列を与えてください. 
                              ! すなわち与える配列に対し, 初期値 =>null() 
                              ! を設定するか nullify を用いて
                              ! ください.  既に割り付けられている場合, 
                              ! もしくは不定状態の場合にはエラーを返し
                              ! ます.
                              !
                              ! 型は整数型, 単精度実数型, 倍精度実数型
                              ! かのいづれかです. 入力するデータ
                              ! の型と *array* の型が異なる場合は, 自
                              ! 動的に *array* の型に変換されます.
                              ! 
                              ! Array in which input data is store. 
                              !
                              ! Give null array to *array*.  More
                              ! specifically, use '=>null()' as
                              ! initial value or use 'nullify' to the
                              ! array.  If the array is allocated
                              ! already, or undefined, error is
                              ! occurred.
                              !
                              ! Type is integer or single precision
                              ! real or double precision real. When type of
                              ! input data is different from type of
                              ! *array*, data is converted to type of
                              ! *array* automatically.
                              ! 
                      
                    
  logical, intent(out), optional:: err

                      real(DP), target :: array_tmp(1)
  integer:: domain            ! 変数の入出力領域の大きさ
                              ! (= 変数が依存する各次元サイズの積)
                    
  type(GT_VARIABLE)                  :: var
  character(STRING)                  :: url, actual_url
  character(*), parameter :: subname = "HistoryGetDouble0Pointer"
  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface
  interface
    subroutine actual_iorange_dump(url, actual_url, err)
      character(*), intent(in) :: url            ! 変数 URL
      character(*), intent(out), optional :: actual_url
                                                 ! 正確な入出力範囲指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine actual_iorange_dump
  end interface
continue
  call BeginSub(subname, 'file=%c varname=%c range=%c', &
    & c1=trim(file), c2=trim(varname), &
    & c3=trim(present_select('', 'no-range', range)))
  ! 必要な情報を gtool 変数化
  call lookup_growable_url(file, varname, url, range, err)

                      allocate(array)
                    
  call DbgMessage('@ url =%c', c1=trim(url))
  ! いよいよデータ取得
  call Open(var, url, err)

                    
  call Inquire(var=var, size=domain)
  call Get(var, array_tmp, domain, err)
  array = array_tmp(1)

                    

  call Close(var, err)
  call actual_iorange_dump(url, actual_url, err)
  if ( .not. present_and_true(quiet) ) then
    call MessageNotify('M', subname, 'Input %c', c1=trim(actual_url))
  end if
  call EndSub(subname)
end subroutine HistoryGetDouble0Pointer


subroutine HistoryGetDouble1Pointer(file, varname, array, range, quiet, err)
  !
  ! <b>Note that Japanese and English are described in parallel.</b>
  !
                                            ! 使用方法に関しては HistoryGetPointer を参照してください.
  ! 
  ! See "HistoryGetPointer", for basic usage.
  !
                      
                    
  !
  use gtdata_types, only: GT_VARIABLE
  use gtdata_generic, only: Open, Inquire, Close, Get
  use dc_string, only: toChar
  use dc_present,only: present_select, present_and_true
  use dc_types, only: DP, STRING
  use dc_message, only: MessageNotify
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  character(*), intent(in):: file
  character(*), intent(in):: varname
  character(*), intent(in), optional:: range
  logical, intent(in), optional:: quiet
  real(DP), pointer :: array(:) ! (out)
                                          
                    
  logical, intent(out), optional:: err

                    
  type(GT_VARIABLE)                  :: var
  character(STRING)                  :: url, actual_url
  character(*), parameter :: subname = "HistoryGetDouble1Pointer"
  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface
  interface
    subroutine actual_iorange_dump(url, actual_url, err)
      character(*), intent(in) :: url            ! 変数 URL
      character(*), intent(out), optional :: actual_url
                                                 ! 正確な入出力範囲指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine actual_iorange_dump
  end interface
continue
  call BeginSub(subname, 'file=%c varname=%c range=%c', &
    & c1=trim(file), c2=trim(varname), &
    & c3=trim(present_select('', 'no-range', range)))
  ! 必要な情報を gtool 変数化
  call lookup_growable_url(file, varname, url, range, err)

                    
  call DbgMessage('@ url =%c', c1=trim(url))
  ! いよいよデータ取得
  call Open(var, url, err)

                    
  call Get(var, array, err)

                    

  call Close(var, err)
  call actual_iorange_dump(url, actual_url, err)
  if ( .not. present_and_true(quiet) ) then
    call MessageNotify('M', subname, 'Input %c', c1=trim(actual_url))
  end if
  call EndSub(subname)
end subroutine HistoryGetDouble1Pointer


subroutine HistoryGetDouble2Pointer(file, varname, array, range, quiet, err)
  !
  ! <b>Note that Japanese and English are described in parallel.</b>
  !
                                            ! 使用方法に関しては HistoryGetPointer を参照してください.
  ! 
  ! See "HistoryGetPointer", for basic usage.
  !
                      
                    
  !
  use gtdata_types, only: GT_VARIABLE
  use gtdata_generic, only: Open, Inquire, Close, Get
  use dc_string, only: toChar
  use dc_present,only: present_select, present_and_true
  use dc_types, only: DP, STRING
  use dc_message, only: MessageNotify
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  character(*), intent(in):: file
  character(*), intent(in):: varname
  character(*), intent(in), optional:: range
  logical, intent(in), optional:: quiet
  real(DP), pointer :: array(:,:) ! (out)
                                          
                    
  logical, intent(out), optional:: err

                    
  type(GT_VARIABLE)                  :: var
  character(STRING)                  :: url, actual_url
  character(*), parameter :: subname = "HistoryGetDouble2Pointer"
  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface
  interface
    subroutine actual_iorange_dump(url, actual_url, err)
      character(*), intent(in) :: url            ! 変数 URL
      character(*), intent(out), optional :: actual_url
                                                 ! 正確な入出力範囲指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine actual_iorange_dump
  end interface
continue
  call BeginSub(subname, 'file=%c varname=%c range=%c', &
    & c1=trim(file), c2=trim(varname), &
    & c3=trim(present_select('', 'no-range', range)))
  ! 必要な情報を gtool 変数化
  call lookup_growable_url(file, varname, url, range, err)

                    
  call DbgMessage('@ url =%c', c1=trim(url))
  ! いよいよデータ取得
  call Open(var, url, err)

                    
  call Get(var, array, err)

                    

  call Close(var, err)
  call actual_iorange_dump(url, actual_url, err)
  if ( .not. present_and_true(quiet) ) then
    call MessageNotify('M', subname, 'Input %c', c1=trim(actual_url))
  end if
  call EndSub(subname)
end subroutine HistoryGetDouble2Pointer


subroutine HistoryGetDouble3Pointer(file, varname, array, range, quiet, err)
  !
  ! <b>Note that Japanese and English are described in parallel.</b>
  !
                                            ! 使用方法に関しては HistoryGetPointer を参照してください.
  ! 
  ! See "HistoryGetPointer", for basic usage.
  !
                      
                    
  !
  use gtdata_types, only: GT_VARIABLE
  use gtdata_generic, only: Open, Inquire, Close, Get
  use dc_string, only: toChar
  use dc_present,only: present_select, present_and_true
  use dc_types, only: DP, STRING
  use dc_message, only: MessageNotify
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  character(*), intent(in):: file
  character(*), intent(in):: varname
  character(*), intent(in), optional:: range
  logical, intent(in), optional:: quiet
  real(DP), pointer :: array(:,:,:) ! (out)
                                          
                    
  logical, intent(out), optional:: err

                    
  type(GT_VARIABLE)                  :: var
  character(STRING)                  :: url, actual_url
  character(*), parameter :: subname = "HistoryGetDouble3Pointer"
  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface
  interface
    subroutine actual_iorange_dump(url, actual_url, err)
      character(*), intent(in) :: url            ! 変数 URL
      character(*), intent(out), optional :: actual_url
                                                 ! 正確な入出力範囲指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine actual_iorange_dump
  end interface
continue
  call BeginSub(subname, 'file=%c varname=%c range=%c', &
    & c1=trim(file), c2=trim(varname), &
    & c3=trim(present_select('', 'no-range', range)))
  ! 必要な情報を gtool 変数化
  call lookup_growable_url(file, varname, url, range, err)

                    
  call DbgMessage('@ url =%c', c1=trim(url))
  ! いよいよデータ取得
  call Open(var, url, err)

                    
  call Get(var, array, err)

                    

  call Close(var, err)
  call actual_iorange_dump(url, actual_url, err)
  if ( .not. present_and_true(quiet) ) then
    call MessageNotify('M', subname, 'Input %c', c1=trim(actual_url))
  end if
  call EndSub(subname)
end subroutine HistoryGetDouble3Pointer


subroutine HistoryGetDouble4Pointer(file, varname, array, range, quiet, err)
  !
  ! <b>Note that Japanese and English are described in parallel.</b>
  !
                                            ! 使用方法に関しては HistoryGetPointer を参照してください.
  ! 
  ! See "HistoryGetPointer", for basic usage.
  !
                      
                    
  !
  use gtdata_types, only: GT_VARIABLE
  use gtdata_generic, only: Open, Inquire, Close, Get
  use dc_string, only: toChar
  use dc_present,only: present_select, present_and_true
  use dc_types, only: DP, STRING
  use dc_message, only: MessageNotify
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  character(*), intent(in):: file
  character(*), intent(in):: varname
  character(*), intent(in), optional:: range
  logical, intent(in), optional:: quiet
  real(DP), pointer :: array(:,:,:,:) ! (out)
                                          
                    
  logical, intent(out), optional:: err

                    
  type(GT_VARIABLE)                  :: var
  character(STRING)                  :: url, actual_url
  character(*), parameter :: subname = "HistoryGetDouble4Pointer"
  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface
  interface
    subroutine actual_iorange_dump(url, actual_url, err)
      character(*), intent(in) :: url            ! 変数 URL
      character(*), intent(out), optional :: actual_url
                                                 ! 正確な入出力範囲指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine actual_iorange_dump
  end interface
continue
  call BeginSub(subname, 'file=%c varname=%c range=%c', &
    & c1=trim(file), c2=trim(varname), &
    & c3=trim(present_select('', 'no-range', range)))
  ! 必要な情報を gtool 変数化
  call lookup_growable_url(file, varname, url, range, err)

                    
  call DbgMessage('@ url =%c', c1=trim(url))
  ! いよいよデータ取得
  call Open(var, url, err)

                    
  call Get(var, array, err)

                    

  call Close(var, err)
  call actual_iorange_dump(url, actual_url, err)
  if ( .not. present_and_true(quiet) ) then
    call MessageNotify('M', subname, 'Input %c', c1=trim(actual_url))
  end if
  call EndSub(subname)
end subroutine HistoryGetDouble4Pointer


subroutine HistoryGetDouble5Pointer(file, varname, array, range, quiet, err)
  !
  ! <b>Note that Japanese and English are described in parallel.</b>
  !
                                            ! 使用方法に関しては HistoryGetPointer を参照してください.
  ! 
  ! See "HistoryGetPointer", for basic usage.
  !
                      
                    
  !
  use gtdata_types, only: GT_VARIABLE
  use gtdata_generic, only: Open, Inquire, Close, Get
  use dc_string, only: toChar
  use dc_present,only: present_select, present_and_true
  use dc_types, only: DP, STRING
  use dc_message, only: MessageNotify
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  character(*), intent(in):: file
  character(*), intent(in):: varname
  character(*), intent(in), optional:: range
  logical, intent(in), optional:: quiet
  real(DP), pointer :: array(:,:,:,:,:) ! (out)
                                          
                    
  logical, intent(out), optional:: err

                    
  type(GT_VARIABLE)                  :: var
  character(STRING)                  :: url, actual_url
  character(*), parameter :: subname = "HistoryGetDouble5Pointer"
  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface
  interface
    subroutine actual_iorange_dump(url, actual_url, err)
      character(*), intent(in) :: url            ! 変数 URL
      character(*), intent(out), optional :: actual_url
                                                 ! 正確な入出力範囲指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine actual_iorange_dump
  end interface
continue
  call BeginSub(subname, 'file=%c varname=%c range=%c', &
    & c1=trim(file), c2=trim(varname), &
    & c3=trim(present_select('', 'no-range', range)))
  ! 必要な情報を gtool 変数化
  call lookup_growable_url(file, varname, url, range, err)

                    
  call DbgMessage('@ url =%c', c1=trim(url))
  ! いよいよデータ取得
  call Open(var, url, err)

                    
  call Get(var, array, err)

                    

  call Close(var, err)
  call actual_iorange_dump(url, actual_url, err)
  if ( .not. present_and_true(quiet) ) then
    call MessageNotify('M', subname, 'Input %c', c1=trim(actual_url))
  end if
  call EndSub(subname)
end subroutine HistoryGetDouble5Pointer


subroutine HistoryGetDouble6Pointer(file, varname, array, range, quiet, err)
  !
  ! <b>Note that Japanese and English are described in parallel.</b>
  !
                                            ! 使用方法に関しては HistoryGetPointer を参照してください.
  ! 
  ! See "HistoryGetPointer", for basic usage.
  !
                      
                    
  !
  use gtdata_types, only: GT_VARIABLE
  use gtdata_generic, only: Open, Inquire, Close, Get
  use dc_string, only: toChar
  use dc_present,only: present_select, present_and_true
  use dc_types, only: DP, STRING
  use dc_message, only: MessageNotify
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  character(*), intent(in):: file
  character(*), intent(in):: varname
  character(*), intent(in), optional:: range
  logical, intent(in), optional:: quiet
  real(DP), pointer :: array(:,:,:,:,:,:) ! (out)
                                          
                    
  logical, intent(out), optional:: err

                    
  type(GT_VARIABLE)                  :: var
  character(STRING)                  :: url, actual_url
  character(*), parameter :: subname = "HistoryGetDouble6Pointer"
  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface
  interface
    subroutine actual_iorange_dump(url, actual_url, err)
      character(*), intent(in) :: url            ! 変数 URL
      character(*), intent(out), optional :: actual_url
                                                 ! 正確な入出力範囲指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine actual_iorange_dump
  end interface
continue
  call BeginSub(subname, 'file=%c varname=%c range=%c', &
    & c1=trim(file), c2=trim(varname), &
    & c3=trim(present_select('', 'no-range', range)))
  ! 必要な情報を gtool 変数化
  call lookup_growable_url(file, varname, url, range, err)

                    
  call DbgMessage('@ url =%c', c1=trim(url))
  ! いよいよデータ取得
  call Open(var, url, err)

                    
  call Get(var, array, err)

                    

  call Close(var, err)
  call actual_iorange_dump(url, actual_url, err)
  if ( .not. present_and_true(quiet) ) then
    call MessageNotify('M', subname, 'Input %c', c1=trim(actual_url))
  end if
  call EndSub(subname)
end subroutine HistoryGetDouble6Pointer


subroutine HistoryGetDouble7Pointer(file, varname, array, range, quiet, err)
  !
  ! <b>Note that Japanese and English are described in parallel.</b>
  !
                                            ! 使用方法に関しては HistoryGetPointer を参照してください.
  ! 
  ! See "HistoryGetPointer", for basic usage.
  !
                      
                    
  !
  use gtdata_types, only: GT_VARIABLE
  use gtdata_generic, only: Open, Inquire, Close, Get
  use dc_string, only: toChar
  use dc_present,only: present_select, present_and_true
  use dc_types, only: DP, STRING
  use dc_message, only: MessageNotify
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  character(*), intent(in):: file
  character(*), intent(in):: varname
  character(*), intent(in), optional:: range
  logical, intent(in), optional:: quiet
  real(DP), pointer :: array(:,:,:,:,:,:,:) ! (out)
                                          
                    
  logical, intent(out), optional:: err

                    
  type(GT_VARIABLE)                  :: var
  character(STRING)                  :: url, actual_url
  character(*), parameter :: subname = "HistoryGetDouble7Pointer"
  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface
  interface
    subroutine actual_iorange_dump(url, actual_url, err)
      character(*), intent(in) :: url            ! 変数 URL
      character(*), intent(out), optional :: actual_url
                                                 ! 正確な入出力範囲指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine actual_iorange_dump
  end interface
continue
  call BeginSub(subname, 'file=%c varname=%c range=%c', &
    & c1=trim(file), c2=trim(varname), &
    & c3=trim(present_select('', 'no-range', range)))
  ! 必要な情報を gtool 変数化
  call lookup_growable_url(file, varname, url, range, err)

                    
  call DbgMessage('@ url =%c', c1=trim(url))
  ! いよいよデータ取得
  call Open(var, url, err)

                    
  call Get(var, array, err)

                    

  call Close(var, err)
  call actual_iorange_dump(url, actual_url, err)
  if ( .not. present_and_true(quiet) ) then
    call MessageNotify('M', subname, 'Input %c', c1=trim(actual_url))
  end if
  call EndSub(subname)
end subroutine HistoryGetDouble7Pointer


subroutine HistoryGetReal0Pointer(file, varname, array, range, quiet, err)
  !
  ! <b>Note that Japanese and English are described in parallel.</b>
  !
                      ! 使用方法に関しては HistoryGetPointer を参照してください.
  ! 
  ! See "HistoryGetPointer", for basic usage.
  !
                    
  !
  use gtdata_types, only: GT_VARIABLE
  use gtdata_generic, only: Open, Inquire, Close, Get
  use dc_string, only: toChar
  use dc_present,only: present_select, present_and_true
  use dc_types, only: DP, STRING
  use dc_message, only: MessageNotify
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  character(*), intent(in):: file
  character(*), intent(in):: varname
  character(*), intent(in), optional:: range
  logical, intent(in), optional:: quiet
  real, pointer :: array ! (out)
                    
  logical, intent(out), optional:: err

                      real, target :: array_tmp(1)
  integer:: domain            ! 変数の入出力領域の大きさ
                              ! (= 変数が依存する各次元サイズの積)
                    
  type(GT_VARIABLE)                  :: var
  character(STRING)                  :: url, actual_url
  character(*), parameter :: subname = "HistoryGetReal0Pointer"
  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface
  interface
    subroutine actual_iorange_dump(url, actual_url, err)
      character(*), intent(in) :: url            ! 変数 URL
      character(*), intent(out), optional :: actual_url
                                                 ! 正確な入出力範囲指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine actual_iorange_dump
  end interface
continue
  call BeginSub(subname, 'file=%c varname=%c range=%c', &
    & c1=trim(file), c2=trim(varname), &
    & c3=trim(present_select('', 'no-range', range)))
  ! 必要な情報を gtool 変数化
  call lookup_growable_url(file, varname, url, range, err)

                      allocate(array)
                    
  call DbgMessage('@ url =%c', c1=trim(url))
  ! いよいよデータ取得
  call Open(var, url, err)

                    
  call Inquire(var=var, size=domain)
  call Get(var, array_tmp, domain, err)
  array = array_tmp(1)

                    

  call Close(var, err)
  call actual_iorange_dump(url, actual_url, err)
  if ( .not. present_and_true(quiet) ) then
    call MessageNotify('M', subname, 'Input %c', c1=trim(actual_url))
  end if
  call EndSub(subname)
end subroutine HistoryGetReal0Pointer


subroutine HistoryGetReal1Pointer(file, varname, array, range, quiet, err)
  !
  ! <b>Note that Japanese and English are described in parallel.</b>
  !
                      ! 使用方法に関しては HistoryGetPointer を参照してください.
  ! 
  ! See "HistoryGetPointer", for basic usage.
  !
                    
  !
  use gtdata_types, only: GT_VARIABLE
  use gtdata_generic, only: Open, Inquire, Close, Get
  use dc_string, only: toChar
  use dc_present,only: present_select, present_and_true
  use dc_types, only: DP, STRING
  use dc_message, only: MessageNotify
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  character(*), intent(in):: file
  character(*), intent(in):: varname
  character(*), intent(in), optional:: range
  logical, intent(in), optional:: quiet
  real, pointer :: array(:) ! (out)
                    
  logical, intent(out), optional:: err

                    
  type(GT_VARIABLE)                  :: var
  character(STRING)                  :: url, actual_url
  character(*), parameter :: subname = "HistoryGetReal1Pointer"
  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface
  interface
    subroutine actual_iorange_dump(url, actual_url, err)
      character(*), intent(in) :: url            ! 変数 URL
      character(*), intent(out), optional :: actual_url
                                                 ! 正確な入出力範囲指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine actual_iorange_dump
  end interface
continue
  call BeginSub(subname, 'file=%c varname=%c range=%c', &
    & c1=trim(file), c2=trim(varname), &
    & c3=trim(present_select('', 'no-range', range)))
  ! 必要な情報を gtool 変数化
  call lookup_growable_url(file, varname, url, range, err)

                    
  call DbgMessage('@ url =%c', c1=trim(url))
  ! いよいよデータ取得
  call Open(var, url, err)

                    
  call Get(var, array, err)

                    

  call Close(var, err)
  call actual_iorange_dump(url, actual_url, err)
  if ( .not. present_and_true(quiet) ) then
    call MessageNotify('M', subname, 'Input %c', c1=trim(actual_url))
  end if
  call EndSub(subname)
end subroutine HistoryGetReal1Pointer


subroutine HistoryGetReal2Pointer(file, varname, array, range, quiet, err)
  !
  ! <b>Note that Japanese and English are described in parallel.</b>
  !
                      ! 使用方法に関しては HistoryGetPointer を参照してください.
  ! 
  ! See "HistoryGetPointer", for basic usage.
  !
                    
  !
  use gtdata_types, only: GT_VARIABLE
  use gtdata_generic, only: Open, Inquire, Close, Get
  use dc_string, only: toChar
  use dc_present,only: present_select, present_and_true
  use dc_types, only: DP, STRING
  use dc_message, only: MessageNotify
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  character(*), intent(in):: file
  character(*), intent(in):: varname
  character(*), intent(in), optional:: range
  logical, intent(in), optional:: quiet
  real, pointer :: array(:,:) ! (out)
                    
  logical, intent(out), optional:: err

                    
  type(GT_VARIABLE)                  :: var
  character(STRING)                  :: url, actual_url
  character(*), parameter :: subname = "HistoryGetReal2Pointer"
  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface
  interface
    subroutine actual_iorange_dump(url, actual_url, err)
      character(*), intent(in) :: url            ! 変数 URL
      character(*), intent(out), optional :: actual_url
                                                 ! 正確な入出力範囲指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine actual_iorange_dump
  end interface
continue
  call BeginSub(subname, 'file=%c varname=%c range=%c', &
    & c1=trim(file), c2=trim(varname), &
    & c3=trim(present_select('', 'no-range', range)))
  ! 必要な情報を gtool 変数化
  call lookup_growable_url(file, varname, url, range, err)

                    
  call DbgMessage('@ url =%c', c1=trim(url))
  ! いよいよデータ取得
  call Open(var, url, err)

                    
  call Get(var, array, err)

                    

  call Close(var, err)
  call actual_iorange_dump(url, actual_url, err)
  if ( .not. present_and_true(quiet) ) then
    call MessageNotify('M', subname, 'Input %c', c1=trim(actual_url))
  end if
  call EndSub(subname)
end subroutine HistoryGetReal2Pointer


subroutine HistoryGetReal3Pointer(file, varname, array, range, quiet, err)
  !
  ! <b>Note that Japanese and English are described in parallel.</b>
  !
                      ! 使用方法に関しては HistoryGetPointer を参照してください.
  ! 
  ! See "HistoryGetPointer", for basic usage.
  !
                    
  !
  use gtdata_types, only: GT_VARIABLE
  use gtdata_generic, only: Open, Inquire, Close, Get
  use dc_string, only: toChar
  use dc_present,only: present_select, present_and_true
  use dc_types, only: DP, STRING
  use dc_message, only: MessageNotify
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  character(*), intent(in):: file
  character(*), intent(in):: varname
  character(*), intent(in), optional:: range
  logical, intent(in), optional:: quiet
  real, pointer :: array(:,:,:) ! (out)
                    
  logical, intent(out), optional:: err

                    
  type(GT_VARIABLE)                  :: var
  character(STRING)                  :: url, actual_url
  character(*), parameter :: subname = "HistoryGetReal3Pointer"
  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface
  interface
    subroutine actual_iorange_dump(url, actual_url, err)
      character(*), intent(in) :: url            ! 変数 URL
      character(*), intent(out), optional :: actual_url
                                                 ! 正確な入出力範囲指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine actual_iorange_dump
  end interface
continue
  call BeginSub(subname, 'file=%c varname=%c range=%c', &
    & c1=trim(file), c2=trim(varname), &
    & c3=trim(present_select('', 'no-range', range)))
  ! 必要な情報を gtool 変数化
  call lookup_growable_url(file, varname, url, range, err)

                    
  call DbgMessage('@ url =%c', c1=trim(url))
  ! いよいよデータ取得
  call Open(var, url, err)

                    
  call Get(var, array, err)

                    

  call Close(var, err)
  call actual_iorange_dump(url, actual_url, err)
  if ( .not. present_and_true(quiet) ) then
    call MessageNotify('M', subname, 'Input %c', c1=trim(actual_url))
  end if
  call EndSub(subname)
end subroutine HistoryGetReal3Pointer


subroutine HistoryGetReal4Pointer(file, varname, array, range, quiet, err)
  !
  ! <b>Note that Japanese and English are described in parallel.</b>
  !
                      ! 使用方法に関しては HistoryGetPointer を参照してください.
  ! 
  ! See "HistoryGetPointer", for basic usage.
  !
                    
  !
  use gtdata_types, only: GT_VARIABLE
  use gtdata_generic, only: Open, Inquire, Close, Get
  use dc_string, only: toChar
  use dc_present,only: present_select, present_and_true
  use dc_types, only: DP, STRING
  use dc_message, only: MessageNotify
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  character(*), intent(in):: file
  character(*), intent(in):: varname
  character(*), intent(in), optional:: range
  logical, intent(in), optional:: quiet
  real, pointer :: array(:,:,:,:) ! (out)
                    
  logical, intent(out), optional:: err

                    
  type(GT_VARIABLE)                  :: var
  character(STRING)                  :: url, actual_url
  character(*), parameter :: subname = "HistoryGetReal4Pointer"
  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface
  interface
    subroutine actual_iorange_dump(url, actual_url, err)
      character(*), intent(in) :: url            ! 変数 URL
      character(*), intent(out), optional :: actual_url
                                                 ! 正確な入出力範囲指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine actual_iorange_dump
  end interface
continue
  call BeginSub(subname, 'file=%c varname=%c range=%c', &
    & c1=trim(file), c2=trim(varname), &
    & c3=trim(present_select('', 'no-range', range)))
  ! 必要な情報を gtool 変数化
  call lookup_growable_url(file, varname, url, range, err)

                    
  call DbgMessage('@ url =%c', c1=trim(url))
  ! いよいよデータ取得
  call Open(var, url, err)

                    
  call Get(var, array, err)

                    

  call Close(var, err)
  call actual_iorange_dump(url, actual_url, err)
  if ( .not. present_and_true(quiet) ) then
    call MessageNotify('M', subname, 'Input %c', c1=trim(actual_url))
  end if
  call EndSub(subname)
end subroutine HistoryGetReal4Pointer


subroutine HistoryGetReal5Pointer(file, varname, array, range, quiet, err)
  !
  ! <b>Note that Japanese and English are described in parallel.</b>
  !
                      ! 使用方法に関しては HistoryGetPointer を参照してください.
  ! 
  ! See "HistoryGetPointer", for basic usage.
  !
                    
  !
  use gtdata_types, only: GT_VARIABLE
  use gtdata_generic, only: Open, Inquire, Close, Get
  use dc_string, only: toChar
  use dc_present,only: present_select, present_and_true
  use dc_types, only: DP, STRING
  use dc_message, only: MessageNotify
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  character(*), intent(in):: file
  character(*), intent(in):: varname
  character(*), intent(in), optional:: range
  logical, intent(in), optional:: quiet
  real, pointer :: array(:,:,:,:,:) ! (out)
                    
  logical, intent(out), optional:: err

                    
  type(GT_VARIABLE)                  :: var
  character(STRING)                  :: url, actual_url
  character(*), parameter :: subname = "HistoryGetReal5Pointer"
  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface
  interface
    subroutine actual_iorange_dump(url, actual_url, err)
      character(*), intent(in) :: url            ! 変数 URL
      character(*), intent(out), optional :: actual_url
                                                 ! 正確な入出力範囲指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine actual_iorange_dump
  end interface
continue
  call BeginSub(subname, 'file=%c varname=%c range=%c', &
    & c1=trim(file), c2=trim(varname), &
    & c3=trim(present_select('', 'no-range', range)))
  ! 必要な情報を gtool 変数化
  call lookup_growable_url(file, varname, url, range, err)

                    
  call DbgMessage('@ url =%c', c1=trim(url))
  ! いよいよデータ取得
  call Open(var, url, err)

                    
  call Get(var, array, err)

                    

  call Close(var, err)
  call actual_iorange_dump(url, actual_url, err)
  if ( .not. present_and_true(quiet) ) then
    call MessageNotify('M', subname, 'Input %c', c1=trim(actual_url))
  end if
  call EndSub(subname)
end subroutine HistoryGetReal5Pointer


subroutine HistoryGetReal6Pointer(file, varname, array, range, quiet, err)
  !
  ! <b>Note that Japanese and English are described in parallel.</b>
  !
                      ! 使用方法に関しては HistoryGetPointer を参照してください.
  ! 
  ! See "HistoryGetPointer", for basic usage.
  !
                    
  !
  use gtdata_types, only: GT_VARIABLE
  use gtdata_generic, only: Open, Inquire, Close, Get
  use dc_string, only: toChar
  use dc_present,only: present_select, present_and_true
  use dc_types, only: DP, STRING
  use dc_message, only: MessageNotify
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  character(*), intent(in):: file
  character(*), intent(in):: varname
  character(*), intent(in), optional:: range
  logical, intent(in), optional:: quiet
  real, pointer :: array(:,:,:,:,:,:) ! (out)
                    
  logical, intent(out), optional:: err

                    
  type(GT_VARIABLE)                  :: var
  character(STRING)                  :: url, actual_url
  character(*), parameter :: subname = "HistoryGetReal6Pointer"
  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface
  interface
    subroutine actual_iorange_dump(url, actual_url, err)
      character(*), intent(in) :: url            ! 変数 URL
      character(*), intent(out), optional :: actual_url
                                                 ! 正確な入出力範囲指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine actual_iorange_dump
  end interface
continue
  call BeginSub(subname, 'file=%c varname=%c range=%c', &
    & c1=trim(file), c2=trim(varname), &
    & c3=trim(present_select('', 'no-range', range)))
  ! 必要な情報を gtool 変数化
  call lookup_growable_url(file, varname, url, range, err)

                    
  call DbgMessage('@ url =%c', c1=trim(url))
  ! いよいよデータ取得
  call Open(var, url, err)

                    
  call Get(var, array, err)

                    

  call Close(var, err)
  call actual_iorange_dump(url, actual_url, err)
  if ( .not. present_and_true(quiet) ) then
    call MessageNotify('M', subname, 'Input %c', c1=trim(actual_url))
  end if
  call EndSub(subname)
end subroutine HistoryGetReal6Pointer


subroutine HistoryGetReal7Pointer(file, varname, array, range, quiet, err)
  !
  ! <b>Note that Japanese and English are described in parallel.</b>
  !
                      ! 使用方法に関しては HistoryGetPointer を参照してください.
  ! 
  ! See "HistoryGetPointer", for basic usage.
  !
                    
  !
  use gtdata_types, only: GT_VARIABLE
  use gtdata_generic, only: Open, Inquire, Close, Get
  use dc_string, only: toChar
  use dc_present,only: present_select, present_and_true
  use dc_types, only: DP, STRING
  use dc_message, only: MessageNotify
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  character(*), intent(in):: file
  character(*), intent(in):: varname
  character(*), intent(in), optional:: range
  logical, intent(in), optional:: quiet
  real, pointer :: array(:,:,:,:,:,:,:) ! (out)
                    
  logical, intent(out), optional:: err

                    
  type(GT_VARIABLE)                  :: var
  character(STRING)                  :: url, actual_url
  character(*), parameter :: subname = "HistoryGetReal7Pointer"
  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface
  interface
    subroutine actual_iorange_dump(url, actual_url, err)
      character(*), intent(in) :: url            ! 変数 URL
      character(*), intent(out), optional :: actual_url
                                                 ! 正確な入出力範囲指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine actual_iorange_dump
  end interface
continue
  call BeginSub(subname, 'file=%c varname=%c range=%c', &
    & c1=trim(file), c2=trim(varname), &
    & c3=trim(present_select('', 'no-range', range)))
  ! 必要な情報を gtool 変数化
  call lookup_growable_url(file, varname, url, range, err)

                    
  call DbgMessage('@ url =%c', c1=trim(url))
  ! いよいよデータ取得
  call Open(var, url, err)

                    
  call Get(var, array, err)

                    

  call Close(var, err)
  call actual_iorange_dump(url, actual_url, err)
  if ( .not. present_and_true(quiet) ) then
    call MessageNotify('M', subname, 'Input %c', c1=trim(actual_url))
  end if
  call EndSub(subname)
end subroutine HistoryGetReal7Pointer


subroutine HistoryGetInt0Pointer(file, varname, array, range, quiet, err)
  !
  ! <b>Note that Japanese and English are described in parallel.</b>
  !
                      ! 使用方法に関しては HistoryGetPointer を参照してください.
  ! 
  ! See "HistoryGetPointer", for basic usage.
  !
                    
  !
  use gtdata_types, only: GT_VARIABLE
  use gtdata_generic, only: Open, Inquire, Close, Get
  use dc_string, only: toChar
  use dc_present,only: present_select, present_and_true
  use dc_types, only: DP, STRING
  use dc_message, only: MessageNotify
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  character(*), intent(in):: file
  character(*), intent(in):: varname
  character(*), intent(in), optional:: range
  logical, intent(in), optional:: quiet
  integer, pointer :: array ! (out)
                    
  logical, intent(out), optional:: err

                      integer, target :: array_tmp(1)
  integer:: domain            ! 変数の入出力領域の大きさ
                              ! (= 変数が依存する各次元サイズの積)
                    
  type(GT_VARIABLE)                  :: var
  character(STRING)                  :: url, actual_url
  character(*), parameter :: subname = "HistoryGetInt0Pointer"
  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface
  interface
    subroutine actual_iorange_dump(url, actual_url, err)
      character(*), intent(in) :: url            ! 変数 URL
      character(*), intent(out), optional :: actual_url
                                                 ! 正確な入出力範囲指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine actual_iorange_dump
  end interface
continue
  call BeginSub(subname, 'file=%c varname=%c range=%c', &
    & c1=trim(file), c2=trim(varname), &
    & c3=trim(present_select('', 'no-range', range)))
  ! 必要な情報を gtool 変数化
  call lookup_growable_url(file, varname, url, range, err)

                      allocate(array)
                    
  call DbgMessage('@ url =%c', c1=trim(url))
  ! いよいよデータ取得
  call Open(var, url, err)

                    
  call Inquire(var=var, size=domain)
  call Get(var, array_tmp, domain, err)
  array = array_tmp(1)

                    

  call Close(var, err)
  call actual_iorange_dump(url, actual_url, err)
  if ( .not. present_and_true(quiet) ) then
    call MessageNotify('M', subname, 'Input %c', c1=trim(actual_url))
  end if
  call EndSub(subname)
end subroutine HistoryGetInt0Pointer


subroutine HistoryGetInt1Pointer(file, varname, array, range, quiet, err)
  !
  ! <b>Note that Japanese and English are described in parallel.</b>
  !
                      ! 使用方法に関しては HistoryGetPointer を参照してください.
  ! 
  ! See "HistoryGetPointer", for basic usage.
  !
                    
  !
  use gtdata_types, only: GT_VARIABLE
  use gtdata_generic, only: Open, Inquire, Close, Get
  use dc_string, only: toChar
  use dc_present,only: present_select, present_and_true
  use dc_types, only: DP, STRING
  use dc_message, only: MessageNotify
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  character(*), intent(in):: file
  character(*), intent(in):: varname
  character(*), intent(in), optional:: range
  logical, intent(in), optional:: quiet
  integer, pointer :: array(:) ! (out)
                    
  logical, intent(out), optional:: err

                    
  type(GT_VARIABLE)                  :: var
  character(STRING)                  :: url, actual_url
  character(*), parameter :: subname = "HistoryGetInt1Pointer"
  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface
  interface
    subroutine actual_iorange_dump(url, actual_url, err)
      character(*), intent(in) :: url            ! 変数 URL
      character(*), intent(out), optional :: actual_url
                                                 ! 正確な入出力範囲指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine actual_iorange_dump
  end interface
continue
  call BeginSub(subname, 'file=%c varname=%c range=%c', &
    & c1=trim(file), c2=trim(varname), &
    & c3=trim(present_select('', 'no-range', range)))
  ! 必要な情報を gtool 変数化
  call lookup_growable_url(file, varname, url, range, err)

                    
  call DbgMessage('@ url =%c', c1=trim(url))
  ! いよいよデータ取得
  call Open(var, url, err)

                    
  call Get(var, array, err)

                    

  call Close(var, err)
  call actual_iorange_dump(url, actual_url, err)
  if ( .not. present_and_true(quiet) ) then
    call MessageNotify('M', subname, 'Input %c', c1=trim(actual_url))
  end if
  call EndSub(subname)
end subroutine HistoryGetInt1Pointer


subroutine HistoryGetInt2Pointer(file, varname, array, range, quiet, err)
  !
  ! <b>Note that Japanese and English are described in parallel.</b>
  !
                      ! 使用方法に関しては HistoryGetPointer を参照してください.
  ! 
  ! See "HistoryGetPointer", for basic usage.
  !
                    
  !
  use gtdata_types, only: GT_VARIABLE
  use gtdata_generic, only: Open, Inquire, Close, Get
  use dc_string, only: toChar
  use dc_present,only: present_select, present_and_true
  use dc_types, only: DP, STRING
  use dc_message, only: MessageNotify
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  character(*), intent(in):: file
  character(*), intent(in):: varname
  character(*), intent(in), optional:: range
  logical, intent(in), optional:: quiet
  integer, pointer :: array(:,:) ! (out)
                    
  logical, intent(out), optional:: err

                    
  type(GT_VARIABLE)                  :: var
  character(STRING)                  :: url, actual_url
  character(*), parameter :: subname = "HistoryGetInt2Pointer"
  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface
  interface
    subroutine actual_iorange_dump(url, actual_url, err)
      character(*), intent(in) :: url            ! 変数 URL
      character(*), intent(out), optional :: actual_url
                                                 ! 正確な入出力範囲指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine actual_iorange_dump
  end interface
continue
  call BeginSub(subname, 'file=%c varname=%c range=%c', &
    & c1=trim(file), c2=trim(varname), &
    & c3=trim(present_select('', 'no-range', range)))
  ! 必要な情報を gtool 変数化
  call lookup_growable_url(file, varname, url, range, err)

                    
  call DbgMessage('@ url =%c', c1=trim(url))
  ! いよいよデータ取得
  call Open(var, url, err)

                    
  call Get(var, array, err)

                    

  call Close(var, err)
  call actual_iorange_dump(url, actual_url, err)
  if ( .not. present_and_true(quiet) ) then
    call MessageNotify('M', subname, 'Input %c', c1=trim(actual_url))
  end if
  call EndSub(subname)
end subroutine HistoryGetInt2Pointer


subroutine HistoryGetInt3Pointer(file, varname, array, range, quiet, err)
  !
  ! <b>Note that Japanese and English are described in parallel.</b>
  !
                      ! 使用方法に関しては HistoryGetPointer を参照してください.
  ! 
  ! See "HistoryGetPointer", for basic usage.
  !
                    
  !
  use gtdata_types, only: GT_VARIABLE
  use gtdata_generic, only: Open, Inquire, Close, Get
  use dc_string, only: toChar
  use dc_present,only: present_select, present_and_true
  use dc_types, only: DP, STRING
  use dc_message, only: MessageNotify
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  character(*), intent(in):: file
  character(*), intent(in):: varname
  character(*), intent(in), optional:: range
  logical, intent(in), optional:: quiet
  integer, pointer :: array(:,:,:) ! (out)
                    
  logical, intent(out), optional:: err

                    
  type(GT_VARIABLE)                  :: var
  character(STRING)                  :: url, actual_url
  character(*), parameter :: subname = "HistoryGetInt3Pointer"
  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface
  interface
    subroutine actual_iorange_dump(url, actual_url, err)
      character(*), intent(in) :: url            ! 変数 URL
      character(*), intent(out), optional :: actual_url
                                                 ! 正確な入出力範囲指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine actual_iorange_dump
  end interface
continue
  call BeginSub(subname, 'file=%c varname=%c range=%c', &
    & c1=trim(file), c2=trim(varname), &
    & c3=trim(present_select('', 'no-range', range)))
  ! 必要な情報を gtool 変数化
  call lookup_growable_url(file, varname, url, range, err)

                    
  call DbgMessage('@ url =%c', c1=trim(url))
  ! いよいよデータ取得
  call Open(var, url, err)

                    
  call Get(var, array, err)

                    

  call Close(var, err)
  call actual_iorange_dump(url, actual_url, err)
  if ( .not. present_and_true(quiet) ) then
    call MessageNotify('M', subname, 'Input %c', c1=trim(actual_url))
  end if
  call EndSub(subname)
end subroutine HistoryGetInt3Pointer


subroutine HistoryGetInt4Pointer(file, varname, array, range, quiet, err)
  !
  ! <b>Note that Japanese and English are described in parallel.</b>
  !
                      ! 使用方法に関しては HistoryGetPointer を参照してください.
  ! 
  ! See "HistoryGetPointer", for basic usage.
  !
                    
  !
  use gtdata_types, only: GT_VARIABLE
  use gtdata_generic, only: Open, Inquire, Close, Get
  use dc_string, only: toChar
  use dc_present,only: present_select, present_and_true
  use dc_types, only: DP, STRING
  use dc_message, only: MessageNotify
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  character(*), intent(in):: file
  character(*), intent(in):: varname
  character(*), intent(in), optional:: range
  logical, intent(in), optional:: quiet
  integer, pointer :: array(:,:,:,:) ! (out)
                    
  logical, intent(out), optional:: err

                    
  type(GT_VARIABLE)                  :: var
  character(STRING)                  :: url, actual_url
  character(*), parameter :: subname = "HistoryGetInt4Pointer"
  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface
  interface
    subroutine actual_iorange_dump(url, actual_url, err)
      character(*), intent(in) :: url            ! 変数 URL
      character(*), intent(out), optional :: actual_url
                                                 ! 正確な入出力範囲指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine actual_iorange_dump
  end interface
continue
  call BeginSub(subname, 'file=%c varname=%c range=%c', &
    & c1=trim(file), c2=trim(varname), &
    & c3=trim(present_select('', 'no-range', range)))
  ! 必要な情報を gtool 変数化
  call lookup_growable_url(file, varname, url, range, err)

                    
  call DbgMessage('@ url =%c', c1=trim(url))
  ! いよいよデータ取得
  call Open(var, url, err)

                    
  call Get(var, array, err)

                    

  call Close(var, err)
  call actual_iorange_dump(url, actual_url, err)
  if ( .not. present_and_true(quiet) ) then
    call MessageNotify('M', subname, 'Input %c', c1=trim(actual_url))
  end if
  call EndSub(subname)
end subroutine HistoryGetInt4Pointer


subroutine HistoryGetInt5Pointer(file, varname, array, range, quiet, err)
  !
  ! <b>Note that Japanese and English are described in parallel.</b>
  !
                      ! 使用方法に関しては HistoryGetPointer を参照してください.
  ! 
  ! See "HistoryGetPointer", for basic usage.
  !
                    
  !
  use gtdata_types, only: GT_VARIABLE
  use gtdata_generic, only: Open, Inquire, Close, Get
  use dc_string, only: toChar
  use dc_present,only: present_select, present_and_true
  use dc_types, only: DP, STRING
  use dc_message, only: MessageNotify
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  character(*), intent(in):: file
  character(*), intent(in):: varname
  character(*), intent(in), optional:: range
  logical, intent(in), optional:: quiet
  integer, pointer :: array(:,:,:,:,:) ! (out)
                    
  logical, intent(out), optional:: err

                    
  type(GT_VARIABLE)                  :: var
  character(STRING)                  :: url, actual_url
  character(*), parameter :: subname = "HistoryGetInt5Pointer"
  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface
  interface
    subroutine actual_iorange_dump(url, actual_url, err)
      character(*), intent(in) :: url            ! 変数 URL
      character(*), intent(out), optional :: actual_url
                                                 ! 正確な入出力範囲指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine actual_iorange_dump
  end interface
continue
  call BeginSub(subname, 'file=%c varname=%c range=%c', &
    & c1=trim(file), c2=trim(varname), &
    & c3=trim(present_select('', 'no-range', range)))
  ! 必要な情報を gtool 変数化
  call lookup_growable_url(file, varname, url, range, err)

                    
  call DbgMessage('@ url =%c', c1=trim(url))
  ! いよいよデータ取得
  call Open(var, url, err)

                    
  call Get(var, array, err)

                    

  call Close(var, err)
  call actual_iorange_dump(url, actual_url, err)
  if ( .not. present_and_true(quiet) ) then
    call MessageNotify('M', subname, 'Input %c', c1=trim(actual_url))
  end if
  call EndSub(subname)
end subroutine HistoryGetInt5Pointer


subroutine HistoryGetInt6Pointer(file, varname, array, range, quiet, err)
  !
  ! <b>Note that Japanese and English are described in parallel.</b>
  !
                      ! 使用方法に関しては HistoryGetPointer を参照してください.
  ! 
  ! See "HistoryGetPointer", for basic usage.
  !
                    
  !
  use gtdata_types, only: GT_VARIABLE
  use gtdata_generic, only: Open, Inquire, Close, Get
  use dc_string, only: toChar
  use dc_present,only: present_select, present_and_true
  use dc_types, only: DP, STRING
  use dc_message, only: MessageNotify
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  character(*), intent(in):: file
  character(*), intent(in):: varname
  character(*), intent(in), optional:: range
  logical, intent(in), optional:: quiet
  integer, pointer :: array(:,:,:,:,:,:) ! (out)
                    
  logical, intent(out), optional:: err

                    
  type(GT_VARIABLE)                  :: var
  character(STRING)                  :: url, actual_url
  character(*), parameter :: subname = "HistoryGetInt6Pointer"
  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface
  interface
    subroutine actual_iorange_dump(url, actual_url, err)
      character(*), intent(in) :: url            ! 変数 URL
      character(*), intent(out), optional :: actual_url
                                                 ! 正確な入出力範囲指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine actual_iorange_dump
  end interface
continue
  call BeginSub(subname, 'file=%c varname=%c range=%c', &
    & c1=trim(file), c2=trim(varname), &
    & c3=trim(present_select('', 'no-range', range)))
  ! 必要な情報を gtool 変数化
  call lookup_growable_url(file, varname, url, range, err)

                    
  call DbgMessage('@ url =%c', c1=trim(url))
  ! いよいよデータ取得
  call Open(var, url, err)

                    
  call Get(var, array, err)

                    

  call Close(var, err)
  call actual_iorange_dump(url, actual_url, err)
  if ( .not. present_and_true(quiet) ) then
    call MessageNotify('M', subname, 'Input %c', c1=trim(actual_url))
  end if
  call EndSub(subname)
end subroutine HistoryGetInt6Pointer


subroutine HistoryGetInt7Pointer(file, varname, array, range, quiet, err)
  !
  ! <b>Note that Japanese and English are described in parallel.</b>
  !
                      ! 使用方法に関しては HistoryGetPointer を参照してください.
  ! 
  ! See "HistoryGetPointer", for basic usage.
  !
                    
  !
  use gtdata_types, only: GT_VARIABLE
  use gtdata_generic, only: Open, Inquire, Close, Get
  use dc_string, only: toChar
  use dc_present,only: present_select, present_and_true
  use dc_types, only: DP, STRING
  use dc_message, only: MessageNotify
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  character(*), intent(in):: file
  character(*), intent(in):: varname
  character(*), intent(in), optional:: range
  logical, intent(in), optional:: quiet
  integer, pointer :: array(:,:,:,:,:,:,:) ! (out)
                    
  logical, intent(out), optional:: err

                    
  type(GT_VARIABLE)                  :: var
  character(STRING)                  :: url, actual_url
  character(*), parameter :: subname = "HistoryGetInt7Pointer"
  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface
  interface
    subroutine actual_iorange_dump(url, actual_url, err)
      character(*), intent(in) :: url            ! 変数 URL
      character(*), intent(out), optional :: actual_url
                                                 ! 正確な入出力範囲指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine actual_iorange_dump
  end interface
continue
  call BeginSub(subname, 'file=%c varname=%c range=%c', &
    & c1=trim(file), c2=trim(varname), &
    & c3=trim(present_select('', 'no-range', range)))
  ! 必要な情報を gtool 変数化
  call lookup_growable_url(file, varname, url, range, err)

                    
  call DbgMessage('@ url =%c', c1=trim(url))
  ! いよいよデータ取得
  call Open(var, url, err)

                    
  call Get(var, array, err)

                    

  call Close(var, err)
  call actual_iorange_dump(url, actual_url, err)
  if ( .not. present_and_true(quiet) ) then
    call MessageNotify('M', subname, 'Input %c', c1=trim(actual_url))
  end if
  call EndSub(subname)
end subroutine HistoryGetInt7Pointer


subroutine HistoryGetDouble0TimeD(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGetPointer です. 
  ! 使用方法に関しては HistoryGetPointer を参照してください.
  !
  ! This is "HistoryGetPointer" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGetPointer", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real(DP), intent(in):: time
  logical, intent(in), optional:: quiet
                      real(DP), intent(out):: array
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetDouble0TimeD"

  interface

    subroutine HistoryGetDouble0(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real(DP), intent(out):: array
                    
    end subroutine HistoryGetDouble0

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetDouble0( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetDouble0TimeD


subroutine HistoryGetDouble1TimeD(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGetPointer です. 
  ! 使用方法に関しては HistoryGetPointer を参照してください.
  !
  ! This is "HistoryGetPointer" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGetPointer", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real(DP), intent(in):: time
  logical, intent(in), optional:: quiet
                      real(DP), intent(out):: array(:)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetDouble1TimeD"

  interface

    subroutine HistoryGetDouble1(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real(DP), intent(out):: array(:)
                    
    end subroutine HistoryGetDouble1

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetDouble1( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetDouble1TimeD


subroutine HistoryGetDouble2TimeD(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGetPointer です. 
  ! 使用方法に関しては HistoryGetPointer を参照してください.
  !
  ! This is "HistoryGetPointer" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGetPointer", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real(DP), intent(in):: time
  logical, intent(in), optional:: quiet
                      real(DP), intent(out):: array(:,:)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetDouble2TimeD"

  interface

    subroutine HistoryGetDouble2(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real(DP), intent(out):: array(:,:)
                    
    end subroutine HistoryGetDouble2

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetDouble2( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetDouble2TimeD


subroutine HistoryGetDouble3TimeD(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGetPointer です. 
  ! 使用方法に関しては HistoryGetPointer を参照してください.
  !
  ! This is "HistoryGetPointer" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGetPointer", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real(DP), intent(in):: time
  logical, intent(in), optional:: quiet
                      real(DP), intent(out):: array(:,:,:)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetDouble3TimeD"

  interface

    subroutine HistoryGetDouble3(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real(DP), intent(out):: array(:,:,:)
                    
    end subroutine HistoryGetDouble3

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetDouble3( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetDouble3TimeD


subroutine HistoryGetDouble4TimeD(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGetPointer です. 
  ! 使用方法に関しては HistoryGetPointer を参照してください.
  !
  ! This is "HistoryGetPointer" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGetPointer", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real(DP), intent(in):: time
  logical, intent(in), optional:: quiet
                      real(DP), intent(out):: array(:,:,:,:)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetDouble4TimeD"

  interface

    subroutine HistoryGetDouble4(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real(DP), intent(out):: array(:,:,:,:)
                    
    end subroutine HistoryGetDouble4

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetDouble4( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetDouble4TimeD


subroutine HistoryGetDouble5TimeD(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGetPointer です. 
  ! 使用方法に関しては HistoryGetPointer を参照してください.
  !
  ! This is "HistoryGetPointer" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGetPointer", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real(DP), intent(in):: time
  logical, intent(in), optional:: quiet
                      real(DP), intent(out):: array(:,:,:,:,:)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetDouble5TimeD"

  interface

    subroutine HistoryGetDouble5(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real(DP), intent(out):: array(:,:,:,:,:)
                    
    end subroutine HistoryGetDouble5

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetDouble5( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetDouble5TimeD


subroutine HistoryGetDouble6TimeD(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGetPointer です. 
  ! 使用方法に関しては HistoryGetPointer を参照してください.
  !
  ! This is "HistoryGetPointer" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGetPointer", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real(DP), intent(in):: time
  logical, intent(in), optional:: quiet
                      real(DP), intent(out):: array(:,:,:,:,:,:)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetDouble6TimeD"

  interface

    subroutine HistoryGetDouble6(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real(DP), intent(out):: array(:,:,:,:,:,:)
                    
    end subroutine HistoryGetDouble6

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetDouble6( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetDouble6TimeD


subroutine HistoryGetDouble7TimeD(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGetPointer です. 
  ! 使用方法に関しては HistoryGetPointer を参照してください.
  !
  ! This is "HistoryGetPointer" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGetPointer", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real(DP), intent(in):: time
  logical, intent(in), optional:: quiet
                      real(DP), intent(out):: array(:,:,:,:,:,:,:)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetDouble7TimeD"

  interface

    subroutine HistoryGetDouble7(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real(DP), intent(out):: array(:,:,:,:,:,:,:)
                    
    end subroutine HistoryGetDouble7

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetDouble7( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetDouble7TimeD


subroutine HistoryGetReal0TimeD(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGetPointer です. 
  ! 使用方法に関しては HistoryGetPointer を参照してください.
  !
  ! This is "HistoryGetPointer" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGetPointer", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real(DP), intent(in):: time
  logical, intent(in), optional:: quiet
                      real, intent(out):: array
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetReal0TimeD"

  interface

    subroutine HistoryGetReal0(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real, intent(out):: array
                    
    end subroutine HistoryGetReal0

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetReal0( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetReal0TimeD


subroutine HistoryGetReal1TimeD(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGetPointer です. 
  ! 使用方法に関しては HistoryGetPointer を参照してください.
  !
  ! This is "HistoryGetPointer" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGetPointer", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real(DP), intent(in):: time
  logical, intent(in), optional:: quiet
                      real, intent(out):: array(:)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetReal1TimeD"

  interface

    subroutine HistoryGetReal1(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real, intent(out):: array(:)
                    
    end subroutine HistoryGetReal1

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetReal1( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetReal1TimeD


subroutine HistoryGetReal2TimeD(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGetPointer です. 
  ! 使用方法に関しては HistoryGetPointer を参照してください.
  !
  ! This is "HistoryGetPointer" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGetPointer", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real(DP), intent(in):: time
  logical, intent(in), optional:: quiet
                      real, intent(out):: array(:,:)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetReal2TimeD"

  interface

    subroutine HistoryGetReal2(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real, intent(out):: array(:,:)
                    
    end subroutine HistoryGetReal2

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetReal2( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetReal2TimeD


subroutine HistoryGetReal3TimeD(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGetPointer です. 
  ! 使用方法に関しては HistoryGetPointer を参照してください.
  !
  ! This is "HistoryGetPointer" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGetPointer", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real(DP), intent(in):: time
  logical, intent(in), optional:: quiet
                      real, intent(out):: array(:,:,:)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetReal3TimeD"

  interface

    subroutine HistoryGetReal3(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real, intent(out):: array(:,:,:)
                    
    end subroutine HistoryGetReal3

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetReal3( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetReal3TimeD


subroutine HistoryGetReal4TimeD(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGetPointer です. 
  ! 使用方法に関しては HistoryGetPointer を参照してください.
  !
  ! This is "HistoryGetPointer" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGetPointer", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real(DP), intent(in):: time
  logical, intent(in), optional:: quiet
                      real, intent(out):: array(:,:,:,:)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetReal4TimeD"

  interface

    subroutine HistoryGetReal4(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real, intent(out):: array(:,:,:,:)
                    
    end subroutine HistoryGetReal4

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetReal4( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetReal4TimeD


subroutine HistoryGetReal5TimeD(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGetPointer です. 
  ! 使用方法に関しては HistoryGetPointer を参照してください.
  !
  ! This is "HistoryGetPointer" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGetPointer", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real(DP), intent(in):: time
  logical, intent(in), optional:: quiet
                      real, intent(out):: array(:,:,:,:,:)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetReal5TimeD"

  interface

    subroutine HistoryGetReal5(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real, intent(out):: array(:,:,:,:,:)
                    
    end subroutine HistoryGetReal5

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetReal5( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetReal5TimeD


subroutine HistoryGetReal6TimeD(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGetPointer です. 
  ! 使用方法に関しては HistoryGetPointer を参照してください.
  !
  ! This is "HistoryGetPointer" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGetPointer", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real(DP), intent(in):: time
  logical, intent(in), optional:: quiet
                      real, intent(out):: array(:,:,:,:,:,:)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetReal6TimeD"

  interface

    subroutine HistoryGetReal6(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real, intent(out):: array(:,:,:,:,:,:)
                    
    end subroutine HistoryGetReal6

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetReal6( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetReal6TimeD


subroutine HistoryGetReal7TimeD(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGetPointer です. 
  ! 使用方法に関しては HistoryGetPointer を参照してください.
  !
  ! This is "HistoryGetPointer" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGetPointer", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real(DP), intent(in):: time
  logical, intent(in), optional:: quiet
                      real, intent(out):: array(:,:,:,:,:,:,:)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetReal7TimeD"

  interface

    subroutine HistoryGetReal7(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real, intent(out):: array(:,:,:,:,:,:,:)
                    
    end subroutine HistoryGetReal7

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetReal7( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetReal7TimeD


subroutine HistoryGetInt0TimeD(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGetPointer です. 
  ! 使用方法に関しては HistoryGetPointer を参照してください.
  !
  ! This is "HistoryGetPointer" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGetPointer", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real(DP), intent(in):: time
  logical, intent(in), optional:: quiet
                      integer, intent(out):: array
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetInt0TimeD"

  interface

    subroutine HistoryGetInt0(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          integer, intent(out):: array
                    
    end subroutine HistoryGetInt0

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetInt0( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetInt0TimeD


subroutine HistoryGetInt1TimeD(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGetPointer です. 
  ! 使用方法に関しては HistoryGetPointer を参照してください.
  !
  ! This is "HistoryGetPointer" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGetPointer", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real(DP), intent(in):: time
  logical, intent(in), optional:: quiet
                      integer, intent(out):: array(:)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetInt1TimeD"

  interface

    subroutine HistoryGetInt1(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          integer, intent(out):: array(:)
                    
    end subroutine HistoryGetInt1

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetInt1( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetInt1TimeD


subroutine HistoryGetInt2TimeD(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGetPointer です. 
  ! 使用方法に関しては HistoryGetPointer を参照してください.
  !
  ! This is "HistoryGetPointer" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGetPointer", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real(DP), intent(in):: time
  logical, intent(in), optional:: quiet
                      integer, intent(out):: array(:,:)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetInt2TimeD"

  interface

    subroutine HistoryGetInt2(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          integer, intent(out):: array(:,:)
                    
    end subroutine HistoryGetInt2

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetInt2( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetInt2TimeD


subroutine HistoryGetInt3TimeD(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGetPointer です. 
  ! 使用方法に関しては HistoryGetPointer を参照してください.
  !
  ! This is "HistoryGetPointer" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGetPointer", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real(DP), intent(in):: time
  logical, intent(in), optional:: quiet
                      integer, intent(out):: array(:,:,:)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetInt3TimeD"

  interface

    subroutine HistoryGetInt3(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          integer, intent(out):: array(:,:,:)
                    
    end subroutine HistoryGetInt3

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetInt3( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetInt3TimeD


subroutine HistoryGetInt4TimeD(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGetPointer です. 
  ! 使用方法に関しては HistoryGetPointer を参照してください.
  !
  ! This is "HistoryGetPointer" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGetPointer", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real(DP), intent(in):: time
  logical, intent(in), optional:: quiet
                      integer, intent(out):: array(:,:,:,:)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetInt4TimeD"

  interface

    subroutine HistoryGetInt4(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          integer, intent(out):: array(:,:,:,:)
                    
    end subroutine HistoryGetInt4

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetInt4( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetInt4TimeD


subroutine HistoryGetInt5TimeD(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGetPointer です. 
  ! 使用方法に関しては HistoryGetPointer を参照してください.
  !
  ! This is "HistoryGetPointer" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGetPointer", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real(DP), intent(in):: time
  logical, intent(in), optional:: quiet
                      integer, intent(out):: array(:,:,:,:,:)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetInt5TimeD"

  interface

    subroutine HistoryGetInt5(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          integer, intent(out):: array(:,:,:,:,:)
                    
    end subroutine HistoryGetInt5

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetInt5( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetInt5TimeD


subroutine HistoryGetInt6TimeD(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGetPointer です. 
  ! 使用方法に関しては HistoryGetPointer を参照してください.
  !
  ! This is "HistoryGetPointer" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGetPointer", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real(DP), intent(in):: time
  logical, intent(in), optional:: quiet
                      integer, intent(out):: array(:,:,:,:,:,:)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetInt6TimeD"

  interface

    subroutine HistoryGetInt6(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          integer, intent(out):: array(:,:,:,:,:,:)
                    
    end subroutine HistoryGetInt6

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetInt6( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetInt6TimeD


subroutine HistoryGetInt7TimeD(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGetPointer です. 
  ! 使用方法に関しては HistoryGetPointer を参照してください.
  !
  ! This is "HistoryGetPointer" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGetPointer", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real(DP), intent(in):: time
  logical, intent(in), optional:: quiet
                      integer, intent(out):: array(:,:,:,:,:,:,:)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetInt7TimeD"

  interface

    subroutine HistoryGetInt7(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          integer, intent(out):: array(:,:,:,:,:,:,:)
                    
    end subroutine HistoryGetInt7

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetInt7( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetInt7TimeD


subroutine HistoryGetDouble0TimeR(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGetPointer です. 
  ! 使用方法に関しては HistoryGetPointer を参照してください.
  !
  ! This is "HistoryGetPointer" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGetPointer", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real, intent(in):: time
  logical, intent(in), optional:: quiet
                      real(DP), intent(out):: array
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetDouble0TimeR"

  interface

    subroutine HistoryGetDouble0(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real(DP), intent(out):: array
                    
    end subroutine HistoryGetDouble0

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetDouble0( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetDouble0TimeR


subroutine HistoryGetDouble1TimeR(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGetPointer です. 
  ! 使用方法に関しては HistoryGetPointer を参照してください.
  !
  ! This is "HistoryGetPointer" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGetPointer", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real, intent(in):: time
  logical, intent(in), optional:: quiet
                      real(DP), intent(out):: array(:)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetDouble1TimeR"

  interface

    subroutine HistoryGetDouble1(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real(DP), intent(out):: array(:)
                    
    end subroutine HistoryGetDouble1

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetDouble1( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetDouble1TimeR


subroutine HistoryGetDouble2TimeR(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGetPointer です. 
  ! 使用方法に関しては HistoryGetPointer を参照してください.
  !
  ! This is "HistoryGetPointer" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGetPointer", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real, intent(in):: time
  logical, intent(in), optional:: quiet
                      real(DP), intent(out):: array(:,:)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetDouble2TimeR"

  interface

    subroutine HistoryGetDouble2(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real(DP), intent(out):: array(:,:)
                    
    end subroutine HistoryGetDouble2

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetDouble2( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetDouble2TimeR


subroutine HistoryGetDouble3TimeR(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGetPointer です. 
  ! 使用方法に関しては HistoryGetPointer を参照してください.
  !
  ! This is "HistoryGetPointer" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGetPointer", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real, intent(in):: time
  logical, intent(in), optional:: quiet
                      real(DP), intent(out):: array(:,:,:)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetDouble3TimeR"

  interface

    subroutine HistoryGetDouble3(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real(DP), intent(out):: array(:,:,:)
                    
    end subroutine HistoryGetDouble3

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetDouble3( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetDouble3TimeR


subroutine HistoryGetDouble4TimeR(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGetPointer です. 
  ! 使用方法に関しては HistoryGetPointer を参照してください.
  !
  ! This is "HistoryGetPointer" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGetPointer", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real, intent(in):: time
  logical, intent(in), optional:: quiet
                      real(DP), intent(out):: array(:,:,:,:)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetDouble4TimeR"

  interface

    subroutine HistoryGetDouble4(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real(DP), intent(out):: array(:,:,:,:)
                    
    end subroutine HistoryGetDouble4

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetDouble4( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetDouble4TimeR


subroutine HistoryGetDouble5TimeR(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGetPointer です. 
  ! 使用方法に関しては HistoryGetPointer を参照してください.
  !
  ! This is "HistoryGetPointer" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGetPointer", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real, intent(in):: time
  logical, intent(in), optional:: quiet
                      real(DP), intent(out):: array(:,:,:,:,:)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetDouble5TimeR"

  interface

    subroutine HistoryGetDouble5(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real(DP), intent(out):: array(:,:,:,:,:)
                    
    end subroutine HistoryGetDouble5

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetDouble5( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetDouble5TimeR


subroutine HistoryGetDouble6TimeR(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGetPointer です. 
  ! 使用方法に関しては HistoryGetPointer を参照してください.
  !
  ! This is "HistoryGetPointer" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGetPointer", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real, intent(in):: time
  logical, intent(in), optional:: quiet
                      real(DP), intent(out):: array(:,:,:,:,:,:)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetDouble6TimeR"

  interface

    subroutine HistoryGetDouble6(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real(DP), intent(out):: array(:,:,:,:,:,:)
                    
    end subroutine HistoryGetDouble6

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetDouble6( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetDouble6TimeR


subroutine HistoryGetDouble7TimeR(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGetPointer です. 
  ! 使用方法に関しては HistoryGetPointer を参照してください.
  !
  ! This is "HistoryGetPointer" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGetPointer", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real, intent(in):: time
  logical, intent(in), optional:: quiet
                      real(DP), intent(out):: array(:,:,:,:,:,:,:)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetDouble7TimeR"

  interface

    subroutine HistoryGetDouble7(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real(DP), intent(out):: array(:,:,:,:,:,:,:)
                    
    end subroutine HistoryGetDouble7

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetDouble7( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetDouble7TimeR


subroutine HistoryGetReal0TimeR(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGetPointer です. 
  ! 使用方法に関しては HistoryGetPointer を参照してください.
  !
  ! This is "HistoryGetPointer" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGetPointer", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real, intent(in):: time
  logical, intent(in), optional:: quiet
                      real, intent(out):: array
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetReal0TimeR"

  interface

    subroutine HistoryGetReal0(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real, intent(out):: array
                    
    end subroutine HistoryGetReal0

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetReal0( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetReal0TimeR


subroutine HistoryGetReal1TimeR(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGetPointer です. 
  ! 使用方法に関しては HistoryGetPointer を参照してください.
  !
  ! This is "HistoryGetPointer" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGetPointer", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real, intent(in):: time
  logical, intent(in), optional:: quiet
                      real, intent(out):: array(:)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetReal1TimeR"

  interface

    subroutine HistoryGetReal1(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real, intent(out):: array(:)
                    
    end subroutine HistoryGetReal1

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetReal1( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetReal1TimeR


subroutine HistoryGetReal2TimeR(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGetPointer です. 
  ! 使用方法に関しては HistoryGetPointer を参照してください.
  !
  ! This is "HistoryGetPointer" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGetPointer", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real, intent(in):: time
  logical, intent(in), optional:: quiet
                      real, intent(out):: array(:,:)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetReal2TimeR"

  interface

    subroutine HistoryGetReal2(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real, intent(out):: array(:,:)
                    
    end subroutine HistoryGetReal2

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetReal2( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetReal2TimeR


subroutine HistoryGetReal3TimeR(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGetPointer です. 
  ! 使用方法に関しては HistoryGetPointer を参照してください.
  !
  ! This is "HistoryGetPointer" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGetPointer", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real, intent(in):: time
  logical, intent(in), optional:: quiet
                      real, intent(out):: array(:,:,:)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetReal3TimeR"

  interface

    subroutine HistoryGetReal3(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real, intent(out):: array(:,:,:)
                    
    end subroutine HistoryGetReal3

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetReal3( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetReal3TimeR


subroutine HistoryGetReal4TimeR(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGetPointer です. 
  ! 使用方法に関しては HistoryGetPointer を参照してください.
  !
  ! This is "HistoryGetPointer" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGetPointer", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real, intent(in):: time
  logical, intent(in), optional:: quiet
                      real, intent(out):: array(:,:,:,:)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetReal4TimeR"

  interface

    subroutine HistoryGetReal4(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real, intent(out):: array(:,:,:,:)
                    
    end subroutine HistoryGetReal4

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetReal4( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetReal4TimeR


subroutine HistoryGetReal5TimeR(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGetPointer です. 
  ! 使用方法に関しては HistoryGetPointer を参照してください.
  !
  ! This is "HistoryGetPointer" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGetPointer", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real, intent(in):: time
  logical, intent(in), optional:: quiet
                      real, intent(out):: array(:,:,:,:,:)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetReal5TimeR"

  interface

    subroutine HistoryGetReal5(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real, intent(out):: array(:,:,:,:,:)
                    
    end subroutine HistoryGetReal5

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetReal5( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetReal5TimeR


subroutine HistoryGetReal6TimeR(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGetPointer です. 
  ! 使用方法に関しては HistoryGetPointer を参照してください.
  !
  ! This is "HistoryGetPointer" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGetPointer", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real, intent(in):: time
  logical, intent(in), optional:: quiet
                      real, intent(out):: array(:,:,:,:,:,:)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetReal6TimeR"

  interface

    subroutine HistoryGetReal6(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real, intent(out):: array(:,:,:,:,:,:)
                    
    end subroutine HistoryGetReal6

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetReal6( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetReal6TimeR


subroutine HistoryGetReal7TimeR(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGetPointer です. 
  ! 使用方法に関しては HistoryGetPointer を参照してください.
  !
  ! This is "HistoryGetPointer" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGetPointer", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real, intent(in):: time
  logical, intent(in), optional:: quiet
                      real, intent(out):: array(:,:,:,:,:,:,:)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetReal7TimeR"

  interface

    subroutine HistoryGetReal7(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real, intent(out):: array(:,:,:,:,:,:,:)
                    
    end subroutine HistoryGetReal7

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetReal7( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetReal7TimeR


subroutine HistoryGetInt0TimeR(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGetPointer です. 
  ! 使用方法に関しては HistoryGetPointer を参照してください.
  !
  ! This is "HistoryGetPointer" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGetPointer", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real, intent(in):: time
  logical, intent(in), optional:: quiet
                      integer, intent(out):: array
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetInt0TimeR"

  interface

    subroutine HistoryGetInt0(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          integer, intent(out):: array
                    
    end subroutine HistoryGetInt0

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetInt0( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetInt0TimeR


subroutine HistoryGetInt1TimeR(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGetPointer です. 
  ! 使用方法に関しては HistoryGetPointer を参照してください.
  !
  ! This is "HistoryGetPointer" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGetPointer", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real, intent(in):: time
  logical, intent(in), optional:: quiet
                      integer, intent(out):: array(:)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetInt1TimeR"

  interface

    subroutine HistoryGetInt1(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          integer, intent(out):: array(:)
                    
    end subroutine HistoryGetInt1

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetInt1( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetInt1TimeR


subroutine HistoryGetInt2TimeR(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGetPointer です. 
  ! 使用方法に関しては HistoryGetPointer を参照してください.
  !
  ! This is "HistoryGetPointer" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGetPointer", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real, intent(in):: time
  logical, intent(in), optional:: quiet
                      integer, intent(out):: array(:,:)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetInt2TimeR"

  interface

    subroutine HistoryGetInt2(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          integer, intent(out):: array(:,:)
                    
    end subroutine HistoryGetInt2

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetInt2( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetInt2TimeR


subroutine HistoryGetInt3TimeR(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGetPointer です. 
  ! 使用方法に関しては HistoryGetPointer を参照してください.
  !
  ! This is "HistoryGetPointer" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGetPointer", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real, intent(in):: time
  logical, intent(in), optional:: quiet
                      integer, intent(out):: array(:,:,:)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetInt3TimeR"

  interface

    subroutine HistoryGetInt3(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          integer, intent(out):: array(:,:,:)
                    
    end subroutine HistoryGetInt3

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetInt3( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetInt3TimeR


subroutine HistoryGetInt4TimeR(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGetPointer です. 
  ! 使用方法に関しては HistoryGetPointer を参照してください.
  !
  ! This is "HistoryGetPointer" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGetPointer", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real, intent(in):: time
  logical, intent(in), optional:: quiet
                      integer, intent(out):: array(:,:,:,:)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetInt4TimeR"

  interface

    subroutine HistoryGetInt4(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          integer, intent(out):: array(:,:,:,:)
                    
    end subroutine HistoryGetInt4

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetInt4( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetInt4TimeR


subroutine HistoryGetInt5TimeR(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGetPointer です. 
  ! 使用方法に関しては HistoryGetPointer を参照してください.
  !
  ! This is "HistoryGetPointer" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGetPointer", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real, intent(in):: time
  logical, intent(in), optional:: quiet
                      integer, intent(out):: array(:,:,:,:,:)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetInt5TimeR"

  interface

    subroutine HistoryGetInt5(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          integer, intent(out):: array(:,:,:,:,:)
                    
    end subroutine HistoryGetInt5

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetInt5( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetInt5TimeR


subroutine HistoryGetInt6TimeR(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGetPointer です. 
  ! 使用方法に関しては HistoryGetPointer を参照してください.
  !
  ! This is "HistoryGetPointer" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGetPointer", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real, intent(in):: time
  logical, intent(in), optional:: quiet
                      integer, intent(out):: array(:,:,:,:,:,:)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetInt6TimeR"

  interface

    subroutine HistoryGetInt6(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          integer, intent(out):: array(:,:,:,:,:,:)
                    
    end subroutine HistoryGetInt6

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetInt6( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetInt6TimeR


subroutine HistoryGetInt7TimeR(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGetPointer です. 
  ! 使用方法に関しては HistoryGetPointer を参照してください.
  !
  ! This is "HistoryGetPointer" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGetPointer", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real, intent(in):: time
  logical, intent(in), optional:: quiet
                      integer, intent(out):: array(:,:,:,:,:,:,:)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetInt7TimeR"

  interface

    subroutine HistoryGetInt7(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          integer, intent(out):: array(:,:,:,:,:,:,:)
                    
    end subroutine HistoryGetInt7

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetInt7( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetInt7TimeR


subroutine HistoryGetDouble0TimeI(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGetPointer です. 
  ! 使用方法に関しては HistoryGetPointer を参照してください.
  !
  ! This is "HistoryGetPointer" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGetPointer", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  integer, intent(in):: time
  logical, intent(in), optional:: quiet
                      real(DP), intent(out):: array
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetDouble0TimeI"

  interface

    subroutine HistoryGetDouble0(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real(DP), intent(out):: array
                    
    end subroutine HistoryGetDouble0

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetDouble0( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetDouble0TimeI


subroutine HistoryGetDouble1TimeI(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGetPointer です. 
  ! 使用方法に関しては HistoryGetPointer を参照してください.
  !
  ! This is "HistoryGetPointer" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGetPointer", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  integer, intent(in):: time
  logical, intent(in), optional:: quiet
                      real(DP), intent(out):: array(:)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetDouble1TimeI"

  interface

    subroutine HistoryGetDouble1(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real(DP), intent(out):: array(:)
                    
    end subroutine HistoryGetDouble1

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetDouble1( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetDouble1TimeI


subroutine HistoryGetDouble2TimeI(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGetPointer です. 
  ! 使用方法に関しては HistoryGetPointer を参照してください.
  !
  ! This is "HistoryGetPointer" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGetPointer", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  integer, intent(in):: time
  logical, intent(in), optional:: quiet
                      real(DP), intent(out):: array(:,:)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetDouble2TimeI"

  interface

    subroutine HistoryGetDouble2(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real(DP), intent(out):: array(:,:)
                    
    end subroutine HistoryGetDouble2

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetDouble2( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetDouble2TimeI


subroutine HistoryGetDouble3TimeI(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGetPointer です. 
  ! 使用方法に関しては HistoryGetPointer を参照してください.
  !
  ! This is "HistoryGetPointer" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGetPointer", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  integer, intent(in):: time
  logical, intent(in), optional:: quiet
                      real(DP), intent(out):: array(:,:,:)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetDouble3TimeI"

  interface

    subroutine HistoryGetDouble3(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real(DP), intent(out):: array(:,:,:)
                    
    end subroutine HistoryGetDouble3

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetDouble3( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetDouble3TimeI


subroutine HistoryGetDouble4TimeI(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGetPointer です. 
  ! 使用方法に関しては HistoryGetPointer を参照してください.
  !
  ! This is "HistoryGetPointer" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGetPointer", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  integer, intent(in):: time
  logical, intent(in), optional:: quiet
                      real(DP), intent(out):: array(:,:,:,:)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetDouble4TimeI"

  interface

    subroutine HistoryGetDouble4(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real(DP), intent(out):: array(:,:,:,:)
                    
    end subroutine HistoryGetDouble4

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetDouble4( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetDouble4TimeI


subroutine HistoryGetDouble5TimeI(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGetPointer です. 
  ! 使用方法に関しては HistoryGetPointer を参照してください.
  !
  ! This is "HistoryGetPointer" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGetPointer", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  integer, intent(in):: time
  logical, intent(in), optional:: quiet
                      real(DP), intent(out):: array(:,:,:,:,:)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetDouble5TimeI"

  interface

    subroutine HistoryGetDouble5(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real(DP), intent(out):: array(:,:,:,:,:)
                    
    end subroutine HistoryGetDouble5

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetDouble5( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetDouble5TimeI


subroutine HistoryGetDouble6TimeI(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGetPointer です. 
  ! 使用方法に関しては HistoryGetPointer を参照してください.
  !
  ! This is "HistoryGetPointer" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGetPointer", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  integer, intent(in):: time
  logical, intent(in), optional:: quiet
                      real(DP), intent(out):: array(:,:,:,:,:,:)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetDouble6TimeI"

  interface

    subroutine HistoryGetDouble6(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real(DP), intent(out):: array(:,:,:,:,:,:)
                    
    end subroutine HistoryGetDouble6

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetDouble6( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetDouble6TimeI


subroutine HistoryGetDouble7TimeI(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGetPointer です. 
  ! 使用方法に関しては HistoryGetPointer を参照してください.
  !
  ! This is "HistoryGetPointer" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGetPointer", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  integer, intent(in):: time
  logical, intent(in), optional:: quiet
                      real(DP), intent(out):: array(:,:,:,:,:,:,:)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetDouble7TimeI"

  interface

    subroutine HistoryGetDouble7(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real(DP), intent(out):: array(:,:,:,:,:,:,:)
                    
    end subroutine HistoryGetDouble7

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetDouble7( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetDouble7TimeI


subroutine HistoryGetReal0TimeI(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGetPointer です. 
  ! 使用方法に関しては HistoryGetPointer を参照してください.
  !
  ! This is "HistoryGetPointer" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGetPointer", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  integer, intent(in):: time
  logical, intent(in), optional:: quiet
                      real, intent(out):: array
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetReal0TimeI"

  interface

    subroutine HistoryGetReal0(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real, intent(out):: array
                    
    end subroutine HistoryGetReal0

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetReal0( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetReal0TimeI


subroutine HistoryGetReal1TimeI(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGetPointer です. 
  ! 使用方法に関しては HistoryGetPointer を参照してください.
  !
  ! This is "HistoryGetPointer" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGetPointer", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  integer, intent(in):: time
  logical, intent(in), optional:: quiet
                      real, intent(out):: array(:)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetReal1TimeI"

  interface

    subroutine HistoryGetReal1(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real, intent(out):: array(:)
                    
    end subroutine HistoryGetReal1

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetReal1( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetReal1TimeI


subroutine HistoryGetReal2TimeI(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGetPointer です. 
  ! 使用方法に関しては HistoryGetPointer を参照してください.
  !
  ! This is "HistoryGetPointer" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGetPointer", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  integer, intent(in):: time
  logical, intent(in), optional:: quiet
                      real, intent(out):: array(:,:)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetReal2TimeI"

  interface

    subroutine HistoryGetReal2(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real, intent(out):: array(:,:)
                    
    end subroutine HistoryGetReal2

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetReal2( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetReal2TimeI


subroutine HistoryGetReal3TimeI(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGetPointer です. 
  ! 使用方法に関しては HistoryGetPointer を参照してください.
  !
  ! This is "HistoryGetPointer" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGetPointer", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  integer, intent(in):: time
  logical, intent(in), optional:: quiet
                      real, intent(out):: array(:,:,:)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetReal3TimeI"

  interface

    subroutine HistoryGetReal3(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real, intent(out):: array(:,:,:)
                    
    end subroutine HistoryGetReal3

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetReal3( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetReal3TimeI


subroutine HistoryGetReal4TimeI(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGetPointer です. 
  ! 使用方法に関しては HistoryGetPointer を参照してください.
  !
  ! This is "HistoryGetPointer" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGetPointer", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  integer, intent(in):: time
  logical, intent(in), optional:: quiet
                      real, intent(out):: array(:,:,:,:)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetReal4TimeI"

  interface

    subroutine HistoryGetReal4(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real, intent(out):: array(:,:,:,:)
                    
    end subroutine HistoryGetReal4

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetReal4( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetReal4TimeI


subroutine HistoryGetReal5TimeI(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGetPointer です. 
  ! 使用方法に関しては HistoryGetPointer を参照してください.
  !
  ! This is "HistoryGetPointer" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGetPointer", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  integer, intent(in):: time
  logical, intent(in), optional:: quiet
                      real, intent(out):: array(:,:,:,:,:)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetReal5TimeI"

  interface

    subroutine HistoryGetReal5(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real, intent(out):: array(:,:,:,:,:)
                    
    end subroutine HistoryGetReal5

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetReal5( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetReal5TimeI


subroutine HistoryGetReal6TimeI(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGetPointer です. 
  ! 使用方法に関しては HistoryGetPointer を参照してください.
  !
  ! This is "HistoryGetPointer" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGetPointer", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  integer, intent(in):: time
  logical, intent(in), optional:: quiet
                      real, intent(out):: array(:,:,:,:,:,:)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetReal6TimeI"

  interface

    subroutine HistoryGetReal6(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real, intent(out):: array(:,:,:,:,:,:)
                    
    end subroutine HistoryGetReal6

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetReal6( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetReal6TimeI


subroutine HistoryGetReal7TimeI(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGetPointer です. 
  ! 使用方法に関しては HistoryGetPointer を参照してください.
  !
  ! This is "HistoryGetPointer" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGetPointer", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  integer, intent(in):: time
  logical, intent(in), optional:: quiet
                      real, intent(out):: array(:,:,:,:,:,:,:)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetReal7TimeI"

  interface

    subroutine HistoryGetReal7(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real, intent(out):: array(:,:,:,:,:,:,:)
                    
    end subroutine HistoryGetReal7

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetReal7( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetReal7TimeI


subroutine HistoryGetInt0TimeI(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGetPointer です. 
  ! 使用方法に関しては HistoryGetPointer を参照してください.
  !
  ! This is "HistoryGetPointer" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGetPointer", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  integer, intent(in):: time
  logical, intent(in), optional:: quiet
                      integer, intent(out):: array
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetInt0TimeI"

  interface

    subroutine HistoryGetInt0(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          integer, intent(out):: array
                    
    end subroutine HistoryGetInt0

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetInt0( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetInt0TimeI


subroutine HistoryGetInt1TimeI(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGetPointer です. 
  ! 使用方法に関しては HistoryGetPointer を参照してください.
  !
  ! This is "HistoryGetPointer" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGetPointer", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  integer, intent(in):: time
  logical, intent(in), optional:: quiet
                      integer, intent(out):: array(:)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetInt1TimeI"

  interface

    subroutine HistoryGetInt1(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          integer, intent(out):: array(:)
                    
    end subroutine HistoryGetInt1

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetInt1( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetInt1TimeI


subroutine HistoryGetInt2TimeI(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGetPointer です. 
  ! 使用方法に関しては HistoryGetPointer を参照してください.
  !
  ! This is "HistoryGetPointer" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGetPointer", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  integer, intent(in):: time
  logical, intent(in), optional:: quiet
                      integer, intent(out):: array(:,:)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetInt2TimeI"

  interface

    subroutine HistoryGetInt2(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          integer, intent(out):: array(:,:)
                    
    end subroutine HistoryGetInt2

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetInt2( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetInt2TimeI


subroutine HistoryGetInt3TimeI(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGetPointer です. 
  ! 使用方法に関しては HistoryGetPointer を参照してください.
  !
  ! This is "HistoryGetPointer" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGetPointer", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  integer, intent(in):: time
  logical, intent(in), optional:: quiet
                      integer, intent(out):: array(:,:,:)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetInt3TimeI"

  interface

    subroutine HistoryGetInt3(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          integer, intent(out):: array(:,:,:)
                    
    end subroutine HistoryGetInt3

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetInt3( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetInt3TimeI


subroutine HistoryGetInt4TimeI(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGetPointer です. 
  ! 使用方法に関しては HistoryGetPointer を参照してください.
  !
  ! This is "HistoryGetPointer" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGetPointer", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  integer, intent(in):: time
  logical, intent(in), optional:: quiet
                      integer, intent(out):: array(:,:,:,:)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetInt4TimeI"

  interface

    subroutine HistoryGetInt4(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          integer, intent(out):: array(:,:,:,:)
                    
    end subroutine HistoryGetInt4

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetInt4( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetInt4TimeI


subroutine HistoryGetInt5TimeI(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGetPointer です. 
  ! 使用方法に関しては HistoryGetPointer を参照してください.
  !
  ! This is "HistoryGetPointer" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGetPointer", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  integer, intent(in):: time
  logical, intent(in), optional:: quiet
                      integer, intent(out):: array(:,:,:,:,:)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetInt5TimeI"

  interface

    subroutine HistoryGetInt5(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          integer, intent(out):: array(:,:,:,:,:)
                    
    end subroutine HistoryGetInt5

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetInt5( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetInt5TimeI


subroutine HistoryGetInt6TimeI(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGetPointer です. 
  ! 使用方法に関しては HistoryGetPointer を参照してください.
  !
  ! This is "HistoryGetPointer" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGetPointer", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  integer, intent(in):: time
  logical, intent(in), optional:: quiet
                      integer, intent(out):: array(:,:,:,:,:,:)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetInt6TimeI"

  interface

    subroutine HistoryGetInt6(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          integer, intent(out):: array(:,:,:,:,:,:)
                    
    end subroutine HistoryGetInt6

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetInt6( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetInt6TimeI


subroutine HistoryGetInt7TimeI(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGetPointer です. 
  ! 使用方法に関しては HistoryGetPointer を参照してください.
  !
  ! This is "HistoryGetPointer" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGetPointer", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  integer, intent(in):: time
  logical, intent(in), optional:: quiet
                      integer, intent(out):: array(:,:,:,:,:,:,:)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetInt7TimeI"

  interface

    subroutine HistoryGetInt7(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          integer, intent(out):: array(:,:,:,:,:,:,:)
                    
    end subroutine HistoryGetInt7

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetInt7( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetInt7TimeI


subroutine HistoryGetDouble0PointerTimeD(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGet です. 
  ! 使用方法に関しては HistoryGet を参照してください.
  !
  ! This is "HistoryGet" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGet", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real(DP), intent(in):: time
  logical, intent(in), optional:: quiet
                      real(DP), pointer:: array ! (out)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetDouble0PointerTimeD"

  interface

    subroutine HistoryGetDouble0Pointer(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real(DP), pointer:: array ! (out)
                    
    end subroutine HistoryGetDouble0Pointer

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetDouble0Pointer( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetDouble0PointerTimeD


subroutine HistoryGetDouble1PointerTimeD(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGet です. 
  ! 使用方法に関しては HistoryGet を参照してください.
  !
  ! This is "HistoryGet" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGet", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real(DP), intent(in):: time
  logical, intent(in), optional:: quiet
                      real(DP), pointer:: array(:) ! (out)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetDouble1PointerTimeD"

  interface

    subroutine HistoryGetDouble1Pointer(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real(DP), pointer:: array(:) ! (out)
                    
    end subroutine HistoryGetDouble1Pointer

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetDouble1Pointer( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetDouble1PointerTimeD


subroutine HistoryGetDouble2PointerTimeD(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGet です. 
  ! 使用方法に関しては HistoryGet を参照してください.
  !
  ! This is "HistoryGet" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGet", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real(DP), intent(in):: time
  logical, intent(in), optional:: quiet
                      real(DP), pointer:: array(:,:) ! (out)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetDouble2PointerTimeD"

  interface

    subroutine HistoryGetDouble2Pointer(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real(DP), pointer:: array(:,:) ! (out)
                    
    end subroutine HistoryGetDouble2Pointer

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetDouble2Pointer( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetDouble2PointerTimeD


subroutine HistoryGetDouble3PointerTimeD(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGet です. 
  ! 使用方法に関しては HistoryGet を参照してください.
  !
  ! This is "HistoryGet" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGet", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real(DP), intent(in):: time
  logical, intent(in), optional:: quiet
                      real(DP), pointer:: array(:,:,:) ! (out)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetDouble3PointerTimeD"

  interface

    subroutine HistoryGetDouble3Pointer(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real(DP), pointer:: array(:,:,:) ! (out)
                    
    end subroutine HistoryGetDouble3Pointer

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetDouble3Pointer( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetDouble3PointerTimeD


subroutine HistoryGetDouble4PointerTimeD(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGet です. 
  ! 使用方法に関しては HistoryGet を参照してください.
  !
  ! This is "HistoryGet" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGet", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real(DP), intent(in):: time
  logical, intent(in), optional:: quiet
                      real(DP), pointer:: array(:,:,:,:) ! (out)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetDouble4PointerTimeD"

  interface

    subroutine HistoryGetDouble4Pointer(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real(DP), pointer:: array(:,:,:,:) ! (out)
                    
    end subroutine HistoryGetDouble4Pointer

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetDouble4Pointer( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetDouble4PointerTimeD


subroutine HistoryGetDouble5PointerTimeD(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGet です. 
  ! 使用方法に関しては HistoryGet を参照してください.
  !
  ! This is "HistoryGet" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGet", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real(DP), intent(in):: time
  logical, intent(in), optional:: quiet
                      real(DP), pointer:: array(:,:,:,:,:) ! (out)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetDouble5PointerTimeD"

  interface

    subroutine HistoryGetDouble5Pointer(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real(DP), pointer:: array(:,:,:,:,:) ! (out)
                    
    end subroutine HistoryGetDouble5Pointer

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetDouble5Pointer( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetDouble5PointerTimeD


subroutine HistoryGetDouble6PointerTimeD(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGet です. 
  ! 使用方法に関しては HistoryGet を参照してください.
  !
  ! This is "HistoryGet" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGet", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real(DP), intent(in):: time
  logical, intent(in), optional:: quiet
                      real(DP), pointer:: array(:,:,:,:,:,:) ! (out)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetDouble6PointerTimeD"

  interface

    subroutine HistoryGetDouble6Pointer(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real(DP), pointer:: array(:,:,:,:,:,:) ! (out)
                    
    end subroutine HistoryGetDouble6Pointer

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetDouble6Pointer( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetDouble6PointerTimeD


subroutine HistoryGetDouble7PointerTimeD(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGet です. 
  ! 使用方法に関しては HistoryGet を参照してください.
  !
  ! This is "HistoryGet" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGet", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real(DP), intent(in):: time
  logical, intent(in), optional:: quiet
                      real(DP), pointer:: array(:,:,:,:,:,:,:) ! (out)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetDouble7PointerTimeD"

  interface

    subroutine HistoryGetDouble7Pointer(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real(DP), pointer:: array(:,:,:,:,:,:,:) ! (out)
                    
    end subroutine HistoryGetDouble7Pointer

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetDouble7Pointer( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetDouble7PointerTimeD


subroutine HistoryGetReal0PointerTimeD(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGet です. 
  ! 使用方法に関しては HistoryGet を参照してください.
  !
  ! This is "HistoryGet" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGet", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real(DP), intent(in):: time
  logical, intent(in), optional:: quiet
                      real, pointer:: array ! (out)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetReal0PointerTimeD"

  interface

    subroutine HistoryGetReal0Pointer(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real, pointer:: array ! (out)
                    
    end subroutine HistoryGetReal0Pointer

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetReal0Pointer( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetReal0PointerTimeD


subroutine HistoryGetReal1PointerTimeD(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGet です. 
  ! 使用方法に関しては HistoryGet を参照してください.
  !
  ! This is "HistoryGet" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGet", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real(DP), intent(in):: time
  logical, intent(in), optional:: quiet
                      real, pointer:: array(:) ! (out)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetReal1PointerTimeD"

  interface

    subroutine HistoryGetReal1Pointer(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real, pointer:: array(:) ! (out)
                    
    end subroutine HistoryGetReal1Pointer

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetReal1Pointer( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetReal1PointerTimeD


subroutine HistoryGetReal2PointerTimeD(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGet です. 
  ! 使用方法に関しては HistoryGet を参照してください.
  !
  ! This is "HistoryGet" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGet", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real(DP), intent(in):: time
  logical, intent(in), optional:: quiet
                      real, pointer:: array(:,:) ! (out)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetReal2PointerTimeD"

  interface

    subroutine HistoryGetReal2Pointer(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real, pointer:: array(:,:) ! (out)
                    
    end subroutine HistoryGetReal2Pointer

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetReal2Pointer( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetReal2PointerTimeD


subroutine HistoryGetReal3PointerTimeD(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGet です. 
  ! 使用方法に関しては HistoryGet を参照してください.
  !
  ! This is "HistoryGet" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGet", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real(DP), intent(in):: time
  logical, intent(in), optional:: quiet
                      real, pointer:: array(:,:,:) ! (out)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetReal3PointerTimeD"

  interface

    subroutine HistoryGetReal3Pointer(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real, pointer:: array(:,:,:) ! (out)
                    
    end subroutine HistoryGetReal3Pointer

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetReal3Pointer( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetReal3PointerTimeD


subroutine HistoryGetReal4PointerTimeD(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGet です. 
  ! 使用方法に関しては HistoryGet を参照してください.
  !
  ! This is "HistoryGet" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGet", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real(DP), intent(in):: time
  logical, intent(in), optional:: quiet
                      real, pointer:: array(:,:,:,:) ! (out)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetReal4PointerTimeD"

  interface

    subroutine HistoryGetReal4Pointer(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real, pointer:: array(:,:,:,:) ! (out)
                    
    end subroutine HistoryGetReal4Pointer

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetReal4Pointer( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetReal4PointerTimeD


subroutine HistoryGetReal5PointerTimeD(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGet です. 
  ! 使用方法に関しては HistoryGet を参照してください.
  !
  ! This is "HistoryGet" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGet", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real(DP), intent(in):: time
  logical, intent(in), optional:: quiet
                      real, pointer:: array(:,:,:,:,:) ! (out)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetReal5PointerTimeD"

  interface

    subroutine HistoryGetReal5Pointer(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real, pointer:: array(:,:,:,:,:) ! (out)
                    
    end subroutine HistoryGetReal5Pointer

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetReal5Pointer( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetReal5PointerTimeD


subroutine HistoryGetReal6PointerTimeD(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGet です. 
  ! 使用方法に関しては HistoryGet を参照してください.
  !
  ! This is "HistoryGet" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGet", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real(DP), intent(in):: time
  logical, intent(in), optional:: quiet
                      real, pointer:: array(:,:,:,:,:,:) ! (out)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetReal6PointerTimeD"

  interface

    subroutine HistoryGetReal6Pointer(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real, pointer:: array(:,:,:,:,:,:) ! (out)
                    
    end subroutine HistoryGetReal6Pointer

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetReal6Pointer( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetReal6PointerTimeD


subroutine HistoryGetReal7PointerTimeD(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGet です. 
  ! 使用方法に関しては HistoryGet を参照してください.
  !
  ! This is "HistoryGet" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGet", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real(DP), intent(in):: time
  logical, intent(in), optional:: quiet
                      real, pointer:: array(:,:,:,:,:,:,:) ! (out)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetReal7PointerTimeD"

  interface

    subroutine HistoryGetReal7Pointer(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real, pointer:: array(:,:,:,:,:,:,:) ! (out)
                    
    end subroutine HistoryGetReal7Pointer

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetReal7Pointer( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetReal7PointerTimeD


subroutine HistoryGetInt0PointerTimeD(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGet です. 
  ! 使用方法に関しては HistoryGet を参照してください.
  !
  ! This is "HistoryGet" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGet", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real(DP), intent(in):: time
  logical, intent(in), optional:: quiet
                      integer, pointer:: array ! (out)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetInt0PointerTimeD"

  interface

    subroutine HistoryGetInt0Pointer(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          integer, pointer:: array ! (out)
                    
    end subroutine HistoryGetInt0Pointer

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetInt0Pointer( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetInt0PointerTimeD


subroutine HistoryGetInt1PointerTimeD(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGet です. 
  ! 使用方法に関しては HistoryGet を参照してください.
  !
  ! This is "HistoryGet" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGet", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real(DP), intent(in):: time
  logical, intent(in), optional:: quiet
                      integer, pointer:: array(:) ! (out)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetInt1PointerTimeD"

  interface

    subroutine HistoryGetInt1Pointer(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          integer, pointer:: array(:) ! (out)
                    
    end subroutine HistoryGetInt1Pointer

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetInt1Pointer( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetInt1PointerTimeD


subroutine HistoryGetInt2PointerTimeD(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGet です. 
  ! 使用方法に関しては HistoryGet を参照してください.
  !
  ! This is "HistoryGet" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGet", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real(DP), intent(in):: time
  logical, intent(in), optional:: quiet
                      integer, pointer:: array(:,:) ! (out)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetInt2PointerTimeD"

  interface

    subroutine HistoryGetInt2Pointer(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          integer, pointer:: array(:,:) ! (out)
                    
    end subroutine HistoryGetInt2Pointer

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetInt2Pointer( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetInt2PointerTimeD


subroutine HistoryGetInt3PointerTimeD(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGet です. 
  ! 使用方法に関しては HistoryGet を参照してください.
  !
  ! This is "HistoryGet" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGet", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real(DP), intent(in):: time
  logical, intent(in), optional:: quiet
                      integer, pointer:: array(:,:,:) ! (out)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetInt3PointerTimeD"

  interface

    subroutine HistoryGetInt3Pointer(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          integer, pointer:: array(:,:,:) ! (out)
                    
    end subroutine HistoryGetInt3Pointer

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetInt3Pointer( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetInt3PointerTimeD


subroutine HistoryGetInt4PointerTimeD(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGet です. 
  ! 使用方法に関しては HistoryGet を参照してください.
  !
  ! This is "HistoryGet" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGet", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real(DP), intent(in):: time
  logical, intent(in), optional:: quiet
                      integer, pointer:: array(:,:,:,:) ! (out)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetInt4PointerTimeD"

  interface

    subroutine HistoryGetInt4Pointer(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          integer, pointer:: array(:,:,:,:) ! (out)
                    
    end subroutine HistoryGetInt4Pointer

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetInt4Pointer( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetInt4PointerTimeD


subroutine HistoryGetInt5PointerTimeD(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGet です. 
  ! 使用方法に関しては HistoryGet を参照してください.
  !
  ! This is "HistoryGet" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGet", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real(DP), intent(in):: time
  logical, intent(in), optional:: quiet
                      integer, pointer:: array(:,:,:,:,:) ! (out)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetInt5PointerTimeD"

  interface

    subroutine HistoryGetInt5Pointer(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          integer, pointer:: array(:,:,:,:,:) ! (out)
                    
    end subroutine HistoryGetInt5Pointer

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetInt5Pointer( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetInt5PointerTimeD


subroutine HistoryGetInt6PointerTimeD(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGet です. 
  ! 使用方法に関しては HistoryGet を参照してください.
  !
  ! This is "HistoryGet" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGet", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real(DP), intent(in):: time
  logical, intent(in), optional:: quiet
                      integer, pointer:: array(:,:,:,:,:,:) ! (out)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetInt6PointerTimeD"

  interface

    subroutine HistoryGetInt6Pointer(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          integer, pointer:: array(:,:,:,:,:,:) ! (out)
                    
    end subroutine HistoryGetInt6Pointer

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetInt6Pointer( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetInt6PointerTimeD


subroutine HistoryGetInt7PointerTimeD(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGet です. 
  ! 使用方法に関しては HistoryGet を参照してください.
  !
  ! This is "HistoryGet" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGet", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real(DP), intent(in):: time
  logical, intent(in), optional:: quiet
                      integer, pointer:: array(:,:,:,:,:,:,:) ! (out)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetInt7PointerTimeD"

  interface

    subroutine HistoryGetInt7Pointer(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          integer, pointer:: array(:,:,:,:,:,:,:) ! (out)
                    
    end subroutine HistoryGetInt7Pointer

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetInt7Pointer( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetInt7PointerTimeD


subroutine HistoryGetDouble0PointerTimeR(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGet です. 
  ! 使用方法に関しては HistoryGet を参照してください.
  !
  ! This is "HistoryGet" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGet", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real, intent(in):: time
  logical, intent(in), optional:: quiet
                      real(DP), pointer:: array ! (out)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetDouble0PointerTimeR"

  interface

    subroutine HistoryGetDouble0Pointer(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real(DP), pointer:: array ! (out)
                    
    end subroutine HistoryGetDouble0Pointer

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetDouble0Pointer( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetDouble0PointerTimeR


subroutine HistoryGetDouble1PointerTimeR(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGet です. 
  ! 使用方法に関しては HistoryGet を参照してください.
  !
  ! This is "HistoryGet" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGet", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real, intent(in):: time
  logical, intent(in), optional:: quiet
                      real(DP), pointer:: array(:) ! (out)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetDouble1PointerTimeR"

  interface

    subroutine HistoryGetDouble1Pointer(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real(DP), pointer:: array(:) ! (out)
                    
    end subroutine HistoryGetDouble1Pointer

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetDouble1Pointer( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetDouble1PointerTimeR


subroutine HistoryGetDouble2PointerTimeR(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGet です. 
  ! 使用方法に関しては HistoryGet を参照してください.
  !
  ! This is "HistoryGet" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGet", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real, intent(in):: time
  logical, intent(in), optional:: quiet
                      real(DP), pointer:: array(:,:) ! (out)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetDouble2PointerTimeR"

  interface

    subroutine HistoryGetDouble2Pointer(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real(DP), pointer:: array(:,:) ! (out)
                    
    end subroutine HistoryGetDouble2Pointer

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetDouble2Pointer( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetDouble2PointerTimeR


subroutine HistoryGetDouble3PointerTimeR(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGet です. 
  ! 使用方法に関しては HistoryGet を参照してください.
  !
  ! This is "HistoryGet" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGet", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real, intent(in):: time
  logical, intent(in), optional:: quiet
                      real(DP), pointer:: array(:,:,:) ! (out)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetDouble3PointerTimeR"

  interface

    subroutine HistoryGetDouble3Pointer(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real(DP), pointer:: array(:,:,:) ! (out)
                    
    end subroutine HistoryGetDouble3Pointer

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetDouble3Pointer( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetDouble3PointerTimeR


subroutine HistoryGetDouble4PointerTimeR(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGet です. 
  ! 使用方法に関しては HistoryGet を参照してください.
  !
  ! This is "HistoryGet" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGet", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real, intent(in):: time
  logical, intent(in), optional:: quiet
                      real(DP), pointer:: array(:,:,:,:) ! (out)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetDouble4PointerTimeR"

  interface

    subroutine HistoryGetDouble4Pointer(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real(DP), pointer:: array(:,:,:,:) ! (out)
                    
    end subroutine HistoryGetDouble4Pointer

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetDouble4Pointer( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetDouble4PointerTimeR


subroutine HistoryGetDouble5PointerTimeR(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGet です. 
  ! 使用方法に関しては HistoryGet を参照してください.
  !
  ! This is "HistoryGet" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGet", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real, intent(in):: time
  logical, intent(in), optional:: quiet
                      real(DP), pointer:: array(:,:,:,:,:) ! (out)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetDouble5PointerTimeR"

  interface

    subroutine HistoryGetDouble5Pointer(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real(DP), pointer:: array(:,:,:,:,:) ! (out)
                    
    end subroutine HistoryGetDouble5Pointer

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetDouble5Pointer( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetDouble5PointerTimeR


subroutine HistoryGetDouble6PointerTimeR(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGet です. 
  ! 使用方法に関しては HistoryGet を参照してください.
  !
  ! This is "HistoryGet" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGet", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real, intent(in):: time
  logical, intent(in), optional:: quiet
                      real(DP), pointer:: array(:,:,:,:,:,:) ! (out)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetDouble6PointerTimeR"

  interface

    subroutine HistoryGetDouble6Pointer(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real(DP), pointer:: array(:,:,:,:,:,:) ! (out)
                    
    end subroutine HistoryGetDouble6Pointer

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetDouble6Pointer( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetDouble6PointerTimeR


subroutine HistoryGetDouble7PointerTimeR(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGet です. 
  ! 使用方法に関しては HistoryGet を参照してください.
  !
  ! This is "HistoryGet" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGet", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real, intent(in):: time
  logical, intent(in), optional:: quiet
                      real(DP), pointer:: array(:,:,:,:,:,:,:) ! (out)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetDouble7PointerTimeR"

  interface

    subroutine HistoryGetDouble7Pointer(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real(DP), pointer:: array(:,:,:,:,:,:,:) ! (out)
                    
    end subroutine HistoryGetDouble7Pointer

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetDouble7Pointer( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetDouble7PointerTimeR


subroutine HistoryGetReal0PointerTimeR(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGet です. 
  ! 使用方法に関しては HistoryGet を参照してください.
  !
  ! This is "HistoryGet" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGet", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real, intent(in):: time
  logical, intent(in), optional:: quiet
                      real, pointer:: array ! (out)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetReal0PointerTimeR"

  interface

    subroutine HistoryGetReal0Pointer(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real, pointer:: array ! (out)
                    
    end subroutine HistoryGetReal0Pointer

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetReal0Pointer( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetReal0PointerTimeR


subroutine HistoryGetReal1PointerTimeR(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGet です. 
  ! 使用方法に関しては HistoryGet を参照してください.
  !
  ! This is "HistoryGet" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGet", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real, intent(in):: time
  logical, intent(in), optional:: quiet
                      real, pointer:: array(:) ! (out)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetReal1PointerTimeR"

  interface

    subroutine HistoryGetReal1Pointer(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real, pointer:: array(:) ! (out)
                    
    end subroutine HistoryGetReal1Pointer

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetReal1Pointer( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetReal1PointerTimeR


subroutine HistoryGetReal2PointerTimeR(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGet です. 
  ! 使用方法に関しては HistoryGet を参照してください.
  !
  ! This is "HistoryGet" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGet", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real, intent(in):: time
  logical, intent(in), optional:: quiet
                      real, pointer:: array(:,:) ! (out)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetReal2PointerTimeR"

  interface

    subroutine HistoryGetReal2Pointer(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real, pointer:: array(:,:) ! (out)
                    
    end subroutine HistoryGetReal2Pointer

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetReal2Pointer( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetReal2PointerTimeR


subroutine HistoryGetReal3PointerTimeR(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGet です. 
  ! 使用方法に関しては HistoryGet を参照してください.
  !
  ! This is "HistoryGet" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGet", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real, intent(in):: time
  logical, intent(in), optional:: quiet
                      real, pointer:: array(:,:,:) ! (out)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetReal3PointerTimeR"

  interface

    subroutine HistoryGetReal3Pointer(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real, pointer:: array(:,:,:) ! (out)
                    
    end subroutine HistoryGetReal3Pointer

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetReal3Pointer( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetReal3PointerTimeR


subroutine HistoryGetReal4PointerTimeR(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGet です. 
  ! 使用方法に関しては HistoryGet を参照してください.
  !
  ! This is "HistoryGet" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGet", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real, intent(in):: time
  logical, intent(in), optional:: quiet
                      real, pointer:: array(:,:,:,:) ! (out)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetReal4PointerTimeR"

  interface

    subroutine HistoryGetReal4Pointer(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real, pointer:: array(:,:,:,:) ! (out)
                    
    end subroutine HistoryGetReal4Pointer

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetReal4Pointer( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetReal4PointerTimeR


subroutine HistoryGetReal5PointerTimeR(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGet です. 
  ! 使用方法に関しては HistoryGet を参照してください.
  !
  ! This is "HistoryGet" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGet", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real, intent(in):: time
  logical, intent(in), optional:: quiet
                      real, pointer:: array(:,:,:,:,:) ! (out)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetReal5PointerTimeR"

  interface

    subroutine HistoryGetReal5Pointer(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real, pointer:: array(:,:,:,:,:) ! (out)
                    
    end subroutine HistoryGetReal5Pointer

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetReal5Pointer( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetReal5PointerTimeR


subroutine HistoryGetReal6PointerTimeR(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGet です. 
  ! 使用方法に関しては HistoryGet を参照してください.
  !
  ! This is "HistoryGet" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGet", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real, intent(in):: time
  logical, intent(in), optional:: quiet
                      real, pointer:: array(:,:,:,:,:,:) ! (out)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetReal6PointerTimeR"

  interface

    subroutine HistoryGetReal6Pointer(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real, pointer:: array(:,:,:,:,:,:) ! (out)
                    
    end subroutine HistoryGetReal6Pointer

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetReal6Pointer( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetReal6PointerTimeR


subroutine HistoryGetReal7PointerTimeR(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGet です. 
  ! 使用方法に関しては HistoryGet を参照してください.
  !
  ! This is "HistoryGet" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGet", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real, intent(in):: time
  logical, intent(in), optional:: quiet
                      real, pointer:: array(:,:,:,:,:,:,:) ! (out)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetReal7PointerTimeR"

  interface

    subroutine HistoryGetReal7Pointer(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real, pointer:: array(:,:,:,:,:,:,:) ! (out)
                    
    end subroutine HistoryGetReal7Pointer

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetReal7Pointer( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetReal7PointerTimeR


subroutine HistoryGetInt0PointerTimeR(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGet です. 
  ! 使用方法に関しては HistoryGet を参照してください.
  !
  ! This is "HistoryGet" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGet", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real, intent(in):: time
  logical, intent(in), optional:: quiet
                      integer, pointer:: array ! (out)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetInt0PointerTimeR"

  interface

    subroutine HistoryGetInt0Pointer(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          integer, pointer:: array ! (out)
                    
    end subroutine HistoryGetInt0Pointer

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetInt0Pointer( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetInt0PointerTimeR


subroutine HistoryGetInt1PointerTimeR(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGet です. 
  ! 使用方法に関しては HistoryGet を参照してください.
  !
  ! This is "HistoryGet" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGet", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real, intent(in):: time
  logical, intent(in), optional:: quiet
                      integer, pointer:: array(:) ! (out)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetInt1PointerTimeR"

  interface

    subroutine HistoryGetInt1Pointer(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          integer, pointer:: array(:) ! (out)
                    
    end subroutine HistoryGetInt1Pointer

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetInt1Pointer( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetInt1PointerTimeR


subroutine HistoryGetInt2PointerTimeR(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGet です. 
  ! 使用方法に関しては HistoryGet を参照してください.
  !
  ! This is "HistoryGet" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGet", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real, intent(in):: time
  logical, intent(in), optional:: quiet
                      integer, pointer:: array(:,:) ! (out)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetInt2PointerTimeR"

  interface

    subroutine HistoryGetInt2Pointer(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          integer, pointer:: array(:,:) ! (out)
                    
    end subroutine HistoryGetInt2Pointer

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetInt2Pointer( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetInt2PointerTimeR


subroutine HistoryGetInt3PointerTimeR(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGet です. 
  ! 使用方法に関しては HistoryGet を参照してください.
  !
  ! This is "HistoryGet" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGet", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real, intent(in):: time
  logical, intent(in), optional:: quiet
                      integer, pointer:: array(:,:,:) ! (out)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetInt3PointerTimeR"

  interface

    subroutine HistoryGetInt3Pointer(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          integer, pointer:: array(:,:,:) ! (out)
                    
    end subroutine HistoryGetInt3Pointer

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetInt3Pointer( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetInt3PointerTimeR


subroutine HistoryGetInt4PointerTimeR(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGet です. 
  ! 使用方法に関しては HistoryGet を参照してください.
  !
  ! This is "HistoryGet" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGet", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real, intent(in):: time
  logical, intent(in), optional:: quiet
                      integer, pointer:: array(:,:,:,:) ! (out)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetInt4PointerTimeR"

  interface

    subroutine HistoryGetInt4Pointer(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          integer, pointer:: array(:,:,:,:) ! (out)
                    
    end subroutine HistoryGetInt4Pointer

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetInt4Pointer( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetInt4PointerTimeR


subroutine HistoryGetInt5PointerTimeR(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGet です. 
  ! 使用方法に関しては HistoryGet を参照してください.
  !
  ! This is "HistoryGet" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGet", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real, intent(in):: time
  logical, intent(in), optional:: quiet
                      integer, pointer:: array(:,:,:,:,:) ! (out)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetInt5PointerTimeR"

  interface

    subroutine HistoryGetInt5Pointer(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          integer, pointer:: array(:,:,:,:,:) ! (out)
                    
    end subroutine HistoryGetInt5Pointer

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetInt5Pointer( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetInt5PointerTimeR


subroutine HistoryGetInt6PointerTimeR(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGet です. 
  ! 使用方法に関しては HistoryGet を参照してください.
  !
  ! This is "HistoryGet" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGet", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real, intent(in):: time
  logical, intent(in), optional:: quiet
                      integer, pointer:: array(:,:,:,:,:,:) ! (out)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetInt6PointerTimeR"

  interface

    subroutine HistoryGetInt6Pointer(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          integer, pointer:: array(:,:,:,:,:,:) ! (out)
                    
    end subroutine HistoryGetInt6Pointer

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetInt6Pointer( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetInt6PointerTimeR


subroutine HistoryGetInt7PointerTimeR(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGet です. 
  ! 使用方法に関しては HistoryGet を参照してください.
  !
  ! This is "HistoryGet" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGet", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  real, intent(in):: time
  logical, intent(in), optional:: quiet
                      integer, pointer:: array(:,:,:,:,:,:,:) ! (out)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetInt7PointerTimeR"

  interface

    subroutine HistoryGetInt7Pointer(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          integer, pointer:: array(:,:,:,:,:,:,:) ! (out)
                    
    end subroutine HistoryGetInt7Pointer

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetInt7Pointer( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetInt7PointerTimeR


subroutine HistoryGetDouble0PointerTimeI(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGet です. 
  ! 使用方法に関しては HistoryGet を参照してください.
  !
  ! This is "HistoryGet" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGet", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  integer, intent(in):: time
  logical, intent(in), optional:: quiet
                      real(DP), pointer:: array ! (out)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetDouble0PointerTimeI"

  interface

    subroutine HistoryGetDouble0Pointer(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real(DP), pointer:: array ! (out)
                    
    end subroutine HistoryGetDouble0Pointer

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetDouble0Pointer( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetDouble0PointerTimeI


subroutine HistoryGetDouble1PointerTimeI(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGet です. 
  ! 使用方法に関しては HistoryGet を参照してください.
  !
  ! This is "HistoryGet" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGet", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  integer, intent(in):: time
  logical, intent(in), optional:: quiet
                      real(DP), pointer:: array(:) ! (out)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetDouble1PointerTimeI"

  interface

    subroutine HistoryGetDouble1Pointer(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real(DP), pointer:: array(:) ! (out)
                    
    end subroutine HistoryGetDouble1Pointer

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetDouble1Pointer( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetDouble1PointerTimeI


subroutine HistoryGetDouble2PointerTimeI(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGet です. 
  ! 使用方法に関しては HistoryGet を参照してください.
  !
  ! This is "HistoryGet" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGet", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  integer, intent(in):: time
  logical, intent(in), optional:: quiet
                      real(DP), pointer:: array(:,:) ! (out)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetDouble2PointerTimeI"

  interface

    subroutine HistoryGetDouble2Pointer(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real(DP), pointer:: array(:,:) ! (out)
                    
    end subroutine HistoryGetDouble2Pointer

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetDouble2Pointer( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetDouble2PointerTimeI


subroutine HistoryGetDouble3PointerTimeI(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGet です. 
  ! 使用方法に関しては HistoryGet を参照してください.
  !
  ! This is "HistoryGet" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGet", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  integer, intent(in):: time
  logical, intent(in), optional:: quiet
                      real(DP), pointer:: array(:,:,:) ! (out)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetDouble3PointerTimeI"

  interface

    subroutine HistoryGetDouble3Pointer(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real(DP), pointer:: array(:,:,:) ! (out)
                    
    end subroutine HistoryGetDouble3Pointer

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetDouble3Pointer( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetDouble3PointerTimeI


subroutine HistoryGetDouble4PointerTimeI(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGet です. 
  ! 使用方法に関しては HistoryGet を参照してください.
  !
  ! This is "HistoryGet" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGet", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  integer, intent(in):: time
  logical, intent(in), optional:: quiet
                      real(DP), pointer:: array(:,:,:,:) ! (out)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetDouble4PointerTimeI"

  interface

    subroutine HistoryGetDouble4Pointer(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real(DP), pointer:: array(:,:,:,:) ! (out)
                    
    end subroutine HistoryGetDouble4Pointer

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetDouble4Pointer( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetDouble4PointerTimeI


subroutine HistoryGetDouble5PointerTimeI(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGet です. 
  ! 使用方法に関しては HistoryGet を参照してください.
  !
  ! This is "HistoryGet" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGet", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  integer, intent(in):: time
  logical, intent(in), optional:: quiet
                      real(DP), pointer:: array(:,:,:,:,:) ! (out)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetDouble5PointerTimeI"

  interface

    subroutine HistoryGetDouble5Pointer(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real(DP), pointer:: array(:,:,:,:,:) ! (out)
                    
    end subroutine HistoryGetDouble5Pointer

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetDouble5Pointer( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetDouble5PointerTimeI


subroutine HistoryGetDouble6PointerTimeI(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGet です. 
  ! 使用方法に関しては HistoryGet を参照してください.
  !
  ! This is "HistoryGet" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGet", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  integer, intent(in):: time
  logical, intent(in), optional:: quiet
                      real(DP), pointer:: array(:,:,:,:,:,:) ! (out)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetDouble6PointerTimeI"

  interface

    subroutine HistoryGetDouble6Pointer(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real(DP), pointer:: array(:,:,:,:,:,:) ! (out)
                    
    end subroutine HistoryGetDouble6Pointer

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetDouble6Pointer( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetDouble6PointerTimeI


subroutine HistoryGetDouble7PointerTimeI(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGet です. 
  ! 使用方法に関しては HistoryGet を参照してください.
  !
  ! This is "HistoryGet" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGet", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  integer, intent(in):: time
  logical, intent(in), optional:: quiet
                      real(DP), pointer:: array(:,:,:,:,:,:,:) ! (out)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetDouble7PointerTimeI"

  interface

    subroutine HistoryGetDouble7Pointer(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real(DP), pointer:: array(:,:,:,:,:,:,:) ! (out)
                    
    end subroutine HistoryGetDouble7Pointer

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetDouble7Pointer( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetDouble7PointerTimeI


subroutine HistoryGetReal0PointerTimeI(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGet です. 
  ! 使用方法に関しては HistoryGet を参照してください.
  !
  ! This is "HistoryGet" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGet", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  integer, intent(in):: time
  logical, intent(in), optional:: quiet
                      real, pointer:: array ! (out)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetReal0PointerTimeI"

  interface

    subroutine HistoryGetReal0Pointer(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real, pointer:: array ! (out)
                    
    end subroutine HistoryGetReal0Pointer

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetReal0Pointer( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetReal0PointerTimeI


subroutine HistoryGetReal1PointerTimeI(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGet です. 
  ! 使用方法に関しては HistoryGet を参照してください.
  !
  ! This is "HistoryGet" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGet", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  integer, intent(in):: time
  logical, intent(in), optional:: quiet
                      real, pointer:: array(:) ! (out)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetReal1PointerTimeI"

  interface

    subroutine HistoryGetReal1Pointer(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real, pointer:: array(:) ! (out)
                    
    end subroutine HistoryGetReal1Pointer

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetReal1Pointer( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetReal1PointerTimeI


subroutine HistoryGetReal2PointerTimeI(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGet です. 
  ! 使用方法に関しては HistoryGet を参照してください.
  !
  ! This is "HistoryGet" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGet", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  integer, intent(in):: time
  logical, intent(in), optional:: quiet
                      real, pointer:: array(:,:) ! (out)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetReal2PointerTimeI"

  interface

    subroutine HistoryGetReal2Pointer(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real, pointer:: array(:,:) ! (out)
                    
    end subroutine HistoryGetReal2Pointer

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetReal2Pointer( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetReal2PointerTimeI


subroutine HistoryGetReal3PointerTimeI(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGet です. 
  ! 使用方法に関しては HistoryGet を参照してください.
  !
  ! This is "HistoryGet" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGet", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  integer, intent(in):: time
  logical, intent(in), optional:: quiet
                      real, pointer:: array(:,:,:) ! (out)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetReal3PointerTimeI"

  interface

    subroutine HistoryGetReal3Pointer(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real, pointer:: array(:,:,:) ! (out)
                    
    end subroutine HistoryGetReal3Pointer

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetReal3Pointer( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetReal3PointerTimeI


subroutine HistoryGetReal4PointerTimeI(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGet です. 
  ! 使用方法に関しては HistoryGet を参照してください.
  !
  ! This is "HistoryGet" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGet", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  integer, intent(in):: time
  logical, intent(in), optional:: quiet
                      real, pointer:: array(:,:,:,:) ! (out)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetReal4PointerTimeI"

  interface

    subroutine HistoryGetReal4Pointer(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real, pointer:: array(:,:,:,:) ! (out)
                    
    end subroutine HistoryGetReal4Pointer

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetReal4Pointer( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetReal4PointerTimeI


subroutine HistoryGetReal5PointerTimeI(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGet です. 
  ! 使用方法に関しては HistoryGet を参照してください.
  !
  ! This is "HistoryGet" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGet", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  integer, intent(in):: time
  logical, intent(in), optional:: quiet
                      real, pointer:: array(:,:,:,:,:) ! (out)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetReal5PointerTimeI"

  interface

    subroutine HistoryGetReal5Pointer(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real, pointer:: array(:,:,:,:,:) ! (out)
                    
    end subroutine HistoryGetReal5Pointer

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetReal5Pointer( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetReal5PointerTimeI


subroutine HistoryGetReal6PointerTimeI(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGet です. 
  ! 使用方法に関しては HistoryGet を参照してください.
  !
  ! This is "HistoryGet" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGet", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  integer, intent(in):: time
  logical, intent(in), optional:: quiet
                      real, pointer:: array(:,:,:,:,:,:) ! (out)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetReal6PointerTimeI"

  interface

    subroutine HistoryGetReal6Pointer(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real, pointer:: array(:,:,:,:,:,:) ! (out)
                    
    end subroutine HistoryGetReal6Pointer

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetReal6Pointer( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetReal6PointerTimeI


subroutine HistoryGetReal7PointerTimeI(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGet です. 
  ! 使用方法に関しては HistoryGet を参照してください.
  !
  ! This is "HistoryGet" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGet", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  integer, intent(in):: time
  logical, intent(in), optional:: quiet
                      real, pointer:: array(:,:,:,:,:,:,:) ! (out)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetReal7PointerTimeI"

  interface

    subroutine HistoryGetReal7Pointer(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          real, pointer:: array(:,:,:,:,:,:,:) ! (out)
                    
    end subroutine HistoryGetReal7Pointer

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetReal7Pointer( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetReal7PointerTimeI


subroutine HistoryGetInt0PointerTimeI(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGet です. 
  ! 使用方法に関しては HistoryGet を参照してください.
  !
  ! This is "HistoryGet" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGet", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  integer, intent(in):: time
  logical, intent(in), optional:: quiet
                      integer, pointer:: array ! (out)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetInt0PointerTimeI"

  interface

    subroutine HistoryGetInt0Pointer(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          integer, pointer:: array ! (out)
                    
    end subroutine HistoryGetInt0Pointer

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetInt0Pointer( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetInt0PointerTimeI


subroutine HistoryGetInt1PointerTimeI(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGet です. 
  ! 使用方法に関しては HistoryGet を参照してください.
  !
  ! This is "HistoryGet" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGet", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  integer, intent(in):: time
  logical, intent(in), optional:: quiet
                      integer, pointer:: array(:) ! (out)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetInt1PointerTimeI"

  interface

    subroutine HistoryGetInt1Pointer(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          integer, pointer:: array(:) ! (out)
                    
    end subroutine HistoryGetInt1Pointer

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetInt1Pointer( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetInt1PointerTimeI


subroutine HistoryGetInt2PointerTimeI(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGet です. 
  ! 使用方法に関しては HistoryGet を参照してください.
  !
  ! This is "HistoryGet" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGet", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  integer, intent(in):: time
  logical, intent(in), optional:: quiet
                      integer, pointer:: array(:,:) ! (out)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetInt2PointerTimeI"

  interface

    subroutine HistoryGetInt2Pointer(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          integer, pointer:: array(:,:) ! (out)
                    
    end subroutine HistoryGetInt2Pointer

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetInt2Pointer( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetInt2PointerTimeI


subroutine HistoryGetInt3PointerTimeI(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGet です. 
  ! 使用方法に関しては HistoryGet を参照してください.
  !
  ! This is "HistoryGet" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGet", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  integer, intent(in):: time
  logical, intent(in), optional:: quiet
                      integer, pointer:: array(:,:,:) ! (out)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetInt3PointerTimeI"

  interface

    subroutine HistoryGetInt3Pointer(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          integer, pointer:: array(:,:,:) ! (out)
                    
    end subroutine HistoryGetInt3Pointer

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetInt3Pointer( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetInt3PointerTimeI


subroutine HistoryGetInt4PointerTimeI(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGet です. 
  ! 使用方法に関しては HistoryGet を参照してください.
  !
  ! This is "HistoryGet" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGet", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  integer, intent(in):: time
  logical, intent(in), optional:: quiet
                      integer, pointer:: array(:,:,:,:) ! (out)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetInt4PointerTimeI"

  interface

    subroutine HistoryGetInt4Pointer(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          integer, pointer:: array(:,:,:,:) ! (out)
                    
    end subroutine HistoryGetInt4Pointer

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetInt4Pointer( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetInt4PointerTimeI


subroutine HistoryGetInt5PointerTimeI(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGet です. 
  ! 使用方法に関しては HistoryGet を参照してください.
  !
  ! This is "HistoryGet" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGet", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  integer, intent(in):: time
  logical, intent(in), optional:: quiet
                      integer, pointer:: array(:,:,:,:,:) ! (out)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetInt5PointerTimeI"

  interface

    subroutine HistoryGetInt5Pointer(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          integer, pointer:: array(:,:,:,:,:) ! (out)
                    
    end subroutine HistoryGetInt5Pointer

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetInt5Pointer( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetInt5PointerTimeI


subroutine HistoryGetInt6PointerTimeI(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGet です. 
  ! 使用方法に関しては HistoryGet を参照してください.
  !
  ! This is "HistoryGet" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGet", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  integer, intent(in):: time
  logical, intent(in), optional:: quiet
                      integer, pointer:: array(:,:,:,:,:,:) ! (out)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetInt6PointerTimeI"

  interface

    subroutine HistoryGetInt6Pointer(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          integer, pointer:: array(:,:,:,:,:,:) ! (out)
                    
    end subroutine HistoryGetInt6Pointer

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetInt6Pointer( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetInt6PointerTimeI


subroutine HistoryGetInt7PointerTimeI(file, varname, array, time, quiet, err)
  !
                      ! <b>Note that Japanese and English are described in parallel.</b>
  !
  ! 数値型引数 *time* で時刻指定可能な HistoryGet です. 
  ! 使用方法に関しては HistoryGet を参照してください.
  !
  ! This is "HistoryGet" with numerical argument *time* for 
  ! specification of time.
  ! See "HistoryGet", for basic usage.
                    
  !
  use dc_string, only: toChar, Split
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use dc_url, only: Url_Chop_IOrange, GT_EQUAL
  character(*), intent(in):: file, varname
  integer, intent(in):: time
  logical, intent(in), optional:: quiet
                      integer, pointer:: array(:,:,:,:,:,:,:) ! (out)
                    
  logical, intent(out), optional:: err

  character(STRING):: url, iorange, remainder, timevar_name, time_range
  character(STRING), pointer:: carray (:)
  character(*), parameter :: subname = "HistoryGetInt7PointerTimeI"

  interface

    subroutine HistoryGetInt7Pointer(file, varname, array, range, quiet, err)
      use dc_types, only: DP
      character(*), intent(in):: file
      character(*), intent(in):: varname
      character(*), intent(in), optional:: range
      logical, intent(in), optional:: quiet
      logical, intent(out), optional:: err
                          integer, pointer:: array(:,:,:,:,:,:,:) ! (out)
                    
    end subroutine HistoryGetInt7Pointer

  end interface

  interface
    subroutine lookup_growable_url(file, varname, url, range, err)
      character(*), intent(in) :: file           ! ファイル名
      character(*), intent(in) :: varname        ! 変数名
      character(*), intent(out) :: url           ! gtool変数化した文字列
      character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
      logical, intent(out), optional :: err      ! エラーのフラグ
    end subroutine lookup_growable_url
  end interface

continue
  call BeginSub(subname, 'file=%c varname=%c time=%c', &
    & c1=trim(file), c2=trim(varname), c3=toChar(time))

  call lookup_growable_url(file = file, varname = varname, &
    & url = url, err = err)
  call Url_Chop_IOrange( &
    & fullname = url, iorange = iorange, remainder = remainder )
  call Split( str = iorange, carray = carray, sep = GT_EQUAL )
  timevar_name = carray(1)
  deallocate( carray )
  time_range = trim(timevar_name) // GT_EQUAL // trim(toChar(time))

  call HistoryGetInt7Pointer( file = file, &
    & varname = varname, array = array, &
    & range = time_range, quiet = quiet, err = err )

  call EndSub(subname)
end subroutine HistoryGetInt7PointerTimeI


subroutine lookup_growable_url(file, varname, url, range, err)
  !
  ! file の変数 varname が依存する次元の内, 時間の次元
  ! (growable == .TRUE. のもの, つまり無制限次元) の変数名,
  ! およびその最後の値を取得し, gtool 変数化
  ! ("file@varname,time=10.5" みたいな) して返す.
  !
  ! * もしも varname が次元変数である場合は「time=」を付けずに返す.
  ! * range を与えた場合, 以下のチェックを行った後, それを gtool4
  !   変数の iorange 部分に付加する.
  !   * range に空文字が与えられた場合, range が与えられない場合と
  !     同じ動作をする.
  !   * range 内に時間次元が設定されていない場合は, 自動的に
  !     時間次元に関する iorange ("time=0.5") が指定される.
  ! * 数値のみの文字列 (例: "20", "10.354") が与えられる場合, 
  !   エラーを生じる. 
  !
  use gtdata_types, only: GT_VARIABLE
  use gtdata_generic, only: Open, Close, Inquire
  use dc_present,only: present_select, present_and_not_empty, present_and_true
  use dc_string, only: toChar
  use dc_error,  only: StoreError, DC_NOERR, GT_ENOUNLIMITDIM, &
    & NF_EINVAL, GT_ENOTVAR, GT_EBADGT4COMMAGRAPHY
  use dc_url, only: GT_CIRCUMFLEX, GT_COMMA, GT_EQUAL
  use dc_url, only: UrlSplit, UrlMerge, UrlSearchIORange
  use regex, only: match
  use dc_types, only: DP, STRING
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  
  character(*), intent(in) :: file           ! ファイル名
  character(*), intent(in) :: varname        ! 変数名
  character(*), intent(out) :: url           ! gtool変数化した文字列
  character(*), intent(in), optional:: range ! 範囲限定や一点切り出し指定
  logical, intent(out), optional :: err      ! エラーのフラグ
  !
  type(GT_VARIABLE)                       :: var
  type(GT_VARIABLE), allocatable          :: dimvar(:)
  character(STRING) :: time_url, time_name, time_iorange
  character(STRING) :: iorange, cause_c
  logical:: growable, nounlimited
  integer:: allcount, timecount, nd, i, stat
  integer:: regex_stat, regex_len
  character(*), parameter :: subname = "lookup_growable_url"
continue

  call BeginSub(subname, '<file=%c varname=%c range=%c>', &
    & c1=trim(file), c2=trim(varname), &
    & c3=trim(present_select('', 'no-range', range)))

  stat = DC_NOERR
  cause_c = ""
  url = ""

  ! 引数の正当性をチェック
  if (.not. present_and_not_empty(file)) then
    stat = NF_EINVAL
    cause_c = '"file" is not specified'
    goto 999
  elseif (.not. present_and_not_empty(varname)) then
    stat = NF_EINVAL
    cause_c = '"varname" is not specified'
    goto 999
  end if

  ! 時刻次元の変数名, およびその最終時刻の
  ! 探査のために file@varname を open (まだデータを取得しない)
  call Open(var, UrlMerge(file, varname), err = err)
  if ( present_and_true(err) ) then
    stat = GT_ENOTVAR
    goto 999
  end if

  ! 次元の数を取得
  call Inquire(var=var, alldims=nd)
  call DbgMessage('@ alldims = %d', i=(/nd/))
  if (allocated(dimvar)) then
    deallocate(dimvar)
  end if
  allocate(dimvar(nd))
  !
  ! 変数が無制限変数を持たない場合には, それに関する iorange を
  ! 付けないで返すよう, フラグを立てる.
  ! 無制限次元があれば, .false. にする.
  nounlimited = .true.
  !
  ! 各次元毎に情報を取得し, growable == .TRUE. のもの (つまりは時間)
  ! の変数名 (time_name) を取得する.
  call DbgMessage('[%c: growable-dim-search]', c1=trim(subname))
  time_name = ''
  do, i = 1, nd
    call Open(var = dimvar(i), source_var = var, dimord = i, &
      & count_compact = .TRUE., err = err)
    ! まずは変数入り gtool4 変数を time_url に取得
    call Inquire(var = dimvar(i), growable = growable, &
      & allcount = allcount, url = time_url)
    call DbgMessage('  [dim=<%d>: growable=<%y>: url=<%c>]', &
      &  i = (/i/), L = (/growable/), c1 = trim(time_url))
    ! 総数 = 最後の数, なので...
    if (growable) then
      ! 変数部分だけ分離
      call UrlSplit(fullname = time_url, var = time_name)
      timecount = allcount
      nounlimited = .false.
    endif
    call Close(dimvar(i))
  end do
  ! 探査を終了したので閉じる
  call Close(var)
  if (stat /= DC_NOERR) then
    goto 999
  end if

  ! 時刻部分の iorange を作成しておく.
  ! 格子点情報で取得されているので, 頭に "^" を付加する.
  if (nounlimited) then
    time_iorange = ''
  else
    time_iorange = trim(time_name) // GT_EQUAL // &
      & GT_CIRCUMFLEX // adjustl(toChar(timecount))
  end if

  ! iorange を指定する.
  ! 時刻に関しては, range が存在しない場合には
  ! 自動取得した最後の時刻を付加する.
  ! range が存在する場合, "=" が含まれなければ, gtool4 のコンマ記法
  ! として不適切としてエラーを生じる.
  ! "=" が含まれる場合, iorange としてそのまま iorange になる.
  ! ただし, その iorange に時刻次元が含まれない場合,
  ! やはり先ほど自動取得した値が付加される.
  ! 当然, 時刻次元が存在しない場合には付加しない.
  if (.not. present_and_not_empty(range)) then
    iorange = time_iorange
  else
    ! range がコンマ記法になっているか, "=" があるかどうかで調べる
    call match(GT_EQUAL, range, regex_len, regex_stat)
    ! コンマ記法になってない場合は無制限次元の値と判定
    if (regex_stat < 0) then
      cause_c = range
      stat = GT_EBADGT4COMMAGRAPHY
      goto 999
!!$      iorange = trim(time_name) // GT_EQUAL // adjustl(range)
    else
      ! コンマ記法になっている場合, まずその中に無制限次元が
      ! 存在しているか調べ, 存在してない場合のみ time_iorange を
      ! 付加する.
      if (trim(UrlSearchIORange(range, time_name)) /= "") then
        iorange = range
      else
        if (trim(time_iorange) /= "") then
          iorange = range // GT_COMMA // time_iorange
        else
          iorange = range
        end if
      end if
    end if
  endif
  call DbgMessage('@ iorange=%c', c1=trim(iorange))

  ! file, varname, iorange を gtool変数化
  ! (「file@varname,time=10.5」のように)
  url = UrlMerge(file, varname, '', iorange)

999 continue
  call StoreError(stat, subname, err, cause_c)
  call EndSub(subname, '<url=%c>', c1=trim(url))
end subroutine lookup_growable_url

subroutine actual_iorange_dump(url, actual_url, err)
  !
  ! 変数 URL *url* に対応するファイル, 変数からデータを取り出す際, 
  ! 入出力範囲指定によって切り出される値の本当の位置を
  ! 標準出力に出力する. *actual_url* が与えられる場合には
  ! その引数に値を返し, 標準出力には出力しない.
  !
  ! HistoryGet, HistoryGetPointer が下層で呼び出している
  ! gtdata_generic#Get は, 入出力範囲が次元データに正確に一致しない
  ! 場合, 最も近い値を自動的に選択して切り出す. しかしその結果,
  ! 「本当はどこのデータを入力したか」がわからない場合があるため,
  ! このサブルーチンによって正確な位置をユーザに知らせる.
  !
  use dc_types, only: DP, STRING
  use dc_string, only: Split, JoinChar, toChar
  use dc_url, only: UrlSearchIORange, UrlMerge, UrlSplit
  use dc_url, only: GT_COMMA, GT_EQUAL, GT_COLON
  use dc_message, only: MessageNotify
  use dc_trace, only: Beginsub, Endsub, DbgMessage
  use regex,      only: match
  use gtdata_types, only: GT_VARIABLE
  use gtdata_generic, only: Open, Close, Get
  use dc_error,  only: StoreError, DC_NOERR

  character(*), intent(in) :: url            ! 変数 URL
  character(*), intent(out), optional :: actual_url
                                             ! 正確な入出力範囲指定に修正
                                             ! された変数 URL
  logical, intent(out), optional :: err      ! エラーのフラグ

  character(STRING), pointer :: iorange_each(:) =>null()
  character(STRING), pointer :: range_values(:) =>null()
  character(STRING), pointer :: new_iorange_each(:) =>null()
  character(STRING), pointer :: new_range_values(:) =>null()
  character(STRING) :: new_url, new_iorange, url_tmp, dimname
  character(STRING) :: file, varname, range, cause_c
  type(GT_VARIABLE) :: var
  real :: iorange_value(1)
  integer :: i, j, regex_len, regex_stat, stat

  character(*), parameter :: subname = "actual_iorange_dump"

continue
  call BeginSub(subname, '<url=%c>', c1=trim(url))

  new_iorange = ''
  cause_c = ''
  stat = DC_NOERR
  call UrlSplit(url, file, varname, iorange=range)
  call Split(range, iorange_each, GT_COMMA)
  allocate(new_iorange_each(size(iorange_each)))
  do i = 1, size(iorange_each)
    call match(GT_EQUAL, iorange_each(i), regex_len, regex_stat)
    if (regex_stat < 0 .or. regex_len < 2) then
      new_iorange_each(i) = trim(iorange_each(i))
    else
      dimname = iorange_each(i)(:regex_len-1)
      call Split(iorange_each(i)(regex_len+1:), range_values, GT_COLON)
      allocate(new_range_values(size(range_values)))
      do j = 1, size(range_values)
        url_tmp = UrlMerge(file, dimname, '', &
          & iorange=trim(dimname) // GT_EQUAL // trim(range_values(j)))
        call Open(var, url_tmp)
        call Get(var, iorange_value, 1)
        call Close(var)
        new_range_values(j) = toChar(iorange_value)
      end do
      new_iorange_each(i) = &
        & trim(dimname) // GT_EQUAL // JoinChar(new_range_values, GT_COLON)

      deallocate(new_range_values)
      deallocate(range_values)

    end if
  end do

  new_iorange = JoinChar(new_iorange_each, GT_COMMA)
  deallocate(new_iorange_each)
  deallocate(iorange_each)

  new_url = UrlMerge(file, varname, '', new_iorange)
  if (present(actual_url)) then
    actual_url = new_url
  else
    call MessageNotify('M', subname, 'Input %c', c1=trim(new_url))
  end if

999 continue
  call StoreError(stat, subname, err, cause_c)
  call EndSub(subname, '<actual_url=%c>', c1=trim(new_url))
end subroutine actual_iorange_dump



!--
! vi:set readonly sw=4 ts=8:
!
!Local Variables:
!mode: f90
!buffer-read-only: t
!End:
!
!++
