Sue-
It appears to me that the input variant is bogus and that the hgvs package wouldn't let you execute c_to_g. Here's what I see:
snafu$ hgvs-shell
############################################################################
hgvs-shell -- interactive hgvs
hgvs version: 1.3.1.dev0+g83cde96.d20190515
data provider url: postgresql://anonymous:anonymous@localhost/uta_dev/uta_20170707
schema_version: 1.1
data_version: uta_20170707
sequences source: SeqRepo (/usr/local/share/seqrepo/latest)
>>> vc = hp.parse("NM_181714.3:c.4105_4117dupGCACTATGACTCT")
>>> seq = hdp.seqfetcher.fetch_seq(vc.ac)
>>> ti = hdp.get_tx_identity_info(vc.ac)
>>> len(seq)
4729
>>> %pprint
Pretty printing has been turned ON
>>> dict(ti)
{'tx_ac': 'NM_181714.3',
'alt_ac': 'NM_181714.3',
'alt_aln_method': 'transcript',
'cds_start_i': 612,
'cds_end_i': 2706,
'lengths': [315, 106, 381, 530, 138, 97, 143, 133, 2876],
'hgnc': 'LCA5'}
>>> vn = am38.c_to_g(vc)
...
HGVSInvalidIntervalError: The given coordinate is outside the bounds of the reference sequence.
CDS start and end are 613 (612 interbase) and 2706, so the CDS length is 2706-612=2094.
Would you please construct a simple demonstration with code, generated roughly like the above?
-Reece