Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
What's new
7
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Open sidebar
Michael Williams
bilby
Commits
eb1fa544
Commit
eb1fa544
authored
Jan 12, 2021
by
Moritz Huebner
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'remove-future' into 'master'
remove future imports See merge request
lscsoft/bilby!911
parents
84f35d58
0cd48ebe
Changes
63
Hide whitespace changes
Inline
Side-by-side
Showing
63 changed files
with
1 addition
and
66 deletions
+1
-66
bilby/__init__.py
bilby/__init__.py
+0
-1
bilby/core/__init__.py
bilby/core/__init__.py
+0
-1
bilby/core/grid.py
bilby/core/grid.py
+0
-2
bilby/core/likelihood.py
bilby/core/likelihood.py
+0
-1
bilby/core/prior/dict.py
bilby/core/prior/dict.py
+1
-2
bilby/core/result.py
bilby/core/result.py
+0
-2
bilby/core/sampler/base_sampler.py
bilby/core/sampler/base_sampler.py
+0
-1
bilby/core/sampler/cpnest.py
bilby/core/sampler/cpnest.py
+0
-1
bilby/core/sampler/dynamic_dynesty.py
bilby/core/sampler/dynamic_dynesty.py
+0
-1
bilby/core/sampler/fake_sampler.py
bilby/core/sampler/fake_sampler.py
+0
-1
bilby/core/sampler/nestle.py
bilby/core/sampler/nestle.py
+0
-1
bilby/core/sampler/polychord.py
bilby/core/sampler/polychord.py
+0
-1
bilby/core/sampler/ptemcee.py
bilby/core/sampler/ptemcee.py
+0
-1
bilby/core/sampler/ptmcmc.py
bilby/core/sampler/ptmcmc.py
+0
-1
bilby/core/sampler/pymc3.py
bilby/core/sampler/pymc3.py
+0
-1
bilby/core/sampler/ultranest.py
bilby/core/sampler/ultranest.py
+0
-1
bilby/core/utils.py
bilby/core/utils.py
+0
-1
bilby/gw/likelihood.py
bilby/gw/likelihood.py
+0
-1
bilby/gw/result.py
bilby/gw/result.py
+0
-1
bilby/gw/sampler/__init__.py
bilby/gw/sampler/__init__.py
+0
-1
bilby/gw/utils.py
bilby/gw/utils.py
+0
-1
bilby/hyper/likelihood.py
bilby/hyper/likelihood.py
+0
-1
cli_bilby/__init__.py
cli_bilby/__init__.py
+0
-1
examples/core_examples/gaussian_example.py
examples/core_examples/gaussian_example.py
+0
-1
examples/core_examples/grid_example.py
examples/core_examples/grid_example.py
+0
-1
examples/core_examples/hyper_parameter_example.py
examples/core_examples/hyper_parameter_example.py
+0
-1
examples/core_examples/linear_regression.py
examples/core_examples/linear_regression.py
+0
-1
examples/core_examples/linear_regression_grid.py
examples/core_examples/linear_regression_grid.py
+0
-1
examples/core_examples/linear_regression_pymc3.py
examples/core_examples/linear_regression_pymc3.py
+0
-1
examples/core_examples/linear_regression_pymc3_custom_likelihood.py
...ore_examples/linear_regression_pymc3_custom_likelihood.py
+0
-1
examples/core_examples/linear_regression_unknown_noise.py
examples/core_examples/linear_regression_unknown_noise.py
+0
-1
examples/core_examples/multidimensional_gaussian.py
examples/core_examples/multidimensional_gaussian.py
+0
-1
examples/core_examples/multivariate_gaussian_prior.py
examples/core_examples/multivariate_gaussian_prior.py
+0
-1
examples/core_examples/occam_factor_example.py
examples/core_examples/occam_factor_example.py
+0
-1
examples/core_examples/radioactive_decay.py
examples/core_examples/radioactive_decay.py
+0
-1
examples/core_examples/starting_mcmc_chains_near_to_the_peak.py
...es/core_examples/starting_mcmc_chains_near_to_the_peak.py
+0
-1
examples/gw_examples/data_examples/GW150914.py
examples/gw_examples/data_examples/GW150914.py
+0
-1
examples/gw_examples/data_examples/GW150914_advanced.py
examples/gw_examples/data_examples/GW150914_advanced.py
+0
-1
examples/gw_examples/data_examples/GW170817.py
examples/gw_examples/data_examples/GW170817.py
+0
-1
examples/gw_examples/data_examples/get_LOSC_event_data.py
examples/gw_examples/data_examples/get_LOSC_event_data.py
+0
-1
examples/gw_examples/injection_examples/australian_detector.py
...les/gw_examples/injection_examples/australian_detector.py
+0
-1
examples/gw_examples/injection_examples/binary_neutron_star_example.py
...xamples/injection_examples/binary_neutron_star_example.py
+0
-1
examples/gw_examples/injection_examples/bns_eos_example.py
examples/gw_examples/injection_examples/bns_eos_example.py
+0
-1
examples/gw_examples/injection_examples/calibration_example.py
...les/gw_examples/injection_examples/calibration_example.py
+0
-1
examples/gw_examples/injection_examples/change_sampled_parameters.py
..._examples/injection_examples/change_sampled_parameters.py
+0
-1
examples/gw_examples/injection_examples/create_your_own_source_model.py
...amples/injection_examples/create_your_own_source_model.py
+0
-1
examples/gw_examples/injection_examples/custom_proposal_example.py
...gw_examples/injection_examples/custom_proposal_example.py
+0
-1
examples/gw_examples/injection_examples/eccentric_inspiral.py
...ples/gw_examples/injection_examples/eccentric_inspiral.py
+0
-1
examples/gw_examples/injection_examples/fake_sampler_example.py
...es/gw_examples/injection_examples/fake_sampler_example.py
+0
-1
examples/gw_examples/injection_examples/fast_tutorial.py
examples/gw_examples/injection_examples/fast_tutorial.py
+0
-1
examples/gw_examples/injection_examples/how_to_specify_the_prior.py
...w_examples/injection_examples/how_to_specify_the_prior.py
+0
-1
examples/gw_examples/injection_examples/marginalized_likelihood.py
...gw_examples/injection_examples/marginalized_likelihood.py
+0
-1
examples/gw_examples/injection_examples/non_tensor.py
examples/gw_examples/injection_examples/non_tensor.py
+0
-1
examples/gw_examples/injection_examples/plot_skymap.py
examples/gw_examples/injection_examples/plot_skymap.py
+0
-1
examples/gw_examples/injection_examples/plot_time_domain_data.py
...s/gw_examples/injection_examples/plot_time_domain_data.py
+0
-1
examples/gw_examples/injection_examples/roq_example.py
examples/gw_examples/injection_examples/roq_example.py
+0
-1
examples/gw_examples/injection_examples/sine_gaussian_example.py
...s/gw_examples/injection_examples/sine_gaussian_example.py
+0
-1
examples/gw_examples/injection_examples/standard_15d_cbc_tutorial.py
..._examples/injection_examples/standard_15d_cbc_tutorial.py
+0
-1
examples/gw_examples/injection_examples/using_gwin.py
examples/gw_examples/injection_examples/using_gwin.py
+0
-1
examples/gw_examples/supernova_example/supernova_example.py
examples/gw_examples/supernova_example/supernova_example.py
+0
-1
requirements.txt
requirements.txt
+0
-1
setup.py
setup.py
+0
-1
test/core/prior/prior_test.py
test/core/prior/prior_test.py
+0
-1
No files found.
bilby/__init__.py
View file @
eb1fa544
...
...
@@ -16,7 +16,6 @@ https://lscsoft.docs.ligo.org/bilby/installation.html.
"""
from
__future__
import
absolute_import
import
sys
from
.
import
core
,
gw
,
hyper
...
...
bilby/core/__init__.py
View file @
eb1fa544
from
__future__
import
absolute_import
from
.
import
grid
,
likelihood
,
prior
,
result
,
sampler
,
series
,
utils
bilby/core/grid.py
View file @
eb1fa544
from
__future__
import
division
import
numpy
as
np
import
os
import
json
...
...
bilby/core/likelihood.py
View file @
eb1fa544
from
__future__
import
division
,
print_function
import
copy
import
numpy
as
np
...
...
bilby/core/prior/dict.py
View file @
eb1fa544
...
...
@@ -3,7 +3,6 @@ from io import open as ioopen
import
json
import
os
from
future.utils
import
iteritems
from
matplotlib.cbook
import
flatten
import
numpy
as
np
...
...
@@ -185,7 +184,7 @@ class PriorDict(dict):
def
from_dictionary
(
self
,
dictionary
):
eval_dict
=
dict
(
inf
=
np
.
inf
)
for
key
,
val
in
iteritems
(
dictionary
):
for
key
,
val
in
dictionary
.
items
(
):
if
isinstance
(
val
,
Prior
):
continue
elif
isinstance
(
val
,
(
int
,
float
)):
...
...
bilby/core/result.py
View file @
eb1fa544
from
__future__
import
division
import
inspect
import
os
from
collections
import
OrderedDict
,
namedtuple
...
...
bilby/core/sampler/base_sampler.py
View file @
eb1fa544
from
__future__
import
absolute_import
import
datetime
import
distutils.dir_util
import
numpy
as
np
...
...
bilby/core/sampler/cpnest.py
View file @
eb1fa544
from
__future__
import
absolute_import
import
array
import
copy
...
...
bilby/core/sampler/dynamic_dynesty.py
View file @
eb1fa544
from
__future__
import
absolute_import
import
os
import
dill
as
pickle
...
...
bilby/core/sampler/fake_sampler.py
View file @
eb1fa544
from
__future__
import
absolute_import
import
numpy
as
np
from
.base_sampler
import
Sampler
...
...
bilby/core/sampler/nestle.py
View file @
eb1fa544
from
__future__
import
absolute_import
import
numpy
as
np
from
pandas
import
DataFrame
...
...
bilby/core/sampler/polychord.py
View file @
eb1fa544
from
__future__
import
absolute_import
import
numpy
as
np
...
...
bilby/core/sampler/ptemcee.py
View file @
eb1fa544
from
__future__
import
absolute_import
,
division
,
print_function
import
os
import
datetime
...
...
bilby/core/sampler/ptmcmc.py
View file @
eb1fa544
from
__future__
import
absolute_import
,
print_function
import
glob
import
shutil
...
...
bilby/core/sampler/pymc3.py
View file @
eb1fa544
from
__future__
import
absolute_import
,
print_function
from
collections
import
OrderedDict
from
distutils.version
import
StrictVersion
...
...
bilby/core/sampler/ultranest.py
View file @
eb1fa544
from
__future__
import
absolute_import
import
datetime
import
distutils.dir_util
...
...
bilby/core/utils.py
View file @
eb1fa544
from
__future__
import
division
from
distutils.spawn
import
find_executable
import
logging
...
...
bilby/gw/likelihood.py
View file @
eb1fa544
from
__future__
import
division
import
gc
import
os
...
...
bilby/gw/result.py
View file @
eb1fa544
from
__future__
import
division
import
json
import
pickle
...
...
bilby/gw/sampler/__init__.py
View file @
eb1fa544
from
__future__
import
absolute_import
from
.
import
proposal
bilby/gw/utils.py
View file @
eb1fa544
from
__future__
import
division
import
os
import
json
from
math
import
fmod
...
...
bilby/hyper/likelihood.py
View file @
eb1fa544
from
__future__
import
division
,
print_function
import
logging
...
...
cli_bilby/__init__.py
View file @
eb1fa544
from
__future__
import
absolute_import
examples/core_examples/gaussian_example.py
View file @
eb1fa544
...
...
@@ -3,7 +3,6 @@
An example of how to use bilby to perform paramater estimation for
non-gravitational wave data consisting of a Gaussian with a mean and variance
"""
from
__future__
import
division
import
bilby
import
numpy
as
np
...
...
examples/core_examples/grid_example.py
View file @
eb1fa544
...
...
@@ -5,7 +5,6 @@ non-gravitational wave data. In this case, fitting a linear function to
data with background Gaussian noise
"""
from
__future__
import
division
import
bilby
import
numpy
as
np
import
matplotlib.pyplot
as
plt
...
...
examples/core_examples/hyper_parameter_example.py
View file @
eb1fa544
...
...
@@ -2,7 +2,6 @@
"""
An example of how to use bilby to perform parameter estimation for hyper params
"""
from
__future__
import
division
import
numpy
as
np
import
matplotlib.pyplot
as
plt
from
bilby.core.likelihood
import
GaussianLikelihood
...
...
examples/core_examples/linear_regression.py
View file @
eb1fa544
...
...
@@ -5,7 +5,6 @@ non-gravitational wave data. In this case, fitting a linear function to
data with background Gaussian noise
"""
from
__future__
import
division
import
bilby
import
numpy
as
np
import
matplotlib.pyplot
as
plt
...
...
examples/core_examples/linear_regression_grid.py
View file @
eb1fa544
...
...
@@ -5,7 +5,6 @@ fitting a linear function to data with background Gaussian noise.
This will compare the output of using a stochastic sampling method
to evaluating the posterior on a grid.
"""
from
__future__
import
division
import
numpy
as
np
import
matplotlib.pyplot
as
plt
...
...
examples/core_examples/linear_regression_pymc3.py
View file @
eb1fa544
...
...
@@ -5,7 +5,6 @@ non-gravitational wave data. In this case, fitting a linear function to
data with background Gaussian noise
"""
from
__future__
import
division
import
bilby
import
numpy
as
np
import
matplotlib.pyplot
as
plt
...
...
examples/core_examples/linear_regression_pymc3_custom_likelihood.py
View file @
eb1fa544
...
...
@@ -8,7 +8,6 @@ would give equivalent results as using the pre-defined 'Gaussian Likelihood'
"""
from
__future__
import
division
import
bilby
import
numpy
as
np
import
matplotlib.pyplot
as
plt
...
...
examples/core_examples/linear_regression_unknown_noise.py
View file @
eb1fa544
...
...
@@ -5,7 +5,6 @@ non-gravitational wave data. In this case, fitting a linear function to
data with background Gaussian noise with unknown variance.
"""
from
__future__
import
division
import
bilby
import
numpy
as
np
import
matplotlib.pyplot
as
plt
...
...
examples/core_examples/multidimensional_gaussian.py
View file @
eb1fa544
...
...
@@ -3,7 +3,6 @@
Testing the recovery of a multi-dimensional
Gaussian with zero mean and unit variance
"""
from
__future__
import
division
import
bilby
import
numpy
as
np
...
...
examples/core_examples/multivariate_gaussian_prior.py
View file @
eb1fa544
...
...
@@ -4,7 +4,6 @@ An example of how to use bilby with a (multi-modal) multivariate
Gaussian prior distribution.
"""
from
__future__
import
division
import
bilby
import
numpy
as
np
from
scipy
import
linalg
,
stats
...
...
examples/core_examples/occam_factor_example.py
View file @
eb1fa544
...
...
@@ -30,7 +30,6 @@ Note - the code uses a course 100-point estimation for speed, results can be
improved by increasing this to say 500 or 1000.
"""
from
__future__
import
division
import
bilby
import
numpy
as
np
import
matplotlib.pyplot
as
plt
...
...
examples/core_examples/radioactive_decay.py
View file @
eb1fa544
...
...
@@ -4,7 +4,6 @@ An example of how to use bilby to perform paramater estimation for
non-gravitational wave data. In this case, fitting the half-life and
initial radionuclide number for Polonium 214.
"""
from
__future__
import
division
import
bilby
import
numpy
as
np
import
matplotlib.pyplot
as
plt
...
...
examples/core_examples/starting_mcmc_chains_near_to_the_peak.py
View file @
eb1fa544
...
...
@@ -4,7 +4,6 @@ An example of using emcee, but starting the walkers off close to the peak (or
any other arbitrary point). This is based off the
linear_regression_with_unknown_noise.py example.
"""
from
__future__
import
division
import
bilby
import
numpy
as
np
import
pandas
as
pd
...
...
examples/gw_examples/data_examples/GW150914.py
View file @
eb1fa544
...
...
@@ -9,7 +9,6 @@ the LIGO Data Grid instead.
[1] https://gwpy.github.io/docs/stable/timeseries/remote-access.html
"""
from
__future__
import
division
,
print_function
import
bilby
from
gwpy.timeseries
import
TimeSeries
...
...
examples/gw_examples/data_examples/GW150914_advanced.py
View file @
eb1fa544
...
...
@@ -10,7 +10,6 @@ LIST OF AVAILABLE EVENTS:
List of events in BILBY dict: run -> help(bilby.gw.utils.get_event_time(event))
"""
from
__future__
import
division
,
print_function
import
bilby
from
gwpy.timeseries
import
TimeSeries
...
...
examples/gw_examples/data_examples/GW170817.py
View file @
eb1fa544
...
...
@@ -4,7 +4,6 @@ This tutorial includes advanced specifications
for analysing binary neutron star event data.
Here GW170817 is used as an example.
"""
from
__future__
import
division
,
print_function
import
bilby
outdir
=
'outdir'
...
...
examples/gw_examples/data_examples/get_LOSC_event_data.py
View file @
eb1fa544
...
...
@@ -7,7 +7,6 @@ $ python get_LOSC_event_data -e GW150914
"""
from
__future__
import
division
import
numpy
as
np
import
os
import
argparse
...
...
examples/gw_examples/injection_examples/australian_detector.py
View file @
eb1fa544
...
...
@@ -5,7 +5,6 @@ Tutorial to demonstrate a new interferometer
We place a new instrument in Gingin, with an A+ sensitivity in a network of A+
interferometers at Hanford and Livingston
"""
from
__future__
import
division
,
print_function
import
numpy
as
np
...
...
examples/gw_examples/injection_examples/binary_neutron_star_example.py
View file @
eb1fa544
...
...
@@ -8,7 +8,6 @@ and also estimates the tidal deformabilities using a uniform prior in both
tidal deformabilities
"""
from
__future__
import
division
,
print_function
import
numpy
as
np
...
...
examples/gw_examples/injection_examples/bns_eos_example.py
View file @
eb1fa544
...
...
@@ -8,7 +8,6 @@ and also estimates the tidal deformabilities using a uniform prior in both
tidal deformabilities
"""
from
__future__
import
division
,
print_function
import
numpy
as
np
...
...
examples/gw_examples/injection_examples/calibration_example.py
View file @
eb1fa544
...
...
@@ -3,7 +3,6 @@
Tutorial to demonstrate running parameter estimation with calibration
uncertainties included.
"""
from
__future__
import
division
,
print_function
import
numpy
as
np
import
bilby
...
...
examples/gw_examples/injection_examples/change_sampled_parameters.py
View file @
eb1fa544
...
...
@@ -7,7 +7,6 @@ This example estimates the masses using a uniform prior in chirp mass,
mass ratio and redshift.
The cosmology is according to the Planck 2015 data release.
"""
from
__future__
import
division
,
print_function
import
bilby
import
numpy
as
np
...
...
examples/gw_examples/injection_examples/create_your_own_source_model.py
View file @
eb1fa544
...
...
@@ -2,7 +2,6 @@
"""
A script to demonstrate how to use your own source model
"""
from
__future__
import
division
,
print_function
import
bilby
import
numpy
as
np
...
...
examples/gw_examples/injection_examples/custom_proposal_example.py
View file @
eb1fa544
...
...
@@ -2,7 +2,6 @@
"""
Tutorial for running cpnest with custom jump proposals.
"""
from
__future__
import
division
,
print_function
import
numpy
as
np
import
bilby.gw.sampler.proposal
...
...
examples/gw_examples/injection_examples/eccentric_inspiral.py
View file @
eb1fa544
...
...
@@ -10,7 +10,6 @@ Lower et al. (2018) -> arXiv:1806.05350.
For a more comprehensive look at what goes on in each step, refer to the
"basic_tutorial.py" example.
"""
from
__future__
import
division
import
numpy
as
np
import
bilby
...
...
examples/gw_examples/injection_examples/fake_sampler_example.py
View file @
eb1fa544
...
...
@@ -2,7 +2,6 @@
"""
Read ROQ posterior and calculate full likelihood at same parameter space points.
"""
from
__future__
import
division
,
print_function
import
numpy
as
np
import
deepdish
as
dd
...
...
examples/gw_examples/injection_examples/fast_tutorial.py
View file @
eb1fa544
...
...
@@ -7,7 +7,6 @@ This example estimates the masses using a uniform prior in both component masses
and distance using a uniform in comoving volume prior on luminosity distance
between luminosity distances of 100Mpc and 5Gpc, the cosmology is Planck15.
"""
from
__future__
import
division
,
print_function
import
numpy
as
np
import
bilby
...
...
examples/gw_examples/injection_examples/how_to_specify_the_prior.py
View file @
eb1fa544
...
...
@@ -3,7 +3,6 @@
Tutorial to demonstrate how to specify the prior distributions used for
parameter estimation.
"""
from
__future__
import
division
,
print_function
import
numpy
as
np
import
bilby
...
...
examples/gw_examples/injection_examples/marginalized_likelihood.py
View file @
eb1fa544
...
...
@@ -6,7 +6,6 @@ estimation on an injected signal using time, phase and distance marginalisation.
We also demonstrate how the posterior distribution for the marginalised
parameter can be recovered in post-processing.
"""
from
__future__
import
division
,
print_function
import
bilby
import
numpy
as
np
...
...
examples/gw_examples/injection_examples/non_tensor.py
View file @
eb1fa544
...
...
@@ -6,7 +6,6 @@ allowed in general relativity.
We adapt the sine-Gaussian burst model to include vector polarizations with an
unknown contribution from the vector modes.
"""
from
__future__
import
division
,
print_function
import
bilby
import
numpy
as
np
...
...
examples/gw_examples/injection_examples/plot_skymap.py
View file @
eb1fa544
...
...
@@ -3,7 +3,6 @@
Example script which produces posterior samples of ra and dec and generates a
skymap
"""
from
__future__
import
division
,
print_function
import
bilby
duration
=
4.
...
...
examples/gw_examples/injection_examples/plot_time_domain_data.py
View file @
eb1fa544
#!/usr/bin/env python
"""
"""
from
__future__
import
division
,
print_function
import
numpy
as
np
import
bilby
...
...
examples/gw_examples/injection_examples/roq_example.py
View file @
eb1fa544
...
...
@@ -8,7 +8,6 @@ This requires files specifying the appropriate basis weights.
These aren't shipped with Bilby, but are available on LDG clusters and
from the public repository https://git.ligo.org/lscsoft/ROQ_data.
"""
from
__future__
import
division
,
print_function
import
numpy
as
np
...
...
examples/gw_examples/injection_examples/sine_gaussian_example.py
View file @
eb1fa544
...
...
@@ -3,7 +3,6 @@
Tutorial to demonstrate running parameter estimation on a sine gaussian
injected signal.
"""
from
__future__
import
division
,
print_function
import
bilby
import
numpy
as
np
...
...
examples/gw_examples/injection_examples/standard_15d_cbc_tutorial.py
View file @
eb1fa544
...
...
@@ -4,7 +4,6 @@ Tutorial to demonstrate running parameter estimation on a full 15 parameter
space for an injected cbc signal. This is the standard injection analysis script
one can modify for the study of injected CBC events.
"""
from
__future__
import
division
,
print_function
import
numpy
as
np
import
bilby
...
...
examples/gw_examples/injection_examples/using_gwin.py
View file @
eb1fa544
...
...
@@ -15,7 +15,6 @@ of the model. So, in the following, we only create priors for the parameters
to be searched over.
"""
from
__future__
import
division
,
print_function
import
numpy
as
np
import
bilby
...
...
examples/gw_examples/supernova_example/supernova_example.py
View file @
eb1fa544
...
...
@@ -7,7 +7,6 @@ supernova waveforms. The first few PCs are then linearly combined with a scale
factor. (See https://arxiv.org/pdf/1202.3256.pdf)
"""
from
__future__
import
division
,
print_function
import
numpy
as
np
import
bilby
...
...
requirements.txt
View file @
eb1fa544
future
dynesty
emcee
corner
...
...
setup.py
View file @
eb1fa544
...
...
@@ -87,7 +87,6 @@ setup(name='bilby',
'bilby'
:
[
version_file
]},
python_requires
=
'>=3.5'
,
install_requires
=
[
'future'
,
'dynesty>=1.0.0'
,
'emcee'
,
'corner'
,
...
...
test/core/prior/prior_test.py
View file @
eb1fa544
from
__future__
import
absolute_import
,
division
import
bilby
import
unittest
import
numpy
as
np
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment