]> https://gitweb.dealii.org/ - dealii.git/log
dealii.git
2 years agoFix PETSc version detection. 14215/head
David Wells [Wed, 24 Aug 2022 19:35:42 +0000 (15:35 -0400)]
Fix PETSc version detection.

New versions of PETSc now define PETSC_VERSION_LT etc. in one line, so
our detection of PETSC_VERSION_MAJOR will now also pick up that
usage. Get around this by making the regex more correct.

2 years agoMerge pull request #14167 from zjiaqi2018/normal_flux_constraints_on_level
Daniel Arndt [Mon, 29 Aug 2022 12:34:48 +0000 (08:34 -0400)]
Merge pull request #14167 from zjiaqi2018/normal_flux_constraints_on_level

2 years agoMerge pull request #14220 from kronbichler/tria_merge_loops
Daniel Arndt [Mon, 29 Aug 2022 12:30:59 +0000 (08:30 -0400)]
Merge pull request #14220 from kronbichler/tria_merge_loops

2 years agoMerge pull request #14227 from drwells/omp-fix
Martin Kronbichler [Mon, 29 Aug 2022 09:28:04 +0000 (11:28 +0200)]
Merge pull request #14227 from drwells/omp-fix

Set another OMP environment variable.

2 years agoMerge two loops in setup of triangulation 14220/head
Martin Kronbichler [Thu, 25 Aug 2022 07:31:15 +0000 (09:31 +0200)]
Merge two loops in setup of triangulation

2 years agoSet another OMP environment variable. 14227/head
David Wells [Sat, 27 Aug 2022 17:07:52 +0000 (13:07 -0400)]
Set another OMP environment variable.

Both of these environment variables control the number of threads - if we set
one we should set the other.

In my shell I always set OMP_THREAD_LIMIT=1 since I don't want to use OpenMP.
For whatever reason stopped working recently, resulting in OpenBLAS trying to
yield execution to nonexistent other threads since some functions expect one
thread to exist and others expect two.

2 years agoMerge pull request #14224 from kronbichler/fix_bug
Timo Heister [Fri, 26 Aug 2022 20:48:08 +0000 (16:48 -0400)]
Merge pull request #14224 from kronbichler/fix_bug

Fix bug in matrix-free operators regarding diagonal

2 years agoMerge pull request #14212 from marcfehling/feindex-type-1
Martin Kronbichler [Fri, 26 Aug 2022 18:34:24 +0000 (20:34 +0200)]
Merge pull request #14212 from marcfehling/feindex-type-1

Move invalid_fe_index to numbers.

2 years agoMerge pull request #14223 from peterrum/rpe_update_output
Martin Kronbichler [Fri, 26 Aug 2022 15:49:27 +0000 (17:49 +0200)]
Merge pull request #14223 from peterrum/rpe_update_output

Update output

2 years agoFix bug in matrix-free operators regarding diagonal 14224/head
Martin Kronbichler [Fri, 26 Aug 2022 14:16:34 +0000 (16:16 +0200)]
Fix bug in matrix-free operators regarding diagonal

2 years agoUpdate output 14223/head
Peter Munch [Fri, 26 Aug 2022 13:20:48 +0000 (15:20 +0200)]
Update output

2 years agoMerge pull request #14222 from kronbichler/fix_test
David Wells [Fri, 26 Aug 2022 12:50:00 +0000 (08:50 -0400)]
Merge pull request #14222 from kronbichler/fix_test

Fix test case with clang compiler

2 years agoMerge pull request #14213 from bangerth/doc
Martin Kronbichler [Fri, 26 Aug 2022 10:31:59 +0000 (12:31 +0200)]
Merge pull request #14213 from bangerth/doc

Clarify comments about get_generalized_support_points().

2 years agoFix test case with clang compiler 14222/head
Martin Kronbichler [Fri, 26 Aug 2022 10:12:00 +0000 (12:12 +0200)]
Fix test case with clang compiler

2 years agoMerge pull request #14214 from bergbauer/fix_docker_build
Daniel Arndt [Thu, 25 Aug 2022 20:37:00 +0000 (16:37 -0400)]
Merge pull request #14214 from bergbauer/fix_docker_build

2 years agoMerge pull request #14219 from kronbichler/fix_matrixfree_bug
Daniel Arndt [Thu, 25 Aug 2022 20:35:39 +0000 (16:35 -0400)]
Merge pull request #14219 from kronbichler/fix_matrixfree_bug

