See
<https://builds.apache.org/job/beam_PostCommit_Py_ValCont/6356/display/redirect?page=changes>
Changes:
[sruthi.sreekumar] Updated Flink runner version in NEXMark documentation
[kcweaver] Upgrade Dataflow Python container versions.
[github] [BEAM-9383] Staging Dataflow artifacts from environment (#11039)
[github] [BEAM-1589] Added @OnWindowExpiration annotation. (#11350)
------------------------------------------
[...truncated 769.28 KB...]
--project=$PROJECT \
--region=$REGION \
--worker_harness_container_image=$CONTAINER:$TAG \
--staging_location=$GCS_LOCATION/staging-validatesrunner-test \
--temp_location=$GCS_LOCATION/temp-validatesrunner-test \
--output=$GCS_LOCATION/output \
--sdk_location=$SDK_LOCATION \
--num_workers=1"
setup.py:262: UserWarning: You are using Apache Beam with Python 2. New
releases of Apache Beam will soon support Python 3 only.
'You are using Apache Beam with Python 2. '
<https://builds.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/container/venv/python/local/lib/python2.7/site-packages/setuptools/dist.py>:476:
UserWarning: Normalizing '2.22.0.dev' to '2.22.0.dev0'
normalized_version,
running nosetests
running egg_info
<https://builds.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/gen_protos.py>:241:
UserWarning: Installing grpcio-tools is recommended for development.
warnings.warn('Installing grpcio-tools is recommended for development.')
INFO:gen_protos:Skipping proto regeneration: all files up to date
writing requirements to apache_beam.egg-info/requires.txt
writing apache_beam.egg-info/PKG-INFO
writing top-level names to apache_beam.egg-info/top_level.txt
writing dependency_links to apache_beam.egg-info/dependency_links.txt
writing entry points to apache_beam.egg-info/entry_points.txt
reading manifest file 'apache_beam.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
warning: no files found matching 'README.md'
warning: no files found matching 'NOTICE'
warning: no files found matching 'LICENSE'
writing manifest file 'apache_beam.egg-info/SOURCES.txt'
<https://builds.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/apache_beam/__init__.py>:82:
UserWarning: You are using Apache Beam with Python 2. New releases of Apache
Beam will soon support Python 3 only.
'You are using Apache Beam with Python 2. '
WARNING:root:python-snappy is not installed; some tests will be skipped.
WARNING:root:Tensorflow is not installed, so skipping some tests.
WARNING:apache_beam.runners.interactive.interactive_environment:Interactive
Beam requires Python 3.5.3+.
WARNING:apache_beam.runners.interactive.interactive_environment:Dependencies
required for Interactive Beam PCollection visualization are not available,
please use: `pip install apache-beam[interactive]` to install necessary
dependencies to enable all data visualization features.
WARNING:apache_beam.runners.interactive.interactive_environment:You cannot use
Interactive Beam features when you are not in an interactive environment such
as a Jupyter notebook or ipython terminal.
WARNING:root:Make sure that locally built Python SDK docker image has Python
2.7 interpreter.
WARNING:root:Make sure that locally built Python SDK docker image has Python
2.7 interpreter.
test_wordcount_fnapi_it (apache_beam.examples.wordcount_it_test.WordCountIT)
... ERROR
test_metrics_fnapi_it
(apache_beam.runners.dataflow.dataflow_exercise_metrics_pipeline_test.ExerciseMetricsPipelineTest)
... ERROR
======================================================================
ERROR: test_wordcount_fnapi_it
(apache_beam.examples.wordcount_it_test.WordCountIT)
----------------------------------------------------------------------
Traceback (most recent call last):
File
"<https://builds.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/container/venv/python/local/lib/python2.7/site-packages/nose/plugins/multiprocess.py",>
line 812, in run
test(orig)
File
"<https://builds.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/container/venv/python/local/lib/python2.7/site-packages/nose/case.py",>
line 45, in __call__
return self.run(*arg, **kwarg)
File
"<https://builds.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/container/venv/python/local/lib/python2.7/site-packages/nose/case.py",>
line 133, in run
self.runTest(result)
File
"<https://builds.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/container/venv/python/local/lib/python2.7/site-packages/nose/case.py",>
line 151, in runTest
test(result)
File "/usr/lib/python2.7/unittest/case.py", line 393, in __call__
return self.run(*args, **kwds)
File "/usr/lib/python2.7/unittest/case.py", line 329, in run
testMethod()
File
"<https://builds.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/apache_beam/examples/wordcount_it_test.py",>
line 54, in test_wordcount_fnapi_it
self._run_wordcount_it(wordcount.run, experiment='beam_fn_api')
File
"<https://builds.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/apache_beam/examples/wordcount_it_test.py",>
line 91, in _run_wordcount_it
save_main_session=False)
File
"<https://builds.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/apache_beam/examples/wordcount.py",>
line 121, in run
result = p.run()
File
"<https://builds.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/apache_beam/pipeline.py",>
line 512, in run
self._options).run(False)
File
"<https://builds.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/apache_beam/pipeline.py",>
line 525, in run
return self.runner.run_pipeline(self, self._options)
File
"<https://builds.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/apache_beam/runners/dataflow/test_dataflow_runner.py",>
line 75, in run_pipeline
self.result.cancel()
File
"<https://builds.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/apache_beam/runners/dataflow/dataflow_runner.py",>
line 1666, in cancel
return self.state
File
"<https://builds.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/apache_beam/runners/dataflow/dataflow_runner.py",>
line 1604, in state
self._update_job()
File
"<https://builds.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/apache_beam/runners/dataflow/dataflow_runner.py",>
line 1557, in _update_job
self._job = self._runner.dataflow_client.get_job(self.job_id())
File
"<https://builds.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/apache_beam/utils/retry.py",>
line 236, in wrapper
return fun(*args, **kwargs)
File
"<https://builds.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/apache_beam/runners/dataflow/internal/apiclient.py",>
line 819, in get_job
response = self._client.projects_locations_jobs.Get(request)
File
"<https://builds.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/apache_beam/runners/dataflow/internal/clients/dataflow/dataflow_v1b3_client.py",>
line 699, in Get
config, request, global_params=global_params)
File
"<https://builds.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/container/venv/python/local/lib/python2.7/site-packages/apitools/base/py/base_api.py",>
line 729, in _RunMethod
http, http_request, **opts)
File
"<https://builds.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/container/venv/python/local/lib/python2.7/site-packages/apitools/base/py/http_wrapper.py",>
line 350, in MakeRequest
check_response_func=check_response_func)
File
"<https://builds.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/container/venv/python/local/lib/python2.7/site-packages/apitools/base/py/http_wrapper.py",>
line 400, in _MakeRequestNoRetry
redirections=redirections, connection_type=connection_type)
File
"<https://builds.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/container/venv/python/local/lib/python2.7/site-packages/oauth2client/transport.py",>
line 169, in new_request
redirections, connection_type)
File
"<https://builds.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/container/venv/python/local/lib/python2.7/site-packages/oauth2client/transport.py",>
line 169, in new_request
redirections, connection_type)
File
"<https://builds.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/container/venv/python/local/lib/python2.7/site-packages/httplib2/__init__.py",>
line 2189, in request
cachekey,
File
"<https://builds.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/container/venv/python/local/lib/python2.7/site-packages/httplib2/__init__.py",>
line 1845, in _request
conn, request_uri, method, body, headers
File
"<https://builds.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/container/venv/python/local/lib/python2.7/site-packages/httplib2/__init__.py",>
line 1786, in _conn_request
response = conn.getresponse()
File "/usr/lib/python2.7/httplib.py", line 1165, in getresponse
response.begin()
File "/usr/lib/python2.7/httplib.py", line 463, in begin
version, status, reason = self._read_status()
File "/usr/lib/python2.7/httplib.py", line 419, in _read_status
line = self.fp.readline(_MAXLINE + 1)
File "/usr/lib/python2.7/socket.py", line 480, in readline
data = self._sock.recv(self._rbufsize)
File "/usr/lib/python2.7/ssl.py", line 756, in recv
return self.read(buflen)
File "/usr/lib/python2.7/ssl.py", line 643, in read
v = self._sslobj.read(len)
File
"<https://builds.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/container/venv/python/local/lib/python2.7/site-packages/nose/plugins/multiprocess.py",>
line 276, in signalhandler
raise TimedOutException()
TimedOutException: 'test_wordcount_fnapi_it
(apache_beam.examples.wordcount_it_test.WordCountIT)'
======================================================================
ERROR: test_metrics_fnapi_it
(apache_beam.runners.dataflow.dataflow_exercise_metrics_pipeline_test.ExerciseMetricsPipelineTest)
----------------------------------------------------------------------
Traceback (most recent call last):
File
"<https://builds.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/container/venv/python/local/lib/python2.7/site-packages/nose/plugins/multiprocess.py",>
line 812, in run
test(orig)
File
"<https://builds.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/container/venv/python/local/lib/python2.7/site-packages/nose/case.py",>
line 45, in __call__
return self.run(*arg, **kwarg)
File
"<https://builds.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/container/venv/python/local/lib/python2.7/site-packages/nose/case.py",>
line 133, in run
self.runTest(result)
File
"<https://builds.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/container/venv/python/local/lib/python2.7/site-packages/nose/case.py",>
line 151, in runTest
test(result)
File "/usr/lib/python2.7/unittest/case.py", line 393, in __call__
return self.run(*args, **kwds)
File "/usr/lib/python2.7/unittest/case.py", line 329, in run
testMethod()
File
"<https://builds.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/apache_beam/runners/dataflow/dataflow_exercise_metrics_pipeline_test.py",>
line 57, in test_metrics_fnapi_it
result = self.run_pipeline(experiment='beam_fn_api')
File
"<https://builds.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/apache_beam/runners/dataflow/dataflow_exercise_metrics_pipeline_test.py",>
line 45, in run_pipeline
return dataflow_exercise_metrics_pipeline.apply_and_run(p)
File
"<https://builds.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/apache_beam/runners/dataflow/dataflow_exercise_metrics_pipeline.py",>
line 167, in apply_and_run
| 'm_out' >> beam.FlatMap(
File
"<https://builds.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/apache_beam/transforms/ptransform.py",>
line 562, in __ror__
result = p.apply(self, pvalueish, label)
File
"<https://builds.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/apache_beam/pipeline.py",>
line 654, in apply
pvalueish_result = self.runner.apply(transform, pvalueish, self._options)
File
"<https://builds.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/apache_beam/runners/dataflow/dataflow_runner.py",>
line 153, in apply
return super(DataflowRunner, self).apply(transform, input, options)
File
"<https://builds.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/apache_beam/runners/runner.py",>
line 198, in apply
return m(transform, input, options)
File
"<https://builds.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/apache_beam/runners/runner.py",>
line 228, in apply_PTransform
return transform.expand(input)
File
"<https://builds.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/apache_beam/transforms/core.py",>
line 2715, in expand
| Map(coder.decode).with_output_types(self.get_output_type()))
File
"<https://builds.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/apache_beam/pvalue.py",>
line 140, in __or__
return self.pipeline.apply(ptransform, self)
File
"<https://builds.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/apache_beam/pipeline.py",>
line 654, in apply
pvalueish_result = self.runner.apply(transform, pvalueish, self._options)
File
"<https://builds.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/apache_beam/runners/dataflow/dataflow_runner.py",>
line 153, in apply
return super(DataflowRunner, self).apply(transform, input, options)
File
"<https://builds.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/apache_beam/runners/runner.py",>
line 198, in apply
return m(transform, input, options)
File
"<https://builds.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/apache_beam/runners/runner.py",>
line 228, in apply_PTransform
return transform.expand(input)
File
"<https://builds.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/apache_beam/transforms/core.py",>
line 2706, in expand
return pcoll | Reshuffle()
File
"<https://builds.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/apache_beam/pvalue.py",>
line 140, in __or__
return self.pipeline.apply(ptransform, self)
File
"<https://builds.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/apache_beam/pipeline.py",>
line 654, in apply
pvalueish_result = self.runner.apply(transform, pvalueish, self._options)
File
"<https://builds.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/apache_beam/runners/dataflow/dataflow_runner.py",>
line 153, in apply
return super(DataflowRunner, self).apply(transform, input, options)
File
"<https://builds.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/apache_beam/runners/runner.py",>
line 198, in apply
return m(transform, input, options)
File
"<https://builds.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/apache_beam/runners/runner.py",>
line 228, in apply_PTransform
return transform.expand(input)
File
"<https://builds.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/apache_beam/transforms/util.py",>
line 715, in expand
| 'RemoveRandomKeys' >> Map(lambda t: t[1]).with_input_types(
File
"<https://builds.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/apache_beam/pvalue.py",>
line 140, in __or__
return self.pipeline.apply(ptransform, self)
File
"<https://builds.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/apache_beam/pipeline.py",>
line 654, in apply
pvalueish_result = self.runner.apply(transform, pvalueish, self._options)
File
"<https://builds.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/apache_beam/runners/dataflow/dataflow_runner.py",>
line 153, in apply
return super(DataflowRunner, self).apply(transform, input, options)
File
"<https://builds.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/apache_beam/runners/runner.py",>
line 198, in apply
return m(transform, input, options)
File
"<https://builds.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/apache_beam/runners/runner.py",>
line 228, in apply_PTransform
return transform.expand(input)
File
"<https://builds.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/apache_beam/transforms/util.py",>
line 686, in expand
| FlatMap(restore_timestamps).with_output_types(Any))
File
"<https://builds.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/apache_beam/pvalue.py",>
line 140, in __or__
return self.pipeline.apply(ptransform, self)
File
"<https://builds.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/apache_beam/pipeline.py",>
line 692, in apply
if self._options.view_as(DebugOptions).lookup_experiment(
File
"<https://builds.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/apache_beam/options/pipeline_options.py",>
line 355, in view_as
view = cls(self._flags)
File
"<https://builds.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/apache_beam/options/pipeline_options.py",>
line 202, in __init__
cls._add_argparse_args(parser) # type: ignore
File
"<https://builds.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/apache_beam/options/pipeline_options.py",>
line 799, in _add_argparse_args
help='Debug file to write the workflow specification.')
File "/usr/lib/python2.7/argparse.py", line 1298, in add_argument
if not _callable(type_func):
File "/usr/lib/python2.7/argparse.py", line 95, in _callable
def _callable(obj):
File
"<https://builds.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/container/venv/python/local/lib/python2.7/site-packages/nose/plugins/multiprocess.py",>
line 276, in signalhandler
raise TimedOutException()
TimedOutException: 'test_metrics_fnapi_it
(apache_beam.runners.dataflow.dataflow_exercise_metrics_pipeline_test.ExerciseMetricsPipelineTest)'
----------------------------------------------------------------------
XML: nosetests-beam_python2.7_sdk.xml
----------------------------------------------------------------------
XML:
<https://builds.apache.org/job/beam_PostCommit_Py_ValCont/ws/src/sdks/python/nosetests.xml>
----------------------------------------------------------------------
Ran 2 tests in 904.747s
FAILED (errors=2)
cleanup_container
Untagged:
us.gcr.io/apache-beam-testing/jenkins/beam_python2.7_sdk:20200519-180451
Untagged:
us.gcr.io/apache-beam-testing/jenkins/beam_python2.7_sdk@sha256:8c1d5313e27fb76834d5456ef13ebcab0fa59a8ad38b05b6be68da4f99ce9474
Deleted: sha256:9258bed5e0808a4c63edd9fdbf1f1f82acf545e9b42b5dc7695bcf77b301ae49
Deleted: sha256:8b1a07d5f244520660c258ae10e1003426eba8216c93517d7ea2b99f7a3decae
Deleted: sha256:05805cf8ae7166830e99dc8a7024dc6c71d5c681154b8e313951229688712087
Deleted: sha256:f9a34fdbb22fc6efcc24c756175397293532bab8d944f815e7b0761101332907
Deleted: sha256:3dd9bccf1477d77526a598b001b4788529f62173da3472eb16651c47b38b0d7a
Deleted: sha256:2ce339ca121bd07779d97b49e792d097a052395ffe9b26a75a42120f3136b2e9
Deleted: sha256:237030ad371c7c07f3514d800363010d3e4ff7bb4ebfaf35070995042add660f
Deleted: sha256:8f92bef76c3c69e0b1f8a2a844d6c86dae6751b97750abbd9cd8902fba399d86
Deleted: sha256:ca3892bcd060a18581a1242970c98c1a6c3af9cae255a9d7ac11779123f2064c
Deleted: sha256:a109b1f0e1fbc9229e040b5a89eeef4be3f934ca3adfa4689e187908357a9b31
Deleted: sha256:33fd3402d57b10cdf7aa85b376532e0b029c67b3c792657c13d4db8270345a82
Deleted: sha256:803cae8c429b6e19b1db2c07e0ee27f4a46520ca9bc4b52a086bf24a339cf527
Deleted: sha256:1f941d47812da502ceb255c63b02396dbd441a3cc444622b3fd4245d3a687265
Deleted: sha256:c3370d20a29a7bb509a63a7ef3ded26fa6880560872ca877c4d779f7ccb75352
Deleted: sha256:acda456563fc97fc2302aede5b130125731c55484ac711145c6135af54e0da66
Deleted: sha256:993ccbfea58ce706bffd0666415ce24e2a29ef2f30953bff8ba71f9cffca32e8
Deleted: sha256:10c6e5b2e054f84423c039d1ee3dd19d8eed4ebd69e5a8ec57ad108ddaafae6d
Deleted: sha256:330912a7f65f2434f6befe51279b6034ebe9e098f6fe044642e31cf3e6ed25d4
Deleted: sha256:307b5af0bb0394c7dac156f29372a27339d0c6eec80f9f9c3df4c533403bc359
Deleted: sha256:feb1dd099b5cb18ca82307b97464ea262daf0e7969fbb33a6ef65f69438c6bba
Deleted: sha256:dda5e8cc2dd8bbed5cee6f400164afd8346e0793f6f7ce63deb514f5b62ba754
Deleted: sha256:3553326ff987bf045f76f686aef741a81e2b340465640d2c420373ae03a4db67
Deleted: sha256:b7f13d88ef116c1d24dc20ebb0bf6416babb501cc16dbf78b991cfe415433387
Deleted: sha256:addcca0a3e74773176b50d773052039ba718aa73d21e217e60b9fdfb3dfdaad5
Deleted: sha256:3497ce14afbf1f52be299990a45b314dad1f8e820ee0e518fba3c331cb9f6f2b
Deleted: sha256:10b3fe283d960195058d5d9829d4becf42fe083ba6a9d5c76739f969e35e2805
Deleted: sha256:bf24c24befca107b46994e84dcd907f4f3bdf13c8fc899cbc5ebc210388db32f
Deleted: sha256:fabf8259840f17fabe8929bf83260d279c0029e0a9664e6f64cec2eff4c3845c
Digests:
-
us.gcr.io/apache-beam-testing/jenkins/beam_python2.7_sdk@sha256:8c1d5313e27fb76834d5456ef13ebcab0fa59a8ad38b05b6be68da4f99ce9474
Associated tags:
- 20200519-180451
Tags:
- us.gcr.io/apache-beam-testing/jenkins/beam_python2.7_sdk:20200519-180451
Deleted
[us.gcr.io/apache-beam-testing/jenkins/beam_python2.7_sdk:20200519-180451].
Deleted
[us.gcr.io/apache-beam-testing/jenkins/beam_python2.7_sdk@sha256:8c1d5313e27fb76834d5456ef13ebcab0fa59a8ad38b05b6be68da4f99ce9474].
Removed the container
Build step 'Execute shell' marked build as failure
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]