2 years agoMerge pull request #14218 from kronbichler/fix_warning
David Wells [Thu, 25 Aug 2022 13:31:47 +0000 (09:31 -0400)]
Merge pull request #14218 from kronbichler/fix_warning

Avoid warning about unused variable

2 years agoMatrixFree: Fix bug in setup of new cell_index for MG 14219/head
Martin Kronbichler [Thu, 25 Aug 2022 07:26:02 +0000 (09:26 +0200)]
MatrixFree: Fix bug in setup of new cell_index for MG

2 years agoAvoid warning about unused variable 14218/head
Martin Kronbichler [Thu, 25 Aug 2022 07:24:41 +0000 (09:24 +0200)]
Avoid warning about unused variable

2 years agoMerge pull request #14209 from peterrum/PreconditionRelaxation_optimize
Peter Munch [Wed, 24 Aug 2022 18:55:49 +0000 (20:55 +0200)]
Merge pull request #14209 from peterrum/PreconditionRelaxation_optimize

Optimize PreconditionRelaxation

2 years agoMerge pull request #14203 from masterleinad/fix_kokkos_falgs
Martin Kronbichler [Wed, 24 Aug 2022 18:30:39 +0000 (20:30 +0200)]
Merge pull request #14203 from masterleinad/fix_kokkos_falgs

Fix Kokkos flags

2 years agoMerge pull request #14140 from peterrum/point_gradient_vectorial
Peter Munch [Wed, 24 Aug 2022 16:46:01 +0000 (18:46 +0200)]
Merge pull request #14140 from peterrum/point_gradient_vectorial

Generalized VT::point_gradients() for multiple components

2 years agoOptimize PreconditionRelaxation 14209/head
Peter Munch [Sun, 21 Aug 2022 20:24:52 +0000 (22:24 +0200)]
Optimize PreconditionRelaxation

2 years agoMerge pull request #14097 from luca-heltai/cgal-clean_utilities
Luca Heltai [Wed, 24 Aug 2022 15:26:16 +0000 (17:26 +0200)]
Merge pull request #14097 from luca-heltai/cgal-clean_utilities

Clean cgal utilities

2 years agoGeneralized VT::point_gradients() for multiple components 14140/head
Peter Munch [Fri, 15 Jul 2022 07:19:57 +0000 (09:19 +0200)]
Generalized VT::point_gradients() for multiple components

Co-authored-by: Peter Munch <peterrmuench@gmail.com>
Co-authored-by: Martin Kronbichler <martin.kronbichler@uni-a.de>
rename file

2 years agoFix find_package for boost python 14214/head
Maximilian Bergbauer [Wed, 24 Aug 2022 08:30:56 +0000 (10:30 +0200)]
Fix find_package for boost python

2 years agoMerge pull request #14130 from peterrum/get_matrix_free_cell_index
Martin Kronbichler [Wed, 24 Aug 2022 07:28:27 +0000 (09:28 +0200)]
Merge pull request #14130 from peterrum/get_matrix_free_cell_index

Introduce inverse of MF::get_cell_iterator()

2 years agoaddress comments 14167/head
Jiaqi Zhang [Wed, 24 Aug 2022 03:27:51 +0000 (23:27 -0400)]
address comments

2 years agoMove invalid_fe_index to numbers. 14212/head
Marc Fehling [Thu, 2 Jun 2022 20:14:18 +0000 (14:14 -0600)]
Move invalid_fe_index to numbers.

2 years agoClarify comments about get_generalized_support_points(). 14213/head
Wolfgang Bangerth [Tue, 23 Aug 2022 18:29:38 +0000 (12:29 -0600)]
Clarify comments about get_generalized_support_points().

2 years agoMerge pull request #14208 from marcfehling/getset_future
Marc Fehling [Tue, 23 Aug 2022 17:37:16 +0000 (11:37 -0600)]
Merge pull request #14208 from marcfehling/getset_future

Added get/set functions for future FE indices.

2 years agoMerge pull request #14210 from marcfehling/feindex-type
Marc Fehling [Tue, 23 Aug 2022 17:35:34 +0000 (11:35 -0600)]
Merge pull request #14210 from marcfehling/feindex-type

Move active_fe_index_type to types.

2 years agoMerge pull request #14178 from peterrum/apply_inverse_tmp
Martin Kronbichler [Tue, 23 Aug 2022 16:50:08 +0000 (18:50 +0200)]
Merge pull request #14178 from peterrum/apply_inverse_tmp

Add second version of TensorProductMatrixSymmetricSum::apply_inverse()

2 years agoMerge pull request #14207 from marcfehling/getset_active
David Wells [Tue, 23 Aug 2022 13:28:31 +0000 (09:28 -0400)]
Merge pull request #14207 from marcfehling/getset_active

Change get_active_fe_indices() to return the result.

2 years agoMerge pull request #14159 from bergbauer/fpe_float
Martin Kronbichler [Tue, 23 Aug 2022 11:10:56 +0000 (13:10 +0200)]
Merge pull request #14159 from bergbauer/fpe_float

FEPointEvaluation fix compilation for float

2 years agoMerge pull request #14190 from peterrum/feevaldata_vd
Martin Kronbichler [Tue, 23 Aug 2022 08:54:02 +0000 (10:54 +0200)]
Merge pull request #14190 from peterrum/feevaldata_vd

FEEvaluationData: add virtual destructor

2 years agoFix Tensor assignment of nested Tensors and provide a function overload of apply_tran... 14159/head
Maximilian Bergbauer [Tue, 26 Jul 2022 08:08:20 +0000 (10:08 +0200)]
Fix Tensor assignment of nested Tensors and provide a function overload of apply_transformation to get rid of casts in FEPointEvaluation

2 years agoMerge pull request #14160 from zjiaqi2018/manifold-documentation
Daniel Arndt [Mon, 22 Aug 2022 18:02:33 +0000 (14:02 -0400)]
Merge pull request #14160 from zjiaqi2018/manifold-documentation

2 years agoMerge pull request #14206 from tamiko/cmake_date
Daniel Arndt [Mon, 22 Aug 2022 17:44:09 +0000 (13:44 -0400)]
Merge pull request #14206 from tamiko/cmake_date

2 years agoaddress comments 14160/head
Jiaqi Zhang [Mon, 22 Aug 2022 16:33:43 +0000 (12:33 -0400)]
address comments

2 years agoMove active_fe_index_type to types. 14210/head
Marc Fehling [Sun, 21 Aug 2022 23:56:55 +0000 (17:56 -0600)]
Move active_fe_index_type to types.

2 years agoAdded get/set functions for future FE indices. 14208/head
Marc Fehling [Sun, 21 Aug 2022 03:03:55 +0000 (21:03 -0600)]
Added get/set functions for future FE indices.

2 years agoChange get_active_fe_indices() to return the result. 14207/head
Marc Fehling [Sun, 21 Aug 2022 02:24:23 +0000 (20:24 -0600)]
Change get_active_fe_indices() to return the result.

2 years agoCMake: Avoid --date=iso-strict for git versions older than 2.2 14206/head
Matthias Maier [Sat, 20 Aug 2022 20:49:51 +0000 (15:49 -0500)]
CMake: Avoid --date=iso-strict for git versions older than 2.2

2 years agoFix Kokkos flags 14203/head
Daniel Arndt [Fri, 19 Aug 2022 13:29:31 +0000 (09:29 -0400)]
Fix Kokkos flags

2 years agoMerge pull request #14199 from drwells/cleanup-mapping-q1-inclusions
Martin Kronbichler [Fri, 19 Aug 2022 06:43:08 +0000 (08:43 +0200)]
Merge pull request #14199 from drwells/cleanup-mapping-q1-inclusions

Cleanup mapping q1 inclusions

2 years agoMerge pull request #14201 from drwells/vector-relations-headers
Marc Fehling [Fri, 19 Aug 2022 02:38:02 +0000 (20:38 -0600)]
Merge pull request #14201 from drwells/vector-relations-headers

Add a missing header to vector_relations.h.

2 years agoMerge pull request #14202 from drwells/more-trilinos-header-fixes
Marc Fehling [Fri, 19 Aug 2022 02:37:38 +0000 (20:37 -0600)]
Merge pull request #14202 from drwells/more-trilinos-header-fixes

Add some more missing Trilinos headers.

2 years agoAdd some more missing Trilinos headers. 14202/head
David Wells [Thu, 18 Aug 2022 23:41:37 +0000 (19:41 -0400)]
Add some more missing Trilinos headers.

2 years agoClean up inclusions of mapping_q1.h 14199/head
David Wells [Sun, 14 Aug 2022 15:56:56 +0000 (11:56 -0400)]
Clean up inclusions of mapping_q1.h

2 years agoMerge pull request #14197 from peterrum/FE_Q_iso_Q1_2_MF
Peter Munch [Thu, 18 Aug 2022 20:59:18 +0000 (22:59 +0200)]
Merge pull request #14197 from peterrum/FE_Q_iso_Q1_2_MF

Fix MatrixFree + FE_Q_iso_Q1(2)

2 years agoAdd a missing header to vector_relations.h. 14201/head
David Wells [Thu, 18 Aug 2022 19:32:37 +0000 (15:32 -0400)]
Add a missing header to vector_relations.h.

2 years agoMerge pull request #13895 from bangerth/ca-free-2
Daniel Arndt [Thu, 18 Aug 2022 18:42:06 +0000 (14:42 -0400)]
Merge pull request #13895 from bangerth/ca-free-2

2 years agoUse ReferenceCell instead of StaticMappingQ1.
David Wells [Tue, 16 Aug 2022 21:16:45 +0000 (17:16 -0400)]
Use ReferenceCell instead of StaticMappingQ1.

2 years agoMerge pull request #14198 from marcfehling/zoltan
Peter Munch [Thu, 18 Aug 2022 09:20:42 +0000 (11:20 +0200)]
Merge pull request #14198 from marcfehling/zoltan

Fix more headers in Zoltan tests.

2 years agoAdd second version of TensorProductMatrixSymmetricSum::apply_inverse() 14178/head
Peter Munch [Sun, 7 Aug 2022 18:35:58 +0000 (20:35 +0200)]
Add second version of TensorProductMatrixSymmetricSum::apply_inverse()

2 years agoFix MatrixFree + FE_Q_iso_Q1(2) 14197/head
Peter Munch [Wed, 17 Aug 2022 20:04:41 +0000 (22:04 +0200)]
Fix MatrixFree + FE_Q_iso_Q1(2)

2 years agoFix more headers in Zoltan tests. 14198/head
Marc Fehling [Thu, 18 Aug 2022 01:06:12 +0000 (19:06 -0600)]
Fix more headers in Zoltan tests.

2 years agoMerge pull request #14191 from drwells/trilinos-utilities
Marc Fehling [Thu, 18 Aug 2022 00:53:47 +0000 (18:53 -0600)]
Merge pull request #14191 from drwells/trilinos-utilities

Trilinos utilities

2 years agoMerge pull request #14196 from marcfehling/zoltan
Marc Fehling [Wed, 17 Aug 2022 22:02:37 +0000 (16:02 -0600)]
Merge pull request #14196 from marcfehling/zoltan

Fix header in Zoltan tests.

2 years agoMerge pull request #14193 from marcfehling/assert-soltrans
David Wells [Wed, 17 Aug 2022 20:32:36 +0000 (16:32 -0400)]
Merge pull request #14193 from marcfehling/assert-soltrans

Assert for released handle on parallel::distributed::*Transfer classes.

2 years agoMove Trilinos utilities into a separate header. 14191/head
David Wells [Sun, 14 Aug 2022 15:52:29 +0000 (11:52 -0400)]
Move Trilinos utilities into a separate header.

2 years agoRemove an unused forward declaration.
David Wells [Tue, 16 Aug 2022 17:27:21 +0000 (13:27 -0400)]
Remove an unused forward declaration.

2 years agoFix header in Zoltan tests. 14196/head
Marc Fehling [Wed, 17 Aug 2022 19:51:49 +0000 (13:51 -0600)]
Fix header in Zoltan tests.

2 years agoaddress comments
Jiaqi Zhang [Wed, 17 Aug 2022 05:51:13 +0000 (01:51 -0400)]
address comments

2 years agofix a bug
Jiaqi Zhang [Mon, 15 Aug 2022 05:03:47 +0000 (01:03 -0400)]
fix a bug

2 years agostokes test
Jiaqi Zhang [Thu, 11 Aug 2022 04:30:31 +0000 (00:30 -0400)]
stokes test

2 years agoadd more tests
Jiaqi Zhang [Mon, 8 Aug 2022 16:12:16 +0000 (12:12 -0400)]
add more tests

2 years agocombine into one function
Jiaqi Zhang [Thu, 4 Aug 2022 04:59:28 +0000 (00:59 -0400)]
combine into one function

2 years agono normal flux on levels
Jiaqi Zhang [Thu, 28 Jul 2022 14:57:28 +0000 (10:57 -0400)]
no normal flux on levels

2 years agoAssert for released handle on Transfer classes. 14193/head
Marc Fehling [Tue, 16 Aug 2022 23:33:40 +0000 (17:33 -0600)]
Assert for released handle on Transfer classes.

2 years agoMerge pull request #14194 from mschreter/fix_missing_mpi_header
David Wells [Wed, 17 Aug 2022 14:23:47 +0000 (10:23 -0400)]
Merge pull request #14194 from mschreter/fix_missing_mpi_header

Add missing header to `lac/trilinos_tpetra_vector.templates.h`

2 years agoIntroduce inverse of MF::get_cell_iterator() 14130/head
Peter Munch [Tue, 12 Jul 2022 21:02:38 +0000 (23:02 +0200)]
Introduce inverse of MF::get_cell_iterator()

2 years agofix missing header 14194/head
Magdalena Schreter [Wed, 17 Aug 2022 08:16:12 +0000 (10:16 +0200)]
fix missing header

2 years agoFEEvaluationData: add virtual destructor 14190/head
Peter Munch [Tue, 16 Aug 2022 07:32:42 +0000 (09:32 +0200)]
FEEvaluationData: add virtual destructor

2 years agoMerge pull request #14192 from marcfehling/set
Martin Kronbichler [Wed, 17 Aug 2022 08:37:11 +0000 (10:37 +0200)]
Merge pull request #14192 from marcfehling/set

Added missing header.

2 years agoAdded missing header. 14192/head
Marc Fehling [Tue, 16 Aug 2022 22:28:54 +0000 (16:28 -0600)]
Added missing header.

2 years agoMerge pull request #14186 from drwells/misc-header-cleanup
Daniel Arndt [Tue, 16 Aug 2022 13:51:37 +0000 (09:51 -0400)]
Merge pull request #14186 from drwells/misc-header-cleanup

2 years agoMerge pull request #14185 from drwells/mpi-stub-header
Martin Kronbichler [Tue, 16 Aug 2022 12:32:20 +0000 (14:32 +0200)]
Merge pull request #14185 from drwells/mpi-stub-header

Move 'using MPI_Comm = int' et al to a separate header.

2 years agoMerge pull request #14187 from marcfehling/cleanup-hpref
Marc Fehling [Sun, 14 Aug 2022 18:40:35 +0000 (20:40 +0200)]
Merge pull request #14187 from marcfehling/cleanup-hpref

Remove now redundant namespace identifier.

2 years agoRemove now redundant namespace identifier. 14187/head
Marc Fehling [Mon, 8 Aug 2022 15:08:23 +0000 (11:08 -0400)]
Remove now redundant namespace identifier.

2 years agoClean up some header inclusions. 14186/head
David Wells [Fri, 12 Aug 2022 13:02:45 +0000 (09:02 -0400)]
Clean up some header inclusions.

2 years agoPass ReferenceCell by reference in QProjector.
David Wells [Fri, 12 Aug 2022 13:01:25 +0000 (09:01 -0400)]
Pass ReferenceCell by reference in QProjector.

This lets us use a forward declaration.

2 years agoMove 'using MPI_Comm = int' et al to a separate header. 14185/head
David Wells [Fri, 12 Aug 2022 12:24:36 +0000 (08:24 -0400)]
Move 'using MPI_Comm = int' et al to a separate header.

Most of the time we only need declarations of MPI classes (like MPI_Comm) and
not our own utility functions in headers. To this end, we can just put mpi.h (or
our equivalent stub declarations) in a separate header and use that most of the
time.

2 years agoMerge pull request #14182 from drwells/remove-qanisotropic-specializations
Martin Kronbichler [Fri, 12 Aug 2022 19:11:41 +0000 (21:11 +0200)]
Merge pull request #14182 from drwells/remove-qanisotropic-specializations

Remove some template specializations for QAnisotropic.

2 years agoMerge pull request #14188 from marcfehling/typo-52
Marc Fehling [Fri, 12 Aug 2022 18:35:51 +0000 (20:35 +0200)]
Merge pull request #14188 from marcfehling/typo-52

Fix typo in step-52.

2 years agoMerge pull request #14177 from peterrum/ConstraintInfo_new_reinit
Martin Kronbichler [Fri, 12 Aug 2022 16:59:43 +0000 (18:59 +0200)]
Merge pull request #14177 from peterrum/ConstraintInfo_new_reinit

Add second version to initialize MFF::ConstraintInfo

2 years agoFix typo in step-52. 14188/head
Marc Fehling [Fri, 12 Aug 2022 14:49:03 +0000 (10:49 -0400)]
Fix typo in step-52.

2 years agoMerge pull request #14184 from jppelteret/docfix-step_44-01
Bruno Turcksin [Fri, 12 Aug 2022 11:59:16 +0000 (07:59 -0400)]
Merge pull request #14184 from jppelteret/docfix-step_44-01

Fix some theory in step-44 introduction

2 years agoConsistently update notation in SymmetricTensor docs 14184/head
Jean-Paul Pelteret [Fri, 12 Aug 2022 00:30:40 +0000 (02:30 +0200)]
Consistently update notation in SymmetricTensor docs

2 years agoFix some theory in step-44 introduction
Jean-Paul Pelteret [Thu, 11 Aug 2022 22:16:31 +0000 (00:16 +0200)]
Fix some theory in step-44 introduction

The deviator tensor involves the  4th-order symmetric identity tensor, not the "normal" 4th-order identity tensor.

2 years agoMerge pull request #14181 from drwells/refactor-mutex-wrapper
Daniel Arndt [Thu, 11 Aug 2022 15:17:20 +0000 (11:17 -0400)]
Merge pull request #14181 from drwells/refactor-mutex-wrapper

2 years agoMove Threads::Mutex to a dedicated header. 14181/head
David Wells [Sun, 7 Aug 2022 17:00:37 +0000 (13:00 -0400)]
Move Threads::Mutex to a dedicated header.

Most files don't need anything in Threads other than Threads::Mutex so we can
decouple them from TBB et. al. by moving this class to its own header.

2 years agoRemove some template specializations for QAnisotropic. 14182/head
David Wells [Wed, 10 Aug 2022 13:25:37 +0000 (09:25 -0400)]
Remove some template specializations for QAnisotropic.

Clang now complains about adding undeclared specializations in the source file -
besides, we can combine them pretty easily.

2 years agoMerge pull request #14174 from drwells/refactor-sacado
Daniel Arndt [Wed, 10 Aug 2022 12:41:12 +0000 (08:41 -0400)]
Merge pull request #14174 from drwells/refactor-sacado

2 years agoAdd second version to initialize MFF::ConstraintInfo 14177/head
Peter Munch [Sun, 7 Aug 2022 18:19:27 +0000 (20:19 +0200)]
Add second version to initialize MFF::ConstraintInfo

2 years agoGet things working with adol-c too 14174/head
David Wells [Wed, 3 Aug 2022 19:08:24 +0000 (15:08 -0400)]
Get things working with adol-c too

2 years agoDon't include Sacado.hpp in base/numbers.h.
David Wells [Wed, 3 Aug 2022 15:39:02 +0000 (11:39 -0400)]
Don't include Sacado.hpp in base/numbers.h.

Sacado.hpp, when preprocessed, is over 200,000 lines. We can get things working
in an equivalent way by using argument dependent lookup instead.

2 years agoAdd some missing headers.
David Wells [Thu, 4 Aug 2022 19:40:39 +0000 (15:40 -0400)]
Add some missing headers.

Other changes in this PR necessitate these additions.

2 years agoMerge pull request #14175 from peterrum/TensorProductMatrixSymmetricSumBase_memory_co...
David Wells [Thu, 4 Aug 2022 17:22:13 +0000 (13:22 -0400)]
Merge pull request #14175 from peterrum/TensorProductMatrixSymmetricSumBase_memory_consumption

Implement TensorProductMatrixSymmetricSumBase::memory_consumption()


In the beginning the Universe was created. This has made a lot of people very angry and has been widely regarded as a bad move.

Douglas Adams


Typeset in Trocchi and Trocchi Bold Sans Serif.