Bug#1032442: unblock: petsc/3.18.5+dfsg1-1 petsc4py/3.18.5-1

Drew Parsons dparsons at debian.org
Mon Mar 6 20:19:48 GMT 2023


Package: release.debian.org
Severity: normal
User: release.debian.org at packages.debian.org
Usertags: unblock
X-Debbugs-Cc: petsc at packages.debian.org
Control: affects -1 + src:petsc src:petsc4py

Please unblock packages petsc and petsc4py

[ Reason ]

petsc 3.18.5 has just been released.  It is just a conventional bug
fix release that I think would be appropriate to include in bookworm.

[ Impact ]

Bug fixes and associated stability improvements won't enter bookworm
if the unblock is not permitted

[ Tests ]

debci tests for both petsac and petsc4py are passing.

[ Risks ]

5th bug fix release, no major changes. Risk is minimal.

Many changes are trivial updates to doc files, which obscures scrutiny
of the debdiffs. I am managing this risk by adding debdiffs with
--exclude=doc


[ Checklist ]
  [ ] all changes are documented in the d/changelog
  [x ] I reviewed all changes and I approve them
  [x ] attach debdiff against the package in testing

[ Other info ]

This covers petsc4py as well as petsc.  Upstream they are managed in
the same source code repo.  Actually there no substantive source
changes in petsc4py, but it would look strange to have petsc 3.18.5
with petsc4py left at 3.18.4.

unblock petsc/3.18.5+dfsg1-1
unblock petsc4py/3.18.5-1
-------------- next part --------------
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/config/BuildSystem/config/framework.py petsc-3.18.5+dfsg1/config/BuildSystem/config/framework.py
--- petsc-3.18.4+dfsg1/config/BuildSystem/config/framework.py	2022-11-28 17:22:18.000000000 +0100
+++ petsc-3.18.5+dfsg1/config/BuildSystem/config/framework.py	2023-02-27 23:11:05.000000000 +0100
@@ -524,6 +524,8 @@
       #Intel
       lines = [s for s in lines if s.find(": command line warning #10121: overriding") < 0]
       lines = [s for s in lines if s.find(': remark #10441:') < 0]
+      #Intel icpx
+      lines = [s for s in lines if s.find("warning: Note that use of '-g' without any optimization-level option will turn off most compiler optimizations similar to use") < 0] 
       # PGI: Ignore warning about temporary license
       lines = [s for s in lines if s.find('license.dat') < 0]
       # Cray XT3
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/config/BuildSystem/config/packages/pARMS.py petsc-3.18.5+dfsg1/config/BuildSystem/config/packages/pARMS.py
--- petsc-3.18.4+dfsg1/config/BuildSystem/config/packages/pARMS.py	2022-06-29 08:00:07.000000000 +0200
+++ petsc-3.18.5+dfsg1/config/BuildSystem/config/packages/pARMS.py	2023-02-27 23:11:05.000000000 +0100
@@ -4,12 +4,12 @@
   def __init__(self, framework):
     config.package.Package.__init__(self, framework)
     self.gitcommit = 'v3.2p5'
-    self.download  = ['git://https://bitbucket.org/petsc/pkg-parms.git','https://bitbucket.org/petsc/pkg-metis/get/'+self.gitcommit+'.tar.gz']
+    self.download  = ['git://https://bitbucket.org/petsc/pkg-parms.git','https://bitbucket.org/petsc/pkg-parms/get/'+self.gitcommit+'.tar.gz']
     self.downloaddirnames  = ['petsc-pkg-parms','pARMS']
     self.functions = ['parms_PCCreate']
     self.includes  = ['parms.h']
     self.liblist   = [['libparms.a']]
-    #self.license   = 'http://www-users.cs.umn.edu/~saad/software/pARMS'
+    #self.license   = 'https://www-users.cs.umn.edu/~saad/software/pARMS'
     self.precisions = ['double']
     return
 
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/config/configure.py petsc-3.18.5+dfsg1/config/configure.py
--- petsc-3.18.4+dfsg1/config/configure.py	2022-11-28 17:22:18.000000000 +0100
+++ petsc-3.18.5+dfsg1/config/configure.py	2023-02-27 23:11:05.000000000 +0100
@@ -2,8 +2,9 @@
 from __future__ import print_function
 import os, sys
 
-extraLogs  = []
-petsc_arch = ''
+banner_length = 93
+extraLogs     = []
+petsc_arch    = ''
 
 # Use en_US as language so that BuildSystem parses compiler messages in english
 def fixLang(lang):
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/config/examples/arch-ci-linux-hip-double.py petsc-3.18.5+dfsg1/config/examples/arch-ci-linux-hip-double.py
--- petsc-3.18.4+dfsg1/config/examples/arch-ci-linux-hip-double.py	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/config/examples/arch-ci-linux-hip-double.py	2023-02-27 23:11:05.000000000 +0100
@@ -3,34 +3,19 @@
 import os
 petsc_hash_pkgs=os.path.join(os.getenv('HOME'),'petsc-hash-pkgs')
 
-import platform
-if platform.node() == 'instinct':
-  opts = [
-    '--with-mpi-dir=/home/users/balay/soft/mpich-4.0',
-    '--with-blaslapack-dir=/home/users/balay/soft/fblaslapack',
-    '--with-make-np=24',
-    '--with-make-test-np=8',
-    '--with-hipc=/opt/rocm-5.1.0/bin/hipcc',
-    '--with-hip-dir=/opt/rocm-5.1.0',
-  ]
-else:
-  opts = [
-    'LDFLAGS=-L/opt/rh/devtoolset-7/root/usr/lib/gcc/x86_64-redhat-linux/7/lib -lquadmath',
-    '--with-mpi-dir=/scratch/soft/mpich',
-    '--download-fblaslapack',
-    '--download-hypre',
-    '--with-hipc=/opt/rocm/bin/hipcc',
-    '--with-hip-dir=/opt/rocm',
-  ]
-
 if __name__ == '__main__':
   import sys
   import os
   sys.path.insert(0, os.path.abspath('config'))
   import configure
-  configure_options = opts + [
+  configure_options = [
     '--package-prefix-hash='+petsc_hash_pkgs,
-    '--download-cmake',
+    '--with-mpi-dir=/home/users/balay/soft/instinct/gcc-10.2.0/mpich-4.1',
+    '--with-blaslapack-dir=/home/users/balay/soft/instinct/gcc-10.2.0/fblaslapack',
+    '--with-make-np=24',
+    '--with-make-test-np=8',
+    '--with-hipc=/opt/rocm-5.4.3/bin/hipcc',
+    '--with-hip-dir=/opt/rocm-5.4.3',
     'COPTFLAGS=-g -O',
     'FOPTFLAGS=-g -O',
     'CXXOPTFLAGS=-g -O',
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/CTAGS petsc-3.18.5+dfsg1/CTAGS
--- petsc-3.18.4+dfsg1/CTAGS	2023-01-31 07:04:23.000000000 +0100
+++ petsc-3.18.5+dfsg1/CTAGS	2023-02-27 23:31:42.000000000 +0100
@@ -1,14 +1,127 @@
+!_TAG_EXTRA_DESCRIPTION	anonymous	/Include tags for non-named objects like lambda/
+!_TAG_EXTRA_DESCRIPTION	fileScope	/Include tags of file scope/
+!_TAG_EXTRA_DESCRIPTION	pseudo	/Include pseudo tags/
+!_TAG_EXTRA_DESCRIPTION	subparser	/Include tags generated by subparsers/
+!_TAG_FIELD_DESCRIPTION	epoch	/the last modified time of the input file (only for F\/file kind tag)/
+!_TAG_FIELD_DESCRIPTION	file	/File-restricted scoping/
+!_TAG_FIELD_DESCRIPTION	input	/input file/
+!_TAG_FIELD_DESCRIPTION	language	/Language of input file containing tag/
+!_TAG_FIELD_DESCRIPTION	name	/tag name/
+!_TAG_FIELD_DESCRIPTION	pattern	/pattern/
+!_TAG_FIELD_DESCRIPTION	typeref	/Type and name of a variable or typedef/
+!_TAG_FIELD_DESCRIPTION!C++	name	/aliased names/
+!_TAG_FIELD_DESCRIPTION!Python	nameref	/the original name for the tag/
 !_TAG_FILE_FORMAT	2	/extended format; --format=1 will not append ;" to lines/
 !_TAG_FILE_SORTED	1	/0=unsorted, 1=sorted, 2=foldcase/
+!_TAG_KIND_DESCRIPTION!C	d,macro	/macro definitions/
+!_TAG_KIND_DESCRIPTION!C	e,enumerator	/enumerators (values inside an enumeration)/
+!_TAG_KIND_DESCRIPTION!C	f,function	/function definitions/
+!_TAG_KIND_DESCRIPTION!C	g,enum	/enumeration names/
+!_TAG_KIND_DESCRIPTION!C	h,header	/included header files/
+!_TAG_KIND_DESCRIPTION!C	m,member	/struct, and union members/
+!_TAG_KIND_DESCRIPTION!C	s,struct	/structure names/
+!_TAG_KIND_DESCRIPTION!C	t,typedef	/typedefs/
+!_TAG_KIND_DESCRIPTION!C	u,union	/union names/
+!_TAG_KIND_DESCRIPTION!C	v,variable	/variable definitions/
+!_TAG_KIND_DESCRIPTION!C++	c,class	/classes/
+!_TAG_KIND_DESCRIPTION!C++	d,macro	/macro definitions/
+!_TAG_KIND_DESCRIPTION!C++	e,enumerator	/enumerators (values inside an enumeration)/
+!_TAG_KIND_DESCRIPTION!C++	f,function	/function definitions/
+!_TAG_KIND_DESCRIPTION!C++	g,enum	/enumeration names/
+!_TAG_KIND_DESCRIPTION!C++	h,header	/included header files/
+!_TAG_KIND_DESCRIPTION!C++	m,member	/class, struct, and union members/
+!_TAG_KIND_DESCRIPTION!C++	n,namespace	/namespaces/
+!_TAG_KIND_DESCRIPTION!C++	s,struct	/structure names/
+!_TAG_KIND_DESCRIPTION!C++	t,typedef	/typedefs/
+!_TAG_KIND_DESCRIPTION!C++	u,union	/union names/
+!_TAG_KIND_DESCRIPTION!C++	v,variable	/variable definitions/
+!_TAG_KIND_DESCRIPTION!Fortran	E,enum	/enumerations/
+!_TAG_KIND_DESCRIPTION!Fortran	M,method	/type bound procedures/
+!_TAG_KIND_DESCRIPTION!Fortran	N,enumerator	/enumeration values/
+!_TAG_KIND_DESCRIPTION!Fortran	S,submodule	/submodules/
+!_TAG_KIND_DESCRIPTION!Fortran	b,blockData	/block data/
+!_TAG_KIND_DESCRIPTION!Fortran	c,common	/common blocks/
+!_TAG_KIND_DESCRIPTION!Fortran	e,entry	/entry points/
+!_TAG_KIND_DESCRIPTION!Fortran	f,function	/functions/
+!_TAG_KIND_DESCRIPTION!Fortran	i,interface	/interface contents, generic names, and operators/
+!_TAG_KIND_DESCRIPTION!Fortran	k,component	/type and structure components/
+!_TAG_KIND_DESCRIPTION!Fortran	l,label	/labels/
+!_TAG_KIND_DESCRIPTION!Fortran	m,module	/modules/
+!_TAG_KIND_DESCRIPTION!Fortran	n,namelist	/namelists/
+!_TAG_KIND_DESCRIPTION!Fortran	p,program	/programs/
+!_TAG_KIND_DESCRIPTION!Fortran	s,subroutine	/subroutines/
+!_TAG_KIND_DESCRIPTION!Fortran	t,type	/derived types and structures/
+!_TAG_KIND_DESCRIPTION!Fortran	v,variable	/program (global) and module variables/
+!_TAG_KIND_DESCRIPTION!HTML	C,stylesheet	/stylesheets/
+!_TAG_KIND_DESCRIPTION!HTML	I,id	/identifiers/
+!_TAG_KIND_DESCRIPTION!HTML	J,script	/scripts/
+!_TAG_KIND_DESCRIPTION!HTML	a,anchor	/named anchors/
+!_TAG_KIND_DESCRIPTION!HTML	c,class	/classes/
+!_TAG_KIND_DESCRIPTION!HTML	h,heading1	/H1 headings/
+!_TAG_KIND_DESCRIPTION!HTML	i,heading2	/H2 headings/
+!_TAG_KIND_DESCRIPTION!HTML	j,heading3	/H3 headings/
+!_TAG_KIND_DESCRIPTION!HTML	t,title	/titles/
+!_TAG_KIND_DESCRIPTION!Make	I,makefile	/makefiles/
+!_TAG_KIND_DESCRIPTION!Make	m,macro	/macros/
+!_TAG_KIND_DESCRIPTION!Make	t,target	/targets/
+!_TAG_KIND_DESCRIPTION!Python	I,namespace	/name referring a module defined in other file/
+!_TAG_KIND_DESCRIPTION!Python	Y,unknown	/name referring a class\/variable\/function\/module defined in other module/
+!_TAG_KIND_DESCRIPTION!Python	c,class	/classes/
+!_TAG_KIND_DESCRIPTION!Python	f,function	/functions/
+!_TAG_KIND_DESCRIPTION!Python	i,module	/modules/
+!_TAG_KIND_DESCRIPTION!Python	m,member	/class members/
+!_TAG_KIND_DESCRIPTION!Python	v,variable	/variables/
+!_TAG_KIND_DESCRIPTION!Tex	B,bibitem	/bibliography items/
+!_TAG_KIND_DESCRIPTION!Tex	C,command	/command created with \\newcommand/
+!_TAG_KIND_DESCRIPTION!Tex	G,subparagraph	/subparagraphs/
+!_TAG_KIND_DESCRIPTION!Tex	N,counter	/counter created with \\newcounter/
+!_TAG_KIND_DESCRIPTION!Tex	P,paragraph	/paragraphs/
+!_TAG_KIND_DESCRIPTION!Tex	b,subsubsection	/subsubsections/
+!_TAG_KIND_DESCRIPTION!Tex	c,chapter	/chapters/
+!_TAG_KIND_DESCRIPTION!Tex	e,environment	/environment created with \\newenvironment/
+!_TAG_KIND_DESCRIPTION!Tex	i,xinput	/external input files/
+!_TAG_KIND_DESCRIPTION!Tex	l,label	/labels/
+!_TAG_KIND_DESCRIPTION!Tex	o,operator	/math operator created with \\DeclareMathOperator/
+!_TAG_KIND_DESCRIPTION!Tex	p,part	/parts/
+!_TAG_KIND_DESCRIPTION!Tex	s,section	/sections/
+!_TAG_KIND_DESCRIPTION!Tex	t,theorem	/theorem created with \\newtheorem/
+!_TAG_KIND_DESCRIPTION!Tex	u,subsection	/subsections/
 !_TAG_OUTPUT_EXCMD	mixed	/number, pattern, mixed, or combineV2/
 !_TAG_OUTPUT_FILESEP	slash	/slash or backslash/
 !_TAG_OUTPUT_MODE	u-ctags	/u-ctags or e-ctags/
+!_TAG_OUTPUT_VERSION	0.0	/current.age/
+!_TAG_PARSER_VERSION!C	0.0	/current.age/
+!_TAG_PARSER_VERSION!C++	0.0	/current.age/
+!_TAG_PARSER_VERSION!Fortran	0.0	/current.age/
+!_TAG_PARSER_VERSION!HTML	0.0	/current.age/
+!_TAG_PARSER_VERSION!Make	0.0	/current.age/
+!_TAG_PARSER_VERSION!Python	0.0	/current.age/
+!_TAG_PARSER_VERSION!Tex	0.0	/current.age/
 !_TAG_PATTERN_LENGTH_LIMIT	96	/0 for no limit/
-!_TAG_PROC_CWD	/tmp/petsc-dist-tmp.balay.764631/petsc-3.18.4/	//
+!_TAG_PROC_CWD	/tmp/petsc-dist-tmp.balay.756230/petsc-3.18.5/	//
 !_TAG_PROGRAM_AUTHOR	Universal Ctags Team	//
 !_TAG_PROGRAM_NAME	Universal Ctags	/Derived from Exuberant Ctags/
 !_TAG_PROGRAM_URL	https://ctags.io/	/official site/
-!_TAG_PROGRAM_VERSION	5.9.0	//
+!_TAG_PROGRAM_VERSION	6.0.0	//
+!_TAG_ROLE_DESCRIPTION!C!header	local	/local header/
+!_TAG_ROLE_DESCRIPTION!C!header	system	/system header/
+!_TAG_ROLE_DESCRIPTION!C!macro	undef	/undefined/
+!_TAG_ROLE_DESCRIPTION!C++!header	local	/local header/
+!_TAG_ROLE_DESCRIPTION!C++!header	system	/system header/
+!_TAG_ROLE_DESCRIPTION!C++!macro	undef	/undefined/
+!_TAG_ROLE_DESCRIPTION!HTML!class	attribute	/assigned as attributes/
+!_TAG_ROLE_DESCRIPTION!HTML!script	extFile	/referenced as external files/
+!_TAG_ROLE_DESCRIPTION!HTML!stylesheet	extFile	/referenced as external files/
+!_TAG_ROLE_DESCRIPTION!Make!makefile	included	/included/
+!_TAG_ROLE_DESCRIPTION!Make!makefile	optional	/optionally included/
+!_TAG_ROLE_DESCRIPTION!Python!module	imported	/imported modules/
+!_TAG_ROLE_DESCRIPTION!Python!module	indirectlyImported	/module imported in alternative name/
+!_TAG_ROLE_DESCRIPTION!Python!module	namespace	/namespace from where classes\/variables\/functions are imported/
+!_TAG_ROLE_DESCRIPTION!Python!unknown	imported	/imported from the other module/
+!_TAG_ROLE_DESCRIPTION!Python!unknown	indirectlyImported	/classes\/variables\/functions\/modules imported in alternative name/
+!_TAG_ROLE_DESCRIPTION!Tex!xinput	bibliography	/bibliography (.bib) file/
+!_TAG_ROLE_DESCRIPTION!Tex!xinput	included	/external input file specified with \\include/
+!_TAG_ROLE_DESCRIPTION!Tex!xinput	input	/external input file specified with \\input/
 $(scripts)	src/binding/petsc4py/demo/petsc-examples/ksp/makefile	/^$(scripts):$/;"	t	language:Make
 ${EXECUTABLE}.exe	src/binding/petsc4py/demo/perftest/makefile	/^${EXECUTABLE}.exe:$/;"	t	language:Make
 ${EXECUTABLE}.exe	src/binding/petsc4py/demo/poisson3d/makefile	/^${EXECUTABLE}.exe:$/;"	t	language:Make
@@ -615,9 +728,9 @@
 ASSEMBLE_LOWER_TRIANGULAR	src/ksp/ksp/tutorials/ex42.c	/^#define ASSEMBLE_LOWER_TRIANGULAR$/;"	d	language:C	file:
 ASS_MAP_wIwDI_uJuDJ	src/ksp/ksp/tutorials/ex42.c	/^static PetscInt ASS_MAP_wIwDI_uJuDJ(PetscInt wi, PetscInt wd, PetscInt w_NPE, PetscInt w_dof, Pe/;"	f	language:C	typeref:typename:PetscInt	file:
 ASS_MAP_wIwDI_uJuDJ	src/ksp/ksp/tutorials/ex43.c	/^static PetscInt ASS_MAP_wIwDI_uJuDJ(PetscInt wi, PetscInt wd, PetscInt w_NPE, PetscInt w_dof, Pe/;"	f	language:C	typeref:typename:PetscInt	file:
-AS_DIGIT	src/sys/yaml/src/yaml_private.h	/^#define AS_DIGIT(/;"	d	language:C++
+AS_DIGIT	src/sys/yaml/src/yaml_private.h	/^#define AS_DIGIT(string)    AS_DIGIT_/;"	d	language:C++
 AS_DIGIT_AT	src/sys/yaml/src/yaml_private.h	/^#define AS_DIGIT_AT(/;"	d	language:C++
-AS_HEX	src/sys/yaml/src/yaml_private.h	/^#define AS_HEX(/;"	d	language:C++
+AS_HEX	src/sys/yaml/src/yaml_private.h	/^#define AS_HEX(string)  AS_HEX_/;"	d	language:C++
 AS_HEX_AT	src/sys/yaml/src/yaml_private.h	/^#define AS_HEX_AT(/;"	d	language:C++
 ASum	src/ts/impls/rosw/rosw.c	/^  PetscReal *ASum;              \/* Row sum of A *\/$/;"	m	language:C	struct:_RosWTableau	typeref:typename:PetscReal *	file:
 AT	include/petsc/private/kspimpl.h	/^    Mat       AT, BT;$/;"	m	language:C++	struct:_p_KSP::__anon45e825a60208	typeref:typename:Mat
@@ -1073,33 +1186,33 @@
 B	src/ts/tutorials/ex25.c	/^  PetscReal A, B;          \/* Reaction coefficients *\/$/;"	m	language:C	struct:_User	typeref:typename:PetscReal	file:
 B	src/ts/tutorials/ex35.cxx	/^  PetscReal A, B;    \/* Reaction coefficients *\/$/;"	m	language:C++	struct:pUserCtx	typeref:typename:PetscReal	file:
 BACK	src/binding/petsc4py/docs/apiref/petsc4py.PETSc.DMStag.StencilLocation-class.html	/^        <a name="BACK"><\/a><span class="summary-name">BACK<\/span> = <code title="5">5<\/code>$/;"	a	language:HTML
-BACK	src/dm/impls/stag/tests/ex30.c	/^#define BACK /;"	d	language:C	file:
-BACK	src/dm/impls/stag/tutorials/ex3.c	/^#define BACK /;"	d	language:C	file:
+BACK	src/dm/impls/stag/tests/ex30.c	/^#define BACK             DMSTAG_BACK$/;"	d	language:C	file:
+BACK	src/dm/impls/stag/tutorials/ex3.c	/^#define BACK             DMSTAG_BACK$/;"	d	language:C	file:
 BACKWARD_SWEEP	src/binding/petsc4py/docs/apiref/petsc4py.PETSc.Mat.SORType-class.html	/^        <a name="BACKWARD_SWEEP"><\/a><span class="summary-name">BACKWARD_SWEEP<\/span> = <code /;"	a	language:HTML
 BACK_DOWN	src/binding/petsc4py/docs/apiref/petsc4py.PETSc.DMStag.StencilLocation-class.html	/^        <a name="BACK_DOWN"><\/a><span class="summary-name">BACK_DOWN<\/span> = <code title="2">/;"	a	language:HTML
-BACK_DOWN	src/dm/impls/stag/tests/ex30.c	/^#define BACK_DOWN /;"	d	language:C	file:
-BACK_DOWN	src/dm/impls/stag/tutorials/ex3.c	/^#define BACK_DOWN /;"	d	language:C	file:
+BACK_DOWN	src/dm/impls/stag/tests/ex30.c	/^#define BACK_DOWN        DMSTAG_BACK_DOWN$/;"	d	language:C	file:
+BACK_DOWN	src/dm/impls/stag/tutorials/ex3.c	/^#define BACK_DOWN        DMSTAG_BACK_DOWN$/;"	d	language:C	file:
 BACK_DOWN_LEFT	src/binding/petsc4py/docs/apiref/petsc4py.PETSc.DMStag.StencilLocation-class.html	/^        <a name="BACK_DOWN_LEFT"><\/a><span class="summary-name">BACK_DOWN_LEFT<\/span> = <code /;"	a	language:HTML
-BACK_DOWN_LEFT	src/dm/impls/stag/tests/ex30.c	/^#define BACK_DOWN_LEFT /;"	d	language:C	file:
-BACK_DOWN_LEFT	src/dm/impls/stag/tutorials/ex3.c	/^#define BACK_DOWN_LEFT /;"	d	language:C	file:
+BACK_DOWN_LEFT	src/dm/impls/stag/tests/ex30.c	/^#define BACK_DOWN_LEFT   DMSTAG_BACK_DOWN_LEFT$/;"	d	language:C	file:
+BACK_DOWN_LEFT	src/dm/impls/stag/tutorials/ex3.c	/^#define BACK_DOWN_LEFT   DMSTAG_BACK_DOWN_LEFT$/;"	d	language:C	file:
 BACK_DOWN_RIGHT	src/binding/petsc4py/docs/apiref/petsc4py.PETSc.DMStag.StencilLocation-class.html	/^        <a name="BACK_DOWN_RIGHT"><\/a><span class="summary-name">BACK_DOWN_RIGHT<\/span> = <cod/;"	a	language:HTML
-BACK_DOWN_RIGHT	src/dm/impls/stag/tests/ex30.c	/^#define BACK_DOWN_RIGHT /;"	d	language:C	file:
-BACK_DOWN_RIGHT	src/dm/impls/stag/tutorials/ex3.c	/^#define BACK_DOWN_RIGHT /;"	d	language:C	file:
+BACK_DOWN_RIGHT	src/dm/impls/stag/tests/ex30.c	/^#define BACK_DOWN_RIGHT  DMSTAG_BACK_DOWN_RIGHT$/;"	d	language:C	file:
+BACK_DOWN_RIGHT	src/dm/impls/stag/tutorials/ex3.c	/^#define BACK_DOWN_RIGHT  DMSTAG_BACK_DOWN_RIGHT$/;"	d	language:C	file:
 BACK_LEFT	src/binding/petsc4py/docs/apiref/petsc4py.PETSc.DMStag.StencilLocation-class.html	/^        <a name="BACK_LEFT"><\/a><span class="summary-name">BACK_LEFT<\/span> = <code title="4">/;"	a	language:HTML
-BACK_LEFT	src/dm/impls/stag/tests/ex30.c	/^#define BACK_LEFT /;"	d	language:C	file:
-BACK_LEFT	src/dm/impls/stag/tutorials/ex3.c	/^#define BACK_LEFT /;"	d	language:C	file:
+BACK_LEFT	src/dm/impls/stag/tests/ex30.c	/^#define BACK_LEFT        DMSTAG_BACK_LEFT$/;"	d	language:C	file:
+BACK_LEFT	src/dm/impls/stag/tutorials/ex3.c	/^#define BACK_LEFT        DMSTAG_BACK_LEFT$/;"	d	language:C	file:
 BACK_RIGHT	src/binding/petsc4py/docs/apiref/petsc4py.PETSc.DMStag.StencilLocation-class.html	/^        <a name="BACK_RIGHT"><\/a><span class="summary-name">BACK_RIGHT<\/span> = <code title="6/;"	a	language:HTML
-BACK_RIGHT	src/dm/impls/stag/tests/ex30.c	/^#define BACK_RIGHT /;"	d	language:C	file:
-BACK_RIGHT	src/dm/impls/stag/tutorials/ex3.c	/^#define BACK_RIGHT /;"	d	language:C	file:
+BACK_RIGHT	src/dm/impls/stag/tests/ex30.c	/^#define BACK_RIGHT       DMSTAG_BACK_RIGHT$/;"	d	language:C	file:
+BACK_RIGHT	src/dm/impls/stag/tutorials/ex3.c	/^#define BACK_RIGHT       DMSTAG_BACK_RIGHT$/;"	d	language:C	file:
 BACK_UP	src/binding/petsc4py/docs/apiref/petsc4py.PETSc.DMStag.StencilLocation-class.html	/^        <a name="BACK_UP"><\/a><span class="summary-name">BACK_UP<\/span> = <code title="8">8<\//;"	a	language:HTML
-BACK_UP	src/dm/impls/stag/tests/ex30.c	/^#define BACK_UP /;"	d	language:C	file:
-BACK_UP	src/dm/impls/stag/tutorials/ex3.c	/^#define BACK_UP /;"	d	language:C	file:
+BACK_UP	src/dm/impls/stag/tests/ex30.c	/^#define BACK_UP          DMSTAG_BACK_UP$/;"	d	language:C	file:
+BACK_UP	src/dm/impls/stag/tutorials/ex3.c	/^#define BACK_UP          DMSTAG_BACK_UP$/;"	d	language:C	file:
 BACK_UP_LEFT	src/binding/petsc4py/docs/apiref/petsc4py.PETSc.DMStag.StencilLocation-class.html	/^        <a name="BACK_UP_LEFT"><\/a><span class="summary-name">BACK_UP_LEFT<\/span> = <code titl/;"	a	language:HTML
-BACK_UP_LEFT	src/dm/impls/stag/tests/ex30.c	/^#define BACK_UP_LEFT /;"	d	language:C	file:
-BACK_UP_LEFT	src/dm/impls/stag/tutorials/ex3.c	/^#define BACK_UP_LEFT /;"	d	language:C	file:
+BACK_UP_LEFT	src/dm/impls/stag/tests/ex30.c	/^#define BACK_UP_LEFT     DMSTAG_BACK_UP_LEFT$/;"	d	language:C	file:
+BACK_UP_LEFT	src/dm/impls/stag/tutorials/ex3.c	/^#define BACK_UP_LEFT     DMSTAG_BACK_UP_LEFT$/;"	d	language:C	file:
 BACK_UP_RIGHT	src/binding/petsc4py/docs/apiref/petsc4py.PETSc.DMStag.StencilLocation-class.html	/^        <a name="BACK_UP_RIGHT"><\/a><span class="summary-name">BACK_UP_RIGHT<\/span> = <code ti/;"	a	language:HTML
-BACK_UP_RIGHT	src/dm/impls/stag/tests/ex30.c	/^#define BACK_UP_RIGHT /;"	d	language:C	file:
-BACK_UP_RIGHT	src/dm/impls/stag/tutorials/ex3.c	/^#define BACK_UP_RIGHT /;"	d	language:C	file:
+BACK_UP_RIGHT	src/dm/impls/stag/tests/ex30.c	/^#define BACK_UP_RIGHT    DMSTAG_BACK_UP_RIGHT$/;"	d	language:C	file:
+BACK_UP_RIGHT	src/dm/impls/stag/tutorials/ex3.c	/^#define BACK_UP_RIGHT    DMSTAG_BACK_UP_RIGHT$/;"	d	language:C	file:
 BAIJ	src/binding/petsc4py/docs/apiref/petsc4py.PETSc.Mat.Type-class.html	/^        <a name="BAIJ"><\/a><span class="summary-name">BAIJ<\/span> = <code title="'baij'"><code/;"	a	language:HTML
 BAIJMKL	src/binding/petsc4py/docs/apiref/petsc4py.PETSc.Mat.Type-class.html	/^        <a name="BAIJMKL"><\/a><span class="summary-name">BAIJMKL<\/span> = <code title="'baijmk/;"	a	language:HTML
 BALANCED	src/binding/petsc4py/docs/apiref/petsc4py.PETSc.PC.HPDDMCoarseCorrectionType-class.html	/^        <a name="BALANCED"><\/a><span class="summary-name">BALANCED<\/span> = <code title="2">2</;"	a	language:HTML
@@ -1134,7 +1247,7 @@
 BCApply_WEST	src/ksp/ksp/tutorials/ex49.c	/^static PetscErrorCode BCApply_WEST(DM da, PetscInt d_idx, PetscScalar bc_val, Mat A, Vec b)$/;"	f	language:C	typeref:typename:PetscErrorCode	file:
 BCGS	src/binding/petsc4py/docs/apiref/petsc4py.PETSc.KSP.Type-class.html	/^        <a name="BCGS"><\/a><span class="summary-name">BCGS<\/span> = <code title="'bcgs'"><code/;"	a	language:HTML
 BCGSL	src/binding/petsc4py/docs/apiref/petsc4py.PETSc.KSP.Type-class.html	/^        <a name="BCGSL"><\/a><span class="summary-name">BCGSL<\/span> = <code title="'bcgsl'"><c/;"	a	language:HTML
-BCHECK	src/ksp/ksp/tutorials/ex35.cxx	/^#define BCHECK(/;"	d	language:C++	file:
+BCHECK	src/ksp/ksp/tutorials/ex35.cxx	/^#define BCHECK(coordxyz, truetrace) ((coordxyz < truetrace + BCHECKEPS && coordxyz > truetrace -/;"	d	language:C++	file:
 BCHECKEPS	src/ksp/ksp/tutorials/ex35.cxx	/^#define BCHECKEPS /;"	d	language:C++	file:
 BCType	src/ksp/ksp/tutorials/ex29.c	/^} BCType;$/;"	t	language:C	typeref:enum:__anond0fdfe450103	file:
 BCType	src/ksp/ksp/tutorials/ex32.c	/^} BCType;$/;"	t	language:C	typeref:enum:__anond0fe6cdf0103	file:
@@ -1617,11 +1730,11 @@
 CASTDOUBLECOMPLEX	src/mat/impls/aij/mpi/superlu_dist/superlu_dist.c	/^  #define CASTDOUBLECOMPLEX /;"	d	language:C	file:
 CASTDOUBLECOMPLEXSTAR	src/mat/impls/aij/mpi/superlu_dist/superlu_dist.c	/^  #define CASTDOUBLECOMPLEXSTAR /;"	d	language:C	file:
 CC	src/ksp/ksp/impls/gmres/dgmres/dgmresimpl.h	/^#define CC(/;"	d	language:C++
-CC	src/ksp/ksp/impls/gmres/fgmres/fgmresimpl.h	/^#define CC(/;"	d	language:C++
+CC	src/ksp/ksp/impls/gmres/fgmres/fgmresimpl.h	/^#define CC(a) (fgmres->cc_origin + (a)) \/* CC /;"	d	language:C++
 CC	src/ksp/ksp/impls/gmres/gmresimpl.h	/^  #define CC(/;"	d	language:C++
-CC	src/ksp/ksp/impls/gmres/lgmres/lgmresimpl.h	/^#define CC(/;"	d	language:C++
-CC	src/ksp/ksp/impls/gmres/pgmres/pgmresimpl.h	/^#define CC(/;"	d	language:C++
-CC	src/ksp/ksp/impls/gmres/pipefgmres/pipefgmresimpl.h	/^#define CC(/;"	d	language:C++
+CC	src/ksp/ksp/impls/gmres/lgmres/lgmresimpl.h	/^#define CC(a)  (lgmres->cc_origin + (a)) \/* CC /;"	d	language:C++
+CC	src/ksp/ksp/impls/gmres/pgmres/pgmresimpl.h	/^#define CC(a) (pgmres->cc_origin + (a)) \/* CC /;"	d	language:C++
+CC	src/ksp/ksp/impls/gmres/pipefgmres/pipefgmresimpl.h	/^#define CC(a) (pipefgmres->cc_origin + (a)) \/* CC /;"	d	language:C++
 CCmplx	src/dm/tests/ex36.c	/^typedef struct _n_CCmplx CCmplx;$/;"	t	language:C	typeref:struct:_n_CCmplx	file:
 CCmplxAdd	src/dm/tests/ex36.c	/^CCmplx CCmplxAdd(CCmplx a, CCmplx c)$/;"	f	language:C	typeref:typename:CCmplx
 CCmplxExp	src/dm/tests/ex36.c	/^CCmplx CCmplxExp(CCmplx a)$/;"	f	language:C	typeref:typename:CCmplx
@@ -1756,7 +1869,7 @@
 CHARACTERISTIC_Solve	include/petsc/private/characteristicimpl.h	/^PETSC_EXTERN PetscLogEvent  CHARACTERISTIC_Solve;$/;"	v	language:C++	typeref:typename:PETSC_EXTERN PetscLogEvent
 CHARACTERISTIC_Solve	src/ts/characteristic/interface/characteristic.c	/^PetscLogEvent CHARACTERISTIC_SetUp, CHARACTERISTIC_Solve, CHARACTERISTIC_QueueSetup, CHARACTERIS/;"	v	language:C	typeref:typename:PetscLogEvent
 CHEBYSHEV	src/binding/petsc4py/docs/apiref/petsc4py.PETSc.KSP.Type-class.html	/^        <a name="CHEBYSHEV"><\/a><span class="summary-name">CHEBYSHEV<\/span> = <code title="'ch/;"	a	language:HTML
-CHECK	src/sys/yaml/src/yaml_private.h	/^#define CHECK(/;"	d	language:C++
+CHECK	src/sys/yaml/src/yaml_private.h	/^#define CHECK(string,octet) (CHECK_/;"	d	language:C++
 CHECK_AT	src/sys/yaml/src/yaml_private.h	/^#define CHECK_AT(/;"	d	language:C++
 CHKERRA	include/petsc/finclude/petscsys.h	/^#define CHKERRA(/;"	d	language:C++
 CHKERRABORT	include/petscerror.h	/^#define CHKERRABORT(/;"	d	language:C++
@@ -2030,9 +2143,10 @@
 CXXFLAGS	src/ksp/ksp/impls/hpddm/makefile	/^CXXFLAGS  = ${HPDDM_INCLUDE}$/;"	m	language:Make
 CXXFLAGS	src/ksp/ksp/tutorials/amrex/makefile	/^CXXFLAGS         = ${AMREX_INCLUDE}$/;"	m	language:Make
 CXXFLAGS	src/ksp/pc/impls/hpddm/makefile	/^CXXFLAGS  = ${HPDDM_INCLUDE}$/;"	m	language:Make
+CYTHON	src/binding/petsc4py/setup.py	/^  CYTHON = '0.24'$/;"	v	language:Python
 CYTHON	src/binding/petsc4py/setup.py	/^  CYTHON = '0.29.32'$/;"	v	language:Python
 CYTHON_PEP489_MULTI_PHASE_INIT	src/binding/petsc4py/src/libpetsc4py/custom.h	/^#define CYTHON_PEP489_MULTI_PHASE_INIT /;"	d	language:C++
-CYTHON_VERSION	src/binding/petsc4py/setup.py	/^        from Cython.Compiler.Version import version as CYTHON_VERSION$/;"	x	language:Python	function:chk_cython	file:	nameref:unknown:version
+CYTHON_VERSION	src/binding/petsc4py/setup.py	/^        from Cython.Compiler.Version import version as CYTHON_VERSION$/;"	Y	language:Python	function:chk_cython	file:	nameref:unknown:version
 C_0	src/ts/utils/dmplexlandau/plexland.c	/^  #define C_0(/;"	d	language:C	file:
 C_LINE	src/ksp/pc/impls/tfs/tfs.h	/^#define C_LINE /;"	d	language:C++
 C_P	src/ts/tutorials/ex76.c	/^const PetscInt C_P      = 7;$/;"	v	language:C	typeref:typename:const PetscInt
@@ -2183,7 +2297,7 @@
 Chwirut	src/binding/petsc4py/demo/taosolve/chwirut.py	/^class Chwirut(object):$/;"	c	language:Python
 Ci	src/tao/constrained/impls/almm/almm.h	/^  Vec  Px, LgradX, Ce, Ci, G;               \/* aliased vectors (do not destroy!) *\/$/;"	m	language:C++	struct:__anonb0a5055f0108	typeref:typename:Vec
 CircleInflate	src/ts/utils/dmplexlandau/plexland.c	/^static void CircleInflate(PetscReal r1, PetscReal r2, PetscReal r0, PetscInt num_sections, Petsc/;"	f	language:C	typeref:typename:void	file:
-Citations — PETSc for Python 3.18.4 documentation	src/binding/petsc4py/docs/usrman/citing.html	/^    <title>Citations — PETSc for Python 3.18.4 documentation<\/title>$/;"	j	language:HTML
+Citations — PETSc for Python 3.18.5 documentation	src/binding/petsc4py/docs/usrman/citing.html	/^    <title>Citations — PETSc for Python 3.18.5 documentation<\/title>$/;"	j	language:HTML
 Citations?	src/binding/petsc4py/docs/usrman/citing.html	/^<h1>Citations<a class="headerlink" href="#citations" title="Permalink to this heading">?<\/a><\//;"	h	language:HTML
 Ciwork	src/tao/constrained/impls/almm/almm.h	/^  Vec  Psub, Xwork, Cework, Ciwork, Cizero; \/* work vectors *\/$/;"	m	language:C++	struct:__anonb0a5055f0108	typeref:typename:Vec
 Cizero	src/tao/constrained/impls/almm/almm.h	/^  Vec  Psub, Xwork, Cework, Ciwork, Cizero; \/* work vectors *\/$/;"	m	language:C++	struct:__anonb0a5055f0108	typeref:typename:Vec
@@ -2929,7 +3043,7 @@
 CreateTensorProduct_3D	src/dm/impls/plex/tests/ex4.c	/^PetscErrorCode CreateTensorProduct_3D(MPI_Comm comm, PetscInt testNum, DM *dm)$/;"	f	language:C	typeref:typename:PetscErrorCode
 CreateTestMesh	src/dm/impls/plex/tests/ex10.c	/^PetscErrorCode CreateTestMesh(MPI_Comm comm, DM *dm, AppCtx *options)$/;"	f	language:C	typeref:typename:PetscErrorCode
 CreateVolumeSubmesh	src/dm/impls/plex/tests/ex16.c	/^static PetscErrorCode CreateVolumeSubmesh(DM dm, PetscBool domain, PetscBool lower, PetscReal he/;"	f	language:C	typeref:typename:PetscErrorCode	file:
-Create_CompRowLoc_Matrix_dist	src/mat/impls/aij/mpi/superlu_dist/superlu_dist.c	/^  #define Create_CompRowLoc_Matrix_dist /;"	d	language:C	file:
+Create_CompRowLoc_Matrix_dist	src/mat/impls/aij/mpi/superlu_dist/superlu_dist.c	/^  #define Create_CompRowLoc_Matrix_dist zCreate_CompRowLoc_Matrix_dist$/;"	d	language:C	file:
 CryerFunction	src/ts/tutorials/ex53.c	/^static PetscReal CryerFunction(PetscReal nu_u, PetscReal nu, PetscReal x)$/;"	f	language:C	typeref:typename:PetscReal	file:
 CsrMatrix	src/mat/impls/aij/seq/seqcusparse/cusparsematimpl.h	/^struct CsrMatrix {$/;"	s	language:C++
 CsrMatrix	src/mat/impls/aij/seq/seqhipsparse/hipsparsematimpl.h	/^struct CsrMatrix {$/;"	s	language:C++
@@ -3102,9 +3216,9 @@
 DGMRES	src/binding/petsc4py/docs/apiref/petsc4py.PETSc.KSP.Type-class.html	/^        <a name="DGMRES"><\/a><span class="summary-name">DGMRES<\/span> = <code title="'dgmres'"/;"	a	language:HTML
 DGMRES_DEFAULT_EIG	src/ksp/ksp/impls/gmres/dgmres/dgmresimpl.h	/^#define DGMRES_DEFAULT_EIG /;"	d	language:C++
 DGMRES_DEFAULT_MAXEIG	src/ksp/ksp/impls/gmres/dgmres/dgmresimpl.h	/^#define DGMRES_DEFAULT_MAXEIG /;"	d	language:C++
-DGifCloseFile	src/sys/classes/draw/utils/image.c	/^    #define DGifCloseFile(/;"	d	language:C	file:
+DGifCloseFile	src/sys/classes/draw/utils/image.c	/^    #define DGifCloseFile(f, err)       DGifCloseFile(/;"	d	language:C	file:
 DGifOpenFileHandle	src/sys/classes/draw/utils/image.c	/^    #define DGifOpenFileHandle(/;"	d	language:C	file:
-DGifOpenFileName	src/sys/classes/draw/utils/image.c	/^    #define DGifOpenFileName(/;"	d	language:C	file:
+DGifOpenFileName	src/sys/classes/draw/utils/image.c	/^    #define DGifOpenFileName(n, err)    DGifOpenFileName(/;"	d	language:C	file:
 DI	include/petsc/private/taoimpl.h	/^  Vec        DI;$/;"	m	language:C++	struct:_p_Tao	typeref:typename:Vec
 DIAG	src/binding/petsc4py/docs/apiref/petsc4py.PETSc.PC.SchurFactType-class.html	/^        <a name="DIAG"><\/a><span class="summary-name">DIAG<\/span> = <code title="0">0<\/code>$/;"	a	language:HTML
 DIAG_S	src/ksp/ksp/tutorials/ex54.c	/^#define DIAG_S /;"	d	language:C	file:
@@ -3715,7 +3829,7 @@
 DIVERGED_TR_REDUCTION	src/binding/petsc4py/docs/apiref/petsc4py.PETSc.TAO.Reason-class.html	/^        <a name="DIVERGED_TR_REDUCTION"><\/a><span class="summary-name">DIVERGED_TR_REDUCTION<\//;"	a	language:HTML
 DIVERGED_USER	src/binding/petsc4py/docs/apiref/petsc4py.PETSc.TAO.Reason-class.html	/^        <a name="DIVERGED_USER"><\/a><span class="summary-name">DIVERGED_USER<\/span> = <code ti/;"	a	language:HTML
 DL	src/tao/pde_constrained/impls/lcl/lcl.h	/^  Vec DL; \/* Multipliers step *\/$/;"	m	language:C++	struct:__anon5215f93f0108	typeref:typename:Vec
-DM	include/petsc/finclude/petscdm.h	/^#define DM /;"	d	language:C++
+DM	include/petsc/finclude/petscdm.h	/^#define DM               type(tDM)/;"	d	language:C++
 DM	include/petscdmtypes.h	/^typedef struct _p_DM *DM;$/;"	t	language:C++	typeref:struct:_p_DM *
 DMAdaptFlag	include/petsc/finclude/petscdm.h	/^#define DMAdaptFlag /;"	d	language:C++
 DMAdaptFlag	include/petscdmtypes.h	/^} DMAdaptFlag;$/;"	t	language:C++	typeref:enum:__anonb2ee9b130603
@@ -4701,7 +4815,7 @@
 DMLABEL_CLASSID	src/dm/interface/dm.c	/^PetscClassId DMLABEL_CLASSID;$/;"	v	language:C	typeref:typename:PetscClassId
 DMLABEL_LOOKUP_THRESHOLD	src/dm/label/dmlabel.c	/^  #define DMLABEL_LOOKUP_THRESHOLD /;"	d	language:C	file:
 DMLOCATEPOINT_POINT_NOT_FOUND	include/petscdm.h	/^#define DMLOCATEPOINT_POINT_NOT_FOUND /;"	d	language:C++
-DMLabel	include/petsc/finclude/petscdmlabel.h	/^#define DMLabel /;"	d	language:C++
+DMLabel	include/petsc/finclude/petscdmlabel.h	/^#define DMLabel          type(tDMLabel)/;"	d	language:C++
 DMLabel	include/petscdmlabel.h	/^typedef struct _p_DMLabel *DMLabel;$/;"	t	language:C++	typeref:struct:_p_DMLabel *
 DMLabelAddStrata	src/dm/label/dmlabel.c	/^PetscErrorCode DMLabelAddStrata(DMLabel label, PetscInt numStrata, const PetscInt stratumValues[/;"	f	language:C	typeref:typename:PetscErrorCode
 DMLabelAddStrataIS	src/dm/label/dmlabel.c	/^PetscErrorCode DMLabelAddStrataIS(DMLabel label, IS valueIS)$/;"	f	language:C	typeref:typename:PetscErrorCode
@@ -5847,7 +5961,7 @@
 DMPlexTransferVecTree	src/dm/impls/plex/plextree.c	/^PetscErrorCode DMPlexTransferVecTree(DM dmIn, Vec vecIn, DM dmOut, Vec vecOut, PetscSF sfRefine,/;"	f	language:C	typeref:typename:PetscErrorCode
 DMPlexTransferVecTree_Inject	src/dm/impls/plex/plextree.c	/^static PetscErrorCode DMPlexTransferVecTree_Inject(DM fine, Vec vecFine, DM coarse, Vec vecCoars/;"	f	language:C	typeref:typename:PetscErrorCode	file:
 DMPlexTransferVecTree_Interpolate	src/dm/impls/plex/plextree.c	/^static PetscErrorCode DMPlexTransferVecTree_Interpolate(DM coarse, Vec vecCoarseLocal, DM fine, /;"	f	language:C	typeref:typename:PetscErrorCode	file:
-DMPlexTransform	include/petsc/finclude/petscdm.h	/^#define DMPlexTransform /;"	d	language:C++
+DMPlexTransform	include/petsc/finclude/petscdm.h	/^#define DMPlexTransform type(tDMPlexTransform)/;"	d	language:C++
 DMPlexTransform	include/petscdmplextransformtypes.h	/^typedef struct _p_DMPlexTransform *DMPlexTransform;$/;"	t	language:C++	typeref:struct:_p_DMPlexTransform *
 DMPlexTransformAdaptLabel	src/dm/impls/plex/transform/interface/plextransform.c	/^PetscErrorCode DMPlexTransformAdaptLabel(DM dm, PETSC_UNUSED Vec metric, DMLabel adaptLabel, PET/;"	f	language:C	typeref:typename:PetscErrorCode
 DMPlexTransformApply	src/dm/impls/plex/transform/interface/plextransform.c	/^PetscErrorCode DMPlexTransformApply(DMPlexTransform tr, DM dm, DM *tdm)$/;"	f	language:C	typeref:typename:PetscErrorCode
@@ -7041,20 +7155,20 @@
 DOFS	src/binding/petsc4py/test/test_dmstag.py	/^    DOFS = (2,1)$/;"	v	language:Python	class:TestDMStag_1D_W0_N21
 DOFS	src/binding/petsc4py/test/test_dmstag.py	/^    DOFS = (2,1)$/;"	v	language:Python	class:TestDMStag_1D_W2_N21
 DOWN	src/binding/petsc4py/docs/apiref/petsc4py.PETSc.DMStag.StencilLocation-class.html	/^        <a name="DOWN"><\/a><span class="summary-name">DOWN<\/span> = <code title="11">11<\/code/;"	a	language:HTML
-DOWN	src/dm/impls/stag/tests/ex18.c	/^#define DOWN /;"	d	language:C	file:
-DOWN	src/dm/impls/stag/tests/ex30.c	/^#define DOWN /;"	d	language:C	file:
-DOWN	src/dm/impls/stag/tutorials/ex2.c	/^#define DOWN /;"	d	language:C	file:
-DOWN	src/dm/impls/stag/tutorials/ex3.c	/^#define DOWN /;"	d	language:C	file:
+DOWN	src/dm/impls/stag/tests/ex18.c	/^#define DOWN       DMSTAG_DOWN$/;"	d	language:C	file:
+DOWN	src/dm/impls/stag/tests/ex30.c	/^#define DOWN             DMSTAG_DOWN$/;"	d	language:C	file:
+DOWN	src/dm/impls/stag/tutorials/ex2.c	/^#define DOWN       DMSTAG_DOWN$/;"	d	language:C	file:
+DOWN	src/dm/impls/stag/tutorials/ex3.c	/^#define DOWN             DMSTAG_DOWN$/;"	d	language:C	file:
 DOWN_LEFT	src/binding/petsc4py/docs/apiref/petsc4py.PETSc.DMStag.StencilLocation-class.html	/^        <a name="DOWN_LEFT"><\/a><span class="summary-name">DOWN_LEFT<\/span> = <code title="10"/;"	a	language:HTML
-DOWN_LEFT	src/dm/impls/stag/tests/ex18.c	/^#define DOWN_LEFT /;"	d	language:C	file:
-DOWN_LEFT	src/dm/impls/stag/tests/ex30.c	/^#define DOWN_LEFT /;"	d	language:C	file:
-DOWN_LEFT	src/dm/impls/stag/tutorials/ex2.c	/^#define DOWN_LEFT /;"	d	language:C	file:
-DOWN_LEFT	src/dm/impls/stag/tutorials/ex3.c	/^#define DOWN_LEFT /;"	d	language:C	file:
+DOWN_LEFT	src/dm/impls/stag/tests/ex18.c	/^#define DOWN_LEFT  DMSTAG_DOWN_LEFT$/;"	d	language:C	file:
+DOWN_LEFT	src/dm/impls/stag/tests/ex30.c	/^#define DOWN_LEFT        DMSTAG_DOWN_LEFT$/;"	d	language:C	file:
+DOWN_LEFT	src/dm/impls/stag/tutorials/ex2.c	/^#define DOWN_LEFT  DMSTAG_DOWN_LEFT$/;"	d	language:C	file:
+DOWN_LEFT	src/dm/impls/stag/tutorials/ex3.c	/^#define DOWN_LEFT        DMSTAG_DOWN_LEFT$/;"	d	language:C	file:
 DOWN_RIGHT	src/binding/petsc4py/docs/apiref/petsc4py.PETSc.DMStag.StencilLocation-class.html	/^        <a name="DOWN_RIGHT"><\/a><span class="summary-name">DOWN_RIGHT<\/span> = <code title="1/;"	a	language:HTML
-DOWN_RIGHT	src/dm/impls/stag/tests/ex18.c	/^#define DOWN_RIGHT /;"	d	language:C	file:
-DOWN_RIGHT	src/dm/impls/stag/tests/ex30.c	/^#define DOWN_RIGHT /;"	d	language:C	file:
-DOWN_RIGHT	src/dm/impls/stag/tutorials/ex2.c	/^#define DOWN_RIGHT /;"	d	language:C	file:
-DOWN_RIGHT	src/dm/impls/stag/tutorials/ex3.c	/^#define DOWN_RIGHT /;"	d	language:C	file:
+DOWN_RIGHT	src/dm/impls/stag/tests/ex18.c	/^#define DOWN_RIGHT DMSTAG_DOWN_RIGHT$/;"	d	language:C	file:
+DOWN_RIGHT	src/dm/impls/stag/tests/ex30.c	/^#define DOWN_RIGHT       DMSTAG_DOWN_RIGHT$/;"	d	language:C	file:
+DOWN_RIGHT	src/dm/impls/stag/tutorials/ex2.c	/^#define DOWN_RIGHT DMSTAG_DOWN_RIGHT$/;"	d	language:C	file:
+DOWN_RIGHT	src/dm/impls/stag/tutorials/ex3.c	/^#define DOWN_RIGHT       DMSTAG_DOWN_RIGHT$/;"	d	language:C	file:
 DO_NOT_COPY_VALUES	src/binding/petsc4py/docs/apiref/petsc4py.PETSc.Mat.DuplicateOption-class.html	/^        <a name="DO_NOT_COPY_VALUES"><\/a><span class="summary-name">DO_NOT_COPY_VALUES<\/span> /;"	a	language:HTML
 DPhi	src/snes/impls/vi/ss/viss.c	/^static inline PetscScalar DPhi(PetscScalar a, PetscScalar b)$/;"	f	language:C	typeref:typename:PetscScalar	file:
 DRAW	src/binding/petsc4py/docs/apiref/petsc4py.PETSc.Viewer-class.html	/^          <td><span class="summary-sig"><a name="DRAW"><\/a><span class="summary-sig-name">DRAW</;"	a	language:HTML
@@ -7113,8 +7227,8 @@
 Data	src/ts/tests/ex4.c	/^} Data;$/;"	t	language:C	typeref:struct:__anon591e59b60108	file:
 DataSection	include/petsc/private/dmnetworkimpl.h	/^  PetscSection         DataSection;      \/* Section for managing parameter distribution *\/$/;"	m	language:C++	struct:__anonb0873e730708	typeref:typename:PetscSection
 Db	src/snes/impls/vi/ss/vissimpl.h	/^  Vec         Db;      \/* B sub-differential work vector (row scaling) *\/$/;"	m	language:C++	struct:__anond9d3bc080108	typeref:typename:Vec
-DeAllocGlu_3d	src/mat/impls/aij/mpi/superlu_dist/superlu_dist.c	/^    #define DeAllocGlu_3d /;"	d	language:C	file:
-DeAllocLlu_3d	src/mat/impls/aij/mpi/superlu_dist/superlu_dist.c	/^    #define DeAllocLlu_3d /;"	d	language:C	file:
+DeAllocGlu_3d	src/mat/impls/aij/mpi/superlu_dist/superlu_dist.c	/^    #define DeAllocGlu_3d              zDeAllocGlu_3d$/;"	d	language:C	file:
+DeAllocLlu_3d	src/mat/impls/aij/mpi/superlu_dist/superlu_dist.c	/^    #define DeAllocLlu_3d              zDeAllocLlu_3d$/;"	d	language:C	file:
 DeRegisterMatScaleUserImpl	src/mat/tutorials/ex8.c	/^PetscErrorCode DeRegisterMatScaleUserImpl(Mat mat)$/;"	f	language:C	typeref:typename:PetscErrorCode
 DebugPrintf	src/sys/objects/device/tests/ex7.c	/^#define DebugPrintf(/;"	d	language:C	file:
 DebugTerminal	src/sys/error/adebug.c	/^static char      DebugTerminal[PETSC_MAX_PATH_LEN];$/;"	v	language:C	typeref:typename:char[]	file:
@@ -7166,9 +7280,9 @@
 DestroyProblem	src/tao/constrained/tutorials/maros.c	/^PetscErrorCode DestroyProblem(AppCtx *user)$/;"	f	language:C	typeref:typename:PetscErrorCode
 DestroyQuasiInterpolator	src/snes/tutorials/ex36.c	/^static PetscErrorCode DestroyQuasiInterpolator(Mat P)$/;"	f	language:C	typeref:typename:PetscErrorCode	file:
 DestroySFs	src/vec/is/sf/tests/ex18.c	/^PetscErrorCode DestroySFs(AppCtx *ctx, PetscSF *sfs[])$/;"	f	language:C	typeref:typename:PetscErrorCode
-Destroy_A3d_gathered_on_2d	src/mat/impls/aij/mpi/superlu_dist/superlu_dist.c	/^    #define Destroy_A3d_gathered_on_2d /;"	d	language:C	file:
+Destroy_A3d_gathered_on_2d	src/mat/impls/aij/mpi/superlu_dist/superlu_dist.c	/^    #define Destroy_A3d_gathered_on_2d zDestroy_A3d_gathered_on_2d$/;"	d	language:C	file:
 Destroy_AppContext	src/ts/tutorials/ex35.cxx	/^PetscErrorCode Destroy_AppContext(UserCtx *user)$/;"	f	language:C++	typeref:typename:PetscErrorCode
-Destroy_LU	src/mat/impls/aij/mpi/superlu_dist/superlu_dist.c	/^  #define Destroy_LU /;"	d	language:C	file:
+Destroy_LU	src/mat/impls/aij/mpi/superlu_dist/superlu_dist.c	/^  #define Destroy_LU                    zDestroy_LU$/;"	d	language:C	file:
 Det3D	src/snes/tutorials/ex77.c	/^static inline void Det3D(PetscReal *detJ, const PetscScalar J[])$/;"	f	language:C	typeref:typename:void	file:
 Device	src/sys/objects/device/impls/cupm/cupmdevice.cxx	/^template class Device<DeviceType::CUDA>;$/;"	v	language:C++	namespace:Petsc::device::cupm	typeref:meta:class
 Device	src/sys/objects/device/impls/cupm/cupmdevice.cxx	/^template class Device<DeviceType::HIP>;$/;"	v	language:C++	namespace:Petsc::device::cupm	typeref:meta:class
@@ -7288,9 +7402,9 @@
 EDIRS	src/snes/utils/makefile	/^EDIRS    =$/;"	m	language:Make
 EDIRS	src/tao/util/makefile	/^EDIRS    =$/;"	m	language:Make
 EDIRS	src/ts/utils/makefile	/^EDIRS    =$/;"	m	language:Make
-EGifCloseFile	src/sys/classes/draw/utils/image.c	/^    #define EGifCloseFile(/;"	d	language:C	file:
+EGifCloseFile	src/sys/classes/draw/utils/image.c	/^    #define EGifCloseFile(f, err)       EGifCloseFile(/;"	d	language:C	file:
 EGifOpenFileHandle	src/sys/classes/draw/utils/image.c	/^    #define EGifOpenFileHandle(/;"	d	language:C	file:
-EGifOpenFileName	src/sys/classes/draw/utils/image.c	/^    #define EGifOpenFileName(/;"	d	language:C	file:
+EGifOpenFileName	src/sys/classes/draw/utils/image.c	/^    #define EGifOpenFileName(n, b, err) EGifOpenFileName(/;"	d	language:C	file:
 EH	src/sys/error/err.c	/^typedef struct _EH *EH;$/;"	t	language:C	typeref:struct:_EH *	file:
 EIG_OFFSET	src/ksp/ksp/impls/gmres/dgmres/dgmresimpl.h	/^#define EIG_OFFSET /;"	d	language:C++
 EIMEX	src/binding/petsc4py/docs/apiref/petsc4py.PETSc.TS.Type-class.html	/^        <a name="EIMEX"><\/a><span class="summary-name">EIMEX<\/span> = <code title="'eimex'"><c/;"	a	language:HTML
@@ -7299,12 +7413,12 @@
 EInduction	src/ts/utils/dmplexlandau/tutorials/ex2.c	/^static PetscErrorCode EInduction(Vec X, Vec X_t, PetscInt step, PetscReal time, LandauCtx *ctx, /;"	f	language:C	typeref:typename:PetscErrorCode	file:
 ELASTICITY	src/dm/dt/fe/impls/opencl/feopencl.c	/^  ELASTICITY = 1$/;"	e	language:C	enum:__anonfa7278be0103	file:
 ELEMENT	src/binding/petsc4py/docs/apiref/petsc4py.PETSc.DMStag.StencilLocation-class.html	/^        <a name="ELEMENT"><\/a><span class="summary-name">ELEMENT<\/span> = <code title="14">14</;"	a	language:HTML
-ELEMENT	src/dm/impls/stag/tests/ex18.c	/^#define ELEMENT /;"	d	language:C	file:
-ELEMENT	src/dm/impls/stag/tests/ex30.c	/^#define ELEMENT /;"	d	language:C	file:
-ELEMENT	src/dm/impls/stag/tests/ex5.c	/^#define ELEMENT /;"	d	language:C	file:
-ELEMENT	src/dm/impls/stag/tutorials/ex1.c	/^#define ELEMENT /;"	d	language:C	file:
-ELEMENT	src/dm/impls/stag/tutorials/ex2.c	/^#define ELEMENT /;"	d	language:C	file:
-ELEMENT	src/dm/impls/stag/tutorials/ex3.c	/^#define ELEMENT /;"	d	language:C	file:
+ELEMENT	src/dm/impls/stag/tests/ex18.c	/^#define ELEMENT    DMSTAG_ELEMENT$/;"	d	language:C	file:
+ELEMENT	src/dm/impls/stag/tests/ex30.c	/^#define ELEMENT          DMSTAG_ELEMENT$/;"	d	language:C	file:
+ELEMENT	src/dm/impls/stag/tests/ex5.c	/^#define ELEMENT DMSTAG_ELEMENT$/;"	d	language:C	file:
+ELEMENT	src/dm/impls/stag/tutorials/ex1.c	/^#define ELEMENT DMSTAG_ELEMENT$/;"	d	language:C	file:
+ELEMENT	src/dm/impls/stag/tutorials/ex2.c	/^#define ELEMENT    DMSTAG_ELEMENT$/;"	d	language:C	file:
+ELEMENT	src/dm/impls/stag/tutorials/ex3.c	/^#define ELEMENT          DMSTAG_ELEMENT$/;"	d	language:C	file:
 ELEMENTAL	src/binding/petsc4py/docs/apiref/petsc4py.PETSc.Mat.SolverType-class.html	/^        <a name="ELEMENTAL"><\/a><span class="summary-name">ELEMENTAL<\/span> = <code title="'el/;"	a	language:HTML
 ELEMENTAL	src/binding/petsc4py/docs/apiref/petsc4py.PETSc.Mat.Type-class.html	/^        <a name="ELEMENTAL"><\/a><span class="summary-name">ELEMENTAL<\/span> = <code title="'el/;"	a	language:HTML
 EMMSFC	src/ts/tests/ex5.c	/^#define EMMSFC /;"	d	language:C	file:
@@ -7467,7 +7581,7 @@
 ExchangeArrayByRank_Private	src/dm/impls/plex/plexcheckinterface.c	/^static PetscErrorCode ExchangeArrayByRank_Private(PetscObject obj, MPI_Datatype dt, PetscInt nsr/;"	f	language:C	typeref:typename:PetscErrorCode	file:
 ExchangeVecByRank_Private	src/dm/impls/plex/plexcheckinterface.c	/^static PetscErrorCode ExchangeVecByRank_Private(PetscObject obj, PetscInt nsranks, const PetscMP/;"	f	language:C	typeref:typename:PetscErrorCode	file:
 ExodusGetCellType_Internal	src/dm/impls/plex/plexexodusii.c	/^static PetscErrorCode ExodusGetCellType_Internal(const char *elem_type, DMPolytopeType *ct)$/;"	f	language:C	typeref:typename:PetscErrorCode	file:
-Exp	src/sys/classes/draw/tests/ex6.c	/^#define Exp /;"	d	language:C	file:
+Exp	src/sys/classes/draw/tests/ex6.c	/^#define Exp PetscExpR/;"	d	language:C	file:
 ExpandJmap_Internal	src/mat/impls/aij/mpi/mpiaij.c	/^static PetscErrorCode ExpandJmap_Internal(PetscCount nnz1, PetscCount nnz, const PetscCount imap/;"	f	language:C	typeref:typename:PetscErrorCode	file:
 ExpectedNumDofs_Interior	src/dm/dt/dualspace/impls/lagrange/tests/ex1.c	/^static PetscErrorCode ExpectedNumDofs_Interior(PetscInt dim, PetscInt order, PetscInt formDegree/;"	f	language:C	typeref:typename:PetscErrorCode	file:
 ExpectedNumDofs_Total	src/dm/dt/dualspace/impls/lagrange/tests/ex1.c	/^static PetscErrorCode ExpectedNumDofs_Total(PetscInt dim, PetscInt order, PetscInt formDegree, P/;"	f	language:C	typeref:typename:PetscErrorCode	file:
@@ -7709,32 +7823,32 @@
 FREQ	src/ts/tutorials/power_grid/stability_9bus/ex9busdmnetwork.c	/^#define FREQ /;"	d	language:C	file:
 FROBENIUS	src/binding/petsc4py/docs/apiref/petsc4py.PETSc.NormType-class.html	/^        <a name="FROBENIUS"><\/a><span class="summary-name">FROBENIUS<\/span> = <code title="2">/;"	a	language:HTML
 FRONT	src/binding/petsc4py/docs/apiref/petsc4py.PETSc.DMStag.StencilLocation-class.html	/^        <a name="FRONT"><\/a><span class="summary-name">FRONT<\/span> = <code title="23">23<\/co/;"	a	language:HTML
-FRONT	src/dm/impls/stag/tests/ex30.c	/^#define FRONT /;"	d	language:C	file:
-FRONT	src/dm/impls/stag/tutorials/ex3.c	/^#define FRONT /;"	d	language:C	file:
+FRONT	src/dm/impls/stag/tests/ex30.c	/^#define FRONT            DMSTAG_FRONT$/;"	d	language:C	file:
+FRONT	src/dm/impls/stag/tutorials/ex3.c	/^#define FRONT            DMSTAG_FRONT$/;"	d	language:C	file:
 FRONT_DOWN	src/binding/petsc4py/docs/apiref/petsc4py.PETSc.DMStag.StencilLocation-class.html	/^        <a name="FRONT_DOWN"><\/a><span class="summary-name">FRONT_DOWN<\/span> = <code title="2/;"	a	language:HTML
-FRONT_DOWN	src/dm/impls/stag/tests/ex30.c	/^#define FRONT_DOWN /;"	d	language:C	file:
-FRONT_DOWN	src/dm/impls/stag/tutorials/ex3.c	/^#define FRONT_DOWN /;"	d	language:C	file:
+FRONT_DOWN	src/dm/impls/stag/tests/ex30.c	/^#define FRONT_DOWN       DMSTAG_FRONT_DOWN$/;"	d	language:C	file:
+FRONT_DOWN	src/dm/impls/stag/tutorials/ex3.c	/^#define FRONT_DOWN       DMSTAG_FRONT_DOWN$/;"	d	language:C	file:
 FRONT_DOWN_LEFT	src/binding/petsc4py/docs/apiref/petsc4py.PETSc.DMStag.StencilLocation-class.html	/^        <a name="FRONT_DOWN_LEFT"><\/a><span class="summary-name">FRONT_DOWN_LEFT<\/span> = <cod/;"	a	language:HTML
-FRONT_DOWN_LEFT	src/dm/impls/stag/tests/ex30.c	/^#define FRONT_DOWN_LEFT /;"	d	language:C	file:
-FRONT_DOWN_LEFT	src/dm/impls/stag/tutorials/ex3.c	/^#define FRONT_DOWN_LEFT /;"	d	language:C	file:
+FRONT_DOWN_LEFT	src/dm/impls/stag/tests/ex30.c	/^#define FRONT_DOWN_LEFT  DMSTAG_FRONT_DOWN_LEFT$/;"	d	language:C	file:
+FRONT_DOWN_LEFT	src/dm/impls/stag/tutorials/ex3.c	/^#define FRONT_DOWN_LEFT  DMSTAG_FRONT_DOWN_LEFT$/;"	d	language:C	file:
 FRONT_DOWN_RIGHT	src/binding/petsc4py/docs/apiref/petsc4py.PETSc.DMStag.StencilLocation-class.html	/^        <a name="FRONT_DOWN_RIGHT"><\/a><span class="summary-name">FRONT_DOWN_RIGHT<\/span> = <c/;"	a	language:HTML
-FRONT_DOWN_RIGHT	src/dm/impls/stag/tests/ex30.c	/^#define FRONT_DOWN_RIGHT /;"	d	language:C	file:
-FRONT_DOWN_RIGHT	src/dm/impls/stag/tutorials/ex3.c	/^#define FRONT_DOWN_RIGHT /;"	d	language:C	file:
+FRONT_DOWN_RIGHT	src/dm/impls/stag/tests/ex30.c	/^#define FRONT_DOWN_RIGHT DMSTAG_FRONT_DOWN_RIGHT$/;"	d	language:C	file:
+FRONT_DOWN_RIGHT	src/dm/impls/stag/tutorials/ex3.c	/^#define FRONT_DOWN_RIGHT DMSTAG_FRONT_DOWN_RIGHT$/;"	d	language:C	file:
 FRONT_LEFT	src/binding/petsc4py/docs/apiref/petsc4py.PETSc.DMStag.StencilLocation-class.html	/^        <a name="FRONT_LEFT"><\/a><span class="summary-name">FRONT_LEFT<\/span> = <code title="2/;"	a	language:HTML
-FRONT_LEFT	src/dm/impls/stag/tests/ex30.c	/^#define FRONT_LEFT /;"	d	language:C	file:
-FRONT_LEFT	src/dm/impls/stag/tutorials/ex3.c	/^#define FRONT_LEFT /;"	d	language:C	file:
+FRONT_LEFT	src/dm/impls/stag/tests/ex30.c	/^#define FRONT_LEFT       DMSTAG_FRONT_LEFT$/;"	d	language:C	file:
+FRONT_LEFT	src/dm/impls/stag/tutorials/ex3.c	/^#define FRONT_LEFT       DMSTAG_FRONT_LEFT$/;"	d	language:C	file:
 FRONT_RIGHT	src/binding/petsc4py/docs/apiref/petsc4py.PETSc.DMStag.StencilLocation-class.html	/^        <a name="FRONT_RIGHT"><\/a><span class="summary-name">FRONT_RIGHT<\/span> = <code title=/;"	a	language:HTML
-FRONT_RIGHT	src/dm/impls/stag/tests/ex30.c	/^#define FRONT_RIGHT /;"	d	language:C	file:
-FRONT_RIGHT	src/dm/impls/stag/tutorials/ex3.c	/^#define FRONT_RIGHT /;"	d	language:C	file:
+FRONT_RIGHT	src/dm/impls/stag/tests/ex30.c	/^#define FRONT_RIGHT      DMSTAG_FRONT_RIGHT$/;"	d	language:C	file:
+FRONT_RIGHT	src/dm/impls/stag/tutorials/ex3.c	/^#define FRONT_RIGHT      DMSTAG_FRONT_RIGHT$/;"	d	language:C	file:
 FRONT_UP	src/binding/petsc4py/docs/apiref/petsc4py.PETSc.DMStag.StencilLocation-class.html	/^        <a name="FRONT_UP"><\/a><span class="summary-name">FRONT_UP<\/span> = <code title="26">2/;"	a	language:HTML
-FRONT_UP	src/dm/impls/stag/tests/ex30.c	/^#define FRONT_UP /;"	d	language:C	file:
-FRONT_UP	src/dm/impls/stag/tutorials/ex3.c	/^#define FRONT_UP /;"	d	language:C	file:
+FRONT_UP	src/dm/impls/stag/tests/ex30.c	/^#define FRONT_UP         DMSTAG_FRONT_UP$/;"	d	language:C	file:
+FRONT_UP	src/dm/impls/stag/tutorials/ex3.c	/^#define FRONT_UP         DMSTAG_FRONT_UP$/;"	d	language:C	file:
 FRONT_UP_LEFT	src/binding/petsc4py/docs/apiref/petsc4py.PETSc.DMStag.StencilLocation-class.html	/^        <a name="FRONT_UP_LEFT"><\/a><span class="summary-name">FRONT_UP_LEFT<\/span> = <code ti/;"	a	language:HTML
-FRONT_UP_LEFT	src/dm/impls/stag/tests/ex30.c	/^#define FRONT_UP_LEFT /;"	d	language:C	file:
-FRONT_UP_LEFT	src/dm/impls/stag/tutorials/ex3.c	/^#define FRONT_UP_LEFT /;"	d	language:C	file:
+FRONT_UP_LEFT	src/dm/impls/stag/tests/ex30.c	/^#define FRONT_UP_LEFT    DMSTAG_FRONT_UP_LEFT$/;"	d	language:C	file:
+FRONT_UP_LEFT	src/dm/impls/stag/tutorials/ex3.c	/^#define FRONT_UP_LEFT    DMSTAG_FRONT_UP_LEFT$/;"	d	language:C	file:
 FRONT_UP_RIGHT	src/binding/petsc4py/docs/apiref/petsc4py.PETSc.DMStag.StencilLocation-class.html	/^        <a name="FRONT_UP_RIGHT"><\/a><span class="summary-name">FRONT_UP_RIGHT<\/span> = <code /;"	a	language:HTML
-FRONT_UP_RIGHT	src/dm/impls/stag/tests/ex30.c	/^#define FRONT_UP_RIGHT /;"	d	language:C	file:
-FRONT_UP_RIGHT	src/dm/impls/stag/tutorials/ex3.c	/^#define FRONT_UP_RIGHT /;"	d	language:C	file:
+FRONT_UP_RIGHT	src/dm/impls/stag/tests/ex30.c	/^#define FRONT_UP_RIGHT   DMSTAG_FRONT_UP_RIGHT$/;"	d	language:C	file:
+FRONT_UP_RIGHT	src/dm/impls/stag/tutorials/ex3.c	/^#define FRONT_UP_RIGHT   DMSTAG_FRONT_UP_RIGHT$/;"	d	language:C	file:
 FROUDE	src/ts/tutorials/ex76.c	/^const PetscInt FROUDE   = 1;$/;"	v	language:C	typeref:typename:const PetscInt
 FRecv	src/sys/tests/ex8.c	/^static PetscErrorCode FRecv(MPI_Comm comm, const PetscMPIInt tag[], PetscMPIInt rank, void *from/;"	f	language:C	typeref:typename:PetscErrorCode	file:
 FSAL	src/ts/impls/explicit/rk/rk.h	/^  PetscBool  FSAL;      \/* flag to indicate if tableau is FSAL                        *\/$/;"	m	language:C++	struct:_RKTableau	typeref:typename:PetscBool
@@ -8362,7 +8476,7 @@
 G	src/binding/petsc4py/docs/apiref/identifier-index-G.html	/^<tr valign="top"><td valign="top" width="1%"><h2 class="epydoc"><a name="G">G<\/a><\/h2><\/td>$/;"	a	language:HTML
 G	src/binding/petsc4py/docs/apiref/identifier-index-G.html	/^<tr valign="top"><td valign="top" width="1%"><h2 class="epydoc"><a name="G">G<\/a><\/h2><\/td>$/;"	i	language:HTML
 G	src/ksp/ksp/impls/cg/pipelcg/pipelcg.c	/^  PetscScalar *G; \/* such that Z = VG (band matrix)*\/$/;"	m	language:C	struct:KSP_CG_PIPE_L_s	typeref:typename:PetscScalar *	file:
-G	src/ksp/ksp/impls/cg/pipelcg/pipelcg.c	/^#define G(/;"	d	language:C	file:
+G	src/ksp/ksp/impls/cg/pipelcg/pipelcg.c	/^#define G(i, j)         (plcg->G[/;"	d	language:C	file:
 G	src/ksp/pc/impls/hypre/hypre.c	/^  Mat G;             \/* MatHYPRE *\/$/;"	m	language:C	struct:__anona88fedbf0108	typeref:typename:Mat	file:
 G	src/snes/tutorials/ex48.c	/^#define G /;"	d	language:C	file:
 G	src/tao/constrained/impls/almm/almm.h	/^  Vec  Px, LgradX, Ce, Ci, G;               \/* aliased vectors (do not destroy!) *\/$/;"	m	language:C++	struct:__anonb0a5055f0108	typeref:typename:Vec
@@ -8566,7 +8680,7 @@
 GROPPCG	src/binding/petsc4py/docs/apiref/petsc4py.PETSc.KSP.Type-class.html	/^        <a name="GROPPCG"><\/a><span class="summary-name">GROPPCG<\/span> = <code title="'groppc/;"	a	language:HTML
 GRS	src/ksp/ksp/impls/gmres/dgmres/dgmresimpl.h	/^#define GRS(/;"	d	language:C++
 GRS	src/ksp/ksp/impls/gmres/gmresimpl.h	/^  #define GRS(/;"	d	language:C++
-GRS	src/ksp/ksp/impls/gmres/lgmres/lgmresimpl.h	/^#define GRS(/;"	d	language:C++
+GRS	src/ksp/ksp/impls/gmres/lgmres/lgmresimpl.h	/^#define GRS(a) (lgmres->rs_origin + (a)) \/* GRS /;"	d	language:C++
 GS	src/ksp/pc/impls/amgx/amgx.cxx	/^  GS,$/;"	e	language:C++	enum:AmgXSmoother	file:
 GS_VEC_SZ	src/ksp/pc/impls/tfs/gs.c	/^#define GS_VEC_SZ /;"	d	language:C	file:
 GTOL	src/vec/is/utils/isltog.c	/^#define GTOL(/;"	d	language:C	file:
@@ -8842,7 +8956,7 @@
 HALF_SIZE	src/binding/petsc4py/docs/apiref/petsc4py.PETSc.Viewer.Size-class.html	/^        <a name="HALF_SIZE"><\/a><span class="summary-name">HALF_SIZE<\/span> = <code title="-4"/;"	a	language:HTML
 HASATTRIBUTE_UNUSED	src/sys/yaml/src/yaml_private.h	/^#  define HASATTRIBUTE_UNUSED$/;"	d	language:C++
 HASH	src/binding/petsc4py/docs/apiref/petsc4py.PETSc.LGMap.Type-class.html	/^        <a name="HASH"><\/a><span class="summary-name">HASH<\/span> = <code title="'hash'"><code/;"	a	language:HTML
-HASH	src/mat/impls/baij/mpi/mpibaij.c	/^#define HASH(/;"	d	language:C	file:
+HASH	src/mat/impls/baij/mpi/mpibaij.c	/^#define HASH(size, key, tmp) (tmp = (key)*HASH_/;"	d	language:C	file:
 HASH_KEY	src/mat/impls/baij/mpi/mpibaij.c	/^#define HASH_KEY /;"	d	language:C	file:
 HAS_BLAS	src/ksp/pc/impls/parms/parms.c	/^#define HAS_BLAS$/;"	d	language:C	file:
 HAVE_CONFIG_H	src/ksp/pc/impls/ml/ml.c	/^  #define HAVE_CONFIG_H$/;"	d	language:C	file:
@@ -9221,7 +9335,7 @@
 IPMUpdateK	src/tao/constrained/impls/ipm/ipm.c	/^PetscErrorCode IPMUpdateK(Tao tao)$/;"	f	language:C	typeref:typename:PetscErrorCode
 IRKGAUSS	src/ksp/ksp/tutorials/ex74.c	/^#define IRKGAUSS /;"	d	language:C	file:
 IRKTableau	src/ts/impls/implicit/irk/irk.c	/^typedef struct _IRKTableau *IRKTableau;$/;"	t	language:C	typeref:struct:_IRKTableau *	file:
-IS	include/petsc/finclude/petscis.h	/^#define IS /;"	d	language:C++
+IS	include/petsc/finclude/petscis.h	/^#define IS type(tIS)/;"	d	language:C++
 IS	include/petscistypes.h	/^typedef struct _p_IS *IS;$/;"	t	language:C++	typeref:struct:_p_IS *
 IS	src/binding/petsc4py/docs/apiref/petsc4py.PETSc.Mat.Type-class.html	/^        <a name="IS"><\/a><span class="summary-name">IS<\/span> = <code title="'is'"><code class/;"	a	language:HTML
 ISAdjustForBlockSize	src/mat/impls/aij/mpi/mpiov.c	/^static PetscErrorCode ISAdjustForBlockSize(PetscInt bs, PetscInt imax, IS is[])$/;"	f	language:C	typeref:typename:PetscErrorCode	file:
@@ -9242,7 +9356,7 @@
 ISBlockSetIndices_Block	src/vec/is/is/impls/block/block.c	/^static PetscErrorCode ISBlockSetIndices_Block(IS is, PetscInt bs, PetscInt n, const PetscInt idx/;"	f	language:C	typeref:typename:PetscErrorCode	file:
 ISBuildTwoSided	src/vec/is/is/utils/iscoloring.c	/^PetscErrorCode ISBuildTwoSided(IS ito, IS toindx, IS *rows)$/;"	f	language:C	typeref:typename:PetscErrorCode
 ISClearInfoCache	src/vec/is/is/interface/index.c	/^PetscErrorCode ISClearInfoCache(IS is, PetscBool clear_permanent_local)$/;"	f	language:C	typeref:typename:PetscErrorCode
-ISColoring	include/petsc/finclude/petscis.h	/^#define ISColoring /;"	d	language:C++
+ISColoring	include/petsc/finclude/petscis.h	/^#define ISColoring type(tISColoring)/;"	d	language:C++
 ISColoring	include/petscistypes.h	/^typedef struct _n_ISColoring *ISColoring;$/;"	t	language:C++	typeref:struct:_n_ISColoring *
 ISColoringCreate	src/vec/is/is/utils/iscoloring.c	/^PetscErrorCode ISColoringCreate(MPI_Comm comm, PetscInt ncolors, PetscInt n, const ISColoringVal/;"	f	language:C	typeref:typename:PetscErrorCode
 ISColoringDestroy	src/vec/is/is/utils/iscoloring.c	/^PetscErrorCode ISColoringDestroy(ISColoring *iscoloring)$/;"	f	language:C	typeref:typename:PetscErrorCode
@@ -9497,19 +9611,19 @@
 ISView_General	src/vec/is/is/impls/general/general.c	/^static PetscErrorCode ISView_General(IS is, PetscViewer viewer)$/;"	f	language:C	typeref:typename:PetscErrorCode	file:
 ISView_General_HDF5	src/vec/is/is/impls/general/general.c	/^static PetscErrorCode ISView_General_HDF5(IS is, PetscViewer viewer)$/;"	f	language:C	typeref:typename:PetscErrorCode	file:
 ISView_Stride	src/vec/is/is/impls/stride/stride.c	/^PetscErrorCode ISView_Stride(IS is, PetscViewer viewer)$/;"	f	language:C	typeref:typename:PetscErrorCode
-IS_ALPHA	src/sys/yaml/src/yaml_private.h	/^#define IS_ALPHA(/;"	d	language:C++
+IS_ALPHA	src/sys/yaml/src/yaml_private.h	/^#define IS_ALPHA(string)    IS_ALPHA_/;"	d	language:C++
 IS_ALPHA_AT	src/sys/yaml/src/yaml_private.h	/^#define IS_ALPHA_AT(/;"	d	language:C++
-IS_ASCII	src/sys/yaml/src/yaml_private.h	/^#define IS_ASCII(/;"	d	language:C++
+IS_ASCII	src/sys/yaml/src/yaml_private.h	/^#define IS_ASCII(string)    IS_ASCII_/;"	d	language:C++
 IS_ASCII_AT	src/sys/yaml/src/yaml_private.h	/^#define IS_ASCII_AT(/;"	d	language:C++
-IS_BLANK	src/sys/yaml/src/yaml_private.h	/^#define IS_BLANK(/;"	d	language:C++
-IS_BLANKZ	src/sys/yaml/src/yaml_private.h	/^#define IS_BLANKZ(/;"	d	language:C++
+IS_BLANK	src/sys/yaml/src/yaml_private.h	/^#define IS_BLANK(string)    IS_BLANK_/;"	d	language:C++
+IS_BLANKZ	src/sys/yaml/src/yaml_private.h	/^#define IS_BLANKZ(string)   IS_BLANKZ_/;"	d	language:C++
 IS_BLANKZ_AT	src/sys/yaml/src/yaml_private.h	/^#define IS_BLANKZ_AT(/;"	d	language:C++
 IS_BLANK_AT	src/sys/yaml/src/yaml_private.h	/^#define IS_BLANK_AT(/;"	d	language:C++
 IS_BLOCK	src/vec/is/sf/interface/vscat.c	/^  IS_BLOCK,$/;"	e	language:C	enum:__anon1a0575ce0103	file:
-IS_BOM	src/sys/yaml/src/yaml_private.h	/^#define IS_BOM(/;"	d	language:C++
+IS_BOM	src/sys/yaml/src/yaml_private.h	/^#define IS_BOM(string)  IS_BOM_/;"	d	language:C++
 IS_BOM_AT	src/sys/yaml/src/yaml_private.h	/^#define IS_BOM_AT(/;"	d	language:C++
-IS_BREAK	src/sys/yaml/src/yaml_private.h	/^#define IS_BREAK(/;"	d	language:C++
-IS_BREAKZ	src/sys/yaml/src/yaml_private.h	/^#define IS_BREAKZ(/;"	d	language:C++
+IS_BREAK	src/sys/yaml/src/yaml_private.h	/^#define IS_BREAK(string)    IS_BREAK_/;"	d	language:C++
+IS_BREAKZ	src/sys/yaml/src/yaml_private.h	/^#define IS_BREAKZ(string)   IS_BREAKZ_/;"	d	language:C++
 IS_BREAKZ_AT	src/sys/yaml/src/yaml_private.h	/^#define IS_BREAKZ_AT(/;"	d	language:C++
 IS_BREAK_AT	src/sys/yaml/src/yaml_private.h	/^#define IS_BREAK_AT(/;"	d	language:C++
 IS_Block	src/vec/is/is/impls/block/block.c	/^} IS_Block;$/;"	t	language:C	typeref:struct:__anon71e715290108	file:
@@ -9517,10 +9631,10 @@
 IS_CLASSID	src/vec/is/is/interface/index.c	/^PetscClassId IS_CLASSID;$/;"	v	language:C	typeref:typename:PetscClassId
 IS_COLORING_GLOBAL	include/petscis.h	/^  IS_COLORING_GLOBAL,$/;"	e	language:C++	enum:__anonf77546090403
 IS_COLORING_LOCAL	include/petscis.h	/^  IS_COLORING_LOCAL$/;"	e	language:C++	enum:__anonf77546090403
-IS_COLORING_MAX	include/petscis.h	/^#define IS_COLORING_MAX /;"	d	language:C++
-IS_CRLF	src/sys/yaml/src/yaml_private.h	/^#define IS_CRLF(/;"	d	language:C++
+IS_COLORING_MAX	include/petscis.h	/^#define IS_COLORING_MAX     PETSC_IS_COLORING_MAX$/;"	d	language:C++
+IS_CRLF	src/sys/yaml/src/yaml_private.h	/^#define IS_CRLF(string) IS_CRLF_/;"	d	language:C++
 IS_CRLF_AT	src/sys/yaml/src/yaml_private.h	/^#define IS_CRLF_AT(/;"	d	language:C++
-IS_DIGIT	src/sys/yaml/src/yaml_private.h	/^#define IS_DIGIT(/;"	d	language:C++
+IS_DIGIT	src/sys/yaml/src/yaml_private.h	/^#define IS_DIGIT(string)    IS_DIGIT_/;"	d	language:C++
 IS_DIGIT_AT	src/sys/yaml/src/yaml_private.h	/^#define IS_DIGIT_AT(/;"	d	language:C++
 IS_FILE_CLASSID	include/petscis.h	/^#define IS_FILE_CLASSID /;"	d	language:C++
 IS_GENERAL	src/vec/is/sf/interface/vscat.c	/^  IS_GENERAL,$/;"	e	language:C	enum:__anon1a0575ce0103	file:
@@ -9528,7 +9642,7 @@
 IS_GTOLM_DROP	include/petscis.h	/^  IS_GTOLM_DROP$/;"	e	language:C++	enum:__anonf77546090303
 IS_GTOLM_MASK	include/petscis.h	/^  IS_GTOLM_MASK,$/;"	e	language:C++	enum:__anonf77546090303
 IS_General	src/vec/is/is/impls/general/general.h	/^} IS_General;$/;"	t	language:C++	typeref:struct:__anon7fb2ebd40108
-IS_HEX	src/sys/yaml/src/yaml_private.h	/^#define IS_HEX(/;"	d	language:C++
+IS_HEX	src/sys/yaml/src/yaml_private.h	/^#define IS_HEX(string)    IS_HEX_/;"	d	language:C++
 IS_HEX_AT	src/sys/yaml/src/yaml_private.h	/^#define IS_HEX_AT(/;"	d	language:C++
 IS_IDENTITY	include/petscis.h	/^  IS_IDENTITY    = 4,$/;"	e	language:C++	enum:__anonf77546090103
 IS_INFO_FALSE	include/petsc/private/isimpl.h	/^  IS_INFO_FALSE   = 1,$/;"	e	language:C++	enum:__anon862b9db40103
@@ -9544,21 +9658,21 @@
 IS_Load	include/petsc/private/isimpl.h	/^PETSC_EXTERN PetscLogEvent IS_Load;$/;"	v	language:C++	typeref:typename:PETSC_EXTERN PetscLogEvent
 IS_Load	src/vec/is/is/interface/index.c	/^PetscLogEvent IS_Load;$/;"	v	language:C	typeref:typename:PetscLogEvent
 IS_PERMUTATION	include/petscis.h	/^  IS_PERMUTATION = 2,$/;"	e	language:C++	enum:__anonf77546090103
-IS_PRINTABLE	src/sys/yaml/src/yaml_private.h	/^#define IS_PRINTABLE(/;"	d	language:C++
+IS_PRINTABLE	src/sys/yaml/src/yaml_private.h	/^#define IS_PRINTABLE(string)    IS_PRINTABLE_/;"	d	language:C++
 IS_PRINTABLE_AT	src/sys/yaml/src/yaml_private.h	/^#define IS_PRINTABLE_AT(/;"	d	language:C++
 IS_SORTED	include/petscis.h	/^  IS_SORTED      = 0,$/;"	e	language:C++	enum:__anonf77546090103
-IS_SPACE	src/sys/yaml/src/yaml_private.h	/^#define IS_SPACE(/;"	d	language:C++
-IS_SPACEZ	src/sys/yaml/src/yaml_private.h	/^#define IS_SPACEZ(/;"	d	language:C++
+IS_SPACE	src/sys/yaml/src/yaml_private.h	/^#define IS_SPACE(string)    IS_SPACE_/;"	d	language:C++
+IS_SPACEZ	src/sys/yaml/src/yaml_private.h	/^#define IS_SPACEZ(string)   IS_SPACEZ_/;"	d	language:C++
 IS_SPACEZ_AT	src/sys/yaml/src/yaml_private.h	/^#define IS_SPACEZ_AT(/;"	d	language:C++
 IS_SPACE_AT	src/sys/yaml/src/yaml_private.h	/^#define IS_SPACE_AT(/;"	d	language:C++
 IS_STRIDE	src/vec/is/sf/interface/vscat.c	/^  IS_STRIDE$/;"	e	language:C	enum:__anon1a0575ce0103	file:
 IS_Stride	src/vec/is/is/impls/stride/stride.c	/^} IS_Stride;$/;"	t	language:C	typeref:struct:__anon672069a90108	file:
-IS_TAB	src/sys/yaml/src/yaml_private.h	/^#define IS_TAB(/;"	d	language:C++
+IS_TAB	src/sys/yaml/src/yaml_private.h	/^#define IS_TAB(string)  IS_TAB_/;"	d	language:C++
 IS_TAB_AT	src/sys/yaml/src/yaml_private.h	/^#define IS_TAB_AT(/;"	d	language:C++
 IS_UNIQUE	include/petscis.h	/^  IS_UNIQUE      = 1,$/;"	e	language:C++	enum:__anonf77546090103
 IS_View	include/petsc/private/isimpl.h	/^PETSC_EXTERN PetscLogEvent IS_View;$/;"	v	language:C++	typeref:typename:PETSC_EXTERN PetscLogEvent
 IS_View	src/vec/is/is/interface/index.c	/^PetscLogEvent IS_View;$/;"	v	language:C	typeref:typename:PetscLogEvent
-IS_Z	src/sys/yaml/src/yaml_private.h	/^#define IS_Z(/;"	d	language:C++
+IS_Z	src/sys/yaml/src/yaml_private.h	/^#define IS_Z(string)    IS_Z_/;"	d	language:C++
 IS_Z_AT	src/sys/yaml/src/yaml_private.h	/^#define IS_Z_AT(/;"	d	language:C++
 IS_inact	src/snes/impls/vi/rs/virsimpl.h	/^  IS    IS_inact;$/;"	m	language:C++	struct:__anon9e32dda60108	typeref:typename:IS
 IS_inact_prev	src/snes/impls/vi/rs/virsimpl.h	/^  IS    IS_inact_prev;$/;"	m	language:C++	struct:__anon9e32dda60108	typeref:typename:IS
@@ -9661,7 +9775,7 @@
 IncrementSize	src/sys/objects/device/tests/ex7.c	/^static PetscErrorCode IncrementSize(PetscRandom rand, PetscInt *value)$/;"	f	language:C	typeref:typename:PetscErrorCode	file:
 Index	src/benchmarks/makefile	/^Index: Index.o $/;"	t	language:Make
 Index	src/binding/petsc4py/docs/usrman/genindex.html	/^<h1 id="index">Index<\/h1>$/;"	h	language:HTML
-Index — PETSc for Python 3.18.4 documentation	src/binding/petsc4py/docs/usrman/genindex.html	/^    <title>Index — PETSc for Python 3.18.4 documentation<\/title>$/;"	j	language:HTML
+Index — PETSc for Python 3.18.5 documentation	src/binding/petsc4py/docs/usrman/genindex.html	/^    <title>Index — PETSc for Python 3.18.5 documentation<\/title>$/;"	j	language:HTML
 IndexSpaceGet	src/mat/impls/localref/mlocalref.c	/^#define IndexSpaceGet(/;"	d	language:C	file:
 IndexSpaceRestore	src/mat/impls/localref/mlocalref.c	/^#define IndexSpaceRestore(/;"	d	language:C	file:
 Inf_nb	src/tao/constrained/impls/ipm/ipm.h	/^  Vec           Zero_nb, One_nb, Inf_nb;$/;"	m	language:C++	struct:__anon1484705d0108	typeref:typename:Vec
@@ -9792,7 +9906,7 @@
 Install	config/BuildSystem/config/packages/xSDKTrilinos.py	/^  def Install(self):$/;"	m	language:Python	class:Configure
 Install	config/BuildSystem/config/packages/zlib.py	/^  def Install(self):$/;"	m	language:Python	class:Configure
 Install	config/BuildSystem/config/packages/zstd.py	/^  def Install(self):$/;"	m	language:Python	class:Configure
-Installation — PETSc for Python 3.18.4 documentation	src/binding/petsc4py/docs/usrman/install.html	/^    <title>Installation — PETSc for Python 3.18.4 documentation<\/title>$/;"	j	language:HTML
+Installation — PETSc for Python 3.18.5 documentation	src/binding/petsc4py/docs/usrman/install.html	/^    <title>Installation — PETSc for Python 3.18.5 documentation<\/title>$/;"	j	language:HTML
 Installation?	src/binding/petsc4py/docs/usrman/install.html	/^<h1>Installation<a class="headerlink" href="#installation" title="Permalink to this heading">?</;"	h	language:HTML
 Installer	config/install.py	/^class Installer(script.Script):$/;"	c	language:Python
 IntArrayViewFromOptions	src/dm/impls/plex/plexinterpolate.c	/^static PetscErrorCode IntArrayViewFromOptions(MPI_Comm comm, const char opt[], const char name[]/;"	f	language:C	typeref:typename:PetscErrorCode	file:
@@ -9829,10 +9943,12 @@
 J	include/petscfe.h	/^  PetscReal       *J;     \/* J[Nc*Np*dE*dE]:        The Jacobian of the map from reference to r/;"	m	language:C++	struct:_n_PetscFEGeom	typeref:typename:PetscReal *
 J	include/petsclandau.h	/^  Mat J;$/;"	m	language:C++	struct:__anon8db14aa20408	typeref:typename:Mat
 J	src/binding/petsc4py/demo/bratu3d/bratu3d.py	/^    J = None$/;"	v	language:Python
+J	src/binding/petsc4py/demo/bratu3d/bratu3d.py	/^    J = da.createMat()$/;"	v	language:Python
 J	src/binding/petsc4py/demo/ode/bouncing_ball.py	/^J = PETSc.Mat().create()$/;"	v	language:Python
 J	src/binding/petsc4py/demo/ode/ce.py	/^J = PETSc.Mat().createDense([ode.n,ode.n], comm=ode.comm)$/;"	v	language:Python
 J	src/binding/petsc4py/demo/ode/orego.py	/^J = PETSc.Mat().createDense([ode.n, ode.n], comm=ode.comm)$/;"	v	language:Python
 J	src/binding/petsc4py/demo/ode/rober.py	/^J = PETSc.Mat().createDense([ode.n, ode.n], comm=ode.comm)$/;"	v	language:Python
+J	src/binding/petsc4py/demo/ode/vanderpol.py	/^    J = PETSc.Mat().create()$/;"	v	language:Python
 J	src/binding/petsc4py/demo/ode/vanderpol.py	/^    J = PETSc.Mat().createDense([ode.n,ode.n], comm=ode.comm)$/;"	v	language:Python
 J	src/binding/petsc4py/demo/petsc-examples/ksp/ex2.py	/^        J = Ii + 1$/;"	v	language:Python
 J	src/binding/petsc4py/demo/petsc-examples/ksp/ex2.py	/^        J = Ii + n$/;"	v	language:Python
@@ -10027,7 +10143,7 @@
 KOKKOS_SHARED_LEVEL	src/ts/utils/dmplexlandau/kokkos/landau.kokkos.cxx	/^#define KOKKOS_SHARED_LEVEL /;"	d	language:C++	file:
 KPOW	src/snes/tutorials/ex59.c	/^#define KPOW /;"	d	language:C	file:
 KSConv	src/ts/tests/ex28.c	/^static PetscErrorCode KSConv(TS ts, PetscInt step, PetscReal t, Vec U, void *ctx)$/;"	f	language:C	typeref:typename:PetscErrorCode	file:
-KSP	include/petsc/finclude/petscksp.h	/^#define KSP /;"	d	language:C++
+KSP	include/petsc/finclude/petscksp.h	/^#define KSP type(tKSP)/;"	d	language:C++
 KSP	include/petscksp.h	/^typedef struct _p_KSP *KSP;$/;"	t	language:C++	typeref:struct:_p_KSP *
 KSP	src/binding/petsc4py/docs/apiref/petsc4py.PETSc.PC.Type-class.html	/^        <a name="KSP"><\/a><span class="summary-name">KSP<\/span> = <code title="'ksp'"><code cl/;"	a	language:HTML
 KSPAGMRESBuildBasis	src/ksp/ksp/impls/gmres/agmres/agmres.c	/^static PetscErrorCode KSPAGMRESBuildBasis(KSP ksp)$/;"	f	language:C	typeref:typename:PetscErrorCode	file:
@@ -10080,7 +10196,7 @@
 KSPCGDestroy_GLTR	src/ksp/ksp/impls/cg/gltr/gltr.c	/^static PetscErrorCode KSPCGDestroy_GLTR(KSP ksp)$/;"	f	language:C	typeref:typename:PetscErrorCode	file:
 KSPCGDestroy_NASH	src/ksp/ksp/impls/cg/nash/nash.c	/^static PetscErrorCode KSPCGDestroy_NASH(KSP ksp)$/;"	f	language:C	typeref:typename:PetscErrorCode	file:
 KSPCGDestroy_STCG	src/ksp/ksp/impls/cg/stcg/stcg.c	/^static PetscErrorCode KSPCGDestroy_STCG(KSP ksp)$/;"	f	language:C	typeref:typename:PetscErrorCode	file:
-KSPCGGLTR	include/petscksp.h	/^#define KSPCGGLTR /;"	d	language:C++
+KSPCGGLTR	include/petscksp.h	/^#define KSPCGGLTR     PETSC_DEPRECATED_MACRO("GCC warning \\"KSPCGGLTR /;"	d	language:C++
 KSPCGGLTRGetLambda	include/petscksp.h	/^PETSC_DEPRECATED_FUNCTION("Use KSPGLTRGetLambda (since v3.12)") static inline PetscErrorCode KSP/;"	f	language:C++
 KSPCGGLTRGetMinEig	include/petscksp.h	/^PETSC_DEPRECATED_FUNCTION("Use KSPGLTRGetMinEig (since v3.12)") static inline PetscErrorCode KSP/;"	f	language:C++
 KSPCGGetNormD	src/ksp/ksp/impls/cg/cgtype.c	/^PetscErrorCode KSPCGGetNormD(KSP ksp, PetscReal *norm_d)$/;"	f	language:C	typeref:typename:PetscErrorCode
@@ -10093,12 +10209,12 @@
 KSPCGGetObjFcn_STCG	src/ksp/ksp/impls/cg/stcg/stcg.c	/^static PetscErrorCode KSPCGGetObjFcn_STCG(KSP ksp, PetscReal *o_fcn)$/;"	f	language:C	typeref:typename:PetscErrorCode	file:
 KSPCGLS	include/petsc/finclude/petscksp.h	/^#define KSPCGLS /;"	d	language:C++
 KSPCGLS	include/petscksp.h	/^#define KSPCGLS /;"	d	language:C++
-KSPCGNASH	include/petscksp.h	/^#define KSPCGNASH /;"	d	language:C++
+KSPCGNASH	include/petscksp.h	/^#define KSPCGNASH     PETSC_DEPRECATED_MACRO("GCC warning \\"KSPCGNASH /;"	d	language:C++
 KSPCGNE	include/petsc/finclude/petscksp.h	/^#define KSPCGNE /;"	d	language:C++
 KSPCGNE	include/petscksp.h	/^#define KSPCGNE /;"	d	language:C++
 KSPCGS	include/petsc/finclude/petscksp.h	/^#define KSPCGS /;"	d	language:C++
 KSPCGS	include/petscksp.h	/^#define KSPCGS /;"	d	language:C++
-KSPCGSTCG	include/petscksp.h	/^#define KSPCGSTCG /;"	d	language:C++
+KSPCGSTCG	include/petscksp.h	/^#define KSPCGSTCG     PETSC_DEPRECATED_MACRO("GCC warning \\"KSPCGSTCG /;"	d	language:C++
 KSPCGSetFromOptions_GLTR	src/ksp/ksp/impls/cg/gltr/gltr.c	/^static PetscErrorCode KSPCGSetFromOptions_GLTR(KSP ksp, PetscOptionItems *PetscOptionsObject)$/;"	f	language:C	typeref:typename:PetscErrorCode	file:
 KSPCGSetFromOptions_NASH	src/ksp/ksp/impls/cg/nash/nash.c	/^static PetscErrorCode KSPCGSetFromOptions_NASH(KSP ksp, PetscOptionItems *PetscOptionsObject)$/;"	f	language:C	typeref:typename:PetscErrorCode	file:
 KSPCGSetFromOptions_STCG	src/ksp/ksp/impls/cg/stcg/stcg.c	/^static PetscErrorCode KSPCGSetFromOptions_STCG(KSP ksp, PetscOptionItems *PetscOptionsObject)$/;"	f	language:C	typeref:typename:PetscErrorCode	file:
@@ -10251,15 +10367,15 @@
 KSPDGMRESSetRatio	src/ksp/ksp/impls/gmres/dgmres/dgmres.c	/^PetscErrorCode KSPDGMRESSetRatio(KSP ksp, PetscReal ratio)$/;"	f	language:C	typeref:typename:PetscErrorCode
 KSPDGMRESSetRatio_DGMRES	src/ksp/ksp/impls/gmres/dgmres/dgmres.c	/^static PetscErrorCode KSPDGMRESSetRatio_DGMRES(KSP ksp, PetscReal ratio)$/;"	f	language:C	typeref:typename:PetscErrorCode	file:
 KSPDGMRESUpdateHessenberg	src/ksp/ksp/impls/gmres/dgmres/dgmres.c	/^static PetscErrorCode KSPDGMRESUpdateHessenberg(KSP ksp, PetscInt it, PetscBool hapend, PetscRea/;"	f	language:C	typeref:typename:PetscErrorCode	file:
-KSPDefaultConverged	include/petscksp.h	/^#define KSPDefaultConverged /;"	d	language:C++
+KSPDefaultConverged	include/petscksp.h	/^#define KSPDefaultConverged (KSPDefaultConverged,/;"	d	language:C++
 KSPDefaultConverged	include/petscksp.h	/^PETSC_DEPRECATED_FUNCTION("Use KSPConvergedDefault() (since version 3.5)") static inline void KS/;"	f	language:C++	typeref:typename:PETSC_DEPRECATED_FUNCTION ("Use KSPConvergedDefault() (since version 3.5)")void
-KSPDefaultConvergedCreate	include/petscksp.h	/^#define KSPDefaultConvergedCreate /;"	d	language:C++
+KSPDefaultConvergedCreate	include/petscksp.h	/^#define KSPDefaultConvergedCreate (KSPDefaultConvergedCreate,/;"	d	language:C++
 KSPDefaultConvergedCreate	include/petscksp.h	/^PETSC_DEPRECATED_FUNCTION("Use KSPConvergedDefaultCreate() (since version 3.5)") static inline v/;"	f	language:C++	typeref:typename:PETSC_DEPRECATED_FUNCTION ("Use KSPConvergedDefaultCreate() (since version 3.5)")void
-KSPDefaultConvergedDestroy	include/petscksp.h	/^#define KSPDefaultConvergedDestroy /;"	d	language:C++
+KSPDefaultConvergedDestroy	include/petscksp.h	/^#define KSPDefaultConvergedDestroy (KSPDefaultConvergedDestroy,/;"	d	language:C++
 KSPDefaultConvergedDestroy	include/petscksp.h	/^PETSC_DEPRECATED_FUNCTION("Use KSPConvergedDefaultDestroy() (since version 3.5)") static inline /;"	f	language:C++	typeref:typename:PETSC_DEPRECATED_FUNCTION ("Use KSPConvergedDefaultDestroy() (since version 3.5)")void
-KSPDefaultConvergedSetUIRNorm	include/petscksp.h	/^#define KSPDefaultConvergedSetUIRNorm /;"	d	language:C++
+KSPDefaultConvergedSetUIRNorm	include/petscksp.h	/^#define KSPDefaultConvergedSetUIRNorm (KSPDefaultConvergedSetUIRNorm,/;"	d	language:C++
 KSPDefaultConvergedSetUIRNorm	include/petscksp.h	/^PETSC_DEPRECATED_FUNCTION("Use KSPConvergedDefaultSetUIRNorm() (since version 3.5)") static inli/;"	f	language:C++	typeref:typename:PETSC_DEPRECATED_FUNCTION ("Use KSPConvergedDefaultSetUIRNorm() (since version 3.5)")void
-KSPDefaultConvergedSetUMIRNorm	include/petscksp.h	/^#define KSPDefaultConvergedSetUMIRNorm /;"	d	language:C++
+KSPDefaultConvergedSetUMIRNorm	include/petscksp.h	/^#define KSPDefaultConvergedSetUMIRNorm (KSPDefaultConvergedSetUMIRNorm,/;"	d	language:C++
 KSPDefaultConvergedSetUMIRNorm	include/petscksp.h	/^PETSC_DEPRECATED_FUNCTION("Use KSPConvergedDefaultSetUMIRNorm() (since version 3.5)") static inl/;"	f	language:C++	typeref:typename:PETSC_DEPRECATED_FUNCTION ("Use KSPConvergedDefaultSetUMIRNorm() (since version 3.5)")void
 KSPDestroy	src/ksp/ksp/interface/itfunc.c	/^PetscErrorCode KSPDestroy(KSP *ksp)$/;"	f	language:C	typeref:typename:PetscErrorCode
 KSPDestroyDefault	src/ksp/ksp/interface/iterativ.c	/^PetscErrorCode KSPDestroyDefault(KSP ksp)$/;"	f	language:C	typeref:typename:PetscErrorCode
@@ -10430,7 +10546,7 @@
 KSPGetTotalIterations	src/ksp/ksp/interface/iterativ.c	/^PetscErrorCode KSPGetTotalIterations(KSP ksp, PetscInt *its)$/;"	f	language:C	typeref:typename:PetscErrorCode
 KSPGetType	src/ksp/ksp/interface/itcreate.c	/^PetscErrorCode KSPGetType(KSP ksp, KSPType *type)$/;"	f	language:C	typeref:typename:PetscErrorCode
 KSPGetVecs	include/petscksp.h	/^PETSC_DEPRECATED_FUNCTION("Use KSPCreateVecs() (since version 3.6)") static inline PetscErrorCod/;"	f	language:C++
-KSPGuess	include/petsc/finclude/petscksp.h	/^#define KSPGuess /;"	d	language:C++
+KSPGuess	include/petsc/finclude/petscksp.h	/^#define KSPGuess type(tKSPGuess)/;"	d	language:C++
 KSPGuess	include/petscksp.h	/^typedef struct _p_KSPGuess *KSPGuess;$/;"	t	language:C++	typeref:struct:_p_KSPGuess *
 KSPGuessCreate	src/ksp/ksp/interface/iguess.c	/^PetscErrorCode KSPGuessCreate(MPI_Comm comm, KSPGuess *guess)$/;"	f	language:C	typeref:typename:PetscErrorCode
 KSPGuessCreate_Dummy	src/ts/tests/ex11.c	/^static PetscErrorCode KSPGuessCreate_Dummy(KSPGuess ksp)$/;"	f	language:C	typeref:typename:PetscErrorCode	file:
@@ -10832,7 +10948,7 @@
 KSPSetUseExplicitTranspose	src/ksp/ksp/interface/itfunc.c	/^PetscErrorCode KSPSetUseExplicitTranspose(KSP ksp, PetscBool flg)$/;"	f	language:C	typeref:typename:PetscErrorCode
 KSPSetUseFischerGuess	src/ksp/ksp/interface/itcl.c	/^PetscErrorCode KSPSetUseFischerGuess(KSP ksp, PetscInt model, PetscInt size)$/;"	f	language:C	typeref:typename:PetscErrorCode
 KSPSetWorkVecs	src/ksp/ksp/interface/iterativ.c	/^PetscErrorCode KSPSetWorkVecs(KSP ksp, PetscInt nw)$/;"	f	language:C	typeref:typename:PetscErrorCode
-KSPSkipConverged	include/petscksp.h	/^#define KSPSkipConverged /;"	d	language:C++
+KSPSkipConverged	include/petscksp.h	/^#define KSPSkipConverged (KSPSkipConverged,/;"	d	language:C++
 KSPSkipConverged	include/petscksp.h	/^PETSC_DEPRECATED_FUNCTION("Use KSPConvergedSkip() (since version 3.5)") static inline void KSPSk/;"	f	language:C++	typeref:typename:PETSC_DEPRECATED_FUNCTION ("Use KSPConvergedSkip() (since version 3.5)")void
 KSPSolve	src/ksp/ksp/interface/itfunc.c	/^PetscErrorCode KSPSolve(KSP ksp, Vec b, Vec x)$/;"	f	language:C	typeref:typename:PetscErrorCode
 KSPSolveTranspose	src/ksp/ksp/interface/itfunc.c	/^PetscErrorCode KSPSolveTranspose(KSP ksp, Vec b, Vec x)$/;"	f	language:C	typeref:typename:PetscErrorCode
@@ -11057,6 +11173,7 @@
 KSP_Solve_FS_U	src/ksp/pc/impls/fieldsplit/fieldsplit.c	/^PetscLogEvent KSP_Solve_FS_0, KSP_Solve_FS_1, KSP_Solve_FS_S, KSP_Solve_FS_U, KSP_Solve_FS_L, KS/;"	v	language:C	typeref:typename:PetscLogEvent
 KSP_TSIRM	src/ksp/ksp/impls/tsirm/tsirm.c	/^} KSP_TSIRM;$/;"	t	language:C	typeref:struct:__anon90e794c80108	file:
 KSP_TYPE	src/binding/petsc4py/test/test_ksp.py	/^        KSP_TYPE = PETSc.KSP.Type.CHEBYCHEV$/;"	v	language:Python	class:TestKSPCHEBYCHEV
+KSP_TYPE	src/binding/petsc4py/test/test_ksp.py	/^        KSP_TYPE = PETSc.KSP.Type.CHEBYSHEV$/;"	v	language:Python	class:TestKSPCHEBYCHEV
 KSP_TYPE	src/binding/petsc4py/test/test_ksp.py	/^    KSP_TYPE = None$/;"	v	language:Python	class:BaseTestKSP
 KSP_TYPE	src/binding/petsc4py/test/test_ksp.py	/^    KSP_TYPE = PETSc.KSP.Type.BCGS$/;"	v	language:Python	class:TestKSPBCGS
 KSP_TYPE	src/binding/petsc4py/test/test_ksp.py	/^    KSP_TYPE = PETSc.KSP.Type.BCGSL$/;"	v	language:Python	class:TestKSPBCGSL
@@ -11219,12 +11336,12 @@
 LCL_FORWARD2	src/tao/pde_constrained/impls/lcl/lcl.h	/^#define LCL_FORWARD2 /;"	d	language:C++
 LEFT	src/binding/petsc4py/docs/apiref/petsc4py.PETSc.DMStag.StencilLocation-class.html	/^        <a name="LEFT"><\/a><span class="summary-name">LEFT<\/span> = <code title="13">13<\/code/;"	a	language:HTML
 LEFT	src/binding/petsc4py/docs/apiref/petsc4py.PETSc.PC.Side-class.html	/^        <a name="LEFT"><\/a><span class="summary-name">LEFT<\/span> = <code title="0">0<\/code>$/;"	a	language:HTML
-LEFT	src/dm/impls/stag/tests/ex18.c	/^#define LEFT /;"	d	language:C	file:
-LEFT	src/dm/impls/stag/tests/ex30.c	/^#define LEFT /;"	d	language:C	file:
-LEFT	src/dm/impls/stag/tests/ex5.c	/^#define LEFT /;"	d	language:C	file:
-LEFT	src/dm/impls/stag/tutorials/ex1.c	/^#define LEFT /;"	d	language:C	file:
-LEFT	src/dm/impls/stag/tutorials/ex2.c	/^#define LEFT /;"	d	language:C	file:
-LEFT	src/dm/impls/stag/tutorials/ex3.c	/^#define LEFT /;"	d	language:C	file:
+LEFT	src/dm/impls/stag/tests/ex18.c	/^#define LEFT       DMSTAG_LEFT$/;"	d	language:C	file:
+LEFT	src/dm/impls/stag/tests/ex30.c	/^#define LEFT             DMSTAG_LEFT$/;"	d	language:C	file:
+LEFT	src/dm/impls/stag/tests/ex5.c	/^#define LEFT    DMSTAG_LEFT$/;"	d	language:C	file:
+LEFT	src/dm/impls/stag/tutorials/ex1.c	/^#define LEFT    DMSTAG_LEFT$/;"	d	language:C	file:
+LEFT	src/dm/impls/stag/tutorials/ex2.c	/^#define LEFT       DMSTAG_LEFT$/;"	d	language:C	file:
+LEFT	src/dm/impls/stag/tutorials/ex3.c	/^#define LEFT             DMSTAG_LEFT$/;"	d	language:C	file:
 LEFT	src/ksp/pc/impls/tfs/xxt.c	/^#define LEFT /;"	d	language:C	file:
 LEFT	src/ksp/pc/impls/tfs/xyt.c	/^#define LEFT /;"	d	language:C	file:
 LForm_MomentumRHS	src/ksp/ksp/tutorials/ex70.c	/^static void LForm_MomentumRHS(PetscScalar Fe[], PetscScalar coords[], PetscScalar fx[], PetscSca/;"	f	language:C	typeref:typename:void	file:
@@ -12817,9 +12934,9 @@
 LU6SOL	src/mat/impls/aij/seq/lusol/lusol.c	/^  #define LU6SOL /;"	d	language:C	file:
 LUSOL	src/binding/petsc4py/docs/apiref/petsc4py.PETSc.Mat.SolverType-class.html	/^        <a name="LUSOL"><\/a><span class="summary-name">LUSOL<\/span> = <code title="'lusol'"><c/;"	a	language:HTML
 LUstruct	src/mat/impls/aij/mpi/superlu_dist/superlu_dist.c	/^  LUstruct_t             LUstruct;$/;"	m	language:C	struct:__anon0965ce5f0108	typeref:typename:LUstruct_t	file:
-LUstructFree	src/mat/impls/aij/mpi/superlu_dist/superlu_dist.c	/^  #define LUstructFree /;"	d	language:C	file:
-LUstructInit	src/mat/impls/aij/mpi/superlu_dist/superlu_dist.c	/^  #define LUstructInit /;"	d	language:C	file:
-LUstruct_t	src/mat/impls/aij/mpi/superlu_dist/superlu_dist.c	/^  #define LUstruct_t /;"	d	language:C	file:
+LUstructFree	src/mat/impls/aij/mpi/superlu_dist/superlu_dist.c	/^  #define LUstructFree                  zLUstructFree$/;"	d	language:C	file:
+LUstructInit	src/mat/impls/aij/mpi/superlu_dist/superlu_dist.c	/^  #define LUstructInit                  zLUstructInit$/;"	d	language:C	file:
+LUstruct_t	src/mat/impls/aij/mpi/superlu_dist/superlu_dist.c	/^  #define LUstruct_t                    zLUstruct_t$/;"	d	language:C	file:
 LXOR	src/vec/is/sf/impls/basic/cuda/sfcuda.cu	/^struct LXOR {$/;"	s	language:C	file:
 LXOR	src/vec/is/sf/impls/basic/kokkos/sfkok.kokkos.cxx	/^struct LXOR {$/;"	s	language:C++	file:
 L_save	src/tao/leastsquares/impls/pounders/pounders.h	/^  PetscReal *L_save; \/* n*(n+1)\/2 x npmax *\/$/;"	m	language:C++	struct:__anon6f6a35340108	typeref:typename:PetscReal *
@@ -14201,7 +14318,7 @@
 MATSOLVERUMFPACK	include/petscmat.h	/^#define MATSOLVERUMFPACK /;"	d	language:C++
 MATSUBMATRIX	include/petsc/finclude/petscmat.h	/^#define MATSUBMATRIX /;"	d	language:C++
 MATSUBMATRIX	include/petscmat.h	/^#define MATSUBMATRIX /;"	d	language:C++
-MATTRANSPOSEMAT	include/petscmat.h	/^#define MATTRANSPOSEMAT /;"	d	language:C++
+MATTRANSPOSEMAT	include/petscmat.h	/^#define MATTRANSPOSEMAT              PETSC_DEPRECATED_MACRO("GCC warning \\"MATTRANSPOSEMAT /;"	d	language:C++
 MATTRANSPOSEVIRTUAL	include/petsc/finclude/petscmat.h	/^#define MATTRANSPOSEVIRTUAL /;"	d	language:C++
 MATTRANSPOSEVIRTUAL	include/petscmat.h	/^#define MATTRANSPOSEVIRTUAL /;"	d	language:C++
 MATVEC2	src/ts/utils/dmplexlandau/plexland.c	/^#define MATVEC2(/;"	d	language:C	file:
@@ -14617,7 +14734,7 @@
 MDOT_WORKGROUP_SIZE	src/vec/vec/impls/seq/seqcuda/veccuda2.cu	/^#define MDOT_WORKGROUP_SIZE /;"	d	language:C	file:
 MDotFunctor	src/vec/vec/impls/seq/kokkos/veckok.kokkos.cxx	/^  MDotFunctor(ConstPetscScalarKokkosView &xv, const PetscInt ny, \/* Number of valid entries in /;"	f	language:C++	struct:MDotFunctor	file:
 MDotFunctor	src/vec/vec/impls/seq/kokkos/veckok.kokkos.cxx	/^struct MDotFunctor {$/;"	s	language:C++	file:
-MEDIAN	src/sys/utils/sorti.c	/^#define MEDIAN(/;"	d	language:C	file:
+MEDIAN	src/sys/utils/sorti.c	/^#define MEDIAN(v, right) MEDIAN3/;"	d	language:C	file:
 MEDIAN3	src/sys/utils/sorti.c	/^#define MEDIAN3(/;"	d	language:C	file:
 MEHess	src/dm/field/impls/da/dmfieldda.c	/^#define MEHess(/;"	d	language:C	file:
 MEMORYSCALABLE	src/binding/petsc4py/docs/apiref/petsc4py.PETSc.AO.Type-class.html	/^        <a name="MEMORYSCALABLE"><\/a><span class="summary-name">MEMORYSCALABLE<\/span> = <code /;"	a	language:HTML
@@ -14843,8 +14960,8 @@
 MPIU_BOOL	src/sys/objects/init.c	/^MPI_Datatype MPIU_BOOL;$/;"	v	language:C	typeref:typename:MPI_Datatype
 MPIU_COLORING_VALUE	include/petscis.h	/^#define MPIU_COLORING_VALUE /;"	d	language:C++
 MPIU_COMPLEX	include/petscmath.h	/^    #define MPIU_COMPLEX /;"	d	language:C++
-MPIU_C_COMPLEX	include/petscmath.h	/^  #define MPIU_C_COMPLEX /;"	d	language:C++
-MPIU_C_DOUBLE_COMPLEX	include/petscmath.h	/^  #define MPIU_C_DOUBLE_COMPLEX /;"	d	language:C++
+MPIU_C_COMPLEX	include/petscmath.h	/^  #define MPIU_C_COMPLEX        MPI_C_COMPLEX PETSC_DEPRECATED_MACRO("GCC warning \\"MPIU_C_COMP/;"	d	language:C++
+MPIU_C_DOUBLE_COMPLEX	include/petscmath.h	/^  #define MPIU_C_DOUBLE_COMPLEX MPI_C_DOUBLE_COMPLEX PETSC_DEPRECATED_MACRO("GCC warning \\"MPIU/;"	d	language:C++
 MPIU_ENUM	src/sys/objects/init.c	/^MPI_Datatype MPIU_ENUM;$/;"	v	language:C	typeref:typename:MPI_Datatype
 MPIU_FORTRANADDR	include/petscsys.h	/^PETSC_EXTERN MPI_Datatype MPIU_FORTRANADDR;$/;"	v	language:C++	typeref:typename:PETSC_EXTERN MPI_Datatype
 MPIU_FORTRANADDR	src/sys/objects/init.c	/^MPI_Datatype MPIU_FORTRANADDR;$/;"	v	language:C	typeref:typename:MPI_Datatype
@@ -14854,6 +14971,7 @@
 MPIU_File_write_all	src/sys/fileio/sysio.c	/^PetscErrorCode MPIU_File_write_all(MPI_File fd, void *data, PetscMPIInt cnt, MPI_Datatype dtype,/;"	f	language:C	typeref:typename:PetscErrorCode
 MPIU_File_write_at	src/sys/fileio/sysio.c	/^PetscErrorCode MPIU_File_write_at(MPI_File fd, MPI_Offset off, void *data, PetscMPIInt cnt, MPI_/;"	f	language:C	typeref:typename:PetscErrorCode
 MPIU_File_write_at_all	src/sys/fileio/sysio.c	/^PetscErrorCode MPIU_File_write_at_all(MPI_File fd, MPI_Offset off, void *data, PetscMPIInt cnt, /;"	f	language:C	typeref:typename:PetscErrorCode
+MPIU_INT	include/petscsys.h	/^  #define MPIU_INT     MPIU_INT6/;"	d	language:C++
 MPIU_INT	include/petscsys.h	/^  #define MPIU_INT /;"	d	language:C++
 MPIU_INT64	include/petscsystypes.h	/^  #define MPIU_INT64 /;"	d	language:C++
 MPIU_Iallgather	include/petsc/private/sfimpl.h	/^  #define MPIU_Iallgather(/;"	d	language:C++
@@ -14891,7 +15009,7 @@
 MPIU_PETSCLOGDOUBLE	include/petscsys.h	/^#define MPIU_PETSCLOGDOUBLE /;"	d	language:C++
 MPIU_REAL	include/petscmath.h	/^  #define MPIU_REAL /;"	d	language:C++
 MPIU_REAL_INT	src/sys/objects/init.c	/^MPI_Datatype MPIU_REAL_INT   = 0;$/;"	v	language:C	typeref:typename:MPI_Datatype
-MPIU_REPLACE	include/petscsf.h	/^#define MPIU_REPLACE /;"	d	language:C++
+MPIU_REPLACE	include/petscsf.h	/^#define MPIU_REPLACE MPI_REPLACE PETSC_DEPRECATED_MACRO("GCC warning \\"MPIU_REPLACE /;"	d	language:C++
 MPIU_Recv	include/petsc/private/mpiutils.h	/^  #define MPIU_Recv(/;"	d	language:C++
 MPIU_Recv	include/petsc/private/mpiutils.h	/^static inline PetscMPIInt MPIU_Recv(void *buf, PetscInt count, MPI_Datatype datatype, PetscMPIIn/;"	f	language:C++	typeref:typename:PetscMPIInt
 MPIU_Recv_init	include/petsc/private/mpiutils.h	/^  #define MPIU_Recv_init(/;"	d	language:C++
@@ -14921,7 +15039,7 @@
 MPIU___FLOAT128	src/sys/objects/init.c	/^MPI_Datatype MPIU___FLOAT128 = 0;$/;"	v	language:C	typeref:typename:MPI_Datatype
 MPIU___FP16	include/petsc/mpiuni/mpi.h	/^MPIUni_PETSC_EXTERN MPI_Datatype MPIU___FP16;$/;"	v	language:C++	typeref:typename:MPIUni_PETSC_EXTERN MPI_Datatype
 MPIU___FP16	src/sys/objects/init.c	/^MPI_Datatype MPIU___FP16 = 0;$/;"	v	language:C	typeref:typename:MPI_Datatype
-MPIUni_Abort	include/petsc/mpiuni/mpi.h	/^#define MPIUni_Abort /;"	d	language:C++
+MPIUni_Abort	include/petsc/mpiuni/mpi.h	/^#define MPIUni_Abort          Petsc_MPIUni_Abort$/;"	d	language:C++
 MPIUni_Abort	src/sys/mpiuni/mpi.c	/^int MPIUni_Abort(MPI_Comm comm, int errorcode)$/;"	f	language:C	typeref:typename:int
 MPIUni_PETSC_DLLEXPORT	include/petsc/mpiuni/mpi.h	/^  #define MPIUni_PETSC_DLLEXPORT /;"	d	language:C++
 MPIUni_PETSC_DLLEXPORT	include/petsc/mpiuni/mpi.h	/^  #define MPIUni_PETSC_DLLEXPORT$/;"	d	language:C++
@@ -14936,34 +15054,34 @@
 MPI_2INT	include/petsc/mpiuni/mpi.h	/^#define MPI_2INT /;"	d	language:C++
 MPI_4INT	include/petscmath.h	/^PETSC_EXTERN MPI_Datatype MPI_4INT;$/;"	v	language:C++	typeref:typename:PETSC_EXTERN MPI_Datatype
 MPI_4INT	src/sys/objects/init.c	/^MPI_Datatype MPI_4INT  = 0;$/;"	v	language:C	typeref:typename:MPI_Datatype
-MPI_ABORT	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_ABORT /;"	d	language:C++
-MPI_ADDRESS	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_ADDRESS /;"	d	language:C++
+MPI_ABORT	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_ABORT                 PETSC_MPI_ABORT$/;"	d	language:C++
+MPI_ADDRESS	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_ADDRESS               PETSC_MPI_ADDRESS$/;"	d	language:C++
 MPI_AINT	include/petsc/mpiuni/mpi.h	/^#define MPI_AINT /;"	d	language:C++
-MPI_ALLGATHER	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_ALLGATHER /;"	d	language:C++
-MPI_ALLGATHERV	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_ALLGATHERV /;"	d	language:C++
-MPI_ALLREDUCE	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_ALLREDUCE /;"	d	language:C++
-MPI_ALLTOALLV	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_ALLTOALLV /;"	d	language:C++
+MPI_ALLGATHER	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_ALLGATHER             PETSC_MPI_ALLGATHER$/;"	d	language:C++
+MPI_ALLGATHERV	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_ALLGATHERV            PETSC_MPI_ALLGATHERV$/;"	d	language:C++
+MPI_ALLREDUCE	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_ALLREDUCE             PETSC_MPI_ALLREDUCE$/;"	d	language:C++
+MPI_ALLTOALLV	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_ALLTOALLV             PETSC_MPI_ALLTOALLV$/;"	d	language:C++
 MPI_ANY_SOURCE	include/petsc/mpiuni/mpi.h	/^#define MPI_ANY_SOURCE /;"	d	language:C++
 MPI_ANY_TAG	include/petsc/mpiuni/mpi.h	/^#define MPI_ANY_TAG /;"	d	language:C++
-MPI_Abort	include/petsc/mpiuni/mpi.h	/^#define MPI_Abort /;"	d	language:C++
+MPI_Abort	include/petsc/mpiuni/mpi.h	/^#define MPI_Abort             Petsc_MPI_Abort$/;"	d	language:C++
 MPI_Abort	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_Abort /;"	d	language:C++
 MPI_Abort	src/sys/mpiuni/mpi.c	/^int MPI_Abort(MPI_Comm comm, int errorcode)$/;"	f	language:C	typeref:typename:int
-MPI_Add_error_class	include/petsc/mpiuni/mpi.h	/^#define MPI_Add_error_class /;"	d	language:C++
+MPI_Add_error_class	include/petsc/mpiuni/mpi.h	/^#define MPI_Add_error_class   Petsc_MPI_Add_error_class$/;"	d	language:C++
 MPI_Add_error_class	src/sys/mpiuni/mpi.c	/^int MPI_Add_error_class(int *cl)$/;"	f	language:C	typeref:typename:int
-MPI_Add_error_code	include/petsc/mpiuni/mpi.h	/^#define MPI_Add_error_code /;"	d	language:C++
+MPI_Add_error_code	include/petsc/mpiuni/mpi.h	/^#define MPI_Add_error_code    Petsc_MPI_Add_error_code$/;"	d	language:C++
 MPI_Add_error_code	src/sys/mpiuni/mpi.c	/^int MPI_Add_error_code(int cl, int *co)$/;"	f	language:C	typeref:typename:int
 MPI_Address	include/petsc/mpiuni/mpi.h	/^#define MPI_Address(/;"	d	language:C++
 MPI_Address	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_Address /;"	d	language:C++
 MPI_Aint	include/petsc/mpiuni/mpi.h	/^typedef ptrdiff_t MPI_Aint;$/;"	t	language:C++	typeref:typename:ptrdiff_t
 MPI_Allgather	include/petsc/mpiuni/mpi.h	/^#define MPI_Allgather(/;"	d	language:C++
 MPI_Allgather	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_Allgather /;"	d	language:C++
-MPI_Allgather	include/petsclog.h	/^    #define MPI_Allgather(/;"	d	language:C++
+MPI_Allgather	include/petsclog.h	/^    #define MPI_Allgather(sendbuf, sendcount, sendtype, recvbuf, recvcount, recvtype, comm) ((pe/;"	d	language:C++
 MPI_Allgatherv	include/petsc/mpiuni/mpi.h	/^#define MPI_Allgatherv(/;"	d	language:C++
 MPI_Allgatherv	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_Allgatherv /;"	d	language:C++
 MPI_Allgatherv	include/petsclog.h	/^    #define MPI_Allgatherv(/;"	d	language:C++
 MPI_Allreduce	include/petsc/mpiuni/mpi.h	/^#define MPI_Allreduce(/;"	d	language:C++
 MPI_Allreduce	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_Allreduce /;"	d	language:C++
-MPI_Allreduce	include/petsclog.h	/^    #define MPI_Allreduce(/;"	d	language:C++
+MPI_Allreduce	include/petsclog.h	/^    #define MPI_Allreduce(sendbuf, recvbuf, count, datatype, op, comm) (petsc_allreduce_ct += Pe/;"	d	language:C++
 MPI_Alltoall	include/petsc/mpiuni/mpi.h	/^#define MPI_Alltoall(/;"	d	language:C++
 MPI_Alltoall	include/petsclog.h	/^    #define MPI_Alltoall(/;"	d	language:C++
 MPI_Alltoallv	include/petsc/mpiuni/mpi.h	/^#define MPI_Alltoallv(/;"	d	language:C++
@@ -14971,15 +15089,15 @@
 MPI_Alltoallv	include/petsclog.h	/^    #define MPI_Alltoallv(/;"	d	language:C++
 MPI_Alltoallw	include/petsc/mpiuni/mpi.h	/^#define MPI_Alltoallw(/;"	d	language:C++
 MPI_Attr	src/sys/mpiuni/mpi.c	/^} MPI_Attr;$/;"	t	language:C	typeref:struct:__anona00dc1c20108	file:
-MPI_Attr_delete	include/petsc/mpiuni/mpi.h	/^#define MPI_Attr_delete /;"	d	language:C++
+MPI_Attr_delete	include/petsc/mpiuni/mpi.h	/^#define MPI_Attr_delete       Petsc_MPI_Attr_delete$/;"	d	language:C++
 MPI_Attr_dereference_keyval	src/sys/mpiuni/mpi.c	/^static int MPI_Attr_dereference_keyval(int keyval)$/;"	f	language:C	typeref:typename:int	file:
-MPI_Attr_get	include/petsc/mpiuni/mpi.h	/^#define MPI_Attr_get /;"	d	language:C++
+MPI_Attr_get	include/petsc/mpiuni/mpi.h	/^#define MPI_Attr_get          Petsc_MPI_Attr_get$/;"	d	language:C++
 MPI_Attr_keyval	src/sys/mpiuni/mpi.c	/^} MPI_Attr_keyval;$/;"	t	language:C	typeref:struct:__anona00dc1c20208	file:
-MPI_Attr_put	include/petsc/mpiuni/mpi.h	/^#define MPI_Attr_put /;"	d	language:C++
+MPI_Attr_put	include/petsc/mpiuni/mpi.h	/^#define MPI_Attr_put          Petsc_MPI_Attr_put$/;"	d	language:C++
 MPI_Attr_reference_keyval	src/sys/mpiuni/mpi.c	/^static int MPI_Attr_reference_keyval(int keyval)$/;"	f	language:C	typeref:typename:int	file:
 MPI_BAND	include/petsc/mpiuni/mpi.h	/^#define MPI_BAND /;"	d	language:C++
-MPI_BARRIER	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_BARRIER /;"	d	language:C++
-MPI_BCAST	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_BCAST /;"	d	language:C++
+MPI_BARRIER	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_BARRIER               PETSC_MPI_BARRIER$/;"	d	language:C++
+MPI_BCAST	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_BCAST                 PETSC_MPI_BCAST$/;"	d	language:C++
 MPI_BOR	include/petsc/mpiuni/mpi.h	/^#define MPI_BOR /;"	d	language:C++
 MPI_BOTTOM	include/petsc/mpiuni/mpi.h	/^#define MPI_BOTTOM /;"	d	language:C++
 MPI_BXOR	include/petsc/mpiuni/mpi.h	/^#define MPI_BXOR /;"	d	language:C++
@@ -14988,12 +15106,12 @@
 MPI_Barrier	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_Barrier /;"	d	language:C++
 MPI_Bcast	include/petsc/mpiuni/mpi.h	/^#define MPI_Bcast(/;"	d	language:C++
 MPI_Bcast	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_Bcast /;"	d	language:C++
-MPI_Bcast	include/petsclog.h	/^    #define MPI_Bcast(/;"	d	language:C++
+MPI_Bcast	include/petsclog.h	/^    #define MPI_Bcast(buffer, count, datatype, root, comm) ((petsc_allreduce_ct += PetscMPIParal/;"	d	language:C++
 MPI_Bsend	include/petsc/mpiuni/mpi.h	/^#define MPI_Bsend(/;"	d	language:C++
 MPI_Bsend_init	include/petsc/mpiuni/mpi.h	/^#define MPI_Bsend_init(/;"	d	language:C++
 MPI_Buffer_attach	include/petsc/mpiuni/mpi.h	/^#define MPI_Buffer_attach(/;"	d	language:C++
 MPI_Buffer_detach	include/petsc/mpiuni/mpi.h	/^#define MPI_Buffer_detach(/;"	d	language:C++
-MPI_CANCEL	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_CANCEL /;"	d	language:C++
+MPI_CANCEL	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_CANCEL                PETSC_MPI_CANCEL$/;"	d	language:C++
 MPI_CHAR	include/petsc/mpiuni/mpi.h	/^#define MPI_CHAR /;"	d	language:C++
 MPI_COMBINER_CONTIGUOUS	include/petsc/mpiuni/mpi.h	/^#define MPI_COMBINER_CONTIGUOUS /;"	d	language:C++
 MPI_COMBINER_CONTIGUOUS	src/vec/is/sf/interface/sftype.c	/^  #define MPI_COMBINER_CONTIGUOUS /;"	d	language:C	file:
@@ -15001,17 +15119,17 @@
 MPI_COMBINER_DUP	src/vec/is/sf/interface/sftype.c	/^  #define MPI_COMBINER_DUP /;"	d	language:C	file:
 MPI_COMBINER_NAMED	include/petsc/mpiuni/mpi.h	/^#define MPI_COMBINER_NAMED /;"	d	language:C++
 MPI_COMBINER_NAMED	src/vec/is/sf/interface/sftype.c	/^  #define MPI_COMBINER_NAMED /;"	d	language:C	file:
-MPI_COMM_CREATE	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_COMM_CREATE /;"	d	language:C++
-MPI_COMM_DUP	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_COMM_DUP /;"	d	language:C++
-MPI_COMM_FREE	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_COMM_FREE /;"	d	language:C++
-MPI_COMM_GROUP	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_COMM_GROUP /;"	d	language:C++
+MPI_COMM_CREATE	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_COMM_CREATE           PETSC_MPI_COMM_CREATE$/;"	d	language:C++
+MPI_COMM_DUP	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_COMM_DUP              PETSC_MPI_COMM_DUP$/;"	d	language:C++
+MPI_COMM_FREE	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_COMM_FREE             PETSC_MPI_COMM_FREE$/;"	d	language:C++
+MPI_COMM_GROUP	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_COMM_GROUP            PETSC_MPI_COMM_GROUP$/;"	d	language:C++
 MPI_COMM_NULL	include/petsc/mpiuni/mpi.h	/^#define MPI_COMM_NULL /;"	d	language:C++
 MPI_COMM_NULL_COPY_FN	include/petsc/mpiuni/mpi.h	/^#define MPI_COMM_NULL_COPY_FN /;"	d	language:C++
 MPI_COMM_NULL_DELETE_FN	include/petsc/mpiuni/mpi.h	/^#define MPI_COMM_NULL_DELETE_FN /;"	d	language:C++
-MPI_COMM_RANK	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_COMM_RANK /;"	d	language:C++
+MPI_COMM_RANK	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_COMM_RANK             PETSC_MPI_COMM_RANK$/;"	d	language:C++
 MPI_COMM_SELF	include/petsc/mpiuni/mpi.h	/^#define MPI_COMM_SELF /;"	d	language:C++
-MPI_COMM_SIZE	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_COMM_SIZE /;"	d	language:C++
-MPI_COMM_SPLIT	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_COMM_SPLIT /;"	d	language:C++
+MPI_COMM_SIZE	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_COMM_SIZE             PETSC_MPI_COMM_SIZE$/;"	d	language:C++
+MPI_COMM_SPLIT	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_COMM_SPLIT            PETSC_MPI_COMM_SPLIT$/;"	d	language:C++
 MPI_COMM_TYPE_SHARED	include/petsc/mpiuni/mpi.h	/^#define MPI_COMM_TYPE_SHARED /;"	d	language:C++
 MPI_COMM_WORLD	include/petsc/mpiuni/mpi.h	/^#define MPI_COMM_WORLD /;"	d	language:C++
 MPI_COMPLEX	include/petsc/mpiuni/mpi.h	/^#define MPI_COMPLEX /;"	d	language:C++
@@ -15035,7 +15153,7 @@
 MPI_Comm_c2f	include/petsc/mpiuni/mpi.h	/^#define MPI_Comm_c2f(/;"	d	language:C++
 MPI_Comm_compare	include/petsc/mpiuni/mpi.h	/^#define MPI_Comm_compare(/;"	d	language:C++
 MPI_Comm_copy_attr_function	include/petsc/mpiuni/mpi.h	/^#define MPI_Comm_copy_attr_function /;"	d	language:C++
-MPI_Comm_create	include/petsc/mpiuni/mpi.h	/^#define MPI_Comm_create /;"	d	language:C++
+MPI_Comm_create	include/petsc/mpiuni/mpi.h	/^#define MPI_Comm_create       Petsc_MPI_Comm_create$/;"	d	language:C++
 MPI_Comm_create	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_Comm_create /;"	d	language:C++
 MPI_Comm_create	src/sys/mpiuni/mpi.c	/^int MPI_Comm_create(MPI_Comm comm, MPI_Group group, MPI_Comm *newcomm)$/;"	f	language:C	typeref:typename:int
 MPI_Comm_create_keyval	include/petsc/mpiuni/mpi.h	/^#define MPI_Comm_create_keyval /;"	d	language:C++
@@ -15043,31 +15161,31 @@
 MPI_Comm_delete_attr	include/petsc/mpiuni/mpi.h	/^#define MPI_Comm_delete_attr /;"	d	language:C++
 MPI_Comm_delete_attr	src/sys/mpiuni/mpi.c	/^int MPI_Comm_delete_attr(MPI_Comm comm, int keyval)$/;"	f	language:C	typeref:typename:int
 MPI_Comm_delete_attr_function	include/petsc/mpiuni/mpi.h	/^#define MPI_Comm_delete_attr_function /;"	d	language:C++
-MPI_Comm_dup	include/petsc/mpiuni/mpi.h	/^#define MPI_Comm_dup /;"	d	language:C++
+MPI_Comm_dup	include/petsc/mpiuni/mpi.h	/^#define MPI_Comm_dup          Petsc_MPI_Comm_dup$/;"	d	language:C++
 MPI_Comm_dup	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_Comm_dup /;"	d	language:C++
 MPI_Comm_dup	src/sys/mpiuni/mpi.c	/^int MPI_Comm_dup(MPI_Comm comm, MPI_Comm *out)$/;"	f	language:C	typeref:typename:int
 MPI_Comm_f2c	include/petsc/mpiuni/mpi.h	/^#define MPI_Comm_f2c(/;"	d	language:C++
-MPI_Comm_free	include/petsc/mpiuni/mpi.h	/^#define MPI_Comm_free /;"	d	language:C++
+MPI_Comm_free	include/petsc/mpiuni/mpi.h	/^#define MPI_Comm_free         Petsc_MPI_Comm_free$/;"	d	language:C++
 MPI_Comm_free	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_Comm_free /;"	d	language:C++
 MPI_Comm_free	src/sys/mpiuni/mpi.c	/^int MPI_Comm_free(MPI_Comm *comm)$/;"	f	language:C	typeref:typename:int
 MPI_Comm_free_keyval	include/petsc/mpiuni/mpi.h	/^#define MPI_Comm_free_keyval /;"	d	language:C++
 MPI_Comm_free_keyval	src/sys/mpiuni/mpi.c	/^int MPI_Comm_free_keyval(int *keyval)$/;"	f	language:C	typeref:typename:int
 MPI_Comm_get_attr	include/petsc/mpiuni/mpi.h	/^#define MPI_Comm_get_attr /;"	d	language:C++
 MPI_Comm_get_attr	src/sys/mpiuni/mpi.c	/^int MPI_Comm_get_attr(MPI_Comm comm, int keyval, void *attribute_val, int *flag)$/;"	f	language:C	typeref:typename:int
-MPI_Comm_get_name	include/petsc/mpiuni/mpi.h	/^#define MPI_Comm_get_name /;"	d	language:C++
+MPI_Comm_get_name	include/petsc/mpiuni/mpi.h	/^#define MPI_Comm_get_name             Petsc_MPI_Comm_get_name$/;"	d	language:C++
 MPI_Comm_get_name	src/sys/mpiuni/mpi.c	/^int MPI_Comm_get_name(MPI_Comm comm, char *comm_name, int *resultlen)$/;"	f	language:C	typeref:typename:int
 MPI_Comm_group	include/petsc/mpiuni/mpi.h	/^#define MPI_Comm_group(/;"	d	language:C++
 MPI_Comm_group	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_Comm_group /;"	d	language:C++
-MPI_Comm_rank	include/petsc/mpiuni/mpi.h	/^#define MPI_Comm_rank /;"	d	language:C++
+MPI_Comm_rank	include/petsc/mpiuni/mpi.h	/^#define MPI_Comm_rank         Petsc_MPI_Comm_rank$/;"	d	language:C++
 MPI_Comm_rank	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_Comm_rank /;"	d	language:C++
 MPI_Comm_rank	src/sys/mpiuni/mpi.c	/^int MPI_Comm_rank(MPI_Comm comm, int *rank)$/;"	f	language:C	typeref:typename:int
 MPI_Comm_remote_group	include/petsc/mpiuni/mpi.h	/^#define MPI_Comm_remote_group(/;"	d	language:C++
 MPI_Comm_remote_size	include/petsc/mpiuni/mpi.h	/^#define MPI_Comm_remote_size(/;"	d	language:C++
 MPI_Comm_set_attr	include/petsc/mpiuni/mpi.h	/^#define MPI_Comm_set_attr /;"	d	language:C++
 MPI_Comm_set_attr	src/sys/mpiuni/mpi.c	/^int MPI_Comm_set_attr(MPI_Comm comm, int keyval, void *attribute_val)$/;"	f	language:C	typeref:typename:int
-MPI_Comm_set_name	include/petsc/mpiuni/mpi.h	/^#define MPI_Comm_set_name /;"	d	language:C++
+MPI_Comm_set_name	include/petsc/mpiuni/mpi.h	/^#define MPI_Comm_set_name             Petsc_MPI_Comm_set_name$/;"	d	language:C++
 MPI_Comm_set_name	src/sys/mpiuni/mpi.c	/^int MPI_Comm_set_name(MPI_Comm comm, const char *comm_name)$/;"	f	language:C	typeref:typename:int
-MPI_Comm_size	include/petsc/mpiuni/mpi.h	/^#define MPI_Comm_size /;"	d	language:C++
+MPI_Comm_size	include/petsc/mpiuni/mpi.h	/^#define MPI_Comm_size         Petsc_MPI_Comm_size$/;"	d	language:C++
 MPI_Comm_size	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_Comm_size /;"	d	language:C++
 MPI_Comm_size	src/sys/mpiuni/mpi.c	/^int MPI_Comm_size(MPI_Comm comm, int *size)$/;"	f	language:C	typeref:typename:int
 MPI_Comm_split	include/petsc/mpiuni/mpi.h	/^#define MPI_Comm_split(/;"	d	language:C++
@@ -15093,7 +15211,7 @@
 MPI_ERR_NOSUPPORT	include/petsc/mpiuni/mpi.h	/^#define MPI_ERR_NOSUPPORT /;"	d	language:C++
 MPI_ERR_OTHER	include/petsc/mpiuni/mpi.h	/^#define MPI_ERR_OTHER /;"	d	language:C++
 MPI_ERR_UNKNOWN	include/petsc/mpiuni/mpi.h	/^#define MPI_ERR_UNKNOWN /;"	d	language:C++
-MPI_EXSCAN	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_EXSCAN /;"	d	language:C++
+MPI_EXSCAN	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_EXSCAN                PETSC_MPI_EXSCAN$/;"	d	language:C++
 MPI_Errhandler	include/petsc/mpiuni/mpi.h	/^typedef int MPI_Errhandler;$/;"	t	language:C++	typeref:typename:int
 MPI_Errhandler_create	include/petsc/mpiuni/mpi.h	/^#define MPI_Errhandler_create(/;"	d	language:C++
 MPI_Errhandler_free	include/petsc/mpiuni/mpi.h	/^#define MPI_Errhandler_free(/;"	d	language:C++
@@ -15105,7 +15223,7 @@
 MPI_Exscan	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_Exscan /;"	d	language:C++
 MPI_FAILURE	src/sys/mpiuni/mpi.c	/^#define MPI_FAILURE /;"	d	language:C	file:
 MPI_FILE_NULL	include/petsc/mpiuni/mpi.h	/^#define MPI_FILE_NULL /;"	d	language:C++
-MPI_FINALIZE	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_FINALIZE /;"	d	language:C++
+MPI_FINALIZE	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_FINALIZE              PETSC_MPI_FINALIZE$/;"	d	language:C++
 MPI_FLOAT	include/petsc/mpiuni/mpi.h	/^#define MPI_FLOAT /;"	d	language:C++
 MPI_FLOAT_INT	include/petsc/mpiuni/mpi.h	/^#define MPI_FLOAT_INT /;"	d	language:C++
 MPI_File	include/petsc/mpiuni/mpi.h	/^typedef int MPI_File;$/;"	t	language:C++	typeref:typename:int
@@ -15118,15 +15236,15 @@
 MPI_File_write_all	include/petsc/mpiuni/mpi.h	/^#define MPI_File_write_all(/;"	d	language:C++
 MPI_File_write_at	include/petsc/mpiuni/mpi.h	/^#define MPI_File_write_at(/;"	d	language:C++
 MPI_File_write_at_all	include/petsc/mpiuni/mpi.h	/^#define MPI_File_write_at_all(/;"	d	language:C++
-MPI_Finalize	include/petsc/mpiuni/mpi.h	/^#define MPI_Finalize /;"	d	language:C++
+MPI_Finalize	include/petsc/mpiuni/mpi.h	/^#define MPI_Finalize          Petsc_MPI_Finalize$/;"	d	language:C++
 MPI_Finalize	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_Finalize /;"	d	language:C++
 MPI_Finalize	src/sys/mpiuni/mpi.c	/^int MPI_Finalize(void)$/;"	f	language:C	typeref:typename:int
-MPI_Finalized	include/petsc/mpiuni/mpi.h	/^#define MPI_Finalized /;"	d	language:C++
+MPI_Finalized	include/petsc/mpiuni/mpi.h	/^#define MPI_Finalized         Petsc_MPI_Finalized$/;"	d	language:C++
 MPI_Finalized	src/sys/mpiuni/mpi.c	/^int MPI_Finalized(int *flag)$/;"	f	language:C	typeref:typename:int
 MPI_Fint	include/petsc/mpiuni/mpi.h	/^typedef int MPI_Fint;$/;"	t	language:C++	typeref:typename:int
-MPI_GATHER	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_GATHER /;"	d	language:C++
-MPI_GET_COUNT	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_GET_COUNT /;"	d	language:C++
-MPI_GET_PROCESSOR_NAME	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_GET_PROCESSOR_NAME /;"	d	language:C++
+MPI_GATHER	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_GATHER                PETSC_MPI_GATHER$/;"	d	language:C++
+MPI_GET_COUNT	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_GET_COUNT             PETSC_MPI_GET_COUNT$/;"	d	language:C++
+MPI_GET_PROCESSOR_NAME	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_GET_PROCESSOR_NAME    PETSC_MPI_GET_PROCESSOR_NAME$/;"	d	language:C++
 MPI_GROUP_EMPTY	include/petsc/mpiuni/mpi.h	/^#define MPI_GROUP_EMPTY /;"	d	language:C++
 MPI_GROUP_NULL	include/petsc/mpiuni/mpi.h	/^#define MPI_GROUP_NULL /;"	d	language:C++
 MPI_Gather	include/petsc/mpiuni/mpi.h	/^#define MPI_Gather(/;"	d	language:C++
@@ -15162,8 +15280,8 @@
 MPI_Handler_function	include/petsc/mpiuni/mpi.h	/^typedef void(MPI_Handler_function)(MPI_Comm *, int *, ...);$/;"	t	language:C++	typeref:typename:void ()(MPI_Comm *,int *,...)
 MPI_IDENT	include/petsc/mpiuni/mpi.h	/^#define MPI_IDENT /;"	d	language:C++
 MPI_INFO_NULL	include/petsc/mpiuni/mpi.h	/^#define MPI_INFO_NULL /;"	d	language:C++
-MPI_INIT	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_INIT /;"	d	language:C++
-MPI_INITIALIZED	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_INITIALIZED /;"	d	language:C++
+MPI_INIT	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_INIT                  PETSC_MPI_INIT$/;"	d	language:C++
+MPI_INITIALIZED	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_INITIALIZED           PETSC_MPI_INITIALIZED$/;"	d	language:C++
 MPI_INT	include/petsc/mpiuni/mpi.h	/^#define MPI_INT /;"	d	language:C++
 MPI_INT16_T	include/petsc/mpiuni/mpi.h	/^#define MPI_INT16_T /;"	d	language:C++
 MPI_INT32_T	include/petsc/mpiuni/mpi.h	/^#define MPI_INT32_T /;"	d	language:C++
@@ -15172,9 +15290,9 @@
 MPI_INTEGER8	include/petsc/mpiuni/mpi.h	/^#define MPI_INTEGER8 /;"	d	language:C++
 MPI_IN_PLACE	include/petsc/mpiuni/mpi.h	/^#define MPI_IN_PLACE /;"	d	language:C++
 MPI_IN_PLACE	src/sys/mpiuni/f90-mod/mpiunimod.F90	/^         integer MPI_IN_PLACE$/;"	v	language:Fortran	module:mpiuni
-MPI_IPROBE	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_IPROBE /;"	d	language:C++
-MPI_IRECV	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_IRECV /;"	d	language:C++
-MPI_ISEND	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_ISEND /;"	d	language:C++
+MPI_IPROBE	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_IPROBE                PETSC_MPI_IPROBE$/;"	d	language:C++
+MPI_IRECV	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_IRECV                 PETSC_MPI_IRECV$/;"	d	language:C++
+MPI_ISEND	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_ISEND                 PETSC_MPI_ISEND$/;"	d	language:C++
 MPI_Iallgather	include/petsclog.h	/^    #define MPI_Iallgather(/;"	d	language:C++
 MPI_Iallgatherv	include/petsclog.h	/^    #define MPI_Iallgatherv(/;"	d	language:C++
 MPI_Iallreduce	include/petsc/mpiuni/mpi.h	/^#define MPI_Iallreduce(/;"	d	language:C++
@@ -15184,12 +15302,12 @@
 MPI_Igather	include/petsclog.h	/^    #define MPI_Igather(/;"	d	language:C++
 MPI_Igatherv	include/petsclog.h	/^    #define MPI_Igatherv(/;"	d	language:C++
 MPI_Info	include/petsc/mpiuni/mpi.h	/^typedef int MPI_Info;$/;"	t	language:C++	typeref:typename:int
-MPI_Init	include/petsc/mpiuni/mpi.h	/^#define MPI_Init /;"	d	language:C++
+MPI_Init	include/petsc/mpiuni/mpi.h	/^#define MPI_Init              Petsc_MPI_Init$/;"	d	language:C++
 MPI_Init	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_Init /;"	d	language:C++
 MPI_Init	src/sys/mpiuni/mpi.c	/^int MPI_Init(int *argc, char ***argv)$/;"	f	language:C	typeref:typename:int
-MPI_Init_thread	include/petsc/mpiuni/mpi.h	/^#define MPI_Init_thread /;"	d	language:C++
+MPI_Init_thread	include/petsc/mpiuni/mpi.h	/^#define MPI_Init_thread       Petsc_MPI_Init_thread$/;"	d	language:C++
 MPI_Init_thread	src/sys/mpiuni/mpi.c	/^int MPI_Init_thread(int *argc, char ***argv, int required, int *provided)$/;"	f	language:C	typeref:typename:int
-MPI_Initialized	include/petsc/mpiuni/mpi.h	/^#define MPI_Initialized /;"	d	language:C++
+MPI_Initialized	include/petsc/mpiuni/mpi.h	/^#define MPI_Initialized       Petsc_MPI_Initialized$/;"	d	language:C++
 MPI_Initialized	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_Initialized /;"	d	language:C++
 MPI_Initialized	src/sys/mpiuni/mpi.c	/^int MPI_Initialized(int *flag)$/;"	f	language:C	typeref:typename:int
 MPI_Intercomm_create	include/petsc/mpiuni/mpi.h	/^#define MPI_Intercomm_create(/;"	d	language:C++
@@ -15198,19 +15316,19 @@
 MPI_Iprobe	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_Iprobe /;"	d	language:C++
 MPI_Irecv	include/petsc/mpiuni/mpi.h	/^#define MPI_Irecv(/;"	d	language:C++
 MPI_Irecv	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_Irecv /;"	d	language:C++
-MPI_Irecv	include/petsclog.h	/^    #define MPI_Irecv(/;"	d	language:C++
-MPI_Irecv_c	include/petsclog.h	/^    #define MPI_Irecv_c(/;"	d	language:C++
+MPI_Irecv	include/petsclog.h	/^    #define MPI_Irecv(buf, count, datatype, source, tag, comm, request) ((petsc_irecv_ct++, 0) |/;"	d	language:C++
+MPI_Irecv_c	include/petsclog.h	/^    #define MPI_Irecv_c(buf, count, datatype, source, tag, comm, request) ((petsc_irecv_ct++, 0)/;"	d	language:C++
 MPI_Irsend	include/petsc/mpiuni/mpi.h	/^#define MPI_Irsend(/;"	d	language:C++
 MPI_Iscatter	include/petsclog.h	/^    #define MPI_Iscatter(/;"	d	language:C++
 MPI_Iscatterv	include/petsclog.h	/^    #define MPI_Iscatterv(/;"	d	language:C++
 MPI_Isend	include/petsc/mpiuni/mpi.h	/^#define MPI_Isend(/;"	d	language:C++
 MPI_Isend	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_Isend /;"	d	language:C++
-MPI_Isend	include/petsclog.h	/^    #define MPI_Isend(/;"	d	language:C++
-MPI_Isend_c	include/petsclog.h	/^    #define MPI_Isend_c(/;"	d	language:C++
+MPI_Isend	include/petsclog.h	/^    #define MPI_Isend(buf, count, datatype, dest, tag, comm, request) ((petsc_isend_ct++, 0) || /;"	d	language:C++
+MPI_Isend_c	include/petsclog.h	/^    #define MPI_Isend_c(buf, count, datatype, dest, tag, comm, request) ((petsc_isend_ct++, 0) |/;"	d	language:C++
 MPI_Issend	include/petsc/mpiuni/mpi.h	/^#define MPI_Issend(/;"	d	language:C++
 MPI_KEYVAL_INVALID	include/petsc/mpiuni/mpi.h	/^#define MPI_KEYVAL_INVALID /;"	d	language:C++
-MPI_Keyval_create	include/petsc/mpiuni/mpi.h	/^#define MPI_Keyval_create /;"	d	language:C++
-MPI_Keyval_free	include/petsc/mpiuni/mpi.h	/^#define MPI_Keyval_free /;"	d	language:C++
+MPI_Keyval_create	include/petsc/mpiuni/mpi.h	/^#define MPI_Keyval_create     Petsc_MPI_Keyval_create$/;"	d	language:C++
+MPI_Keyval_free	include/petsc/mpiuni/mpi.h	/^#define MPI_Keyval_free       Petsc_MPI_Keyval_free$/;"	d	language:C++
 MPI_LAND	include/petsc/mpiuni/mpi.h	/^#define MPI_LAND /;"	d	language:C++
 MPI_LONG	include/petsc/mpiuni/mpi.h	/^#define MPI_LONG /;"	d	language:C++
 MPI_LONG_DOUBLE	include/petsc/mpiuni/mpi.h	/^#define MPI_LONG_DOUBLE /;"	d	language:C++
@@ -15240,10 +15358,10 @@
 MPI_Op_create	include/petsc/mpiuni/mpi.h	/^#define MPI_Op_create(/;"	d	language:C++
 MPI_Op_f2c	include/petsc/mpiuni/mpi.h	/^#define MPI_Op_f2c(/;"	d	language:C++
 MPI_Op_free	include/petsc/mpiuni/mpi.h	/^#define MPI_Op_free(/;"	d	language:C++
-MPI_PACK	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_PACK /;"	d	language:C++
+MPI_PACK	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_PACK                  PETSC_MPI_PACK$/;"	d	language:C++
 MPI_PACKED	include/petsc/mpiuni/mpi.h	/^#define MPI_PACKED /;"	d	language:C++
-MPI_PACK_SIZE	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_PACK_SIZE /;"	d	language:C++
-MPI_PROBE	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_PROBE /;"	d	language:C++
+MPI_PACK_SIZE	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_PACK_SIZE             PETSC_MPI_PACK_SIZE$/;"	d	language:C++
+MPI_PROBE	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_PROBE                 PETSC_MPI_PROBE$/;"	d	language:C++
 MPI_PROC_NULL	include/petsc/mpiuni/mpi.h	/^#define MPI_PROC_NULL /;"	d	language:C++
 MPI_PROD	include/petsc/mpiuni/mpi.h	/^#define MPI_PROD /;"	d	language:C++
 MPI_Pack	include/petsc/mpiuni/mpi.h	/^#define MPI_Pack(/;"	d	language:C++
@@ -15253,39 +15371,39 @@
 MPI_Pcontrol	include/petsc/mpiuni/mpi.h	/^#define MPI_Pcontrol(/;"	d	language:C++
 MPI_Probe	include/petsc/mpiuni/mpi.h	/^#define MPI_Probe(/;"	d	language:C++
 MPI_Probe	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_Probe /;"	d	language:C++
-MPI_Query_thread	include/petsc/mpiuni/mpi.h	/^#define MPI_Query_thread /;"	d	language:C++
+MPI_Query_thread	include/petsc/mpiuni/mpi.h	/^#define MPI_Query_thread      Petsc_MPI_Query_thread$/;"	d	language:C++
 MPI_Query_thread	src/sys/mpiuni/mpi.c	/^int MPI_Query_thread(int *provided)$/;"	f	language:C	typeref:typename:int
-MPI_RECV	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_RECV /;"	d	language:C++
-MPI_REDUCE	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_REDUCE /;"	d	language:C++
-MPI_REDUCE_SCATTER	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_REDUCE_SCATTER /;"	d	language:C++
+MPI_RECV	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_RECV                  PETSC_MPI_RECV$/;"	d	language:C++
+MPI_REDUCE	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_REDUCE                PETSC_MPI_REDUCE$/;"	d	language:C++
+MPI_REDUCE_SCATTER	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_REDUCE_SCATTER        PETSC_MPI_REDUCE_SCATTER$/;"	d	language:C++
 MPI_REPLACE	include/petsc/mpiuni/mpi.h	/^#define MPI_REPLACE /;"	d	language:C++
-MPI_REQUEST_FREE	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_REQUEST_FREE /;"	d	language:C++
+MPI_REQUEST_FREE	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_REQUEST_FREE          PETSC_MPI_REQUEST_FREE$/;"	d	language:C++
 MPI_REQUEST_NULL	include/petsc/mpiuni/mpi.h	/^#define MPI_REQUEST_NULL /;"	d	language:C++
 MPI_Recv	include/petsc/mpiuni/mpi.h	/^#define MPI_Recv(/;"	d	language:C++
 MPI_Recv	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_Recv /;"	d	language:C++
-MPI_Recv	include/petsclog.h	/^    #define MPI_Recv(/;"	d	language:C++
-MPI_Recv_c	include/petsclog.h	/^    #define MPI_Recv_c(/;"	d	language:C++
+MPI_Recv	include/petsclog.h	/^    #define MPI_Recv(buf, count, datatype, source, tag, comm, status) ((petsc_recv_ct++, 0) || P/;"	d	language:C++
+MPI_Recv_c	include/petsclog.h	/^    #define MPI_Recv_c(buf, count, datatype, source, tag, comm, status) ((petsc_recv_ct++, 0) ||/;"	d	language:C++
 MPI_Recv_init	include/petsc/mpiuni/mpi.h	/^#define MPI_Recv_init(/;"	d	language:C++
 MPI_Reduce	include/petsc/mpiuni/mpi.h	/^#define MPI_Reduce(/;"	d	language:C++
 MPI_Reduce	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_Reduce /;"	d	language:C++
 MPI_Reduce_scatter	include/petsc/mpiuni/mpi.h	/^#define MPI_Reduce_scatter(/;"	d	language:C++
 MPI_Reduce_scatter	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_Reduce_scatter /;"	d	language:C++
-MPI_Reduce_scatter_block	include/petsclog.h	/^    #define MPI_Reduce_scatter_block(/;"	d	language:C++
+MPI_Reduce_scatter_block	include/petsclog.h	/^    #define MPI_Reduce_scatter_block(sendbuf, recvbuf, recvcount, datatype, op, comm) ((petsc_al/;"	d	language:C++
 MPI_Register_datarep	include/petsc/mpiuni/mpi.h	/^#define MPI_Register_datarep(/;"	d	language:C++
 MPI_Request	include/petsc/mpiuni/mpi.h	/^typedef int MPI_Request;$/;"	t	language:C++	typeref:typename:int
 MPI_Request_free	include/petsc/mpiuni/mpi.h	/^#define MPI_Request_free(/;"	d	language:C++
 MPI_Request_free	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_Request_free /;"	d	language:C++
 MPI_Rsend	include/petsc/mpiuni/mpi.h	/^#define MPI_Rsend(/;"	d	language:C++
 MPI_Rsend_init	include/petsc/mpiuni/mpi.h	/^#define MPI_Rsend_init(/;"	d	language:C++
-MPI_SCAN	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_SCAN /;"	d	language:C++
-MPI_SEND	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_SEND /;"	d	language:C++
-MPI_SENDRECV	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_SENDRECV /;"	d	language:C++
+MPI_SCAN	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_SCAN                  PETSC_MPI_SCAN$/;"	d	language:C++
+MPI_SEND	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_SEND                  PETSC_MPI_SEND$/;"	d	language:C++
+MPI_SENDRECV	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_SENDRECV              PETSC_MPI_SENDRECV$/;"	d	language:C++
 MPI_SHORT	include/petsc/mpiuni/mpi.h	/^#define MPI_SHORT /;"	d	language:C++
 MPI_SHORT_INT	include/petsc/mpiuni/mpi.h	/^#define MPI_SHORT_INT /;"	d	language:C++
 MPI_SIGNED_CHAR	include/petsc/mpiuni/mpi.h	/^#define MPI_SIGNED_CHAR /;"	d	language:C++
 MPI_SIMILAR	include/petsc/mpiuni/mpi.h	/^#define MPI_SIMILAR /;"	d	language:C++
 MPI_SOURCE	include/petsc/mpiuni/mpi.h	/^  int MPI_SOURCE, MPI_TAG, MPI_ERROR;$/;"	m	language:C++	struct:__anon413a31c30108	typeref:typename:int
-MPI_SSEND	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_SSEND /;"	d	language:C++
+MPI_SSEND	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_SSEND                 PETSC_MPI_SSEND$/;"	d	language:C++
 MPI_STATUSES_IGNORE	include/petsc/mpiuni/mpi.h	/^#define MPI_STATUSES_IGNORE /;"	d	language:C++
 MPI_STATUS_IGNORE	include/petsc/mpiuni/mpi.h	/^#define MPI_STATUS_IGNORE /;"	d	language:C++
 MPI_SUCCESS	include/petsc/mpiuni/mpi.h	/^#define MPI_SUCCESS /;"	d	language:C++
@@ -15301,8 +15419,8 @@
 MPI_Scatterv	include/petsclog.h	/^    #define MPI_Scatterv(/;"	d	language:C++
 MPI_Send	include/petsc/mpiuni/mpi.h	/^#define MPI_Send(/;"	d	language:C++
 MPI_Send	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_Send /;"	d	language:C++
-MPI_Send	include/petsclog.h	/^    #define MPI_Send(/;"	d	language:C++
-MPI_Send_c	include/petsclog.h	/^    #define MPI_Send_c(/;"	d	language:C++
+MPI_Send	include/petsclog.h	/^    #define MPI_Send(buf, count, datatype, dest, tag, comm) ((petsc_send_ct++, 0) || PetscMPITyp/;"	d	language:C++
+MPI_Send_c	include/petsclog.h	/^    #define MPI_Send_c(buf, count, datatype, dest, tag, comm) ((petsc_send_ct++, 0) || PetscMPIT/;"	d	language:C++
 MPI_Send_init	include/petsc/mpiuni/mpi.h	/^#define MPI_Send_init(/;"	d	language:C++
 MPI_Sendrecv	include/petsc/mpiuni/mpi.h	/^#define MPI_Sendrecv(/;"	d	language:C++
 MPI_Sendrecv	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_Sendrecv /;"	d	language:C++
@@ -15321,13 +15439,13 @@
 MPI_Status	include/petsc/mpiuni/mpi.h	/^} MPI_Status;$/;"	t	language:C++	typeref:struct:__anon413a31c30108
 MPI_TAG	include/petsc/mpiuni/mpi.h	/^  int MPI_SOURCE, MPI_TAG, MPI_ERROR;$/;"	m	language:C++	struct:__anon413a31c30108	typeref:typename:int
 MPI_TAG_UB	include/petsc/mpiuni/mpi.h	/^#define MPI_TAG_UB /;"	d	language:C++
-MPI_TEST	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_TEST /;"	d	language:C++
+MPI_TEST	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_TEST                  PETSC_MPI_TEST$/;"	d	language:C++
 MPI_THREAD_FUNNELED	include/petsc/mpiuni/mpi.h	/^#define MPI_THREAD_FUNNELED /;"	d	language:C++
 MPI_THREAD_MULTIPLE	include/petsc/mpiuni/mpi.h	/^#define MPI_THREAD_MULTIPLE /;"	d	language:C++
 MPI_THREAD_SERIALIZED	include/petsc/mpiuni/mpi.h	/^#define MPI_THREAD_SERIALIZED /;"	d	language:C++
 MPI_THREAD_SINGLE	include/petsc/mpiuni/mpi.h	/^#define MPI_THREAD_SINGLE /;"	d	language:C++
-MPI_TYPE_COMMIT	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_TYPE_COMMIT /;"	d	language:C++
-MPI_TYPE_STRUCT	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_TYPE_STRUCT /;"	d	language:C++
+MPI_TYPE_COMMIT	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_TYPE_COMMIT           PETSC_MPI_TYPE_COMMIT$/;"	d	language:C++
+MPI_TYPE_STRUCT	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_TYPE_STRUCT           PETSC_MPI_TYPE_STRUCT$/;"	d	language:C++
 MPI_Test	include/petsc/mpiuni/mpi.h	/^#define MPI_Test(/;"	d	language:C++
 MPI_Test	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_Test /;"	d	language:C++
 MPI_Test_cancelled	include/petsc/mpiuni/mpi.h	/^#define MPI_Test_cancelled(/;"	d	language:C++
@@ -15347,9 +15465,9 @@
 MPI_Type_f2c	include/petsc/mpiuni/mpi.h	/^#define MPI_Type_f2c(/;"	d	language:C++
 MPI_Type_free	include/petsc/mpiuni/mpi.h	/^#define MPI_Type_free(/;"	d	language:C++
 MPI_Type_free	include/petscsys.h	/^    #define MPI_Type_free(/;"	d	language:C++
-MPI_Type_get_contents	include/petsc/mpiuni/mpi.h	/^#define MPI_Type_get_contents /;"	d	language:C++
+MPI_Type_get_contents	include/petsc/mpiuni/mpi.h	/^#define MPI_Type_get_contents Petsc_MPI_Type_get_contents$/;"	d	language:C++
 MPI_Type_get_contents	src/sys/mpiuni/mpi.c	/^int MPI_Type_get_contents(MPI_Datatype datatype, int max_integers, int max_addresses, int max_da/;"	f	language:C	typeref:typename:int
-MPI_Type_get_envelope	include/petsc/mpiuni/mpi.h	/^#define MPI_Type_get_envelope /;"	d	language:C++
+MPI_Type_get_envelope	include/petsc/mpiuni/mpi.h	/^#define MPI_Type_get_envelope Petsc_MPI_Type_get_envelope$/;"	d	language:C++
 MPI_Type_get_envelope	src/sys/mpiuni/mpi.c	/^int MPI_Type_get_envelope(MPI_Datatype datatype, int *num_integers, int *num_addresses, int *num/;"	f	language:C	typeref:typename:int
 MPI_Type_get_extent	include/petsc/mpiuni/mpi.h	/^#define MPI_Type_get_extent(/;"	d	language:C++
 MPI_Type_hindexed	include/petsc/mpiuni/mpi.h	/^#define MPI_Type_hindexed(/;"	d	language:C++
@@ -15363,7 +15481,7 @@
 MPI_Type_vector	include/petsc/mpiuni/mpi.h	/^#define MPI_Type_vector(/;"	d	language:C++
 MPI_UNDEFINED	include/petsc/mpiuni/mpi.h	/^#define MPI_UNDEFINED /;"	d	language:C++
 MPI_UNEQUAL	include/petsc/mpiuni/mpi.h	/^#define MPI_UNEQUAL /;"	d	language:C++
-MPI_UNPACK	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_UNPACK /;"	d	language:C++
+MPI_UNPACK	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_UNPACK                PETSC_MPI_UNPACK$/;"	d	language:C++
 MPI_UNSIGNED	include/petsc/mpiuni/mpi.h	/^#define MPI_UNSIGNED /;"	d	language:C++
 MPI_UNSIGNED_CHAR	include/petsc/mpiuni/mpi.h	/^#define MPI_UNSIGNED_CHAR /;"	d	language:C++
 MPI_UNSIGNED_LONG	include/petsc/mpiuni/mpi.h	/^#define MPI_UNSIGNED_LONG /;"	d	language:C++
@@ -15372,26 +15490,28 @@
 MPI_Unpack	include/petsc/mpiuni/mpi.h	/^#define MPI_Unpack(/;"	d	language:C++
 MPI_Unpack	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_Unpack /;"	d	language:C++
 MPI_User_function	include/petsc/mpiuni/mpi.h	/^typedef void(MPI_User_function)(void *, void *, int *, MPI_Datatype *);$/;"	t	language:C++	typeref:typename:void ()(void *,void *,int *,MPI_Datatype *)
-MPI_WAIT	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_WAIT /;"	d	language:C++
-MPI_WAITALL	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_WAITALL /;"	d	language:C++
-MPI_WAITANY	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_WAITANY /;"	d	language:C++
-MPI_WTIME	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_WTIME /;"	d	language:C++
+MPI_WAIT	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_WAIT                  PETSC_MPI_WAIT$/;"	d	language:C++
+MPI_WAITALL	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_WAITALL               PETSC_MPI_WAITALL$/;"	d	language:C++
+MPI_WAITANY	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_WAITANY               PETSC_MPI_WAITANY$/;"	d	language:C++
+MPI_WTIME	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_WTIME                 PETSC_MPI_WTIME$/;"	d	language:C++
 MPI_Wait	include/petsc/mpiuni/mpi.h	/^#define MPI_Wait(/;"	d	language:C++
 MPI_Wait	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_Wait /;"	d	language:C++
-MPI_Wait	include/petsclog.h	/^    #define MPI_Wait(/;"	d	language:C++
+MPI_Wait	include/petsclog.h	/^    #define MPI_Wait(request, status) ((petsc_wait_ct++, petsc_sum_of_waits_ct++, 0) || MPI_Wait/;"	d	language:C++
 MPI_Waitall	include/petsc/mpiuni/mpi.h	/^#define MPI_Waitall(/;"	d	language:C++
 MPI_Waitall	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_Waitall /;"	d	language:C++
-MPI_Waitall	include/petsclog.h	/^    #define MPI_Waitall(/;"	d	language:C++
+MPI_Waitall	include/petsclog.h	/^    #define MPI_Waitall(count, array_of_requests, array_of_statuses) ((petsc_wait_all_ct++, pets/;"	d	language:C++
 MPI_Waitany	include/petsc/mpiuni/mpi.h	/^#define MPI_Waitany(/;"	d	language:C++
 MPI_Waitany	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_Waitany /;"	d	language:C++
-MPI_Waitany	include/petsclog.h	/^    #define MPI_Waitany(/;"	d	language:C++
+MPI_Waitany	include/petsclog.h	/^    #define MPI_Waitany(a, b, c, d) ((petsc_wait_any_ct++, petsc_sum_of_waits_ct++, 0) || MPI_Wa/;"	d	language:C++
 MPI_Waitsome	include/petsc/mpiuni/mpi.h	/^#define MPI_Waitsome(/;"	d	language:C++
 MPI_Wtick	include/petsc/mpiuni/mpi.h	/^#define MPI_Wtick(/;"	d	language:C++
-MPI_Wtime	include/petsc/mpiuni/mpi.h	/^#define MPI_Wtime /;"	d	language:C++
+MPI_Wtime	include/petsc/mpiuni/mpi.h	/^#define MPI_Wtime             Petsc_MPI_Wtime$/;"	d	language:C++
 MPI_Wtime	include/petsc/mpiuni/mpiunifdef.h	/^#define MPI_Wtime /;"	d	language:C++
 MPI_Wtime	src/benchmarks/makefile	/^MPI_Wtime: MPI_Wtime.o $/;"	t	language:Make
 MPI_Wtime	src/sys/mpiuni/mpitime.c	/^double MPI_Wtime(void)$/;"	f	language:C	typeref:typename:double
-MPI_sizeof	include/petsc/mpiuni/mpi.h	/^  #define MPI_sizeof(/;"	d	language:C++
+MPI_sizeof	include/petsc/mpiuni/mpi.h	/^  #define MPI_sizeof(datatype) ((datatype == MPIU___FLOAT128) ? (int)(2 * sizeof(double)) : MPI_/;"	d	language:C++
+MPI_sizeof	include/petsc/mpiuni/mpi.h	/^  #define MPI_sizeof(datatype) ((datatype == MPIU___FP16) ? (int)(2 * sizeof(char)) : MPI_sizeof/;"	d	language:C++
+MPI_sizeof	include/petsc/mpiuni/mpi.h	/^  #define MPI_sizeof(datatype) (MPI_sizeof_/;"	d	language:C++
 MPI_sizeof_default	include/petsc/mpiuni/mpi.h	/^#define MPI_sizeof_default(/;"	d	language:C++
 MPI_was_finalized	src/sys/mpiuni/mpi.c	/^static int MPI_was_finalized   = 0;$/;"	v	language:C	typeref:typename:int	file:
 MPI_was_initialized	src/sys/mpiuni/mpi.c	/^static int MPI_was_initialized = 0;$/;"	v	language:C	typeref:typename:int	file:
@@ -15501,7 +15621,7 @@
 MarkFromID_IncompatibleModes_UpdateLastWrite	src/sys/objects/device/interface/mark_dcontext.cxx	/^static PetscErrorCode MarkFromID_IncompatibleModes_UpdateLastWrite(MarkedObjectMap::mapped_type /;"	f	language:C++	typeref:typename:PetscErrorCode	file:
 MarkedObjectMap	src/sys/objects/device/interface/mark_dcontext.cxx	/^class MarkedObjectMap : public Petsc::RegisterFinalizeable<MarkedObjectMap> {$/;"	c	language:C++	file:
 MassFractionToMoleFraction	src/ts/tutorials/extchem.c	/^PetscErrorCode MassFractionToMoleFraction(User user, Vec massf, Vec *molef)$/;"	f	language:C	typeref:typename:PetscErrorCode
-Mat	include/petsc/finclude/petscmat.h	/^#define Mat /;"	d	language:C++
+Mat	include/petsc/finclude/petscmat.h	/^#define Mat type(tMat)/;"	d	language:C++
 Mat	include/petscmat.h	/^typedef struct _p_Mat *Mat;$/;"	t	language:C++	typeref:struct:_p_Mat *
 MatADAComputeDiagonal	src/tao/matrix/adamat.c	/^static PetscErrorCode MatADAComputeDiagonal(Mat mat)$/;"	f	language:C	typeref:typename:PetscErrorCode	file:
 MatAIJGetLocalMat	src/mat/impls/aij/mpi/mpiaij.c	/^PetscErrorCode MatAIJGetLocalMat(Mat A, Mat *A_loc)$/;"	f	language:C	typeref:typename:PetscErrorCode
@@ -16101,7 +16221,7 @@
 MatCreateSeqSELL	src/mat/impls/sell/seq/sell.c	/^PetscErrorCode MatCreateSeqSELL(MPI_Comm comm, PetscInt m, PetscInt n, PetscInt maxallocrow, con/;"	f	language:C	typeref:typename:PetscErrorCode
 MatCreateSeqSubMatrixWithRows_Private	src/mat/impls/aij/mpi/mpiaij.c	/^PetscErrorCode MatCreateSeqSubMatrixWithRows_Private(Mat P, IS rows, Mat *P_oth)$/;"	f	language:C	typeref:typename:PetscErrorCode
 MatCreateShell	src/mat/impls/shell/shell.c	/^PetscErrorCode MatCreateShell(MPI_Comm comm, PetscInt m, PetscInt n, PetscInt M, PetscInt N, voi/;"	f	language:C	typeref:typename:PetscErrorCode
-MatCreateShell	src/mat/tutorials/ex6f.F90	/^       INTERFACE MatCreateShell$/;"	i	language:Fortran	module:solver_context_interfaces
+MatCreateShell	src/mat/tutorials/ex6f.F90	/^       INTERFACE MatCreateShell$/;"	i	language:Fortran
 MatCreateSubMatrices	src/mat/interface/matrix.c	/^PetscErrorCode MatCreateSubMatrices(Mat mat, PetscInt n, const IS irow[], const IS icol[], MatRe/;"	f	language:C	typeref:typename:PetscErrorCode
 MatCreateSubMatricesMPI	src/mat/interface/matrix.c	/^PetscErrorCode MatCreateSubMatricesMPI(Mat mat, PetscInt n, const IS irow[], const IS icol[], Ma/;"	f	language:C	typeref:typename:PetscErrorCode
 MatCreateSubMatricesMPI_MPIAIJ	src/mat/impls/aij/mpi/mpiov.c	/^PetscErrorCode MatCreateSubMatricesMPI_MPIAIJ(Mat C, PetscInt ismax, const IS isrow[], const IS /;"	f	language:C	typeref:typename:PetscErrorCode
@@ -16231,7 +16351,6 @@
 MatCreate_SeqSBAIJ	src/mat/impls/sbaij/seq/sbaij.c	/^PETSC_EXTERN PetscErrorCode MatCreate_SeqSBAIJ(Mat B)$/;"	f	language:C	typeref:typename:PETSC_EXTERN PetscErrorCode
 MatCreate_SeqSELL	src/mat/impls/sell/seq/sell.c	/^PETSC_EXTERN PetscErrorCode MatCreate_SeqSELL(Mat B)$/;"	f	language:C	typeref:typename:PETSC_EXTERN PetscErrorCode
 MatCreate_Shell	src/mat/impls/shell/shell.c	/^PETSC_EXTERN PetscErrorCode MatCreate_Shell(Mat A)$/;"	f	language:C	typeref:typename:PETSC_EXTERN PetscErrorCode
-MatCtx	src/mat/tutorials/ex6f.F90	/^       TYPE :: MatCtx$/;"	t	language:Fortran	module:solver_context
 MatDFischer	src/tao/util/tao_util.c	/^PetscErrorCode MatDFischer(Mat jac, Vec X, Vec Con, Vec XL, Vec XU, Vec T1, Vec T2, Vec Da, Vec /;"	f	language:C	typeref:typename:PetscErrorCode
 MatDSFischer	src/tao/util/tao_util.c	/^PetscErrorCode MatDSFischer(Mat jac, Vec X, Vec Con, Vec XL, Vec XU, PetscReal mu, Vec T1, Vec T/;"	f	language:C	typeref:typename:PetscErrorCode
 MatDeltaFwdSensip	src/ts/impls/implicit/theta/theta.c	/^  Mat      MatDeltaFwdSensip;     \/* Increment of the forward sensitivity at stage *\/$/;"	m	language:C	struct:__anon653d3e9c0108	typeref:typename:Mat	file:
@@ -16589,7 +16708,7 @@
 MatEqual_SeqDense	src/mat/impls/dense/seq/dense.c	/^static PetscErrorCode MatEqual_SeqDense(Mat A1, Mat A2, PetscBool *flg)$/;"	f	language:C	typeref:typename:PetscErrorCode	file:
 MatEqual_SeqSBAIJ	src/mat/impls/sbaij/seq/sbaij2.c	/^PetscErrorCode MatEqual_SeqSBAIJ(Mat A, Mat B, PetscBool *flg)$/;"	f	language:C	typeref:typename:PetscErrorCode
 MatEqual_SeqSELL	src/mat/impls/sell/seq/sell.c	/^PetscErrorCode MatEqual_SeqSELL(Mat A, Mat B, PetscBool *flg)$/;"	f	language:C	typeref:typename:PetscErrorCode
-MatFDColoring	include/petsc/finclude/petscmat.h	/^#define MatFDColoring /;"	d	language:C++
+MatFDColoring	include/petsc/finclude/petscmat.h	/^#define MatFDColoring type(tMatFDColoring)/;"	d	language:C++
 MatFDColoring	include/petscmat.h	/^typedef struct _p_MatFDColoring *MatFDColoring;$/;"	t	language:C++	typeref:struct:_p_MatFDColoring *
 MatFDColoringApply	src/mat/matfd/fdmatrix.c	/^PetscErrorCode MatFDColoringApply(Mat J, MatFDColoring coloring, Vec x1, void *sctx)$/;"	f	language:C	typeref:typename:PetscErrorCode
 MatFDColoringApply_AIJ	src/mat/impls/aij/mpi/fdmpiaij.c	/^PetscErrorCode MatFDColoringApply_AIJ(Mat J, MatFDColoring coloring, Vec x1, void *sctx)$/;"	f	language:C	typeref:typename:PetscErrorCode
@@ -18102,7 +18221,7 @@
 MatNormalGetMat_NormalHermitian	src/mat/impls/normal/normmh.c	/^PetscErrorCode MatNormalGetMat_NormalHermitian(Mat A, Mat *M)$/;"	f	language:C	typeref:typename:PetscErrorCode
 MatNormalHermitianGetMat	src/mat/impls/normal/normmh.c	/^PetscErrorCode MatNormalHermitianGetMat(Mat A, Mat *M)$/;"	f	language:C	typeref:typename:PetscErrorCode
 MatNormal_DenseDestroy	src/mat/impls/normal/normm.c	/^PetscErrorCode MatNormal_DenseDestroy(void *ctx)$/;"	f	language:C	typeref:typename:PetscErrorCode
-MatNullSpace	include/petsc/finclude/petscmat.h	/^#define MatNullSpace /;"	d	language:C++
+MatNullSpace	include/petsc/finclude/petscmat.h	/^#define MatNullSpace type(tMatNullSpace)/;"	d	language:C++
 MatNullSpace	include/petscmat.h	/^typedef struct _p_MatNullSpace *MatNullSpace;$/;"	t	language:C++	typeref:struct:_p_MatNullSpace *
 MatNullSpaceCreate	src/mat/interface/matnull.c	/^PetscErrorCode MatNullSpaceCreate(MPI_Comm comm, PetscBool has_cnst, PetscInt n, const Vec vecs[/;"	f	language:C	typeref:typename:PetscErrorCode
 MatNullSpaceCreateRigidBody	src/mat/interface/matnull.c	/^PetscErrorCode MatNullSpaceCreateRigidBody(Vec coords, MatNullSpace *sp)$/;"	f	language:C	typeref:typename:PetscErrorCode
@@ -19112,7 +19231,7 @@
 MatShellCtx	src/snes/tests/ex69.c	/^} MatShellCtx;$/;"	t	language:C	typeref:struct:__anon3b2e7f630308	file:
 MatShellCtx	src/ts/tests/ex30.c	/^} MatShellCtx;$/;"	t	language:C	typeref:struct:__anon7ce906250108	file:
 MatShellGetContext	src/mat/impls/shell/shell.c	/^PetscErrorCode MatShellGetContext(Mat mat, void *ctx)$/;"	f	language:C	typeref:typename:PetscErrorCode
-MatShellGetContext	src/mat/tutorials/ex6f.F90	/^       INTERFACE MatShellGetContext$/;"	i	language:Fortran	module:solver_context_interfaces
+MatShellGetContext	src/mat/tutorials/ex6f.F90	/^       INTERFACE MatShellGetContext$/;"	i	language:Fortran
 MatShellGetContext_Shell	src/mat/impls/shell/shell.c	/^static PetscErrorCode MatShellGetContext_Shell(Mat mat, void *ctx)$/;"	f	language:C	typeref:typename:PetscErrorCode	file:
 MatShellGetOperation	src/mat/impls/shell/shell.c	/^PetscErrorCode MatShellGetOperation(Mat mat, MatOperation op, void (**g)(void))$/;"	f	language:C	typeref:typename:PetscErrorCode
 MatShellGetOperation_Shell	src/mat/impls/shell/shell.c	/^static PetscErrorCode MatShellGetOperation_Shell(Mat mat, MatOperation op, void (**f)(void))$/;"	f	language:C	typeref:typename:PetscErrorCode	file:
@@ -19126,7 +19245,7 @@
 MatShellPreZeroLeft	src/mat/impls/shell/shell.c	/^static PetscErrorCode MatShellPreZeroLeft(Mat A, Vec x, Vec *xx)$/;"	f	language:C	typeref:typename:PetscErrorCode	file:
 MatShellPreZeroRight	src/mat/impls/shell/shell.c	/^static PetscErrorCode MatShellPreZeroRight(Mat A, Vec x, Vec *xx)$/;"	f	language:C	typeref:typename:PetscErrorCode	file:
 MatShellSetContext	src/mat/impls/shell/shell.c	/^PetscErrorCode MatShellSetContext(Mat mat, void *ctx)$/;"	f	language:C	typeref:typename:PetscErrorCode
-MatShellSetContext	src/mat/tutorials/ex6f.F90	/^       INTERFACE MatShellSetContext$/;"	i	language:Fortran	module:solver_context_interfaces
+MatShellSetContext	src/mat/tutorials/ex6f.F90	/^       INTERFACE MatShellSetContext$/;"	i	language:Fortran
 MatShellSetContextDestroy	src/mat/impls/shell/shell.c	/^PetscErrorCode MatShellSetContextDestroy(Mat mat, PetscErrorCode (*f)(void *))$/;"	f	language:C	typeref:typename:PetscErrorCode
 MatShellSetContextDestroy_Shell	src/mat/impls/shell/shell.c	/^PetscErrorCode MatShellSetContextDestroy_Shell(Mat mat, PetscErrorCode (*f)(void *))$/;"	f	language:C	typeref:typename:PetscErrorCode
 MatShellSetContext_Shell	src/mat/impls/shell/shell.c	/^static PetscErrorCode MatShellSetContext_Shell(Mat mat, void *ctx)$/;"	f	language:C	typeref:typename:PetscErrorCode	file:
@@ -20591,7 +20710,7 @@
 OutputBIN	src/ts/tutorials/ex11_sa.c	/^static PetscErrorCode OutputBIN(DM dm, const char *filename, PetscViewer *viewer)$/;"	f	language:C	typeref:typename:PetscErrorCode	file:
 OutputVTK	src/ts/tutorials/ex11.c	/^static PetscErrorCode OutputVTK(DM dm, const char *filename, PetscViewer *viewer)$/;"	f	language:C	typeref:typename:PetscErrorCode	file:
 OutputVTK	src/ts/tutorials/ex11_sa.c	/^static PetscErrorCode OutputVTK(DM dm, const char *filename, PetscViewer *viewer)$/;"	f	language:C	typeref:typename:PetscErrorCode	file:
-Overview — PETSc for Python 3.18.4 documentation	src/binding/petsc4py/docs/usrman/overview.html	/^    <title>Overview — PETSc for Python 3.18.4 documentation<\/title>$/;"	j	language:HTML
+Overview — PETSc for Python 3.18.5 documentation	src/binding/petsc4py/docs/usrman/overview.html	/^    <title>Overview — PETSc for Python 3.18.5 documentation<\/title>$/;"	j	language:HTML
 Overview?	src/binding/petsc4py/docs/usrman/overview.html	/^<h1>Overview<a class="headerlink" href="#overview" title="Permalink to this heading">?<\/a><\/h/;"	h	language:HTML
 P	include/petsc/private/dmdaimpl.h	/^  PetscInt              M, N, P;                \/* array dimensions *\/$/;"	m	language:C++	struct:__anona748a20e0108	typeref:typename:PetscInt
 P	include/petsc/private/petscelemental.h	/^  El::DistPermutation             *P, *Q;$/;"	m	language:C++	struct:__anon04791b9c0108	typeref:typename:El::DistPermutation *
@@ -20672,7 +20791,7 @@
 PBLASgemv_	include/petsc/private/petscscalapack.h	/^#define PBLASgemv_ /;"	d	language:C++
 PBLAStran_	include/petsc/private/petscscalapack.h	/^  #define PBLAStran_ /;"	d	language:C++
 PBiCGStab	src/ksp/pc/impls/amgx/amgx.cxx	/^  PBiCGStab,$/;"	e	language:C++	enum:AmgXSmoother	file:
-PC	include/petsc/finclude/petscpc.h	/^#define PC /;"	d	language:C++
+PC	include/petsc/finclude/petscpc.h	/^#define PC type(tPC)/;"	d	language:C++
 PC	include/petscpctypes.h	/^typedef struct _p_PC *PC;$/;"	t	language:C++	typeref:struct:_p_PC *
 PCAMGX	include/petsc/finclude/petscpc.h	/^#define PCAMGX /;"	d	language:C++
 PCAMGX	include/petscpctypes.h	/^#define PCAMGX /;"	d	language:C++
@@ -23390,7 +23509,7 @@
 PETSC_FALSE	include/petscsystypes.h	/^  PETSC_FALSE,$/;"	e	language:C++	enum:__anon6bcfb2210203
 PETSC_FCOPY_H	src/sys/utils/ftn-kernels/fcopy.h	/^#define PETSC_FCOPY_H$/;"	d	language:C++
 PETSC_FGMRESIMPL_H	src/ksp/ksp/impls/gmres/fgmres/fgmresimpl.h	/^#define PETSC_FGMRESIMPL_H$/;"	d	language:C++
-PETSC_FIRST_ARG	include/petscmacros.h	/^#define PETSC_FIRST_ARG(/;"	d	language:C++
+PETSC_FIRST_ARG	include/petscmacros.h	/^#define PETSC_FIRST_ARG(args)                                                                   /;"	d	language:C++
 PETSC_FIRST_ARG_	include/petscmacros.h	/^#define PETSC_FIRST_ARG_(/;"	d	language:C++
 PETSC_FLOAT	include/petscsystypes.h	/^  PETSC_FLOAT            = 5,$/;"	e	language:C++	enum:__anon6bcfb2210503
 PETSC_FLOAT_SIZE	src/sys/objects/ptype.c	/^  PETSC_FLOAT_SIZE       = sizeof(float),$/;"	e	language:C	enum:__anonbdf514a60103	file:
@@ -23415,7 +23534,7 @@
 PETSC_FP_TRAP_ON	include/petscerror.h	/^#define PETSC_FP_TRAP_ON /;"	d	language:C++
 PETSC_FREESPACE_H	src/mat/utils/freespace.h	/^#define PETSC_FREESPACE_H$/;"	d	language:C++
 PETSC_FUNCTION	include/petscsystypes.h	/^  PETSC_FUNCTION         = 12,$/;"	e	language:C++	enum:__anon6bcfb2210503
-PETSC_FUNCTION_NAME	include/petscmacros.h	/^  #define PETSC_FUNCTION_NAME /;"	d	language:C++
+PETSC_FUNCTION_NAME	include/petscmacros.h	/^  #define PETSC_FUNCTION_NAME PETSC_FUNCTION_NAME_/;"	d	language:C++
 PETSC_GMRESIMPL_H	src/ksp/ksp/impls/gmres/gmresimpl.h	/^#define PETSC_GMRESIMPL_H$/;"	d	language:C++
 PETSC_GMSH_EXE	src/dm/impls/plex/tests/ex99.c	/^  #define PETSC_GMSH_EXE /;"	d	language:C	file:
 PETSC_GOOGLE_API_KEY	src/sys/webclient/google.c	/^#define PETSC_GOOGLE_API_KEY /;"	d	language:C	file:
@@ -23469,7 +23588,7 @@
 PETSC_INFO_COMM_ALL	include/petsclog.h	/^  PETSC_INFO_COMM_ALL       = -1,$/;"	e	language:C++	enum:__anone6530a8f0103
 PETSC_INFO_COMM_NO_SELF	include/petsclog.h	/^  PETSC_INFO_COMM_NO_SELF   = 0,$/;"	e	language:C++	enum:__anone6530a8f0103
 PETSC_INFO_COMM_ONLY_SELF	include/petsclog.h	/^  PETSC_INFO_COMM_ONLY_SELF = 1$/;"	e	language:C++	enum:__anone6530a8f0103
-PETSC_INLINE	include/petscmacros.h	/^#define PETSC_INLINE /;"	d	language:C++
+PETSC_INLINE	include/petscmacros.h	/^#define PETSC_INLINE        PETSC_DEPRECATED_MACRO("GCC warning \\"PETSC_INLINE /;"	d	language:C++
 PETSC_INT	include/petscsystypes.h	/^  PETSC_INT              = 16,$/;"	e	language:C++	enum:__anon6bcfb2210503
 PETSC_INT64	include/petscsystypes.h	/^  PETSC_INT64            = 17,$/;"	e	language:C++	enum:__anon6bcfb2210503
 PETSC_INT64_SIZE	src/sys/objects/ptype.c	/^  PETSC_INT64_SIZE       = sizeof(PetscInt64),$/;"	e	language:C	enum:__anonbdf514a60103	file:
@@ -23580,11 +23699,11 @@
 PETSC_P4EST_ASSERT	src/dm/impls/forest/p4est/petsc_p4est_package.h	/^  #define PETSC_P4EST_ASSERT(/;"	d	language:C++
 PETSC_P4EST_PACKAGE_H	src/dm/impls/forest/p4est/petsc_p4est_package.h	/^#define PETSC_P4EST_PACKAGE_H$/;"	d	language:C++
 PETSC_PACKIMPL_H	src/dm/impls/composite/packimpl.h	/^#define PETSC_PACKIMPL_H$/;"	d	language:C++
-PETSC_PASTE2	include/petscblaslapack_mangle.h	/^#define PETSC_PASTE2(/;"	d	language:C++
+PETSC_PASTE2	include/petscblaslapack_mangle.h	/^#define PETSC_PASTE2(a, b)     PETSC_PASTE2_/;"	d	language:C++
 PETSC_PASTE2_	include/petscblaslapack_mangle.h	/^#define PETSC_PASTE2_(/;"	d	language:C++
-PETSC_PASTE3	include/petscblaslapack_mangle.h	/^#define PETSC_PASTE3(/;"	d	language:C++
+PETSC_PASTE3	include/petscblaslapack_mangle.h	/^#define PETSC_PASTE3(a, b, c)  PETSC_PASTE3_/;"	d	language:C++
 PETSC_PASTE3_	include/petscblaslapack_mangle.h	/^#define PETSC_PASTE3_(/;"	d	language:C++
-PETSC_PASTE4	include/petsc/private/petscscalapack.h	/^#define PETSC_PASTE4(/;"	d	language:C++
+PETSC_PASTE4	include/petsc/private/petscscalapack.h	/^#define PETSC_PASTE4(a, b, c, d)  PETSC_PASTE4_/;"	d	language:C++
 PETSC_PASTE4_	include/petsc/private/petscscalapack.h	/^#define PETSC_PASTE4_(/;"	d	language:C++
 PETSC_PCBDDCIMPL_H	include/petsc/private/pcbddcimpl.h	/^#define PETSC_PCBDDCIMPL_H$/;"	d	language:C++
 PETSC_PCBDDCPRIVATEIMPL_H	include/petsc/private/pcbddcprivateimpl.h	/^#define PETSC_PCBDDCPRIVATEIMPL_H$/;"	d	language:C++
@@ -23613,7 +23732,7 @@
 PETSC_RESTRICT	include/petscmacros.h	/^  #define PETSC_RESTRICT /;"	d	language:C++
 PETSC_RESTRICT	src/snes/tutorials/ex48.c	/^  #define PETSC_RESTRICT$/;"	d	language:C	file:
 PETSC_REST_ARG	include/petscmacros.h	/^#define PETSC_REST_ARG(/;"	d	language:C++
-PETSC_REST_HELPER	include/petscmacros.h	/^#define PETSC_REST_HELPER(/;"	d	language:C++
+PETSC_REST_HELPER	include/petscmacros.h	/^#define PETSC_REST_HELPER(qty, ...)  PETSC_REST_HELPER2/;"	d	language:C++
 PETSC_REST_HELPER2	include/petscmacros.h	/^#define PETSC_REST_HELPER2(/;"	d	language:C++
 PETSC_REST_HELPER_ONE	include/petscmacros.h	/^#define PETSC_REST_HELPER_ONE(/;"	d	language:C++
 PETSC_REST_HELPER_TWOORMORE	include/petscmacros.h	/^#define PETSC_REST_HELPER_TWOORMORE(/;"	d	language:C++
@@ -23677,7 +23796,7 @@
 PETSC_SR_REDUCE_MIN	include/petsc/private/petscimpl.h	/^  PETSC_SR_REDUCE_MIN = 2$/;"	e	language:C++	enum:__anonbd63bb570603
 PETSC_SR_REDUCE_SUM	include/petsc/private/petscimpl.h	/^  PETSC_SR_REDUCE_SUM = 0,$/;"	e	language:C++	enum:__anonbd63bb570603
 PETSC_STATIC_ARRAY_LENGTH	include/petscmacros.h	/^#define PETSC_STATIC_ARRAY_LENGTH(/;"	d	language:C++
-PETSC_STATIC_INLINE	include/petscmacros.h	/^#define PETSC_STATIC_INLINE /;"	d	language:C++
+PETSC_STATIC_INLINE	include/petscmacros.h	/^#define PETSC_STATIC_INLINE PETSC_DEPRECATED_MACRO("GCC warning \\"PETSC_STATIC_INLINE /;"	d	language:C++
 PETSC_STDERR	include/petscsys.h	/^PETSC_EXTERN FILE *PETSC_STDERR;$/;"	v	language:C++	typeref:typename:PETSC_EXTERN FILE *
 PETSC_STDERR	src/sys/fileio/mprint.c	/^FILE *PETSC_STDERR = NULL;$/;"	v	language:C	typeref:typename:FILE *
 PETSC_STDOUT	include/petscsys.h	/^PETSC_EXTERN FILE *PETSC_STDOUT;$/;"	v	language:C++	typeref:typename:PETSC_EXTERN FILE *
@@ -23723,7 +23842,7 @@
 PETSC_USING_HCC	include/petscdevice_hip.h	/^  #define PETSC_USING_HCC /;"	d	language:C++
 PETSC_USING_NVCC	include/petscdevice_cuda.h	/^  #define PETSC_USING_NVCC /;"	d	language:C++
 PETSC_VECNESTIMPL_H	src/vec/vec/impls/nest/vecnestimpl.h	/^#define PETSC_VECNESTIMPL_H$/;"	d	language:C++
-PETSC_VERSION_	include/petscversion.h	/^#define PETSC_VERSION_ /;"	d	language:C++
+PETSC_VERSION_	include/petscversion.h	/^#define PETSC_VERSION_ PETSC_VERSION_E/;"	d	language:C++
 PETSC_VERSION_DATE	include/petscversion.h	/^#define PETSC_VERSION_DATE /;"	d	language:C++
 PETSC_VERSION_DATE_GIT	include/petscversion.h	/^#define PETSC_VERSION_DATE_GIT /;"	d	language:C++
 PETSC_VERSION_EQ	include/petscversion.h	/^#define PETSC_VERSION_EQ(/;"	d	language:C++
@@ -23796,7 +23915,7 @@
 PETSC_VIEWER_HDF5_VIZ	include/petscviewer.h	/^  PETSC_VIEWER_HDF5_VIZ,$/;"	e	language:C++	enum:__anon1c710a1f0203
 PETSC_VIEWER_HDF5_XDMF	include/petscviewer.h	/^  PETSC_VIEWER_HDF5_XDMF,$/;"	e	language:C++	enum:__anon1c710a1f0203
 PETSC_VIEWER_LOAD_BALANCE	include/petscviewer.h	/^  PETSC_VIEWER_LOAD_BALANCE,$/;"	e	language:C++	enum:__anon1c710a1f0203
-PETSC_VIEWER_MATHEMATICA_WORLD	include/petscviewer.h	/^#define PETSC_VIEWER_MATHEMATICA_WORLD /;"	d	language:C++
+PETSC_VIEWER_MATHEMATICA_WORLD	include/petscviewer.h	/^#define PETSC_VIEWER_MATHEMATICA_WORLD (PetscViewerInitializeMathematicaWorld_Private(), PETSC_V/;"	d	language:C++
 PETSC_VIEWER_MATHEMATICA_WORLD_PRIVATE	include/petscviewer.h	/^PETSC_EXTERN PetscViewer    PETSC_VIEWER_MATHEMATICA_WORLD_PRIVATE;$/;"	v	language:C++	typeref:typename:PETSC_EXTERN PetscViewer
 PETSC_VIEWER_MATHEMATICA_WORLD_PRIVATE	src/sys/classes/viewer/impls/mathematica/mathematica.c	/^PetscViewer  PETSC_VIEWER_MATHEMATICA_WORLD_PRIVATE = NULL;$/;"	v	language:C	typeref:typename:PetscViewer
 PETSC_VIEWER_MATLAB_	src/sys/classes/viewer/impls/matlab/vmatlab.c	/^PetscViewer PETSC_VIEWER_MATLAB_(MPI_Comm comm)$/;"	f	language:C	typeref:typename:PetscViewer
@@ -23874,7 +23993,7 @@
 PETSc Linear Solver Selection	share/petsc/saws/linearsolveroptions.html	/^      <h1> PETSc Linear Solver Selection <\/h1>$/;"	h	language:HTML
 PETSc Solver Selection	share/petsc/saws/linearsolveroptions.html	/^    <title>PETSc Solver Selection<\/title>$/;"	j	language:HTML
 PETSc for Python	src/binding/petsc4py/docs/apiref/frames.html	/^  <title> PETSc for Python <\/title>$/;"	j	language:HTML
-PETSc for Python — PETSc for Python 3.18.4 documentation	src/binding/petsc4py/docs/usrman/manual.html	/^    <title>PETSc for Python — PETSc for Python 3.18.4 documentation<\/title>$/;"	j	language:HTML
+PETSc for Python — PETSc for Python 3.18.5 documentation	src/binding/petsc4py/docs/usrman/manual.html	/^    <title>PETSc for Python — PETSc for Python 3.18.5 documentation<\/title>$/;"	j	language:HTML
 PETSc for Python?	src/binding/petsc4py/docs/usrman/manual.html	/^<h1>PETSc for Python<a class="headerlink" href="#petsc-for-python" title="Permalink to this head/;"	h	language:HTML
 PETScExample	src/benchmarks/benchmarkExample.py	/^class PETScExample(object):$/;"	c	language:Python
 PETScParseFortranArgs_Private	src/sys/objects/ftn-custom/zstart.c	/^PetscErrorCode PETScParseFortranArgs_Private(int *argc,char ***argv)$/;"	f	language:C	typeref:typename:PetscErrorCode
@@ -24426,7 +24545,7 @@
 PetscCallHIPSPARSE	include/petscdevice_hip.h	/^    #define PetscCallHIPSPARSE(/;"	d	language:C++
 PetscCallMKL	src/mat/impls/baij/seq/baijmkl/baijmkl.h	/^#define PetscCallMKL(/;"	d	language:C++
 PetscCallMKLSparse	src/mat/tests/ex237.c	/^  #define PetscCallMKLSparse(/;"	d	language:C	file:
-PetscCallMMG	src/dm/impls/plex/adaptors/mmgcommon.h	/^#define PetscCallMMG(/;"	d	language:C++
+PetscCallMMG	src/dm/impls/plex/adaptors/mmgcommon.h	/^#define PetscCallMMG(...)             PetscCallMMG_/;"	d	language:C++
 PetscCallMMG_NONSTANDARD	src/dm/impls/plex/adaptors/mmgcommon.h	/^#define PetscCallMMG_NONSTANDARD(/;"	d	language:C++
 PetscCallMMG_Private	src/dm/impls/plex/adaptors/mmgcommon.h	/^#define PetscCallMMG_Private(/;"	d	language:C++
 PetscCallMPI	include/petsc/finclude/petscsys.h	/^#define PetscCallMPI(/;"	d	language:C++
@@ -24437,7 +24556,7 @@
 PetscCallPARMETIS	src/mat/partition/impls/pmetis/pmetis.c	/^#define PetscCallPARMETIS(/;"	d	language:C	file:
 PetscCallPARMETIS	src/mat/tests/ex152.c	/^#define PetscCallPARMETIS(/;"	d	language:C	file:
 PetscCallPTSCOTCH	src/dm/partitioner/impls/ptscotch/partptscotch.c	/^  #define PetscCallPTSCOTCH(/;"	d	language:C	file:
-PetscCallParmetis	src/mat/partition/impls/pmetis/pmetis.c	/^#define PetscCallParmetis(/;"	d	language:C	file:
+PetscCallParmetis	src/mat/partition/impls/pmetis/pmetis.c	/^#define PetscCallParmetis(func, args) PetscCallParmetis_/;"	d	language:C	file:
 PetscCallParmetis_	src/mat/partition/impls/pmetis/pmetis.c	/^#define PetscCallParmetis_(/;"	d	language:C	file:
 PetscCallQ	include/petsc/private/petscfptimpl.h	/^#define PetscCallQ(/;"	d	language:C++
 PetscCallSAWs	include/petscviewersaws.h	/^#define PetscCallSAWs(/;"	d	language:C++
@@ -24540,11 +24659,12 @@
 PetscComplex	include/petscsystypes.h	/^typedef petsccomplexlib::complex<double> PetscComplex;$/;"	t	language:C++	typeref:typename:petsccomplexlib::complex<double>
 PetscComplex	include/petscsystypes.h	/^typedef petsccomplexlib::complex<float> PetscComplex;$/;"	t	language:C++	typeref:typename:petsccomplexlib::complex<float>
 PetscComposedQuantitiesDestroy	src/sys/objects/destroy.c	/^PetscErrorCode PetscComposedQuantitiesDestroy(PetscObject obj)$/;"	f	language:C	typeref:typename:PetscErrorCode
-PetscConcat	include/petscmacros.h	/^#define PetscConcat(/;"	d	language:C++
+PetscConcat	include/petscmacros.h	/^#define PetscConcat(x, y)  PetscConcat_/;"	d	language:C++
 PetscConcat_	include/petscmacros.h	/^#define PetscConcat_(/;"	d	language:C++
 PetscConfig	src/binding/petsc4py/conf/baseconf.py	/^class PetscConfig:$/;"	c	language:Python
 PetscConj	include/petsc/finclude/petscsys.h	/^#define PetscConj(/;"	d	language:C++
 PetscConj	include/petscmath.h	/^  #define PetscConj(/;"	d	language:C++
+PetscConj	include/petscmath.h	/^  #define PetscConj(a)         PetscConjC/;"	d	language:C++
 PetscConjComplex	include/petscmath.h	/^      #define PetscConjComplex(/;"	d	language:C++
 PetscConjComplex	include/petscmath.h	/^    #define PetscConjComplex(/;"	d	language:C++
 PetscContainer	include/petscsystypes.h	/^typedef struct _p_PetscContainer *PetscContainer;$/;"	t	language:C++	typeref:struct:_p_PetscContainer *
@@ -24557,7 +24677,7 @@
 PetscContainerUserDestroy_PetscFEGeom	src/dm/dt/fe/tests/ex1.c	/^static PetscErrorCode PetscContainerUserDestroy_PetscFEGeom(void *ctx)$/;"	f	language:C	typeref:typename:PetscErrorCode	file:
 PetscContainerUserDestroy_PetscFEGeom	src/dm/dt/fe/tests/ex2.c	/^static PetscErrorCode PetscContainerUserDestroy_PetscFEGeom(void *ctx)$/;"	f	language:C	typeref:typename:PetscErrorCode	file:
 PetscContainerUserDestroy_PetscFEGeom	src/dm/impls/plex/plexfem.c	/^static PetscErrorCode PetscContainerUserDestroy_PetscFEGeom(void *ctx)$/;"	f	language:C	typeref:typename:PetscErrorCode	file:
-PetscConvEst	include/petsc/finclude/petscsnes.h	/^#define PetscConvEst /;"	d	language:C++
+PetscConvEst	include/petsc/finclude/petscsnes.h	/^#define PetscConvEst type(tPetscConvEst)/;"	d	language:C++
 PetscConvEst	include/petscconvest.h	/^typedef struct _p_PetscConvEst *PetscConvEst;$/;"	t	language:C++	typeref:struct:_p_PetscConvEst *
 PetscConvEstComputeError	src/snes/utils/convest.c	/^PetscErrorCode PetscConvEstComputeError(PetscConvEst ce, PetscInt r, DM dm, Vec u, PetscReal err/;"	f	language:C	typeref:typename:PetscErrorCode
 PetscConvEstComputeErrorSNES_Private	src/snes/utils/convest.c	/^static PetscErrorCode PetscConvEstComputeErrorSNES_Private(PetscConvEst ce, PetscInt r, DM dm, V/;"	f	language:C	typeref:typename:PetscErrorCode	file:
@@ -24928,11 +25048,11 @@
 PetscDefaultFPTrap	src/sys/error/fp.c	/^void PetscDefaultFPTrap(int sig, siginfo_t *scp, ucontext_t *uap)$/;"	f	language:C	typeref:typename:void
 PetscDefaultHipStream	include/petscdevice_hip.h	/^PETSC_EXTERN hipStream_t    PetscDefaultHipStream; \/\/ The default stream used by PETSc$/;"	v	language:C++	typeref:typename:PETSC_EXTERN hipStream_t
 PetscDefaultHipStream	src/sys/objects/pinit.c	/^hipStream_t PetscDefaultHipStream = NULL;$/;"	v	language:C	typeref:typename:hipStream_t
-PetscDefined	include/petscmacros.h	/^  #define PetscDefined(/;"	d	language:C++
-PetscDefined_	include/petscmacros.h	/^  #define PetscDefined_(/;"	d	language:C++
-PetscDefined__	include/petscmacros.h	/^  #define PetscDefined__(/;"	d	language:C++
-PetscDefined__take_second	include/petscmacros.h	/^  #define PetscDefined__take_second(/;"	d	language:C++
-PetscDefined__take_second_expand	include/petscmacros.h	/^  #define PetscDefined__take_second_expand(/;"	d	language:C++
+PetscDefined	include/petscmacros.h	/^  #define PetscDefined(def)                                     PetscDefined_/;"	d	language:C++
+PetscDefined_	include/petscmacros.h	/^  #define PetscDefined_(value)                                  PetscDefined__(PetscConcat_(Pets/;"	d	language:C++
+PetscDefined__	include/petscmacros.h	/^  #define PetscDefined__(arg1_or_junk)                          PetscDefined__t/;"	d	language:C++
+PetscDefined__take_second	include/petscmacros.h	/^  #define PetscDefined__take_second(...)                        PetscDefined__take_second_/;"	d	language:C++
+PetscDefined__take_second_expand	include/petscmacros.h	/^  #define PetscDefined__take_second_expand(args)                PetscDefined__take_second_expand/;"	d	language:C++
 PetscDefined__take_second_expanded	include/petscmacros.h	/^  #define PetscDefined__take_second_expanded(/;"	d	language:C++
 PetscDefined_arg_	include/petscmacros.h	/^  #define PetscDefined_arg_ /;"	d	language:C++
 PetscDefined_arg_1	include/petscmacros.h	/^  #define PetscDefined_arg_1 /;"	d	language:C++
@@ -24995,7 +25115,7 @@
 PetscDeviceContextGetStreamHandle_Internal	include/petsc/private/deviceimpl.h	/^static inline PetscErrorCode PetscDeviceContextGetStreamHandle_Internal(PetscDeviceContext dctx,/;"	f	language:C++	typeref:typename:PetscErrorCode
 PetscDeviceContextGetStreamType	include/petscdevice.h	/^  #define PetscDeviceContextGetStreamType(/;"	d	language:C++
 PetscDeviceContextGetStreamType	src/sys/objects/device/interface/dcontext.cxx	/^PetscErrorCode PetscDeviceContextGetStreamType(PetscDeviceContext dctx, PetscStreamType *type)$/;"	f	language:C++	typeref:typename:PetscErrorCode
-PetscDeviceContextJoin	include/petscdevice.h	/^  #define PetscDeviceContextJoin(/;"	d	language:C++
+PetscDeviceContextJoin	include/petscdevice.h	/^  #define PetscDeviceContextJoin(PetscDeviceContextp, PetscInt, PetscDeviceContextJoinM/;"	d	language:C++
 PetscDeviceContextJoin	src/sys/objects/device/interface/dcontext.cxx	/^PetscErrorCode PetscDeviceContextJoin(PetscDeviceContext dctx, PetscInt n, PetscDeviceContextJoi/;"	f	language:C++	typeref:typename:PetscErrorCode
 PetscDeviceContextJoinMode	include/petscdevicetypes.h	/^} PetscDeviceContextJoinMode;$/;"	t	language:C++	typeref:enum:__anonc4f6d6b20703
 PetscDeviceContextJoinModes	include/petscdevicetypes.h	/^PETSC_EXTERN const char *const PetscDeviceContextJoinModes[];$/;"	v	language:C++	typeref:typename:PETSC_EXTERN const char * const[]
@@ -25647,7 +25767,7 @@
 PetscExpComplex	include/petscmath.h	/^    #define PetscExpComplex(/;"	d	language:C++
 PetscExpReal	include/petscmath.h	/^  #define PetscExpReal(/;"	d	language:C++
 PetscExpScalar	include/petscmath.h	/^  #define PetscExpScalar(/;"	d	language:C++
-PetscExpand	include/petscmacros.h	/^#define PetscExpand(/;"	d	language:C++
+PetscExpand	include/petscmacros.h	/^#define PetscExpand(...)  PetscExpand_/;"	d	language:C++
 PetscExpandToNothing	include/petscmacros.h	/^  #define PetscExpandToNothing(/;"	d	language:C++
 PetscExpand_	include/petscmacros.h	/^#define PetscExpand_(/;"	d	language:C++
 PetscExternalHelpFunction	src/sys/objects/init.c	/^PetscErrorCode (*PetscExternalHelpFunction)(MPI_Comm)    = NULL;$/;"	v	language:C	typeref:typename:PetscErrorCode (*)(MPI_Comm)
@@ -25922,7 +26042,7 @@
 PetscFreeSpaceDestroy	src/mat/utils/freespace.c	/^PetscErrorCode PetscFreeSpaceDestroy(PetscFreeSpaceList head)$/;"	f	language:C	typeref:typename:PetscErrorCode
 PetscFreeSpaceGet	src/mat/utils/freespace.c	/^PetscErrorCode PetscFreeSpaceGet(PetscInt n, PetscFreeSpaceList *list)$/;"	f	language:C	typeref:typename:PetscErrorCode
 PetscFreeSpaceList	src/mat/utils/freespace.h	/^typedef struct _n_PetscFreeSpaceList *PetscFreeSpaceList;$/;"	t	language:C++	typeref:struct:_n_PetscFreeSpaceList *
-PetscFreeWithMemType	src/vec/is/sf/tests/ex1k.kokkos.cxx	/^#define PetscFreeWithMemType(/;"	d	language:C++	file:
+PetscFreeWithMemType	src/vec/is/sf/tests/ex1k.kokkos.cxx	/^#define PetscFreeWithMemType(t, p) ((p) && (PetscFreeWithMemType_/;"	d	language:C++	file:
 PetscFreeWithMemType_Private	src/vec/is/sf/tests/ex1k.kokkos.cxx	/^static inline PetscErrorCode PetscFreeWithMemType_Private(PetscMemType mtype, void *ptr)$/;"	f	language:C++	typeref:typename:PetscErrorCode	file:
 PetscFunctionBegin	include/petscerror.h	/^  #define PetscFunctionBegin /;"	d	language:C++
 PetscFunctionBegin	include/petscerror.h	/^  #define PetscFunctionBegin$/;"	d	language:C++
@@ -25934,13 +26054,13 @@
 PetscFunctionGenerator	src/mat/impls/h2opus/cuda/math2opus.cu	/^  PetscFunctionGenerator(PetscFunctionGenerator &other)$/;"	f	language:C
 PetscFunctionList	include/petsc/finclude/petscsys.h	/^#define PetscFunctionList /;"	d	language:C++
 PetscFunctionList	include/petscsystypes.h	/^typedef struct _n_PetscFunctionList *PetscFunctionList;$/;"	t	language:C++	typeref:struct:_n_PetscFunctionList *
-PetscFunctionListAdd	include/petscsys.h	/^#define PetscFunctionListAdd(/;"	d	language:C++
+PetscFunctionListAdd	include/petscsys.h	/^#define PetscFunctionListAdd(list, name, fptr) PetscFunctionListAdd_/;"	d	language:C++
 PetscFunctionListAdd_Private	src/sys/dll/reg.c	/^PETSC_EXTERN PetscErrorCode PetscFunctionListAdd_Private(PetscFunctionList *fl, const char name[/;"	f	language:C	typeref:typename:PETSC_EXTERN PetscErrorCode
 PetscFunctionListClear	src/sys/dll/reg.c	/^PetscErrorCode PetscFunctionListClear(PetscFunctionList fl)$/;"	f	language:C	typeref:typename:PetscErrorCode
 PetscFunctionListCreateNode_Private	src/sys/dll/reg.c	/^static PetscErrorCode PetscFunctionListCreateNode_Private(PetscFunctionList *entry, const char n/;"	f	language:C	typeref:typename:PetscErrorCode	file:
 PetscFunctionListDestroy	src/sys/dll/reg.c	/^PetscErrorCode PetscFunctionListDestroy(PetscFunctionList *fl)$/;"	f	language:C	typeref:typename:PetscErrorCode
 PetscFunctionListDuplicate	src/sys/dll/reg.c	/^PetscErrorCode PetscFunctionListDuplicate(PetscFunctionList fl, PetscFunctionList *nl)$/;"	f	language:C	typeref:typename:PetscErrorCode
-PetscFunctionListFind	include/petscsys.h	/^#define PetscFunctionListFind(/;"	d	language:C++
+PetscFunctionListFind	include/petscsys.h	/^#define PetscFunctionListFind(list, name, fptr) PetscFunctionListFind_/;"	d	language:C++
 PetscFunctionListFind_Private	src/sys/dll/reg.c	/^PETSC_EXTERN PetscErrorCode PetscFunctionListFind_Private(PetscFunctionList fl, const char name[/;"	f	language:C	typeref:typename:PETSC_EXTERN PetscErrorCode
 PetscFunctionListGet	src/sys/dll/reg.c	/^PetscErrorCode PetscFunctionListGet(PetscFunctionList list, const char ***array, int *n)$/;"	f	language:C	typeref:typename:PetscErrorCode
 PetscFunctionListPrintAll	src/sys/dll/reg.c	/^PetscErrorCode PetscFunctionListPrintAll(void)$/;"	f	language:C	typeref:typename:PetscErrorCode
@@ -26105,7 +26225,7 @@
 PetscHash_t	include/petsc/private/hashtable.h	/^typedef khint_t   PetscHash_t;$/;"	t	language:C++	typeref:typename:khint_t
 PetscHeaderCreate	include/petsc/private/petscimpl.h	/^#define PetscHeaderCreate(/;"	d	language:C++
 PetscHeaderCreate_Private	src/sys/objects/inherit.c	/^PetscErrorCode PetscHeaderCreate_Private(PetscObject h, PetscClassId classid, const char class_n/;"	f	language:C	typeref:typename:PetscErrorCode
-PetscHeaderDestroy	include/petsc/private/petscimpl.h	/^#define PetscHeaderDestroy(/;"	d	language:C++
+PetscHeaderDestroy	include/petsc/private/petscimpl.h	/^#define PetscHeaderDestroy(h) (PetscHeaderDestroy_/;"	d	language:C++
 PetscHeaderDestroy_Private	src/sys/objects/inherit.c	/^PetscErrorCode PetscHeaderDestroy_Private(PetscObject obj, PetscBool clear_for_reuse)$/;"	f	language:C	typeref:typename:PetscErrorCode
 PetscHeaderReset_Internal	src/sys/objects/inherit.c	/^PetscErrorCode PetscHeaderReset_Internal(PetscObject obj)$/;"	f	language:C	typeref:typename:PetscErrorCode
 PetscHeap	include/petscsystypes.h	/^typedef struct _PetscHeap *PetscHeap;$/;"	t	language:C++	typeref:struct:_PetscHeap *
@@ -26148,6 +26268,7 @@
 PetscImageSetClip	src/sys/classes/draw/impls/image/drawimage.h	/^static inline void PetscImageSetClip(PetscImage img, int x, int y, int w, int h)$/;"	f	language:C++	typeref:typename:void
 PetscImaginaryPart	include/petsc/finclude/petscsys.h	/^#define PetscImaginaryPart(/;"	d	language:C++
 PetscImaginaryPart	include/petscmath.h	/^  #define PetscImaginaryPart(/;"	d	language:C++
+PetscImaginaryPart	include/petscmath.h	/^  #define PetscImaginaryPart(a) PetscImaginaryPartC/;"	d	language:C++
 PetscImaginaryPartComplex	include/petscmath.h	/^      #define PetscImaginaryPartComplex(/;"	d	language:C++
 PetscImaginaryPartComplex	include/petscmath.h	/^    #define PetscImaginaryPartComplex(/;"	d	language:C++
 PetscIncompleteLLAdd	include/petsc/private/matimpl.h	/^static inline PetscErrorCode PetscIncompleteLLAdd(PetscInt nidx, const PetscInt *PETSC_RESTRICT /;"	f	language:C++	typeref:typename:PetscErrorCode
@@ -26159,6 +26280,7 @@
 PetscIncompleteLLInit	include/petsc/private/matimpl.h	/^static inline PetscErrorCode PetscIncompleteLLInit(PetscInt nidx, const PetscInt *PETSC_RESTRICT/;"	f	language:C++	typeref:typename:PetscErrorCode
 PetscIncompleteLLInsertLocation_Private	include/petsc/private/matimpl.h	/^static inline PetscErrorCode PetscIncompleteLLInsertLocation_Private(PetscBool assume_sorted, Pe/;"	f	language:C++	typeref:typename:PetscErrorCode
 PetscInfo	include/petsclog.h	/^  #define PetscInfo(/;"	d	language:C++
+PetscInfo	include/petsclog.h	/^  #define PetscInfo(A, ...) PetscInfo_/;"	d	language:C++
 PetscInfo1	include/petsclog.h	/^#define PetscInfo1(/;"	d	language:C++
 PetscInfo2	include/petsclog.h	/^#define PetscInfo2(/;"	d	language:C++
 PetscInfo3	include/petsclog.h	/^#define PetscInfo3(/;"	d	language:C++
@@ -26198,7 +26320,7 @@
 PetscInfoSetFromOptions	src/sys/info/verboseinfo.c	/^PetscErrorCode PetscInfoSetFromOptions(PetscOptions options)$/;"	f	language:C	typeref:typename:PetscErrorCode
 PetscInfo_Private	src/sys/info/verboseinfo.c	/^PetscErrorCode PetscInfo_Private(const char func[], PetscObject obj, const char message[], ...)$/;"	f	language:C	typeref:typename:PetscErrorCode
 PetscInitFortran_Private	src/sys/objects/ftn-custom/zstart.c	/^PETSC_INTERN PetscErrorCode PetscInitFortran_Private(PetscBool readarguments,const char *filenam/;"	f	language:C	typeref:typename:PETSC_INTERN PetscErrorCode
-PetscInitialize	src/binding/petsc4py/src/include/compat/mpi.h	/^#define PetscInitialize /;"	d	language:C++
+PetscInitialize	src/binding/petsc4py/src/include/compat/mpi.h	/^#define PetscInitialize PetscInitialize_/;"	d	language:C++
 PetscInitialize	src/sys/f90-mod/petscsysmod.F90	/^        interface PetscInitialize$/;"	i	language:Fortran
 PetscInitialize	src/sys/objects/pinit.c	/^PetscErrorCode PetscInitialize(int *argc, char ***args, const char file[], const char help[])$/;"	f	language:C	typeref:typename:PetscErrorCode
 PetscInitializeCalled	include/petscsys.h	/^PETSC_EXTERN PetscBool PetscInitializeCalled;$/;"	v	language:C++	typeref:typename:PETSC_EXTERN PetscBool
@@ -26296,19 +26418,19 @@
 PetscKernel_A_gets_transpose_A_BODY	include/petsc/private/kernels/blocktranspose.h	/^#define PetscKernel_A_gets_transpose_A_BODY(/;"	d	language:C++
 PetscKernel_A_gets_transpose_A_DECLARE	include/petsc/private/kernels/blocktranspose.h	/^#define PetscKernel_A_gets_transpose_A_DECLARE(/;"	d	language:C++
 PetscKernel_A_gets_transpose_A_N	include/petsc/private/kernels/blocktranspose.h	/^static inline PetscErrorCode PetscKernel_A_gets_transpose_A_N(MatScalar *a, PetscInt N)$/;"	f	language:C++	typeref:typename:PetscErrorCode
-PetscKernel_v_gets_A_times_w_1	include/petsc/private/kernels/blockmatmult.h	/^#define PetscKernel_v_gets_A_times_w_1(/;"	d	language:C++
+PetscKernel_v_gets_A_times_w_1	include/petsc/private/kernels/blockmatmult.h	/^#define PetscKernel_v_gets_A_times_w_1(v, A, w)         PetscKernel_v_gets_A_times_w_1_/;"	d	language:C++
 PetscKernel_v_gets_A_times_w_1_exp	include/petsc/private/kernels/blockmatmult.h	/^#define PetscKernel_v_gets_A_times_w_1_exp(/;"	d	language:C++
-PetscKernel_v_gets_A_times_w_2	include/petsc/private/kernels/blockmatmult.h	/^#define PetscKernel_v_gets_A_times_w_2(/;"	d	language:C++
+PetscKernel_v_gets_A_times_w_2	include/petsc/private/kernels/blockmatmult.h	/^#define PetscKernel_v_gets_A_times_w_2(v, A, w)         PetscKernel_v_gets_A_times_w_2_/;"	d	language:C++
 PetscKernel_v_gets_A_times_w_2_exp	include/petsc/private/kernels/blockmatmult.h	/^#define PetscKernel_v_gets_A_times_w_2_exp(/;"	d	language:C++
-PetscKernel_v_gets_A_times_w_3	include/petsc/private/kernels/blockmatmult.h	/^#define PetscKernel_v_gets_A_times_w_3(/;"	d	language:C++
+PetscKernel_v_gets_A_times_w_3	include/petsc/private/kernels/blockmatmult.h	/^#define PetscKernel_v_gets_A_times_w_3(v, A, w)         PetscKernel_v_gets_A_times_w_3_/;"	d	language:C++
 PetscKernel_v_gets_A_times_w_3_exp	include/petsc/private/kernels/blockmatmult.h	/^#define PetscKernel_v_gets_A_times_w_3_exp(/;"	d	language:C++
-PetscKernel_v_gets_A_times_w_4	include/petsc/private/kernels/blockmatmult.h	/^#define PetscKernel_v_gets_A_times_w_4(/;"	d	language:C++
+PetscKernel_v_gets_A_times_w_4	include/petsc/private/kernels/blockmatmult.h	/^#define PetscKernel_v_gets_A_times_w_4(v, A, w)         PetscKernel_v_gets_A_times_w_4_/;"	d	language:C++
 PetscKernel_v_gets_A_times_w_4_exp	include/petsc/private/kernels/blockmatmult.h	/^#define PetscKernel_v_gets_A_times_w_4_exp(/;"	d	language:C++
-PetscKernel_v_gets_A_times_w_5	include/petsc/private/kernels/blockmatmult.h	/^#define PetscKernel_v_gets_A_times_w_5(/;"	d	language:C++
+PetscKernel_v_gets_A_times_w_5	include/petsc/private/kernels/blockmatmult.h	/^#define PetscKernel_v_gets_A_times_w_5(v, A, w)         PetscKernel_v_gets_A_times_w_5_/;"	d	language:C++
 PetscKernel_v_gets_A_times_w_5_exp	include/petsc/private/kernels/blockmatmult.h	/^#define PetscKernel_v_gets_A_times_w_5_exp(/;"	d	language:C++
-PetscKernel_v_gets_A_times_w_6	include/petsc/private/kernels/blockmatmult.h	/^#define PetscKernel_v_gets_A_times_w_6(/;"	d	language:C++
+PetscKernel_v_gets_A_times_w_6	include/petsc/private/kernels/blockmatmult.h	/^#define PetscKernel_v_gets_A_times_w_6(v, A, w)         PetscKernel_v_gets_A_times_w_6_/;"	d	language:C++
 PetscKernel_v_gets_A_times_w_6_exp	include/petsc/private/kernels/blockmatmult.h	/^#define PetscKernel_v_gets_A_times_w_6_exp(/;"	d	language:C++
-PetscKernel_v_gets_A_times_w_7	include/petsc/private/kernels/blockmatmult.h	/^#define PetscKernel_v_gets_A_times_w_7(/;"	d	language:C++
+PetscKernel_v_gets_A_times_w_7	include/petsc/private/kernels/blockmatmult.h	/^#define PetscKernel_v_gets_A_times_w_7(v, A, w)         PetscKernel_v_gets_A_times_w_7_/;"	d	language:C++
 PetscKernel_v_gets_A_times_w_7_exp	include/petsc/private/kernels/blockmatmult.h	/^#define PetscKernel_v_gets_A_times_w_7_exp(/;"	d	language:C++
 PetscKernel_v_gets_v_minus_A_times_w	include/petsc/private/kernels/blockinvert.h	/^  #define PetscKernel_v_gets_v_minus_A_times_w(/;"	d	language:C++
 PetscKernel_v_gets_v_minus_A_times_w_1	include/petsc/private/kernels/blockmatmult.h	/^#define PetscKernel_v_gets_v_minus_A_times_w_1(/;"	d	language:C++
@@ -26715,7 +26837,7 @@
 PetscMUMPSIntCast	src/mat/impls/aij/mpi/mumps/mumps.c	/^static inline PetscErrorCode PetscMUMPSIntCast(PetscInt a, PetscMUMPSInt *b)$/;"	f	language:C	typeref:typename:PetscErrorCode	file:
 PetscMUMPS_c	src/mat/impls/aij/mpi/mumps/mumps.c	/^  #define PetscMUMPS_c(/;"	d	language:C	file:
 PetscMacroReturnStandard	include/petscmacros.h	/^  #define PetscMacroReturnStandard(/;"	d	language:C++
-PetscMacroReturns	include/petscmacros.h	/^  #define PetscMacroReturns(/;"	d	language:C++
+PetscMacroReturns	include/petscmacros.h	/^  #define PetscMacroReturns(retexpr, ...) PetscMacroReturns_/;"	d	language:C++
 PetscMacroReturns_	include/petscmacros.h	/^    #define PetscMacroReturns_(/;"	d	language:C++
 PetscMalloc	include/petscsys.h	/^#define PetscMalloc(/;"	d	language:C++
 PetscMalloc	src/benchmarks/makefile	/^PetscMalloc: PetscMalloc.o $/;"	t	language:Make
@@ -26820,14 +26942,14 @@
 PetscNestedEvent	src/sys/logging/xmllogevent.c	/^} PetscNestedEvent;$/;"	t	language:C	typeref:struct:__anonf83b73860108	file:
 PetscNestedEventTree	src/sys/logging/xmllogevent.c	/^} PetscNestedEventTree;$/;"	t	language:C	typeref:struct:__anonf83b73860208	file:
 PetscNew	include/petscsys.h	/^#define PetscNew(/;"	d	language:C++
-PetscNewLog	include/petscsys.h	/^#define PetscNewLog(/;"	d	language:C++
+PetscNewLog	include/petscsys.h	/^#define PetscNewLog(o, b) PETSC_DEPRECATED_MACRO("GCC warning \\"PetscNewLog /;"	d	language:C++
 PetscNodeRecursive_Internal	src/dm/dt/dualspace/impls/lagrange/dspacelagrange.c	/^static PetscErrorCode PetscNodeRecursive_Internal(PetscInt dim, PetscInt degree, PetscReal **nod/;"	f	language:C	typeref:typename:PetscErrorCode	file:
 PetscNot	include/petscsys.h	/^#define PetscNot(/;"	d	language:C++
 PetscNumOMPThreads	include/petsc/private/petscimpl.h	/^PETSC_EXTERN PetscInt PetscNumOMPThreads;$/;"	v	language:C++	typeref:typename:PETSC_EXTERN PetscInt
 PetscNumOMPThreads	src/sys/objects/pinit.c	/^PetscInt PetscNumOMPThreads;$/;"	v	language:C	typeref:typename:PetscInt
 PetscNvshmemCalloc	src/vec/is/sf/impls/basic/nvshmem/sfnvshmem.cu	/^PetscErrorCode PetscNvshmemCalloc(size_t size, void **ptr)$/;"	f	language:C	typeref:typename:PetscErrorCode
 PetscNvshmemFinalize	src/vec/is/sf/impls/basic/nvshmem/sfnvshmem.cu	/^PetscErrorCode PetscNvshmemFinalize(void)$/;"	f	language:C	typeref:typename:PetscErrorCode
-PetscNvshmemFree	include/petsc/private/cudavecimpl.h	/^  #define PetscNvshmemFree(/;"	d	language:C++
+PetscNvshmemFree	include/petsc/private/cudavecimpl.h	/^  #define PetscNvshmemFree(ptr) ((ptr) && (PetscNvshmemFree_/;"	d	language:C++
 PetscNvshmemFree_Private	src/vec/is/sf/impls/basic/nvshmem/sfnvshmem.cu	/^PetscErrorCode PetscNvshmemFree_Private(void *ptr)$/;"	f	language:C	typeref:typename:PetscErrorCode
 PetscNvshmemInitializeCheck	src/vec/is/sf/impls/basic/nvshmem/sfnvshmem.cu	/^PetscErrorCode PetscNvshmemInitializeCheck(void)$/;"	f	language:C	typeref:typename:PetscErrorCode
 PetscNvshmemInitialized	include/petscsys.h	/^PETSC_EXTERN PetscBool      PetscNvshmemInitialized;$/;"	v	language:C++	typeref:typename:PETSC_EXTERN PetscBool
@@ -26848,7 +26970,7 @@
 PetscObjectComm	src/sys/objects/gcomm.c	/^MPI_Comm PetscObjectComm(PetscObject obj)$/;"	f	language:C	typeref:typename:MPI_Comm
 PetscObjectCompareId	src/sys/objects/state.c	/^PetscErrorCode PetscObjectCompareId(PetscObject obj, PetscObjectId id, PetscBool *eq)$/;"	f	language:C	typeref:typename:PetscErrorCode
 PetscObjectCompose	src/sys/objects/inherit.c	/^PetscErrorCode PetscObjectCompose(PetscObject obj, const char name[], PetscObject ptr)$/;"	f	language:C	typeref:typename:PetscErrorCode
-PetscObjectComposeFunction	include/petscsys.h	/^#define PetscObjectComposeFunction(/;"	d	language:C++
+PetscObjectComposeFunction	include/petscsys.h	/^#define PetscObjectComposeFunction(a, b, d) PetscObjectComposeFunction_/;"	d	language:C++
 PetscObjectComposeFunction_Petsc	src/sys/objects/inherit.c	/^PetscErrorCode PetscObjectComposeFunction_Petsc(PetscObject obj, const char name[], void (*ptr)(/;"	f	language:C	typeref:typename:PetscErrorCode
 PetscObjectComposeFunction_Private	src/sys/objects/inherit.c	/^PetscErrorCode PetscObjectComposeFunction_Private(PetscObject obj, const char name[], void (*fpt/;"	f	language:C	typeref:typename:PetscErrorCode
 PetscObjectCompose_Petsc	src/sys/objects/inherit.c	/^PetscErrorCode PetscObjectCompose_Petsc(PetscObject obj, const char name[], PetscObject ptr)$/;"	f	language:C	typeref:typename:PetscErrorCode
@@ -26915,7 +27037,7 @@
 PetscObjectPrintClassNamePrefixType	src/sys/objects/pname.c	/^PetscErrorCode PetscObjectPrintClassNamePrefixType(PetscObject obj, PetscViewer viewer)$/;"	f	language:C	typeref:typename:PetscErrorCode
 PetscObjectProcessOptionsHandlers	src/sys/objects/inherit.c	/^PetscErrorCode PetscObjectProcessOptionsHandlers(PetscObject obj, PetscOptionItems *PetscOptions/;"	f	language:C	typeref:typename:PetscErrorCode
 PetscObjectQuery	src/sys/objects/inherit.c	/^PetscErrorCode PetscObjectQuery(PetscObject obj, const char name[], PetscObject *ptr)$/;"	f	language:C	typeref:typename:PetscErrorCode
-PetscObjectQueryFunction	include/petscsys.h	/^#define PetscObjectQueryFunction(/;"	d	language:C++
+PetscObjectQueryFunction	include/petscsys.h	/^#define PetscObjectQueryFunction(obj, name, fptr) PetscObjectQueryFunction_/;"	d	language:C++
 PetscObjectQueryFunction_Petsc	src/sys/objects/inherit.c	/^PetscErrorCode PetscObjectQueryFunction_Petsc(PetscObject obj, const char name[], void (**ptr)(v/;"	f	language:C	typeref:typename:PetscErrorCode
 PetscObjectQueryFunction_Private	src/sys/objects/inherit.c	/^PETSC_EXTERN PetscErrorCode PetscObjectQueryFunction_Private(PetscObject obj, const char name[],/;"	f	language:C	typeref:typename:PETSC_EXTERN PetscErrorCode
 PetscObjectQuery_Petsc	src/sys/objects/inherit.c	/^PetscErrorCode PetscObjectQuery_Petsc(PetscObject obj, const char name[], PetscObject *ptr)$/;"	f	language:C	typeref:typename:PetscErrorCode
@@ -26950,7 +27072,7 @@
 PetscObjectStateSet	src/sys/objects/state.c	/^PetscErrorCode PetscObjectStateSet(PetscObject obj, PetscObjectState state)$/;"	f	language:C	typeref:typename:PetscErrorCode
 PetscObjectTypeCompare	src/sys/objects/destroy.c	/^PetscErrorCode PetscObjectTypeCompare(PetscObject obj, const char type_name[], PetscBool *same)$/;"	f	language:C	typeref:typename:PetscErrorCode
 PetscObjectTypeCompareAny	src/sys/objects/destroy.c	/^PetscErrorCode PetscObjectTypeCompareAny(PetscObject obj, PetscBool *match, const char type_name/;"	f	language:C	typeref:typename:PetscErrorCode
-PetscObjectUseFortranCallback	include/petsc/private/fortranimpl.h	/^#define PetscObjectUseFortranCallback(/;"	d	language:C++
+PetscObjectUseFortranCallback	include/petsc/private/fortranimpl.h	/^#define PetscObjectUseFortranCallback(obj, cid, types, args)        PetscObjectUseFortranCallbac/;"	d	language:C++
 PetscObjectUseFortranCallbackSubType	include/petsc/private/fortranimpl.h	/^#define PetscObjectUseFortranCallbackSubType(/;"	d	language:C++
 PetscObjectUseFortranCallback_Private	include/petsc/private/fortranimpl.h	/^#define PetscObjectUseFortranCallback_Private(/;"	d	language:C++
 PetscObjectView	src/sys/objects/destroy.c	/^PetscErrorCode PetscObjectView(PetscObject obj, PetscViewer viewer)$/;"	f	language:C	typeref:typename:PetscErrorCode
@@ -27003,18 +27125,18 @@
 PetscOptionItemCreate_Private	src/sys/objects/aoptions.c	/^static int PetscOptionItemCreate_Private(PetscOptionItems *PetscOptionsObject, const char opt[],/;"	f	language:C	typeref:typename:int	file:
 PetscOptionItems	include/petscoptions.h	/^} PetscOptionItems;$/;"	t	language:C++	typeref:struct:_p_PetscOptionItems
 PetscOptionType	include/petscoptions.h	/^} PetscOptionType;$/;"	t	language:C++	typeref:enum:__anon53ad41990103
-PetscOptions	include/petsc/finclude/petscsys.h	/^#define PetscOptions /;"	d	language:C++
+PetscOptions	include/petsc/finclude/petscsys.h	/^#define PetscOptions type(tPetscOptions)/;"	d	language:C++
 PetscOptions	include/petscoptions.h	/^typedef struct _n_PetscOptions *PetscOptions;$/;"	t	language:C++	typeref:struct:_n_PetscOptions *
 PetscOptionsAllUsed	src/sys/objects/options.c	/^PetscErrorCode PetscOptionsAllUsed(PetscOptions options, PetscInt *N)$/;"	f	language:C	typeref:typename:PetscErrorCode
 PetscOptionsBegin	include/petscoptions.h	/^  #define PetscOptionsBegin(/;"	d	language:C++
 PetscOptionsBegin_Private	src/sys/objects/aoptions.c	/^PetscErrorCode PetscOptionsBegin_Private(PetscOptionItems *PetscOptionsObject, MPI_Comm comm, co/;"	f	language:C	typeref:typename:PetscErrorCode
-PetscOptionsBool	include/petscoptions.h	/^  #define PetscOptionsBool(/;"	d	language:C++
-PetscOptionsBoolArray	include/petscoptions.h	/^  #define PetscOptionsBoolArray(/;"	d	language:C++
+PetscOptionsBool	include/petscoptions.h	/^  #define PetscOptionsBool(a, b, c, d, e, f)           PetscOptionsBool_/;"	d	language:C++
+PetscOptionsBoolArray	include/petscoptions.h	/^  #define PetscOptionsBoolArray(a, b, c, d, e, f)      PetscOptionsBoolArray_/;"	d	language:C++
 PetscOptionsBoolArray_Private	src/sys/objects/aoptions.c	/^PetscErrorCode PetscOptionsBoolArray_Private(PetscOptionItems *PetscOptionsObject, const char op/;"	f	language:C	typeref:typename:PetscErrorCode
-PetscOptionsBoolGroup	include/petscoptions.h	/^  #define PetscOptionsBoolGroup(/;"	d	language:C++
-PetscOptionsBoolGroupBegin	include/petscoptions.h	/^  #define PetscOptionsBoolGroupBegin(/;"	d	language:C++
+PetscOptionsBoolGroup	include/petscoptions.h	/^  #define PetscOptionsBoolGroup(a, b, c, d)            PetscOptionsBoolGroup_/;"	d	language:C++
+PetscOptionsBoolGroupBegin	include/petscoptions.h	/^  #define PetscOptionsBoolGroupBegin(a, b, c, d)       PetscOptionsBoolGroupBegin_/;"	d	language:C++
 PetscOptionsBoolGroupBegin_Private	src/sys/objects/aoptions.c	/^PetscErrorCode PetscOptionsBoolGroupBegin_Private(PetscOptionItems *PetscOptionsObject, const ch/;"	f	language:C	typeref:typename:PetscErrorCode
-PetscOptionsBoolGroupEnd	include/petscoptions.h	/^  #define PetscOptionsBoolGroupEnd(/;"	d	language:C++
+PetscOptionsBoolGroupEnd	include/petscoptions.h	/^  #define PetscOptionsBoolGroupEnd(a, b, c, d)         PetscOptionsBoolGroupEnd_/;"	d	language:C++
 PetscOptionsBoolGroupEnd_Private	src/sys/objects/aoptions.c	/^PetscErrorCode PetscOptionsBoolGroupEnd_Private(PetscOptionItems *PetscOptionsObject, const char/;"	f	language:C	typeref:typename:PetscErrorCode
 PetscOptionsBoolGroup_Private	src/sys/objects/aoptions.c	/^PetscErrorCode PetscOptionsBoolGroup_Private(PetscOptionItems *PetscOptionsObject, const char op/;"	f	language:C	typeref:typename:PetscErrorCode
 PetscOptionsBool_Private	src/sys/objects/aoptions.c	/^PetscErrorCode PetscOptionsBool_Private(PetscOptionItems *PetscOptionsObject, const char opt[], /;"	f	language:C	typeref:typename:PetscErrorCode
@@ -27024,20 +27146,20 @@
 PetscOptionsClearValue	src/sys/objects/options.c	/^PetscErrorCode PetscOptionsClearValue(PetscOptions options, const char name[])$/;"	f	language:C	typeref:typename:PetscErrorCode
 PetscOptionsCreate	src/sys/objects/options.c	/^PetscErrorCode PetscOptionsCreate(PetscOptions *options)$/;"	f	language:C	typeref:typename:PetscErrorCode
 PetscOptionsCreateDefault	src/sys/objects/options.c	/^PetscErrorCode PetscOptionsCreateDefault(void)$/;"	f	language:C	typeref:typename:PetscErrorCode
-PetscOptionsDeprecated	include/petscoptions.h	/^  #define PetscOptionsDeprecated(/;"	d	language:C++
+PetscOptionsDeprecated	include/petscoptions.h	/^  #define PetscOptionsDeprecated(a, b, c, d)           PetscOptionsDeprecated_/;"	d	language:C++
 PetscOptionsDeprecatedNoObject	include/petscoptions.h	/^  #define PetscOptionsDeprecatedNoObject(/;"	d	language:C++
 PetscOptionsDeprecated_Private	src/sys/objects/options.c	/^PetscErrorCode PetscOptionsDeprecated_Private(PetscOptionItems *PetscOptionsObject, const char o/;"	f	language:C	typeref:typename:PetscErrorCode
 PetscOptionsDestroy	src/sys/objects/options.c	/^PetscErrorCode PetscOptionsDestroy(PetscOptions *options)$/;"	f	language:C	typeref:typename:PetscErrorCode
 PetscOptionsDestroyDefault	src/sys/objects/options.c	/^PetscErrorCode PetscOptionsDestroyDefault(void)$/;"	f	language:C	typeref:typename:PetscErrorCode
-PetscOptionsEList	include/petscoptions.h	/^  #define PetscOptionsEList(/;"	d	language:C++
+PetscOptionsEList	include/petscoptions.h	/^  #define PetscOptionsEList(a, b, c, d, e, f, g, h)    PetscOptionsEList_/;"	d	language:C++
 PetscOptionsEList_Private	src/sys/objects/aoptions.c	/^PetscErrorCode PetscOptionsEList_Private(PetscOptionItems *PetscOptionsObject, const char opt[],/;"	f	language:C	typeref:typename:PetscErrorCode
 PetscOptionsEnd	include/petscoptions.h	/^  #define PetscOptionsEnd(/;"	d	language:C++
 PetscOptionsEnd_Private	src/sys/objects/aoptions.c	/^PetscErrorCode PetscOptionsEnd_Private(PetscOptionItems *PetscOptionsObject)$/;"	f	language:C	typeref:typename:PetscErrorCode
-PetscOptionsEnum	include/petscoptions.h	/^  #define PetscOptionsEnum(/;"	d	language:C++
-PetscOptionsEnumArray	include/petscoptions.h	/^  #define PetscOptionsEnumArray(/;"	d	language:C++
+PetscOptionsEnum	include/petscoptions.h	/^  #define PetscOptionsEnum(a, b, c, d, e, f, g)        PetscOptionsEnum_/;"	d	language:C++
+PetscOptionsEnumArray	include/petscoptions.h	/^  #define PetscOptionsEnumArray(a, b, c, d, e, f, g)   PetscOptionsEnumArray_/;"	d	language:C++
 PetscOptionsEnumArray_Private	src/sys/objects/aoptions.c	/^PetscErrorCode PetscOptionsEnumArray_Private(PetscOptionItems *PetscOptionsObject, const char op/;"	f	language:C	typeref:typename:PetscErrorCode
 PetscOptionsEnum_Private	src/sys/objects/aoptions.c	/^PetscErrorCode PetscOptionsEnum_Private(PetscOptionItems *PetscOptionsObject, const char opt[], /;"	f	language:C	typeref:typename:PetscErrorCode
-PetscOptionsFList	include/petscoptions.h	/^  #define PetscOptionsFList(/;"	d	language:C++
+PetscOptionsFList	include/petscoptions.h	/^  #define PetscOptionsFList(a, b, c, d, e, f, g, h)    PetscOptionsFList_/;"	d	language:C++
 PetscOptionsFList_Private	src/sys/objects/aoptions.c	/^PetscErrorCode PetscOptionsFList_Private(PetscOptionItems *PetscOptionsObject, const char opt[],/;"	f	language:C	typeref:typename:PetscErrorCode
 PetscOptionsFilename	src/sys/objects/options.c	/^static PetscErrorCode PetscOptionsFilename(MPI_Comm comm, const char file[], char filename[PETSC/;"	f	language:C	typeref:typename:PetscErrorCode	file:
 PetscOptionsFindPair	src/sys/objects/options.c	/^PetscErrorCode PetscOptionsFindPair(PetscOptions options, const char pre[], const char name[], c/;"	f	language:C	typeref:typename:PetscErrorCode
@@ -27066,7 +27188,7 @@
 PetscOptionsHasHelp	src/sys/objects/options.c	/^PetscErrorCode PetscOptionsHasHelp(PetscOptions options, PetscBool *set)$/;"	f	language:C	typeref:typename:PetscErrorCode
 PetscOptionsHasHelpIntro_Internal	src/sys/objects/options.c	/^PetscErrorCode PetscOptionsHasHelpIntro_Internal(PetscOptions options, PetscBool *set)$/;"	f	language:C	typeref:typename:PetscErrorCode
 PetscOptionsHasName	src/sys/objects/options.c	/^PetscErrorCode PetscOptionsHasName(PetscOptions options, const char pre[], const char name[], Pe/;"	f	language:C	typeref:typename:PetscErrorCode
-PetscOptionsHead	include/petscoptions.h	/^  #define PetscOptionsHead(/;"	d	language:C++
+PetscOptionsHead	include/petscoptions.h	/^  #define PetscOptionsHead(...) PETSC_DEPRECATED_MACRO("GCC warning \\"Use PetscOptionsHeadBegin/;"	d	language:C++
 PetscOptionsHeadBegin	include/petscoptions.h	/^  #define PetscOptionsHeadBegin(/;"	d	language:C++
 PetscOptionsHeadEnd	include/petscoptions.h	/^  #define PetscOptionsHeadEnd(/;"	d	language:C++
 PetscOptionsHelpPrinted	include/petscsystypes.h	/^typedef struct _n_PetscOptionsHelpPrinted *PetscOptionsHelpPrinted;$/;"	t	language:C++	typeref:struct:_n_PetscOptionsHelpPrinted *
@@ -27081,21 +27203,21 @@
 PetscOptionsInsertFileYAML	src/sys/objects/optionsyaml.c	/^PetscErrorCode PetscOptionsInsertFileYAML(MPI_Comm comm, PetscOptions options, const char file[]/;"	f	language:C	typeref:typename:PetscErrorCode
 PetscOptionsInsertString	src/sys/objects/options.c	/^PetscErrorCode PetscOptionsInsertString(PetscOptions options, const char in_str[])$/;"	f	language:C	typeref:typename:PetscErrorCode
 PetscOptionsInsertStringYAML	src/sys/objects/optionsyaml.c	/^PetscErrorCode PetscOptionsInsertStringYAML(PetscOptions options, const char in_str[])$/;"	f	language:C	typeref:typename:PetscErrorCode
-PetscOptionsInt	include/petscoptions.h	/^  #define PetscOptionsInt(/;"	d	language:C++
-PetscOptionsIntArray	include/petscoptions.h	/^  #define PetscOptionsIntArray(/;"	d	language:C++
+PetscOptionsInt	include/petscoptions.h	/^  #define PetscOptionsInt(a, b, c, d, e, f)            PetscOptionsInt_/;"	d	language:C++
+PetscOptionsIntArray	include/petscoptions.h	/^  #define PetscOptionsIntArray(a, b, c, d, e, f)       PetscOptionsIntArray_/;"	d	language:C++
 PetscOptionsIntArray_Private	src/sys/objects/aoptions.c	/^PetscErrorCode PetscOptionsIntArray_Private(PetscOptionItems *PetscOptionsObject, const char opt/;"	f	language:C	typeref:typename:PetscErrorCode
 PetscOptionsInt_Private	src/sys/objects/aoptions.c	/^PetscErrorCode PetscOptionsInt_Private(PetscOptionItems *PetscOptionsObject, const char opt[], c/;"	f	language:C	typeref:typename:PetscErrorCode
 PetscOptionsLeft	src/sys/objects/options.c	/^PetscErrorCode PetscOptionsLeft(PetscOptions options)$/;"	f	language:C	typeref:typename:PetscErrorCode
 PetscOptionsLeftError	src/sys/objects/options.c	/^PetscErrorCode PetscOptionsLeftError(void)$/;"	f	language:C	typeref:typename:PetscErrorCode
 PetscOptionsLeftGet	src/sys/objects/options.c	/^PetscErrorCode PetscOptionsLeftGet(PetscOptions options, PetscInt *N, char **names[], char **val/;"	f	language:C	typeref:typename:PetscErrorCode
 PetscOptionsLeftRestore	src/sys/objects/options.c	/^PetscErrorCode PetscOptionsLeftRestore(PetscOptions options, PetscInt *N, char **names[], char */;"	f	language:C	typeref:typename:PetscErrorCode
-PetscOptionsMUMPSInt	src/mat/impls/aij/mpi/mumps/mumps.c	/^#define PetscOptionsMUMPSInt(/;"	d	language:C	file:
+PetscOptionsMUMPSInt	src/mat/impls/aij/mpi/mumps/mumps.c	/^#define PetscOptionsMUMPSInt(a, b, c, d, e, f) PetscOptionsMUMPSInt_/;"	d	language:C	file:
 PetscOptionsMUMPSInt_Private	src/mat/impls/aij/mpi/mumps/mumps.c	/^static inline PetscErrorCode PetscOptionsMUMPSInt_Private(PetscOptionItems *PetscOptionsObject, /;"	f	language:C	typeref:typename:PetscErrorCode	file:
 PetscOptionsMonitor	src/sys/objects/options.c	/^static PetscErrorCode PetscOptionsMonitor(PetscOptions options, const char name[], const char va/;"	f	language:C	typeref:typename:PetscErrorCode	file:
 PetscOptionsMonitorCustom	src/sys/tests/options/ex55.c	/^PetscErrorCode PetscOptionsMonitorCustom(const char name[], const char value[], void *ctx)$/;"	f	language:C	typeref:typename:PetscErrorCode
 PetscOptionsMonitorDefault	src/sys/objects/options.c	/^PetscErrorCode PetscOptionsMonitorDefault(const char name[], const char value[], void *ctx)$/;"	f	language:C	typeref:typename:PetscErrorCode
 PetscOptionsMonitorSet	src/sys/objects/options.c	/^PetscErrorCode PetscOptionsMonitorSet(PetscErrorCode (*monitor)(const char name[], const char va/;"	f	language:C	typeref:typename:PetscErrorCode
-PetscOptionsName	include/petscoptions.h	/^  #define PetscOptionsName(/;"	d	language:C++
+PetscOptionsName	include/petscoptions.h	/^  #define PetscOptionsName(a, b, c, d)                 PetscOptionsName_/;"	d	language:C++
 PetscOptionsName_Private	src/sys/objects/aoptions.c	/^PetscErrorCode PetscOptionsName_Private(PetscOptionItems *PetscOptionsObject, const char opt[], /;"	f	language:C	typeref:typename:PetscErrorCode
 PetscOptionsPop	src/sys/objects/options.c	/^PetscErrorCode PetscOptionsPop(void)$/;"	f	language:C	typeref:typename:PetscErrorCode
 PetscOptionsPopGetViewerOff	src/sys/classes/viewer/interface/viewreg.c	/^PetscErrorCode PetscOptionsPopGetViewerOff(void)$/;"	f	language:C	typeref:typename:PetscErrorCode
@@ -27107,23 +27229,23 @@
 PetscOptionsPush	src/sys/objects/options.c	/^PetscErrorCode PetscOptionsPush(PetscOptions opt)$/;"	f	language:C	typeref:typename:PetscErrorCode
 PetscOptionsPushGetViewerOff	src/sys/classes/viewer/interface/viewreg.c	/^PetscErrorCode PetscOptionsPushGetViewerOff(PetscBool flg)$/;"	f	language:C	typeref:typename:PetscErrorCode
 PetscOptionsRangeInt	include/petscoptions.h	/^  #define PetscOptionsRangeInt(/;"	d	language:C++
-PetscOptionsReal	include/petscoptions.h	/^  #define PetscOptionsReal(/;"	d	language:C++
-PetscOptionsRealArray	include/petscoptions.h	/^  #define PetscOptionsRealArray(/;"	d	language:C++
+PetscOptionsReal	include/petscoptions.h	/^  #define PetscOptionsReal(a, b, c, d, e, f)           PetscOptionsReal_/;"	d	language:C++
+PetscOptionsRealArray	include/petscoptions.h	/^  #define PetscOptionsRealArray(a, b, c, d, e, f)      PetscOptionsRealArray_/;"	d	language:C++
 PetscOptionsRealArray_Private	src/sys/objects/aoptions.c	/^PetscErrorCode PetscOptionsRealArray_Private(PetscOptionItems *PetscOptionsObject, const char op/;"	f	language:C	typeref:typename:PetscErrorCode
 PetscOptionsReal_Private	src/sys/objects/aoptions.c	/^PetscErrorCode PetscOptionsReal_Private(PetscOptionItems *PetscOptionsObject, const char opt[], /;"	f	language:C	typeref:typename:PetscErrorCode
 PetscOptionsReject	src/sys/objects/options.c	/^PetscErrorCode PetscOptionsReject(PetscOptions options, const char pre[], const char name[], con/;"	f	language:C	typeref:typename:PetscErrorCode
 PetscOptionsSAWsDestroy	src/sys/objects/aoptions.c	/^PetscErrorCode PetscOptionsSAWsDestroy(void)$/;"	f	language:C	typeref:typename:PetscErrorCode
 PetscOptionsSAWsInput	src/sys/objects/aoptions.c	/^PetscErrorCode PetscOptionsSAWsInput(PetscOptionItems *PetscOptionsObject)$/;"	f	language:C	typeref:typename:PetscErrorCode
-PetscOptionsScalar	include/petscoptions.h	/^  #define PetscOptionsScalar(/;"	d	language:C++
-PetscOptionsScalarArray	include/petscoptions.h	/^  #define PetscOptionsScalarArray(/;"	d	language:C++
+PetscOptionsScalar	include/petscoptions.h	/^  #define PetscOptionsScalar(a, b, c, d, e, f)         PetscOptionsScalar_/;"	d	language:C++
+PetscOptionsScalarArray	include/petscoptions.h	/^  #define PetscOptionsScalarArray(a, b, c, d, e, f)    PetscOptionsScalarArray_/;"	d	language:C++
 PetscOptionsScalarArray_Private	src/sys/objects/aoptions.c	/^PetscErrorCode PetscOptionsScalarArray_Private(PetscOptionItems *PetscOptionsObject, const char /;"	f	language:C	typeref:typename:PetscErrorCode
 PetscOptionsScalar_Private	src/sys/objects/aoptions.c	/^PetscErrorCode PetscOptionsScalar_Private(PetscOptionItems *PetscOptionsObject, const char opt[]/;"	f	language:C	typeref:typename:PetscErrorCode
 PetscOptionsSetAlias	src/sys/objects/options.c	/^PetscErrorCode PetscOptionsSetAlias(PetscOptions options, const char newname[], const char oldna/;"	f	language:C	typeref:typename:PetscErrorCode
 PetscOptionsSetValue	src/sys/objects/options.c	/^PetscErrorCode PetscOptionsSetValue(PetscOptions options, const char name[], const char value[])$/;"	f	language:C	typeref:typename:PetscErrorCode
 PetscOptionsSetValue_Private	src/sys/objects/options.c	/^static PetscErrorCode PetscOptionsSetValue_Private(PetscOptions options, const char name[], cons/;"	f	language:C	typeref:typename:PetscErrorCode	file:
 PetscOptionsSkipPrecedent	src/sys/objects/options.c	/^static inline PetscErrorCode PetscOptionsSkipPrecedent(PetscOptions options, const char name[], /;"	f	language:C	typeref:typename:PetscErrorCode	file:
-PetscOptionsString	include/petscoptions.h	/^  #define PetscOptionsString(/;"	d	language:C++
-PetscOptionsStringArray	include/petscoptions.h	/^  #define PetscOptionsStringArray(/;"	d	language:C++
+PetscOptionsString	include/petscoptions.h	/^  #define PetscOptionsString(a, b, c, d, e, f, g)      PetscOptionsString_/;"	d	language:C++
+PetscOptionsStringArray	include/petscoptions.h	/^  #define PetscOptionsStringArray(a, b, c, d, e, f)    PetscOptionsStringArray_/;"	d	language:C++
 PetscOptionsStringArray_Private	src/sys/objects/aoptions.c	/^PetscErrorCode PetscOptionsStringArray_Private(PetscOptionItems *PetscOptionsObject, const char /;"	f	language:C	typeref:typename:PetscErrorCode
 PetscOptionsStringToBool	src/sys/objects/options.c	/^PetscErrorCode PetscOptionsStringToBool(const char value[], PetscBool *a)$/;"	f	language:C	typeref:typename:PetscErrorCode
 PetscOptionsStringToBoolIfSet_Private	src/sys/objects/options.c	/^static inline PetscErrorCode PetscOptionsStringToBoolIfSet_Private(enum PetscPrecedentOption opt/;"	f	language:C	typeref:typename:PetscErrorCode	file:
@@ -27136,7 +27258,7 @@
 PetscOptionsValidKey	src/sys/objects/options.c	/^PetscErrorCode PetscOptionsValidKey(const char key[], PetscBool *valid)$/;"	f	language:C	typeref:typename:PetscErrorCode
 PetscOptionsView	src/sys/objects/options.c	/^PetscErrorCode PetscOptionsView(PetscOptions options, PetscViewer viewer)$/;"	f	language:C	typeref:typename:PetscErrorCode
 PetscOptionsViewError	src/sys/objects/options.c	/^PETSC_EXTERN PetscErrorCode PetscOptionsViewError(void)$/;"	f	language:C	typeref:typename:PETSC_EXTERN PetscErrorCode
-PetscOptionsViewer	include/petscviewer.h	/^#define PetscOptionsViewer(/;"	d	language:C++
+PetscOptionsViewer	include/petscviewer.h	/^#define PetscOptionsViewer(a, b, c, d, e, f) PetscOptionsViewer_/;"	d	language:C++
 PetscOptionsViewer_Private	src/sys/objects/aoptions.c	/^PetscErrorCode PetscOptionsViewer_Private(PetscOptionItems *PetscOptionsObject, const char opt[]/;"	f	language:C	typeref:typename:PetscErrorCode
 PetscP4estFinalize	src/dm/impls/forest/p4est/petsc_p4est_package.c	/^static PetscErrorCode PetscP4estFinalize(void)$/;"	f	language:C	typeref:typename:PetscErrorCode	file:
 PetscP4estInitialize	src/dm/impls/forest/p4est/petsc_p4est_package.c	/^PetscErrorCode PetscP4estInitialize(void)$/;"	f	language:C	typeref:typename:PetscErrorCode
@@ -27344,7 +27466,7 @@
 PetscQuadratureView	src/dm/dt/interface/dt.c	/^PetscErrorCode PetscQuadratureView(PetscQuadrature quad, PetscViewer viewer)$/;"	f	language:C	typeref:typename:PetscErrorCode
 PetscQuadratureView_Ascii	src/dm/dt/interface/dt.c	/^static PetscErrorCode PetscQuadratureView_Ascii(PetscQuadrature quad, PetscViewer v)$/;"	f	language:C	typeref:typename:PetscErrorCode	file:
 PetscRMTree	src/sys/fileio/fdir.c	/^PetscErrorCode PetscRMTree(const char dir[])$/;"	f	language:C	typeref:typename:PetscErrorCode
-PetscRandom	include/petsc/finclude/petscsys.h	/^#define PetscRandom /;"	d	language:C++
+PetscRandom	include/petsc/finclude/petscsys.h	/^#define PetscRandom type(tPetscRandom)/;"	d	language:C++
 PetscRandom	include/petscsystypes.h	/^typedef struct _p_PetscRandom *PetscRandom;$/;"	t	language:C++	typeref:struct:_p_PetscRandom *
 PetscRandom123	src/sys/classes/random/impls/random123/random123.c	/^} PetscRandom123;$/;"	t	language:C	typeref:struct:_n_PetscRandom123	file:
 PetscRandom123Step	src/sys/classes/random/impls/random123/random123.c	/^static PetscReal PetscRandom123Step(PetscRandom123 *r123)$/;"	f	language:C	typeref:typename:PetscReal	file:
@@ -27425,6 +27547,7 @@
 PetscRealIntMultTruncate	include/petscsys.h	/^static inline PetscInt PetscRealIntMultTruncate(PetscReal a, PetscInt b)$/;"	f	language:C++	typeref:typename:PetscInt
 PetscRealPart	include/petsc/finclude/petscsys.h	/^#define PetscRealPart(/;"	d	language:C++
 PetscRealPart	include/petscmath.h	/^  #define PetscRealPart(/;"	d	language:C++
+PetscRealPart	include/petscmath.h	/^  #define PetscRealPart(a) PetscRealPartC/;"	d	language:C++
 PetscRealPartComplex	include/petscmath.h	/^      #define PetscRealPartComplex(/;"	d	language:C++
 PetscRealPartComplex	include/petscmath.h	/^    #define PetscRealPartComplex(/;"	d	language:C++
 PetscRealSortSemiOrdered	src/sys/utils/sortso.c	/^PetscErrorCode PetscRealSortSemiOrdered(PetscInt n, PetscReal arr[])$/;"	f	language:C	typeref:typename:PetscErrorCode
@@ -27447,7 +27570,7 @@
 PetscSEMOperators	src/tao/unconstrained/tutorials/burgers_spectral.c	/^} PetscSEMOperators;$/;"	t	language:C	typeref:struct:__anoned66bdd90408	file:
 PetscSEMOperators	src/tao/unconstrained/tutorials/spectraladjointassimilation.c	/^} PetscSEMOperators;$/;"	t	language:C	typeref:struct:__anonef88fef60408	file:
 PetscSEMOperators	src/ts/tutorials/ex50.c	/^} PetscSEMOperators;$/;"	t	language:C	typeref:struct:__anone0e434db0408	file:
-PetscSF	include/petsc/finclude/petscis.h	/^#define PetscSF /;"	d	language:C++
+PetscSF	include/petsc/finclude/petscis.h	/^#define PetscSF type(tPetscSF)/;"	d	language:C++
 PetscSF	include/petscsftypes.h	/^typedef struct _p_PetscSF *PetscSF;$/;"	t	language:C++	typeref:struct:_p_PetscSF *
 PetscSFAint	src/vec/is/sf/impls/basic/neighbor/sfneighbor.c	/^typedef MPI_Aint  PetscSFAint;$/;"	t	language:C	typeref:typename:MPI_Aint	file:
 PetscSFAint	src/vec/is/sf/impls/basic/neighbor/sfneighbor.c	/^typedef PetscMPIInt PetscSFAint;$/;"	t	language:C	typeref:typename:PetscMPIInt	file:
@@ -27722,13 +27845,14 @@
 PetscSSEHardwareTest	src/sys/utils/sseenabled.c	/^  #define PetscSSEHardwareTest(/;"	d	language:C	file:
 PetscSSEHardwareTest	src/sys/utils/sseenabled.c	/^PetscErrorCode PetscSSEHardwareTest(PetscBool *flag)$/;"	f	language:C	typeref:typename:PetscErrorCode
 PetscSSEIsEnabled	src/sys/utils/sseenabled.c	/^PetscErrorCode   PetscSSEIsEnabled(MPI_Comm comm, PetscBool *lflag, PetscBool *gflag)$/;"	f	language:C	typeref:typename:PetscErrorCode
-PetscSSEOSEnabledTest	src/sys/utils/sseenabled.c	/^    #define PetscSSEOSEnabledTest(/;"	d	language:C	file:
+PetscSSEOSEnabledTest	src/sys/utils/sseenabled.c	/^    #define PetscSSEOSEnabledTest(arg) PetscSSEOSEnabledTest_/;"	d	language:C	file:
 PetscSSEOSEnabledTest	src/sys/utils/sseenabled.c	/^  #define PetscSSEOSEnabledTest(/;"	d	language:C	file:
 PetscSSEOSEnabledTest_Linux	src/sys/utils/sseenabled.c	/^PetscErrorCode PetscSSEOSEnabledTest_Linux(PetscBool *flag)$/;"	f	language:C	typeref:typename:PetscErrorCode
 PetscSSEOSEnabledTest_TRUE	src/sys/utils/sseenabled.c	/^PetscErrorCode PetscSSEOSEnabledTest_TRUE(PetscBool *flag)$/;"	f	language:C	typeref:typename:PetscErrorCode
 PetscSSLDestroyContext	src/sys/webclient/client.c	/^PetscErrorCode PetscSSLDestroyContext(SSL_CTX *ctx)$/;"	f	language:C	typeref:typename:PetscErrorCode
 PetscSSLInitializeContext	src/sys/webclient/client.c	/^PetscErrorCode PetscSSLInitializeContext(SSL_CTX **octx)$/;"	f	language:C	typeref:typename:PetscErrorCode
 PetscScAbort	src/dm/impls/forest/p4est/petsc_p4est_package.c	/^  #define PetscScAbort /;"	d	language:C	file:
+PetscScAbort	src/dm/impls/forest/p4est/petsc_p4est_package.c	/^  #define PetscScAbort PetscScAbort_/;"	d	language:C	file:
 PetscScAbort_longjmp	src/dm/impls/forest/p4est/petsc_p4est_package.c	/^PETSC_INTERN void                 PetscScAbort_longjmp(void)$/;"	f	language:C	typeref:typename:PETSC_INTERN void
 PetscScJumpBuf	src/dm/impls/forest/p4est/petsc_p4est_package.c	/^PETSC_VISIBILITY_INTERNAL jmp_buf PetscScJumpBuf;$/;"	v	language:C	typeref:typename:PETSC_VISIBILITY_INTERNAL jmp_buf
 PetscScJumpBuf	src/dm/impls/forest/p4est/petsc_p4est_package.h	/^PETSC_INTERN jmp_buf PetscScJumpBuf;$/;"	v	language:C++	typeref:typename:PETSC_INTERN jmp_buf
@@ -27752,7 +27876,7 @@
 PetscScalarToPetscInt	src/mat/impls/aij/seq/seqcusparse/aijcusparse.cu	/^struct PetscScalarToPetscInt {$/;"	s	language:C	file:
 PetscScalarView	src/sys/error/err.c	/^PetscErrorCode PetscScalarView(PetscInt N, const PetscScalar idx[], PetscViewer viewer)$/;"	f	language:C	typeref:typename:PetscErrorCode
 PetscScanString	src/sys/objects/aoptions.c	/^static PetscErrorCode PetscScanString(MPI_Comm comm, size_t n, char str[])$/;"	f	language:C	typeref:typename:PetscErrorCode	file:
-PetscSection	include/petsc/finclude/petscis.h	/^#define PetscSection /;"	d	language:C++
+PetscSection	include/petsc/finclude/petscis.h	/^#define PetscSection type(tPetscSection)/;"	d	language:C++
 PetscSection	include/petscsectiontypes.h	/^typedef struct _p_PetscSection *PetscSection;$/;"	t	language:C++	typeref:struct:_p_PetscSection *
 PetscSectionAddConstraintDof	src/vec/is/section/interface/section.c	/^PetscErrorCode PetscSectionAddConstraintDof(PetscSection s, PetscInt point, PetscInt numDof)$/;"	f	language:C	typeref:typename:PetscErrorCode
 PetscSectionAddDof	src/vec/is/section/interface/section.c	/^PetscErrorCode PetscSectionAddDof(PetscSection s, PetscInt point, PetscInt numDof)$/;"	f	language:C	typeref:typename:PetscErrorCode
@@ -27857,7 +27981,7 @@
 PetscSectionSetUp	src/vec/is/section/interface/section.c	/^PetscErrorCode PetscSectionSetUp(PetscSection s)$/;"	f	language:C	typeref:typename:PetscErrorCode
 PetscSectionSetUpBC	src/vec/is/section/interface/section.c	/^PetscErrorCode PetscSectionSetUpBC(PetscSection s)$/;"	f	language:C	typeref:typename:PetscErrorCode
 PetscSectionSetUseFieldOffsets	src/vec/is/section/interface/section.c	/^PetscErrorCode PetscSectionSetUseFieldOffsets(PetscSection s, PetscBool flg)$/;"	f	language:C	typeref:typename:PetscErrorCode
-PetscSectionSym	include/petsc/finclude/petscis.h	/^#define PetscSectionSym /;"	d	language:C++
+PetscSectionSym	include/petsc/finclude/petscis.h	/^#define PetscSectionSym type(tPetscSectionSym)/;"	d	language:C++
 PetscSectionSym	include/petscsectiontypes.h	/^typedef struct _p_PetscSectionSym *PetscSectionSym;$/;"	t	language:C++	typeref:struct:_p_PetscSectionSym *
 PetscSectionSymCopy	src/vec/is/section/interface/section.c	/^PetscErrorCode PetscSectionSymCopy(PetscSectionSym sym, PetscSectionSym nsym)$/;"	f	language:C	typeref:typename:PetscErrorCode
 PetscSectionSymCopy_Label	src/dm/label/dmlabel.c	/^static PetscErrorCode PetscSectionSymCopy_Label(PetscSectionSym sym, PetscSectionSym nsym)$/;"	f	language:C	typeref:typename:PetscErrorCode	file:
@@ -28129,6 +28253,7 @@
 PetscSparseDenseMaxDot	src/mat/impls/aij/seq/aij.h	/^#define PetscSparseDenseMaxDot(/;"	d	language:C++
 PetscSparseDenseMinusDot	src/mat/impls/aij/seq/aij.h	/^  #define PetscSparseDenseMinusDot(/;"	d	language:C++
 PetscSparseDensePlusDot	src/mat/impls/aij/seq/aij.h	/^  #define PetscSparseDensePlusDot(/;"	d	language:C++
+PetscSparseDensePlusDot	src/mat/impls/aij/seq/aij.h	/^  #define PetscSparseDensePlusDot(sum, r, xv, xi, nnz) PetscSparseDensePlusDot_/;"	d	language:C++
 PetscSparseDensePlusDot_AVX512_Private	src/mat/impls/aij/seq/aij.h	/^static inline void PetscSparseDensePlusDot_AVX512_Private(PetscScalar *sum, const PetscScalar *x/;"	f	language:C++	typeref:typename:void
 PetscSparseDensePlusDot_no_function	src/mat/impls/sbaij/seq/relax.h	/^  #define PetscSparseDensePlusDot_no_function(/;"	d	language:C++
 PetscSpinlock	include/petsc/private/petscimpl.h	/^typedef ck_spinlock_t        PetscSpinlock;$/;"	t	language:C++	typeref:typename:ck_spinlock_t
@@ -28246,7 +28371,7 @@
 PetscStrendswith	src/sys/utils/str.c	/^PetscErrorCode PetscStrendswith(const char a[], const char b[], PetscBool *flg)$/;"	f	language:C	typeref:typename:PetscErrorCode
 PetscStrendswithwhich	src/sys/utils/str.c	/^PetscErrorCode PetscStrendswithwhich(const char a[], const char *const *bs, PetscInt *cnt)$/;"	f	language:C	typeref:typename:PetscErrorCode
 PetscStrgrt	src/sys/utils/str.c	/^PetscErrorCode PetscStrgrt(const char a[], const char b[], PetscBool *t)$/;"	f	language:C	typeref:typename:PetscErrorCode
-PetscStringize	include/petscmacros.h	/^#define PetscStringize(/;"	d	language:C++
+PetscStringize	include/petscmacros.h	/^#define PetscStringize(...)  PetscStringize_/;"	d	language:C++
 PetscStringize_	include/petscmacros.h	/^#define PetscStringize_(/;"	d	language:C++
 PetscStripAllZeros	src/sys/classes/draw/utils/axisc.c	/^PetscErrorCode PetscStripAllZeros(char *buf)$/;"	f	language:C	typeref:typename:PetscErrorCode
 PetscStripInitialZero	src/sys/classes/draw/utils/axisc.c	/^PetscErrorCode PetscStripInitialZero(char *buf)$/;"	f	language:C	typeref:typename:PetscErrorCode
@@ -28266,7 +28391,7 @@
 PetscStrtolower	src/sys/utils/str.c	/^PetscErrorCode PetscStrtolower(char a[])$/;"	f	language:C	typeref:typename:PetscErrorCode
 PetscStrtoupper	src/sys/utils/str.c	/^PetscErrorCode PetscStrtoupper(char a[])$/;"	f	language:C	typeref:typename:PetscErrorCode
 PetscStrtoz	src/sys/objects/options.c	/^static PetscErrorCode PetscStrtoz(const char name[], PetscScalar *a, char **endptr, PetscBool *i/;"	f	language:C	typeref:typename:PetscErrorCode	file:
-PetscSubcomm	include/petsc/finclude/petscsys.h	/^#define PetscSubcomm /;"	d	language:C++
+PetscSubcomm	include/petsc/finclude/petscsys.h	/^#define PetscSubcomm type(tPetscSubcomm)/;"	d	language:C++
 PetscSubcomm	include/petscsystypes.h	/^typedef struct _n_PetscSubcomm *PetscSubcomm;$/;"	t	language:C++	typeref:struct:_n_PetscSubcomm *
 PetscSubcommChild	include/petscsys.h	/^static inline MPI_Comm PetscSubcommChild(PetscSubcomm scomm)$/;"	f	language:C++	typeref:typename:MPI_Comm
 PetscSubcommContiguousParent	include/petscsys.h	/^static inline MPI_Comm PetscSubcommContiguousParent(PetscSubcomm scomm)$/;"	f	language:C++	typeref:typename:MPI_Comm
@@ -28421,6 +28546,7 @@
 PetscValidLogicalCollectiveRealComm	src/ts/interface/tshistory.c	/^  #define PetscValidLogicalCollectiveRealComm(/;"	d	language:C	file:
 PetscValidLogicalCollectiveScalar	include/petsc/private/petscimpl.h	/^    #define PetscValidLogicalCollectiveScalar(/;"	d	language:C++
 PetscValidPointer	include/petsc/private/petscimpl.h	/^    #define PetscValidPointer(/;"	d	language:C++
+PetscValidPointer	include/petsc/private/petscimpl.h	/^    #define PetscValidPointer(h, arg)       PetscValidPointer_/;"	d	language:C++
 PetscValidPointer_Internal	include/petsc/private/petscimpl.h	/^    #define PetscValidPointer_Internal(/;"	d	language:C++
 PetscValidRealPointer	include/petsc/private/petscimpl.h	/^    #define PetscValidRealPointer(/;"	d	language:C++
 PetscValidScalarPointer	include/petsc/private/petscimpl.h	/^    #define PetscValidScalarPointer(/;"	d	language:C++
@@ -28434,7 +28560,7 @@
 PetscViennaCLInit	src/vec/vec/impls/seq/seqviennacl/vecviennacl.cxx	/^PETSC_EXTERN PetscErrorCode PetscViennaCLInit()$/;"	f	language:C++	typeref:typename:PETSC_EXTERN PetscErrorCode
 PetscViennaCLSynchronize	include/petscsys.h	/^PETSC_EXTERN PetscBool PetscViennaCLSynchronize;$/;"	v	language:C++	typeref:typename:PETSC_EXTERN PetscBool
 PetscViennaCLSynchronize	src/sys/objects/pinit.c	/^PetscBool                   PetscViennaCLSynchronize = PETSC_FALSE;$/;"	v	language:C	typeref:typename:PetscBool
-PetscViewer	include/petsc/finclude/petscviewer.h	/^#define PetscViewer /;"	d	language:C++
+PetscViewer	include/petsc/finclude/petscviewer.h	/^#define PetscViewer type(tPetscViewer)/;"	d	language:C++
 PetscViewer	include/petscviewertypes.h	/^typedef struct _p_PetscViewer *PetscViewer;$/;"	t	language:C++	typeref:struct:_p_PetscViewer *
 PetscViewerADIOSOpen	src/sys/classes/viewer/impls/adios/adios.c	/^PetscErrorCode PetscViewerADIOSOpen(MPI_Comm comm, const char name[], PetscFileMode type, PetscV/;"	f	language:C	typeref:typename:PetscErrorCode
 PetscViewerASCIIAddTab	src/sys/classes/viewer/impls/ascii/filev.c	/^PetscErrorCode PetscViewerASCIIAddTab(PetscViewer viewer, PetscInt tabs)$/;"	f	language:C	typeref:typename:PetscErrorCode
@@ -29215,7 +29341,7 @@
 PostStep	src/ts/tutorials/power_grid/ex8.c	/^PetscErrorCode PostStep(TS ts)$/;"	f	language:C	typeref:typename:PetscErrorCode
 PostStepFunction	src/ts/tutorials/power_grid/ex9adj.c	/^PetscErrorCode PostStepFunction(TS ts)$/;"	f	language:C	typeref:typename:PetscErrorCode
 PostUnpack	src/vec/is/sf/impls/basic/sfpack.h	/^  PetscErrorCode (*PostUnpack)(PetscSF, PetscSFLink, PetscSFDirection);$/;"	m	language:C++	struct:_n_PetscSFLink	typeref:typename:PetscErrorCode (*)(PetscSF,PetscSFLink,PetscSFDirection)
-Pow	src/sys/classes/draw/tests/ex6.c	/^#define Pow /;"	d	language:C	file:
+Pow	src/sys/classes/draw/tests/ex6.c	/^#define Pow PetscPowR/;"	d	language:C	file:
 Pp_re	src/ksp/pc/impls/telescope/telescope.h	/^  PetscInt  Mp_re, Np_re, Pp_re;$/;"	m	language:C++	struct:__anon1025b6fc0208	typeref:typename:PetscInt
 Pr	src/snes/tutorials/ex31.c	/^  PetscReal  Ma, Pr, h_0;$/;"	m	language:C	struct:__anon520d672c0108	typeref:typename:PetscReal	file:
 PreCheck	src/snes/tutorials/ex15.c	/^typedef struct _n_PreCheck *PreCheck;$/;"	t	language:C	typeref:struct:_n_PreCheck *	file:
@@ -29247,8 +29373,8 @@
 Pressure_PG	src/ts/tutorials/ex11_sa.c	/^static PetscErrorCode Pressure_PG(const PetscReal *pars, const EulerNode *x, PetscScalar *p)$/;"	f	language:C	typeref:typename:PetscErrorCode	file:
 Prime	src/sys/tests/ex63.c	/^PetscErrorCode Prime(PetscInt64 **set, PetscInt n)$/;"	f	language:C	typeref:typename:PetscErrorCode
 Print	src/binding/petsc4py/docs/apiref/petsc4py.PETSc.Sys-class.html	/^          <td><span class="summary-sig"><a name="Print"><\/a><span class="summary-sig-name">Prin/;"	a	language:HTML
-Print	src/snes/tests/ex18f90.F90	/^    procedure, public :: Print /;"	M	language:Fortran	type:base_type
-Print	src/snes/tests/ex18f90.F90	/^    procedure, public :: Print /;"	M	language:Fortran	type:extended_type
+Print	src/snes/tests/ex18f90.F90	/^    procedure, public :: Print =>  ExtendedPrint$/;"	M	language:Fortran	type:extended_type
+Print	src/snes/tests/ex18f90.F90	/^    procedure, public :: Print => BasePrint$/;"	M	language:Fortran	type:base_type
 PrintCsrMatrix	src/mat/impls/aij/seq/kokkos/aijkok.kokkos.cxx	/^PETSC_INTERN PetscErrorCode PrintCsrMatrix(const KokkosCsrMatrix &csrmat)$/;"	f	language:C++	typeref:typename:PETSC_INTERN PetscErrorCode
 PrintSet	src/sys/tests/ex62.c	/^PetscErrorCode PrintSet(PetscInt64 *set)$/;"	f	language:C	typeref:typename:PetscErrorCode
 PrintSet	src/sys/tests/ex63.c	/^PetscErrorCode PrintSet(MPI_Comm comm, PetscInt64 *set)$/;"	f	language:C	typeref:typename:PetscErrorCode
@@ -29584,6 +29710,7 @@
 READ_WRITE	src/ksp/pc/impls/svd/svd.c	/^  READ_WRITE = 3$/;"	e	language:C	enum:__anon33190f890203	file:
 REAL	src/ksp/pc/impls/parms/parms.c	/^#define REAL /;"	d	language:C	file:
 REAL_FILE_CLASSID	include/petscvec.h	/^#define REAL_FILE_CLASSID /;"	d	language:C++
+REDIRECT_TO	src/benchmarks/daemon.py	/^   REDIRECT_TO = "\/dev\/null"$/;"	v	language:Python
 REDIRECT_TO	src/benchmarks/daemon.py	/^   REDIRECT_TO = os.devnull$/;"	v	language:Python
 REDISTRIBUTE	src/binding/petsc4py/docs/apiref/petsc4py.PETSc.PC.Type-class.html	/^        <a name="REDISTRIBUTE"><\/a><span class="summary-name">REDISTRIBUTE<\/span> = <code titl/;"	a	language:HTML
 REDUCT	src/ksp/ksp/tests/benchmarkscatters/ex1.c	/^  REDUCT,$/;"	e	language:C	enum:__anon4d8f05fa0103	file:
@@ -29792,12 +29919,12 @@
 RICHARDSON	src/binding/petsc4py/docs/apiref/petsc4py.PETSc.KSP.Type-class.html	/^        <a name="RICHARDSON"><\/a><span class="summary-name">RICHARDSON<\/span> = <code title="'/;"	a	language:HTML
 RIGHT	src/binding/petsc4py/docs/apiref/petsc4py.PETSc.DMStag.StencilLocation-class.html	/^        <a name="RIGHT"><\/a><span class="summary-name">RIGHT<\/span> = <code title="15">15<\/co/;"	a	language:HTML
 RIGHT	src/binding/petsc4py/docs/apiref/petsc4py.PETSc.PC.Side-class.html	/^        <a name="RIGHT"><\/a><span class="summary-name">RIGHT<\/span> = <code title="1">1<\/code/;"	a	language:HTML
-RIGHT	src/dm/impls/stag/tests/ex18.c	/^#define RIGHT /;"	d	language:C	file:
-RIGHT	src/dm/impls/stag/tests/ex30.c	/^#define RIGHT /;"	d	language:C	file:
-RIGHT	src/dm/impls/stag/tests/ex5.c	/^#define RIGHT /;"	d	language:C	file:
-RIGHT	src/dm/impls/stag/tutorials/ex1.c	/^#define RIGHT /;"	d	language:C	file:
-RIGHT	src/dm/impls/stag/tutorials/ex2.c	/^#define RIGHT /;"	d	language:C	file:
-RIGHT	src/dm/impls/stag/tutorials/ex3.c	/^#define RIGHT /;"	d	language:C	file:
+RIGHT	src/dm/impls/stag/tests/ex18.c	/^#define RIGHT      DMSTAG_RIGHT$/;"	d	language:C	file:
+RIGHT	src/dm/impls/stag/tests/ex30.c	/^#define RIGHT            DMSTAG_RIGHT$/;"	d	language:C	file:
+RIGHT	src/dm/impls/stag/tests/ex5.c	/^#define RIGHT   DMSTAG_RIGHT$/;"	d	language:C	file:
+RIGHT	src/dm/impls/stag/tutorials/ex1.c	/^#define RIGHT   DMSTAG_RIGHT$/;"	d	language:C	file:
+RIGHT	src/dm/impls/stag/tutorials/ex2.c	/^#define RIGHT      DMSTAG_RIGHT$/;"	d	language:C	file:
+RIGHT	src/dm/impls/stag/tutorials/ex3.c	/^#define RIGHT            DMSTAG_RIGHT$/;"	d	language:C	file:
 RIGHT	src/ksp/pc/impls/tfs/xxt.c	/^#define RIGHT /;"	d	language:C	file:
 RIGHT	src/ksp/pc/impls/tfs/xyt.c	/^#define RIGHT /;"	d	language:C	file:
 RINFO	src/mat/impls/aij/mpi/mumps/mumps.c	/^#define RINFO(/;"	d	language:C	file:
@@ -29828,9 +29955,9 @@
 ROWSCALINGVIENNACL	src/binding/petsc4py/docs/apiref/petsc4py.PETSc.PC.Type-class.html	/^        <a name="ROWSCALINGVIENNACL"><\/a><span class="summary-name">ROWSCALINGVIENNACL<\/span> /;"	a	language:HTML
 ROWSCALINGVIENNACL	src/ksp/pc/impls/rowscalingviennacl/rowscalingviennacl.cxx	/^  viennacl::linalg::row_scaling<viennacl::compressed_matrix<PetscScalar>> *ROWSCALINGVIENNACL;$/;"	m	language:C++	struct:__anon06ce95710108	typeref:typename:viennacl::linalg::row_scaling<viennacl::compressed_matrix<PetscScalar>> *	file:
 ROW_ORIENTED	src/binding/petsc4py/docs/apiref/petsc4py.PETSc.Mat.Option-class.html	/^        <a name="ROW_ORIENTED"><\/a><span class="summary-name">ROW_ORIENTED<\/span> = <code titl/;"	a	language:HTML
-RS	src/ksp/ksp/impls/gmres/fgmres/fgmresimpl.h	/^#define RS(/;"	d	language:C++
-RS	src/ksp/ksp/impls/gmres/pgmres/pgmresimpl.h	/^#define RS(/;"	d	language:C++
-RS	src/ksp/ksp/impls/gmres/pipefgmres/pipefgmresimpl.h	/^#define RS(/;"	d	language:C++
+RS	src/ksp/ksp/impls/gmres/fgmres/fgmresimpl.h	/^#define RS(a) (fgmres->rs_origin + (a)) \/* RS /;"	d	language:C++
+RS	src/ksp/ksp/impls/gmres/pgmres/pgmresimpl.h	/^#define RS(a) (pgmres->rs_origin + (a)) \/* RS /;"	d	language:C++
+RS	src/ksp/ksp/impls/gmres/pipefgmres/pipefgmresimpl.h	/^#define RS(a) (pipefgmres->rs_origin + (a)) \/* RS /;"	d	language:C++
 RST2HTML	src/binding/petsc4py/makefile	/^RST2HTML = $(shell command -v rst2html || command -v rst2html.py || false)$/;"	m	language:Make
 RST2HTMLOPTS	src/binding/petsc4py/makefile	/^RST2HTMLOPTS  = --input-encoding=utf-8$/;"	m	language:Make
 RT	src/dm/impls/plex/plexfem.c	/^  PetscScalar *RT;    \/* The transposed rotation matrix, transforming a vector in the global ba/;"	m	language:C	struct:__anon4059c83a0108	typeref:typename:PetscScalar *	file:
@@ -30246,12 +30373,12 @@
 SL3	src/dm/impls/plex/gmshlex.h	/^#define SL3(/;"	d	language:C++
 SLEN	src/vec/vec/tests/ex48.c	/^#define SLEN /;"	d	language:C	file:
 SLICED	src/binding/petsc4py/docs/apiref/petsc4py.PETSc.DM.Type-class.html	/^        <a name="SLICED"><\/a><span class="summary-name">SLICED<\/span> = <code title="'sliced'"/;"	a	language:HTML
-SLU	src/mat/impls/aij/mpi/superlu_dist/superlu_dist.c	/^  #define SLU /;"	d	language:C	file:
+SLU	src/mat/impls/aij/mpi/superlu_dist/superlu_dist.c	/^  #define SLU                           SLU_/;"	d	language:C	file:
 SMV	src/ksp/ksp/impls/gmres/dgmres/dgmresimpl.h	/^#define SMV /;"	d	language:C++
 SN1	src/dm/impls/plex/gmshlex.h	/^#define SN1(/;"	d	language:C++
 SN2	src/dm/impls/plex/gmshlex.h	/^#define SN2(/;"	d	language:C++
 SN3	src/dm/impls/plex/gmshlex.h	/^#define SN3(/;"	d	language:C++
-SNES	include/petsc/finclude/petscsnes.h	/^#define SNES /;"	d	language:C++
+SNES	include/petsc/finclude/petscsnes.h	/^#define SNES type(tSNES)/;"	d	language:C++
 SNES	include/petscsnes.h	/^typedef struct _p_SNES *SNES;$/;"	t	language:C++	typeref:struct:_p_SNES *
 SNES	src/mat/matfd/ftn-custom/zfdmatrixf.c	/^typedef struct _p_SNES *SNES;$/;"	t	language:C	typeref:struct:_p_SNES *	file:
 SNESANDERSON	include/petscsnes.h	/^#define SNESANDERSON /;"	d	language:C++
@@ -30952,7 +31079,7 @@
 SNESShellSetContext	src/snes/impls/shell/snesshell.c	/^PetscErrorCode SNESShellSetContext(SNES snes, void *ctx)$/;"	f	language:C	typeref:typename:PetscErrorCode
 SNESShellSetSolve	src/snes/impls/shell/snesshell.c	/^PetscErrorCode SNESShellSetSolve(SNES snes, PetscErrorCode (*solve)(SNES, Vec))$/;"	f	language:C	typeref:typename:PetscErrorCode
 SNESShellSetSolve_Shell	src/snes/impls/shell/snesshell.c	/^PetscErrorCode SNESShellSetSolve_Shell(SNES snes, PetscErrorCode (*solve)(SNES, Vec))$/;"	f	language:C	typeref:typename:PetscErrorCode
-SNESSkipConverged	include/petscsnes.h	/^#define SNESSkipConverged /;"	d	language:C++
+SNESSkipConverged	include/petscsnes.h	/^#define SNESSkipConverged (SNESSkipConverged,/;"	d	language:C++
 SNESSkipConverged	include/petscsnes.h	/^PETSC_DEPRECATED_FUNCTION("Use SNESConvergedSkip() (since version 3.5)") static inline void SNES/;"	f	language:C++	typeref:typename:PETSC_DEPRECATED_FUNCTION ("Use SNESConvergedSkip() (since version 3.5)")void
 SNESSolve	src/snes/interface/snes.c	/^PetscErrorCode SNESSolve(SNES snes, Vec b, Vec x)$/;"	f	language:C	typeref:typename:PetscErrorCode
 SNESSolve_Anderson	src/snes/impls/ngmres/anderson.c	/^static PetscErrorCode SNESSolve_Anderson(SNES snes)$/;"	f	language:C	typeref:typename:PetscErrorCode	file:
@@ -31184,7 +31311,7 @@
 SOLUTIONONLY	src/ts/trajectory/impls/memory/trajmemory.c	/^  SOLUTIONONLY    = 0,$/;"	e	language:C	enum:__anon11083a3f0203	file:
 SOLUTION_STAGES	src/ts/trajectory/impls/memory/trajmemory.c	/^  SOLUTION_STAGES = 2$/;"	e	language:C	enum:__anon11083a3f0203	file:
 SOLVEstruct	src/mat/impls/aij/mpi/superlu_dist/superlu_dist.c	/^  SOLVEstruct_t          SOLVEstruct;$/;"	m	language:C	struct:__anon0965ce5f0108	typeref:typename:SOLVEstruct_t	file:
-SOLVEstruct_t	src/mat/impls/aij/mpi/superlu_dist/superlu_dist.c	/^  #define SOLVEstruct_t /;"	d	language:C	file:
+SOLVEstruct_t	src/mat/impls/aij/mpi/superlu_dist/superlu_dist.c	/^  #define SOLVEstruct_t                 zSOLVEstruct_t$/;"	d	language:C	file:
 SOL_CRYER	src/ts/tutorials/ex53.c	/^  SOL_CRYER,$/;"	e	language:C	enum:__anone0e4419e0103	file:
 SOL_CUBIC	src/snes/tutorials/ex76.c	/^  SOL_CUBIC,$/;"	e	language:C	enum:__anon520fadf50103	file:
 SOL_CUBIC	src/ts/tutorials/ex76.c	/^  SOL_CUBIC,$/;"	e	language:C	enum:__anone0e567230203	file:
@@ -33295,11 +33422,11 @@
 SRState	include/petsc/private/petscimpl.h	/^} SRState;$/;"	t	language:C++	typeref:enum:__anonbd63bb570503
 SS	src/ksp/ksp/impls/gcr/gcr.c	/^  Vec         *VV, *SS;$/;"	m	language:C	struct:__anon50ac84620108	typeref:typename:Vec *	file:
 SS	src/ksp/ksp/impls/gmres/dgmres/dgmresimpl.h	/^#define SS(/;"	d	language:C++
-SS	src/ksp/ksp/impls/gmres/fgmres/fgmresimpl.h	/^#define SS(/;"	d	language:C++
+SS	src/ksp/ksp/impls/gmres/fgmres/fgmresimpl.h	/^#define SS(a) (fgmres->ss_origin + (a)) \/* SS /;"	d	language:C++
 SS	src/ksp/ksp/impls/gmres/gmresimpl.h	/^  #define SS(/;"	d	language:C++
-SS	src/ksp/ksp/impls/gmres/lgmres/lgmresimpl.h	/^#define SS(/;"	d	language:C++
-SS	src/ksp/ksp/impls/gmres/pgmres/pgmresimpl.h	/^#define SS(/;"	d	language:C++
-SS	src/ksp/ksp/impls/gmres/pipefgmres/pipefgmresimpl.h	/^#define SS(/;"	d	language:C++
+SS	src/ksp/ksp/impls/gmres/lgmres/lgmresimpl.h	/^#define SS(a)  (lgmres->ss_origin + (a)) \/* SS /;"	d	language:C++
+SS	src/ksp/ksp/impls/gmres/pgmres/pgmresimpl.h	/^#define SS(a) (pgmres->ss_origin + (a)) \/* SS /;"	d	language:C++
+SS	src/ksp/ksp/impls/gmres/pipefgmres/pipefgmresimpl.h	/^#define SS(a) (pipefgmres->ss_origin + (a)) \/* SS /;"	d	language:C++
 SSE2	src/benchmarks/streams/SSEVersion.c	/^#  define SSE2 /;"	d	language:C	file:
 SSEVersion	src/benchmarks/streams/makefile	/^SSEVersion: SSEVersion.o$/;"	t	language:Make
 SSE_FEATURE_FLAG	src/sys/utils/sseenabled.c	/^  #define SSE_FEATURE_FLAG /;"	d	language:C	file:
@@ -33736,9 +33863,9 @@
 Scale2	src/ts/tutorials/ex11_sa.c	/^static inline void Scale2(PetscScalar a, const PetscScalar *x, PetscScalar *y)$/;"	f	language:C	typeref:typename:void	file:
 Scale2Real	src/ts/tutorials/ex11.c	/^static inline void Scale2Real(PetscReal a, const PetscReal *x, PetscReal *y)$/;"	f	language:C	typeref:typename:void	file:
 ScalePermstruct	src/mat/impls/aij/mpi/superlu_dist/superlu_dist.c	/^  ScalePermstruct_t      ScalePermstruct;$/;"	m	language:C	struct:__anon0965ce5f0108	typeref:typename:ScalePermstruct_t	file:
-ScalePermstructFree	src/mat/impls/aij/mpi/superlu_dist/superlu_dist.c	/^  #define ScalePermstructFree /;"	d	language:C	file:
-ScalePermstructInit	src/mat/impls/aij/mpi/superlu_dist/superlu_dist.c	/^  #define ScalePermstructInit /;"	d	language:C	file:
-ScalePermstruct_t	src/mat/impls/aij/mpi/superlu_dist/superlu_dist.c	/^  #define ScalePermstruct_t /;"	d	language:C	file:
+ScalePermstructFree	src/mat/impls/aij/mpi/superlu_dist/superlu_dist.c	/^  #define ScalePermstructFree           zScalePermstructFree$/;"	d	language:C	file:
+ScalePermstructInit	src/mat/impls/aij/mpi/superlu_dist/superlu_dist.c	/^  #define ScalePermstructInit           zScalePermstructInit$/;"	d	language:C	file:
+ScalePermstruct_t	src/mat/impls/aij/mpi/superlu_dist/superlu_dist.c	/^  #define ScalePermstruct_t             zScalePermstruct_t$/;"	d	language:C	file:
 ScaledIdentity	src/binding/petsc4py/test/test_mat_py.py	/^class ScaledIdentity(Matrix):$/;"	c	language:Python
 Scatter	src/tao/pde_constrained/tutorials/elliptic.c	/^PetscErrorCode Scatter(Vec x, Vec sub1, VecScatter scat1, Vec sub2, VecScatter scat2)$/;"	f	language:C	typeref:typename:PetscErrorCode
 Scatter	src/tao/pde_constrained/tutorials/hyperbolic.c	/^PetscErrorCode Scatter(Vec x, Vec state, VecScatter s_scat, Vec design, VecScatter d_scat)$/;"	f	language:C	typeref:typename:PetscErrorCode
@@ -33764,7 +33891,7 @@
 Script	config/BuildSystem/script.py	/^class Script(logger.Logger):$/;"	c	language:Python
 Sdiag	src/tao/pde_constrained/tutorials/elliptic.c	/^  Vec Swork, Twork, Sdiag, Ywork;$/;"	m	language:C	struct:__anon6826b8cd0108	typeref:typename:Vec	file:
 Search	src/binding/petsc4py/docs/usrman/search.html	/^  <h1 id="search-documentation">Search<\/h1>$/;"	h	language:HTML
-Search — PETSc for Python 3.18.4 documentation	src/binding/petsc4py/docs/usrman/search.html	/^    <title>Search — PETSc for Python 3.18.4 documentation<\/title>$/;"	j	language:HTML
+Search — PETSc for Python 3.18.5 documentation	src/binding/petsc4py/docs/usrman/search.html	/^    <title>Search — PETSc for Python 3.18.5 documentation<\/title>$/;"	j	language:HTML
 Second	src/benchmarks/streams/SSEVersion.c	/^static double Second()$/;"	f	language:C	typeref:typename:double	file:
 Seed	src/ts/tutorials/autodiff/adolc-utils/contexts.cxx	/^  PetscScalar **Seed, **Rec, *rec;$/;"	m	language:C++	struct:__anon7c878c320108	typeref:typename:PetscScalar **	file:
 SelectBrush	src/sys/classes/draw/impls/win32/win32draw.c	/^  #define SelectBrush(/;"	d	language:C	file:
@@ -34011,7 +34138,7 @@
 SolutionType	src/ts/tutorials/ex45.c	/^} SolutionType;$/;"	t	language:C	typeref:enum:__anone0e3bdbf0103	file:
 SolutionType	src/ts/tutorials/ex53.c	/^} SolutionType;$/;"	t	language:C	typeref:enum:__anone0e4419e0103	file:
 SolutionTypes	src/dm/impls/plex/tests/ex39.c	/^const char *const SolutionTypes[] = {"linear", "sinusoidal", "Solution", "", NULL};$/;"	v	language:C	typeref:typename:const char * const[]
-SolveFinalize	src/mat/impls/aij/mpi/superlu_dist/superlu_dist.c	/^  #define SolveFinalize /;"	d	language:C	file:
+SolveFinalize	src/mat/impls/aij/mpi/superlu_dist/superlu_dist.c	/^  #define SolveFinalize                 zSolveFinalize$/;"	d	language:C	file:
 SolveODE	src/ts/tutorials/ex31.c	/^PetscErrorCode SolveODE(char *ptype, PetscReal dt, PetscReal tfinal, PetscInt maxiter, PetscReal/;"	f	language:C	typeref:typename:PetscErrorCode
 SolveTimeDepStokes	src/ksp/ksp/tutorials/ex70.c	/^static PetscErrorCode SolveTimeDepStokes(PetscInt mx, PetscInt my)$/;"	f	language:C	typeref:typename:PetscErrorCode	file:
 SortByRemote_Private	src/dm/impls/plex/plexcheckinterface.c	/^static PetscErrorCode SortByRemote_Private(PetscSF sf, PetscInt *rmine1[], PetscInt *rremote1[])$/;"	f	language:C	typeref:typename:PetscErrorCode	file:
@@ -34488,7 +34615,7 @@
 TRhead	src/sys/memory/mtr.c	/^static TRSPACE  *TRhead                = NULL;$/;"	v	language:C	typeref:typename:TRSPACE *	file:
 TRid	src/sys/memory/mtr.c	/^static int       TRid                  = 0;$/;"	v	language:C	typeref:typename:int	file:
 TRrequestedSize	src/sys/memory/mtr.c	/^static PetscBool TRrequestedSize       = PETSC_FALSE;$/;"	v	language:C	typeref:typename:PetscBool	file:
-TS	include/petsc/finclude/petscts.h	/^#define TS /;"	d	language:C++
+TS	include/petsc/finclude/petscts.h	/^#define TS type(tTS)/;"	d	language:C++
 TS	include/petscts.h	/^typedef struct _p_TS *TS;$/;"	t	language:C++	typeref:struct:_p_TS *
 TS	src/mat/matfd/ftn-custom/zfdmatrixf.c	/^typedef struct _p_TS *TS;$/;"	t	language:C	typeref:struct:_p_TS *	file:
 TS2GetSolution	src/ts/interface/ts.c	/^PetscErrorCode TS2GetSolution(TS ts, Vec *u, Vec *v)$/;"	f	language:C	typeref:typename:PetscErrorCode
@@ -34562,7 +34689,7 @@
 TSARKIMEXTestMassIdentity	src/ts/impls/arkimex/arkimex.c	/^static PetscErrorCode TSARKIMEXTestMassIdentity(TS ts, PetscBool *id)$/;"	f	language:C	typeref:typename:PetscErrorCode	file:
 TSARKIMEXType	include/petsc/finclude/petscts.h	/^#define TSARKIMEXType /;"	d	language:C++
 TSARKIMEXType	include/petscts.h	/^typedef const char *TSARKIMEXType;$/;"	t	language:C++	typeref:typename:const char *
-TSAdapt	include/petsc/finclude/petscts.h	/^#define TSAdapt /;"	d	language:C++
+TSAdapt	include/petsc/finclude/petscts.h	/^#define TSAdapt type(tTSAdapt)/;"	d	language:C++
 TSAdapt	include/petscts.h	/^typedef struct _p_TSAdapt *TSAdapt;$/;"	t	language:C++	typeref:struct:_p_TSAdapt *
 TSAdaptCandidateAdd	src/ts/adapt/interface/tsadapt.c	/^PetscErrorCode TSAdaptCandidateAdd(TSAdapt adapt, const char name[], PetscInt order, PetscInt st/;"	f	language:C	typeref:typename:PetscErrorCode
 TSAdaptCandidatesClear	src/ts/adapt/interface/tsadapt.c	/^PetscErrorCode TSAdaptCandidatesClear(TSAdapt adapt)$/;"	f	language:C	typeref:typename:PetscErrorCode
@@ -35674,7 +35801,7 @@
 TSThetaSetTheta_Theta	src/ts/impls/implicit/theta/theta.c	/^static PetscErrorCode TSThetaSetTheta_Theta(TS ts, PetscReal theta)$/;"	f	language:C	typeref:typename:PetscErrorCode	file:
 TSTheta_SNESSolve	src/ts/impls/implicit/theta/theta.c	/^static PetscErrorCode TSTheta_SNESSolve(TS ts, Vec b, Vec x)$/;"	f	language:C	typeref:typename:PetscErrorCode	file:
 TSTimeSpan	include/petsc/private/tsimpl.h	/^typedef struct _TS_TimeSpan *TSTimeSpan;$/;"	t	language:C++	typeref:struct:_TS_TimeSpan *
-TSTrajectory	include/petsc/finclude/petscts.h	/^#define TSTrajectory /;"	d	language:C++
+TSTrajectory	include/petsc/finclude/petscts.h	/^#define TSTrajectory type(tTSTrajectory)/;"	d	language:C++
 TSTrajectory	include/petscts.h	/^typedef struct _p_TSTrajectory *TSTrajectory;$/;"	t	language:C++	typeref:struct:_p_TSTrajectory *
 TSTrajectoryCreate	src/ts/trajectory/interface/traj.c	/^PetscErrorCode TSTrajectoryCreate(MPI_Comm comm, TSTrajectory *tj)$/;"	f	language:C	typeref:typename:PetscErrorCode
 TSTrajectoryCreate_Basic	src/ts/trajectory/impls/basic/trajbasic.c	/^PETSC_EXTERN PetscErrorCode TSTrajectoryCreate_Basic(TSTrajectory tj, TS ts)$/;"	f	language:C	typeref:typename:PETSC_EXTERN PetscErrorCode
@@ -35937,6 +36064,7 @@
 TYPE	src/binding/petsc4py/test/test_ts.py	/^    TYPE = PETSc.TS.Type.BEULER$/;"	v	language:Python	class:TestTSBeuler
 TYPE	src/binding/petsc4py/test/test_ts.py	/^    TYPE = PETSc.TS.Type.CN$/;"	v	language:Python	class:TestTSCN
 TYPE	src/binding/petsc4py/test/test_ts.py	/^    TYPE = PETSc.TS.Type.THETA$/;"	v	language:Python	class:TestTSTheta
+TYPE	src/binding/petsc4py/test/test_vec.py	/^        TYPE = PETSc.Vec.Type.MPI$/;"	v	language:Python	class:TestVecShared
 TYPE	src/binding/petsc4py/test/test_vec.py	/^        TYPE = PETSc.Vec.Type.SHARED$/;"	v	language:Python	class:TestVecShared
 TYPE	src/binding/petsc4py/test/test_vec.py	/^    TYPE = None$/;"	v	language:Python	class:BaseTestVec
 TYPE	src/binding/petsc4py/test/test_vec.py	/^    TYPE = PETSc.Vec.Type.MPI$/;"	v	language:Python	class:TestVecMPI
@@ -37031,7 +37159,7 @@
 TurnBackward	src/ts/trajectory/impls/memory/trajmemory.c	/^static PetscErrorCode TurnBackward(TS ts)$/;"	f	language:C	typeref:typename:PetscErrorCode	file:
 TurnForward	src/ts/trajectory/impls/memory/trajmemory.c	/^static PetscErrorCode TurnForward(TS ts)$/;"	f	language:C	typeref:typename:PetscErrorCode	file:
 TurnForwardWithStepsize	src/ts/trajectory/impls/memory/trajmemory.c	/^static PetscErrorCode TurnForwardWithStepsize(TS ts, PetscReal nextstepsize)$/;"	f	language:C	typeref:typename:PetscErrorCode	file:
-Tutorial — PETSc for Python 3.18.4 documentation	src/binding/petsc4py/docs/usrman/tutorial.html	/^    <title>Tutorial — PETSc for Python 3.18.4 documentation<\/title>$/;"	j	language:HTML
+Tutorial — PETSc for Python 3.18.5 documentation	src/binding/petsc4py/docs/usrman/tutorial.html	/^    <title>Tutorial — PETSc for Python 3.18.5 documentation<\/title>$/;"	j	language:HTML
 Tutorial?	src/binding/petsc4py/docs/usrman/tutorial.html	/^<h1>Tutorial<a class="headerlink" href="#tutorial" title="Permalink to this heading">?<\/a><\/h/;"	h	language:HTML
 Tw	src/ts/tutorials/power_grid/ex5.c	/^  PetscReal Tw;        \/* Filter time constant *\/$/;"	m	language:C	struct:__anon8fab6b8c0108	typeref:typename:PetscReal	file:
 TwoVec	src/sys/tutorials/ex5.c	/^} TwoVec;$/;"	t	language:C	typeref:struct:__anon5ad51ec30208	file:
@@ -37095,22 +37223,22 @@
 UNUSED_NONZERO_LOCATION_ERR	src/binding/petsc4py/docs/apiref/petsc4py.PETSc.Mat.Option-class.html	/^        <a name="UNUSED_NONZERO_LOCATION_ERR"><\/a><span class="summary-name">UNUSED_NONZERO_LOC/;"	a	language:HTML
 UNUSED_PARAM	src/sys/yaml/src/yaml_private.h	/^#  define UNUSED_PARAM(/;"	d	language:C++
 UP	src/binding/petsc4py/docs/apiref/petsc4py.PETSc.DMStag.StencilLocation-class.html	/^        <a name="UP"><\/a><span class="summary-name">UP<\/span> = <code title="17">17<\/code>$/;"	a	language:HTML
-UP	src/dm/impls/stag/tests/ex18.c	/^#define UP /;"	d	language:C	file:
-UP	src/dm/impls/stag/tests/ex30.c	/^#define UP /;"	d	language:C	file:
-UP	src/dm/impls/stag/tutorials/ex2.c	/^#define UP /;"	d	language:C	file:
-UP	src/dm/impls/stag/tutorials/ex3.c	/^#define UP /;"	d	language:C	file:
+UP	src/dm/impls/stag/tests/ex18.c	/^#define UP         DMSTAG_UP$/;"	d	language:C	file:
+UP	src/dm/impls/stag/tests/ex30.c	/^#define UP               DMSTAG_UP$/;"	d	language:C	file:
+UP	src/dm/impls/stag/tutorials/ex2.c	/^#define UP         DMSTAG_UP$/;"	d	language:C	file:
+UP	src/dm/impls/stag/tutorials/ex3.c	/^#define UP               DMSTAG_UP$/;"	d	language:C	file:
 UPDATE	src/binding/petsc4py/docs/apiref/petsc4py.PETSc.Viewer.Mode-class.html	/^        <a name="UPDATE"><\/a><span class="summary-name">UPDATE<\/span> = <code title="3">3<\/co/;"	a	language:HTML
 UPPER	src/binding/petsc4py/docs/apiref/petsc4py.PETSc.PC.SchurFactType-class.html	/^        <a name="UPPER"><\/a><span class="summary-name">UPPER<\/span> = <code title="2">2<\/code/;"	a	language:HTML
 UP_LEFT	src/binding/petsc4py/docs/apiref/petsc4py.PETSc.DMStag.StencilLocation-class.html	/^        <a name="UP_LEFT"><\/a><span class="summary-name">UP_LEFT<\/span> = <code title="16">16</;"	a	language:HTML
-UP_LEFT	src/dm/impls/stag/tests/ex18.c	/^#define UP_LEFT /;"	d	language:C	file:
-UP_LEFT	src/dm/impls/stag/tests/ex30.c	/^#define UP_LEFT /;"	d	language:C	file:
-UP_LEFT	src/dm/impls/stag/tutorials/ex2.c	/^#define UP_LEFT /;"	d	language:C	file:
-UP_LEFT	src/dm/impls/stag/tutorials/ex3.c	/^#define UP_LEFT /;"	d	language:C	file:
+UP_LEFT	src/dm/impls/stag/tests/ex18.c	/^#define UP_LEFT    DMSTAG_UP_LEFT$/;"	d	language:C	file:
+UP_LEFT	src/dm/impls/stag/tests/ex30.c	/^#define UP_LEFT          DMSTAG_UP_LEFT$/;"	d	language:C	file:
+UP_LEFT	src/dm/impls/stag/tutorials/ex2.c	/^#define UP_LEFT    DMSTAG_UP_LEFT$/;"	d	language:C	file:
+UP_LEFT	src/dm/impls/stag/tutorials/ex3.c	/^#define UP_LEFT          DMSTAG_UP_LEFT$/;"	d	language:C	file:
 UP_RIGHT	src/binding/petsc4py/docs/apiref/petsc4py.PETSc.DMStag.StencilLocation-class.html	/^        <a name="UP_RIGHT"><\/a><span class="summary-name">UP_RIGHT<\/span> = <code title="18">1/;"	a	language:HTML
-UP_RIGHT	src/dm/impls/stag/tests/ex18.c	/^#define UP_RIGHT /;"	d	language:C	file:
-UP_RIGHT	src/dm/impls/stag/tests/ex30.c	/^#define UP_RIGHT /;"	d	language:C	file:
-UP_RIGHT	src/dm/impls/stag/tutorials/ex2.c	/^#define UP_RIGHT /;"	d	language:C	file:
-UP_RIGHT	src/dm/impls/stag/tutorials/ex3.c	/^#define UP_RIGHT /;"	d	language:C	file:
+UP_RIGHT	src/dm/impls/stag/tests/ex18.c	/^#define UP_RIGHT   DMSTAG_UP_RIGHT$/;"	d	language:C	file:
+UP_RIGHT	src/dm/impls/stag/tests/ex30.c	/^#define UP_RIGHT         DMSTAG_UP_RIGHT$/;"	d	language:C	file:
+UP_RIGHT	src/dm/impls/stag/tutorials/ex2.c	/^#define UP_RIGHT   DMSTAG_UP_RIGHT$/;"	d	language:C	file:
+UP_RIGHT	src/dm/impls/stag/tutorials/ex3.c	/^#define UP_RIGHT         DMSTAG_UP_RIGHT$/;"	d	language:C	file:
 USER	src/binding/petsc4py/docs/apiref/petsc4py.PETSc.PC.PatchConstructType-class.html	/^        <a name="USER"><\/a><span class="summary-name">USER<\/span> = <code title="3">3<\/code>$/;"	a	language:HTML
 USER	src/binding/petsc4py/docs/apiref/petsc4py.PETSc.PC.SchurPreType-class.html	/^        <a name="USER"><\/a><span class="summary-name">USER<\/span> = <code title="3">3<\/code>$/;"	a	language:HTML
 USESHORT	src/mat/impls/sbaij/seq/sbaij.c	/^#define USESHORT$/;"	d	language:C	file:
@@ -37628,7 +37756,7 @@
 Variables	src/binding/petsc4py/docs/apiref/toc-petsc4py-module.html	/^     >init<\/a><br \/>  <h2 class="toc">Variables<\/h2>$/;"	i	language:HTML
 Variables	src/binding/petsc4py/docs/apiref/toc-petsc4py.PETSc-module.html	/^     >garbage_view<\/a><br \/>  <h2 class="toc">Variables<\/h2>$/;"	i	language:HTML
 Variables	src/binding/petsc4py/docs/apiref/toc-petsc4py.lib-module.html	/^     >getPathArchPETSc<\/a><br \/>  <h2 class="toc">Variables<\/h2>$/;"	i	language:HTML
-Vec	include/petsc/finclude/petscvec.h	/^#define Vec /;"	d	language:C++
+Vec	include/petsc/finclude/petscvec.h	/^#define Vec type(tVec)/;"	d	language:C++
 Vec	include/petscvec.h	/^typedef struct _p_Vec *Vec;$/;"	t	language:C++	typeref:struct:_p_Vec *
 VecAXPBY	src/vec/vec/interface/rvector.c	/^PetscErrorCode VecAXPBY(Vec y, PetscScalar alpha, PetscScalar beta, Vec x)$/;"	f	language:C	typeref:typename:PetscErrorCode
 VecAXPBYPCZ	src/vec/vec/interface/rvector.c	/^PetscErrorCode VecAXPBYPCZ(Vec z, PetscScalar alpha, PetscScalar beta, PetscScalar gamma, Vec x,/;"	f	language:C	typeref:typename:PetscErrorCode
@@ -38206,7 +38334,7 @@
 VecScale_SeqCUDA	src/vec/vec/impls/seq/seqcuda/veccuda2.cu	/^PetscErrorCode VecScale_SeqCUDA(Vec xin, PetscScalar alpha)$/;"	f	language:C	typeref:typename:PetscErrorCode
 VecScale_SeqKokkos	src/vec/vec/impls/seq/kokkos/veckok.kokkos.cxx	/^PetscErrorCode VecScale_SeqKokkos(Vec xin, PetscScalar alpha)$/;"	f	language:C++	typeref:typename:PetscErrorCode
 VecScale_SeqViennaCL	src/vec/vec/impls/seq/seqviennacl/vecviennacl.cxx	/^PetscErrorCode VecScale_SeqViennaCL(Vec xin, PetscScalar alpha)$/;"	f	language:C++	typeref:typename:PetscErrorCode
-VecScatter	include/petsc/finclude/petscvec.h	/^#define VecScatter /;"	d	language:C++
+VecScatter	include/petsc/finclude/petscvec.h	/^#define VecScatter type(tVecScatter)/;"	d	language:C++
 VecScatter	include/petscsftypes.h	/^typedef PetscSF VecScatter;$/;"	t	language:C++	typeref:typename:PetscSF
 VecScatterBegin	src/vec/is/sf/interface/vscat.c	/^PetscErrorCode VecScatterBegin(VecScatter sf, Vec x, Vec y, InsertMode addv, ScatterMode mode)$/;"	f	language:C	typeref:typename:PetscErrorCode
 VecScatterBegin_Internal	src/vec/is/sf/interface/vscat.c	/^static PetscErrorCode VecScatterBegin_Internal(VecScatter sf, Vec x, Vec y, InsertMode addv, Sca/;"	f	language:C	typeref:typename:PetscErrorCode	file:
@@ -38375,7 +38503,7 @@
 VecTDot_SeqCUDA	src/vec/vec/impls/seq/seqcuda/veccuda2.cu	/^PetscErrorCode VecTDot_SeqCUDA(Vec xin, Vec yin, PetscScalar *z)$/;"	f	language:C	typeref:typename:PetscErrorCode
 VecTDot_SeqKokkos	src/vec/vec/impls/seq/kokkos/veckok.kokkos.cxx	/^PetscErrorCode VecTDot_SeqKokkos(Vec xin, Vec yin, PetscScalar *z)$/;"	f	language:C++	typeref:typename:PetscErrorCode
 VecTDot_SeqViennaCL	src/vec/vec/impls/seq/seqviennacl/vecviennacl.cxx	/^PetscErrorCode VecTDot_SeqViennaCL(Vec xin, Vec yin, PetscScalar *z)$/;"	f	language:C++	typeref:typename:PetscErrorCode
-VecTagger	include/petsc/finclude/petscvec.h	/^#define VecTagger /;"	d	language:C++
+VecTagger	include/petsc/finclude/petscvec.h	/^#define VecTagger type(tVecTagger)/;"	d	language:C++
 VecTagger	include/petscvec.h	/^typedef struct _p_VecTagger *VecTagger;$/;"	t	language:C++	typeref:struct:_p_VecTagger *
 VecTaggerAbsoluteGetBox	src/vec/vec/utils/tagger/impls/absolute.c	/^PetscErrorCode VecTaggerAbsoluteGetBox(VecTagger tagger, const VecTaggerBox **box)$/;"	f	language:C	typeref:typename:PetscErrorCode
 VecTaggerAbsoluteSetBox	src/vec/vec/utils/tagger/impls/absolute.c	/^PetscErrorCode VecTaggerAbsoluteSetBox(VecTagger tagger, VecTaggerBox *box)$/;"	f	language:C	typeref:typename:PetscErrorCode
@@ -38669,7 +38797,7 @@
 WATERDATA	src/snes/tutorials/network/water/water.h	/^typedef struct _p_WATERDATA WATERDATA;$/;"	t	language:C++	typeref:struct:_p_WATERDATA
 WATER_H	src/snes/tutorials/network/water/water.h	/^#define WATER_H$/;"	d	language:C++
 WBM	src/binding/petsc4py/docs/apiref/petsc4py.PETSc.Mat.OrderingType-class.html	/^        <a name="WBM"><\/a><span class="summary-name">WBM<\/span> = <code title="'wbm'"><code cl/;"	a	language:HTML
-WIDTH	src/sys/yaml/src/yaml_private.h	/^#define WIDTH(/;"	d	language:C++
+WIDTH	src/sys/yaml/src/yaml_private.h	/^#define WIDTH(string)   WIDTH_/;"	d	language:C++
 WIDTH_AT	src/sys/yaml/src/yaml_private.h	/^#define WIDTH_AT(/;"	d	language:C++
 WINDOW	src/binding/petsc4py/docs/apiref/petsc4py.PETSc.SF.Type-class.html	/^        <a name="WINDOW"><\/a><span class="summary-name">WINDOW<\/span> = <code title="'window'"/;"	a	language:HTML
 WINDOW	src/binding/petsc4py/docs/apiref/petsc4py.PETSc.Scatter.Type-class.html	/^        <a name="WINDOW"><\/a><span class="summary-name">WINDOW<\/span> = <code title="'window'"/;"	a	language:HTML
@@ -39126,8 +39254,8 @@
 _DeviceOps	include/petsc/private/deviceimpl.h	/^struct _DeviceOps {$/;"	s	language:C++
 _DiskStack	src/ts/trajectory/impls/memory/trajmemory.c	/^typedef struct _DiskStack {$/;"	s	language:C	file:
 _EH	src/sys/error/err.c	/^struct _EH {$/;"	s	language:C	file:
-_Extension	src/binding/petsc4py/conf/baseconf.py	/^    from distutils.core import Extension as _Extension$/;"	x	language:Python	nameref:unknown:Extension
-_Extension	src/binding/petsc4py/conf/baseconf.py	/^    from setuptools import Extension as _Extension$/;"	x	language:Python	nameref:unknown:Extension
+_Extension	src/binding/petsc4py/conf/baseconf.py	/^    from distutils.core import Extension as _Extension$/;"	Y	language:Python	nameref:unknown:Extension
+_Extension	src/binding/petsc4py/conf/baseconf.py	/^    from setuptools import Extension as _Extension$/;"	Y	language:Python	nameref:unknown:Extension
 _FETIDPMat_ctx	include/petsc/private/pcbddcstructsimpl.h	/^struct _FETIDPMat_ctx {$/;"	s	language:C++
 _FETIDPPC_ctx	include/petsc/private/pcbddcstructsimpl.h	/^struct _FETIDPPC_ctx {$/;"	s	language:C++
 _FORESTIMPL_H	include/petsc/private/dmforestimpl.h	/^#define _FORESTIMPL_H$/;"	d	language:C++
@@ -39569,9 +39697,9 @@
 __anon2717aab90108	src/snes/interface/noise/snesnoise.c	/^typedef struct {$/;"	s	language:C	file:
 __anon27221bd50108	src/vec/is/sf/tests/ex18.c	/^typedef struct {$/;"	s	language:C	file:
 __anon272220160108	src/vec/is/sf/tests/ex19.c	/^typedef struct {$/;"	s	language:C	file:
-__anon27a8a6f80305	src/vec/vec/tutorials/ex21f90.F90	/^      Interface$/;"	i	language:Fortran	program:main
-__anon27a8a6f80405	src/vec/vec/tutorials/ex21f90.F90	/^      Interface$/;"	i	language:Fortran	program:main
-__anon27de26c40205	src/snes/f90-mod/petscsnesmod.F90	/^        interface$/;"	i	language:Fortran	module:petscsnes
+__anon27a8a6f80105	src/vec/vec/tutorials/ex21f90.F90	/^        Subroutine VecGetArrayMyStruct(v,array,ierr)$/;"	i	language:Fortran	program:main
+__anon27a8a6f80205	src/vec/vec/tutorials/ex21f90.F90	/^        Subroutine VecRestoreArrayMyStruct(v,array,ierr)$/;"	i	language:Fortran	program:main
+__anon27de26c40105	src/snes/f90-mod/petscsnesmod.F90	/^        end interface$/;"	i	language:Fortran	module:petscsnes
 __anon28b32cb60108	src/ksp/pc/impls/factor/ilu/ilu.h	/^typedef struct {$/;"	s	language:C++
 __anon29da4a4c0108	src/tao/unconstrained/impls/lmvm/lmvm.h	/^typedef struct {$/;"	s	language:C++
 __anon2a9b180b0108	src/sys/yaml/src/loader.c	/^    struct {$/;"	s	language:C	function:yaml_parser_load_sequence	file:
@@ -39751,7 +39879,7 @@
 __anon4b1d00310108	src/snes/impls/patch/snespatch.c	/^typedef struct {$/;"	s	language:C	file:
 __anon4b3d99ac0108	src/tao/leastsquares/tutorials/tomography.c	/^typedef struct {$/;"	s	language:C	file:
 __anon4ba2638d0103	src/mat/impls/sbaij/mpi/sbaijov.c	/^typedef enum {$/;"	g	language:C	file:
-__anon4c45b2fa0205	src/tao/f90-mod/petsctaomod.F90	/^        interface$/;"	i	language:Fortran	module:petsctao
+__anon4c45b2fa0105	src/tao/f90-mod/petsctaomod.F90	/^        end interface$/;"	i	language:Fortran	module:petsctao
 __anon4cb6c7bc0108	src/mat/impls/dense/seq/dense.h	/^typedef struct {$/;"	s	language:C++
 __anon4d51cde90108	src/mat/impls/aij/mpi/mkl_cpardiso/mkl_cpardiso.c	/^typedef struct {$/;"	s	language:C	file:
 __anon4d8f05fa0103	src/ksp/ksp/tests/benchmarkscatters/ex1.c	/^typedef enum {$/;"	g	language:C	file:
@@ -39765,7 +39893,7 @@
 __anon4e7cf6b10808	src/dm/impls/plex/plexgmsh.c	/^typedef struct {$/;"	s	language:C	file:
 __anon4e7cf6b10903	src/dm/impls/plex/plexgmsh.c	/^    enum {$/;"	g	language:C	function:DMPlexCreateGmsh	file:
 __anon4e7f21970108	src/ksp/ksp/impls/gmres/ftn-custom/zgmres2f.c	/^static struct {$/;"	s	language:C	file:
-__anon4eb655a00205	src/ts/f90-mod/petsctsmod.F90	/^        interface$/;"	i	language:Fortran	module:petscts
+__anon4eb655a00105	src/ts/f90-mod/petsctsmod.F90	/^        end interface$/;"	i	language:Fortran	module:petscts
 __anon4f1695770108	src/snes/impls/composite/snescomposite.c	/^typedef struct {$/;"	s	language:C	file:
 __anon5032225d0103	src/sys/fileio/apple_fdir.h	/^typedef enum {$/;"	g	language:C++
 __anon50ac84620108	src/ksp/ksp/impls/gcr/gcr.c	/^typedef struct {$/;"	s	language:C	file:
@@ -39798,7 +39926,7 @@
 __anon520cf0100108	src/snes/tutorials/ex26.c	/^typedef struct {$/;"	s	language:C	file:
 __anon520d62eb0108	src/snes/tutorials/ex30.c	/^typedef struct { \/* holds the variables to be solved for *\/$/;"	s	language:C	file:
 __anon520d62eb0208	src/snes/tutorials/ex30.c	/^typedef struct { \/* parameters needed to compute viscosity *\/$/;"	s	language:C	file:
-__anon520d62eb0308	src/snes/tutorials/ex30.c	/^typedef struct { \/* physical and miscelaneous parameters *\/$/;"	s	language:C	file:
+__anon520d62eb0308	src/snes/tutorials/ex30.c	/^typedef struct { \/* physical and miscellaneous parameters *\/$/;"	s	language:C	file:
 __anon520d62eb0408	src/snes/tutorials/ex30.c	/^typedef struct { \/* grid parameters *\/$/;"	s	language:C	file:
 __anon520d62eb0508	src/snes/tutorials/ex30.c	/^typedef struct { \/* application context *\/$/;"	s	language:C	file:
 __anon520d672c0108	src/snes/tutorials/ex31.c	/^typedef struct {$/;"	s	language:C	file:
@@ -39897,7 +40025,7 @@
 __anon5f183f170108	src/ksp/ksp/impls/bcgsl/bcgslimpl.h	/^typedef struct {$/;"	s	language:C++
 __anon5f588dd60108	src/vec/is/sf/impls/basic/neighbor/sfneighbor.c	/^typedef struct {$/;"	s	language:C	file:
 __anon5f902cbb0108	src/mat/impls/normal/normmh.c	/^typedef struct {$/;"	s	language:C	file:
-__anon5fc0ee590205	src/dm/f90-mod/petscdmdamod.F90	/^        interface$/;"	i	language:Fortran	module:petscdmda
+__anon5fc0ee590105	src/dm/f90-mod/petscdmdamod.F90	/^        end interface$/;"	i	language:Fortran	module:petscdmda
 __anon5ffc913b0108	src/ts/tutorials/power_grid/stability_9bus/ex9busdmnetwork.c	/^typedef struct {$/;"	s	language:C	file:
 __anon5ffc913b0208	src/ts/tutorials/power_grid/stability_9bus/ex9busdmnetwork.c	/^typedef struct {$/;"	s	language:C	file:
 __anon5ffc913b0308	src/ts/tutorials/power_grid/stability_9bus/ex9busdmnetwork.c	/^typedef struct {$/;"	s	language:C	file:
@@ -40196,7 +40324,7 @@
 __anona00dc1c20108	src/sys/mpiuni/mpi.c	/^typedef struct {$/;"	s	language:C	file:
 __anona00dc1c20208	src/sys/mpiuni/mpi.c	/^typedef struct {$/;"	s	language:C	file:
 __anona0a3f1cd0108	src/tao/constrained/tutorials/ex1.c	/^typedef struct {$/;"	s	language:C	file:
-__anona16edfb60205	src/mat/f90-mod/petscmatmod.F90	/^        interface$/;"	i	language:Fortran	module:petscmat
+__anona16edfb60105	src/mat/f90-mod/petscmatmod.F90	/^        end interface$/;"	i	language:Fortran	module:petscmat
 __anona1951cd50108	include/petsc/private/viewercgnsimpl.h	/^typedef struct {$/;"	s	language:C++
 __anona30e51b40108	include/petsc/private/viewerexodusiiimpl.h	/^typedef struct {$/;"	s	language:C++
 __anona34e24470108	src/sys/objects/fcallback.c	/^typedef struct {$/;"	s	language:C	file:
@@ -40363,8 +40491,8 @@
 __anonb80463de0608	src/snes/tutorials/network/water/water.h	/^typedef struct {$/;"	s	language:C++
 __anonb80463de0708	src/snes/tutorials/network/water/water.h	/^  struct {               \/* one point curve *\/$/;"	s	language:C++	struct:__anonb80463de0608
 __anonb918d9f20108	src/ksp/pc/impls/factor/factor.h	/^typedef struct {$/;"	s	language:C++
-__anonb97447ad0305	src/dm/f90-mod/petscdmplexmod.F90	/^        interface$/;"	i	language:Fortran	module:petscdmplex
-__anonb97447ad0405	src/dm/f90-mod/petscdmplexmod.F90	/^        interface$/;"	i	language:Fortran	module:petscdmnetwork
+__anonb97447ad0105	src/dm/f90-mod/petscdmplexmod.F90	/^        end interface$/;"	i	language:Fortran	module:petscdmplex
+__anonb97447ad0205	src/dm/f90-mod/petscdmplexmod.F90	/^        end interface$/;"	i	language:Fortran	module:petscdmnetwork
 __anonba900f730102	src/sys/objects/device/interface/device.cxx	/^    const auto PetscDeviceCheckAllDestroyedAfterFinalize = [] {$/;"	f	language:C++	function:PetscDeviceFinalize_Private	file:
 __anonbaf4891d0103	src/sys/memory/mal.c	/^typedef enum {$/;"	g	language:C	file:
 __anonbaff0dd6010a	src/sys/memory/mtr.c	/^{$/;"	u	language:C	file:
@@ -40646,11 +40774,11 @@
 __anone0e56b640408	src/ts/tutorials/ex77.c	/^typedef struct {$/;"	s	language:C	file:
 __anone0e56b640508	src/ts/tutorials/ex77.c	/^typedef struct {$/;"	s	language:C	file:
 __anone22a171e0108	src/snes/utils/ftn-custom/zdmsnesf.c	/^static struct {$/;"	s	language:C	file:
-__anone2664ef40605	src/dm/f90-mod/petscdmmod.F90	/^        interface$/;"	i	language:Fortran	module:petscdmlabel
-__anone2664ef40705	src/dm/f90-mod/petscdmmod.F90	/^        interface$/;"	i	language:Fortran	module:petscdm
-__anone2664ef40805	src/dm/f90-mod/petscdmmod.F90	/^        interface$/;"	i	language:Fortran	module:petscdmpatch
-__anone2664ef40905	src/dm/f90-mod/petscdmmod.F90	/^        interface$/;"	i	language:Fortran	module:petscdmforest
-__anone2664ef40a05	src/dm/f90-mod/petscdmmod.F90	/^        interface$/;"	i	language:Fortran	module:petscdt
+__anone2664ef40105	src/dm/f90-mod/petscdmmod.F90	/^        end interface$/;"	i	language:Fortran	module:petscdmlabel
+__anone2664ef40205	src/dm/f90-mod/petscdmmod.F90	/^        end interface$/;"	i	language:Fortran	module:petscdm
+__anone2664ef40305	src/dm/f90-mod/petscdmmod.F90	/^        end interface$/;"	i	language:Fortran	module:petscdmpatch
+__anone2664ef40405	src/dm/f90-mod/petscdmmod.F90	/^        end interface$/;"	i	language:Fortran	module:petscdmforest
+__anone2664ef40505	src/dm/f90-mod/petscdmmod.F90	/^        end interface$/;"	i	language:Fortran	module:petscdt
 __anone326b4820103	src/dm/impls/plex/plex.c	/^typedef enum {$/;"	g	language:C	file:
 __anone3e290950102	src/sys/objects/device/impls/sycl/sycldevice.sycl.cxx	/^    const auto SyclSignalHandler = [](int signal, void *ptr) -> PetscErrorCode {$/;"	f	language:C++	function:Petsc::device::sycl::Device::DeviceInternal::isMPISyclAware_	typeref:typename:PetscErrorCode	file:
 __anone4efddd60108	src/dm/tests/ex19.c	/^    struct {$/;"	s	language:C	function:doit	file:
@@ -40658,8 +40786,8 @@
 __anone4f065f60103	src/dm/tests/ex28.c	/^  typedef enum {$/;"	g	language:C	function:main	file:
 __anone55c1f9f0108	src/snes/utils/dmsnes.c	/^    struct {$/;"	s	language:C	function:DMSNESView	file:
 __anone55c1f9f0208	src/snes/utils/dmsnes.c	/^    struct {$/;"	s	language:C	function:DMSNESView	file:
-__anone58fb5ae0305	src/vec/f90-mod/petscvecmod.F90	/^        interface$/;"	i	language:Fortran	module:petscis
-__anone58fb5ae0405	src/vec/f90-mod/petscvecmod.F90	/^        interface$/;"	i	language:Fortran	module:petscvec
+__anone58fb5ae0105	src/vec/f90-mod/petscvecmod.F90	/^        end interface$/;"	i	language:Fortran	module:petscis
+__anone58fb5ae0205	src/vec/f90-mod/petscvecmod.F90	/^        end interface$/;"	i	language:Fortran	module:petscvec
 __anone63897530108	src/sys/classes/viewer/impls/vtk/vtkvimpl.h	/^typedef struct {$/;"	s	language:C++
 __anone64349db0103	include/petscksp.h	/^typedef enum {$/;"	g	language:C++
 __anone64349db0203	include/petscksp.h	/^typedef enum {$/;"	g	language:C++
@@ -40767,7 +40895,7 @@
 __anonee3196551303	include/petscpctypes.h	/^typedef enum {$/;"	g	language:C++
 __anonee3196551403	include/petscpctypes.h	/^typedef enum {$/;"	g	language:C++
 __anonee3196551503	include/petscpctypes.h	/^typedef enum {$/;"	g	language:C++
-__anonee36b4de0205	src/dm/f90-mod/petscdmswarmmod.F90	/^        interface$/;"	i	language:Fortran	module:petscdmswarm
+__anonee36b4de0105	src/dm/f90-mod/petscdmswarmmod.F90	/^        end interface$/;"	i	language:Fortran	module:petscdmswarm
 __anonef88fef60108	src/tao/unconstrained/tutorials/spectraladjointassimilation.c	/^typedef struct {$/;"	s	language:C	file:
 __anonef88fef60208	src/tao/unconstrained/tutorials/spectraladjointassimilation.c	/^typedef struct {$/;"	s	language:C	file:
 __anonef88fef60308	src/tao/unconstrained/tutorials/spectraladjointassimilation.c	/^typedef struct {$/;"	s	language:C	file:
@@ -41585,7 +41713,7 @@
 __type_registry__	src/binding/petsc4py/docs/apiref/petsc4py.PETSc-module.html	/^  <h3 class="epydoc">__type_registry__<\/h3>$/;"	j	language:HTML
 __type_registry__	src/binding/petsc4py/docs/apiref/petsc4py.PETSc-module.html	/^<a name="__type_registry__"><\/a>$/;"	a	language:HTML
 __version__	src/benchmarks/daemon.py	/^__version__ = "0.2"$/;"	v	language:Python
-__version__	src/binding/petsc4py/src/__init__.py	/^__version__   = '3.18.4'$/;"	v	language:Python
+__version__	src/binding/petsc4py/src/__init__.py	/^__version__   = '3.18.5'$/;"	v	language:Python
 __warningregistry__	src/binding/petsc4py/docs/apiref/petsc4py.PETSc-module.html	/^  <h3 class="epydoc">__warningregistry__<\/h3>$/;"	j	language:HTML
 __warningregistry__	src/binding/petsc4py/docs/apiref/petsc4py.PETSc-module.html	/^<a name="__warningregistry__"><\/a>$/;"	a	language:HTML
 __warningregistry__	src/binding/petsc4py/docs/apiref/petsc4py.lib-module.html	/^  <h3 class="epydoc">__warningregistry__<\/h3>$/;"	j	language:HTML
@@ -41660,7 +41788,7 @@
 _infix_pforest	src/dm/impls/forest/p4est/dmp4est.c	/^#define _infix_pforest(/;"	d	language:C	file:
 _infix_pforest	src/dm/impls/forest/p4est/dmp8est.c	/^#define _infix_pforest(/;"	d	language:C	file:
 _initialize	src/binding/petsc4py/docs/apiref/petsc4py.PETSc-module.html	/^          <td><span class="summary-sig"><a name="_initialize"><\/a><span class="summary-sig-name/;"	a	language:HTML
-_install	setup.py	/^from setuptools.command.install import install as _install$/;"	x	language:Python	nameref:unknown:install
+_install	setup.py	/^from setuptools.command.install import install as _install$/;"	Y	language:Python	nameref:unknown:install
 _install	src/binding/petsc4py/conf/baseconf.py	/^_install   = import_command('install')$/;"	v	language:Python
 _isBuilt	config/gmakegentest.py	/^  def _isBuilt(self,exfile,srcDict):$/;"	m	language:Python	class:generateExamples
 _isRun	config/gmakegentest.py	/^  def _isRun(self,testDict, debug=False):$/;"	m	language:Python	class:generateExamples
@@ -41977,6 +42105,7 @@
 acols	src/mat/impls/aij/seq/crl/crl.h	/^  PetscScalar *acols; \/* values of nonzeros, stored as icols *\/$/;"	m	language:C++	struct:__anon9fe544430108	typeref:typename:PetscScalar *
 acoustic_speed	src/ts/tutorials/ex9.c	/^  PetscReal acoustic_speed;$/;"	m	language:C	struct:__anon9273966f0808	typeref:typename:PetscReal	file:
 act_nfonts	src/sys/classes/draw/impls/x/xtext.c	/^static int act_nfonts = 0;$/;"	v	language:C	typeref:typename:int	file:
+action	config/BuildSystem/RDict.py	/^      action = sys.argv[1]$/;"	v	language:Python
 action	include/petsc/private/logimpl.h	/^  int            action;        \/* The type of execution *\/$/;"	m	language:C++	struct:_Action	typeref:typename:int
 action_list	src/mat/impls/aij/seq/aijperm/aijperm.c	/^  PetscInt  *action_list;$/;"	m	language:C	struct:__anon3caa09cc0108	typeref:typename:PetscInt *	file:
 activate	src/binding/petsc4py/docs/apiref/petsc4py.PETSc.LogClass-class.html	/^          <td><span class="summary-sig"><a name="activate"><\/a><span class="summary-sig-name">a/;"	a	language:HTML
@@ -42206,7 +42335,7 @@
 alloc_icol	src/mat/impls/aij/seq/bas/spbas.h	/^  PetscInt    *alloc_icol;$/;"	m	language:C++	struct:__anon5dfed1d00108	typeref:typename:PetscInt *
 alloc_val	src/mat/impls/aij/seq/bas/spbas.h	/^  PetscScalar *alloc_val;$/;"	m	language:C++	struct:__anon5dfed1d00108	typeref:typename:PetscScalar *
 allocate	src/ksp/ksp/utils/lmvm/lmvm.h	/^  PetscErrorCode (*allocate)(Mat, Vec, Vec);$/;"	m	language:C++	struct:_MatOps_LMVM	typeref:typename:PetscErrorCode (*)(Mat,Vec,Vec)
-allocateA_dist	src/mat/impls/aij/mpi/superlu_dist/superlu_dist.c	/^  #define allocateA_dist /;"	d	language:C	file:
+allocateA_dist	src/mat/impls/aij/mpi/superlu_dist/superlu_dist.c	/^  #define allocateA_dist                zallocateA_dist$/;"	d	language:C	file:
 allocated	include/petsc/private/isimpl.h	/^  PetscBool        allocated;$/;"	m	language:C++	struct:_n_ISColoring	typeref:typename:PetscBool
 allocated	src/dm/impls/swarm/data_bucket.h	/^  PetscInt          allocated; \/* number allocated, this will equal datafield->L *\/$/;"	m	language:C++	struct:_p_DMSwarmDataBucket	typeref:typename:PetscInt
 allocated	src/ksp/ksp/utils/lmvm/brdn/brdn.h	/^  PetscBool  allocated, needP, needQ;$/;"	m	language:C++	struct:__anon0da5f9520108	typeref:typename:PetscBool
@@ -42231,7 +42360,7 @@
 alpha	src/ksp/ksp/guess/impls/fischer/fischer.c	/^  PetscScalar     *alpha;  \/* *\/$/;"	m	language:C	struct:__anoncbd29fa80108	typeref:typename:PetscScalar *	file:
 alpha	src/ksp/ksp/impls/cg/gltr/gltrimpl.h	/^  PetscReal *alpha;  \/* Record of alpha values from CG            *\/$/;"	m	language:C++	struct:__anon638eeb6c0108	typeref:typename:PetscReal *
 alpha	src/ksp/ksp/impls/cg/pipelcg/pipelcg.c	/^  PetscScalar *gamma, *delta, *alpha;$/;"	m	language:C	struct:KSP_CG_PIPE_L_s	typeref:typename:PetscScalar *	file:
-alpha	src/ksp/ksp/impls/cg/pipelcg/pipelcg.c	/^#define alpha(/;"	d	language:C	file:
+alpha	src/ksp/ksp/impls/cg/pipelcg/pipelcg.c	/^#define alpha(i)        (plcg->alpha[/;"	d	language:C	file:
 alpha	src/ksp/ksp/utils/lmvm/diagbrdn/diagbrdn.h	/^  PetscReal  theta, rho, alpha, beta;           \/* convex combination factors for the scalar or/;"	m	language:C++	struct:__anone64c62dc0108	typeref:typename:PetscReal
 alpha	src/ksp/ksp/utils/lmvm/symbrdn/symbrdn.h	/^  PetscReal                  rho, alpha, beta;            \/* convex combination factors for the/;"	m	language:C++	struct:__anon36afa2e40108	typeref:typename:PetscReal
 alpha	src/ksp/pc/impls/composite/composite.c	/^  PetscScalar      alpha;$/;"	m	language:C	struct:__anonfe6f5a150108	typeref:typename:PetscScalar	file:
@@ -42489,6 +42618,7 @@
 argDB	config/BuildSystem/config/compile/FC.py	/^  argDB = property(args.ArgumentProcessor.getArgDB, setArgDB, doc = 'The RDict argument database/;"	v	language:Python	class:Linker
 argDB	config/BuildSystem/config/compile/processor.py	/^  argDB = property(args.ArgumentProcessor.getArgDB, setArgDB, doc = 'The RDict argument database/;"	v	language:Python	class:Processor
 argDB	config/BuildSystem/script.py	/^  argDB = property(args.ArgumentProcessor.getArgDB, setArgDB, doc = 'The RDict argument database/;"	v	language:Python	class:LanguageProcessor
+args	share/petsc/chkerrconvert.py	/^    args = parser.parse_args()$/;"	v	language:Python
 args	src/benchmarks/benchmarkAssembly.py	/^  args = parser.parse_args()$/;"	v	language:Python
 args	src/benchmarks/benchmarkExample.py	/^  args = parser.parse_args()$/;"	v	language:Python
 arnorm	src/ksp/ksp/impls/lsqr/lsqr.c	/^  PetscReal arnorm;     \/* Good estimate of norm((A*inv(Pmat))'*r), where r = A*x - b, used in /;"	m	language:C	struct:__anona88e468e0108	typeref:typename:PetscReal	file:
@@ -42598,7 +42728,7 @@
 augvecs_user_work	src/ksp/ksp/impls/gmres/lgmres/lgmresimpl.h	/^  Vec **augvecs_user_work; \/* same purpose as user_work above, but this one is$/;"	m	language:C++	struct:__anona6579ee20108	typeref:typename:Vec **
 augwork_alloc	src/ksp/ksp/impls/gmres/lgmres/lgmresimpl.h	/^  PetscInt augwork_alloc; \/*size of chunk allocated for augmentation vectors *\/$/;"	m	language:C++	struct:__anona6579ee20108	typeref:typename:PetscInt
 author	src/binding/petsc4py/docs/source/conf.py	/^author = u'Lisandro Dalcin'$/;"	v	language:Python
-auto_scale_max	src/snes/impls/ntrdc/ntrdcimpl.h	/^  PetscReal auto_scale_max;        \/* max cap value for auto-scaling muste be > 1 *\/$/;"	m	language:C++	struct:__anon2e9410850108	typeref:typename:PetscReal
+auto_scale_max	src/snes/impls/ntrdc/ntrdcimpl.h	/^  PetscReal auto_scale_max;        \/* max cap value for auto-scaling must be > 1 *\/$/;"	m	language:C++	struct:__anon2e9410850108	typeref:typename:PetscReal
 auto_scale_multiphase	src/snes/impls/ntrdc/ntrdcimpl.h	/^  PetscBool auto_scale_multiphase; \/* flag to use\/not use autoscaling for Cauchy S&D for multi/;"	m	language:C++	struct:__anon2e9410850108	typeref:typename:PetscBool
 aux	include/petsc/private/petschpddm.h	/^  Mat                         aux;                                          \/* local auxiliary /;"	m	language:C++	struct:PC_HPDDM	typeref:typename:Mat
 aux	src/mat/impls/aij/seq/essl/essl.c	/^  PetscScalar *aux;$/;"	m	language:C	struct:__anonf79f5eea0108	typeref:typename:PetscScalar *	file:
@@ -42709,6 +42839,7 @@
 balance	include/petsc/private/partitionerimpl.h	/^  PetscReal   balance; \/* The maximum partition size divided by the minimum size *\/$/;"	m	language:C++	struct:_p_PetscPartitioner	typeref:typename:PetscReal
 ball_u_2d	src/snes/tutorials/ex12.c	/^static PetscErrorCode ball_u_2d(PetscInt dim, PetscReal time, const PetscReal x[], PetscInt Nc, /;"	f	language:C	typeref:typename:PetscErrorCode	file:
 ball_u_3d	src/snes/tutorials/ex12.c	/^static PetscErrorCode ball_u_3d(PetscInt dim, PetscReal time, const PetscReal x[], PetscInt Nc, /;"	f	language:C	typeref:typename:PetscErrorCode	file:
+banner_length	config/configure.py	/^banner_length = 93$/;"	v	language:Python
 bar	src/sys/tests/ex33.c	/^PetscErrorCode bar()$/;"	f	language:C	typeref:typename:PetscErrorCode
 barrier	src/binding/petsc4py/docs/apiref/petsc4py.PETSc.Comm-class.html	/^          <td><span class="summary-sig"><a name="barrier"><\/a><span class="summary-sig-name">ba/;"	a	language:HTML
 barrier	src/sys/utils/mpishm.c	/^  pthread_barrier_t *barrier;         \/* pointer to the barrier *\/$/;"	m	language:C	struct:_n_PetscOmpCtrl	typeref:typename:pthread_barrier_t *	file:
@@ -42883,7 +43014,7 @@
 bigrhs	src/tao/constrained/impls/ipm/ipm.h	/^  Vec         bigrhs;  \/* rhs [x; lambdae; yi; lambdai] *\/$/;"	m	language:C++	struct:__anon1484705d0108	typeref:typename:Vec
 bigstep	src/tao/constrained/impls/ipm/ipm.h	/^  Vec         bigstep; \/* [dx; dyi; dlambdae; dlambdai] *\/$/;"	m	language:C++	struct:__anon1484705d0108	typeref:typename:Vec
 bin	src/tao/constrained/tutorials/maros.c	/^  Vec      beq, bin, d;$/;"	m	language:C	struct:__anon904f00610108	typeref:typename:Vec	file:
-binarray	src/mat/impls/fft/fftw/fftw.c	/^  PetscScalar *finarray, *foutarray, *binarray, *boutarray; \/* keep track of arrays becaue fftw/;"	m	language:C	struct:__anoncf43955e0108	typeref:typename:PetscScalar *	file:
+binarray	src/mat/impls/fft/fftw/fftw.c	/^  PetscScalar *finarray, *foutarray, *binarray, *boutarray; \/* keep track of arrays because fft/;"	m	language:C	struct:__anoncf43955e0108	typeref:typename:PetscScalar *	file:
 binary	src/dm/impls/plex/plexgmsh.c	/^  PetscBool   binary;$/;"	m	language:C	struct:__anon4e7cf6b10308	typeref:typename:PetscBool	file:
 bindToCPU	src/binding/petsc4py/docs/apiref/petsc4py.PETSc.Mat-class.html	/^          <td><span class="summary-sig"><a name="bindToCPU"><\/a><span class="summary-sig-name">/;"	a	language:HTML
 bindToCPU	src/binding/petsc4py/docs/apiref/petsc4py.PETSc.Vec-class.html	/^<a name="bindToCPU"><\/a>$/;"	a	language:HTML
@@ -42987,7 +43118,7 @@
 boundtocpu	include/petsc/private/matimpl.h	/^  PetscBool        boundtocpu;$/;"	m	language:C++	struct:_p_Mat	typeref:typename:PetscBool
 boundtocpu	include/petsc/private/vecimpl.h	/^  PetscBool boundtocpu;$/;"	m	language:C++	struct:_p_Vec	typeref:typename:PetscBool
 boundtocpu	src/ksp/pc/impls/h2opus/pch2opus.c	/^  PetscBool boundtocpu;$/;"	m	language:C	struct:__anone859c2040108	typeref:typename:PetscBool	file:
-boutarray	src/mat/impls/fft/fftw/fftw.c	/^  PetscScalar *finarray, *foutarray, *binarray, *boutarray; \/* keep track of arrays becaue fftw/;"	m	language:C	struct:__anoncf43955e0108	typeref:typename:PetscScalar *	file:
+boutarray	src/mat/impls/fft/fftw/fftw.c	/^  PetscScalar *finarray, *foutarray, *binarray, *boutarray; \/* keep track of arrays because fft/;"	m	language:C	struct:__anoncf43955e0108	typeref:typename:PetscScalar *	file:
 bowl	src/dm/impls/plex/tests/ex60.c	/^static PetscErrorCode bowl(PetscInt dim, PetscReal time, const PetscReal x[], PetscInt Nc, Petsc/;"	f	language:C	typeref:typename:PetscErrorCode	file:
 bowners	include/petsc/private/vecimpl.h	/^  PetscInt    *bowners;$/;"	m	language:C++	struct:__anon72f246960108	typeref:typename:PetscInt *
 box	src/vec/vec/utils/tagger/impls/simple.h	/^  VecTaggerBox *box;$/;"	m	language:C++	struct:__anon096052330108	typeref:typename:VecTaggerBox *
@@ -43124,7 +43255,7 @@
 c	src/binding/petsc4py/docs/apiref/petsc4py.PETSc._Mat_Stencil-class.html	/^        <a name="c"><\/a><span class="summary-name">c<\/span>$/;"	a	language:HTML
 c	src/mat/impls/lrc/lrc.c	/^  Vec c;            \/* sequential vector containing the diagonal of C *\/$/;"	m	language:C	struct:__anon1ec7aaa30108	typeref:typename:Vec	file:
 c	src/snes/tutorials/ex30.c	/^  PetscReal c, d, sb, cb, skt, visc_cutoff, lid_age, eta0, continuation;$/;"	m	language:C	struct:__anon520d62eb0308	typeref:typename:PetscReal	file:
-c	src/sys/tutorials/ex5f90.F90	/^         ch/;"	k	language:Fortran	type:bag_data_type
+c	src/sys/tutorials/ex5f90.F90	/^         character*(80) :: c$/;"	k	language:Fortran	type:bag_data_type
 c	src/tao/complementarity/tutorials/blackscholes.c	/^  PetscReal *c;   \/* Constant -- (r - D)S *\/$/;"	m	language:C	struct:__anon02176f500108	typeref:typename:PetscReal *	file:
 c	src/tao/constrained/tutorials/tomographyADMM.c	/^  Vec       c, xlb, xub, x, b, workM, workN, workN2, workN3, xGT; \/* observation b, ground trut/;"	m	language:C	struct:__anon057d86c80108	typeref:typename:Vec	file:
 c	src/tao/pde_constrained/tutorials/elliptic.c	/^  Vec c; \/* constraint vector *\/$/;"	m	language:C	struct:__anon6826b8cd0108	typeref:typename:Vec	file:
@@ -43906,7 +44037,7 @@
 coarsen_y	include/petsc/private/dmdaimpl.h	/^  PetscInt coarsen_x, coarsen_y, coarsen_z; \/* ratio used for coarsening *\/$/;"	m	language:C++	struct:__anona748a20e0108	typeref:typename:PetscInt
 coarsen_z	include/petsc/private/dmdaimpl.h	/^  PetscInt coarsen_x, coarsen_y, coarsen_z; \/* ratio used for coarsening *\/$/;"	m	language:C++	struct:__anona748a20e0108	typeref:typename:PetscInt
 coarsenhierarchy	include/petsc/private/dmimpl.h	/^  PetscErrorCode (*coarsenhierarchy)(DM, PetscInt, DM *);$/;"	m	language:C++	struct:_DMOps	typeref:typename:PetscErrorCode (*)(DM,PetscInt,DM *)
-coarsenhook	include/petsc/private/dmimpl.h	/^  DMCoarsenHookLink       coarsenhook; \/* For transfering auxiliary problem data to coarser gri/;"	m	language:C++	struct:_p_DM	typeref:typename:DMCoarsenHookLink
+coarsenhook	include/petsc/private/dmimpl.h	/^  DMCoarsenHookLink       coarsenhook; \/* For transferring auxiliary problem data to coarser gr/;"	m	language:C++	struct:_p_DM	typeref:typename:DMCoarsenHookLink
 coarsenhook	include/petsc/private/dmimpl.h	/^  PetscErrorCode (*coarsenhook)(DM, DM, void *);                 \/* Run once, when coarse DM is/;"	m	language:C++	struct:_DMCoarsenHookLink	typeref:typename:PetscErrorCode (*)(DM,DM,void *)
 coarsening_ratio	include/petsc/private/pcbddcimpl.h	/^  PetscInt               coarsening_ratio;$/;"	m	language:C++	struct:__anon57f596d80108	typeref:typename:PetscInt
 coarsentype	src/ksp/pc/impls/hypre/hypre.c	/^  PetscInt  coarsentype;$/;"	m	language:C	struct:__anona88fedbf0108	typeref:typename:PetscInt	file:
@@ -44020,8 +44151,8 @@
 comm	src/ts/interface/tshistory.c	/^  MPI_Comm   comm;    \/* used for runtime collective checks *\/$/;"	m	language:C	struct:_n_TSHistory	typeref:typename:MPI_Comm	file:
 comm	src/ts/tests/ex10.c	/^  MPI_Comm comm;$/;"	m	language:C	struct:_p_TSDAESimple	typeref:typename:MPI_Comm	file:
 comm	src/ts/tests/ex12.c	/^  MPI_Comm  comm;      \/* communicator *\/$/;"	m	language:C	struct:__anon7ce7f5e50108	typeref:typename:MPI_Comm	file:
-comm	src/ts/tutorials/ex11.c	/^  MPI_Comm         comm; \/* Does not do collective communicaton, but some error conditions can /;"	m	language:C	struct:_n_Model	typeref:typename:MPI_Comm	file:
-comm	src/ts/tutorials/ex11_sa.c	/^  MPI_Comm         comm; \/* Does not do collective communicaton, but some error conditions can /;"	m	language:C	struct:_n_Model	typeref:typename:MPI_Comm	file:
+comm	src/ts/tutorials/ex11.c	/^  MPI_Comm         comm; \/* Does not do collective communication, but some error conditions can/;"	m	language:C	struct:_n_Model	typeref:typename:MPI_Comm	file:
+comm	src/ts/tutorials/ex11_sa.c	/^  MPI_Comm         comm; \/* Does not do collective communication, but some error conditions can/;"	m	language:C	struct:_n_Model	typeref:typename:MPI_Comm	file:
 comm	src/ts/tutorials/ex2.c	/^  MPI_Comm  comm;      \/* communicator *\/$/;"	m	language:C	struct:__anon927378a80108	typeref:typename:MPI_Comm	file:
 comm	src/ts/tutorials/ex21.c	/^  MPI_Comm  comm;      \/* communicator *\/$/;"	m	language:C	struct:__anone0e293f90108	typeref:typename:MPI_Comm	file:
 comm	src/ts/tutorials/ex4.c	/^  MPI_Comm    comm;             \/* communicator *\/$/;"	m	language:C	struct:__anon9273812a0108	typeref:typename:MPI_Comm	file:
@@ -44206,7 +44337,7 @@
 condLimit	src/dm/impls/plex/tutorials/ex9.c	/^  PetscReal condLimit, tol; \/* Condition number limit for cell output *\/$/;"	m	language:C	struct:__anon36f048550108	typeref:typename:PetscReal	file:
 cone	include/petsc/private/dmplextransformimpl.h	/^  PetscInt       **cone;     \/* The array of cones for each target cell *\/$/;"	m	language:C++	struct:__anonde903c7e0208	typeref:typename:PetscInt **
 cone	include/petsc/private/dmplextransformimpl.h	/^  PetscInt       **cone;   \/* The array of cones for each target cell *\/$/;"	m	language:C++	struct:__anonde903c7e0808	typeref:typename:PetscInt **
-coneOrientations	include/petsc/private/dmpleximpl.h	/^  PetscInt    *coneOrientations; \/* Orientation of each cone point, means cone traveral should /;"	m	language:C++	struct:__anon5b6c93620308	typeref:typename:PetscInt *
+coneOrientations	include/petsc/private/dmpleximpl.h	/^  PetscInt    *coneOrientations; \/* Orientation of each cone point, means cone traversal should/;"	m	language:C++	struct:__anon5b6c93620308	typeref:typename:PetscInt *
 coneSection	include/petsc/private/dmpleximpl.h	/^  PetscSection coneSection;      \/* Layout of cones (inedges for DAG) *\/$/;"	m	language:C++	struct:__anon5b6c93620308	typeref:typename:PetscSection
 coneq	src/tao/interface/ftn-custom/ztaosolverf.c	/^  PetscFortranCallbackId coneq;$/;"	m	language:C	struct:__anonc4e9041e0108	typeref:typename:PetscFortranCallbackId	file:
 cones	include/petsc/private/dmpleximpl.h	/^  PetscInt    *cones;            \/* Cone for each point *\/$/;"	m	language:C++	struct:__anon5b6c93620308	typeref:typename:PetscInt *
@@ -44420,7 +44551,7 @@
 configure_options	config/examples/arch-ci-linux-gcc-pkgs-opt.py	/^configure_options = [$/;"	v	language:Python
 configure_options	config/examples/arch-ci-linux-gcc-quad-64idx-dbg.py	/^configure_options = [$/;"	v	language:Python
 configure_options	config/examples/arch-ci-linux-gcov.py	/^configure_options = [$/;"	v	language:Python
-configure_options	config/examples/arch-ci-linux-hip-double.py	/^  configure_options = opts + [$/;"	v	language:Python
+configure_options	config/examples/arch-ci-linux-hip-double.py	/^  configure_options = [$/;"	v	language:Python
 configure_options	config/examples/arch-ci-linux-intel-cmplx.py	/^  configure_options = [$/;"	v	language:Python
 configure_options	config/examples/arch-ci-linux-intel-mkl-single.py	/^  configure_options = [$/;"	v	language:Python
 configure_options	config/examples/arch-ci-linux-intel.py	/^  configure_options = [$/;"	v	language:Python
@@ -44615,6 +44746,7 @@
 coords	include/petscdm.h	/^  Vec        coords; \/* The point coordinates *\/$/;"	m	language:C++	struct:_DMInterpolationInfo	typeref:typename:Vec
 coords	src/binding/petsc4py/demo/dmplex/anisotropic_adaptation.py	/^    coords = plex.getCoordinatesLocal()$/;"	v	language:Python
 coords	src/binding/petsc4py/demo/dmplex/distribute_field.py	/^    coords = np.asarray([[0.0, 0.0],$/;"	v	language:Python
+coords	src/binding/petsc4py/demo/dmplex/distribute_field.py	/^    coords = np.zeros((0, 2), dtype=PETSc.RealType)$/;"	v	language:Python
 coords	src/dm/impls/plex/tests/ex18.c	/^  PetscScalar coords[128];$/;"	m	language:C	struct:__anonb5719b110208	typeref:typename:PetscScalar[128]	file:
 coords	src/ksp/pc/impls/fieldsplit/fieldsplit.c	/^  PetscReal *coords;$/;"	m	language:C	struct:_PC_FieldSplitLink	typeref:typename:PetscReal *	file:
 coords	src/ksp/pc/impls/h2opus/pch2opus.c	/^  PetscReal *coords;$/;"	m	language:C	struct:__anone859c2040108	typeref:typename:PetscReal *	file:
@@ -45530,7 +45662,7 @@
 delfiles	config/install.py	/^  delfiles=['RDict.db','RDict.log','buildsystem.log','default.log','buildsystem.log.bkp','defaul/;"	v	language:Python
 delta	src/ksp/ksp/impls/bcgsl/bcgslimpl.h	/^  PetscReal delta;   \/* Threshold for recomputing exact residual norm *\/$/;"	m	language:C++	struct:__anon5f183f170108	typeref:typename:PetscReal
 delta	src/ksp/ksp/impls/cg/pipelcg/pipelcg.c	/^  PetscScalar *gamma, *delta, *alpha;$/;"	m	language:C	struct:KSP_CG_PIPE_L_s	typeref:typename:PetscScalar *	file:
-delta	src/ksp/ksp/impls/cg/pipelcg/pipelcg.c	/^#define delta(/;"	d	language:C	file:
+delta	src/ksp/ksp/impls/cg/pipelcg/pipelcg.c	/^#define delta(i)        (plcg->delta[/;"	d	language:C	file:
 delta	src/ksp/ksp/impls/qcg/qcgimpl.h	/^  PetscReal delta;$/;"	m	language:C++	struct:__anon49a6d6b70108	typeref:typename:PetscReal
 delta	src/ksp/ksp/utils/lmvm/diagbrdn/diagbrdn.h	/^  PetscReal  delta, delta_min, delta_max, sigma, tol;$/;"	m	language:C++	struct:__anone64c62dc0108	typeref:typename:PetscReal
 delta	src/ksp/ksp/utils/lmvm/symbrdn/symbrdn.h	/^  PetscReal                  delta, delta_min, delta_max, sigma;$/;"	m	language:C++	struct:__anon36afa2e40108	typeref:typename:PetscReal
@@ -45972,6 +46104,7 @@
 directSolve	src/ksp/pc/impls/wb/wb.c	/^  PetscBool    directSolve; \/* use direct LU factorization to construct interpolation *\/$/;"	m	language:C	struct:__anonc9ff38a10108	typeref:typename:PetscBool	file:
 direction	include/petsc/private/tsimpl.h	/^  PetscInt     *direction;                                                                  \/* /;"	m	language:C++	struct:_n_TSEvent	typeref:typename:PetscInt *
 direction	src/binding/petsc4py/demo/ode/bouncing_ball.py	/^direction = [-1]$/;"	v	language:Python
+directory	src/ts/tutorials/extchem.py	/^    directory = 'Visualization-data'$/;"	v	language:Python
 directory	src/ts/tutorials/extchem.py	/^    directory = sys.argv[1]$/;"	v	language:Python
 dirfiletemplate	include/petsc/private/tsimpl.h	/^  char       *dirfiletemplate;        \/* complete directory and file name template for disk che/;"	m	language:C++	struct:_p_TSTrajectory	typeref:typename:char *
 dirichlet_scale	src/snes/tutorials/ex48.c	/^  PetscReal dirichlet_scale;$/;"	m	language:C	struct:_p_THI	typeref:typename:PetscReal	file:
@@ -46074,7 +46207,7 @@
 dm	src/dm/impls/plex/tests/ex48f90.F90	/^    Type(tDM)                         :: dm$/;"	v	language:Fortran	program:ex47f90
 dm	src/dm/impls/plex/tests/ex8.c	/^  DM        dm;$/;"	m	language:C	struct:__anoncf3219a00208	typeref:typename:DM	file:
 dm	src/dm/impls/stag/tests/ex18.c	/^  DM  dm;$/;"	m	language:C	struct:__anon5346e5670108	typeref:typename:DM	file:
-dm	src/dm/label/tutorials/ex1f90.F90	/^  type(tDM)                         :: dm,/;"	v	language:Fortran	program:ex1f90
+dm	src/dm/label/tutorials/ex1f90.F90	/^  type(tDM)                         :: dm, dmD/;"	v	language:Fortran	program:ex1f90
 dm	src/ksp/ksp/utils/dmproject.c	/^  DM  dm;$/;"	m	language:C	struct:_projectConstraintsCtx	typeref:typename:DM	file:
 dm	src/mat/impls/nest/matnest.c	/^  PetscInt    *dm, *dn, k; \/* displacements and number of submatrices *\/$/;"	m	language:C	struct:__anon043e07170108	typeref:typename:PetscInt *	file:
 dm	src/snes/impls/vi/rs/virs.c	/^  DM dm; \/* when destroying this object we need to reset the above function into the base DM *\/$/;"	m	language:C	struct:__anond494ffcf0108	typeref:typename:DM	file:
@@ -46409,6 +46542,7 @@
 dmshellsetglobaltolocal_	src/dm/impls/shell/ftn-custom/zdmshellf.c	/^PETSC_EXTERN void dmshellsetglobaltolocal_(DM *dm,void (*begin)(DM*,Vec*,InsertMode*,Vec*,PetscE/;"	f	language:C	typeref:typename:PETSC_EXTERN void
 dmshellsetlocaltoglobal_	src/dm/impls/shell/ftn-custom/zdmshellf.c	/^#define dmshellsetlocaltoglobal_ /;"	d	language:C	file:
 dmshellsetlocaltoglobal_	src/dm/impls/shell/ftn-custom/zdmshellf.c	/^PETSC_EXTERN void dmshellsetlocaltoglobal_(DM *dm,void (*begin)(DM*,Vec*,InsertMode*,Vec*,PetscE/;"	f	language:C	typeref:typename:PETSC_EXTERN void
+dmshellsetlocaltolocal_	src/dm/impls/shell/ftn-custom/zdmshellf.c	/^#define dmshellsetlocaltolocal_                dmshellsetlocaltolocal_$/;"	d	language:C	file:
 dmshellsetlocaltolocal_	src/dm/impls/shell/ftn-custom/zdmshellf.c	/^#define dmshellsetlocaltolocal_ /;"	d	language:C	file:
 dmshellsetlocaltolocal_	src/dm/impls/shell/ftn-custom/zdmshellf.c	/^PETSC_EXTERN void dmshellsetlocaltolocal_(DM *dm,void (*begin)(DM*,Vec*,InsertMode*,Vec*,PetscEr/;"	f	language:C	typeref:typename:PETSC_EXTERN void
 dmsnes	include/petsc/private/dmimpl.h	/^  PetscObject dmksp, dmsnes, dmts;$/;"	m	language:C++	struct:_p_DM	typeref:typename:PetscObject
@@ -46570,7 +46704,7 @@
 dscalefix2	include/petsc/private/kspimpl.h	/^  PetscBool dscalefix2; \/* system has been unscaled *\/$/;"	m	language:C++	struct:_p_KSP	typeref:typename:PetscBool
 dsg_formed	src/tao/pde_constrained/tutorials/parabolic.c	/^  PetscBool jformed, dsg_formed;$/;"	m	language:C	struct:__anon1342afe40108	typeref:typename:PetscBool	file:
 dshift	src/mat/impls/shell/shell.c	/^  Vec         dshift;$/;"	m	language:C	struct:__anonff7d65910108	typeref:typename:Vec	file:
-dsp	src/binding/petsc4py/conf/epydocify.py	/^from epydoc import docstringparser as dsp$/;"	x	language:Python	nameref:unknown:docstringparser
+dsp	src/binding/petsc4py/conf/epydocify.py	/^from epydoc import docstringparser as dsp$/;"	Y	language:Python	nameref:unknown:docstringparser
 dsteplength	src/tao/quadratic/impls/bqpip/bqpipimpl.h	/^  PetscReal dsteplength;$/;"	m	language:C++	struct:__anon040db59f0108	typeref:typename:PetscReal
 dstrowoffset	src/mat/impls/aij/mpi/kokkos/mpiaijkok.kokkos.cxx	/^  MatRowMapKokkosView srcrowoffset, dstrowoffset;$/;"	m	language:C++	struct:MatMatStruct_AtB	typeref:typename:MatRowMapKokkosView	file:
 dt	include/petscmat.h	/^  PetscReal dt;            \/* drop tolerance *\/$/;"	m	language:C++	struct:__anone65dad0f1008	typeref:typename:PetscReal
@@ -46757,7 +46891,6 @@
 ellipticK	src/ts/utils/dmplexlandau/land_tensors.h	/^PETSC_DEVICE_FUNC_DECL void ellipticK(PetscReal x, PetscReal *ret)$/;"	f	language:C++	typeref:typename:PETSC_DEVICE_FUNC_DECL void
 elms	src/ksp/pc/impls/tfs/gs.c	/^  PetscInt *elms; \/* of size nel *\/$/;"	m	language:C	struct:gather_scatter_id	typeref:typename:PetscInt *	file:
 elocal	include/petsc/private/dmmbimpl.h	/^  moab::Range       *elocal, *eghost;                 \/* Topological dimensional entities: stri/;"	m	language:C++	struct:__anon42935ab80208	typeref:typename:moab::Range *
-else	config/BuildSystem/script.py	/^    else: useParallel = 5$/;"	v	language:Python	typeref:typename:useParallel
 emacsmachinename	src/sys/objects/init.c	/^static char                 emacsmachinename[256];$/;"	v	language:C	typeref:typename:char[256]	file:
 emat	include/petsc/private/petscelemental.h	/^  El::DistMatrix<PetscElemScalar> *emat;$/;"	m	language:C++	struct:__anon04791b9c0108	typeref:typename:El::DistMatrix<PetscElemScalar> *
 emax	include/petsc/private/pcgamgimpl.h	/^  PetscReal emin, emax;$/;"	m	language:C++	struct:gamg_TAG	typeref:typename:PetscReal
@@ -47042,6 +47175,7 @@
 eventresidual	src/snes/impls/fas/fasimpls.h	/^  PetscLogEvent eventresidual;       \/* level residual evaluation *\/$/;"	m	language:C++	struct:__anonf37b11560108	typeref:typename:PetscLogEvent
 eventrestrictinterp	src/snes/impls/nasm/nasm.c	/^  PetscLogEvent eventrestrictinterp;$/;"	m	language:C	struct:__anon5c8da2560108	typeref:typename:PetscLogEvent	file:
 events	include/petsclandau.h	/^  PetscLogEvent    events[20];$/;"	m	language:C++	struct:__anon8db14aa20408	typeref:typename:PetscLogEvent[20]
+events	src/benchmarks/benchmarkAssembly.py	/^      events       = {}$/;"	v	language:Python
 events	src/benchmarks/benchmarkAssembly.py	/^      events = savedTiming[args.saved]$/;"	v	language:Python
 events	src/benchmarks/benchmarkAssembly.py	/^    events   = {}$/;"	v	language:Python
 events	src/benchmarks/benchmarkExample.py	/^  events  = {}$/;"	v	language:Python
@@ -47193,7 +47327,7 @@
 extraArguments	config/BuildSystem/config/compile/SYCL.py	/^  extraArguments = property(getExtraArguments, config.compile.processor.Processor.setExtraArgume/;"	v	language:Python	class:Linker
 extraArguments	config/BuildSystem/config/compile/processor.py	/^  extraArguments = property(getExtraArguments, setExtraArguments, doc = 'Optional arguments for /;"	v	language:Python	class:Processor
 extraCompilerFlags	config/BuildSystem/config/setCompilers.py	/^  def extraCompilerFlags(self, extraFlags, lang = None):$/;"	m	language:Python	class:Configure
-extraLogs	config/configure.py	/^extraLogs  = []$/;"	v	language:Python
+extraLogs	config/configure.py	/^extraLogs     = []$/;"	v	language:Python
 extra_args	config/gmakegen.py	/^    opts, extra_args = parser.parse_args()$/;"	v	language:Python
 extra_args	config/gmakegentest.py	/^    opts, extra_args = parser.parse_args()$/;"	v	language:Python
 extra_args	config/testparse.py	/^    opts, extra_args = parser.parse_args()$/;"	v	language:Python
@@ -47615,6 +47749,7 @@
 fctx	include/petsc/private/matimpl.h	/^  void          *fctx;                            \/* optional user-defined context for use by t/;"	m	language:C++	struct:_p_MatFDColoring	typeref:typename:void *
 fctx	src/sys/utils/ftn-custom/zsortsof.c	/^  void *fctx;$/;"	m	language:C	struct:fc_c	typeref:typename:void *	file:
 fctx	src/ts/tests/ex10.c	/^  void *fctx, *Fctx;$/;"	m	language:C	struct:_p_TSDAESimple	typeref:typename:void *	file:
+fd	config/install.py	/^  fd = open(os.path.join('lib','petsc','conf','petscvariables'))$/;"	v	language:Python
 fd	include/petsc/private/dmimpl.h	/^  MatFDColoring          fd;$/;"	m	language:C++	struct:_p_DM	typeref:typename:MatFDColoring
 fd	src/binding/petsc4py/demo/bratu3d/bratu3d.py	/^fd = OptDB.getBool('fd', False)$/;"	v	language:Python
 fd	src/sys/classes/draw/impls/tikz/tikz.c	/^  FILE     *fd;$/;"	m	language:C	struct:__anon60ea739c0108	typeref:typename:FILE *	file:
@@ -47748,7 +47883,7 @@
 finalize_options	src/binding/petsc4py/conf/baseconf.py	/^    def finalize_options(self):$/;"	m	language:Python	class:build_src
 finalize_options	src/binding/petsc4py/conf/baseconf.py	/^    def finalize_options(self):$/;"	m	language:Python	class:test
 finaljacobian	src/snes/impls/nasm/nasm.c	/^  PetscBool   finaljacobian; \/* compute the jacobian of the converged solution *\/$/;"	m	language:C	struct:__anon5c8da2560108	typeref:typename:PetscBool	file:
-finarray	src/mat/impls/fft/fftw/fftw.c	/^  PetscScalar *finarray, *foutarray, *binarray, *boutarray; \/* keep track of arrays becaue fftw/;"	m	language:C	struct:__anoncf43955e0108	typeref:typename:PetscScalar *	file:
+finarray	src/mat/impls/fft/fftw/fftw.c	/^  PetscScalar *finarray, *foutarray, *binarray, *boutarray; \/* keep track of arrays because fft/;"	m	language:C	struct:__anoncf43955e0108	typeref:typename:PetscScalar *	file:
 findArgument	config/BuildSystem/nargs.py	/^  def findArgument(key, argList):$/;"	m	language:Python	class:Arg
 findArgument	config/BuildSystem/nargs.py	/^  findArgument = staticmethod(findArgument)$/;"	v	language:Python	class:Arg
 findDistance	src/ksp/ksp/tutorials/network/ex2.c	/^PetscReal findDistance(PetscReal x1, PetscReal x2, PetscReal y1, PetscReal y2)$/;"	f	language:C	typeref:typename:PetscReal
@@ -48017,7 +48152,7 @@
 found	config/BuildSystem/script.py	/^        found = 1$/;"	v	language:Python
 found	config/BuildSystem/script.py	/^    found = 0$/;"	v	language:Python
 found	config/PETSc/petsc.py	/^  found = property(getFound, doc = 'Did we find a valid PETSc installation')$/;"	v	language:Python	class:Configure
-foutarray	src/mat/impls/fft/fftw/fftw.c	/^  PetscScalar *finarray, *foutarray, *binarray, *boutarray; \/* keep track of arrays becaue fftw/;"	m	language:C	struct:__anoncf43955e0108	typeref:typename:PetscScalar *	file:
+foutarray	src/mat/impls/fft/fftw/fftw.c	/^  PetscScalar *finarray, *foutarray, *binarray, *boutarray; \/* keep track of arrays because fft/;"	m	language:C	struct:__anoncf43955e0108	typeref:typename:PetscScalar *	file:
 fp	src/snes/interface/noise/snesnoise.c	/^  FILE    *fp;             \/* output file *\/$/;"	m	language:C	struct:__anon2717aab90108	typeref:typename:FILE *	file:
 fp_dm_field_scatter	src/ksp/pc/impls/telescope/telescope_coarsedm.c	/^  PetscErrorCode (*fp_dm_field_scatter)(DM, Vec, ScatterMode, DM, Vec);$/;"	m	language:C	struct:__anon5bd67c040108	typeref:typename:PetscErrorCode (*)(DM,Vec,ScatterMode,DM,Vec)	file:
 fp_dm_state_scatter	src/ksp/pc/impls/telescope/telescope_coarsedm.c	/^  PetscErrorCode (*fp_dm_state_scatter)(DM, ScatterMode, DM);$/;"	m	language:C	struct:__anon5bd67c040108	typeref:typename:PetscErrorCode (*)(DM,ScatterMode,DM)	file:
@@ -48097,7 +48232,7 @@
 func	src/ts/tutorials/ex18.c	/^  FunctionalFunc func;$/;"	m	language:C	struct:_n_Functional	typeref:typename:FunctionalFunc	file:
 func	src/ts/tutorials/hamiltonian/ex2.c	/^  PetscErrorCode (*func)(PetscInt, PetscReal, const PetscReal[], PetscInt, PetscScalar *, void */;"	m	language:C	struct:__anonbfb6066b0108	typeref:typename:PetscErrorCode (*)(PetscInt,PetscReal,const PetscReal[],PetscInt,PetscScalar *,void *)	file:
 func	src/vec/vec/tutorials/ex18.c	/^PetscScalar func(PetscScalar a)$/;"	f	language:C	typeref:typename:PetscScalar
-func	src/vec/vec/tutorials/ex18f.F90	/^    funct/;"	f	language:Fortran	program:main
+func	src/vec/vec/tutorials/ex18f.F90	/^    function func(/;"	f	language:Fortran	program:main
 func1	src/dm/dt/tests/ex3.c	/^static void func1(const PetscReal a[], void *dummy, PetscReal *val)$/;"	f	language:C	typeref:typename:void	file:
 func10	src/dm/dt/tests/ex3.c	/^static void func10(const PetscReal a[], void *dummy, PetscReal *val)$/;"	f	language:C	typeref:typename:void	file:
 func11	src/dm/dt/tests/ex3.c	/^static void func11(const PetscReal a[], void *dummy, PetscReal *val)$/;"	f	language:C	typeref:typename:void	file:
@@ -48349,7 +48484,7 @@
 gamma	include/petsc/private/snesimpl.h	/^  PetscReal gamma;       \/* mult. factor for version 2 rtol computation *\/$/;"	m	language:C++	struct:__anonae3dae710108	typeref:typename:PetscReal
 gamma	src/dm/impls/plex/plexfem.c	/^  PetscReal    gamma; \/* The third Euler angle *\/$/;"	m	language:C	struct:__anon4059c83a0108	typeref:typename:PetscReal	file:
 gamma	src/ksp/ksp/impls/cg/pipelcg/pipelcg.c	/^  PetscScalar *gamma, *delta, *alpha;$/;"	m	language:C	struct:KSP_CG_PIPE_L_s	typeref:typename:PetscScalar *	file:
-gamma	src/ksp/ksp/impls/cg/pipelcg/pipelcg.c	/^#define gamma(/;"	d	language:C	file:
+gamma	src/ksp/ksp/impls/cg/pipelcg/pipelcg.c	/^#define gamma(i)        (plcg->gamma[/;"	d	language:C	file:
 gamma	src/snes/impls/ms/ms.c	/^  PetscReal *gamma;      \/* Coefficients of 3S* method *\/$/;"	m	language:C	struct:_SNESMSTableau	typeref:typename:PetscReal *	file:
 gamma	src/snes/tutorials/ex31.c	/^  PetscReal  gamma;$/;"	m	language:C	struct:__anon520d672c0108	typeref:typename:PetscReal	file:
 gamma	src/tao/constrained/impls/admm/admm.h	/^  PetscReal              gamma, last_misfit_val, last_reg_val, l1epsilon;$/;"	m	language:C++	struct:__anon8fbfb84f0108	typeref:typename:PetscReal
@@ -49305,8 +49440,9 @@
 get_value	config/query_tests.py	/^def get_value(varset):$/;"	f	language:Python
 get_version	src/binding/petsc4py/docs/source/conf.py	/^def get_version():$/;"	f	language:Python
 getadaptivitysuccess	include/petsc/private/dmforestimpl.h	/^  PetscErrorCode (*getadaptivitysuccess)(DM, PetscBool *);$/;"	m	language:C++	struct:__anon640ca7fc0108	typeref:typename:PetscErrorCode (*)(DM,PetscBool *)
-getarg	src/sys/objects/ftn-custom/zstart.c	/^#define getarg /;"	d	language:C	file:
+getarg	src/sys/objects/ftn-custom/zstart.c	/^#define getarg getarg_/;"	d	language:C	file:
 getarg_	src/sys/objects/ftn-custom/zstart.c	/^#define getarg_ /;"	d	language:C	file:
+getarg_	src/sys/objects/ftn-custom/zstart.c	/^#define getarg_ pxfgetarg_$/;"	d	language:C	file:
 getarray	include/petsc/private/vecimpl.h	/^  PetscErrorCode (*getarray)(Vec, PetscScalar **); \/* get data array *\/$/;"	m	language:C++	struct:_VecOps	typeref:typename:PetscErrorCode (*)(Vec,PetscScalar **)
 getarray	src/mat/impls/aij/seq/aij.h	/^  PetscErrorCode (*getarray)(Mat, PetscScalar **);$/;"	m	language:C++	struct:__anon262276c60108	typeref:typename:PetscErrorCode (*)(Mat,PetscScalar **)
 getarrayandmemtype	include/petsc/private/vecimpl.h	/^  PetscErrorCode (*getarrayandmemtype)(Vec, PetscScalar **, PetscMemType *);$/;"	m	language:C++	struct:_VecOps	typeref:typename:PetscErrorCode (*)(Vec,PetscScalar **,PetscMemType *)
@@ -49552,6 +49688,8 @@
 grid	include/petsc/private/petscscalapack.h	/^  Mat_ScaLAPACK_Grid *grid;        \/* process grid *\/$/;"	m	language:C++	struct:__anon3c62f3480208	typeref:typename:Mat_ScaLAPACK_Grid *
 grid	src/benchmarks/benchmarkAssembly.py	/^        grid = [100, 150, 200, 250, 300]$/;"	v	language:Python
 grid	src/benchmarks/benchmarkAssembly.py	/^        grid = [10]*len(procs)$/;"	v	language:Python
+grid	src/benchmarks/benchmarkAssembly.py	/^        grid = [1250]*len(procs)$/;"	v	language:Python
+grid	src/benchmarks/benchmarkAssembly.py	/^        grid = range(150, 1350, 100)$/;"	v	language:Python
 grid	src/mat/impls/aij/mpi/superlu_dist/superlu_dist.c	/^  gridinfo_t grid;$/;"	m	language:C	struct:__anon0965ce5f0108	typeref:typename:gridinfo_t	file:
 grid	src/mat/impls/aij/mpi/superlu_dist/superlu_dist.c	/^  gridinfo_t grid;$/;"	m	language:C	struct:__anon0965ce5f0208	typeref:typename:gridinfo_t	file:
 grid	src/snes/tutorials/ex30.c	/^  GridInfo  *grid;$/;"	m	language:C	struct:__anon520d62eb0508	typeref:typename:GridInfo *	file:
@@ -50255,7 +50393,7 @@
 help	src/mat/tests/ex195.c	/^static char help[] = " Demonstrate the use of MatConvert_Nest_AIJ\\n";$/;"	v	language:C	typeref:typename:char[]	file:
 help	src/mat/tests/ex197.c	/^static char help[] = "Test MatMultHermitianTranspose() and MatMultHermitianTransposeAdd().\\n\\n/;"	v	language:C	typeref:typename:char[]	file:
 help	src/mat/tests/ex198.c	/^static char help[] = "Test MatMatMatMult\\n\\$/;"	v	language:C	typeref:typename:char[]	file:
-help	src/mat/tests/ex199.c	/^static char help[] = "Tests the different MatColoring implementatons.\\n\\n";$/;"	v	language:C	typeref:typename:char[]	file:
+help	src/mat/tests/ex199.c	/^static char help[] = "Tests the different MatColoring implementations.\\n\\n";$/;"	v	language:C	typeref:typename:char[]	file:
 help	src/mat/tests/ex1k.kokkos.cxx	/^static char help[] = "Benchmarking MatMult() with AIJ and its subclass matrix types\\n";$/;"	v	language:C++	typeref:typename:char[]	file:
 help	src/mat/tests/ex2.c	/^static char help[] = "Tests MatTranspose(), MatNorm(), MatAXPY() and MatAYPX().\\n\\n";$/;"	v	language:C	typeref:typename:char[]	file:
 help	src/mat/tests/ex20.c	/^static char help[] = "Tests converting a matrix to another format with MatConvert().\\n\\n";$/;"	v	language:C	typeref:typename:char[]	file:
@@ -50294,7 +50432,7 @@
 help	src/mat/tests/ex237.c	/^static char help[] = "Mini-app to benchmark matrix--matrix multiplication\\n\\n";$/;"	v	language:C	typeref:typename:char[]	file:
 help	src/mat/tests/ex238.c	/^static char help[] = "Creates MatSeqBAIJ matrix of given BS for timing tests of MatMult().\\n";$/;"	v	language:C	typeref:typename:char[]	file:
 help	src/mat/tests/ex239.c	/^static char help[] = "Test device\/host memory allocation in MatDenseSeqCUDA()\\n\\n";$/;"	v	language:C	typeref:typename:char[]	file:
-help	src/mat/tests/ex24.c	/^static char help[] = "Tests the different MatColoring implementatons and ISColoringTestValid() \\/;"	v	language:C	typeref:typename:char[]	file:
+help	src/mat/tests/ex24.c	/^static char help[] = "Tests the different MatColoring implementations and ISColoringTestValid() /;"	v	language:C	typeref:typename:char[]	file:
 help	src/mat/tests/ex240.c	/^static char help[] = "Tests MatFDColoringSetValues()\\n\\n";$/;"	v	language:C	typeref:typename:char[]	file:
 help	src/mat/tests/ex241.c	/^static char help[] = "Tests MATHTOOL\\n\\n";$/;"	v	language:C	typeref:typename:char[]	file:
 help	src/mat/tests/ex242.c	/^static char help[] = "Tests ScaLAPACK interface.\\n\\n";$/;"	v	language:C	typeref:typename:char[]	file:
@@ -50574,7 +50712,7 @@
 help	src/tao/bound/tutorials/plate2.c	/^static char help[] = "This example demonstrates use of the TAO package to \\n\\$/;"	v	language:C	typeref:typename:char[]	file:
 help	src/tao/complementarity/tutorials/blackscholes.c	/^static char help[] = "This example demonstrates use of the TAO package to\\n\\$/;"	v	language:C	typeref:typename:char[]	file:
 help	src/tao/complementarity/tutorials/minsurf1.c	/^static char help[] = "This example demonstrates use of the TAO package to\\n\\$/;"	v	language:C	typeref:typename:char[]	file:
-help	src/tao/constrained/tutorials/ex1.c	/^static char help[] = "Solves constrained optimiztion problem using pdipm.\\n\\$/;"	v	language:C	typeref:typename:char[]	file:
+help	src/tao/constrained/tutorials/ex1.c	/^static char help[] = "Solves constrained optimization problem using pdipm.\\n\\$/;"	v	language:C	typeref:typename:char[]	file:
 help	src/tao/constrained/tutorials/maros.c	/^static char help[] = "";$/;"	v	language:C	typeref:typename:char[]	file:
 help	src/tao/constrained/tutorials/tomographyADMM.c	/^static char help[] = "Finds the ADMM solution to the under constraint linear model Ax = b, with /;"	v	language:C	typeref:typename:char[]	file:
 help	src/tao/leastsquares/tests/chwirut2.c	/^static char help[] = "Finds the nonlinear least-squares solution to the model \\n\\$/;"	v	language:C	typeref:typename:char[]	file:
@@ -50991,7 +51129,7 @@
 hmnull_constant	src/ksp/pc/impls/hypre/hypre.c	/^  Vec                hmnull_constant;$/;"	m	language:C	struct:__anona88fedbf0108	typeref:typename:Vec	file:
 hold	include/petsc/private/drawimpl.h	/^  PetscBool hold;$/;"	m	language:C++	struct:_p_PetscDrawAxis	typeref:typename:PetscBool
 hold	src/sys/classes/viewer/impls/draw/vdraw.h	/^  PetscBool      hold; \/* Keep previous image when adding new *\/$/;"	m	language:C++	struct:__anon31c7ff130108	typeref:typename:PetscBool
-homogeneous	src/snes/tutorials/ex13.c	/^  PetscBool homogeneous; \/* Use homogeneous boudnary conditions *\/$/;"	m	language:C	struct:__anon520c56ec0108	typeref:typename:PetscBool	file:
+homogeneous	src/snes/tutorials/ex13.c	/^  PetscBool homogeneous; \/* Use homogeneous boundary conditions *\/$/;"	m	language:C	struct:__anon520c56ec0108	typeref:typename:PetscBool	file:
 hopt_min	src/snes/interface/noise/snesnoise.c	/^  double   hopt_min;       \/* minimum allowable hopt *\/$/;"	m	language:C	struct:__anon2717aab90108	typeref:typename:double	file:
 hopt_resets	src/snes/interface/noise/snesnoise.c	/^  PetscInt hopt_resets;    \/* number of times we've reset the hopt estimate *\/$/;"	m	language:C	struct:__anon2717aab90108	typeref:typename:PetscInt	file:
 horizontal	include/petsc/private/viewerhdf5impl.h	/^  PetscBool                 horizontal;     \/* store column vectors as blocks (needed for MATDE/;"	m	language:C++	struct:__anon51ab41b10108	typeref:typename:PetscBool
@@ -51113,7 +51251,7 @@
 ia	src/mat/impls/aij/seq/essl/essl.c	/^  int         *ia;$/;"	m	language:C	struct:__anonf79f5eea0108	typeref:typename:int *	file:
 ia	src/mat/impls/aij/seq/mkl_pardiso/mkl_pardiso.c	/^  INT_TYPE *ia, *ja;$/;"	m	language:C	struct:__anon0a221be60108	typeref:typename:INT_TYPE *	file:
 ia_alloc	src/mat/impls/aij/mpi/mumps/mumps.c	/^  PetscMUMPSInt *ia_alloc, *ja_alloc; \/* work arrays used for the CSR struct for sparse rhs *\/$/;"	m	language:C	struct:Mat_MUMPS	typeref:typename:PetscMUMPSInt *	file:
-iargc	src/sys/objects/ftn-custom/zstart.c	/^#define iargc /;"	d	language:C	file:
+iargc	src/sys/objects/ftn-custom/zstart.c	/^#define iargc  iargc_/;"	d	language:C	file:
 iargc_	src/sys/objects/ftn-custom/zstart.c	/^#define iargc_ /;"	d	language:C	file:
 iarray	src/sys/tutorials/ex5.c	/^  PetscInt      iarray[3];$/;"	m	language:C	struct:__anon5ad51ec30308	typeref:typename:PetscInt[3]	file:
 ibdiag	src/mat/impls/aij/seq/aij.h	/^  MatScalar *bdiag, *ibdiag, *ssor_work; \/* diagonal blocks of matrix used for MatSOR_SeqAIJ_In/;"	m	language:C++	struct:__anon262276c60708	typeref:typename:MatScalar *
@@ -51982,7 +52120,7 @@
 its	src/ksp/pc/impls/hypre/hypre.c	/^  PetscInt its;$/;"	m	language:C	struct:__anona88fedbf0308	typeref:typename:PetscInt	file:
 its	src/ksp/pc/impls/ksp/pcksp.c	/^  PetscInt its; \/* total number of iterations KSP uses *\/$/;"	m	language:C	struct:__anon89cf097e0108	typeref:typename:PetscInt	file:
 its	src/ksp/pc/impls/sor/sor.c	/^  PetscInt   its;  \/* inner iterations, number of sweeps *\/$/;"	m	language:C	struct:__anonf2f7f4d70108	typeref:typename:PetscInt	file:
-its0	src/snes/tutorials/ex3.c	/^  PetscInt its0; \/* num of prevous outer KSP iterations *\/$/;"	m	language:C	struct:__anonad27317b0408	typeref:typename:PetscInt	file:
+its0	src/snes/tutorials/ex3.c	/^  PetscInt its0; \/* num of previous outer KSP iterations *\/$/;"	m	language:C	struct:__anonad27317b0408	typeref:typename:PetscInt	file:
 ivisc	src/snes/tutorials/ex30.c	/^  PetscInt  ivisc, adv_scheme, ibound, output_ivisc;$/;"	m	language:C	struct:__anon520d62eb0308	typeref:typename:PetscInt	file:
 iw	src/sys/classes/random/impls/curand/curand2.cu	/^  PetscReal il, iw;$/;"	m	language:C	struct:complexscalelw	typeref:typename:PetscReal	file:
 iwork	src/ksp/ksp/guess/impls/pod/pod.c	/^  PetscBLASInt *iwork;            \/* integer work vector *\/$/;"	m	language:C	struct:__anon302a3ee60108	typeref:typename:PetscBLASInt *	file:
@@ -52172,7 +52310,7 @@
 kernelSrc	src/vec/vec/tests/ex56.c	/^const char *kernelSrc = "\\n"$/;"	v	language:C	typeref:typename:const char *
 kev_joul	src/ts/utils/dmplexlandau/tutorials/ex2.c	/^static const PetscReal kev_joul = 6.241506479963235e+15; \/* 1\/1000e *\/$/;"	v	language:C	typeref:typename:const PetscReal	file:
 key	include/petsc/private/dmnetworkimpl.h	/^  PetscInt *key;          \/* component keys *\/$/;"	m	language:C++	struct:_p_DMNetworkComponentHeader	typeref:typename:PetscInt *
-key	src/dm/impls/plex/plexgmsh.c	/^#define key(/;"	d	language:C	file:
+key	src/dm/impls/plex/plexgmsh.c	/^#define key(eid) keym/;"	d	language:C	file:
 key	src/sys/classes/random/impls/random123/random123.c	/^  threefry4x64_key_t key;$/;"	m	language:C	struct:_n_PetscRandom123	typeref:typename:threefry4x64_key_t	file:
 key	src/sys/yaml/include/yaml.h	/^    int key;$/;"	m	language:C++	struct:yaml_node_pair_s	typeref:typename:int
 keys	config/BuildSystem/RDict.py	/^  def keys(self):$/;"	m	language:Python	class:RDict
@@ -52185,10 +52323,10 @@
 kgrid	src/snes/tutorials/ex12.c	/^  PetscInt *kgrid; \/* Random parameter grid *\/$/;"	m	language:C	struct:__anon520c52ab0408	typeref:typename:PetscInt *	file:
 kh	src/mat/impls/aij/mpi/kokkos/mpiaijkok.kokkos.cxx	/^  KernelHandle        kh;$/;"	m	language:C++	struct:MatMatStruct	typeref:typename:KernelHandle	file:
 kh_begin	include/petsc/private/khash/khash.h	/^#define kh_begin(/;"	d	language:C++
-kh_clear	include/petsc/private/khash/khash.h	/^#define kh_clear(/;"	d	language:C++
+kh_clear	include/petsc/private/khash/khash.h	/^#define kh_clear(name, h) kh_clear_/;"	d	language:C++
 kh_cstr_t	include/petsc/private/khash/khash.h	/^typedef const char *kh_cstr_t;$/;"	t	language:C++	typeref:typename:const char *
-kh_del	include/petsc/private/khash/khash.h	/^#define kh_del(/;"	d	language:C++
-kh_destroy	include/petsc/private/khash/khash.h	/^#define kh_destroy(/;"	d	language:C++
+kh_del	include/petsc/private/khash/khash.h	/^#define kh_del(name, h, k) kh_del_/;"	d	language:C++
+kh_destroy	include/petsc/private/khash/khash.h	/^#define kh_destroy(name, h) kh_destroy_/;"	d	language:C++
 kh_end	include/petsc/private/khash/khash.h	/^#define kh_end(/;"	d	language:C++
 kh_exist	include/petsc/private/khash/khash.h	/^#define kh_exist(/;"	d	language:C++
 kh_foreach	include/petsc/private/hashtable.h	/^  #define kh_foreach(/;"	d	language:C++
@@ -52196,8 +52334,8 @@
 kh_foreach_key	include/petsc/private/hashtable.h	/^  #define kh_foreach_key(/;"	d	language:C++
 kh_foreach_value	include/petsc/private/hashtable.h	/^  #define kh_foreach_value(/;"	d	language:C++
 kh_foreach_value	include/petsc/private/khash/khash.h	/^#define kh_foreach_value(/;"	d	language:C++
-kh_get	include/petsc/private/khash/khash.h	/^#define kh_get(/;"	d	language:C++
-kh_init	include/petsc/private/khash/khash.h	/^#define kh_init(/;"	d	language:C++
+kh_get	include/petsc/private/khash/khash.h	/^#define kh_get(name, h, k) kh_get_/;"	d	language:C++
+kh_init	include/petsc/private/khash/khash.h	/^#define kh_init(name) kh_init_/;"	d	language:C++
 kh_inline	include/petsc/private/hashtable.h	/^#define kh_inline /;"	d	language:C++
 kh_inline	include/petsc/private/khash/khash.h	/^#define kh_inline /;"	d	language:C++
 kh_int64_hash_equal	include/petsc/private/khash/khash.h	/^#define kh_int64_hash_equal(/;"	d	language:C++
@@ -52207,9 +52345,9 @@
 kh_int_hash_func2	include/petsc/private/khash/khash.h	/^#define kh_int_hash_func2(/;"	d	language:C++
 kh_key	include/petsc/private/khash/khash.h	/^#define kh_key(/;"	d	language:C++
 kh_n_buckets	include/petsc/private/khash/khash.h	/^#define kh_n_buckets(/;"	d	language:C++
-kh_put	include/petsc/private/khash/khash.h	/^#define kh_put(/;"	d	language:C++
+kh_put	include/petsc/private/khash/khash.h	/^#define kh_put(name, h, k, r) kh_put_/;"	d	language:C++
 kh_reset	include/petsc/private/hashtable.h	/^  #define kh_reset(/;"	d	language:C++
-kh_resize	include/petsc/private/khash/khash.h	/^#define kh_resize(/;"	d	language:C++
+kh_resize	include/petsc/private/khash/khash.h	/^#define kh_resize(name, h, s) kh_resize_/;"	d	language:C++
 kh_size	include/petsc/private/khash/khash.h	/^#define kh_size(/;"	d	language:C++
 kh_str_hash_equal	include/petsc/private/khash/khash.h	/^#define kh_str_hash_equal(/;"	d	language:C++
 kh_str_hash_func	include/petsc/private/khash/khash.h	/^#define kh_str_hash_func(/;"	d	language:C++
@@ -52895,9 +53033,9 @@
 localX	src/snes/tutorials/ex10d/ex10.c	/^  Vec        localX, localF;               \/* local solution (u) and f(u) vectors *\/$/;"	m	language:C	struct:__anon7bee4a3a0108	typeref:typename:Vec	file:
 localX	src/tao/bound/tutorials/plate2.c	/^  Vec localX, localV; \/* ghosted local vector *\/$/;"	m	language:C	struct:__anon7075aa250108	typeref:typename:Vec	file:
 localX	src/tao/unconstrained/tutorials/eptorsion2.c	/^  Vec localX; \/* local vectors *\/$/;"	m	language:C	struct:__anon69df7e970108	typeref:typename:Vec	file:
-localX	src/ts/tutorials/network/wash.h	/^  Vec       localX, localXdot; \/* vectors used in local function evalutation *\/$/;"	m	language:C++	struct:_p_Wash	typeref:typename:Vec
+localX	src/ts/tutorials/network/wash.h	/^  Vec       localX, localXdot; \/* vectors used in local function evaluation *\/$/;"	m	language:C++	struct:_p_Wash	typeref:typename:Vec
 localX0	src/ts/tutorials/autodiff/adolc-utils/contexts.cxx	/^  Vec           localX0;$/;"	m	language:C++	struct:__anon7c878c320208	typeref:typename:Vec	file:
-localXdot	src/ts/tutorials/network/wash.h	/^  Vec       localX, localXdot; \/* vectors used in local function evalutation *\/$/;"	m	language:C++	struct:_p_Wash	typeref:typename:Vec
+localXdot	src/ts/tutorials/network/wash.h	/^  Vec       localX, localXdot; \/* vectors used in local function evaluation *\/$/;"	m	language:C++	struct:_p_Wash	typeref:typename:Vec
 localXold	src/snes/tutorials/network/ex1.c	/^  Vec           localXold;  \/* store previous solution, used by FormFunction_Dummy() *\/$/;"	m	language:C	struct:__anon262d8d520108	typeref:typename:Vec	file:
 local_auxmat1	include/petsc/private/pcbddcimpl.h	/^  Mat        local_auxmat1;$/;"	m	language:C++	struct:__anon57f596d80108	typeref:typename:Mat
 local_auxmat2	include/petsc/private/pcbddcimpl.h	/^  Mat        local_auxmat2;$/;"	m	language:C++	struct:__anon57f596d80108	typeref:typename:Mat
@@ -53829,7 +53967,6 @@
 main	src/mat/tutorials/ex4f.F90	/^program main$/;"	p	language:Fortran
 main	src/mat/tutorials/ex5cu.cu	/^int main(int argc, char **args)$/;"	f	language:C	typeref:typename:int
 main	src/mat/tutorials/ex5k.kokkos.cxx	/^int main(int argc, char **argv)$/;"	f	language:C++	typeref:typename:int
-main	src/mat/tutorials/ex6f.F90	/^     PROGRAM main$/;"	p	language:Fortran
 main	src/mat/tutorials/ex7.c	/^int main(int argc, char **argv)$/;"	f	language:C	typeref:typename:int
 main	src/mat/tutorials/ex8.c	/^int main(int argc, char **args)$/;"	f	language:C	typeref:typename:int
 main	src/mat/tutorials/ex9.c	/^int main(int argc, char **args)$/;"	f	language:C	typeref:typename:int
@@ -54802,7 +54939,7 @@
 matsetoptionsprefix_	src/mat/interface/ftn-custom/zmatrixf.c	/^PETSC_EXTERN void matsetoptionsprefix_(Mat *mat,char* prefix,PetscErrorCode *ierr,PETSC_FORTRAN_/;"	f	language:C	typeref:typename:PETSC_EXTERN void
 matsetpreallocationcoo32_	src/mat/ftn-custom/zmat.c	/^#define matsetpreallocationcoo32_ /;"	d	language:C	file:
 matsetpreallocationcoo32_	src/mat/ftn-custom/zmat.c	/^PETSC_EXTERN void  matsetpreallocationcoo32_(Mat *A,int *ncoo, PetscInt coo_i[], PetscInt coo_j[/;"	f	language:C	typeref:typename:PETSC_EXTERN void
-matsetpreallocationcoo64	src/mat/ftn-custom/zmat.c	/^#define matsetpreallocationcoo64 /;"	d	language:C	file:
+matsetpreallocationcoo64	src/mat/ftn-custom/zmat.c	/^#define matsetpreallocationcoo64         matsetpreallocationcoo64$/;"	d	language:C	file:
 matsetpreallocationcoo64_	src/mat/ftn-custom/zmat.c	/^#define matsetpreallocationcoo64_ /;"	d	language:C	file:
 matsetpreallocationcoo64_	src/mat/ftn-custom/zmat.c	/^PETSC_EXTERN void  matsetpreallocationcoo64_(Mat *A,PetscInt64 *ncoo, PetscInt coo_i[], PetscInt/;"	f	language:C	typeref:typename:PETSC_EXTERN void
 matsetpreallocationcoolocal32_	src/mat/ftn-custom/zmat.c	/^#define matsetpreallocationcoolocal32_ /;"	d	language:C	file:
@@ -55085,7 +55222,9 @@
 mbiface	include/petsc/private/dmmbimpl.h	/^  moab::Interface *mbiface;$/;"	m	language:C++	struct:__anon42935ab80108	typeref:typename:moab::Interface *
 mbs	src/ksp/pc/impls/pbjacobi/pbjacobi.c	/^  PetscInt         bs, mbs;$/;"	m	language:C	struct:__anona36798830108	typeref:typename:PetscInt	file:
 mc64ad_dist	src/mat/order/wbm.c	/^    #define mc64ad_dist /;"	d	language:C	file:
+mc64ad_dist	src/mat/order/wbm.c	/^    #define mc64ad_dist mc64ad_dist$/;"	d	language:C	file:
 mc64id_dist	src/mat/order/wbm.c	/^    #define mc64id_dist /;"	d	language:C	file:
+mc64id_dist	src/mat/order/wbm.c	/^    #define mc64id_dist mc64id_dist$/;"	d	language:C	file:
 mcVal	src/sys/classes/random/tutorials/ex2.c	/^PetscReal mcVal(PetscReal St, PetscReal r, PetscReal vol, PetscReal dt, PetscReal eps)$/;"	f	language:C	typeref:typename:PetscReal
 mdiag	src/mat/impls/aij/seq/aij.h	/^  PetscScalar *idiag, *mdiag, *ssor_work; \/* inverse of diagonal entries, diagonal values and w/;"	m	language:C++	struct:__anon262276c60808	typeref:typename:PetscScalar *
 mdiag	src/mat/impls/sell/seq/sell.h	/^  PetscScalar *idiag, *mdiag, *ssor_work; \/* inverse of diagonal entries, diagonal values and w/;"	m	language:C++	struct:__anon5cae19de0108	typeref:typename:PetscScalar *
@@ -55150,6 +55289,7 @@
 meter	src/ts/tutorials/ex10.c	/^  PetscReal meter, kilogram, second, Kelvin; \/* Fundamental units *\/$/;"	m	language:C	struct:__anone0e203570608	typeref:typename:PetscReal	file:
 meter	src/ts/tutorials/ex14.c	/^  PetscReal meter;$/;"	m	language:C	struct:_n_Units	typeref:typename:PetscReal	file:
 meth	src/binding/petsc4py/demo/wrap-swig/setup.py	/^        meth = UnixCCompiler.runtime_library_dir_option$/;"	v	language:Python
+meth	src/binding/petsc4py/demo/wrap-swig/setup.py	/^        meth = UnixCCompiler.runtime_library_dir_option.im_func$/;"	v	language:Python
 meth	src/ksp/pc/impls/parms/parms.c	/^  PetscBool         nonsymperm, meth[8];$/;"	m	language:C	struct:__anon120201350108	typeref:typename:PetscBool[8]	file:
 method	src/ksp/ksp/guess/impls/fischer/fischer.c	/^  PetscInt         method; \/* 1, 2 or 3 *\/$/;"	m	language:C	struct:__anoncbd29fa80108	typeref:typename:PetscInt	file:
 method	src/vec/vec/utils/tagger/impls/cdf.c	/^  VecTaggerCDFMethod method;$/;"	m	language:C	struct:__anon70fc1cf10208	typeref:typename:VecTaggerCDFMethod	file:
@@ -55389,7 +55529,7 @@
 modType	src/ts/tutorials/ex76.c	/^  ModType   modType;      \/* Model type *\/$/;"	m	language:C	struct:__anone0e567230408	typeref:typename:ModType	file:
 modTypes	src/snes/tutorials/ex36.c	/^const char *modTypes[NUM_MOD_TYPES + 1] = {"constant", "oscillatory", "tanh", "unknown"};$/;"	v	language:C	typeref:typename:const char * []
 modTypes	src/ts/tutorials/ex76.c	/^const char *modTypes[NUM_MOD_TYPES + 1] = {"incompressible", "conducting", "unknown"};$/;"	v	language:C	typeref:typename:const char * []
-mod_egg_info	src/binding/petsc4py/conf/baseconf.py	/^        from setuptools.command import egg_info as mod_egg_info$/;"	x	language:Python	nameref:unknown:egg_info
+mod_egg_info	src/binding/petsc4py/conf/baseconf.py	/^        from setuptools.command import egg_info as mod_egg_info$/;"	Y	language:Python	nameref:unknown:egg_info
 mod_rap2	src/ksp/pc/impls/hypre/hypre.c	/^  PetscInt  mod_rap2;$/;"	m	language:C	struct:__anona88fedbf0108	typeref:typename:PetscInt	file:
 mode	src/sys/classes/viewer/impls/ascii/asciiimpl.h	/^  PetscFileMode mode;      \/* The mode in which to open the file *\/$/;"	m	language:C++	struct:__anon63f65c250108	typeref:typename:PetscFileMode
 mode	src/sys/classes/viewer/impls/vu/petscvu.c	/^  PetscFileMode mode; \/* The mode in which to open the file *\/$/;"	m	language:C	struct:__anon976b1b710108	typeref:typename:PetscFileMode	file:
@@ -55543,6 +55683,9 @@
 mpi_get_count	include/petsc/mpiuni/mpiunifdef.h	/^#define mpi_get_count /;"	d	language:C++
 mpi_get_processor_name	include/petsc/mpiuni/mpiunifdef.h	/^#define mpi_get_processor_name /;"	d	language:C++
 mpi_init	include/petsc/mpiuni/mpiunifdef.h	/^#define mpi_init /;"	d	language:C++
+mpi_init_	src/sys/objects/ftn-custom/zstart.c	/^#define mpi_init_             mpi_init__/;"	d	language:C	file:
+mpi_init_	src/sys/objects/ftn-custom/zstart.c	/^#define mpi_init_             petsc_mpi_init_$/;"	d	language:C	file:
+mpi_init_	src/sys/objects/ftn-custom/zstart.c	/^#define mpi_init_             petsc_mpi_init__/;"	d	language:C	file:
 mpi_init_	src/sys/objects/ftn-custom/zstart.c	/^#define mpi_init_ /;"	d	language:C	file:
 mpi_initialized	include/petsc/mpiuni/mpiunifdef.h	/^#define mpi_initialized /;"	d	language:C++
 mpi_iprobe	include/petsc/mpiuni/mpiunifdef.h	/^#define mpi_iprobe /;"	d	language:C++
@@ -55968,7 +56111,7 @@
 n_alloc_icol	src/mat/impls/aij/seq/bas/spbas.h	/^  PetscInt     n_alloc_icol;$/;"	m	language:C++	struct:__anon5dfed1d00108	typeref:typename:PetscInt
 n_alloc_val	src/mat/impls/aij/seq/bas/spbas.h	/^  PetscInt     n_alloc_val;$/;"	m	language:C++	struct:__anon5dfed1d00108	typeref:typename:PetscInt
 n_bind	src/tao/bound/impls/blmvm/blmvm.h	/^  PetscInt n_bind;$/;"	m	language:C++	struct:__anon1bcee72b0108	typeref:typename:PetscInt
-n_bind	src/tao/quadratic/impls/gpcg/gpcg.h	/^  PetscInt n_bind; \/* Number of binding varibles *\/$/;"	m	language:C++	struct:__anon55a397970108	typeref:typename:PetscInt
+n_bind	src/tao/quadratic/impls/gpcg/gpcg.h	/^  PetscInt n_bind; \/* Number of binding variables *\/$/;"	m	language:C++	struct:__anon55a397970108	typeref:typename:PetscInt
 n_cycles	src/snes/impls/fas/fasimpls.h	/^  PetscInt    n_cycles;               \/* number of cycles on this level *\/$/;"	m	language:C++	struct:__anonf37b11560108	typeref:typename:PetscInt
 n_free	src/tao/bound/impls/blmvm/blmvm.h	/^  PetscInt n_free;$/;"	m	language:C++	struct:__anon1bcee72b0108	typeref:typename:PetscInt
 n_free	src/tao/bound/impls/tron/tron.h	/^  PetscInt n_free; \/* Number of free variables *\/$/;"	m	language:C++	struct:__anon1cb16cb50108	typeref:typename:PetscInt
@@ -56207,6 +56350,7 @@
 nevents	include/petsc/private/tsimpl.h	/^  PetscInt      nevents;                                                                    \/* /;"	m	language:C++	struct:_n_TSEvent	typeref:typename:PetscInt
 nevents_zero	include/petsc/private/tsimpl.h	/^  PetscInt      nevents_zero;                                                               \/* /;"	m	language:C++	struct:_n_TSEvent	typeref:typename:PetscInt
 newMergeMethod	src/dm/impls/moab/dmmbutil.cxx	/^  bool      newMergeMethod, keep_skins, simplex, adjEnts;$/;"	m	language:C++	struct:__anonf001d89d0108	typeref:typename:bool	file:
+newSect	src/binding/petsc4py/demo/dmplex/distribute_field.py	/^    newSect = origSect$/;"	v	language:Python
 newSect	src/binding/petsc4py/demo/dmplex/distribute_field.py	/^    newSect, newVec = plex.distributeField(sf, origSect, origVec)$/;"	v	language:Python
 newVec	src/binding/petsc4py/demo/dmplex/distribute_field.py	/^    newSect, newVec = plex.distributeField(sf, origSect, origVec)$/;"	v	language:Python
 newVec	src/binding/petsc4py/demo/dmplex/distribute_field.py	/^    newVec = origVec$/;"	v	language:Python
@@ -56214,9 +56358,9 @@
 new_g	include/petsc/private/taolinesearchimpl.h	/^  Vec       new_g;$/;"	m	language:C++	struct:_p_TaoLineSearch	typeref:typename:Vec
 new_inactives	src/tao/bound/impls/bncg/bncg.h	/^  IS active_lower, active_upper, active_fixed, active_idx, inactive_idx, inactive_old, new_inact/;"	m	language:C++	struct:__anon96145bc30108	typeref:typename:IS
 new_left	include/petscmatcoarsen.h	/^  PetscInt       new_left;$/;"	m	language:C++	struct:_PetscCoarsenData	typeref:typename:PetscInt
-new_md5	config/BuildSystem/config/framework.py	/^from hashlib import md5 as new_md5$/;"	x	language:Python	nameref:unknown:md5
-new_md5	config/BuildSystem/config/package.py	/^from hashlib import md5 as new_md5$/;"	x	language:Python	nameref:unknown:md5
-new_md5	config/BuildSystem/sourceDatabase.py	/^from hashlib import md5 as new_md5$/;"	x	language:Python	nameref:unknown:md5
+new_md5	config/BuildSystem/config/framework.py	/^from hashlib import md5 as new_md5$/;"	Y	language:Python	nameref:unknown:md5
+new_md5	config/BuildSystem/config/package.py	/^from hashlib import md5 as new_md5$/;"	Y	language:Python	nameref:unknown:md5
+new_md5	config/BuildSystem/sourceDatabase.py	/^from hashlib import md5 as new_md5$/;"	Y	language:Python	nameref:unknown:md5
 new_node	include/petscmatcoarsen.h	/^  PetscCDIntNd  *new_node;$/;"	m	language:C++	struct:_PetscCoarsenData	typeref:typename:PetscCDIntNd *
 new_primal_space	include/petsc/private/pcbddcimpl.h	/^  PetscBool new_primal_space;$/;"	m	language:C++	struct:__anon57f596d80108	typeref:typename:PetscBool
 new_primal_space_local	include/petsc/private/pcbddcimpl.h	/^  PetscBool new_primal_space_local;$/;"	m	language:C++	struct:__anon57f596d80108	typeref:typename:PetscBool
@@ -57326,7 +57470,7 @@
 omp_comm_size	src/mat/impls/aij/mpi/mumps/mumps.c	/^  PetscMPIInt  tag, omp_comm_size;$/;"	m	language:C	struct:Mat_MUMPS	typeref:typename:PetscMPIInt	file:
 omp_comm_size	src/sys/utils/mpishm.c	/^  PetscMPIInt        omp_comm_size;   \/* size of omp_comm, a kind of OMP_NUM_THREADS *\/$/;"	m	language:C	struct:_n_PetscOmpCtrl	typeref:typename:PetscMPIInt	file:
 omp_cpuset	src/sys/utils/mpishm.c	/^  hwloc_cpuset_t     omp_cpuset; \/* union of cpu bindings of ranks in omp_comm *\/$/;"	m	language:C	struct:_n_PetscOmpCtrl	typeref:typename:hwloc_cpuset_t	file:
-omp_ctrl	src/mat/impls/aij/mpi/mumps/mumps.c	/^  PetscOmpCtrl omp_ctrl;             \/* an OpenMP controler that blocked processes will release/;"	m	language:C	struct:Mat_MUMPS	typeref:typename:PetscOmpCtrl	file:
+omp_ctrl	src/mat/impls/aij/mpi/mumps/mumps.c	/^  PetscOmpCtrl omp_ctrl;             \/* an OpenMP controller that blocked processes will releas/;"	m	language:C	struct:Mat_MUMPS	typeref:typename:PetscOmpCtrl	file:
 omp_master_comm	src/sys/utils/mpishm.c	/^  MPI_Comm           omp_master_comm; \/* a communicator to give to third party libraries *\/$/;"	m	language:C	struct:_n_PetscOmpCtrl	typeref:typename:MPI_Comm	file:
 omp_win	src/sys/utils/mpishm.c	/^  MPI_Win            omp_win;         \/* a shared memory window containing a barrier *\/$/;"	m	language:C	struct:_n_PetscOmpCtrl	typeref:typename:MPI_Win	file:
 oncomm	include/petsc/private/isimpl.h	/^  PetscErrorCode (*oncomm)(IS, MPI_Comm, PetscCopyMode, IS *);$/;"	m	language:C++	struct:_ISOps	typeref:typename:PetscErrorCode (*)(IS,MPI_Comm,PetscCopyMode,IS *)
@@ -57452,7 +57596,6 @@
 optionsToString	src/benchmarks/benchmarkExample.py	/^  def optionsToString(self, **opts):$/;"	m	language:Python	class:PETScExample
 optionsprinted	include/petsc/private/petscimpl.h	/^  PetscBool    optionsprinted;$/;"	m	language:C++	struct:_p_PetscObject	typeref:typename:PetscBool
 optprolongator	include/petsc/private/pcgamgimpl.h	/^  PetscErrorCode (*optprolongator)(PC, Mat, Mat *);$/;"	m	language:C++	struct:_PCGAMGOps	typeref:typename:PetscErrorCode (*)(PC,Mat,Mat *)
-opts	config/examples/arch-ci-linux-hip-double.py	/^  opts = [$/;"	v	language:Python
 opts	config/gmakegen.py	/^    opts, extra_args = parser.parse_args()$/;"	v	language:Python
 opts	config/gmakegentest.py	/^    opts, extra_args = parser.parse_args()$/;"	v	language:Python
 opts	config/testparse.py	/^    opts, extra_args = parser.parse_args()$/;"	v	language:Python
@@ -57708,14 +57851,14 @@
 owner_ranges	src/binding/petsc4py/docs/apiref/petsc4py.PETSc.Vec-class.html	/^        <a name="owner_ranges"><\/a><span class="summary-name">owner_ranges<\/span>$/;"	a	language:HTML
 owner_rank	src/dm/impls/swarm/swarm_migrate.c	/^  PetscMPIInt owner_rank;$/;"	m	language:C	struct:__anon0b2ae56c0108	typeref:typename:PetscMPIInt	file:
 owners_co	src/mat/impls/aij/mpi/mpiaij.h	/^  PetscInt    *owners_co, *coi, *coj; \/* i and j array of (p->B)^T*A*P - used in the communicat/;"	m	language:C++	struct:__anonf02c0c090108	typeref:typename:PetscInt *
-ownstring	src/sys/classes/viewer/impls/string/stringv.c	/^  PetscBool ownstring; \/* string viewer is responsable for freeing the string *\/$/;"	m	language:C	struct:__anonc6cd78800108	typeref:typename:PetscBool	file:
+ownstring	src/sys/classes/viewer/impls/string/stringv.c	/^  PetscBool ownstring; \/* string viewer is responsible for freeing the string *\/$/;"	m	language:C	struct:__anonc6cd78800108	typeref:typename:PetscBool	file:
 owts	src/mat/color/impls/jp/jp.c	/^  PetscReal *dwts, *owts;$/;"	m	language:C	struct:__anon0bf404230108	typeref:typename:PetscReal *	file:
 p	include/petsc/private/dmdaimpl.h	/^  PetscInt              m, n, p;                \/* processor layout *\/$/;"	m	language:C++	struct:__anona748a20e0108	typeref:typename:PetscInt
 p	include/petsc/private/dmpleximpl.h	/^  PetscReal p;                       \/* Degree for L-p normalization methods *\/$/;"	m	language:C++	struct:__anon5b6c93620208	typeref:typename:PetscReal
 p	src/binding/petsc4py/demo/dmplex/anisotropic_adaptation.py	/^p = 1.0                     # L? normalization order$/;"	v	language:Python
 p	src/binding/petsc4py/src/__init__.py	/^    import sys, os.path as p$/;"	I	language:Python	function:get_config	file:	nameref:module:os.path
 p	src/ksp/ksp/impls/cg/pipelcg/pipelcg.c	/^  Vec          p; \/* work vector *\/$/;"	m	language:C	struct:KSP_CG_PIPE_L_s	typeref:typename:Vec	file:
-p	src/ksp/ksp/impls/tcqmr/tcqmrimpl.h	/^#define p /;"	d	language:C++
+p	src/ksp/ksp/impls/tcqmr/tcqmrimpl.h	/^#define p          ksp-/;"	d	language:C++
 p	src/ksp/ksp/tutorials/ex59.c	/^  PetscInt p;$/;"	m	language:C	struct:__anond0ffa3680108	typeref:typename:PetscInt	file:
 p	src/snes/tutorials/ex15.c	/^  PetscReal p;       \/* Exponent in p-Laplacian *\/$/;"	m	language:C	struct:__anon520c5f6e0208	typeref:typename:PetscReal	file:
 p	src/snes/tutorials/ex30.c	/^  PetscScalar u, w, p, T;$/;"	m	language:C	struct:__anon520d62eb0108	typeref:typename:PetscScalar	file:
@@ -57831,7 +57974,7 @@
 parseTests	config/testparse.py	/^def parseTests(testStr,srcfile,fileNums,verbosity):$/;"	f	language:Python
 parseValue	config/BuildSystem/nargs.py	/^  def parseValue(arg):$/;"	m	language:Python	class:Arg
 parseValue	config/BuildSystem/nargs.py	/^  parseValue = staticmethod(parseValue)$/;"	v	language:Python	class:Arg
-parse_makefile	config/gmakegen.py	/^from sysconfig import _parse_makefile as parse_makefile$/;"	x	language:Python	nameref:unknown:_parse_makefile
+parse_makefile	config/gmakegen.py	/^from sysconfig import _parse_makefile as parse_makefile$/;"	Y	language:Python	nameref:unknown:_parse_makefile
 parser	config/gmakegen.py	/^    parser = optparse.OptionParser()$/;"	v	language:Python
 parser	config/gmakegentest.py	/^    parser = optparse.OptionParser()$/;"	v	language:Python
 parser	config/testparse.py	/^    parser = optparse.OptionParser()$/;"	v	language:Python
@@ -58272,7 +58415,7 @@
 petsc_actions	src/sys/logging/plog.c	/^Action   *petsc_actions    = NULL;$/;"	v	language:C	typeref:typename:Action *
 petsc_allreduce_ct	include/petsclog.h	/^PETSC_EXTERN PetscLogDouble petsc_allreduce_ct;$/;"	v	language:C++	typeref:typename:PETSC_EXTERN PetscLogDouble
 petsc_allreduce_ct	src/sys/logging/plog.c	/^PetscLogDouble petsc_allreduce_ct    = 0.0; \/* The number of reductions *\/$/;"	v	language:C	typeref:typename:PetscLogDouble
-petsc_arch	config/configure.py	/^petsc_arch = ''$/;"	v	language:Python
+petsc_arch	config/configure.py	/^petsc_arch    = ''$/;"	v	language:Python
 petsc_checkpointer_intensity	src/sys/error/checkptr.c	/^static PetscInt petsc_checkpointer_intensity = 1;$/;"	v	language:C	typeref:typename:PetscInt	file:
 petsc_comm	src/mat/impls/aij/mpi/mumps/mumps.c	/^  MPI_Comm     petsc_comm, omp_comm; \/* petsc_comm is petsc matrix's comm *\/$/;"	m	language:C	struct:Mat_MUMPS	typeref:typename:MPI_Comm	file:
 petsc_configure	config/configure.py	/^def petsc_configure(configure_options):$/;"	f	language:Python
@@ -58385,100 +58528,146 @@
 petsc_maxActions	src/sys/logging/plog.c	/^int       petsc_numActions = 0, petsc_maxActions = 100;$/;"	v	language:C	typeref:typename:int
 petsc_maxObjects	include/petsc/private/logimpl.h	/^PETSC_EXTERN int       petsc_maxObjects;$/;"	v	language:C++	typeref:typename:PETSC_EXTERN int
 petsc_maxObjects	src/sys/logging/plog.c	/^int       petsc_numObjects = 0, petsc_maxObjects = 100;$/;"	v	language:C	typeref:typename:int
+petsc_mpi_abort_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_abort_              petsc_mpi_abort__/;"	d	language:C	file:
 petsc_mpi_abort_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_abort_ /;"	d	language:C	file:
 petsc_mpi_abort_	src/sys/mpiuni/mpi.c	/^PETSC_EXTERN void petsc_mpi_abort_(MPI_Comm *comm, int *errorcode, int *ierr)$/;"	f	language:C	typeref:typename:PETSC_EXTERN void
+petsc_mpi_address_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_address_            petsc_mpi_address__/;"	d	language:C	file:
 petsc_mpi_address_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_address_ /;"	d	language:C	file:
 petsc_mpi_address_	src/sys/mpiuni/mpi.c	/^PETSC_EXTERN void petsc_mpi_address_(void *location, MPI_Aint *address, int *ierr)$/;"	f	language:C	typeref:typename:PETSC_EXTERN void
+petsc_mpi_allgather_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_allgather_          petsc_mpi_allgather__/;"	d	language:C	file:
 petsc_mpi_allgather_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_allgather_ /;"	d	language:C	file:
 petsc_mpi_allgather_	src/sys/mpiuni/mpi.c	/^PETSC_EXTERN void petsc_mpi_allgather_(void *sendbuf, int *scount, int *sdatatype, void *recvbuf/;"	f	language:C	typeref:typename:PETSC_EXTERN void
+petsc_mpi_allgatherv_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_allgatherv_         petsc_mpi_allgatherv__/;"	d	language:C	file:
 petsc_mpi_allgatherv_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_allgatherv_ /;"	d	language:C	file:
 petsc_mpi_allgatherv_	src/sys/mpiuni/mpi.c	/^PETSC_EXTERN void petsc_mpi_allgatherv_(void *sendbuf, int *sendcount, int *sendtype, void *recv/;"	f	language:C	typeref:typename:PETSC_EXTERN void
+petsc_mpi_allreduce_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_allreduce_          petsc_mpi_allreduce__/;"	d	language:C	file:
 petsc_mpi_allreduce_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_allreduce_ /;"	d	language:C	file:
 petsc_mpi_allreduce_	src/sys/mpiuni/mpi.c	/^PETSC_EXTERN void petsc_mpi_allreduce_(void *sendbuf, void *recvbuf, int *count, int *datatype, /;"	f	language:C	typeref:typename:PETSC_EXTERN void
+petsc_mpi_alltoallv_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_alltoallv_          petsc_mpi_alltoallv__/;"	d	language:C	file:
 petsc_mpi_alltoallv_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_alltoallv_ /;"	d	language:C	file:
 petsc_mpi_alltoallv_	src/sys/mpiuni/mpi.c	/^PETSC_EXTERN void petsc_mpi_alltoallv_(void *sendbuf, int *sendcounts, int *sdispls, int *sendty/;"	f	language:C	typeref:typename:PETSC_EXTERN void
+petsc_mpi_barrier_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_barrier_            petsc_mpi_barrier__/;"	d	language:C	file:
 petsc_mpi_barrier_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_barrier_ /;"	d	language:C	file:
 petsc_mpi_barrier_	src/sys/mpiuni/mpi.c	/^PETSC_EXTERN void petsc_mpi_barrier_(MPI_Comm *comm, int *ierr)$/;"	f	language:C	typeref:typename:PETSC_EXTERN void
+petsc_mpi_bcast_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_bcast_              petsc_mpi_bcast__/;"	d	language:C	file:
 petsc_mpi_bcast_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_bcast_ /;"	d	language:C	file:
 petsc_mpi_bcast_	src/sys/mpiuni/mpi.c	/^PETSC_EXTERN void petsc_mpi_bcast_(void *buf, int *count, int *datatype, int *root, int *comm, i/;"	f	language:C	typeref:typename:PETSC_EXTERN void
+petsc_mpi_cancel_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_cancel_             petsc_mpi_cancel__/;"	d	language:C	file:
 petsc_mpi_cancel_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_cancel_ /;"	d	language:C	file:
 petsc_mpi_cancel_	src/sys/mpiuni/mpi.c	/^PETSC_EXTERN void petsc_mpi_cancel_(int *request, int *ierr)$/;"	f	language:C	typeref:typename:PETSC_EXTERN void
+petsc_mpi_comm_create_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_comm_create_        petsc_mpi_comm_create__/;"	d	language:C	file:
 petsc_mpi_comm_create_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_comm_create_ /;"	d	language:C	file:
 petsc_mpi_comm_create_	src/sys/mpiuni/mpi.c	/^PETSC_EXTERN void petsc_mpi_comm_create_(int *comm, int *group, int *newcomm, int *ierr)$/;"	f	language:C	typeref:typename:PETSC_EXTERN void
+petsc_mpi_comm_dup_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_comm_dup_           petsc_mpi_comm_dup__/;"	d	language:C	file:
 petsc_mpi_comm_dup_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_comm_dup_ /;"	d	language:C	file:
 petsc_mpi_comm_dup_	src/sys/mpiuni/mpi.c	/^PETSC_EXTERN void petsc_mpi_comm_dup_(int *comm, int *out, int *ierr)$/;"	f	language:C	typeref:typename:PETSC_EXTERN void
+petsc_mpi_comm_free_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_comm_free_          petsc_mpi_comm_free__/;"	d	language:C	file:
 petsc_mpi_comm_free_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_comm_free_ /;"	d	language:C	file:
 petsc_mpi_comm_free_	src/sys/mpiuni/mpi.c	/^PETSC_EXTERN void petsc_mpi_comm_free_(int *comm, int *ierr)$/;"	f	language:C	typeref:typename:PETSC_EXTERN void
+petsc_mpi_comm_group_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_comm_group_         petsc_mpi_comm_group__/;"	d	language:C	file:
 petsc_mpi_comm_group_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_comm_group_ /;"	d	language:C	file:
 petsc_mpi_comm_group_	src/sys/mpiuni/mpi.c	/^PETSC_EXTERN void petsc_mpi_comm_group_(int *comm, int *group, int *ierr)$/;"	f	language:C	typeref:typename:PETSC_EXTERN void
+petsc_mpi_comm_rank_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_comm_rank_          petsc_mpi_comm_rank__/;"	d	language:C	file:
 petsc_mpi_comm_rank_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_comm_rank_ /;"	d	language:C	file:
 petsc_mpi_comm_rank_	src/sys/mpiuni/mpi.c	/^PETSC_EXTERN void petsc_mpi_comm_rank_(MPI_Comm *comm, int *rank, int *ierr)$/;"	f	language:C	typeref:typename:PETSC_EXTERN void
+petsc_mpi_comm_size_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_comm_size_          petsc_mpi_comm_size__/;"	d	language:C	file:
 petsc_mpi_comm_size_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_comm_size_ /;"	d	language:C	file:
 petsc_mpi_comm_size_	src/sys/mpiuni/mpi.c	/^PETSC_EXTERN void petsc_mpi_comm_size_(MPI_Comm *comm, int *size, int *ierr)$/;"	f	language:C	typeref:typename:PETSC_EXTERN void
+petsc_mpi_comm_split_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_comm_split_         petsc_mpi_comm_split__/;"	d	language:C	file:
 petsc_mpi_comm_split_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_comm_split_ /;"	d	language:C	file:
 petsc_mpi_comm_split_	src/sys/mpiuni/mpi.c	/^PETSC_EXTERN void petsc_mpi_comm_split_(MPI_Comm *comm, int *color, int *key, MPI_Comm *newcomm,/;"	f	language:C	typeref:typename:PETSC_EXTERN void
+petsc_mpi_exscan_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_exscan_             petsc_mpi_exscan__/;"	d	language:C	file:
 petsc_mpi_exscan_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_exscan_ /;"	d	language:C	file:
 petsc_mpi_exscan_	src/sys/mpiuni/mpi.c	/^PETSC_EXTERN void petsc_mpi_exscan_(void *sendbuf, void *recvbuf, int *count, int *datatype, int/;"	f	language:C	typeref:typename:PETSC_EXTERN void
+petsc_mpi_finalize_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_finalize_           petsc_mpi_finalize__/;"	d	language:C	file:
 petsc_mpi_finalize_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_finalize_ /;"	d	language:C	file:
 petsc_mpi_finalize_	src/sys/mpiuni/mpi.c	/^PETSC_EXTERN void petsc_mpi_finalize_(int *ierr)$/;"	f	language:C	typeref:typename:PETSC_EXTERN void
+petsc_mpi_gather_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_gather_             petsc_mpi_gather__/;"	d	language:C	file:
 petsc_mpi_gather_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_gather_ /;"	d	language:C	file:
 petsc_mpi_gather_	src/sys/mpiuni/mpi.c	/^PETSC_EXTERN void petsc_mpi_gather_(void *sendbuf, int *scount, int *sdatatype, void *recvbuf, i/;"	f	language:C	typeref:typename:PETSC_EXTERN void
+petsc_mpi_get_count_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_get_count_          petsc_mpi_get_count__/;"	d	language:C	file:
 petsc_mpi_get_count_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_get_count_ /;"	d	language:C	file:
 petsc_mpi_get_count_	src/sys/mpiuni/mpi.c	/^PETSC_EXTERN void petsc_mpi_get_count_(int *status, int *datatype, int *count, int *ierr)$/;"	f	language:C	typeref:typename:PETSC_EXTERN void
 petsc_mpi_get_processor_name_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_get_processor_name_ /;"	d	language:C	file:
+petsc_mpi_get_processor_name_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_get_processor_name_ petsc_mpi_get_processor_name__/;"	d	language:C	file:
 petsc_mpi_get_processor_name_	src/sys/mpiuni/mpi.c	/^PETSC_EXTERN void petsc_mpi_get_processor_name_(char *name, int *result_len, int *ierr, PETSC_FO/;"	f	language:C	typeref:typename:PETSC_EXTERN void
+petsc_mpi_init_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_init_               petsc_mpi_init__/;"	d	language:C	file:
 petsc_mpi_init_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_init_ /;"	d	language:C	file:
 petsc_mpi_init_	src/sys/mpiuni/mpi.c	/^PETSC_EXTERN void petsc_mpi_init_(int *ierr)$/;"	f	language:C	typeref:typename:PETSC_EXTERN void
+petsc_mpi_initialized_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_initialized_        petsc_mpi_initialized__/;"	d	language:C	file:
 petsc_mpi_initialized_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_initialized_ /;"	d	language:C	file:
 petsc_mpi_initialized_	src/sys/mpiuni/mpi.c	/^PETSC_EXTERN void petsc_mpi_initialized_(int *flag, int *ierr)$/;"	f	language:C	typeref:typename:PETSC_EXTERN void
+petsc_mpi_iprobe_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_iprobe_             petsc_mpi_iprobe__/;"	d	language:C	file:
 petsc_mpi_iprobe_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_iprobe_ /;"	d	language:C	file:
 petsc_mpi_iprobe_	src/sys/mpiuni/mpi.c	/^PETSC_EXTERN void petsc_mpi_iprobe_(int *source, int *tag, int *comm, int *glag, int *status, in/;"	f	language:C	typeref:typename:PETSC_EXTERN void
+petsc_mpi_irecv_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_irecv_              petsc_mpi_irecv__/;"	d	language:C	file:
 petsc_mpi_irecv_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_irecv_ /;"	d	language:C	file:
 petsc_mpi_irecv_	src/sys/mpiuni/mpi.c	/^PETSC_EXTERN void petsc_mpi_irecv_(void *buf, int *count, int *datatype, int *source, int *tag, /;"	f	language:C	typeref:typename:PETSC_EXTERN void
+petsc_mpi_isend_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_isend_              petsc_mpi_isend__/;"	d	language:C	file:
 petsc_mpi_isend_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_isend_ /;"	d	language:C	file:
 petsc_mpi_isend_	src/sys/mpiuni/mpi.c	/^PETSC_EXTERN void petsc_mpi_isend_(void *buf, int *count, int *datatype, int *dest, int *tag, in/;"	f	language:C	typeref:typename:PETSC_EXTERN void
+petsc_mpi_pack_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_pack_               petsc_mpi_pack__/;"	d	language:C	file:
 petsc_mpi_pack_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_pack_ /;"	d	language:C	file:
 petsc_mpi_pack_	src/sys/mpiuni/mpi.c	/^PETSC_EXTERN void petsc_mpi_pack_(void *inbuf, int *incount, int *datatype, void *outbuf, int *o/;"	f	language:C	typeref:typename:PETSC_EXTERN void
+petsc_mpi_pack_size_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_pack_size_          petsc_mpi_pack_size__/;"	d	language:C	file:
 petsc_mpi_pack_size_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_pack_size_ /;"	d	language:C	file:
 petsc_mpi_pack_size_	src/sys/mpiuni/mpi.c	/^PETSC_EXTERN void petsc_mpi_pack_size_(int *incount, int *datatype, int *comm, int *size, int *i/;"	f	language:C	typeref:typename:PETSC_EXTERN void
+petsc_mpi_probe_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_probe_              petsc_mpi_probe__/;"	d	language:C	file:
 petsc_mpi_probe_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_probe_ /;"	d	language:C	file:
 petsc_mpi_probe_	src/sys/mpiuni/mpi.c	/^PETSC_EXTERN void petsc_mpi_probe_(int *source, int *tag, int *comm, int *flag, int *status, int/;"	f	language:C	typeref:typename:PETSC_EXTERN void
+petsc_mpi_recv_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_recv_               petsc_mpi_recv__/;"	d	language:C	file:
 petsc_mpi_recv_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_recv_ /;"	d	language:C	file:
 petsc_mpi_recv_	src/sys/mpiuni/mpi.c	/^PETSC_EXTERN void petsc_mpi_recv_(void *buf, int *count, int *datatype, int *source, int *tag, i/;"	f	language:C	typeref:typename:PETSC_EXTERN void
+petsc_mpi_reduce_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_reduce_             petsc_mpi_reduce__/;"	d	language:C	file:
 petsc_mpi_reduce_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_reduce_ /;"	d	language:C	file:
 petsc_mpi_reduce_	src/sys/mpiuni/mpi.c	/^PETSC_EXTERN void petsc_mpi_reduce_(void *sendbuf, void *recvbuf, int *count, int *datatype, int/;"	f	language:C	typeref:typename:PETSC_EXTERN void
+petsc_mpi_reduce_scatter_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_reduce_scatter_     petsc_mpi_reduce_scatter__/;"	d	language:C	file:
 petsc_mpi_reduce_scatter_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_reduce_scatter_ /;"	d	language:C	file:
 petsc_mpi_reduce_scatter_	src/sys/mpiuni/mpi.c	/^PETSC_EXTERN void petsc_mpi_reduce_scatter_(void *sendbuf, void *recvbuf, int *recvcounts, int */;"	f	language:C	typeref:typename:PETSC_EXTERN void
+petsc_mpi_request_free_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_request_free_       petsc_mpi_request_free__/;"	d	language:C	file:
 petsc_mpi_request_free_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_request_free_ /;"	d	language:C	file:
 petsc_mpi_request_free_	src/sys/mpiuni/mpi.c	/^PETSC_EXTERN void petsc_mpi_request_free_(int *request, int *ierr)$/;"	f	language:C	typeref:typename:PETSC_EXTERN void
+petsc_mpi_scan_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_scan_               petsc_mpi_scan__/;"	d	language:C	file:
 petsc_mpi_scan_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_scan_ /;"	d	language:C	file:
 petsc_mpi_scan_	src/sys/mpiuni/mpi.c	/^PETSC_EXTERN void petsc_mpi_scan_(void *sendbuf, void *recvbuf, int *count, int *datatype, int */;"	f	language:C	typeref:typename:PETSC_EXTERN void
+petsc_mpi_send_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_send_               petsc_mpi_send__/;"	d	language:C	file:
 petsc_mpi_send_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_send_ /;"	d	language:C	file:
 petsc_mpi_send_	src/sys/mpiuni/mpi.c	/^PETSC_EXTERN void petsc_mpi_send_(void *buf, int *count, int *datatype, int *dest, int *tag, int/;"	f	language:C	typeref:typename:PETSC_EXTERN void
+petsc_mpi_sendrecv_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_sendrecv_           petsc_mpi_sendrecv__/;"	d	language:C	file:
 petsc_mpi_sendrecv_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_sendrecv_ /;"	d	language:C	file:
 petsc_mpi_sendrecv_	src/sys/mpiuni/mpi.c	/^PETSC_EXTERN void petsc_mpi_sendrecv_(void *sendbuf, int *sendcount, int *sendtype, int *dest, i/;"	f	language:C	typeref:typename:PETSC_EXTERN void
+petsc_mpi_ssend_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_ssend_              petsc_mpi_ssend__/;"	d	language:C	file:
 petsc_mpi_ssend_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_ssend_ /;"	d	language:C	file:
 petsc_mpi_ssend_	src/sys/mpiuni/mpi.c	/^PETSC_EXTERN void petsc_mpi_ssend_(void *buf, int *count, int *datatype, int *dest, int *tag, in/;"	f	language:C	typeref:typename:PETSC_EXTERN void
+petsc_mpi_test_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_test_               petsc_mpi_test__/;"	d	language:C	file:
 petsc_mpi_test_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_test_ /;"	d	language:C	file:
 petsc_mpi_test_	src/sys/mpiuni/mpi.c	/^PETSC_EXTERN void petsc_mpi_test_(int *request, int *flag, int *status, int *ierr)$/;"	f	language:C	typeref:typename:PETSC_EXTERN void
+petsc_mpi_type_commit_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_type_commit_        petsc_mpi_type_commit__/;"	d	language:C	file:
 petsc_mpi_type_commit_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_type_commit_ /;"	d	language:C	file:
 petsc_mpi_type_commit_	src/sys/mpiuni/mpi.c	/^PETSC_EXTERN void petsc_mpi_type_commit_(int *datatype, int *ierr)$/;"	f	language:C	typeref:typename:PETSC_EXTERN void
+petsc_mpi_type_struct_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_type_struct_        petsc_mpi_type_struct__/;"	d	language:C	file:
 petsc_mpi_type_struct_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_type_struct_ /;"	d	language:C	file:
 petsc_mpi_type_struct_	src/sys/mpiuni/mpi.c	/^PETSC_EXTERN void petsc_mpi_type_struct_(int *count, int *array_of_blocklengths, int *array_of_d/;"	f	language:C	typeref:typename:PETSC_EXTERN void
+petsc_mpi_unpack_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_unpack_             petsc_mpi_unpack__/;"	d	language:C	file:
 petsc_mpi_unpack_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_unpack_ /;"	d	language:C	file:
 petsc_mpi_unpack_	src/sys/mpiuni/mpi.c	/^PETSC_EXTERN void petsc_mpi_unpack_(void *inbuf, int *insize, int *position, void *outbuf, int */;"	f	language:C	typeref:typename:PETSC_EXTERN void
+petsc_mpi_wait_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_wait_               petsc_mpi_wait__/;"	d	language:C	file:
 petsc_mpi_wait_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_wait_ /;"	d	language:C	file:
 petsc_mpi_wait_	src/sys/mpiuni/mpi.c	/^PETSC_EXTERN void petsc_mpi_wait_(int *request, int *status, int *ierr)$/;"	f	language:C	typeref:typename:PETSC_EXTERN void
+petsc_mpi_waitall_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_waitall_            petsc_mpi_waitall__/;"	d	language:C	file:
 petsc_mpi_waitall_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_waitall_ /;"	d	language:C	file:
 petsc_mpi_waitall_	src/sys/mpiuni/mpi.c	/^PETSC_EXTERN void petsc_mpi_waitall_(int *count, int *array_of_requests, int *array_of_statuses,/;"	f	language:C	typeref:typename:PETSC_EXTERN void
+petsc_mpi_waitany_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_waitany_            petsc_mpi_waitany__/;"	d	language:C	file:
 petsc_mpi_waitany_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_waitany_ /;"	d	language:C	file:
 petsc_mpi_waitany_	src/sys/mpiuni/mpi.c	/^PETSC_EXTERN void petsc_mpi_waitany_(int *count, int *array_of_requests, int *index, int *status/;"	f	language:C	typeref:typename:PETSC_EXTERN void
+petsc_mpi_wtime_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_wtime_              petsc_mpi_wtime__/;"	d	language:C	file:
 petsc_mpi_wtime_	src/sys/mpiuni/mpi.c	/^  #define petsc_mpi_wtime_ /;"	d	language:C	file:
 petsc_mpi_wtime_	src/sys/mpiuni/mpi.c	/^double petsc_mpi_wtime_(void)$/;"	f	language:C	typeref:typename:double
 petsc_mpiu_2int	include/petscmath.h	/^struct \/* __attribute__((packed, aligned(alignof(PetscInt *)))) *\/ petsc_mpiu_2int {$/;"	s	language:C++
 petsc_mpiu_2scalar	include/petscmath.h	/^struct petsc_mpiu_2scalar {$/;"	s	language:C++
 petsc_mpiu_real_int	include/petscmath.h	/^struct petsc_mpiu_real_int {$/;"	s	language:C++
 petsc_mpiu_scalar_int	include/petscmath.h	/^struct petsc_mpiu_scalar_int {$/;"	s	language:C++
+petsc_null_function_	src/sys/objects/ftn-custom/zstartf.c	/^#define petsc_null_function_  petsc_null_function__/;"	d	language:C	file:
 petsc_null_function_	src/sys/objects/ftn-custom/zstartf.c	/^#define petsc_null_function_ /;"	d	language:C	file:
 petsc_null_function_	src/sys/objects/ftn-custom/zstartf.c	/^PETSC_EXTERN void petsc_null_function_(void)$/;"	f	language:C	typeref:typename:PETSC_EXTERN void
 petsc_numActions	include/petsc/private/logimpl.h	/^PETSC_EXTERN int       petsc_numActions;$/;"	v	language:C++	typeref:typename:PETSC_EXTERN int
@@ -58532,8 +58721,10 @@
 petsc_tracetime	include/petsc/private/logimpl.h	/^PETSC_EXTERN PetscLogDouble petsc_tracetime;$/;"	v	language:C++	typeref:typename:PETSC_EXTERN PetscLogDouble
 petsc_tracetime	src/sys/logging/plog.c	/^PetscLogDouble   petsc_tracetime          = 0.0;$/;"	v	language:C	typeref:typename:PetscLogDouble
 petsc_type	src/dm/impls/swarm/data_bucket.h	/^  PetscDataType petsc_type;$/;"	m	language:C++	struct:_p_DMSwarmDataField	typeref:typename:PetscDataType
+petsc_viewer_draw__	src/sys/classes/viewer/impls/draw/ftn-custom/zdrawvf.c	/^#define petsc_viewer_draw__      petsc_viewer_draw___/;"	d	language:C	file:
 petsc_viewer_draw__	src/sys/classes/viewer/impls/draw/ftn-custom/zdrawvf.c	/^#define petsc_viewer_draw__ /;"	d	language:C	file:
 petsc_viewer_draw__	src/sys/classes/viewer/impls/draw/ftn-custom/zdrawvf.c	/^PETSC_EXTERN PetscViewer petsc_viewer_draw__(MPI_Comm *comm)$/;"	f	language:C	typeref:typename:PETSC_EXTERN PetscViewer
+petsc_viewer_stdout__	src/sys/classes/viewer/impls/ascii/ftn-custom/zvcreatef.c	/^#define petsc_viewer_stdout__      petsc_viewer_stdout___/;"	d	language:C	file:
 petsc_viewer_stdout__	src/sys/classes/viewer/impls/ascii/ftn-custom/zvcreatef.c	/^#define petsc_viewer_stdout__ /;"	d	language:C	file:
 petsc_viewer_stdout__	src/sys/classes/viewer/impls/ascii/ftn-custom/zvcreatef.c	/^PETSC_EXTERN PetscViewer petsc_viewer_stdout__(MPI_Comm *comm)$/;"	f	language:C	typeref:typename:PETSC_EXTERN PetscViewer
 petsc_wait_all_ct	include/petsclog.h	/^PETSC_EXTERN PetscLogDouble petsc_wait_all_ct;$/;"	v	language:C++	typeref:typename:PETSC_EXTERN PetscLogDouble
@@ -59868,7 +60059,7 @@
 r	include/petsc/private/pcmgimpl.h	/^  Vec      r;      \/* Residual *\/$/;"	m	language:C++	struct:__anon6718edff0108	typeref:typename:Vec
 r	include/petsc/private/petscconvestimpl.h	/^  PetscReal   r;        \/* The refinement factor (spatial check requires r = 2) *\/$/;"	m	language:C++	struct:_p_PetscConvEst	typeref:typename:PetscReal
 r	src/dm/impls/plex/tests/ex5.c	/^static PetscErrorCode r(PetscInt dim, PetscReal time, const PetscReal x[], PetscInt Nc, PetscSca/;"	f	language:C	typeref:typename:PetscErrorCode	file:
-r	src/ksp/ksp/impls/tcqmr/tcqmrimpl.h	/^#define r /;"	d	language:C++
+r	src/ksp/ksp/impls/tcqmr/tcqmrimpl.h	/^#define r          ksp->work/;"	d	language:C++
 r	src/ksp/ksp/impls/tsirm/tsirm.c	/^  Vec       Alpha, r;$/;"	m	language:C	struct:__anon90e794c80108	typeref:typename:Vec	file:
 r	src/ksp/ksp/tests/ex19.c	/^  Vec      x, b, r; \/* global vectors *\/$/;"	m	language:C	struct:__anon24c1d9f00108	typeref:typename:Vec	file:
 r	src/ksp/ksp/tests/ex26.c	/^  Vec      x, b, r; \/* global vectors *\/$/;"	m	language:C	struct:__anon24c2598e0108	typeref:typename:Vec	file:
@@ -60280,7 +60471,7 @@
 reproduce	include/petsc/private/matimpl.h	/^  PetscBool     reproduce;$/;"	m	language:C++	struct:_MatStash	typeref:typename:PetscBool
 reproduce_count	include/petsc/private/matimpl.h	/^  PetscInt      reproduce_count;$/;"	m	language:C++	struct:_MatStash	typeref:typename:PetscInt
 req	src/ksp/ksp/impls/cg/pipelcg/pipelcg.c	/^  MPI_Request *req;        \/* request array for asynchronous global collective *\/$/;"	m	language:C	struct:KSP_CG_PIPE_L_s	typeref:typename:MPI_Request *	file:
-req	src/ksp/ksp/impls/cg/pipelcg/pipelcg.c	/^#define req(/;"	d	language:C	file:
+req	src/ksp/ksp/impls/cg/pipelcg/pipelcg.c	/^#define req(i)          (plcg->req[/;"	d	language:C	file:
 req_iallreduce	src/ksp/ksp/guess/impls/pod/pod.c	/^  MPI_Request   req_iallreduce;$/;"	m	language:C	struct:__anon302a3ee60108	typeref:typename:MPI_Request	file:
 req_size	include/petsc/private/matimpl.h	/^  PetscInt  *req_size, *req_source1, *req_source2;$/;"	m	language:C++	struct:__anonc62902da0a08	typeref:typename:PetscInt *
 req_source1	include/petsc/private/matimpl.h	/^  PetscInt  *req_size, *req_source1, *req_source2;$/;"	m	language:C++	struct:__anonc62902da0a08	typeref:typename:PetscInt *
@@ -62728,12 +62919,12 @@
 side	include/petsc/private/tsimpl.h	/^  PetscInt    *side;                                                                        \/* /;"	m	language:C++	struct:_n_TSEvent	typeref:typename:PetscInt *
 sig	src/tao/constrained/impls/ipm/ipm.h	/^  PetscScalar   sig, mu, taumin, dec;$/;"	m	language:C++	struct:__anon1484705d0108	typeref:typename:PetscScalar
 sigma	src/ksp/ksp/impls/cg/pipelcg/pipelcg.c	/^  PetscReal   *sigma;      \/* base shifts *\/$/;"	m	language:C	struct:KSP_CG_PIPE_L_s	typeref:typename:PetscReal *	file:
-sigma	src/ksp/ksp/impls/cg/pipelcg/pipelcg.c	/^#define sigma(/;"	d	language:C	file:
+sigma	src/ksp/ksp/impls/cg/pipelcg/pipelcg.c	/^#define sigma(i)        (plcg->sigma[/;"	d	language:C	file:
 sigma	src/ksp/ksp/tutorials/ex21.c	/^  PetscReal  sigma;$/;"	m	language:C	struct:__anond0fddc3d0108	typeref:typename:PetscReal	file:
 sigma	src/ksp/ksp/utils/lmvm/diagbrdn/diagbrdn.h	/^  PetscReal  delta, delta_min, delta_max, sigma, tol;$/;"	m	language:C++	struct:__anone64c62dc0108	typeref:typename:PetscReal
 sigma	src/ksp/ksp/utils/lmvm/symbrdn/symbrdn.h	/^  PetscReal                  delta, delta_min, delta_max, sigma;$/;"	m	language:C++	struct:__anon36afa2e40108	typeref:typename:PetscReal
-sigma	src/snes/impls/ntrdc/ntrdcimpl.h	/^  PetscReal sigma;                 \/* used to detemine termination *\/$/;"	m	language:C++	struct:__anon2e9410850108	typeref:typename:PetscReal
-sigma	src/snes/impls/tr/trimpl.h	/^  PetscReal sigma;        \/* used to detemine termination *\/$/;"	m	language:C++	struct:__anon60d7eafb0108	typeref:typename:PetscReal
+sigma	src/snes/impls/ntrdc/ntrdcimpl.h	/^  PetscReal sigma;                 \/* used to determine termination *\/$/;"	m	language:C++	struct:__anon2e9410850108	typeref:typename:PetscReal
+sigma	src/snes/impls/tr/trimpl.h	/^  PetscReal sigma;        \/* used to determine termination *\/$/;"	m	language:C++	struct:__anon60d7eafb0108	typeref:typename:PetscReal
 sigma	src/tao/complementarity/tutorials/blackscholes.c	/^  PetscReal sigma, alpha, delta; \/* Underlying asset properties *\/$/;"	m	language:C	struct:__anon02176f500108	typeref:typename:PetscReal	file:
 sigma	src/tao/linesearch/impls/armijo/armijo.h	/^  PetscReal sigma;         \/* Acceptance criteria < 1) *\/$/;"	m	language:C++	struct:__anon9c9026f90108	typeref:typename:PetscReal
 sigma	src/tao/linesearch/impls/owarmijo/owarmijo.h	/^  PetscReal sigma;         \/* Acceptance criteria < 1) *\/$/;"	m	language:C++	struct:__anon2de167850108	typeref:typename:PetscReal
@@ -63005,8 +63196,8 @@
 snesview_	src/snes/interface/ftn-custom/zsnesf.c	/^PETSC_EXTERN void snesview_(SNES *snes,PetscViewer *viewer, PetscErrorCode *ierr)$/;"	f	language:C	typeref:typename:PETSC_EXTERN void
 snesviewfromoptions_	src/snes/interface/ftn-custom/zsnesf.c	/^#define snesviewfromoptions_ /;"	d	language:C	file:
 snesviewfromoptions_	src/snes/interface/ftn-custom/zsnesf.c	/^PETSC_EXTERN void snesviewfromoptions_(SNES *ao,PetscObject obj,char* type,PetscErrorCode *ierr,/;"	f	language:C	typeref:typename:PETSC_EXTERN void
-snprintf	src/sys/classes/viewer/impls/mathematica/mathematica.c	/^  #define snprintf /;"	d	language:C	file:
-snprintf	src/sys/totalview/tv_data_display.c	/^  #define snprintf /;"	d	language:C	file:
+snprintf	src/sys/classes/viewer/impls/mathematica/mathematica.c	/^  #define snprintf _snprintf$/;"	d	language:C	file:
+snprintf	src/sys/totalview/tv_data_display.c	/^  #define snprintf _snprintf$/;"	d	language:C	file:
 snumprocs	src/vec/is/utils/ftn-custom/zisltogf.c	/^static PetscInt  *sprocs, *snumprocs, **sindices;$/;"	v	language:C	typeref:typename:PetscInt *	file:
 sol	include/petsc/private/pcbddcstructsimpl.h	/^  Vec sol;$/;"	m	language:C++	struct:_PCBDDCReuseSolvers	typeref:typename:Vec
 sol	src/ksp/pc/impls/amgx/amgx.cxx	/^  AMGX_vector_handle sol;$/;"	m	language:C++	struct:PC_AMGX	typeref:typename:AMGX_vector_handle	file:
@@ -63118,8 +63309,6 @@
 solver	src/tao/pde_constrained/tutorials/elliptic.c	/^  KSP solver;$/;"	m	language:C	struct:__anon6826b8cd0108	typeref:typename:KSP	file:
 solver	src/tao/pde_constrained/tutorials/hyperbolic.c	/^  KSP      solver;$/;"	m	language:C	struct:__anon212d82280108	typeref:typename:KSP	file:
 solver	src/tao/pde_constrained/tutorials/parabolic.c	/^  KSP solver;$/;"	m	language:C	struct:__anon1342afe40108	typeref:typename:KSP	file:
-solver_context	src/mat/tutorials/ex6f.F90	/^     MODULE solver_context$/;"	m	language:Fortran
-solver_context_interfaces	src/mat/tutorials/ex6f.F90	/^     MODULE solver_context_interfaces$/;"	m	language:Fortran
 solvertype	include/petsc/private/matimpl.h	/^  char                *solvertype;$/;"	m	language:C++	struct:_p_Mat	typeref:typename:char *
 solvertype	src/ksp/pc/impls/factor/factor.h	/^  char           *solvertype;$/;"	m	language:C++	struct:__anonb918d9f20108	typeref:typename:char *
 solves	include/petsc/private/matimpl.h	/^  PetscErrorCode (*solves)(Mat, Vecs, Vecs);$/;"	m	language:C++	struct:_MatOps	typeref:typename:PetscErrorCode (*)(Mat,Vecs,Vecs)
@@ -63166,6 +63355,7 @@
 sound	src/ts/tutorials/ex11.c	/^  EquationOfState sound;$/;"	m	language:C	struct:__anone0e207981008	typeref:typename:EquationOfState	file:
 sound	src/ts/tutorials/ex11_sa.c	/^  EquationOfState sound;$/;"	m	language:C	struct:__anond54d1a4b0c08	typeref:typename:EquationOfState	file:
 source	src/benchmarks/benchmarkExample.py	/^    source = ex.petsc.source(args.library, args.num, '.cu')$/;"	v	language:Python
+source	src/benchmarks/benchmarkExample.py	/^    source = ex.petsc.source(args.library, args.num, 'OpenCL.c')  # Using the convention of Open/;"	v	language:Python
 source	src/benchmarks/benchmarkExample.py	/^  def source(self, library, num, filenametail):$/;"	m	language:Python	class:PETSc
 source	src/snes/tutorials/ex15.c	/^  PetscReal source;  \/* Source term *\/$/;"	m	language:C	struct:__anon520c5f6e0208	typeref:typename:PetscReal	file:
 source	src/ts/tutorials/ex18.c	/^  PetscReal            source[3];$/;"	m	language:C	struct:__anone0e2255f0308	typeref:typename:PetscReal[3]	file:
@@ -63525,7 +63715,7 @@
 stiffly_accurate	src/ts/impls/implicit/glle/glle.h	/^  PetscBool stiffly_accurate; \/* Last row of [A U] is equal t first row of [B V]? *\/$/;"	m	language:C++	struct:_TSGLLEScheme	typeref:typename:PetscBool
 stiffly_accurate	src/ts/impls/implicit/irk/irk.c	/^  PetscBool    stiffly_accurate;$/;"	m	language:C	struct:__anon6eccd73c0108	typeref:typename:PetscBool	file:
 stifflyaccurate	include/petsc/private/tsimpl.h	/^  PetscBool stifflyaccurate;     \/* flag to indicate that the method is stiffly accurate *\/$/;"	m	language:C++	struct:_p_TS	typeref:typename:PetscBool
-stoich	src/ts/tutorials/ex27.c	/^#define stoich(/;"	d	language:C	file:
+stoich	src/ts/tutorials/ex27.c	/^#define stoich(i, j) ctx->stoichi/;"	d	language:C	file:
 stoichiometry	src/ts/tutorials/ex27.c	/^  PetscReal stoichiometry[N_SPECIES * N_REACTIONS];$/;"	m	language:C	struct:__anone0e2ad7f0208	typeref:typename:PetscReal[]	file:
 stokes_identity_J_cx	src/snes/tutorials/ex69.c	/^static void stokes_identity_J_cx(PetscInt dim, PetscInt Nf, PetscInt NfAux, const PetscInt uOff[/;"	f	language:C	typeref:typename:void	file:
 stokes_identity_J_kx	src/snes/tutorials/ex69.c	/^static void stokes_identity_J_kx(PetscInt dim, PetscInt Nf, PetscInt NfAux, const PetscInt uOff[/;"	f	language:C	typeref:typename:void	file:
@@ -64841,11 +65031,6 @@
 trust	include/petsc/private/taoimpl.h	/^  PetscReal     trust;  \/* Current trust region *\/$/;"	m	language:C++	struct:_p_Tao	typeref:typename:PetscReal
 trust0	include/petsc/private/taoimpl.h	/^  PetscReal     trust0; \/* initial trust region radius *\/$/;"	m	language:C++	struct:_p_Tao	typeref:typename:PetscReal
 trust0_changed	include/petsc/private/taoimpl.h	/^  PetscBool trust0_changed;$/;"	m	language:C++	struct:_p_Tao	typeref:typename:PetscBool
-try	src/binding/petsc4py/demo/binary-io/matvecio.py	/^try: range = xrange$/;"	v	language:Python	typeref:typename:range
-try	src/binding/petsc4py/demo/bratu3d/bratu3d.py	/^try: range = xrange$/;"	v	language:Python	typeref:typename:range
-try	src/binding/petsc4py/demo/kspsolve/petsc-mat.py	/^try: range = xrange$/;"	v	language:Python	typeref:typename:range
-try	src/binding/petsc4py/demo/poisson2d/poisson2d.py	/^try: range = xrange$/;"	v	language:Python	typeref:typename:range
-try	src/binding/petsc4py/demo/taosolve/rosenbrock.py	/^try: range = xrange$/;"	v	language:Python	typeref:typename:range
 ts	include/petsc/private/tsimpl.h	/^  TS              ts;$/;"	m	language:C++	struct:_TS_RHSSplitLink	typeref:typename:TS
 ts	src/binding/petsc4py/demo/ode/bouncing_ball.py	/^ts = PETSc.TS().create(comm=ode.comm)$/;"	v	language:Python
 ts	src/binding/petsc4py/demo/ode/ce.py	/^ts = PETSc.TS().create(comm=ode.comm)$/;"	v	language:Python
@@ -65256,8 +65441,8 @@
 uright	src/ts/tests/ex25.c	/^  PetscReal uleft, uright; \/* Dirichlet boundary conditions *\/$/;"	m	language:C	struct:_User	typeref:typename:PetscReal	file:
 uright	src/ts/tutorials/ex25.c	/^  PetscReal uleft, uright; \/* Dirichlet boundary conditions *\/$/;"	m	language:C	struct:_User	typeref:typename:PetscReal	file:
 url	src/binding/petsc4py/setup.py	/^url      = 'https:\/\/gitlab.com\/petsc\/petsc'$/;"	v	language:Python
-urlparse_local	config/BuildSystem/nargs.py	/^      from urllib import parse as urlparse_local$/;"	x	language:Python	member:ArgDownload.setValue	file:	nameref:unknown:parse
-urlparse_local	config/BuildSystem/retrieval.py	/^from urllib import parse as urlparse_local$/;"	x	language:Python	nameref:unknown:parse
+urlparse_local	config/BuildSystem/nargs.py	/^      from urllib import parse as urlparse_local$/;"	Y	language:Python	member:ArgDownload.setValue	file:	nameref:unknown:parse
+urlparse_local	config/BuildSystem/retrieval.py	/^from urllib import parse as urlparse_local$/;"	Y	language:Python	nameref:unknown:parse
 use	include/petsc/private/matimpl.h	/^  PetscBool use;    \/* indicates compressed rows have been checked and will be used *\/$/;"	m	language:C++	struct:__anonc62902da0408	typeref:typename:PetscBool
 use	src/mat/impls/aij/seq/aij.h	/^  PetscBool        use;$/;"	m	language:C++	struct:__anon262276c60708	typeref:typename:PetscBool
 use3d	src/mat/impls/aij/mpi/superlu_dist/superlu_dist.c	/^  PetscBool    use3d;$/;"	m	language:C	struct:__anon0965ce5f0108	typeref:typename:PetscBool	file:
@@ -65920,6 +66105,7 @@
 verbose	src/tao/pde_constrained/impls/lcl/lcl.h	/^  PetscBool verbose;$/;"	m	language:C++	struct:__anon5215f93f0108	typeref:typename:PetscBool
 verbose	src/ts/tutorials/ex14.c	/^  PetscBool verbose;$/;"	m	language:C	struct:_p_THI	typeref:typename:PetscBool	file:
 verbose	src/vec/vec/tests/ex48.c	/^static PetscBool verbose = PETSC_FALSE;$/;"	v	language:C	typeref:typename:PetscBool	file:
+verbosity	config/testparse.py	/^      verbosity=int(opts.verbosity)$/;"	v	language:Python
 verbosity	include/petsc/private/dmpleximpl.h	/^  PetscInt  verbosity;               \/* Level of verbosity for remesher (-1 = no output, 10 = m/;"	m	language:C++	struct:__anon5b6c93620208	typeref:typename:PetscInt
 verify	src/ts/impls/pseudo/posindep.c	/^  PetscErrorCode (*verify)(TS, Vec, void *, PetscReal *, PetscBool *); \/* verify previous times/;"	m	language:C	struct:__anonde15d5580108	typeref:typename:PetscErrorCode (*)(TS,Vec,void *,PetscReal *,PetscBool *)	file:
 verifyctx	src/ts/impls/pseudo/posindep.c	/^  void *verifyctx;$/;"	m	language:C	struct:__anonde15d5580108	typeref:typename:void *	file:
@@ -66720,7 +66906,7 @@
 y	src/ts/impls/implicit/sundials/sundials.h	/^  N_Vector  y;      \/* current solution *\/$/;"	m	language:C++	struct:__anon88a5ab3b0108	typeref:typename:N_Vector
 y	src/ts/tutorials/ex36A.c	/^  const PetscScalar *y, *ydot;$/;"	v	language:C	typeref:typename:const PetscScalar *
 y	src/ts/tutorials/ex36SE.c	/^  const PetscScalar *y, *ydot;$/;"	v	language:C	typeref:typename:const PetscScalar *
-y	src/vec/vec/tutorials/ex20f90.F90	/^      typ/;"	v	language:Fortran	program:main
+y	src/vec/vec/tutorials/ex20f90.F90	/^      type(tVec)       x,y,/;"	v	language:Fortran	program:main
 y0	src/ksp/pc/impls/lsc/lsc.c	/^  Vec       x0, y0, x1;$/;"	m	language:C	struct:__anonf171e8330108	typeref:typename:Vec	file:
 y0	src/tao/constrained/impls/admm/admm.h	/^  Vec                    residual, y, yold, y0, yhat, yhatold, constraint;$/;"	m	language:C++	struct:__anon8fbfb84f0108	typeref:typename:Vec
 yGErr	src/ts/impls/glee/glee.c	/^  Vec          yGErr;     \/* Vector holding the global error after a step is completed *\/$/;"	m	language:C	struct:__anon7c9415a00108	typeref:typename:Vec	file:
@@ -66996,7 +67182,7 @@
 z	src/tao/constrained/impls/admm/admm.h	/^  Vec                    z, zold, Ax, Bz, Axold, Bzold, Bz0;$/;"	m	language:C++	struct:__anon8fbfb84f0108	typeref:typename:Vec
 z	src/tao/constrained/impls/ipm/pdipm.h	/^  Vec z;       \/* R^nci - vector, shares local arrays with X *\/$/;"	m	language:C++	struct:__anon4617a7f10108	typeref:typename:Vec
 z	src/ts/tests/ex3.c	/^  PetscScalar *z;                \/* array of grid points *\/$/;"	m	language:C	struct:__anon591e55750108	typeref:typename:PetscScalar *	file:
-z	src/ts/tutorials/ex9.c	/^  PetscReal z; \/* impedence: z = sqrt(rho*bulk) *\/$/;"	m	language:C	struct:__anon9273966f0708	typeref:typename:PetscReal	file:
+z	src/ts/tutorials/ex9.c	/^  PetscReal z; \/* impedance: z = sqrt(rho*bulk) *\/$/;"	m	language:C	struct:__anon9273966f0708	typeref:typename:PetscReal	file:
 z	src/vec/vec/tutorials/ex20f90.F90	/^      type(tVec), pointer :: z(/;"	v	language:Fortran	program:main
 zGL	src/ksp/ksp/tutorials/ex59.c	/^  PetscReal *zGL;$/;"	m	language:C	struct:__anond0ffa3680208	typeref:typename:PetscReal *	file:
 zJI	src/tao/constrained/impls/admm/admm.h	/^  PetscBool              xJI, zJI;           \/* Bool to check whether A,B Jacobians are NULL-se/;"	m	language:C++	struct:__anon8fbfb84f0108	typeref:typename:PetscBool
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/debian/changelog petsc-3.18.5+dfsg1/debian/changelog
--- petsc-3.18.4+dfsg1/debian/changelog	2023-02-05 10:46:17.000000000 +0100
+++ petsc-3.18.5+dfsg1/debian/changelog	2023-03-05 15:16:00.000000000 +0100
@@ -1,3 +1,9 @@
+petsc (3.18.5+dfsg1-1) unstable; urgency=medium
+
+  * New upstream release.
+
+ -- Drew Parsons <dparsons at debian.org>  Sun, 05 Mar 2023 15:16:00 +0100
+
 petsc (3.18.4+dfsg1-1) unstable; urgency=medium
 
   * New upstream release.
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/include/petsc/finclude/petscdmda.h petsc-3.18.5+dfsg1/include/petsc/finclude/petscdmda.h
--- petsc-3.18.4+dfsg1/include/petsc/finclude/petscdmda.h	2023-01-31 06:19:48.000000000 +0100
+++ petsc-3.18.5+dfsg1/include/petsc/finclude/petscdmda.h	2023-02-27 23:11:05.000000000 +0100
@@ -14,7 +14,7 @@
 
 #define DMDALocalInfo PetscInt
 !
-!   DMDA_LOCAL_INFO_SIZE is one large than the size incase the DA is larger than an integer (on 64 bit systems).
+!   DMDA_LOCAL_INFO_SIZE is one larger than the size in case the DA is larger than an integer (on 64 bit systems).
 !   non-int fields are not accessible from Fortran.
 !
 #define DMDA_LOCAL_INFO_SIZE 25
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/include/petsc/private/cupmblasinterface.hpp petsc-3.18.5+dfsg1/include/petsc/private/cupmblasinterface.hpp
--- petsc-3.18.4+dfsg1/include/petsc/private/cupmblasinterface.hpp	2022-12-28 20:00:16.000000000 +0100
+++ petsc-3.18.5+dfsg1/include/petsc/private/cupmblasinterface.hpp	2023-02-27 23:11:05.000000000 +0100
@@ -142,7 +142,7 @@
   // MACRO_SUFFIX - suffix to one of the above blas function builder macros, e.g. STANDARD or
   // IFPTYPE
   // our_suffix   - the suffix of the alias function
-  // their_suffix - the suffix of the funciton being aliased
+  // their_suffix - the suffix of the function being aliased
   //
   // notes:
   // requires PETSC_CUPMBLAS_PREFIX to be defined as the specific CUDA/HIP blas function
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/include/petsc/private/cupminterface.hpp petsc-3.18.5+dfsg1/include/petsc/private/cupminterface.hpp
--- petsc-3.18.4+dfsg1/include/petsc/private/cupminterface.hpp	2022-12-28 20:00:16.000000000 +0100
+++ petsc-3.18.5+dfsg1/include/petsc/private/cupminterface.hpp	2023-02-27 23:11:05.000000000 +0100
@@ -631,7 +631,7 @@
     // cannot dereference (i.e. cannot call PetscValidPointer() here)
     PetscCheck(dest, PETSC_COMM_SELF, PETSC_ERR_POINTER, "Trying to copy to a NULL pointer");
     PetscCheck(src, PETSC_COMM_SELF, PETSC_ERR_POINTER, "Trying to copy from a NULL pointer");
-    // do early return after nullptr check since we need to check that they arent both nullptrs
+    // do early return after nullptr check since we need to check that they are not both nullptrs
     if (PetscUnlikely(dest == src)) PetscFunctionReturn(0);
     if (kind == cupmMemcpyHostToHost) {
       // If we are HTOH it is cheaper to check if the stream is idle and do a basic mempcy()
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/include/petsc/private/dmimpl.h petsc-3.18.5+dfsg1/include/petsc/private/dmimpl.h
--- petsc-3.18.4+dfsg1/include/petsc/private/dmimpl.h	2022-11-28 17:22:18.000000000 +0100
+++ petsc-3.18.5+dfsg1/include/petsc/private/dmimpl.h	2023-02-27 23:11:05.000000000 +0100
@@ -250,7 +250,7 @@
   /* Hierarchy / Submeshes */
   DM                      coarseMesh;
   DM                      fineMesh;
-  DMCoarsenHookLink       coarsenhook; /* For transfering auxiliary problem data to coarser grids */
+  DMCoarsenHookLink       coarsenhook; /* For transferring auxiliary problem data to coarser grids */
   DMRefineHookLink        refinehook;
   DMSubDomainHookLink     subdomainhook;
   DMGlobalToLocalHookLink gtolhook;
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/include/petsc/private/dmnetworkimpl.h petsc-3.18.5+dfsg1/include/petsc/private/dmnetworkimpl.h
--- petsc-3.18.4+dfsg1/include/petsc/private/dmnetworkimpl.h	2022-11-28 17:22:18.000000000 +0100
+++ petsc-3.18.5+dfsg1/include/petsc/private/dmnetworkimpl.h	2023-02-27 23:11:05.000000000 +0100
@@ -134,7 +134,7 @@
   DMNetworkComponentHeader           header;
   DMNetworkComponentValue            cvalue;
   DMNetworkComponentGenericDataType *componentdataarray;   /* Array to hold the data */
-  PetscBool                          componentsetup;       /* Flag for the setup of the component. Migth differ from dmsetup information */
+  PetscBool                          componentsetup;       /* Flag for the setup of the component. Might differ from dmsetup information */
   PetscInt                           max_comps_registered; /* Max. number of components that can be registered */
 
   PetscBool userEdgeJacobian, userVertexJacobian; /* Global flag for using user's sub Jacobians */
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/include/petsc/private/dmpleximpl.h petsc-3.18.5+dfsg1/include/petsc/private/dmpleximpl.h
--- petsc-3.18.4+dfsg1/include/petsc/private/dmpleximpl.h	2022-12-28 20:00:16.000000000 +0100
+++ petsc-3.18.5+dfsg1/include/petsc/private/dmpleximpl.h	2023-02-27 23:11:05.000000000 +0100
@@ -126,7 +126,7 @@
 
   PetscSection coneSection;      /* Layout of cones (inedges for DAG) */
   PetscInt    *cones;            /* Cone for each point */
-  PetscInt    *coneOrientations; /* Orientation of each cone point, means cone traveral should start on point 'o', and if negative start on -(o+1) and go in reverse */
+  PetscInt    *coneOrientations; /* Orientation of each cone point, means cone traversal should start on point 'o', and if negative start on -(o+1) and go in reverse */
   PetscSection supportSection;   /* Layout of cones (inedges for DAG) */
   PetscInt    *supports;         /* Cone for each point */
   PetscInt    *facesTmp;         /* Work space for faces operation */
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/include/petsc/private/petscimpl.h petsc-3.18.5+dfsg1/include/petsc/private/petscimpl.h
--- petsc-3.18.4+dfsg1/include/petsc/private/petscimpl.h	2023-01-31 06:19:48.000000000 +0100
+++ petsc-3.18.5+dfsg1/include/petsc/private/petscimpl.h	2023-02-27 23:11:05.000000000 +0100
@@ -919,11 +919,11 @@
 
    This routine is logically collective because state equality comparison needs to be possible without communication.
 
-   `Mat` also has `MatGetNonzeroState()` and `MatSetNonzeroState()` for tracking changes to the nonzero structure.
+   `Mat` also has `MatGetNonzeroState()` for tracking changes to the nonzero structure.
 
    Level: developer
 
-.seealso: `PetscObjectStateGet()`, `MatSetNonzeroState()`, `PetscObject`
+.seealso: `PetscObjectStateGet()`, `PetscObject`
 
 M*/
 #define PetscObjectStateIncrease(obj) ((obj)->state++, 0)
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/include/petscdmstag.h petsc-3.18.5+dfsg1/include/petscdmstag.h
--- petsc-3.18.4+dfsg1/include/petscdmstag.h	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/include/petscdmstag.h	2023-02-27 23:11:05.000000000 +0100
@@ -7,17 +7,18 @@
 /* SUBMANSEC = DMStag */
 
 /*E
-  DMStagStencilLocation - enumerated type denoted a location relative to an element in a `DMSTAG` grid
+  DMStagStencilLocation - enumerated type denoting a location relative to an element in a `DMSTAG` grid
 
   The interpretation of these values is dimension-dependent.
 
   Level: beginner
 
-.seealso: `DMSTAG`, `DMStagStencil`, `DMStagGetLocationSlot()`
-E*/
+  Developer Note:
+   The order of the enum entries is significant, as it corresponds to the canonical numbering
+   of DOFs, and the fact that the numbering starts at 0 may also be used by the implementation.
 
-/* The order of these entries is significant, as it corresponds to the canonical numbering
-   of DOFs, and the fact the the numbering starts at 0 may also be used by the implementation */
+.seealso: [](chapter_stag), `DMSTAG`, `DMStagStencil`, `DMStagGetLocationSlot()`, `DMStagStencilType`
+E*/
 typedef enum {
   DMSTAG_NULL_LOCATION = 0,
   DMSTAG_BACK_DOWN_LEFT,
@@ -62,7 +63,8 @@
 
 Level: beginner
 
-.seealso: `DMSTAG`, `DMStagMatSetValuesStencil()`, `DMStagVecSetValuesStencil()`, `DMStagStencilLocation`, `DMStagSetStencilWidth()`, `DMStagSetStencilType()`, `DMStagVecGetValuesStencil()`
+.seealso: [](chapter_stag), `DMSTAG`, `DMStagMatSetValuesStencil()`, `DMStagVecSetValuesStencil()`, `DMStagStencilLocation`, `DMStagSetStencilWidth()`,
+          `DMStagSetStencilType()`, `DMStagVecGetValuesStencil()`, `DMStagStencilLocation`
 S*/
 typedef struct {
   DMStagStencilLocation loc;
@@ -74,7 +76,7 @@
 
   Level: beginner
 
-.seealso: `DMSTAG`, `DMStagCreate1d()`, `DMStagCreate2d()`, `DMStagCreate3d()`, `DMStagStencil`, `DMDAStencilType`
+.seealso: [](chapter_stag), `DMSTAG`, `DMStagCreate1d()`, `DMStagCreate2d()`, `DMStagCreate3d()`, `DMStagStencil`, `DMDAStencilType`, `DMStagStencilLocation`
 E*/
 
 typedef enum {
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/include/petscversion.h petsc-3.18.5+dfsg1/include/petscversion.h
--- petsc-3.18.4+dfsg1/include/petscversion.h	2023-01-31 07:04:21.000000000 +0100
+++ petsc-3.18.5+dfsg1/include/petscversion.h	2023-02-27 23:31:40.000000000 +0100
@@ -5,16 +5,16 @@
 #define PETSC_VERSION_RELEASE    1
 #define PETSC_VERSION_MAJOR      3
 #define PETSC_VERSION_MINOR      18
-#define PETSC_VERSION_SUBMINOR   4
+#define PETSC_VERSION_SUBMINOR   5
 #define PETSC_RELEASE_DATE       "Sep 30, 2022"
-#define PETSC_VERSION_DATE       "Jan 30, 2023"
+#define PETSC_VERSION_DATE       "Feb 27, 2023"
 
 #if !defined(PETSC_VERSION_GIT)
-#define PETSC_VERSION_GIT        "v3.18.4"
+#define PETSC_VERSION_GIT        "v3.18.5"
 #endif
 
 #if !defined(PETSC_VERSION_DATE_GIT)
-#define PETSC_VERSION_DATE_GIT   "2023-01-30 23:18:46 -0600"
+#define PETSC_VERSION_DATE_GIT   "2023-02-27 16:07:45 -0600"
 #endif
 
 #define PETSC_VERSION_EQ(MAJOR,MINOR,SUBMINOR) \
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/lib/petsc/bin/petsc_tas_analysis.py petsc-3.18.5+dfsg1/lib/petsc/bin/petsc_tas_analysis.py
--- petsc-3.18.4+dfsg1/lib/petsc/bin/petsc_tas_analysis.py	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/lib/petsc/bin/petsc_tas_analysis.py	2023-02-27 23:11:05.000000000 +0100
@@ -6,7 +6,7 @@
 import datetime as date
 import importlib
 
-# Check to ensure that the enviromental variable PETSC_DIR has been assigned.
+# Check to ensure that the environmental variable PETSC_DIR has been assigned.
 # MPLCONFIGDIR is needed for matplotlib
 try:
     if os.environ.get('PETSC_DIR') is None:
@@ -14,7 +14,7 @@
     os.environ['MPLCONFIGDIR'] = os.environ.get(
         'PETSC_DIR')+'/share/petsc/xml/'
 except NotADirectoryError:
-    sys.exit('The enviromental variable PETSC_DIR was not found.  \n'
+    sys.exit('The environmental variable PETSC_DIR was not found.\n'
              'Please add this variable with the base directory for PETSc or the base directory that MPLCONFIGDIR resides')
 
 import matplotlib.pyplot as plt
@@ -124,7 +124,7 @@
 def checkAlias(alias, path):
     """
     This function checks to see if the alias to be added/updated, entered on the command line, already exits
-    in configureTAS.py.  In configureTAS.py the alias is the key in the Dicionary filePath.  If that key exists
+    in configureTAS.py.  In configureTAS.py the alias is the key in the Dictionary filePath.  If that key exists
     The current key value pair is displayed and the user is prompted to confirm replacement.  The function
     returns True or False based on the user response.
 
@@ -184,7 +184,7 @@
                 print('Directory successfully created.\n')
                 return True
             except os.error:
-                print(f'\nAn error occured while attempting to create directory:\n{path}\n\n'
+                print(f'\nAn error occurred while attempting to create directory:\n{path}\n\n'
                       f'Please check to make sure that you have permission to create directories\n\n'
                       f'Do you with to continue with adding {path} to configureTAS.py?')
                 response = input('(y/n) to continue\n')
@@ -257,7 +257,7 @@
 
 def getFiles(cmdLineArgs, alias):
     """
-    This function first determins if it should look in the pathway specifed in filePath['defaultData']
+    This function first determines if it should look in the pathway specified in filePath['defaultData']
     in the configurationTAS.py file or a file name given as a command line argument using -f or -file.
     It then builds lists of file names and stores them in a dictionary, where they keys correspond to
     the type of file, ie, module(ASCII type) or CSV.
@@ -472,7 +472,7 @@
             if cmdLineArgs.fieldList is not None:
                 if len(cmdLineArgs.fieldList) != Nf:
                     print(f'\nYou specified {len(cmdLineArgs.fieldList)} from the command line, while the log file has {Nf} fields.\n\n'
-                          f'The fields you specifed were:\n{cmdLineArgs.fieldList}\n\n')
+                          f'The fields you specified were:\n{cmdLineArgs.fieldList}\n\n')
 
                     response = input('(y/n) to continue without field names\n')
 
@@ -742,7 +742,7 @@
     This function takes the supplied dictionary and plots the data from each file on the Mesh Convergence, Static Scaling, and
     Efficacy graphs.
 
-    :param file: Contains the data to be ploted on the graphs, assumes the format -- file[<file name>][<data type>]:<numpy array>
+    :param file: Contains the data to be plotted on the graphs, assumes the format -- file[<file name>][<data type>]:<numpy array>
     :type file: Dictionary
     :param graph_flops_scaling: Controls creating the scaling graph that uses flops/second.  The default is not to.  This option
                                     is specified on the command line.
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/lib/petsc/conf/test petsc-3.18.5+dfsg1/lib/petsc/conf/test
--- petsc-3.18.4+dfsg1/lib/petsc/conf/test	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/lib/petsc/conf/test	2023-02-27 23:11:05.000000000 +0100
@@ -14,7 +14,7 @@
 ifneq ($(KOKKOS_USE_CUDA_COMPILER),)
   # Kokkos requires nvcc to be in PATH and the C++ compiler to be given in an environmental variable
   # We prefer to use the Kokkos nvcc_wrapper compiler wrapper for compiling Kokkos files. The command is adapted from PETSC_COMPILE.kokkos.cxx
-  # in gmakefile.test, with additional "-o $*.o" to generate intended foo.o intead of foo.kokkos.o
+  # in gmakefile.test, with additional "-o $*.o" to generate intended foo.o instead of foo.kokkos.o
   PETSC_KOKKOSCOMPILE_SINGLE = PATH=`dirname $(CUDAC)`:$(PATH) NVCC_WRAPPER_DEFAULT_COMPILER="$(CUDA_CXX)" $(KOKKOS_BIN)/nvcc_wrapper --expt-extended-lambda -c $(CUDAC_FLAGS) ${PETSC_CCPPFLAGS} $(CUDACPPFLAGS) $(CUDA_CXXFLAGS) $(MPICXX_INCLUDES) -o $*.o
 
   LINK.kokkos.cxx = PATH=`dirname $(CUDAC)`:$(PATH) NVCC_WRAPPER_DEFAULT_COMPILER=$(CUDA_CXX) $(KOKKOS_BIN)/nvcc_wrapper --expt-extended-lambda $(CUDAC_FLAGS) $(MPICXX_INCLUDES) ${PETSC_CCPPFLAGS} $(CUDA_CXXFLAGS) $(CUDACPPFLAGS) $(CUDA_CXXLIBS) $(MPICXX_LIBS) $(LDFLAGS)
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/share/petsc/matlab/launch.m petsc-3.18.5+dfsg1/share/petsc/matlab/launch.m
--- petsc-3.18.4+dfsg1/share/petsc/matlab/launch.m	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/share/petsc/matlab/launch.m	2023-02-27 23:11:05.000000000 +0100
@@ -21,7 +21,7 @@
 
 %
 % to run parallel jobs make sure petscmpiexec is in your path
-% with the particular PETSC_ARCH environmental varable set
+% with the particular PETSC_ARCH environmental variable set
 %command = ['petscmpiexec -np ' int2str(np) ' ' program opt ' &'];
 command = [ program opt ' &'];
 fprintf(1,['Executing: ' command])
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/share/petsc/matlab/UFgetPetscMat.m petsc-3.18.5+dfsg1/share/petsc/matlab/UFgetPetscMat.m
--- petsc-3.18.4+dfsg1/share/petsc/matlab/UFgetPetscMat.m	2022-06-29 08:00:07.000000000 +0200
+++ petsc-3.18.5+dfsg1/share/petsc/matlab/UFgetPetscMat.m	2023-02-27 23:11:05.000000000 +0100
@@ -26,7 +26,7 @@
     disp (Problem) ;
     title (sprintf ('%s:%s', Problem.name, Problem.title')) ;
 
-    % convets to PETSc binary format and writes into ~mat/A_{id}
+    % converts to PETSc binary format and writes into ~mat/A_{id}
     %-----------------------------------------------------------
     fname = ['mat/A',num2str(i)];
     fprintf ('write matrix into petsc binary file %s ...\n',fname);
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/share/petsc/saws/js/drawDiagrams.js petsc-3.18.5+dfsg1/share/petsc/saws/js/drawDiagrams.js
--- petsc-3.18.4+dfsg1/share/petsc/saws/js/drawDiagrams.js	2022-06-29 08:00:07.000000000 +0200
+++ petsc-3.18.5+dfsg1/share/petsc/saws/js/drawDiagrams.js	2023-02-27 23:11:05.000000000 +0100
@@ -106,7 +106,7 @@
                 var top_shift = shift + 141;
                 ret += "<line x1=\""+(x+shift)+"\" y1=\""+(y+141+global_downshift)+"\" x2=\""+(x+top_shift)+"\" y2=\""+(y+global_downshift)+"\" style='stroke:black;stroke-width:1'></line>";
             }
-            for(var j=1; j<dim; j++) {//draw horizonal lines
+            for(var j=1; j<dim; j++) {//draw horizontal lines
                 var inc = 141/dim;//parallelogram is 141 tall
                 var horiz_shift = (141/dim) * j;
                 var horiz_shift_end = horiz_shift + 324;
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/dm/dt/dualspace/interface/dualspace.c petsc-3.18.5+dfsg1/src/dm/dt/dualspace/interface/dualspace.c
--- petsc-3.18.4+dfsg1/src/dm/dt/dualspace/interface/dualspace.c	2022-11-28 17:22:18.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/dm/dt/dualspace/interface/dualspace.c	2023-02-27 23:11:05.000000000 +0100
@@ -2070,7 +2070,7 @@
   Notes:
   Functions transform in a complementary way (pushforward) to functionals, so that the scalar product is invariant. The type of transform is dependent on the associated k-simplex from the DeRahm complex.
 
-  This only handles tranformations when the embedding dimension of the geometry in fegeom is the same as the reference dimension.
+  This only handles transformations when the embedding dimension of the geometry in fegeom is the same as the reference dimension.
 
 .seealso: `PetscDualSpace`, `PetscDualSpacePushforward()`, `PetscDualSpaceTransform()`, `PetscDualSpaceGetDeRahm()`
 @*/
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/dm/dt/fv/interface/fv.c petsc-3.18.5+dfsg1/src/dm/dt/fv/interface/fv.c
--- petsc-3.18.4+dfsg1/src/dm/dt/fv/interface/fv.c	2022-11-28 17:22:18.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/dm/dt/fv/interface/fv.c	2023-02-27 23:11:05.000000000 +0100
@@ -1688,7 +1688,7 @@
 
   Input Parameters:
 + fvm          - The `PetscFV` object for the field being integrated
-. prob         - The `PetscDS` specifing the discretizations and continuum functions
+. prob         - The `PetscDS` specifying the discretizations and continuum functions
 . field        - The field being integrated
 . Nf           - The number of faces in the chunk
 . fgeom        - The face geometry for each face in the chunk
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/dm/dt/interface/dtprob.c petsc-3.18.5+dfsg1/src/dm/dt/interface/dtprob.c
--- petsc-3.18.4+dfsg1/src/dm/dt/interface/dtprob.c	2022-11-28 17:22:18.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/dm/dt/interface/dtprob.c	2023-02-27 23:11:05.000000000 +0100
@@ -494,7 +494,7 @@
 }
 
 /*@C
-  PetscProbCreateFromOptions - Return the probability distribution specified by the argumetns and options
+  PetscProbCreateFromOptions - Return the probability distribution specified by the arguments and options
 
   Not collective
 
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/dm/dt/interface/ftn-auto/makefile petsc-3.18.5+dfsg1/src/dm/dt/interface/ftn-auto/makefile
--- petsc-3.18.4+dfsg1/src/dm/dt/interface/ftn-auto/makefile	2023-01-31 07:00:47.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/dm/dt/interface/ftn-auto/makefile	2023-02-27 23:28:31.000000000 +0100
@@ -4,7 +4,7 @@
 
 CFLAGS   =
 FFLAGS   =
-SOURCEC  = dtf.c dtaltvf.c dtprobf.c dtweakformf.c dtdsf.c
+SOURCEC  = dtf.c dtaltvf.c dtweakformf.c dtdsf.c dtprobf.c
 SOURCEF  =
 SOURCEH  = 
 DIRS     =
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/dm/f90-mod/ftn-auto-interfaces/petscdmda.h90 petsc-3.18.5+dfsg1/src/dm/f90-mod/ftn-auto-interfaces/petscdmda.h90
--- petsc-3.18.4+dfsg1/src/dm/f90-mod/ftn-auto-interfaces/petscdmda.h90	2023-01-31 07:00:50.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/dm/f90-mod/ftn-auto-interfaces/petscdmda.h90	2023-02-27 23:28:35.000000000 +0100
@@ -173,20 +173,6 @@
        PetscReal c ! PetscReal
        PetscErrorCode z
        end subroutine DMDASetGLLCoordinates
-      subroutine DMDAGetReducedDMDA(a,b,c,z)
-       import tDM
-       DM a ! DM
-       PetscInt b ! PetscInt
-       DM c ! DM
-       PetscErrorCode z
-       end subroutine DMDAGetReducedDMDA
-      subroutine DMDACreateCompatibleDMDA(a,b,c,z)
-       import tDM
-       DM a ! DM
-       PetscInt b ! PetscInt
-       DM c ! DM
-       PetscErrorCode z
-       end subroutine DMDACreateCompatibleDMDA
       subroutine DMDACreate(a,b,z)
        import tDM
        MPI_Comm a ! MPI_Comm
@@ -194,7 +180,7 @@
        PetscErrorCode z
        end subroutine DMDACreate
       subroutine DMDACreatePatchIS(a,b,c,d,e,z)
-       import tIS,tDM
+       import tDM,tIS
        DM a ! DM
        MatStencil b ! MatStencil
        MatStencil c ! MatStencil
@@ -208,13 +194,6 @@
        Vec b ! Vec
        PetscErrorCode z
        end subroutine DMDACreateNaturalVector
-      subroutine DMDAConvertToCell(a,b,c,z)
-       import tDM
-       DM a ! DM
-       MatStencil b ! MatStencil
-       PetscInt c ! PetscInt
-       PetscErrorCode z
-       end subroutine DMDAConvertToCell
       subroutine DMDAGetElementsCorners(a,b,c,d,z)
        import tDM
        DM a ! DM
@@ -244,49 +223,17 @@
        PetscErrorCode z
        end subroutine DMDAGetElementType
       subroutine DMDAGetSubdomainCornersIS(a,b,z)
-       import tIS,tDM
+       import tDM,tIS
        DM a ! DM
        IS b ! IS
        PetscErrorCode z
        end subroutine DMDAGetSubdomainCornersIS
       subroutine DMDARestoreSubdomainCornersIS(a,b,z)
-       import tIS,tDM
+       import tDM,tIS
        DM a ! DM
        IS b ! IS
        PetscErrorCode z
        end subroutine DMDARestoreSubdomainCornersIS
-      subroutine DMDAGlobalToNaturalBegin(a,b,c,d,z)
-       import tDM,tVec
-       DM a ! DM
-       Vec b ! Vec
-       InsertMode c ! InsertMode
-       Vec d ! Vec
-       PetscErrorCode z
-       end subroutine DMDAGlobalToNaturalBegin
-      subroutine DMDAGlobalToNaturalEnd(a,b,c,d,z)
-       import tDM,tVec
-       DM a ! DM
-       Vec b ! Vec
-       InsertMode c ! InsertMode
-       Vec d ! Vec
-       PetscErrorCode z
-       end subroutine DMDAGlobalToNaturalEnd
-      subroutine DMDANaturalToGlobalBegin(a,b,c,d,z)
-       import tDM,tVec
-       DM a ! DM
-       Vec b ! Vec
-       InsertMode c ! InsertMode
-       Vec d ! Vec
-       PetscErrorCode z
-       end subroutine DMDANaturalToGlobalBegin
-      subroutine DMDANaturalToGlobalEnd(a,b,c,d,z)
-       import tDM,tVec
-       DM a ! DM
-       Vec b ! Vec
-       InsertMode c ! InsertMode
-       Vec d ! Vec
-       PetscErrorCode z
-       end subroutine DMDANaturalToGlobalEnd
       subroutine DMDAGlobalToNaturalAllCreate(a,b,z)
        import tDM,tVecScatter
        DM a ! DM
@@ -305,20 +252,6 @@
        AO b ! AO
        PetscErrorCode z
        end subroutine DMDAGetAO
-      subroutine DMCreateAggregates(a,b,c,z)
-       import tMat,tDM
-       DM a ! DM
-       DM b ! DM
-       Mat c ! Mat
-       PetscErrorCode z
-       end subroutine DMCreateAggregates
-      subroutine DMDACreateAggregates(a,b,c,z)
-       import tMat,tDM
-       DM a ! DM
-       DM b ! DM
-       Mat c ! Mat
-       PetscErrorCode z
-       end subroutine DMDACreateAggregates
       subroutine DMDAGetNumCells(a,b,c,d,e,z)
        import tDM
        DM a ! DM
@@ -364,7 +297,7 @@
        PetscErrorCode z
        end subroutine DMDAGetLogicalCoordinate
       subroutine DMDAGetRay(a,b,c,d,e,z)
-       import tVecScatter,tDM,tVec
+       import tDM,tVec,tVecScatter
        DM a ! DM
        DMDirection b ! DMDirection
        PetscInt c ! PetscInt
@@ -397,3 +330,70 @@
        PetscReal g ! PetscReal
        PetscErrorCode z
        end subroutine DMDASetUniformCoordinates
+      subroutine DMDAGetReducedDMDA(a,b,c,z)
+       import tDM
+       DM a ! DM
+       PetscInt b ! PetscInt
+       DM c ! DM
+       PetscErrorCode z
+       end subroutine DMDAGetReducedDMDA
+      subroutine DMDACreateCompatibleDMDA(a,b,c,z)
+       import tDM
+       DM a ! DM
+       PetscInt b ! PetscInt
+       DM c ! DM
+       PetscErrorCode z
+       end subroutine DMDACreateCompatibleDMDA
+      subroutine DMDAConvertToCell(a,b,c,z)
+       import tDM
+       DM a ! DM
+       MatStencil b ! MatStencil
+       PetscInt c ! PetscInt
+       PetscErrorCode z
+       end subroutine DMDAConvertToCell
+      subroutine DMDAGlobalToNaturalBegin(a,b,c,d,z)
+       import tDM,tVec
+       DM a ! DM
+       Vec b ! Vec
+       InsertMode c ! InsertMode
+       Vec d ! Vec
+       PetscErrorCode z
+       end subroutine DMDAGlobalToNaturalBegin
+      subroutine DMDAGlobalToNaturalEnd(a,b,c,d,z)
+       import tDM,tVec
+       DM a ! DM
+       Vec b ! Vec
+       InsertMode c ! InsertMode
+       Vec d ! Vec
+       PetscErrorCode z
+       end subroutine DMDAGlobalToNaturalEnd
+      subroutine DMDANaturalToGlobalBegin(a,b,c,d,z)
+       import tDM,tVec
+       DM a ! DM
+       Vec b ! Vec
+       InsertMode c ! InsertMode
+       Vec d ! Vec
+       PetscErrorCode z
+       end subroutine DMDANaturalToGlobalBegin
+      subroutine DMDANaturalToGlobalEnd(a,b,c,d,z)
+       import tDM,tVec
+       DM a ! DM
+       Vec b ! Vec
+       InsertMode c ! InsertMode
+       Vec d ! Vec
+       PetscErrorCode z
+       end subroutine DMDANaturalToGlobalEnd
+      subroutine DMCreateAggregates(a,b,c,z)
+       import tDM,tMat
+       DM a ! DM
+       DM b ! DM
+       Mat c ! Mat
+       PetscErrorCode z
+       end subroutine DMCreateAggregates
+      subroutine DMDACreateAggregates(a,b,c,z)
+       import tDM,tMat
+       DM a ! DM
+       DM b ! DM
+       Mat c ! Mat
+       PetscErrorCode z
+       end subroutine DMDACreateAggregates
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/dm/f90-mod/ftn-auto-interfaces/petscdm.h90 petsc-3.18.5+dfsg1/src/dm/f90-mod/ftn-auto-interfaces/petscdm.h90
--- petsc-3.18.4+dfsg1/src/dm/f90-mod/ftn-auto-interfaces/petscdm.h90	2023-01-31 07:00:50.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/dm/f90-mod/ftn-auto-interfaces/petscdm.h90	2023-02-27 23:28:35.000000000 +0100
@@ -130,7 +130,7 @@
        PetscErrorCode z
        end subroutine DMShellSetDestroyContext
       subroutine DMShellSetMatrix(a,b,z)
-       import tMat,tDM
+       import tDM,tMat
        DM a ! DM
        Mat b ! Mat
        PetscErrorCode z
@@ -236,6 +236,174 @@
        Vec b ! Vec
        PetscErrorCode z
        end subroutine DMRestoreGlobalVector
+      subroutine DMGetCoordinateDM(a,b,z)
+       import tDM
+       DM a ! DM
+       DM b ! DM
+       PetscErrorCode z
+       end subroutine DMGetCoordinateDM
+      subroutine DMSetCoordinateDM(a,b,z)
+       import tDM
+       DM a ! DM
+       DM b ! DM
+       PetscErrorCode z
+       end subroutine DMSetCoordinateDM
+      subroutine DMGetCellCoordinateDM(a,b,z)
+       import tDM
+       DM a ! DM
+       DM b ! DM
+       PetscErrorCode z
+       end subroutine DMGetCellCoordinateDM
+      subroutine DMSetCellCoordinateDM(a,b,z)
+       import tDM
+       DM a ! DM
+       DM b ! DM
+       PetscErrorCode z
+       end subroutine DMSetCellCoordinateDM
+      subroutine DMGetCoordinateDim(a,b,z)
+       import tDM
+       DM a ! DM
+       PetscInt b ! PetscInt
+       PetscErrorCode z
+       end subroutine DMGetCoordinateDim
+      subroutine DMSetCoordinateDim(a,b,z)
+       import tDM
+       DM a ! DM
+       PetscInt b ! PetscInt
+       PetscErrorCode z
+       end subroutine DMSetCoordinateDim
+      subroutine DMGetCoordinateSection(a,b,z)
+       import tDM,tPetscSection
+       DM a ! DM
+       PetscSection b ! PetscSection
+       PetscErrorCode z
+       end subroutine DMGetCoordinateSection
+      subroutine DMSetCoordinateSection(a,b,c,z)
+       import tDM,tPetscSection
+       DM a ! DM
+       PetscInt b ! PetscInt
+       PetscSection c ! PetscSection
+       PetscErrorCode z
+       end subroutine DMSetCoordinateSection
+      subroutine DMGetCellCoordinateSection(a,b,z)
+       import tDM,tPetscSection
+       DM a ! DM
+       PetscSection b ! PetscSection
+       PetscErrorCode z
+       end subroutine DMGetCellCoordinateSection
+      subroutine DMSetCellCoordinateSection(a,b,c,z)
+       import tDM,tPetscSection
+       DM a ! DM
+       PetscInt b ! PetscInt
+       PetscSection c ! PetscSection
+       PetscErrorCode z
+       end subroutine DMSetCellCoordinateSection
+      subroutine DMGetCoordinates(a,b,z)
+       import tDM,tVec
+       DM a ! DM
+       Vec b ! Vec
+       PetscErrorCode z
+       end subroutine DMGetCoordinates
+      subroutine DMSetCoordinates(a,b,z)
+       import tDM,tVec
+       DM a ! DM
+       Vec b ! Vec
+       PetscErrorCode z
+       end subroutine DMSetCoordinates
+      subroutine DMGetCellCoordinates(a,b,z)
+       import tDM,tVec
+       DM a ! DM
+       Vec b ! Vec
+       PetscErrorCode z
+       end subroutine DMGetCellCoordinates
+      subroutine DMSetCellCoordinates(a,b,z)
+       import tDM,tVec
+       DM a ! DM
+       Vec b ! Vec
+       PetscErrorCode z
+       end subroutine DMSetCellCoordinates
+      subroutine DMGetCoordinatesLocalSetUp(a,z)
+       import tDM
+       DM a ! DM
+       PetscErrorCode z
+       end subroutine DMGetCoordinatesLocalSetUp
+      subroutine DMGetCoordinatesLocal(a,b,z)
+       import tDM,tVec
+       DM a ! DM
+       Vec b ! Vec
+       PetscErrorCode z
+       end subroutine DMGetCoordinatesLocal
+      subroutine DMGetCoordinatesLocalNoncollective(a,b,z)
+       import tDM,tVec
+       DM a ! DM
+       Vec b ! Vec
+       PetscErrorCode z
+       end subroutine DMGetCoordinatesLocalNoncollective
+      subroutine DMGetCoordinatesLocalTuple(a,b,c,d,z)
+       import tDM,tPetscSection,tIS,tVec
+       DM a ! DM
+       IS b ! IS
+       PetscSection c ! PetscSection
+       Vec d ! Vec
+       PetscErrorCode z
+       end subroutine DMGetCoordinatesLocalTuple
+      subroutine DMSetCoordinatesLocal(a,b,z)
+       import tDM,tVec
+       DM a ! DM
+       Vec b ! Vec
+       PetscErrorCode z
+       end subroutine DMSetCoordinatesLocal
+      subroutine DMGetCellCoordinatesLocalSetUp(a,z)
+       import tDM
+       DM a ! DM
+       PetscErrorCode z
+       end subroutine DMGetCellCoordinatesLocalSetUp
+      subroutine DMGetCellCoordinatesLocal(a,b,z)
+       import tDM,tVec
+       DM a ! DM
+       Vec b ! Vec
+       PetscErrorCode z
+       end subroutine DMGetCellCoordinatesLocal
+      subroutine DMGetCellCoordinatesLocalNoncollective(a,b,z)
+       import tDM,tVec
+       DM a ! DM
+       Vec b ! Vec
+       PetscErrorCode z
+       end subroutine DMGetCellCoordinatesLocalNoncollective
+      subroutine DMSetCellCoordinatesLocal(a,b,z)
+       import tDM,tVec
+       DM a ! DM
+       Vec b ! Vec
+       PetscErrorCode z
+       end subroutine DMSetCellCoordinatesLocal
+      subroutine DMGetLocalBoundingBox(a,b,c,z)
+       import tDM
+       DM a ! DM
+       PetscReal b (*) ! PetscReal
+       PetscReal c (*) ! PetscReal
+       PetscErrorCode z
+       end subroutine DMGetLocalBoundingBox
+      subroutine DMGetBoundingBox(a,b,c,z)
+       import tDM
+       DM a ! DM
+       PetscReal b (*) ! PetscReal
+       PetscReal c (*) ! PetscReal
+       PetscErrorCode z
+       end subroutine DMGetBoundingBox
+      subroutine DMProjectCoordinates(a,b,z)
+       import tDM
+       DM a ! DM
+       PetscFE b ! PetscFE
+       PetscErrorCode z
+       end subroutine DMProjectCoordinates
+      subroutine DMLocatePoints(a,b,c,d,z)
+       import tPetscSF,tDM,tVec
+       DM a ! DM
+       Vec b ! Vec
+       DMPointLocationType c ! DMPointLocationType
+       PetscSF d ! PetscSF
+       PetscErrorCode z
+       end subroutine DMLocatePoints
       subroutine DMCreate(a,b,z)
        import tDM
        MPI_Comm a ! MPI_Comm
@@ -261,13 +429,13 @@
        PetscErrorCode z
        end subroutine VecSetDM
       subroutine MatGetDM(a,b,z)
-       import tMat,tDM
+       import tDM,tMat
        Mat a ! Mat
        DM b ! DM
        PetscErrorCode z
        end subroutine MatGetDM
       subroutine MatSetDM(a,b,z)
-       import tMat,tDM
+       import tDM,tMat
        Mat a ! Mat
        DM b ! DM
        PetscErrorCode z
@@ -307,7 +475,7 @@
        PetscErrorCode z
        end subroutine DMGetBlockSize
       subroutine DMCreateInterpolationScale(a,b,c,d,z)
-       import tMat,tDM,tVec
+       import tDM,tMat,tVec
        DM a ! DM
        DM b ! DM
        Mat c ! Mat
@@ -315,21 +483,21 @@
        PetscErrorCode z
        end subroutine DMCreateInterpolationScale
       subroutine DMCreateRestriction(a,b,c,z)
-       import tMat,tDM
+       import tDM,tMat
        DM a ! DM
        DM b ! DM
        Mat c ! Mat
        PetscErrorCode z
        end subroutine DMCreateRestriction
       subroutine DMCreateInjection(a,b,c,z)
-       import tMat,tDM
+       import tDM,tMat
        DM a ! DM
        DM b ! DM
        Mat c ! Mat
        PetscErrorCode z
        end subroutine DMCreateInjection
       subroutine DMCreateMassMatrix(a,b,c,z)
-       import tMat,tDM
+       import tDM,tMat
        DM a ! DM
        DM b ! DM
        Mat c ! Mat
@@ -342,14 +510,14 @@
        PetscErrorCode z
        end subroutine DMCreateMassMatrixLumped
       subroutine DMCreateColoring(a,b,c,z)
-       import tISColoring,tDM
+       import tDM,tISColoring
        DM a ! DM
        ISColoringType b ! ISColoringType
        ISColoring c ! ISColoring
        PetscErrorCode z
        end subroutine DMCreateColoring
       subroutine DMCreateMatrix(a,b,z)
-       import tMat,tDM
+       import tDM,tMat
        DM a ! DM
        Mat b ! Mat
        PetscErrorCode z
@@ -380,14 +548,14 @@
        PetscErrorCode z
        end subroutine DMRefine
       subroutine DMInterpolate(a,b,c,z)
-       import tMat,tDM
+       import tDM,tMat
        DM a ! DM
        Mat b ! Mat
        DM c ! DM
        PetscErrorCode z
        end subroutine DMInterpolate
       subroutine DMInterpolateSolution(a,b,c,d,e,z)
-       import tMat,tDM,tVec
+       import tDM,tMat,tVec
        DM a ! DM
        DM b ! DM
        Mat c ! Mat
@@ -492,7 +660,7 @@
        PetscErrorCode z
        end subroutine DMCoarsen
       subroutine DMRestrict(a,b,c,d,e,z)
-       import tMat,tDM,tVec
+       import tDM,tMat,tVec
        DM a ! DM
        Mat b ! Mat
        Vec c ! Vec
@@ -569,7 +737,7 @@
        PetscErrorCode z
        end subroutine DMSetLocalSection
       subroutine DMGetDefaultConstraints(a,b,c,d,z)
-       import tMat,tDM,tPetscSection,tVec
+       import tDM,tMat,tVec,tPetscSection
        DM a ! DM
        PetscSection b ! PetscSection
        Mat c ! Mat
@@ -577,7 +745,7 @@
        PetscErrorCode z
        end subroutine DMGetDefaultConstraints
       subroutine DMSetDefaultConstraints(a,b,c,d,z)
-       import tMat,tDM,tPetscSection,tVec
+       import tDM,tMat,tVec,tPetscSection
        DM a ! DM
        PetscSection b ! PetscSection
        Mat c ! Mat
@@ -650,7 +818,7 @@
        PetscErrorCode z
        end subroutine DMSetNumFields
       subroutine DMGetField(a,b,c,d,z)
-       import tDM,tDMLabel
+       import tDMLabel,tDM
        DM a ! DM
        PetscInt b ! PetscInt
        DMLabel c ! DMLabel
@@ -658,7 +826,7 @@
        PetscErrorCode z
        end subroutine DMGetField
       subroutine DMSetField(a,b,c,d,z)
-       import tDM,tDMLabel
+       import tDMLabel,tDM
        DM a ! DM
        PetscInt b ! PetscInt
        DMLabel c ! DMLabel
@@ -666,7 +834,7 @@
        PetscErrorCode z
        end subroutine DMSetField
       subroutine DMAddField(a,b,c,z)
-       import tDM,tDMLabel
+       import tDMLabel,tDM
        DM a ! DM
        DMLabel b ! DMLabel
        PetscObject c ! PetscObject
@@ -747,7 +915,7 @@
        PetscErrorCode z
        end subroutine DMGetCellDS
       subroutine DMGetRegionDS(a,b,c,d,z)
-       import tIS,tDM,tDMLabel
+       import tDMLabel,tDM,tIS
        DM a ! DM
        DMLabel b ! DMLabel
        IS c ! IS
@@ -755,7 +923,7 @@
        PetscErrorCode z
        end subroutine DMGetRegionDS
       subroutine DMSetRegionDS(a,b,c,d,z)
-       import tIS,tDM,tDMLabel
+       import tDMLabel,tDM,tIS
        DM a ! DM
        DMLabel b ! DMLabel
        IS c ! IS
@@ -763,7 +931,7 @@
        PetscErrorCode z
        end subroutine DMSetRegionDS
       subroutine DMGetRegionNumDS(a,b,c,d,e,z)
-       import tIS,tDM,tDMLabel
+       import tDMLabel,tDM,tIS
        DM a ! DM
        PetscInt b ! PetscInt
        DMLabel c ! DMLabel
@@ -772,7 +940,7 @@
        PetscErrorCode z
        end subroutine DMGetRegionNumDS
       subroutine DMSetRegionNumDS(a,b,c,d,e,z)
-       import tIS,tDM,tDMLabel
+       import tDMLabel,tDM,tIS
        DM a ! DM
        PetscInt b ! PetscInt
        DMLabel c ! DMLabel
@@ -871,7 +1039,7 @@
        PetscErrorCode z
        end subroutine DMGetNumLabels
       subroutine DMRemoveLabelBySelf(a,b,c,z)
-       import tDM,tDMLabel
+       import tDMLabel,tDM
        DM a ! DM
        DMLabel b ! DMLabel
        PetscBool c ! PetscBool
@@ -972,174 +1140,6 @@
        DM b ! DM
        PetscErrorCode z
        end subroutine DMCopyAuxiliaryVec
-      subroutine DMGetCoordinateDM(a,b,z)
-       import tDM
-       DM a ! DM
-       DM b ! DM
-       PetscErrorCode z
-       end subroutine DMGetCoordinateDM
-      subroutine DMSetCoordinateDM(a,b,z)
-       import tDM
-       DM a ! DM
-       DM b ! DM
-       PetscErrorCode z
-       end subroutine DMSetCoordinateDM
-      subroutine DMGetCellCoordinateDM(a,b,z)
-       import tDM
-       DM a ! DM
-       DM b ! DM
-       PetscErrorCode z
-       end subroutine DMGetCellCoordinateDM
-      subroutine DMSetCellCoordinateDM(a,b,z)
-       import tDM
-       DM a ! DM
-       DM b ! DM
-       PetscErrorCode z
-       end subroutine DMSetCellCoordinateDM
-      subroutine DMGetCoordinateDim(a,b,z)
-       import tDM
-       DM a ! DM
-       PetscInt b ! PetscInt
-       PetscErrorCode z
-       end subroutine DMGetCoordinateDim
-      subroutine DMSetCoordinateDim(a,b,z)
-       import tDM
-       DM a ! DM
-       PetscInt b ! PetscInt
-       PetscErrorCode z
-       end subroutine DMSetCoordinateDim
-      subroutine DMGetCoordinateSection(a,b,z)
-       import tDM,tPetscSection
-       DM a ! DM
-       PetscSection b ! PetscSection
-       PetscErrorCode z
-       end subroutine DMGetCoordinateSection
-      subroutine DMSetCoordinateSection(a,b,c,z)
-       import tDM,tPetscSection
-       DM a ! DM
-       PetscInt b ! PetscInt
-       PetscSection c ! PetscSection
-       PetscErrorCode z
-       end subroutine DMSetCoordinateSection
-      subroutine DMGetCellCoordinateSection(a,b,z)
-       import tDM,tPetscSection
-       DM a ! DM
-       PetscSection b ! PetscSection
-       PetscErrorCode z
-       end subroutine DMGetCellCoordinateSection
-      subroutine DMSetCellCoordinateSection(a,b,c,z)
-       import tDM,tPetscSection
-       DM a ! DM
-       PetscInt b ! PetscInt
-       PetscSection c ! PetscSection
-       PetscErrorCode z
-       end subroutine DMSetCellCoordinateSection
-      subroutine DMGetCoordinates(a,b,z)
-       import tDM,tVec
-       DM a ! DM
-       Vec b ! Vec
-       PetscErrorCode z
-       end subroutine DMGetCoordinates
-      subroutine DMSetCoordinates(a,b,z)
-       import tDM,tVec
-       DM a ! DM
-       Vec b ! Vec
-       PetscErrorCode z
-       end subroutine DMSetCoordinates
-      subroutine DMGetCellCoordinates(a,b,z)
-       import tDM,tVec
-       DM a ! DM
-       Vec b ! Vec
-       PetscErrorCode z
-       end subroutine DMGetCellCoordinates
-      subroutine DMSetCellCoordinates(a,b,z)
-       import tDM,tVec
-       DM a ! DM
-       Vec b ! Vec
-       PetscErrorCode z
-       end subroutine DMSetCellCoordinates
-      subroutine DMGetCoordinatesLocalSetUp(a,z)
-       import tDM
-       DM a ! DM
-       PetscErrorCode z
-       end subroutine DMGetCoordinatesLocalSetUp
-      subroutine DMGetCoordinatesLocal(a,b,z)
-       import tDM,tVec
-       DM a ! DM
-       Vec b ! Vec
-       PetscErrorCode z
-       end subroutine DMGetCoordinatesLocal
-      subroutine DMGetCoordinatesLocalNoncollective(a,b,z)
-       import tDM,tVec
-       DM a ! DM
-       Vec b ! Vec
-       PetscErrorCode z
-       end subroutine DMGetCoordinatesLocalNoncollective
-      subroutine DMGetCoordinatesLocalTuple(a,b,c,d,z)
-       import tIS,tDM,tPetscSection,tVec
-       DM a ! DM
-       IS b ! IS
-       PetscSection c ! PetscSection
-       Vec d ! Vec
-       PetscErrorCode z
-       end subroutine DMGetCoordinatesLocalTuple
-      subroutine DMSetCoordinatesLocal(a,b,z)
-       import tDM,tVec
-       DM a ! DM
-       Vec b ! Vec
-       PetscErrorCode z
-       end subroutine DMSetCoordinatesLocal
-      subroutine DMGetCellCoordinatesLocalSetUp(a,z)
-       import tDM
-       DM a ! DM
-       PetscErrorCode z
-       end subroutine DMGetCellCoordinatesLocalSetUp
-      subroutine DMGetCellCoordinatesLocal(a,b,z)
-       import tDM,tVec
-       DM a ! DM
-       Vec b ! Vec
-       PetscErrorCode z
-       end subroutine DMGetCellCoordinatesLocal
-      subroutine DMGetCellCoordinatesLocalNoncollective(a,b,z)
-       import tDM,tVec
-       DM a ! DM
-       Vec b ! Vec
-       PetscErrorCode z
-       end subroutine DMGetCellCoordinatesLocalNoncollective
-      subroutine DMSetCellCoordinatesLocal(a,b,z)
-       import tDM,tVec
-       DM a ! DM
-       Vec b ! Vec
-       PetscErrorCode z
-       end subroutine DMSetCellCoordinatesLocal
-      subroutine DMGetLocalBoundingBox(a,b,c,z)
-       import tDM
-       DM a ! DM
-       PetscReal b (*) ! PetscReal
-       PetscReal c (*) ! PetscReal
-       PetscErrorCode z
-       end subroutine DMGetLocalBoundingBox
-      subroutine DMGetBoundingBox(a,b,c,z)
-       import tDM
-       DM a ! DM
-       PetscReal b (*) ! PetscReal
-       PetscReal c (*) ! PetscReal
-       PetscErrorCode z
-       end subroutine DMGetBoundingBox
-      subroutine DMProjectCoordinates(a,b,z)
-       import tDM
-       DM a ! DM
-       PetscFE b ! PetscFE
-       PetscErrorCode z
-       end subroutine DMProjectCoordinates
-      subroutine DMLocatePoints(a,b,c,d,z)
-       import tPetscSF,tDM,tVec
-       DM a ! DM
-       Vec b ! Vec
-       DMPointLocationType c ! DMPointLocationType
-       PetscSF d ! PetscSF
-       PetscErrorCode z
-       end subroutine DMLocatePoints
       subroutine PetscPartitionerView(a,b,z)
        import tPetscViewer
        PetscPartitioner a ! PetscPartitioner
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/dm/f90-mod/ftn-auto-interfaces/petscdmlabel.h90 petsc-3.18.5+dfsg1/src/dm/f90-mod/ftn-auto-interfaces/petscdmlabel.h90
--- petsc-3.18.4+dfsg1/src/dm/f90-mod/ftn-auto-interfaces/petscdmlabel.h90	2023-01-31 07:00:50.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/dm/f90-mod/ftn-auto-interfaces/petscdmlabel.h90	2023-02-27 23:28:35.000000000 +0100
@@ -12,7 +12,7 @@
        PetscErrorCode z
        end subroutine DMLabelAddStrata
       subroutine DMLabelAddStrataIS(a,b,z)
-       import tIS,tDMLabel
+       import tDMLabel,tIS
        DMLabel a ! DMLabel
        IS b ! IS
        PetscErrorCode z
@@ -113,7 +113,7 @@
        PetscErrorCode z
        end subroutine DMLabelClearValue
       subroutine DMLabelInsertIS(a,b,c,z)
-       import tIS,tDMLabel
+       import tDMLabel,tIS
        DMLabel a ! DMLabel
        IS b ! IS
        PetscInt c ! PetscInt
@@ -126,13 +126,13 @@
        PetscErrorCode z
        end subroutine DMLabelGetNumValues
       subroutine DMLabelGetValueIS(a,b,z)
-       import tIS,tDMLabel
+       import tDMLabel,tIS
        DMLabel a ! DMLabel
        IS b ! IS
        PetscErrorCode z
        end subroutine DMLabelGetValueIS
       subroutine DMLabelGetNonEmptyStratumValuesIS(a,b,z)
-       import tIS,tDMLabel
+       import tDMLabel,tIS
        DMLabel a ! DMLabel
        IS b ! IS
        PetscErrorCode z
@@ -167,14 +167,14 @@
        PetscErrorCode z
        end subroutine DMLabelGetStratumBounds
       subroutine DMLabelGetStratumIS(a,b,c,z)
-       import tIS,tDMLabel
+       import tDMLabel,tIS
        DMLabel a ! DMLabel
        PetscInt b ! PetscInt
        IS c ! IS
        PetscErrorCode z
        end subroutine DMLabelGetStratumIS
       subroutine DMLabelSetStratumIS(a,b,c,z)
-       import tIS,tDMLabel
+       import tDMLabel,tIS
        DMLabel a ! DMLabel
        PetscInt b ! PetscInt
        IS c ! IS
@@ -210,47 +210,47 @@
        PetscErrorCode z
        end subroutine DMLabelFilter
       subroutine DMLabelPermute(a,b,c,z)
-       import tIS,tDMLabel
+       import tDMLabel,tIS
        DMLabel a ! DMLabel
        IS b ! IS
        DMLabel c ! DMLabel
        PetscErrorCode z
        end subroutine DMLabelPermute
       subroutine DMLabelDistribute(a,b,c,z)
-       import tPetscSF,tDMLabel
+       import tDMLabel,tPetscSF
        DMLabel a ! DMLabel
        PetscSF b ! PetscSF
        DMLabel c ! DMLabel
        PetscErrorCode z
        end subroutine DMLabelDistribute
       subroutine DMLabelGather(a,b,c,z)
-       import tPetscSF,tDMLabel
+       import tDMLabel,tPetscSF
        DMLabel a ! DMLabel
        PetscSF b ! PetscSF
        DMLabel c ! DMLabel
        PetscErrorCode z
        end subroutine DMLabelGather
       subroutine DMLabelPropagateBegin(a,b,z)
-       import tPetscSF,tDMLabel
+       import tDMLabel,tPetscSF
        DMLabel a ! DMLabel
        PetscSF b ! PetscSF
        PetscErrorCode z
        end subroutine DMLabelPropagateBegin
       subroutine DMLabelPropagateEnd(a,b,z)
-       import tPetscSF,tDMLabel
+       import tDMLabel,tPetscSF
        DMLabel a ! DMLabel
        PetscSF b ! PetscSF
        PetscErrorCode z
        end subroutine DMLabelPropagateEnd
       subroutine DMLabelConvertToSection(a,b,c,z)
-       import tIS,tPetscSection,tDMLabel
+       import tDMLabel,tIS,tPetscSection
        DMLabel a ! DMLabel
        PetscSection b ! PetscSection
        IS c ! IS
        PetscErrorCode z
        end subroutine DMLabelConvertToSection
       subroutine PetscSectionCreateGlobalSectionLabel(a,b,c,d,e,f,z)
-       import tPetscSF,tPetscSection,tDMLabel
+       import tDMLabel,tPetscSection,tPetscSF
        PetscSection a ! PetscSection
        PetscSF b ! PetscSF
        PetscBool c ! PetscBool
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/dm/f90-mod/ftn-auto-interfaces/petscdmnetwork.h90 petsc-3.18.5+dfsg1/src/dm/f90-mod/ftn-auto-interfaces/petscdmnetwork.h90
--- petsc-3.18.4+dfsg1/src/dm/f90-mod/ftn-auto-interfaces/petscdmnetwork.h90	2023-01-31 07:00:50.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/dm/f90-mod/ftn-auto-interfaces/petscdmnetwork.h90	2023-02-27 23:28:35.000000000 +0100
@@ -1,9 +1,3 @@
-      subroutine DMNetworkCreate(a,b,z)
-       import tDM
-       MPI_Comm a ! MPI_Comm
-       DM b ! DM
-       PetscErrorCode z
-       end subroutine DMNetworkCreate
       subroutine DMNetworkMonitorCreate(a,b,z)
        import tDM
        DM a ! DM
@@ -166,14 +160,14 @@
        PetscErrorCode z
        end subroutine DMNetworkHasJacobian
       subroutine DMNetworkEdgeSetMatrix(a,b,c,z)
-       import tMat,tDM
+       import tDM,tMat
        DM a ! DM
        PetscInt b ! PetscInt
        Mat c (*) ! Mat
        PetscErrorCode z
        end subroutine DMNetworkEdgeSetMatrix
       subroutine DMNetworkVertexSetMatrix(a,b,c,z)
-       import tMat,tDM
+       import tDM,tMat
        DM a ! DM
        PetscInt b ! PetscInt
        Mat c (*) ! Mat
@@ -192,7 +186,7 @@
        PetscErrorCode z
        end subroutine DMNetworkSetVertexLocalToGlobalOrdering
       subroutine DMNetworkCreateIS(a,b,c,d,e,f,g,z)
-       import tIS,tDM
+       import tDM,tIS
        DM a ! DM
        PetscInt b ! PetscInt
        PetscInt c (*) ! PetscInt
@@ -203,7 +197,7 @@
        PetscErrorCode z
        end subroutine DMNetworkCreateIS
       subroutine DMNetworkCreateLocalIS(a,b,c,d,e,f,g,z)
-       import tIS,tDM
+       import tDM,tIS
        DM a ! DM
        PetscInt b ! PetscInt
        PetscInt c (*) ! PetscInt
@@ -218,3 +212,9 @@
        DM a ! DM
        PetscErrorCode z
        end subroutine DMNetworkFinalizeComponents
+      subroutine DMNetworkCreate(a,b,z)
+       import tDM
+       MPI_Comm a ! MPI_Comm
+       DM b ! DM
+       PetscErrorCode z
+       end subroutine DMNetworkCreate
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/dm/f90-mod/ftn-auto-interfaces/petscdmplex.h90 petsc-3.18.5+dfsg1/src/dm/f90-mod/ftn-auto-interfaces/petscdmplex.h90
--- petsc-3.18.4+dfsg1/src/dm/f90-mod/ftn-auto-interfaces/petscdmplex.h90	2023-01-31 07:00:50.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/dm/f90-mod/ftn-auto-interfaces/petscdmplex.h90	2023-02-27 23:28:35.000000000 +0100
@@ -19,7 +19,7 @@
        PetscErrorCode z
        end subroutine DMPlexGetAdjacency
       subroutine DMPlexCreateTwoSidedProcessSF(a,b,c,d,e,f,g,h,z)
-       import tPetscSF,tDM,tPetscSection,tIS
+       import tPetscSF,tDM,tIS,tPetscSection
        DM a ! DM
        PetscSF b ! PetscSF
        PetscSection c ! PetscSection
@@ -31,7 +31,7 @@
        PetscErrorCode z
        end subroutine DMPlexCreateTwoSidedProcessSF
       subroutine DMPlexDistributeOwnership(a,b,c,d,e,z)
-       import tIS,tDM,tPetscSection
+       import tDM,tIS,tPetscSection
        DM a ! DM
        PetscSection b ! PetscSection
        IS c ! IS
@@ -47,7 +47,7 @@
        PetscErrorCode z
        end subroutine DMPlexStratifyMigrationSF
       subroutine DMPlexDistributeField(a,b,c,d,e,f,z)
-       import tPetscSF,tDM,tPetscSection,tVec
+       import tPetscSF,tDM,tVec,tPetscSection
        DM a ! DM
        PetscSF b ! PetscSF
        PetscSection c ! PetscSection
@@ -57,7 +57,7 @@
        PetscErrorCode z
        end subroutine DMPlexDistributeField
       subroutine DMPlexDistributeFieldIS(a,b,c,d,e,f,z)
-       import tPetscSF,tDM,tPetscSection,tIS
+       import tPetscSF,tDM,tIS,tPetscSection
        DM a ! DM
        PetscSF b ! PetscSF
        PetscSection c ! PetscSection
@@ -109,42 +109,6 @@
        PetscBool b ! PetscBool
        PetscErrorCode z
        end subroutine DMPlexIsDistributed
-      subroutine DMPlexInterpolatePointSF(a,b,z)
-       import tPetscSF,tDM
-       DM a ! DM
-       PetscSF b ! PetscSF
-       PetscErrorCode z
-       end subroutine DMPlexInterpolatePointSF
-      subroutine DMPlexInterpolate(a,b,z)
-       import tDM
-       DM a ! DM
-       DM b ! DM
-       PetscErrorCode z
-       end subroutine DMPlexInterpolate
-      subroutine DMPlexCopyCoordinates(a,b,z)
-       import tDM
-       DM a ! DM
-       DM b ! DM
-       PetscErrorCode z
-       end subroutine DMPlexCopyCoordinates
-      subroutine DMPlexUninterpolate(a,b,z)
-       import tDM
-       DM a ! DM
-       DM b ! DM
-       PetscErrorCode z
-       end subroutine DMPlexUninterpolate
-      subroutine DMPlexIsInterpolated(a,b,z)
-       import tDM
-       DM a ! DM
-       DMPlexInterpolatedFlag b ! DMPlexInterpolatedFlag
-       PetscErrorCode z
-       end subroutine DMPlexIsInterpolated
-      subroutine DMPlexIsInterpolatedCollective(a,b,z)
-       import tDM
-       DM a ! DM
-       DMPlexInterpolatedFlag b ! DMPlexInterpolatedFlag
-       PetscErrorCode z
-       end subroutine DMPlexIsInterpolatedCollective
       subroutine DMPlexMetricSetIsotropic(a,b,z)
        import tDM
        DM a ! DM
@@ -440,7 +404,7 @@
        PetscErrorCode z
        end subroutine DMPlexMetricIntersection3
       subroutine DMPlexGetOrdering(a,b,c,d,z)
-       import tIS,tDM,tDMLabel
+       import tDMLabel,tDM,tIS
        DM a ! DM
        MatOrderingType b ! MatOrderingType
        DMLabel c ! DMLabel
@@ -448,13 +412,13 @@
        PetscErrorCode z
        end subroutine DMPlexGetOrdering
       subroutine DMPlexGetOrdering1D(a,b,z)
-       import tIS,tDM
+       import tDM,tIS
        DM a ! DM
        IS b ! IS
        PetscErrorCode z
        end subroutine DMPlexGetOrdering1D
       subroutine DMPlexPermute(a,b,c,z)
-       import tIS,tDM
+       import tDM,tIS
        DM a ! DM
        IS b ! IS
        DM c ! DM
@@ -480,134 +444,6 @@
        DM d ! DM
        PetscErrorCode z
        end subroutine DMPlexCreateCGNS
-      subroutine DMPlexCheckInterfaceCones(a,z)
-       import tDM
-       DM a ! DM
-       PetscErrorCode z
-       end subroutine DMPlexCheckInterfaceCones
-      subroutine DMPlexCreateDoublet(a,b,c,d,e,f,z)
-       import tDM
-       MPI_Comm a ! MPI_Comm
-       PetscInt b ! PetscInt
-       PetscBool c ! PetscBool
-       PetscBool d ! PetscBool
-       PetscReal e ! PetscReal
-       DM f ! DM
-       PetscErrorCode z
-       end subroutine DMPlexCreateDoublet
-      subroutine DMPlexCreateWedgeBoxMesh(a,b,c,d,e,f,g,h,z)
-       import tDM
-       MPI_Comm a ! MPI_Comm
-       PetscInt b (*) ! PetscInt
-       PetscReal c (*) ! PetscReal
-       PetscReal d (*) ! PetscReal
-       DMBoundaryType e (*) ! DMBoundaryType
-       PetscBool f ! PetscBool
-       PetscBool g ! PetscBool
-       DM h ! DM
-       PetscErrorCode z
-       end subroutine DMPlexCreateWedgeBoxMesh
-      subroutine DMPlexCreateHexCylinderMesh(a,b,c,z)
-       import tDM
-       MPI_Comm a ! MPI_Comm
-       DMBoundaryType b ! DMBoundaryType
-       DM c ! DM
-       PetscErrorCode z
-       end subroutine DMPlexCreateHexCylinderMesh
-      subroutine DMPlexCreateWedgeCylinderMesh(a,b,c,d,z)
-       import tDM
-       MPI_Comm a ! MPI_Comm
-       PetscInt b ! PetscInt
-       PetscBool c ! PetscBool
-       DM d ! DM
-       PetscErrorCode z
-       end subroutine DMPlexCreateWedgeCylinderMesh
-      subroutine DMPlexCreateTPSMesh(a,b,c,d,e,f,g,h,i,z)
-       import tDM
-       MPI_Comm a ! MPI_Comm
-       DMPlexTPSType b ! DMPlexTPSType
-       PetscInt c (*) ! PetscInt
-       DMBoundaryType d (*) ! DMBoundaryType
-       PetscBool e ! PetscBool
-       PetscInt f ! PetscInt
-       PetscInt g ! PetscInt
-       PetscReal h ! PetscReal
-       DM i ! DM
-       PetscErrorCode z
-       end subroutine DMPlexCreateTPSMesh
-      subroutine DMPlexCreateSphereMesh(a,b,c,d,e,z)
-       import tDM
-       MPI_Comm a ! MPI_Comm
-       PetscInt b ! PetscInt
-       PetscBool c ! PetscBool
-       PetscReal d ! PetscReal
-       DM e ! DM
-       PetscErrorCode z
-       end subroutine DMPlexCreateSphereMesh
-      subroutine DMPlexCreateBallMesh(a,b,c,d,z)
-       import tDM
-       MPI_Comm a ! MPI_Comm
-       PetscInt b ! PetscInt
-       PetscReal c ! PetscReal
-       DM d ! DM
-       PetscErrorCode z
-       end subroutine DMPlexCreateBallMesh
-      subroutine DMPlexCreateReferenceCell(a,b,c,z)
-       import tDM
-       MPI_Comm a ! MPI_Comm
-       DMPolytopeType b ! DMPolytopeType
-       DM c ! DM
-       PetscErrorCode z
-       end subroutine DMPlexCreateReferenceCell
-      subroutine DMPlexCreate(a,b,z)
-       import tDM
-       MPI_Comm a ! MPI_Comm
-       DM b ! DM
-       PetscErrorCode z
-       end subroutine DMPlexCreate
-      subroutine DMPlexCreateFromCellListParallelPetsc(a,b,c,d,e,f,g,h,i&
-     &,j,k,l,m,z)
-       import tPetscSF,tDM
-       MPI_Comm a ! MPI_Comm
-       PetscInt b ! PetscInt
-       PetscInt c ! PetscInt
-       PetscInt d ! PetscInt
-       PetscInt e ! PetscInt
-       PetscInt f ! PetscInt
-       PetscBool g ! PetscBool
-       PetscInt h (*) ! PetscInt
-       PetscInt i ! PetscInt
-       PetscReal j (*) ! PetscReal
-       PetscSF k ! PetscSF
-       PetscInt l ! PetscInt
-       DM m ! DM
-       PetscErrorCode z
-       end subroutine DMPlexCreateFromCellListParallelPetsc
-      subroutine DMPlexCreateFromCellListPetsc(a,b,c,d,e,f,g,h,i,j,z)
-       import tDM
-       MPI_Comm a ! MPI_Comm
-       PetscInt b ! PetscInt
-       PetscInt c ! PetscInt
-       PetscInt d ! PetscInt
-       PetscInt e ! PetscInt
-       PetscBool f ! PetscBool
-       PetscInt g (*) ! PetscInt
-       PetscInt h ! PetscInt
-       PetscReal i (*) ! PetscReal
-       DM j ! DM
-       PetscErrorCode z
-       end subroutine DMPlexCreateFromCellListPetsc
-      subroutine DMPlexCreateFromDAG(a,b,c,d,e,f,g,z)
-       import tDM
-       DM a ! DM
-       PetscInt b ! PetscInt
-       PetscInt c (*) ! PetscInt
-       PetscInt d (*) ! PetscInt
-       PetscInt e (*) ! PetscInt
-       PetscInt f (*) ! PetscInt
-       PetscScalar g (*) ! PetscScalar
-       PetscErrorCode z
-       end subroutine DMPlexCreateFromDAG
       subroutine DMPlexGetScale(a,b,c,z)
        import tDM
        DM a ! DM
@@ -623,14 +459,14 @@
        PetscErrorCode z
        end subroutine DMPlexSetScale
       subroutine DMPlexCreateRigidBody(a,b,c,z)
-       import tMatNullSpace,tDM
+       import tDM,tMatNullSpace
        DM a ! DM
        PetscInt b ! PetscInt
        MatNullSpace c ! MatNullSpace
        PetscErrorCode z
        end subroutine DMPlexCreateRigidBody
       subroutine DMPlexCreateRigidBodies(a,b,c,d,e,f,z)
-       import tMatNullSpace,tDM,tDMLabel
+       import tDMLabel,tDM,tMatNullSpace
        DM a ! DM
        PetscInt b ! PetscInt
        DMLabel c ! DMLabel
@@ -730,14 +566,6 @@
        Vec c ! Vec
        PetscErrorCode z
        end subroutine DMPlexReconstructGradientsFVM
-      subroutine DMPlexCreateGmsh(a,b,c,d,z)
-       import tPetscViewer,tDM
-       MPI_Comm a ! MPI_Comm
-       PetscViewer b ! PetscViewer
-       PetscBool c ! PetscBool
-       DM d ! DM
-       PetscErrorCode z
-       end subroutine DMPlexCreateGmsh
       subroutine DMPlexCreateClosureIndex(a,b,z)
        import tDM,tPetscSection
        DM a ! DM
@@ -823,7 +651,7 @@
        PetscErrorCode z
        end subroutine DMPlexOrient
       subroutine PetscPartitionerDMPlexPartition(a,b,c,d,e,z)
-       import tIS,tDM,tPetscSection
+       import tDM,tIS,tPetscSection
        PetscPartitioner a ! PetscPartitioner
        DM b ! DM
        PetscSection c ! PetscSection
@@ -844,25 +672,25 @@
        PetscErrorCode z
        end subroutine DMPlexSetPartitioner
       subroutine DMPlexPartitionLabelClosure(a,b,z)
-       import tDM,tDMLabel
+       import tDMLabel,tDM
        DM a ! DM
        DMLabel b ! DMLabel
        PetscErrorCode z
        end subroutine DMPlexPartitionLabelClosure
       subroutine DMPlexPartitionLabelAdjacency(a,b,z)
-       import tDM,tDMLabel
+       import tDMLabel,tDM
        DM a ! DM
        DMLabel b ! DMLabel
        PetscErrorCode z
        end subroutine DMPlexPartitionLabelAdjacency
       subroutine DMPlexPartitionLabelPropagate(a,b,z)
-       import tDM,tDMLabel
+       import tDMLabel,tDM
        DM a ! DM
        DMLabel b ! DMLabel
        PetscErrorCode z
        end subroutine DMPlexPartitionLabelPropagate
       subroutine DMPlexPartitionLabelInvert(a,b,c,d,z)
-       import tPetscSF,tDM,tDMLabel
+       import tDMLabel,tDM,tPetscSF
        DM a ! DM
        DMLabel b ! DMLabel
        PetscSF c ! PetscSF
@@ -870,7 +698,7 @@
        PetscErrorCode z
        end subroutine DMPlexPartitionLabelInvert
       subroutine DMPlexPartitionLabelCreateSF(a,b,c,z)
-       import tPetscSF,tDM,tDMLabel
+       import tDMLabel,tDM,tPetscSF
        DM a ! DM
        DMLabel b ! DMLabel
        PetscSF c ! PetscSF
@@ -940,7 +768,7 @@
        PetscErrorCode z
        end subroutine DMPlexCreateProcessSF
       subroutine DMPlexCreateCoarsePointIS(a,b,z)
-       import tIS,tDM
+       import tDM,tIS
        DM a ! DM
        IS b ! IS
        PetscErrorCode z
@@ -982,38 +810,38 @@
        PetscErrorCode z
        end subroutine DMPlexGetRefinementFunction
       subroutine DMPlexMarkBoundaryFaces(a,b,c,z)
-       import tDM,tDMLabel
+       import tDMLabel,tDM
        DM a ! DM
        PetscInt b ! PetscInt
        DMLabel c ! DMLabel
        PetscErrorCode z
        end subroutine DMPlexMarkBoundaryFaces
       subroutine DMPlexLabelComplete(a,b,z)
-       import tDM,tDMLabel
+       import tDMLabel,tDM
        DM a ! DM
        DMLabel b ! DMLabel
        PetscErrorCode z
        end subroutine DMPlexLabelComplete
       subroutine DMPlexLabelAddCells(a,b,z)
-       import tDM,tDMLabel
+       import tDMLabel,tDM
        DM a ! DM
        DMLabel b ! DMLabel
        PetscErrorCode z
        end subroutine DMPlexLabelAddCells
       subroutine DMPlexLabelAddFaceCells(a,b,z)
-       import tDM,tDMLabel
+       import tDMLabel,tDM
        DM a ! DM
        DMLabel b ! DMLabel
        PetscErrorCode z
        end subroutine DMPlexLabelAddFaceCells
       subroutine DMPlexLabelClearCells(a,b,z)
-       import tDM,tDMLabel
+       import tDMLabel,tDM
        DM a ! DM
        DMLabel b ! DMLabel
        PetscErrorCode z
        end subroutine DMPlexLabelClearCells
       subroutine DMPlexLabelCohesiveComplete(a,b,c,d,e,f,z)
-       import tDM,tDMLabel
+       import tDMLabel,tDM
        DM a ! DM
        DMLabel b ! DMLabel
        DMLabel c ! DMLabel
@@ -1023,7 +851,7 @@
        PetscErrorCode z
        end subroutine DMPlexLabelCohesiveComplete
       subroutine DMPlexCreateHybridMesh(a,b,c,d,e,f,g,h,z)
-       import tDM,tDMLabel
+       import tDMLabel,tDM
        DM a ! DM
        DMLabel b ! DMLabel
        DMLabel c ! DMLabel
@@ -1048,7 +876,7 @@
        PetscErrorCode z
        end subroutine DMPlexGetOrientedFace
       subroutine DMPlexCreateSubmesh(a,b,c,d,e,z)
-       import tDM,tDMLabel
+       import tDMLabel,tDM
        DM a ! DM
        DMLabel b ! DMLabel
        PetscInt c ! PetscInt
@@ -1057,7 +885,7 @@
        PetscErrorCode z
        end subroutine DMPlexCreateSubmesh
       subroutine DMPlexFilter(a,b,c,d,z)
-       import tDM,tDMLabel
+       import tDMLabel,tDM
        DM a ! DM
        DMLabel b ! DMLabel
        PetscInt c ! PetscInt
@@ -1065,19 +893,19 @@
        PetscErrorCode z
        end subroutine DMPlexFilter
       subroutine DMPlexGetSubpointMap(a,b,z)
-       import tDM,tDMLabel
+       import tDMLabel,tDM
        DM a ! DM
        DMLabel b ! DMLabel
        PetscErrorCode z
        end subroutine DMPlexGetSubpointMap
       subroutine DMPlexSetSubpointMap(a,b,z)
-       import tDM,tDMLabel
+       import tDMLabel,tDM
        DM a ! DM
        DMLabel b ! DMLabel
        PetscErrorCode z
        end subroutine DMPlexSetSubpointMap
       subroutine DMPlexGetSubpointIS(a,b,z)
-       import tIS,tDM
+       import tDM,tIS
        DM a ! DM
        IS b ! IS
        PetscErrorCode z
@@ -1170,6 +998,109 @@
        PetscReal j ! PetscReal
        PetscErrorCode z
        end subroutine DMPlexTransferVecTree
+      subroutine PetscViewerExodusIIGetId(a,b,z)
+       import tPetscViewer
+       PetscViewer a ! PetscViewer
+       integer b ! int
+       PetscErrorCode z
+       end subroutine PetscViewerExodusIIGetId
+      subroutine PetscViewerExodusIISetOrder(a,b,z)
+       import tPetscViewer
+       PetscViewer a ! PetscViewer
+       PetscInt b ! PetscInt
+       PetscErrorCode z
+       end subroutine PetscViewerExodusIISetOrder
+      subroutine PetscViewerExodusIIGetOrder(a,b,z)
+       import tPetscViewer
+       PetscViewer a ! PetscViewer
+       PetscInt b ! PetscInt
+       PetscErrorCode z
+       end subroutine PetscViewerExodusIIGetOrder
+      subroutine DMPlexCreateExodus(a,b,c,d,z)
+       import tDM
+       MPI_Comm a ! MPI_Comm
+       PetscInt b ! PetscInt
+       PetscBool c ! PetscBool
+       DM d ! DM
+       PetscErrorCode z
+       end subroutine DMPlexCreateExodus
+      subroutine DMPlexSnapToGeomModel(a,b,c,d,e,z)
+       import tDM
+       DM a ! DM
+       PetscInt b ! PetscInt
+       PetscInt c ! PetscInt
+       PetscScalar d (*) ! PetscScalar
+       PetscScalar e (*) ! PetscScalar
+       PetscErrorCode z
+       end subroutine DMPlexSnapToGeomModel
+      subroutine DMPlexInflateToGeomModel(a,z)
+       import tDM
+       DM a ! DM
+       PetscErrorCode z
+       end subroutine DMPlexInflateToGeomModel
+      subroutine DMPlexFindVertices(a,b,c,d,z)
+       import tDM,tIS,tVec
+       DM a ! DM
+       Vec b ! Vec
+       PetscReal c ! PetscReal
+       IS d ! IS
+       PetscErrorCode z
+       end subroutine DMPlexFindVertices
+      subroutine DMPlexComputeProjection3Dto2D(a,b,c,z)
+       PetscInt a ! PetscInt
+       PetscScalar b (*) ! PetscScalar
+       PetscReal c (*) ! PetscReal
+       PetscErrorCode z
+       end subroutine DMPlexComputeProjection3Dto2D
+      subroutine DMPlexComputeGeometryFEM(a,b,z)
+       import tDM,tVec
+       DM a ! DM
+       Vec b ! Vec
+       PetscErrorCode z
+       end subroutine DMPlexComputeGeometryFEM
+      subroutine DMPlexComputeGeometryFVM(a,b,c,z)
+       import tDM,tVec
+       DM a ! DM
+       Vec b ! Vec
+       Vec c ! Vec
+       PetscErrorCode z
+       end subroutine DMPlexComputeGeometryFVM
+      subroutine DMPlexComputeGradientFVM(a,b,c,d,e,z)
+       import tDM,tVec
+       DM a ! DM
+       PetscFV b ! PetscFV
+       Vec c ! Vec
+       Vec d ! Vec
+       DM e ! DM
+       PetscErrorCode z
+       end subroutine DMPlexComputeGradientFVM
+      subroutine DMPlexGetDataFVM(a,b,c,d,e,z)
+       import tDM,tVec
+       DM a ! DM
+       PetscFV b ! PetscFV
+       Vec c ! Vec
+       Vec d ! Vec
+       DM e ! DM
+       PetscErrorCode z
+       end subroutine DMPlexGetDataFVM
+      subroutine DMPlexCoordinatesToReference(a,b,c,d,e,z)
+       import tDM
+       DM a ! DM
+       PetscInt b ! PetscInt
+       PetscInt c ! PetscInt
+       PetscReal d (*) ! PetscReal
+       PetscReal e (*) ! PetscReal
+       PetscErrorCode z
+       end subroutine DMPlexCoordinatesToReference
+      subroutine DMPlexReferenceToCoordinates(a,b,c,d,e,z)
+       import tDM
+       DM a ! DM
+       PetscInt b ! PetscInt
+       PetscInt c ! PetscInt
+       PetscReal d (*) ! PetscReal
+       PetscReal e (*) ! PetscReal
+       PetscErrorCode z
+       end subroutine DMPlexReferenceToCoordinates
       subroutine DMPlexIsSimplex(a,b,z)
        import tDM
        DM a ! DM
@@ -1185,7 +1116,7 @@
        PetscErrorCode z
        end subroutine DMPlexGetSimplexOrBoxCells
       subroutine DMPlexVecView1D(a,b,c,d,z)
-       import tPetscViewer,tDM,tVec
+       import tDM,tVec,tPetscViewer
        DM a ! DM
        PetscInt b ! PetscInt
        Vec c (*) ! Vec
@@ -1193,32 +1124,32 @@
        PetscErrorCode z
        end subroutine DMPlexVecView1D
       subroutine DMPlexTopologyView(a,b,z)
-       import tPetscViewer,tDM
+       import tDM,tPetscViewer
        DM a ! DM
        PetscViewer b ! PetscViewer
        PetscErrorCode z
        end subroutine DMPlexTopologyView
       subroutine DMPlexCoordinatesView(a,b,z)
-       import tPetscViewer,tDM
+       import tDM,tPetscViewer
        DM a ! DM
        PetscViewer b ! PetscViewer
        PetscErrorCode z
        end subroutine DMPlexCoordinatesView
       subroutine DMPlexLabelsView(a,b,z)
-       import tPetscViewer,tDM
+       import tDM,tPetscViewer
        DM a ! DM
        PetscViewer b ! PetscViewer
        PetscErrorCode z
        end subroutine DMPlexLabelsView
       subroutine DMPlexSectionView(a,b,c,z)
-       import tPetscViewer,tDM
+       import tDM,tPetscViewer
        DM a ! DM
        PetscViewer b ! PetscViewer
        DM c ! DM
        PetscErrorCode z
        end subroutine DMPlexSectionView
       subroutine DMPlexGlobalVectorView(a,b,c,d,z)
-       import tPetscViewer,tDM,tVec
+       import tDM,tVec,tPetscViewer
        DM a ! DM
        PetscViewer b ! PetscViewer
        DM c ! DM
@@ -1226,7 +1157,7 @@
        PetscErrorCode z
        end subroutine DMPlexGlobalVectorView
       subroutine DMPlexLocalVectorView(a,b,c,d,z)
-       import tPetscViewer,tDM,tVec
+       import tDM,tVec,tPetscViewer
        DM a ! DM
        PetscViewer b ! PetscViewer
        DM c ! DM
@@ -1234,28 +1165,28 @@
        PetscErrorCode z
        end subroutine DMPlexLocalVectorView
       subroutine DMPlexTopologyLoad(a,b,c,z)
-       import tPetscViewer,tDM,tPetscSF
+       import tPetscSF,tDM,tPetscViewer
        DM a ! DM
        PetscViewer b ! PetscViewer
        PetscSF c ! PetscSF
        PetscErrorCode z
        end subroutine DMPlexTopologyLoad
       subroutine DMPlexCoordinatesLoad(a,b,c,z)
-       import tPetscViewer,tDM,tPetscSF
+       import tPetscSF,tDM,tPetscViewer
        DM a ! DM
        PetscViewer b ! PetscViewer
        PetscSF c ! PetscSF
        PetscErrorCode z
        end subroutine DMPlexCoordinatesLoad
       subroutine DMPlexLabelsLoad(a,b,c,z)
-       import tPetscViewer,tDM,tPetscSF
+       import tPetscSF,tDM,tPetscViewer
        DM a ! DM
        PetscViewer b ! PetscViewer
        PetscSF c ! PetscSF
        PetscErrorCode z
        end subroutine DMPlexLabelsLoad
       subroutine DMPlexSectionLoad(a,b,c,d,e,f,z)
-       import tPetscViewer,tDM,tPetscSF
+       import tPetscSF,tDM,tPetscViewer
        DM a ! DM
        PetscViewer b ! PetscViewer
        DM c ! DM
@@ -1265,7 +1196,7 @@
        PetscErrorCode z
        end subroutine DMPlexSectionLoad
       subroutine DMPlexGlobalVectorLoad(a,b,c,d,e,z)
-       import tPetscViewer,tDM,tPetscSF,tVec
+       import tPetscSF,tDM,tVec,tPetscViewer
        DM a ! DM
        PetscViewer b ! PetscViewer
        DM c ! DM
@@ -1274,7 +1205,7 @@
        PetscErrorCode z
        end subroutine DMPlexGlobalVectorLoad
       subroutine DMPlexLocalVectorLoad(a,b,c,d,e,z)
-       import tPetscViewer,tDM,tPetscSF,tVec
+       import tPetscSF,tDM,tVec,tPetscViewer
        DM a ! DM
        PetscViewer b ! PetscViewer
        DM c ! DM
@@ -1324,14 +1255,14 @@
        PetscErrorCode z
        end subroutine DMPlexAddConeSize
       subroutine DMPlexGetConeRecursiveVertices(a,b,c,z)
-       import tIS,tDM
+       import tDM,tIS
        DM a ! DM
        IS b ! IS
        IS c ! IS
        PetscErrorCode z
        end subroutine DMPlexGetConeRecursiveVertices
       subroutine DMPlexGetConeRecursive(a,b,c,d,e,z)
-       import tIS,tDM,tPetscSection
+       import tDM,tIS,tPetscSection
        DM a ! DM
        IS b ! IS
        PetscInt c ! PetscInt
@@ -1340,7 +1271,7 @@
        PetscErrorCode z
        end subroutine DMPlexGetConeRecursive
       subroutine DMPlexRestoreConeRecursive(a,b,c,d,e,z)
-       import tIS,tDM,tPetscSection
+       import tDM,tIS,tPetscSection
        DM a ! DM
        IS b ! IS
        PetscInt c ! PetscInt
@@ -1430,7 +1361,7 @@
        PetscErrorCode z
        end subroutine DMPlexComputeCellTypes
       subroutine DMPlexGetDepthLabel(a,b,z)
-       import tDM,tDMLabel
+       import tDMLabel,tDM
        DM a ! DM
        DMLabel b ! DMLabel
        PetscErrorCode z
@@ -1472,7 +1403,7 @@
        PetscErrorCode z
        end subroutine DMPlexGetPointHeight
       subroutine DMPlexGetCellTypeLabel(a,b,z)
-       import tDM,tDMLabel
+       import tDMLabel,tDM
        DM a ! DM
        DMLabel b ! DMLabel
        PetscErrorCode z
@@ -1506,19 +1437,19 @@
        PetscErrorCode z
        end subroutine DMPlexGetGhostCellStratum
       subroutine DMPlexGetCellNumbering(a,b,z)
-       import tIS,tDM
+       import tDM,tIS
        DM a ! DM
        IS b ! IS
        PetscErrorCode z
        end subroutine DMPlexGetCellNumbering
       subroutine DMPlexGetVertexNumbering(a,b,z)
-       import tIS,tDM
+       import tDM,tIS
        DM a ! DM
        IS b ! IS
        PetscErrorCode z
        end subroutine DMPlexGetVertexNumbering
       subroutine DMPlexCreatePointNumbering(a,b,z)
-       import tIS,tDM
+       import tDM,tIS
        DM a ! DM
        IS b ! IS
        PetscErrorCode z
@@ -1599,122 +1530,191 @@
        PetscErrorCode z
        end subroutine DMPlexSetRegularRefinement
       subroutine DMPlexGetAnchors(a,b,c,z)
-       import tIS,tDM,tPetscSection
+       import tDM,tIS,tPetscSection
        DM a ! DM
        PetscSection b ! PetscSection
        IS c ! IS
        PetscErrorCode z
        end subroutine DMPlexGetAnchors
       subroutine DMPlexSetAnchors(a,b,c,z)
-       import tIS,tDM,tPetscSection
+       import tDM,tIS,tPetscSection
        DM a ! DM
        PetscSection b ! PetscSection
        IS c ! IS
        PetscErrorCode z
        end subroutine DMPlexSetAnchors
-      subroutine PetscViewerExodusIIGetId(a,b,z)
-       import tPetscViewer
-       PetscViewer a ! PetscViewer
-       integer b ! int
+      subroutine DMPlexCheckInterfaceCones(a,z)
+       import tDM
+       DM a ! DM
        PetscErrorCode z
-       end subroutine PetscViewerExodusIIGetId
-      subroutine PetscViewerExodusIISetOrder(a,b,z)
-       import tPetscViewer
-       PetscViewer a ! PetscViewer
+       end subroutine DMPlexCheckInterfaceCones
+      subroutine DMPlexCreateDoublet(a,b,c,d,e,f,z)
+       import tDM
+       MPI_Comm a ! MPI_Comm
        PetscInt b ! PetscInt
+       PetscBool c ! PetscBool
+       PetscBool d ! PetscBool
+       PetscReal e ! PetscReal
+       DM f ! DM
        PetscErrorCode z
-       end subroutine PetscViewerExodusIISetOrder
-      subroutine PetscViewerExodusIIGetOrder(a,b,z)
-       import tPetscViewer
-       PetscViewer a ! PetscViewer
+       end subroutine DMPlexCreateDoublet
+      subroutine DMPlexCreateWedgeBoxMesh(a,b,c,d,e,f,g,h,z)
+       import tDM
+       MPI_Comm a ! MPI_Comm
+       PetscInt b (*) ! PetscInt
+       PetscReal c (*) ! PetscReal
+       PetscReal d (*) ! PetscReal
+       DMBoundaryType e (*) ! DMBoundaryType
+       PetscBool f ! PetscBool
+       PetscBool g ! PetscBool
+       DM h ! DM
+       PetscErrorCode z
+       end subroutine DMPlexCreateWedgeBoxMesh
+      subroutine DMPlexCreateHexCylinderMesh(a,b,c,z)
+       import tDM
+       MPI_Comm a ! MPI_Comm
+       DMBoundaryType b ! DMBoundaryType
+       DM c ! DM
+       PetscErrorCode z
+       end subroutine DMPlexCreateHexCylinderMesh
+      subroutine DMPlexCreateWedgeCylinderMesh(a,b,c,d,z)
+       import tDM
+       MPI_Comm a ! MPI_Comm
        PetscInt b ! PetscInt
+       PetscBool c ! PetscBool
+       DM d ! DM
        PetscErrorCode z
-       end subroutine PetscViewerExodusIIGetOrder
-      subroutine DMPlexCreateExodus(a,b,c,d,z)
+       end subroutine DMPlexCreateWedgeCylinderMesh
+      subroutine DMPlexCreateTPSMesh(a,b,c,d,e,f,g,h,i,z)
+       import tDM
+       MPI_Comm a ! MPI_Comm
+       DMPlexTPSType b ! DMPlexTPSType
+       PetscInt c (*) ! PetscInt
+       DMBoundaryType d (*) ! DMBoundaryType
+       PetscBool e ! PetscBool
+       PetscInt f ! PetscInt
+       PetscInt g ! PetscInt
+       PetscReal h ! PetscReal
+       DM i ! DM
+       PetscErrorCode z
+       end subroutine DMPlexCreateTPSMesh
+      subroutine DMPlexCreateSphereMesh(a,b,c,d,e,z)
        import tDM
        MPI_Comm a ! MPI_Comm
        PetscInt b ! PetscInt
        PetscBool c ! PetscBool
+       PetscReal d ! PetscReal
+       DM e ! DM
+       PetscErrorCode z
+       end subroutine DMPlexCreateSphereMesh
+      subroutine DMPlexCreateBallMesh(a,b,c,d,z)
+       import tDM
+       MPI_Comm a ! MPI_Comm
+       PetscInt b ! PetscInt
+       PetscReal c ! PetscReal
        DM d ! DM
        PetscErrorCode z
-       end subroutine DMPlexCreateExodus
-      subroutine DMPlexSnapToGeomModel(a,b,c,d,e,z)
+       end subroutine DMPlexCreateBallMesh
+      subroutine DMPlexCreateReferenceCell(a,b,c,z)
        import tDM
-       DM a ! DM
+       MPI_Comm a ! MPI_Comm
+       DMPolytopeType b ! DMPolytopeType
+       DM c ! DM
+       PetscErrorCode z
+       end subroutine DMPlexCreateReferenceCell
+      subroutine DMPlexCreate(a,b,z)
+       import tDM
+       MPI_Comm a ! MPI_Comm
+       DM b ! DM
+       PetscErrorCode z
+       end subroutine DMPlexCreate
+      subroutine DMPlexCreateFromCellListParallelPetsc(a,b,c,d,e,f,g,h,i&
+     &,j,k,l,m,z)
+       import tPetscSF,tDM
+       MPI_Comm a ! MPI_Comm
        PetscInt b ! PetscInt
        PetscInt c ! PetscInt
-       PetscScalar d (*) ! PetscScalar
-       PetscScalar e (*) ! PetscScalar
+       PetscInt d ! PetscInt
+       PetscInt e ! PetscInt
+       PetscInt f ! PetscInt
+       PetscBool g ! PetscBool
+       PetscInt h (*) ! PetscInt
+       PetscInt i ! PetscInt
+       PetscReal j (*) ! PetscReal
+       PetscSF k ! PetscSF
+       PetscInt l ! PetscInt
+       DM m ! DM
        PetscErrorCode z
-       end subroutine DMPlexSnapToGeomModel
-      subroutine DMPlexInflateToGeomModel(a,z)
+       end subroutine DMPlexCreateFromCellListParallelPetsc
+      subroutine DMPlexCreateFromCellListPetsc(a,b,c,d,e,f,g,h,i,j,z)
        import tDM
-       DM a ! DM
+       MPI_Comm a ! MPI_Comm
+       PetscInt b ! PetscInt
+       PetscInt c ! PetscInt
+       PetscInt d ! PetscInt
+       PetscInt e ! PetscInt
+       PetscBool f ! PetscBool
+       PetscInt g (*) ! PetscInt
+       PetscInt h ! PetscInt
+       PetscReal i (*) ! PetscReal
+       DM j ! DM
        PetscErrorCode z
-       end subroutine DMPlexInflateToGeomModel
-      subroutine DMPlexFindVertices(a,b,c,d,z)
-       import tIS,tDM,tVec
+       end subroutine DMPlexCreateFromCellListPetsc
+      subroutine DMPlexCreateFromDAG(a,b,c,d,e,f,g,z)
+       import tDM
        DM a ! DM
-       Vec b ! Vec
-       PetscReal c ! PetscReal
-       IS d ! IS
+       PetscInt b ! PetscInt
+       PetscInt c (*) ! PetscInt
+       PetscInt d (*) ! PetscInt
+       PetscInt e (*) ! PetscInt
+       PetscInt f (*) ! PetscInt
+       PetscScalar g (*) ! PetscScalar
        PetscErrorCode z
-       end subroutine DMPlexFindVertices
-      subroutine DMPlexComputeProjection3Dto2D(a,b,c,z)
-       PetscInt a ! PetscInt
-       PetscScalar b (*) ! PetscScalar
-       PetscReal c (*) ! PetscReal
+       end subroutine DMPlexCreateFromDAG
+      subroutine DMPlexCreateGmsh(a,b,c,d,z)
+       import tDM,tPetscViewer
+       MPI_Comm a ! MPI_Comm
+       PetscViewer b ! PetscViewer
+       PetscBool c ! PetscBool
+       DM d ! DM
        PetscErrorCode z
-       end subroutine DMPlexComputeProjection3Dto2D
-      subroutine DMPlexComputeGeometryFEM(a,b,z)
-       import tDM,tVec
+       end subroutine DMPlexCreateGmsh
+      subroutine DMPlexInterpolatePointSF(a,b,z)
+       import tPetscSF,tDM
        DM a ! DM
-       Vec b ! Vec
+       PetscSF b ! PetscSF
        PetscErrorCode z
-       end subroutine DMPlexComputeGeometryFEM
-      subroutine DMPlexComputeGeometryFVM(a,b,c,z)
-       import tDM,tVec
+       end subroutine DMPlexInterpolatePointSF
+      subroutine DMPlexInterpolate(a,b,z)
+       import tDM
        DM a ! DM
-       Vec b ! Vec
-       Vec c ! Vec
+       DM b ! DM
        PetscErrorCode z
-       end subroutine DMPlexComputeGeometryFVM
-      subroutine DMPlexComputeGradientFVM(a,b,c,d,e,z)
-       import tDM,tVec
+       end subroutine DMPlexInterpolate
+      subroutine DMPlexCopyCoordinates(a,b,z)
+       import tDM
        DM a ! DM
-       PetscFV b ! PetscFV
-       Vec c ! Vec
-       Vec d ! Vec
-       DM e ! DM
+       DM b ! DM
        PetscErrorCode z
-       end subroutine DMPlexComputeGradientFVM
-      subroutine DMPlexGetDataFVM(a,b,c,d,e,z)
-       import tDM,tVec
+       end subroutine DMPlexCopyCoordinates
+      subroutine DMPlexUninterpolate(a,b,z)
+       import tDM
        DM a ! DM
-       PetscFV b ! PetscFV
-       Vec c ! Vec
-       Vec d ! Vec
-       DM e ! DM
+       DM b ! DM
        PetscErrorCode z
-       end subroutine DMPlexGetDataFVM
-      subroutine DMPlexCoordinatesToReference(a,b,c,d,e,z)
+       end subroutine DMPlexUninterpolate
+      subroutine DMPlexIsInterpolated(a,b,z)
        import tDM
        DM a ! DM
-       PetscInt b ! PetscInt
-       PetscInt c ! PetscInt
-       PetscReal d (*) ! PetscReal
-       PetscReal e (*) ! PetscReal
+       DMPlexInterpolatedFlag b ! DMPlexInterpolatedFlag
        PetscErrorCode z
-       end subroutine DMPlexCoordinatesToReference
-      subroutine DMPlexReferenceToCoordinates(a,b,c,d,e,z)
+       end subroutine DMPlexIsInterpolated
+      subroutine DMPlexIsInterpolatedCollective(a,b,z)
        import tDM
        DM a ! DM
-       PetscInt b ! PetscInt
-       PetscInt c ! PetscInt
-       PetscReal d (*) ! PetscReal
-       PetscReal e (*) ! PetscReal
+       DMPlexInterpolatedFlag b ! DMPlexInterpolatedFlag
        PetscErrorCode z
-       end subroutine DMPlexReferenceToCoordinates
+       end subroutine DMPlexIsInterpolatedCollective
       subroutine DMPlexTransformExtrudeGetLayers(a,b,z)
        import tDMPlexTransform
        DMPlexTransform a ! DMPlexTransform
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/dm/f90-mod/ftn-auto-interfaces/petscdt.h90 petsc-3.18.5+dfsg1/src/dm/f90-mod/ftn-auto-interfaces/petscdt.h90
--- petsc-3.18.4+dfsg1/src/dm/f90-mod/ftn-auto-interfaces/petscdt.h90	2023-01-31 07:00:50.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/dm/f90-mod/ftn-auto-interfaces/petscdt.h90	2023-02-27 23:28:35.000000000 +0100
@@ -286,132 +286,6 @@
        PetscReal e ! PetscReal
        PetscErrorCode z
        end subroutine PetscDTAltVStar
-      subroutine PetscPDFMaxwellBoltzmann1D(a,b,c,z)
-       PetscReal a (*) ! PetscReal
-       PetscReal b (*) ! PetscReal
-       PetscReal c (*) ! PetscReal
-       PetscErrorCode z
-       end subroutine PetscPDFMaxwellBoltzmann1D
-      subroutine PetscCDFMaxwellBoltzmann1D(a,b,c,z)
-       PetscReal a (*) ! PetscReal
-       PetscReal b (*) ! PetscReal
-       PetscReal c (*) ! PetscReal
-       PetscErrorCode z
-       end subroutine PetscCDFMaxwellBoltzmann1D
-      subroutine PetscPDFMaxwellBoltzmann2D(a,b,c,z)
-       PetscReal a (*) ! PetscReal
-       PetscReal b (*) ! PetscReal
-       PetscReal c (*) ! PetscReal
-       PetscErrorCode z
-       end subroutine PetscPDFMaxwellBoltzmann2D
-      subroutine PetscCDFMaxwellBoltzmann2D(a,b,c,z)
-       PetscReal a (*) ! PetscReal
-       PetscReal b (*) ! PetscReal
-       PetscReal c (*) ! PetscReal
-       PetscErrorCode z
-       end subroutine PetscCDFMaxwellBoltzmann2D
-      subroutine PetscPDFMaxwellBoltzmann3D(a,b,c,z)
-       PetscReal a (*) ! PetscReal
-       PetscReal b (*) ! PetscReal
-       PetscReal c (*) ! PetscReal
-       PetscErrorCode z
-       end subroutine PetscPDFMaxwellBoltzmann3D
-      subroutine PetscCDFMaxwellBoltzmann3D(a,b,c,z)
-       PetscReal a (*) ! PetscReal
-       PetscReal b (*) ! PetscReal
-       PetscReal c (*) ! PetscReal
-       PetscErrorCode z
-       end subroutine PetscCDFMaxwellBoltzmann3D
-      subroutine PetscPDFGaussian1D(a,b,c,z)
-       PetscReal a (*) ! PetscReal
-       PetscReal b (*) ! PetscReal
-       PetscReal c (*) ! PetscReal
-       PetscErrorCode z
-       end subroutine PetscPDFGaussian1D
-      subroutine PetscPDFSampleGaussian1D(a,b,c,z)
-       PetscReal a (*) ! PetscReal
-       PetscReal b (*) ! PetscReal
-       PetscReal c (*) ! PetscReal
-       PetscErrorCode z
-       end subroutine PetscPDFSampleGaussian1D
-      subroutine PetscPDFGaussian2D(a,b,c,z)
-       PetscReal a (*) ! PetscReal
-       PetscReal b (*) ! PetscReal
-       PetscReal c (*) ! PetscReal
-       PetscErrorCode z
-       end subroutine PetscPDFGaussian2D
-      subroutine PetscPDFSampleGaussian2D(a,b,c,z)
-       PetscReal a (*) ! PetscReal
-       PetscReal b (*) ! PetscReal
-       PetscReal c (*) ! PetscReal
-       PetscErrorCode z
-       end subroutine PetscPDFSampleGaussian2D
-      subroutine PetscPDFGaussian3D(a,b,c,z)
-       PetscReal a (*) ! PetscReal
-       PetscReal b (*) ! PetscReal
-       PetscReal c (*) ! PetscReal
-       PetscErrorCode z
-       end subroutine PetscPDFGaussian3D
-      subroutine PetscPDFSampleGaussian3D(a,b,c,z)
-       PetscReal a (*) ! PetscReal
-       PetscReal b (*) ! PetscReal
-       PetscReal c (*) ! PetscReal
-       PetscErrorCode z
-       end subroutine PetscPDFSampleGaussian3D
-      subroutine PetscPDFConstant1D(a,b,c,z)
-       PetscReal a (*) ! PetscReal
-       PetscReal b (*) ! PetscReal
-       PetscReal c (*) ! PetscReal
-       PetscErrorCode z
-       end subroutine PetscPDFConstant1D
-      subroutine PetscCDFConstant1D(a,b,c,z)
-       PetscReal a (*) ! PetscReal
-       PetscReal b (*) ! PetscReal
-       PetscReal c (*) ! PetscReal
-       PetscErrorCode z
-       end subroutine PetscCDFConstant1D
-      subroutine PetscPDFSampleConstant1D(a,b,c,z)
-       PetscReal a (*) ! PetscReal
-       PetscReal b (*) ! PetscReal
-       PetscReal c (*) ! PetscReal
-       PetscErrorCode z
-       end subroutine PetscPDFSampleConstant1D
-      subroutine PetscPDFConstant2D(a,b,c,z)
-       PetscReal a (*) ! PetscReal
-       PetscReal b (*) ! PetscReal
-       PetscReal c (*) ! PetscReal
-       PetscErrorCode z
-       end subroutine PetscPDFConstant2D
-      subroutine PetscCDFConstant2D(a,b,c,z)
-       PetscReal a (*) ! PetscReal
-       PetscReal b (*) ! PetscReal
-       PetscReal c (*) ! PetscReal
-       PetscErrorCode z
-       end subroutine PetscCDFConstant2D
-      subroutine PetscPDFSampleConstant2D(a,b,c,z)
-       PetscReal a (*) ! PetscReal
-       PetscReal b (*) ! PetscReal
-       PetscReal c (*) ! PetscReal
-       PetscErrorCode z
-       end subroutine PetscPDFSampleConstant2D
-      subroutine PetscPDFConstant3D(a,b,c,z)
-       PetscReal a (*) ! PetscReal
-       PetscReal b (*) ! PetscReal
-       PetscReal c (*) ! PetscReal
-       PetscErrorCode z
-       end subroutine PetscPDFConstant3D
-      subroutine PetscCDFConstant3D(a,b,c,z)
-       PetscReal a (*) ! PetscReal
-       PetscReal b (*) ! PetscReal
-       PetscReal c (*) ! PetscReal
-       PetscErrorCode z
-       end subroutine PetscCDFConstant3D
-      subroutine PetscPDFSampleConstant3D(a,b,c,z)
-       PetscReal a (*) ! PetscReal
-       PetscReal b (*) ! PetscReal
-       PetscReal c (*) ! PetscReal
-       PetscErrorCode z
-       end subroutine PetscPDFSampleConstant3D
       subroutine PetscWeakFormCopy(a,b,z)
        PetscWeakForm a ! PetscWeakForm
        PetscWeakForm b ! PetscWeakForm
@@ -678,3 +552,129 @@
        PetscDS b ! PetscDS
        PetscErrorCode z
        end subroutine PetscDSCopyExactSolutions
+      subroutine PetscPDFMaxwellBoltzmann1D(a,b,c,z)
+       PetscReal a (*) ! PetscReal
+       PetscReal b (*) ! PetscReal
+       PetscReal c (*) ! PetscReal
+       PetscErrorCode z
+       end subroutine PetscPDFMaxwellBoltzmann1D
+      subroutine PetscCDFMaxwellBoltzmann1D(a,b,c,z)
+       PetscReal a (*) ! PetscReal
+       PetscReal b (*) ! PetscReal
+       PetscReal c (*) ! PetscReal
+       PetscErrorCode z
+       end subroutine PetscCDFMaxwellBoltzmann1D
+      subroutine PetscPDFMaxwellBoltzmann2D(a,b,c,z)
+       PetscReal a (*) ! PetscReal
+       PetscReal b (*) ! PetscReal
+       PetscReal c (*) ! PetscReal
+       PetscErrorCode z
+       end subroutine PetscPDFMaxwellBoltzmann2D
+      subroutine PetscCDFMaxwellBoltzmann2D(a,b,c,z)
+       PetscReal a (*) ! PetscReal
+       PetscReal b (*) ! PetscReal
+       PetscReal c (*) ! PetscReal
+       PetscErrorCode z
+       end subroutine PetscCDFMaxwellBoltzmann2D
+      subroutine PetscPDFMaxwellBoltzmann3D(a,b,c,z)
+       PetscReal a (*) ! PetscReal
+       PetscReal b (*) ! PetscReal
+       PetscReal c (*) ! PetscReal
+       PetscErrorCode z
+       end subroutine PetscPDFMaxwellBoltzmann3D
+      subroutine PetscCDFMaxwellBoltzmann3D(a,b,c,z)
+       PetscReal a (*) ! PetscReal
+       PetscReal b (*) ! PetscReal
+       PetscReal c (*) ! PetscReal
+       PetscErrorCode z
+       end subroutine PetscCDFMaxwellBoltzmann3D
+      subroutine PetscPDFGaussian1D(a,b,c,z)
+       PetscReal a (*) ! PetscReal
+       PetscReal b (*) ! PetscReal
+       PetscReal c (*) ! PetscReal
+       PetscErrorCode z
+       end subroutine PetscPDFGaussian1D
+      subroutine PetscPDFSampleGaussian1D(a,b,c,z)
+       PetscReal a (*) ! PetscReal
+       PetscReal b (*) ! PetscReal
+       PetscReal c (*) ! PetscReal
+       PetscErrorCode z
+       end subroutine PetscPDFSampleGaussian1D
+      subroutine PetscPDFGaussian2D(a,b,c,z)
+       PetscReal a (*) ! PetscReal
+       PetscReal b (*) ! PetscReal
+       PetscReal c (*) ! PetscReal
+       PetscErrorCode z
+       end subroutine PetscPDFGaussian2D
+      subroutine PetscPDFSampleGaussian2D(a,b,c,z)
+       PetscReal a (*) ! PetscReal
+       PetscReal b (*) ! PetscReal
+       PetscReal c (*) ! PetscReal
+       PetscErrorCode z
+       end subroutine PetscPDFSampleGaussian2D
+      subroutine PetscPDFGaussian3D(a,b,c,z)
+       PetscReal a (*) ! PetscReal
+       PetscReal b (*) ! PetscReal
+       PetscReal c (*) ! PetscReal
+       PetscErrorCode z
+       end subroutine PetscPDFGaussian3D
+      subroutine PetscPDFSampleGaussian3D(a,b,c,z)
+       PetscReal a (*) ! PetscReal
+       PetscReal b (*) ! PetscReal
+       PetscReal c (*) ! PetscReal
+       PetscErrorCode z
+       end subroutine PetscPDFSampleGaussian3D
+      subroutine PetscPDFConstant1D(a,b,c,z)
+       PetscReal a (*) ! PetscReal
+       PetscReal b (*) ! PetscReal
+       PetscReal c (*) ! PetscReal
+       PetscErrorCode z
+       end subroutine PetscPDFConstant1D
+      subroutine PetscCDFConstant1D(a,b,c,z)
+       PetscReal a (*) ! PetscReal
+       PetscReal b (*) ! PetscReal
+       PetscReal c (*) ! PetscReal
+       PetscErrorCode z
+       end subroutine PetscCDFConstant1D
+      subroutine PetscPDFSampleConstant1D(a,b,c,z)
+       PetscReal a (*) ! PetscReal
+       PetscReal b (*) ! PetscReal
+       PetscReal c (*) ! PetscReal
+       PetscErrorCode z
+       end subroutine PetscPDFSampleConstant1D
+      subroutine PetscPDFConstant2D(a,b,c,z)
+       PetscReal a (*) ! PetscReal
+       PetscReal b (*) ! PetscReal
+       PetscReal c (*) ! PetscReal
+       PetscErrorCode z
+       end subroutine PetscPDFConstant2D
+      subroutine PetscCDFConstant2D(a,b,c,z)
+       PetscReal a (*) ! PetscReal
+       PetscReal b (*) ! PetscReal
+       PetscReal c (*) ! PetscReal
+       PetscErrorCode z
+       end subroutine PetscCDFConstant2D
+      subroutine PetscPDFSampleConstant2D(a,b,c,z)
+       PetscReal a (*) ! PetscReal
+       PetscReal b (*) ! PetscReal
+       PetscReal c (*) ! PetscReal
+       PetscErrorCode z
+       end subroutine PetscPDFSampleConstant2D
+      subroutine PetscPDFConstant3D(a,b,c,z)
+       PetscReal a (*) ! PetscReal
+       PetscReal b (*) ! PetscReal
+       PetscReal c (*) ! PetscReal
+       PetscErrorCode z
+       end subroutine PetscPDFConstant3D
+      subroutine PetscCDFConstant3D(a,b,c,z)
+       PetscReal a (*) ! PetscReal
+       PetscReal b (*) ! PetscReal
+       PetscReal c (*) ! PetscReal
+       PetscErrorCode z
+       end subroutine PetscCDFConstant3D
+      subroutine PetscPDFSampleConstant3D(a,b,c,z)
+       PetscReal a (*) ! PetscReal
+       PetscReal b (*) ! PetscReal
+       PetscReal c (*) ! PetscReal
+       PetscErrorCode z
+       end subroutine PetscPDFSampleConstant3D
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/dm/impls/da/dacorn.c petsc-3.18.5+dfsg1/src/dm/impls/da/dacorn.c
--- petsc-3.18.4+dfsg1/src/dm/impls/da/dacorn.c	2022-11-28 17:22:18.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/dm/impls/da/dacorn.c	2023-02-27 23:11:05.000000000 +0100
@@ -196,7 +196,7 @@
 }
 
 /*@C
-   DMDAGetCoordinateName - Gets the name of a coodinate direction associated with a `DMDA`.
+   DMDAGetCoordinateName - Gets the name of a coordinate direction associated with a `DMDA`.
 
    Not collective; name will contain a common value
 
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/dm/impls/da/dageometry.c petsc-3.18.5+dfsg1/src/dm/impls/da/dageometry.c
--- petsc-3.18.4+dfsg1/src/dm/impls/da/dageometry.c	2022-11-28 17:22:18.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/dm/impls/da/dageometry.c	2023-02-27 23:11:05.000000000 +0100
@@ -228,7 +228,7 @@
     PetscCall(private_DMDALocatePointsIS_3D_Regular(dm, pos, &iscell));
     break;
   default:
-    SETERRQ(PetscObjectComm((PetscObject)dm), PETSC_ERR_SUP, "Unsupport spatial dimension");
+    SETERRQ(PetscObjectComm((PetscObject)dm), PETSC_ERR_SUP, "Unsupported spatial dimension");
   }
 
   PetscCall(VecGetLocalSize(pos, &npoints));
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/dm/impls/da/dagtol.c petsc-3.18.5+dfsg1/src/dm/impls/da/dagtol.c
--- petsc-3.18.4+dfsg1/src/dm/impls/da/dagtol.c	2022-11-28 17:22:18.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/dm/impls/da/dagtol.c	2023-02-27 23:11:05.000000000 +0100
@@ -125,7 +125,7 @@
    Level: advanced
 
    Notes:
-   The global and natrual vectors used here need not be the same as those
+   The global and natural vectors used here need not be the same as those
    obtained from `DMCreateGlobalVector()` and `DMDACreateNaturalVector()`, BUT they
    must have the same parallel data layout; they could, for example, be
    obtained with `VecDuplicate()` from the `DMDA` originating vectors.
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/dm/impls/da/dainterp.c petsc-3.18.5+dfsg1/src/dm/impls/da/dainterp.c
--- petsc-3.18.4+dfsg1/src/dm/impls/da/dainterp.c	2022-11-28 17:22:18.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/dm/impls/da/dainterp.c	2023-02-27 23:11:05.000000000 +0100
@@ -1419,7 +1419,7 @@
      Basic idea is as follows. Here's a 2D example, suppose r_x, r_y are the ratios
      for dimension 1 and 2 respectively.
      Let (i,j) be a coarse grid node. All the fine grid nodes between r_x*i and r_x*(i+1)
-     and r_y*j and r_y*(j+1) will be grouped into the same coarse grid agregate.
+     and r_y*j and r_y*(j+1) will be grouped into the same coarse grid aggregate.
      Each specific dof on the fine grid is mapped to one dof on the coarse grid.
   */
 
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/dm/impls/da/ftn-auto/makefile petsc-3.18.5+dfsg1/src/dm/impls/da/ftn-auto/makefile
--- petsc-3.18.4+dfsg1/src/dm/impls/da/ftn-auto/makefile	2023-01-31 07:00:47.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/dm/impls/da/ftn-auto/makefile	2023-02-27 23:28:31.000000000 +0100
@@ -4,7 +4,7 @@
 
 CFLAGS   =
 FFLAGS   =
-SOURCEC  = daf.c dacornf.c dacreatef.c daddf.c dadistf.c dageometryf.c dagetarrayf.c dagetelemf.c dagtolf.c dagtonaf.c daindexf.c dainterpf.c dalocalf.c dapreallocatef.c dasubf.c fddaf.c gr1f.c
+SOURCEC  = daf.c dacreatef.c daddf.c dadistf.c dagetarrayf.c dagetelemf.c dagtonaf.c daindexf.c dalocalf.c dapreallocatef.c dasubf.c fddaf.c gr1f.c dacornf.c dageometryf.c dagtolf.c dainterpf.c
 SOURCEF  =
 SOURCEH  = 
 DIRS     =
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/dm/impls/network/ftn-auto/makefile petsc-3.18.5+dfsg1/src/dm/impls/network/ftn-auto/makefile
--- petsc-3.18.4+dfsg1/src/dm/impls/network/ftn-auto/makefile	2023-01-31 07:00:47.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/dm/impls/network/ftn-auto/makefile	2023-02-27 23:28:31.000000000 +0100
@@ -4,7 +4,7 @@
 
 CFLAGS   =
 FFLAGS   =
-SOURCEC  = networkcreatef.c networkmonitorf.c networkf.c
+SOURCEC  = networkmonitorf.c networkf.c networkcreatef.c
 SOURCEF  =
 SOURCEH  = 
 DIRS     =
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/dm/impls/network/network.c petsc-3.18.5+dfsg1/src/dm/impls/network/network.c
--- petsc-3.18.4+dfsg1/src/dm/impls/network/network.c	2023-01-31 06:19:48.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/dm/impls/network/network.c	2023-02-27 23:11:05.000000000 +0100
@@ -118,7 +118,7 @@
   PetscCheck(Nsubnet >= 1, PetscObjectComm((PetscObject)dm), PETSC_ERR_ARG_INCOMP, "Number of global subnetworks %" PetscInt_FMT " cannot be less than 1", Nsubnet);
 
   network->cloneshared->Nsubnet = Nsubnet;
-  network->cloneshared->nsubnet = 0; /* initial value; will be determind by DMNetworkAddSubnetwork() */
+  network->cloneshared->nsubnet = 0; /* initial value; will be determined by DMNetworkAddSubnetwork() */
   PetscCall(PetscCalloc1(Nsubnet, &network->cloneshared->subnet));
 
   /* num of shared vertices */
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/dm/impls/network/networkcreate.c petsc-3.18.5+dfsg1/src/dm/impls/network/networkcreate.c
--- petsc-3.18.4+dfsg1/src/dm/impls/network/networkcreate.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/dm/impls/network/networkcreate.c	2023-02-27 23:11:05.000000000 +0100
@@ -344,7 +344,7 @@
   PetscFunctionReturn(0);
 }
 /*
-  copies over the subnetid and index portions of the DMNetworkComponentHeader from orignal dm to the newdm
+  copies over the subnetid and index portions of the DMNetworkComponentHeader from original dm to the newdm
 */
 static PetscErrorCode DMNetworkCopyHeaderTopological(DM dm, DM newdm)
 {
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/dm/impls/network/tests/ex1.c petsc-3.18.5+dfsg1/src/dm/impls/network/tests/ex1.c
--- petsc-3.18.4+dfsg1/src/dm/impls/network/tests/ex1.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/dm/impls/network/tests/ex1.c	2023-02-27 23:11:05.000000000 +0100
@@ -107,7 +107,7 @@
   PetscCall(CreateSimpleStarGraph(PETSC_COMM_WORLD, dofv, dofe, ne, PETSC_TRUE, &dm));
   PetscCall(DMNetworkGetEdgeRange(dm, &eStart, &eEnd));
 
-  /* check if cloning changed any componenent */
+  /* check if cloning changed any component */
   if (eStart < eEnd) PetscCall(DMNetworkGetComponent(dm, eStart, 0, NULL, (void **)&compprev, &ndofsprev));
   PetscCall(DMClone(dm, &dmclone));
   if (eStart < eEnd) {
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/dm/impls/plex/ftn-auto/makefile petsc-3.18.5+dfsg1/src/dm/impls/plex/ftn-auto/makefile
--- petsc-3.18.4+dfsg1/src/dm/impls/plex/ftn-auto/makefile	2023-01-31 07:00:47.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/dm/impls/plex/ftn-auto/makefile	2023-02-27 23:28:31.000000000 +0100
@@ -4,7 +4,7 @@
 CPPFLAGS = ${NETCFD_INCLUDE} ${EXODUSII_INCLUDE}
 CFLAGS   =
 FFLAGS   =
-SOURCEC  = plexdistributef.c plexinterpolatef.c plexmetricf.c plexreorderf.c plexcgnsf.c plexcheckinterfacef.c plexcreatef.c plexfemf.c plexfvmf.c plexgmshf.c plexindicesf.c plexnaturalf.c plexorientf.c plexpartitionf.c plexpointf.c plexprojectf.c plexrefinef.c plexsubmeshf.c plextreef.c plexf.c plexexodusiif.c plexegadsf.c plexgeometryf.c
+SOURCEC  = plexdistributef.c plexmetricf.c plexreorderf.c plexcgnsf.c plexfemf.c plexfvmf.c plexindicesf.c plexnaturalf.c plexorientf.c plexpartitionf.c plexpointf.c plexprojectf.c plexrefinef.c plexsubmeshf.c plextreef.c plexexodusiif.c plexegadsf.c plexgeometryf.c plexf.c plexcheckinterfacef.c plexcreatef.c plexgmshf.c plexinterpolatef.c
 SOURCEF  =
 SOURCEH  = 
 DIRS     =
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/dm/impls/plex/plex.c petsc-3.18.5+dfsg1/src/dm/impls/plex/plex.c
--- petsc-3.18.4+dfsg1/src/dm/impls/plex/plex.c	2022-12-28 20:00:16.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/dm/impls/plex/plex.c	2023-02-27 23:11:05.000000000 +0100
@@ -1780,7 +1780,7 @@
     /*
       exodusII requires that all sets be part of exactly one cell set.
       If the dm does not have a "Cell Sets" label defined, we create one
-      with ID 1, containig all cells.
+      with ID 1, containing all cells.
       Note that if the Cell Sets label is defined but does not cover all cells,
       we may still have a problem. This should probably be checked here or in the viewer;
     */
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/dm/impls/plex/plexcheckinterface.c petsc-3.18.5+dfsg1/src/dm/impls/plex/plexcheckinterface.c
--- petsc-3.18.4+dfsg1/src/dm/impls/plex/plexcheckinterface.c	2022-11-28 17:22:18.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/dm/impls/plex/plexcheckinterface.c	2023-02-27 23:11:05.000000000 +0100
@@ -150,7 +150,7 @@
   Level: developer
 
   Notes:
-  For example, if there is an edge (rank,index)=(0,2) connecting points cone(0,2)=[(0,0),(0,1)] in this order, and the point SF containts connections 0 <- (1,0), 1 <- (1,1) and 2 <- (1,2),
+  For example, if there is an edge (rank,index)=(0,2) connecting points cone(0,2)=[(0,0),(0,1)] in this order, and the point SF contains connections 0 <- (1,0), 1 <- (1,1) and 2 <- (1,2),
   then this check would pass if the edge (1,2) has cone(1,2)=[(1,0),(1,1)]. By contrast, if cone(1,2)=[(1,1),(1,0)], then this check would fail.
 
   This is mainly intended for debugging/testing purposes. Does not check cone orientation, for this purpose use `DMPlexCheckFaces()`.
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/dm/impls/plex/plexcreate.c petsc-3.18.5+dfsg1/src/dm/impls/plex/plexcreate.c
--- petsc-3.18.4+dfsg1/src/dm/impls/plex/plexcreate.c	2022-11-28 17:22:18.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/dm/impls/plex/plexcreate.c	2023-02-27 23:11:05.000000000 +0100
@@ -2607,7 +2607,7 @@
    where Q = I - 2 n n^T is a symmetric orthogonal matrix.
    The first column of Q is parallel to g so the remaining two columns span the null space.
    Let Qn = Q[:,1:] be those remaining columns.  Then Qn Qn^T is an orthogonal projector into the tangent space.
-   Since Q is symmetric, this is equivalent to multipyling by Q and taking the last two entries.
+   Since Q is symmetric, this is equivalent to multiplying by Q and taking the last two entries.
    In total, we have a system of 3 equations in 3 unknowns:
 
      f(y) = 0                       1 equation
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/dm/impls/plex/plexextrude.c petsc-3.18.5+dfsg1/src/dm/impls/plex/plexextrude.c
--- petsc-3.18.4+dfsg1/src/dm/impls/plex/plexextrude.c	2022-11-28 17:22:18.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/dm/impls/plex/plexextrude.c	2023-02-27 23:11:05.000000000 +0100
@@ -26,7 +26,7 @@
   Level: intermediate
 
   Notes:
-  Extrusion is implemented as a `DMPlexTransform`, so that new mesh points are produced from old mesh points. In the exmaple below,
+  Extrusion is implemented as a `DMPlexTransform`, so that new mesh points are produced from old mesh points. In the example below,
 we begin with an edge (v0, v3). It is extruded for two layers. The original vertex v0 produces two edges, e1 and e2, and three vertices,
 v0, v2, and v2. Similarly, vertex v3 produces e3, e4, v3, v4, and v5. The original edge produces itself, e5 and e6, as well as face1 and
 face2. The new mesh points are given the same labels as the original points which produced them. Thus, if v0 had a label value 1, then so
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/dm/impls/plex/plexgmsh.c petsc-3.18.5+dfsg1/src/dm/impls/plex/plexgmsh.c
--- petsc-3.18.4+dfsg1/src/dm/impls/plex/plexgmsh.c	2022-11-28 17:22:18.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/dm/impls/plex/plexgmsh.c	2023-02-27 23:11:05.000000000 +0100
@@ -678,7 +678,7 @@
     if (byteSwap) PetscCall(PetscByteSwap(&numNodes, PETSC_LONG, 1));
     if (gmsh->binary) {
       size_t nbytes = sizeof(int) + 3 * sizeof(double);
-      char  *cbuf   = NULL; /* dummy value to prevent warning from compiler about possible unitilized value */
+      char  *cbuf   = NULL; /* dummy value to prevent warning from compiler about possible uninitialized value */
       PetscCall(GmshBufferGet(gmsh, numNodes, nbytes, &cbuf));
       PetscCall(PetscViewerRead(viewer, cbuf, numNodes * nbytes, NULL, PETSC_CHAR));
       for (node = 0; node < numNodes; ++node, ++n) {
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/dm/impls/plex/plexinterpolate.c petsc-3.18.5+dfsg1/src/dm/impls/plex/plexinterpolate.c
--- petsc-3.18.4+dfsg1/src/dm/impls/plex/plexinterpolate.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/dm/impls/plex/plexinterpolate.c	2023-02-27 23:11:05.000000000 +0100
@@ -1164,7 +1164,7 @@
   */
   /* Step 1: Construct section+SFNode array
        The section has entries for all shared faces for which we have a leaf point in the cone
-       The array holds candidate shared faces, each face is refered to by the leaf point */
+       The array holds candidate shared faces, each face is referred to by the leaf point */
   PetscCall(PetscSectionCreate(comm, &candidateSection));
   PetscCall(PetscSectionSetChart(candidateSection, 0, Nr));
   {
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/dm/impls/plex/plexsection.c petsc-3.18.5+dfsg1/src/dm/impls/plex/plexsection.c
--- petsc-3.18.4+dfsg1/src/dm/impls/plex/plexsection.c	2022-11-28 17:22:18.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/dm/impls/plex/plexsection.c	2023-02-27 23:11:05.000000000 +0100
@@ -406,7 +406,7 @@
 . numComp   - An array of size numFields that holds the number of components for each field
 . numDof    - An array of size numFields*(dim+1) which holds the number of dof for each field on a mesh piece of dimension d
 . numBC     - The number of boundary conditions
-. bcField   - An array of size numBC giving the field number for each boundry condition
+. bcField   - An array of size numBC giving the field number for each boundary condition
 . bcComps   - [Optional] An array of size numBC giving an `IS` holding the field components to which each boundary condition applies
 . bcPoints  - An array of size numBC giving an `IS` holding the `DMPLEX` points to which each boundary condition applies
 - perm      - Optional permutation of the chart, or NULL
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/dm/impls/plex/tests/ex18.c petsc-3.18.5+dfsg1/src/dm/impls/plex/tests/ex18.c
--- petsc-3.18.4+dfsg1/src/dm/impls/plex/tests/ex18.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/dm/impls/plex/tests/ex18.c	2023-02-27 23:11:05.000000000 +0100
@@ -731,7 +731,7 @@
     }
     PetscCall(PetscLogStagePop());
   }
-  PetscCheck(user->ncoords % user->dim == 0, comm, PETSC_ERR_ARG_OUTOFRANGE, "length of coordinates array %" PetscInt_FMT " must be divisable by spatial dimension %" PetscInt_FMT, user->ncoords, user->dim);
+  PetscCheck(user->ncoords % user->dim == 0, comm, PETSC_ERR_ARG_OUTOFRANGE, "length of coordinates array %" PetscInt_FMT " must be divisible by spatial dimension %" PetscInt_FMT, user->ncoords, user->dim);
   PetscCall(PetscObjectSetName((PetscObject)*dm, "Original Mesh"));
   PetscCall(DMViewFromOptions(*dm, NULL, "-orig_dm_view"));
 
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/dm/impls/plex/tests/ex19.c petsc-3.18.5+dfsg1/src/dm/impls/plex/tests/ex19.c
--- petsc-3.18.4+dfsg1/src/dm/impls/plex/tests/ex19.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/dm/impls/plex/tests/ex19.c	2023-02-27 23:11:05.000000000 +0100
@@ -237,7 +237,7 @@
   PetscCall(KSPCreate(PETSC_COMM_WORLD, &ksp));
   PetscCall(KSPSetOperators(ksp, mass, mass));
   PetscCall(KSPSetFromOptions(ksp));
-  //   Compute rhs as M f, could also direclty project the analytic function but we might not have it
+  //   Compute rhs as M f, could also directly project the analytic function but we might not have it
   PetscCall(DMCreateMassMatrix(dmProj, dmaProj, &mass2));
   PetscCall(MatMult(mass2, u, rhs));
   PetscCall(MatDestroy(&mass2));
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/dm/impls/plex/tests/ex39.c petsc-3.18.5+dfsg1/src/dm/impls/plex/tests/ex39.c
--- petsc-3.18.4+dfsg1/src/dm/impls/plex/tests/ex39.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/dm/impls/plex/tests/ex39.c	2023-02-27 23:11:05.000000000 +0100
@@ -269,7 +269,7 @@
     }
   }
 
-  /* Multiply each coordinate vector by our tranformation.*/
+  /* Multiply each coordinate vector by our transformation.*/
   for (i = 0; i < npoints; ++i) {
     for (j = 0; j < dim; ++j) {
       tmpcoord[j] = 0;
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/dm/impls/stag/stag1d.c petsc-3.18.5+dfsg1/src/dm/impls/stag/stag1d.c
--- petsc-3.18.4+dfsg1/src/dm/impls/stag/stag1d.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/dm/impls/stag/stag1d.c	2023-02-27 23:11:05.000000000 +0100
@@ -27,14 +27,14 @@
 . -stag_ghost_stencil_width - width of ghost region, in elements
 - -stag_boundary_type_x <none,ghosted,periodic> - `DMBoundaryType` value
 
+  Level: beginner
+
   Notes:
-  You must call `DMSetUp()` after this call before using the DM.
-  If you wish to use the options database (see the keys above) to change values in the DMStag, you must call
+  You must call `DMSetUp()` after this call before using the `DM`.
+  If you wish to use the options database (see the keys above) to change values in the `DMSTAG`, you must call
   `DMSetFromOptions()` after this function but before `DMSetUp()`.
 
-  Level: beginner
-
-.seealso: `DMSTAG`, `DMStagCreate2d()`, `DMStagCreate3d()`, `DMDestroy()`, `DMView()`, `DMCreateGlobalVector()`, `DMCreateLocalVector()`, `DMLocalToGlobalBegin()`, `DMDACreate1d()`
+.seealso: [](chapter_stag), `DMSTAG`, `DMStagCreate2d()`, `DMStagCreate3d()`, `DMDestroy()`, `DMView()`, `DMCreateGlobalVector()`, `DMCreateLocalVector()`, `DMLocalToGlobalBegin()`, `DMDACreate1d()`
 @*/
 PETSC_EXTERN PetscErrorCode DMStagCreate1d(MPI_Comm comm, DMBoundaryType bndx, PetscInt M, PetscInt dof0, PetscInt dof1, DMStagStencilType stencilType, PetscInt stencilWidth, const PetscInt lx[], DM *dm)
 {
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/dm/impls/stag/stag2d.c petsc-3.18.5+dfsg1/src/dm/impls/stag/stag2d.c
--- petsc-3.18.4+dfsg1/src/dm/impls/stag/stag2d.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/dm/impls/stag/stag2d.c	2023-02-27 23:11:05.000000000 +0100
@@ -19,7 +19,7 @@
 - lx,ly - arrays of local x,y element counts, of length equal to m,n, summing to M,N
 
   Output Parameter:
-. dm - the new DMStag object
+. dm - the new `DMSTAG` object
 
   Options Database Keys:
 + -dm_view - calls `DMViewFromOptions()` at the conclusion of `DMSetUp()`
@@ -31,14 +31,14 @@
 . -stag_boundary_type_x <none,ghosted,periodic> - `DMBoundaryType` value
 - -stag_boundary_type_y <none,ghosted,periodic> - `DMBoundaryType` value
 
+  Level: beginner
+
   Notes:
-  You must call `DMSetUp()` after this call, before using the DM.
-  If you wish to use the options database (see the keys above) to change values in the DMStag, you must call
+  You must call `DMSetUp()` after this call, before using the `DM`.
+  If you wish to use the options database (see the keys above) to change values in the `DMSTAG`, you must call
   `DMSetFromOptions()` after this function but before `DMSetUp()`.
 
-  Level: beginner
-
-.seealso: `DMSTAG`, `DMStagCreate1d()`, `DMStagCreate3d()`, `DMDestroy()`, `DMView()`, `DMCreateGlobalVector()`, `DMCreateLocalVector()`, `DMLocalToGlobalBegin()`, `DMDACreate2d()`
+.seealso: [](chapter_stag), `DMSTAG`, `DMStagCreate1d()`, `DMStagCreate3d()`, `DMDestroy()`, `DMView()`, `DMCreateGlobalVector()`, `DMCreateLocalVector()`, `DMLocalToGlobalBegin()`, `DMDACreate2d()`
 @*/
 PETSC_EXTERN PetscErrorCode DMStagCreate2d(MPI_Comm comm, DMBoundaryType bndx, DMBoundaryType bndy, PetscInt M, PetscInt N, PetscInt m, PetscInt n, PetscInt dof0, PetscInt dof1, PetscInt dof2, DMStagStencilType stencilType, PetscInt stencilWidth, const PetscInt lx[], const PetscInt ly[], DM *dm)
 {
@@ -542,7 +542,7 @@
             idxGlobal[count] = globalOffset + j * entriesPerElementRow + i * stag->entriesPerElement + d;
             idxLocal[count]  = jghost * entriesPerElementRowGhost + ighost * stag->entriesPerElement + d;
           }
-          for (d = 0; d < stag->dof[1]; ++d, ++count) { /* then left ege (skipping bottom face) */
+          for (d = 0; d < stag->dof[1]; ++d, ++count) { /* then left edge (skipping bottom face) */
             idxGlobal[count] = globalOffset + j * entriesPerElementRow + i * stag->entriesPerElement + stag->dof[0] + d;
             idxLocal[count]  = jghost * entriesPerElementRowGhost + ighost * stag->entriesPerElement + stag->dof[0] + stag->dof[1] + d;
           }
@@ -1191,7 +1191,7 @@
           idxGlobal[count] = globalOffset + j * entriesPerElementRow + i * stag->entriesPerElement + d;
           idxLocal[count]  = jghost * entriesPerElementRowGhost + ighost * stag->entriesPerElement + d;
         }
-        for (d = 0; d < stag->dof[1]; ++d, ++count) { /* then left ege (skipping bottom face) */
+        for (d = 0; d < stag->dof[1]; ++d, ++count) { /* then left edge (skipping bottom face) */
           idxGlobal[count] = globalOffset + j * entriesPerElementRow + i * stag->entriesPerElement + stag->dof[0] + d;
           idxLocal[count]  = jghost * entriesPerElementRowGhost + ighost * stag->entriesPerElement + stag->dof[0] + stag->dof[1] + d;
         }
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/dm/impls/stag/stag3d.c petsc-3.18.5+dfsg1/src/dm/impls/stag/stag3d.c
--- petsc-3.18.4+dfsg1/src/dm/impls/stag/stag3d.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/dm/impls/stag/stag3d.c	2023-02-27 23:11:05.000000000 +0100
@@ -20,7 +20,7 @@
 - lx,ly,lz - arrays of local x,y,z element counts, of length equal to m,n,p, summing to M,N,P
 
   Output Parameter:
-. dm - the new DMStag object
+. dm - the new `DMSTAG` object
 
   Options Database Keys:
 + -dm_view - calls `DMViewFromOptions()` at the conclusion of `DMSetUp()`
@@ -35,14 +35,14 @@
 . -stag_boundary_type y <none,ghosted,periodic> - `DMBoundaryType` value
 - -stag_boundary_type z <none,ghosted,periodic> - `DMBoundaryType` value
 
+  Level: beginner
+
   Notes:
-  You must call `DMSetUp()` after this call before using the DM.
-  If you wish to use the options database (see the keys above) to change values in the DMStag, you must call
+  You must call `DMSetUp()` after this call before using the `DM`.
+  If you wish to use the options database (see the keys above) to change values in the `DMSTAG`, you must call
   `DMSetFromOptions()` after this function but before `DMSetUp()`.
 
-  Level: beginner
-
-.seealso: `DMSTAG`, `DMStagCreate1d()`, `DMStagCreate2d()`, `DMDestroy()`, `DMView()`, `DMCreateGlobalVector()`, `DMCreateLocalVector()`, `DMLocalToGlobalBegin()`, `DMDACreate3d()`
+.seealso: [](chapter_stag), `DMSTAG`, `DMStagCreate1d()`, `DMStagCreate2d()`, `DMDestroy()`, `DMView()`, `DMCreateGlobalVector()`, `DMCreateLocalVector()`, `DMLocalToGlobalBegin()`, `DMDACreate3d()`
 @*/
 PETSC_EXTERN PetscErrorCode DMStagCreate3d(MPI_Comm comm, DMBoundaryType bndx, DMBoundaryType bndy, DMBoundaryType bndz, PetscInt M, PetscInt N, PetscInt P, PetscInt m, PetscInt n, PetscInt p, PetscInt dof0, PetscInt dof1, PetscInt dof2, PetscInt dof3, DMStagStencilType stencilType, PetscInt stencilWidth, const PetscInt lx[], const PetscInt ly[], const PetscInt lz[], DM *dm)
 {
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/dm/impls/stag/stag.c petsc-3.18.5+dfsg1/src/dm/impls/stag/stag.c
--- petsc-3.18.4+dfsg1/src/dm/impls/stag/stag.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/dm/impls/stag/stag.c	2023-02-27 23:11:05.000000000 +0100
@@ -892,10 +892,11 @@
 }
 
 /*MC
-  DMSTAG - `"stag"` - A DM object representing a "staggered grid" or a structured cell complex.
+  DMSTAG - `"stag"` - A `DM` object representing a "staggered grid" or a structured cell complex.
 
-  See the [manual chapter on DMStag](/docs/manual/dmstag).
+  Level: beginner
 
+  Notes:
   This implementation parallels the `DMDA` implementation in many ways, but allows degrees of freedom
   to be associated with all "strata" in a logically-rectangular grid.
 
@@ -906,16 +907,15 @@
   To allow easier reading and to some extent more similar code between different-dimensional implementations
   of the same problem, we associate canonical names for each type of point, for each dimension of DMStag.
 
-  * 1-dimensional DMStag objects have vertices (0D) and elements (1D).
-  * 2-dimensional DMStag objects have vertices (0D), faces (1D), and elements (2D).
-  * 3-dimensional DMStag objects have vertices (0D), edges (1D), faces (2D), and elements (3D).
+  * 1-dimensional `DMSTAG` objects have vertices (0D) and elements (1D).
+  * 2-dimensional `DMSTAG` objects have vertices (0D), faces (1D), and elements (2D).
+  * 3-dimensional `DMSTAG` objects have vertices (0D), edges (1D), faces (2D), and elements (3D).
 
-  This naming is reflected when viewing a DMStag object with `DMView()`, and in forming
+  This naming is reflected when viewing a `DMSTAG` object with `DMView()`, and in forming
   convenient options prefixes when creating a decomposition with `DMCreateFieldDecomposition()`.
 
-  Level: beginner
-
-.seealso: `DM`, `DMPRODUCT`, `DMDA`, `DMPLEX`, `DMStagCreate1d()`, `DMStagCreate2d()`, `DMStagCreate3d()`, `DMType`, `DMCreate()`, `DMSetType()`
+.seealso: [](chapter_stag), `DM`, `DMPRODUCT`, `DMDA`, `DMPLEX`, `DMStagCreate1d()`, `DMStagCreate2d()`, `DMStagCreate3d()`, `DMType`, `DMCreate()`,
+          `DMSetType()`, `DMStagVecSplitToDMDA()`
 M*/
 
 PETSC_EXTERN PetscErrorCode DMCreate_Stag(DM dm)
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/dm/impls/stag/stagda.c petsc-3.18.5+dfsg1/src/dm/impls/stag/stagda.c
--- petsc-3.18.4+dfsg1/src/dm/impls/stag/stagda.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/dm/impls/stag/stagda.c	2023-02-27 23:11:05.000000000 +0100
@@ -408,33 +408,30 @@
 }
 
 /*@C
-  DMStagVecSplitToDMDA - create a DMDA and `Vec` from a DMStag and `Vec`
+  DMStagVecSplitToDMDA - create a `DMDA` and `Vec` from a subgrid of a `DMSTAG` and its `Vec`
 
-  Logically Collective
-
-  High-level helper function which accepts a DMStag, a global vector, and location/dof,
-  and generates a corresponding DMDA and Vec.
+  Collective
 
   Input Parameters:
-+ dm - the DMStag object
++ dm - the `DMSTAG` object
 . vec- Vec object associated with `dm`
 . loc - which subgrid to extract (see `DMStagStencilLocation`)
 - c - which component to extract (see note below)
 
   Output Parameters:
-+ pda - the new `DMDA`
++ pda - the `DMDA`
 - pdavec - the new `Vec`
 
+  Level: advanced
+
   Notes:
   If a `c` value of `-k` is provided, the first `k` DOF for that position are extracted,
-  padding with zero values if needbe. If a non-negative value is provided, a single
+  padding with zero values if needed. If a non-negative value is provided, a single
   DOF is extracted.
 
   The caller is responsible for destroying the created `DMDA` and `Vec`.
 
-  Level: advanced
-
-.seealso: `DMSTAG`, `DMDA`, `DMStagMigrateVec()`, `DMStagCreateCompatibleDMStag()`
+.seealso: [](chapter_stag), `DMSTAG`, `DMDA`, `DMStagStencilLocation`, `DM`, `Vec`, `DMStagMigrateVec()`, `DMStagCreateCompatibleDMStag()`
 @*/
 PetscErrorCode DMStagVecSplitToDMDA(DM dm, Vec vec, DMStagStencilLocation loc, PetscInt c, DM *pda, Vec *pdavec)
 {
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/dm/impls/stag/stagintern.c petsc-3.18.5+dfsg1/src/dm/impls/stag/stagintern.c
--- petsc-3.18.4+dfsg1/src/dm/impls/stag/stagintern.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/dm/impls/stag/stagintern.c	2023-02-27 23:11:05.000000000 +0100
@@ -3,9 +3,8 @@
 
 #include <petsc/private/dmstagimpl.h>
 
-/* Note: this is an internal function but we provide a man page in case it's made public */
 /*@C
-  DMStagDuplicateWithoutSetup - duplicate a DMStag object without setting it up
+  DMStagDuplicateWithoutSetup - duplicate a `DMSTAG` object without setting it up
 
   Collective
 
@@ -16,19 +15,21 @@
   Output Parameter:
 . newdm  - The new `DM` object
 
+  Level: developer
+
   Developer Notes:
-  Copies over all of the state for a DMStag object, except that which is
+  Copies over all of the state for a `DMSTAG` object, except that which is
   populated during `DMSetUp()`.  This function is used within (all) other
   functions that require an un-setup clone, which is common when duplicating,
-  coarsening, refining, or creating compatible DMs with different fields.  For
+  coarsening, refining, or creating compatible `DM`s with different fields.  For
   this reason it also accepts an MPI communicator as an argument (though note
   that at the time of this writing, implementations of `DMCoarsen()` and `DMRefine()`
   don't usually seem to respect their "comm" arguments). This function could be
-  pushed up to the general DM API (and perhaps given a different name).
+  pushed up to the general `DM` API (and perhaps given a different name).
 
-  Level: developer
+  This is an internal function but we provide a man page in case it's made public
 
-  .seealso: `DMClone()`, `DMStagCreateCompatibleDMStag()`, `DMCoarsen()`, `DMRefine()`
+.seealso: [](chapter_stag), `DMSTAG`, `DM`, `DMClone()`, `DMStagCreateCompatibleDMStag()`, `DMCoarsen()`, `DMRefine()`
 @*/
 PetscErrorCode DMStagDuplicateWithoutSetup(DM dm, MPI_Comm comm, DM *newdm)
 {
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/dm/impls/stag/stagmulti.c petsc-3.18.5+dfsg1/src/dm/impls/stag/stagmulti.c
--- petsc-3.18.4+dfsg1/src/dm/impls/stag/stagmulti.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/dm/impls/stag/stagmulti.c	2023-02-27 23:11:05.000000000 +0100
@@ -2,7 +2,7 @@
 #include <petsc/private/dmstagimpl.h>
 
 /*@C
-    DMStagRestrictSimple - restricts data from a fine to a coarse DMStag, in the simplest way
+    DMStagRestrictSimple - restricts data from a fine to a coarse `DMSTAG`, in the simplest way
 
     Values on coarse cells are averages of all fine cells that they cover.
     Thus, values on vertices are injected, values on edges are averages
@@ -10,17 +10,16 @@
     d dimensions are averages of $2^d$ underlying elements.
 
     Input Parameters:
-+   dmf - fine DM
-.   xf - data on fine DM
--   dmc - coarse DM
++   dmf - fine `DM`
+.   xf - data on fine `DM`
+-   dmc - coarse `DM`
 
     Output Parameter:
-.   xc - data on coarse DM
+.   xc - data on coarse `DM`
 
     Level: advanced
 
-.seealso: DMRestrict(), DMCoarsen(), DMSTAG, DMCreateInjection()
-
+.seealso: [](chapter_stag), `DMSTAG`, `DM`, `DMRestrict()`, `DMCoarsen()`, `DMSTAG`, `DMCreateInjection()`
 @*/
 PetscErrorCode DMStagRestrictSimple(DM dmf, Vec xf, DM dmc, Vec xc)
 {
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/dm/impls/stag/stagstencil.c petsc-3.18.5+dfsg1/src/dm/impls/stag/stagstencil.c
--- petsc-3.18.4+dfsg1/src/dm/impls/stag/stagstencil.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/dm/impls/stag/stagstencil.c	2023-02-27 23:11:05.000000000 +0100
@@ -8,12 +8,12 @@
 const char *const DMStagStencilLocations[] = {"NONE", "BACK_DOWN_LEFT", "BACK_DOWN", "BACK_DOWN_RIGHT", "BACK_LEFT", "BACK", "BACK_RIGHT", "BACK_UP_LEFT", "BACK_UP", "BACK_UP_RIGHT", "DOWN_LEFT", "DOWN", "DOWN_RIGHT", "LEFT", "ELEMENT", "RIGHT", "UP_LEFT", "UP", "UP_RIGHT", "FRONT_DOWN_LEFT", "FRONT_DOWN", "FRONT_DOWN_RIGHT", "FRONT_LEFT", "FRONT", "FRONT_RIGHT", "FRONT_UP_LEFT", "FRONT_UP", "FRONT_UP_RIGHT", "DMStagStencilLocation", "", NULL};
 
 /*@C
-  DMStagCreateISFromStencils - Create an `IS`, using global numberings, for a subset of DOF in a DMStag object
+  DMStagCreateISFromStencils - Create an `IS`, using global numberings, for a subset of DOF in a `DMSTAG` object
 
   Collective
 
   Input Parameters:
-+ dm - the DMStag object
++ dm - the `DMStag` object
 . n_stencil - the number of stencils provided
 - stencils - an array of `DMStagStencil` objects (`i`, `j`, and `k` are ignored)
 
@@ -25,7 +25,7 @@
 
   Level: advanced
 
-.seealso: `DMSTAG`, `IS`, `DMStagStencil`, `DMCreateGlobalVector`
+.seealso: [](chapter_stag), `DMSTAG`, `IS`, `DMStagStencil`, `DMCreateGlobalVector`
 @*/
 PetscErrorCode DMStagCreateISFromStencils(DM dm, PetscInt n_stencil, DMStagStencil *stencils, IS *is)
 {
@@ -121,12 +121,12 @@
 }
 
 /*@C
-  DMStagGetLocationDOF - Get number of DOF associated with a given point in a DMStag grid
+  DMStagGetLocationDOF - Get number of DOF associated with a given point in a `DMSTAG` grid
 
   Not Collective
 
   Input Parameters:
-+ dm - the DMStag object
++ dm - the `DMSTAG` object
 - loc - grid point (see `DMStagStencilLocation`)
 
   Output Parameter:
@@ -134,7 +134,7 @@
 
   Level: intermediate
 
-.seealso: `DMSTAG`, `DMStagStencilLocation`, `DMStagStencil`, `DMDAGetDof()`
+.seealso: [](chapter_stag), `DMSTAG`, `DMStagStencilLocation`, `DMStagStencil`, `DMDAGetDof()`
 @*/
 PetscErrorCode DMStagGetLocationDOF(DM dm, DMStagStencilLocation loc, PetscInt *dof)
 {
@@ -289,7 +289,7 @@
   Not Collective
 
   Input Parameters:
-+ dm - the DMStag object
++ dm - the `DMSTAG` object
 . mat - the matrix
 . nRow - number of rows
 . posRow - grid locations (including components) of rows
@@ -301,7 +301,7 @@
 
   Level: advanced
 
-.seealso: `DMSTAG`, `DMStagStencil`, `DMStagStencilLocation`, `DMStagVecGetValuesStencil()`, `DMStagVecSetValuesStencil()`, `DMStagMatSetValuesStencil()`, `MatSetValuesStencil()`, `MatAssemblyBegin()`, `MatAssemblyEnd()`, `DMCreateMatrix()`
+.seealso: [](chapter_stag), `DMSTAG`, `DMStagStencil`, `DMStagStencilLocation`, `DMStagVecGetValuesStencil()`, `DMStagVecSetValuesStencil()`, `DMStagMatSetValuesStencil()`, `MatSetValuesStencil()`, `MatAssemblyBegin()`, `MatAssemblyEnd()`, `DMCreateMatrix()`
 @*/
 PetscErrorCode DMStagMatGetValuesStencil(DM dm, Mat mat, PetscInt nRow, const DMStagStencil *posRow, PetscInt nCol, const DMStagStencil *posCol, PetscScalar *val)
 {
@@ -326,7 +326,7 @@
   Not Collective
 
   Input Parameters:
-+ dm - the DMStag object
++ dm - the `DMSTAG` object
 . mat - the matrix
 . nRow - number of rows
 . posRow - grid locations (including components) of rows
@@ -340,7 +340,7 @@
 
   Level: intermediate
 
-.seealso: `DMSTAG`, `DMStagStencil`, `DMStagStencilLocation`, `DMStagVecGetValuesStencil()`, `DMStagVecSetValuesStencil()`, `DMStagMatGetValuesStencil()`, `MatSetValuesStencil()`, `MatAssemblyBegin()`, `MatAssemblyEnd()`, `DMCreateMatrix()`
+.seealso: [](chapter_stag), `DMSTAG`, `DMStagStencil`, `DMStagStencilLocation`, `DMStagVecGetValuesStencil()`, `DMStagVecSetValuesStencil()`, `DMStagMatGetValuesStencil()`, `MatSetValuesStencil()`, `MatAssemblyBegin()`, `MatAssemblyEnd()`, `DMCreateMatrix()`
 @*/
 PetscErrorCode DMStagMatSetValuesStencil(DM dm, Mat mat, PetscInt nRow, const DMStagStencil *posRow, PetscInt nCol, const DMStagStencil *posCol, const PetscScalar *val, InsertMode insertMode)
 {
@@ -358,13 +358,13 @@
 }
 
 /*@C
-  DMStagStencilToIndexLocal - Convert an array of DMStagStencil objects to an array of indices into a local vector.
+  DMStagStencilToIndexLocal - Convert an array of `DMStagStenci`l objects to an array of indices into a local vector.
 
   Not Collective
 
   Input Parameters:
-+ dm - the DMStag object
-. dim - the dimension of the DMStag object
++ dm - the `DMSTAG` object
+. dim - the dimension of the `DMSTAG` object
 . n - the number of `DMStagStencil` objects
 - pos - an array of `n` `DMStagStencil` objects
 
@@ -381,7 +381,7 @@
 
   Level: developer
 
-.seealso: `DMSTAG`, `DMStagStencilLocation`, `DMStagStencil`, `DMGetLocalVector`, `DMCreateLocalVector`
+.seealso: [](chapter_stag), `DMSTAG`, `DMStagStencilLocation`, `DMStagStencil`, `DMGetLocalVector`, `DMCreateLocalVector`
 @*/
 PetscErrorCode DMStagStencilToIndexLocal(DM dm, PetscInt dim, PetscInt n, const DMStagStencil *pos, PetscInt *ix)
 {
@@ -427,7 +427,7 @@
   Not Collective
 
   Input Parameters:
-+ dm - the DMStag object
++ dm - the `DMSTAG` object
 . vec - the vector object
 . n - the number of values to obtain
 - pos - locations to obtain values from (as an array of `DMStagStencil` values)
@@ -444,7 +444,7 @@
 
   Level: advanced
 
-.seealso: `DMSTAG`, `DMStagStencil`, `DMStagStencilLocation`, `DMStagVecSetValuesStencil()`, `DMStagMatSetValuesStencil()`, `DMStagVecGetArray()`
+.seealso: [](chapter_stag), `DMSTAG`, `DMStagStencil`, `DMStagStencilLocation`, `DMStagVecSetValuesStencil()`, `DMStagMatSetValuesStencil()`, `DMStagVecGetArray()`
 @*/
 PetscErrorCode DMStagVecGetValuesStencil(DM dm, Vec vec, PetscInt n, const DMStagStencil *pos, PetscScalar *val)
 {
@@ -468,13 +468,13 @@
 }
 
 /*@C
-  DMStagVecSetValuesStencil - Set Vec values using global grid indexing
+  DMStagVecSetValuesStencil - Set `Vec` values using global grid indexing
 
   Not Collective
 
   Input Parameters:
-+ dm - the DMStag object
-. vec - the Vec
++ dm - the `DMSTAG` object
+. vec - the `Vec`
 . n - the number of values to set
 . pos - the locations to set values, as an array of `DMStagStencil` structs
 . val - the values to set
@@ -488,7 +488,7 @@
 
   Level: advanced
 
-.seealso: `DMSTAG`, `DMStagStencil`, `DMStagStencilLocation`, `DMStagVecGetValuesStencil()`, `DMStagMatSetValuesStencil()`, `DMCreateGlobalVector()`, `DMGetLocalVector()`, `DMStagVecGetArray()`
+.seealso: [](chapter_stag), `DMSTAG`, `Vec`, `DMStagStencil`, `DMStagStencilLocation`, `DMStagVecGetValuesStencil()`, `DMStagMatSetValuesStencil()`, `DMCreateGlobalVector()`, `DMGetLocalVector()`, `DMStagVecGetArray()`
 @*/
 PetscErrorCode DMStagVecSetValuesStencil(DM dm, Vec vec, PetscInt n, const DMStagStencil *pos, const PetscScalar *val, InsertMode insertMode)
 {
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/dm/impls/stag/stagutils.c petsc-3.18.5+dfsg1/src/dm/impls/stag/stagutils.c
--- petsc-3.18.4+dfsg1/src/dm/impls/stag/stagutils.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/dm/impls/stag/stagutils.c	2023-02-27 23:11:05.000000000 +0100
@@ -10,14 +10,16 @@
   Not Collective
 
   Input Parameter:
-. dm - the DMStag object
+. dm - the `DMSTAG` object
 
   Output Parameters:
-. boundaryTypeX,boundaryTypeY,boundaryTypeZ - boundary types
++ boundaryTypeX - boundary type for x direction
+. boundaryTypeY - boundary type for y direction, not set for one dimensional problems
+- boundaryTypeZ - boundary type for z direction, not set for one and two dimensional problems
 
   Level: intermediate
 
-.seealso: `DMSTAG`
+.seealso: [](chapter_stag), `DMSTAG`, `DMBoundaryType``
 @*/
 PetscErrorCode DMStagGetBoundaryTypes(DM dm, DMBoundaryType *boundaryTypeX, DMBoundaryType *boundaryTypeY, DMBoundaryType *boundaryTypeZ)
 {
@@ -97,27 +99,30 @@
 
   Logically Collective
 
+  Input Parameter:
+. dm - the `DMSTAG` object
+
+  Output Parameters:
++ arrX - local 1D coordinate arrays for x direction
+. arrY - local 1D coordinate arrays for y direction, not set for one dimensional problems
+- arrZ - local 1D coordinate arrays for z direction, not set for one and two dimensional problems
+
+  Level: intermediate
+
+  Notes:
   A high-level helper function to quickly extract local coordinate arrays.
 
   Note that 2-dimensional arrays are returned. See
   `DMStagVecGetArray()`, which is called internally to produce these arrays
   representing coordinates on elements and vertices (element boundaries)
-  for a 1-dimensional DMStag in each coordinate direction.
+  for a 1-dimensional `DMSTAG` in each coordinate direction.
 
   One should use `DMStagGetProductCoordinateLocationSlot()` to determine appropriate
   indices for the second dimension in these returned arrays. This function
   checks that the coordinate array is a suitable product of 1-dimensional
-  DMStag objects.
-
-  Input Parameter:
-. dm - the DMStag object
-
-  Output Parameters:
-. arrX,arrY,arrZ - local 1D coordinate arrays
-
-  Level: intermediate
+  `DMSTAG` objects.
 
-.seealso: `DMSTAG`, `DMPRODUCT`, `DMStagGetProductCoordinateArraysRead()`, `DMStagSetUniformCoordinates()`, `DMStagSetUniformCoordinatesProduct()`, `DMStagGetProductCoordinateLocationSlot()`
+.seealso: [](chapter_stag), `DMSTAG`, `DMPRODUCT`, `DMStagGetProductCoordinateArraysRead()`, `DMStagSetUniformCoordinates()`, `DMStagSetUniformCoordinatesProduct()`, `DMStagGetProductCoordinateLocationSlot()`
 @*/
 PetscErrorCode DMStagGetProductCoordinateArrays(DM dm, void *arrX, void *arrY, void *arrZ)
 {
@@ -131,17 +136,20 @@
 
   Logically Collective
 
-  See the man page for `DMStagGetProductCoordinateArrays()` for more information.
-
   Input Parameter:
-. dm - the DMStag object
+. dm - the `DMSTAG` object
 
   Output Parameters:
-. arrX,arrY,arrZ - local 1D coordinate arrays
++ arrX - local 1D coordinate arrays for x direction
+. arrY - local 1D coordinate arrays for y direction, not set for one dimensional problems
+- arrZ - local 1D coordinate arrays for z direction, not set for one and two dimensional problems
 
   Level: intermediate
 
-.seealso: `DMSTAG`, `DMPRODUCT`, `DMStagGetProductCoordinateArrays()`, `DMStagSetUniformCoordinates()`, `DMStagSetUniformCoordinatesProduct()`, `DMStagGetProductCoordinateLocationSlot()`
+  Note:
+  See `DMStagGetProductCoordinateArrays()` for more information.
+
+.seealso: [](chapter_stag), `DMSTAG`, `DMPRODUCT`, `DMStagGetProductCoordinateArrays()`, `DMStagSetUniformCoordinates()`, `DMStagSetUniformCoordinatesProduct()`, `DMStagGetProductCoordinateLocationSlot()`
 @*/
 PetscErrorCode DMStagGetProductCoordinateArraysRead(DM dm, void *arrX, void *arrY, void *arrZ)
 {
@@ -155,28 +163,28 @@
 
   Not Collective
 
-  High-level helper function to get slot indices for 1D coordinate DMs,
-  for use with `DMStagGetProductCoordinateArrays()` and related functions.
-
   Input Parameters:
-+ dm - the DMStag object
++ dm - the `DMSTAG` object
 - loc - the grid location
 
   Output Parameter:
 . slot - the index to use in local arrays
 
+  Level: intermediate
+
   Notes:
+  High-level helper function to get slot indices for 1D coordinate `DM`s,
+  for use with `DMStagGetProductCoordinateArrays()` and related functions.
+
   For `loc`, one should use `DMSTAG_LEFT`, `DMSTAG_ELEMENT`, or `DMSTAG_RIGHT` for "previous", "center" and "next"
   locations, respectively, in each dimension.
   One can equivalently use `DMSTAG_DOWN` or `DMSTAG_BACK` in place of `DMSTAG_LEFT`,
   and `DMSTAG_UP` or `DMSTACK_FRONT` in place of `DMSTAG_RIGHT`;
 
   This function checks that the coordinates are actually set up so that using the
-  slots from any of the 1D coordinate sub-DMs are valid for all the 1D coordinate sub-DMs.
-
-  Level: intermediate
+  slots from any of the 1D coordinate sub-`DM`s are valid for all the 1D coordinate sub-`DM`s.
 
-.seealso: `DMSTAG`, `DMPRODUCT`, `DMStagGetProductCoordinateArrays()`, `DMStagGetProductCoordinateArraysRead()`, `DMStagSetUniformCoordinates()`
+.seealso: [](chapter_stag), `DMSTAG`, `DMPRODUCT`, `DMStagGetProductCoordinateArrays()`, `DMStagGetProductCoordinateArraysRead()`, `DMStagSetUniformCoordinates()`
 @*/
 PETSC_EXTERN PetscErrorCode DMStagGetProductCoordinateLocationSlot(DM dm, DMStagStencilLocation loc, PetscInt *slot)
 {
@@ -226,7 +234,7 @@
   Not Collective
 
   Input Parameter:
-. dm - the DMStag object
+. dm - the `DMSTAG` object
 
   Output Parameters:
 + x     - starting element index in first direction
@@ -239,6 +247,8 @@
 . nExtray - number of extra partial elements in second direction
 - nExtraz - number of extra partial elements in third direction
 
+  Level: beginner
+
   Notes:
   Arguments corresponding to higher dimensions are ignored for 1D and 2D grids. These arguments may be set to NULL in this case.
 
@@ -246,9 +256,7 @@
   The value is 1 on right, top, and front non-periodic domain ("physical") boundaries,
   in the x, y, and z directions respectively, and otherwise 0.
 
-  Level: beginner
-
-.seealso: `DMSTAG`, `DMStagGetGhostCorners()`, `DMDAGetCorners()`
+.seealso: [](chapter_stag), `DMSTAG`, `DMStagGetGhostCorners()`, `DMDAGetCorners()`
 @*/
 PetscErrorCode DMStagGetCorners(DM dm, PetscInt *x, PetscInt *y, PetscInt *z, PetscInt *m, PetscInt *n, PetscInt *p, PetscInt *nExtrax, PetscInt *nExtray, PetscInt *nExtraz)
 {
@@ -274,7 +282,7 @@
   Not Collective
 
   Input Parameter:
-. dm - the DMStag object
+. dm - the `DMSTAG` object
 
   Output Parameters:
 + dof0 - the number of points per 0-cell (vertex/node)
@@ -284,7 +292,7 @@
 
   Level: beginner
 
-.seealso: `DMSTAG`, `DMStagGetCorners()`, `DMStagGetGhostCorners()`, `DMStagGetGlobalSizes()`, `DMStagGetStencilWidth()`, `DMStagGetBoundaryTypes()`, `DMStagGetLocationDOF()`, `DMDAGetDof()`
+.seealso: [](chapter_stag), `DMSTAG`, `DMStagGetCorners()`, `DMStagGetGhostCorners()`, `DMStagGetGlobalSizes()`, `DMStagGetStencilWidth()`, `DMStagGetBoundaryTypes()`, `DMStagGetLocationDOF()`, `DMDAGetDof()`
 @*/
 PetscErrorCode DMStagGetDOF(DM dm, PetscInt *dof0, PetscInt *dof1, PetscInt *dof2, PetscInt *dof3)
 {
@@ -305,7 +313,7 @@
   Not Collective
 
   Input Parameter:
-. dm - the DMStag object
+. dm - the `DMSTAG` object
 
   Output Parameters:
 + x - the starting element index in the first direction
@@ -315,12 +323,12 @@
 . n - the element width in the second direction
 - p - the element width in the third direction
 
-  Notes:
-  Arguments corresponding to higher dimensions are ignored for 1D and 2D grids. These arguments may be set to `NULL` in this case.
-
   Level: beginner
 
-.seealso: `DMSTAG`, `DMStagGetCorners()`, `DMDAGetGhostCorners()`
+  Note:
+  Arguments corresponding to higher dimensions are ignored for 1D and 2D grids. These arguments may be set to `NULL` in this case.
+
+.seealso: [](chapter_stag), `DMSTAG`, `DMStagGetCorners()`, `DMDAGetGhostCorners()`
 @*/
 PetscErrorCode DMStagGetGhostCorners(DM dm, PetscInt *x, PetscInt *y, PetscInt *z, PetscInt *m, PetscInt *n, PetscInt *p)
 {
@@ -343,17 +351,19 @@
   Not Collective
 
   Input Parameter:
-. dm - the DMStag object
+. dm - the `DMSTAG` object
 
   Output Parameters:
-. M,N,P - global element counts in each direction
-
-  Notes:
-  Arguments corresponding to higher dimensions are ignored for 1D and 2D grids. These arguments may be set to `NULL` in this case.
++ M - global element counts in the x direction
+. N - global element counts in the y direction
+- P - global element counts in the z direction
 
   Level: beginner
 
-.seealso: `DMSTAG`, `DMStagGetLocalSizes()`, `DMDAGetInfo()`
+  Note:
+  Arguments corresponding to higher dimensions are ignored for 1D and 2D grids. These arguments may be set to `NULL` in this case.
+
+.seealso: [](chapter_stag), `DMSTAG`, `DMStagGetLocalSizes()`, `DMDAGetInfo()`
 @*/
 PetscErrorCode DMStagGetGlobalSizes(DM dm, PetscInt *M, PetscInt *N, PetscInt *P)
 {
@@ -373,17 +383,19 @@
   Not Collective
 
   Input Parameter:
-. dm - the DMStag object
+. dm - the `DMSTAG` object
 
   Output Parameters:
-. isFirstRank0,isFirstRank1,isFirstRank2 - whether this rank is first in each direction
++ isFirstRank0 - whether this rank is first in the x direction
+. isFirstRank1 - whether this rank is first in the y direction
+- isFirstRank2 - whether this rank is first in the z direction
 
   Level: intermediate
 
-  Notes:
+  Note:
   Arguments corresponding to higher dimensions are ignored for 1D and 2D grids. These arguments may be set to `NULL` in this case.
 
-.seealso: `DMSTAG`, `DMStagGetIsLastRank()`
+.seealso: [](chapter_stag), `DMSTAG`, `DMStagGetIsLastRank()`
 @*/
 PetscErrorCode DMStagGetIsFirstRank(DM dm, PetscBool *isFirstRank0, PetscBool *isFirstRank1, PetscBool *isFirstRank2)
 {
@@ -403,18 +415,19 @@
   Not Collective
 
   Input Parameter:
-. dm - the DMStag object
+. dm - the `DMSTAG` object
 
   Output Parameters:
-. isLastRank0,isLastRank1,isLastRank2 - whether this rank is last in each direction
++ isFirstRank0 - whether this rank is last in the x direction
+. isFirstRank1 - whether this rank is last in the y direction
+- isFirstRank2 - whether this rank is last in the z direction
 
   Level: intermediate
 
-  Notes:
+  Note:
   Arguments corresponding to higher dimensions are ignored for 1D and 2D grids. These arguments may be set to `NULL` in this case.
-  Level: intermediate
 
-.seealso: `DMSTAG`, `DMStagGetIsFirstRank()`
+.seealso: [](chapter_stag), `DMSTAG`, `DMStagGetIsFirstRank()`
 @*/
 PetscErrorCode DMStagGetIsLastRank(DM dm, PetscBool *isLastRank0, PetscBool *isLastRank1, PetscBool *isLastRank2)
 {
@@ -434,18 +447,19 @@
   Not Collective
 
   Input Parameter:
-. dm - the DMStag object
+. dm - the `DMSTAG` object
 
   Output Parameters:
-. m,n,p - local element counts (excluding ghosts) in each direction
-
-  Notes:
-  Arguments corresponding to higher dimensions are ignored for 1D and 2D grids. These arguments may be set to `NULL` in this case.
-  Level: intermediate
++ m - local element counts (excluding ghosts) in the x direction
+. n - local element counts (excluding ghosts) in the y direction
+- p - local element counts (excluding ghosts) in the z direction
 
   Level: beginner
 
-.seealso: `DMSTAG`, `DMStagGetGlobalSizes()`, `DMStagGetDOF()`, `DMStagGetNumRanks()`, `DMDAGetLocalInfo()`
+  Note:
+  Arguments corresponding to higher dimensions are ignored for 1D and 2D grids. These arguments may be set to `NULL` in this case.
+
+.seealso: [](chapter_stag), `DMSTAG`, `DMStagGetGlobalSizes()`, `DMStagGetDOF()`, `DMStagGetNumRanks()`, `DMDAGetLocalInfo()`
 @*/
 PetscErrorCode DMStagGetLocalSizes(DM dm, PetscInt *m, PetscInt *n, PetscInt *p)
 {
@@ -465,18 +479,16 @@
   Not Collective
 
   Input Parameter:
-. dm - the DMStag object
+. dm - the `DMSTAG` object
 
   Output Parameters:
-. nRanks0,nRanks1,nRanks2 - number of ranks in each direction in the grid decomposition
-
-  Notes:
-  Arguments corresponding to higher dimensions are ignored for 1D and 2D grids. These arguments may be set to `NULL` in this case.
-  Level: intermediate
++ nRanks0 - number of ranks in the x direction in the grid decomposition
+. nRanks1 - number of ranks in the y direction in the grid decomposition
+- nRanks2 - number of ranks in the z direction in the grid decomposition
 
-  Level: beginner
+ Level: intermediate
 
-.seealso: `DMSTAG`, `DMStagGetGlobalSizes()`, `DMStagGetLocalSize()`, `DMStagSetNumRanks()`, `DMDAGetInfo()`
+.seealso: [](chapter_stag), `DMSTAG`, `DMStagGetGlobalSizes()`, `DMStagGetLocalSize()`, `DMStagSetNumRanks()`, `DMDAGetInfo()`
 @*/
 PetscErrorCode DMStagGetNumRanks(DM dm, PetscInt *nRanks0, PetscInt *nRanks1, PetscInt *nRanks2)
 {
@@ -496,20 +508,20 @@
   Not Collective
 
   Input Parameter:
-. dm - the DMStag object
+. dm - the `DMSTAG` object
 
-  Output Parameters:
+  Output Parameter:
 . entries - number of rank-native entries in the global representation
 
+  Level: developer
+
   Note:
   This is the number of entries on this rank for a global vector associated with `dm`.
   That is, it is value of `size` returned by `VecGetLocalSize(vec,&size)` when
   `DMCreateGlobalVector(dm,&vec) is used to create a `Vec`. Users would typically
   use these functions.
 
-  Level: developer
-
-.seealso: `DMSTAG`, `DMStagGetDOF()`, `DMStagGetEntriesLocal()`, `DMStagGetEntriesPerElement()`, `DMCreateLocalVector()`
+.seealso: [](chapter_stag), `DMSTAG`, `DMStagGetDOF()`, `DMStagGetEntriesLocal()`, `DMStagGetEntriesPerElement()`, `DMCreateLocalVector()`
 @*/
 PetscErrorCode DMStagGetEntries(DM dm, PetscInt *entries)
 {
@@ -527,20 +539,20 @@
   Not Collective
 
   Input Parameter:
-. dm - the DMStag object
+. dm - the `DMSTAG` object
 
-  Output Parameters:
+  Output Parameter:
 . entries - number of entries in the local representation
 
+  Level: developer
+
   Note:
   This is the number of entries on this rank in the local representation.
   That is, it is value of `size` returned by `VecGetSize(vec,&size)` or
   `VecGetLocalSize(vec,&size)` when `DMCreateLocalVector(dm,&vec)` is used to
   create a `Vec`. Users would typically use these functions.
 
-  Level: developer
-
-.seealso: DMSTAG, DMStagGetDOF(), DMStagGetEntries(), DMStagGetEntriesPerElement(), DMCreateLocalVector()
+.seealso: [](chapter_stag), DMSTAG, DMStagGetDOF(), DMStagGetEntries(), DMStagGetEntriesPerElement(), DMCreateLocalVector()
 @*/
 PetscErrorCode DMStagGetEntriesLocal(DM dm, PetscInt *entries)
 {
@@ -558,18 +570,18 @@
   Not Collective
 
   Input Parameter:
-. dm - the DMStag object
+. dm - the `DMSTAG` object
 
-  Output Parameters:
+  Output Parameter:
 . entriesPerElement - number of entries associated with each element in the local representation
 
+  Level: developer
+
   Notes:
   This is the natural block size for most local operations. In 1D it is equal to `dof0` $+$ `dof1`,
   in 2D it is equal to `dof0` $+ 2$`dof1` $+$ `dof2`, and in 3D it is equal to `dof0` $+ 3$`dof1` $+ 3$`dof2` $+$ `dof3`
 
-  Level: developer
-
-.seealso: `DMSTAG`, `DMStagGetDOF()`
+.seealso: [](chapter_stag), `DMSTAG`, `DMStagGetDOF()`
 @*/
 PetscErrorCode DMStagGetEntriesPerElement(DM dm, PetscInt *entriesPerElement)
 {
@@ -587,14 +599,14 @@
   Not Collective
 
   Input Parameter:
-. dm - the DMStag object
+. dm - the `DMSTAG` object
 
   Output Parameter:
 . stencilType - the elementwise ghost stencil type: `DMSTAG_STENCIL_BOX`, `DMSTAG_STENCIL_STAR`, or `DMSTAG_STENCIL_NONE`
 
   Level: beginner
 
-.seealso: `DMSTAG`, `DMStagSetStencilType()`, `DMStagGetStencilWidth`, `DMStagStencilType`
+.seealso: [](chapter_stag), `DMSTAG`, `DMStagSetStencilType()`, `DMStagGetStencilWidth`, `DMStagStencilType`
 @*/
 PetscErrorCode DMStagGetStencilType(DM dm, DMStagStencilType *stencilType)
 {
@@ -612,14 +624,14 @@
   Not Collective
 
   Input Parameter:
-. dm - the DMStag object
+. dm - the `DMSTAG` object
 
-  Output Parameters:
+  Output Parameter:
 . stencilWidth - stencil/halo/ghost width in elements
 
   Level: beginner
 
-.seealso: `DMSTAG`, `DMStagSetStencilWidth()`, `DMStagGetStencilType()`, `DMDAGetStencilType()`
+.seealso: [](chapter_stag), `DMSTAG`, `DMStagSetStencilWidth()`, `DMStagGetStencilType()`, `DMDAGetStencilType()`
 @*/
 PetscErrorCode DMStagGetStencilWidth(DM dm, PetscInt *stencilWidth)
 {
@@ -637,24 +649,24 @@
   Not Collective
 
   Input Parameter:
-.     dm - the DMStag object
+.     dm - the `DMSTAG` object
 
   Output Parameters:
 +     lx - ownership along x direction (optional)
 .     ly - ownership along y direction (optional)
 -     lz - ownership along z direction (optional)
 
+  Level: intermediate
+
   Notes:
   These correspond to the optional final arguments passed to `DMStagCreate1d()`, `DMStagCreate2d()`, and `DMStagCreate3d()`.
 
   Arguments corresponding to higher dimensions are ignored for 1D and 2D grids. These arguments may be set to `NULL` in this case.
 
   In C you should not free these arrays, nor change the values in them.
-  They will only have valid values while the DMStag they came from still exists (has not been destroyed).
-
-  Level: intermediate
+  They will only have valid values while the `DMSTAG` they came from still exists (has not been destroyed).
 
-.seealso: `DMSTAG`, `DMStagSetGlobalSizes()`, `DMStagSetOwnershipRanges()`, `DMStagCreate1d()`, `DMStagCreate2d()`, `DMStagCreate3d()`, `DMDAGetOwnershipRanges()`
+.seealso: [](chapter_stag), `DMSTAG`, `DMStagSetGlobalSizes()`, `DMStagSetOwnershipRanges()`, `DMStagCreate1d()`, `DMStagCreate2d()`, `DMStagCreate3d()`, `DMDAGetOwnershipRanges()`
 @*/
 PetscErrorCode DMStagGetOwnershipRanges(DM dm, const PetscInt *lx[], const PetscInt *ly[], const PetscInt *lz[])
 {
@@ -669,27 +681,30 @@
 }
 
 /*@C
-  DMStagCreateCompatibleDMStag - create a compatible DMStag with different dof/stratum
+  DMStagCreateCompatibleDMStag - create a compatible `DMSTAG` with different dof/stratum
 
   Collective
 
   Input Parameters:
-+ dm - the DMStag object
-- dof0,dof1,dof2,dof3 - number of dof on each stratum in the new DMStag
++ dm - the `DMSTAG` object
+. dof0 - number of dof on the first stratum in the new `DMSTAG`
+. dof1 - number of dof on the second stratum in the new `DMSTAG`
+. dof2 - number of dof on the third stratum in the new `DMSTAG`
+- dof3 - number of dof on the fourth stratum in the new `DMSTAG`
 
-  Output Parameters:
-. newdm - the new, compatible DMStag
+  Output Parameter:
+. newdm - the new, compatible `DMSTAG`
+
+  Level: intermediate
 
   Notes:
   DOF supplied for strata too big for the dimension are ignored; these may be set to `0`.
-  For example, for a 2-dimensional DMStag, `dof2` sets the number of dof per element,
-  and `dof3` is unused. For a 3-dimensional DMStag, `dof3` sets the number of DOF per element.
+  For example, for a 2-dimensional `DMSTAG`, `dof2` sets the number of dof per element,
+  and `dof3` is unused. For a 3-dimensional `DMSTAG`, `dof3` sets the number of DOF per element.
 
   In contrast to `DMDACreateCompatibleDMDA()`, coordinates are not reused.
 
-  Level: intermediate
-
-.seealso: `DMSTAG`, `DMDACreateCompatibleDMDA()`, `DMGetCompatibility()`, `DMStagMigrateVec()`
+.seealso: [](chapter_stag), `DMSTAG`, `DMDACreateCompatibleDMDA()`, `DMGetCompatibility()`, `DMStagMigrateVec()`
 @*/
 PetscErrorCode DMStagCreateCompatibleDMStag(DM dm, PetscInt dof0, PetscInt dof1, PetscInt dof2, PetscInt dof3, DM *newdm)
 {
@@ -707,21 +722,21 @@
   Not Collective
 
   Input Parameters:
-+ dm - the DMStag object
++ dm - the `DMSTAG` object
 . loc - location relative to an element
 - c - component
 
   Output Parameter:
 . slot - index to use
 
+  Level: beginner
+
   Notes:
   Provides an appropriate index to use with `DMStagVecGetArray()` and friends.
   This is required so that the user doesn't need to know about the ordering of
   dof associated with each local element.
 
-  Level: beginner
-
-.seealso: `DMSTAG`, `DMStagVecGetArray()`, `DMStagVecGetArrayRead()`, `DMStagGetDOF()`, `DMStagGetEntriesPerElement()`
+.seealso: [](chapter_stag), `DMSTAG`, `DMStagVecGetArray()`, `DMStagVecGetArrayRead()`, `DMStagGetDOF()`, `DMStagGetEntriesPerElement()`
 @*/
 PetscErrorCode DMStagGetLocationSlot(DM dm, DMStagStencilLocation loc, PetscInt c, PetscInt *slot)
 {
@@ -740,24 +755,24 @@
 }
 
 /*@C
-  DMStagMigrateVec - transfer a vector associated with a DMStag to a vector associated with a compatible DMStag
+  DMStagMigrateVec - transfer a vector associated with a `DMSTAG` to a vector associated with a compatible `DMSTAG`
 
   Collective
 
   Input Parameters:
-+ dm - the source DMStag object
++ dm - the source `DMSTAG` object
 . vec - the source vector, compatible with `dm`
-. dmTo - the compatible destination DMStag object
+. dmTo - the compatible destination `DMSTAG` object
 - vecTo - the destination vector, compatible with `dmTo`
 
+  Level: advanced
+
   Notes:
   Extra dof are ignored, and unfilled dof are zeroed.
   Currently only implemented to migrate global vectors to global vectors.
-  For the defintion of compatibility of `DM`s, see `DMGetCompatibility()`.
+  For the definition of compatibility of `DM`s, see `DMGetCompatibility()`.
 
-  Level: advanced
-
-.seealso: `DMSTAG`, `DMStagCreateCompatibleDMStag()`, `DMGetCompatibility()`, `DMStagVecSplitToDMDA()`
+.seealso: [](chapter_stag), `DMSTAG`, `DMStagCreateCompatibleDMStag()`, `DMGetCompatibility()`, `DMStagVecSplitToDMDA()`
 @*/
 PetscErrorCode DMStagMigrateVec(DM dm, Vec vec, DM dmTo, Vec vecTo)
 {
@@ -871,25 +886,25 @@
   This allows usage, for example, even in the periodic, 1-rank case, where
   the inverse of the global-to-local map, even when restricted to on-rank
   communication, is non-injective. This is at the cost of storing an additional
-  VecScatter object inside each DMStag object.
+  VecScatter object inside each `DMSTAG` object.
 
   Input Parameter:
-. dm - the DMStag object
+. dm - the `DMSTAG` object
+
+  Level: developer
 
   Notes:
   In normal usage, library users shouldn't be concerned with this function,
-  as it is called during DMSetUp(), when required.
+  as it is called during `DMSetUp()`, when required.
 
   Returns immediately if the internal map is already populated.
 
   Developer Notes:
-  This could, if desired, be moved up to a general DM routine. It would allow,
-  for example, DMDA to support DMLocalToGlobal() with INSERT_VALUES,
+  This could, if desired, be moved up to a general `DM` routine. It would allow,
+  for example, `DMDA` to support `DMLocalToGlobal()` with `INSERT_VALUES`,
   even in the single-rank periodic case.
 
-  Level: developer
-
-.seealso: `DMSTAG`, `DMLocalToGlobal()`, `VecScatter`
+.seealso: [](chapter_stag), `DMSTAG`, `DMLocalToGlobal()`, `VecScatter`
 @*/
 PetscErrorCode DMStagPopulateLocalToGlobalInjective(DM dm)
 {
@@ -954,15 +969,18 @@
   Logically Collective
 
   Input Parameter:
-. dm - the DMStag object
+. dm - the `DMSTAG` object
 
   Output Parameters:
-. arrX,arrY,arrZ - local 1D coordinate arrays
++ arrX - local 1D coordinate arrays for x direction
+. arrY - local 1D coordinate arrays for y direction
+- arrZ - local 1D coordinate arrays for z direction
 
   Level: intermediate
 
   Notes:
-  This function does not automatically perform a local->global scatter to populate global coordinates from the local coordinates. Thus, it may be required to explicitly perform these operations in some situations, as in the following partial example:
+  This function does not automatically perform a local->global scatter to populate global coordinates from the local coordinates.
+  Thus, it may be required to explicitly perform these operations in some situations, as in the following partial example:
 
   ```
   PetscCall(DMGetCoordinateDM(dm,&cdm));
@@ -979,7 +997,7 @@
   }
    ```
 
-.seealso: `DMSTAG`, `DMStagGetProductCoordinateArrays()`, `DMStagGetProductCoordinateArraysRead()`
+.seealso: [](chapter_stag), `DMSTAG`, `DMStagGetProductCoordinateArrays()`, `DMStagGetProductCoordinateArraysRead()`
 @*/
 PetscErrorCode DMStagRestoreProductCoordinateArrays(DM dm, void *arrX, void *arrY, void *arrZ)
 {
@@ -993,15 +1011,15 @@
 
   Logically Collective
 
-  Input Parameter:
-. dm - the DMStag object
-
-  Output Parameters:
-. arrX,arrY,arrZ - local 1D coordinate arrays
+  Input Parameters:
++ dm - the `DMSTAG` object
+. arrX - local 1D coordinate arrays for x direction
+. arrY - local 1D coordinate arrays for y direction
+- arrZ - local 1D coordinate arrays for z direction
 
   Level: intermediate
 
-.seealso: `DMSTAG`, `DMStagGetProductCoordinateArrays()`, `DMStagGetProductCoordinateArraysRead()`
+.seealso: [](chapter_stag), `DMSTAG`, `DMStagGetProductCoordinateArrays()`, `DMStagGetProductCoordinateArraysRead()`
 @*/
 PetscErrorCode DMStagRestoreProductCoordinateArraysRead(DM dm, void *arrX, void *arrY, void *arrZ)
 {
@@ -1011,20 +1029,22 @@
 }
 
 /*@C
-  DMStagSetBoundaryTypes - set DMStag boundary types
+  DMStagSetBoundaryTypes - set `DMSTAG` boundary types
 
   Logically Collective; boundaryType0, boundaryType1, and boundaryType2 must contain common values
 
   Input Parameters:
-+ dm - the DMStag object
-- boundaryType0,boundaryType1,boundaryType2 - boundary types in each direction
-
-  Notes:
-  Arguments corresponding to higher dimensions are ignored for 1D and 2D grids.
++ dm - the `DMSTAG` object
+. boundaryTypeX - boundary type for x direction
+. boundaryTypeY - boundary type for y direction, not set for one dimensional problems
+- boundaryTypeZ - boundary type for z direction, not set for one and two dimensional problems
 
   Level: advanced
 
-.seealso: `DMSTAG`, `DMBoundaryType`, `DMStagCreate1d()`, `DMStagCreate2d()`, `DMStagCreate3d()`, `DMDASetBoundaryType()`
+  Note:
+  Arguments corresponding to higher dimensions are ignored for 1D and 2D grids.
+
+.seealso: [](chapter_stag), `DMSTAG`, `DMBoundaryType`, `DMStagCreate1d()`, `DMStagCreate2d()`, `DMStagCreate3d()`, `DMDASetBoundaryType()`
 @*/
 PetscErrorCode DMStagSetBoundaryTypes(DM dm, DMBoundaryType boundaryType0, DMBoundaryType boundaryType1, DMBoundaryType boundaryType2)
 {
@@ -1050,12 +1070,12 @@
   Logically Collective; `dmtype` must contain common value
 
   Input Parameters:
-+ dm - the DMStag object
++ dm - the `DMSTAG` object
 - dmtype - DMtype for coordinates, either `DMSTAG` or `DMPRODUCT`
 
   Level: advanced
 
-.seealso: `DMSTAG`, `DMPRODUCT`, `DMGetCoordinateDM()`, `DMStagSetUniformCoordinates()`, `DMStagSetUniformCoordinatesExplicit()`, `DMStagSetUniformCoordinatesProduct()`, `DMType`
+.seealso: [](chapter_stag), `DMSTAG`, `DMPRODUCT`, `DMGetCoordinateDM()`, `DMStagSetUniformCoordinates()`, `DMStagSetUniformCoordinatesExplicit()`, `DMStagSetUniformCoordinatesProduct()`, `DMType`
 @*/
 PetscErrorCode DMStagSetCoordinateDMType(DM dm, DMType dmtype)
 {
@@ -1074,15 +1094,18 @@
   Logically Collective; `dof0`, `dof1`, `dof2`, and `dof3` must contain common values
 
   Input Parameters:
-+ dm - the DMStag object
-- dof0,dof1,dof2,dof3 - dof per stratum
-
-  Notes:
-  Arguments corresponding to higher dimensions are ignored for 1D and 2D grids.
++ dm - the `DMSTAG` object
+. dof0 - the number of points per 0-cell (vertex/node)
+. dof1 - the number of points per 1-cell (element in 1D, edge in 2D and 3D)
+. dof2 - the number of points per 2-cell (element in 2D, face in 3D)
+- dof3 - the number of points per 3-cell (element in 3D)
 
   Level: advanced
 
-.seealso: `DMSTAG`, `DMDASetDof()`
+  Note:
+  Arguments corresponding to higher dimensions are ignored for 1D and 2D grids.
+
+.seealso: [](chapter_stag), `DMSTAG`, `DMDASetDof()`
 @*/
 PetscErrorCode DMStagSetDOF(DM dm, PetscInt dof0, PetscInt dof1, PetscInt dof2, PetscInt dof3)
 {
@@ -1114,15 +1137,17 @@
   Logically Collective; `nRanks0`, `nRanks1`, and `nRanks2` must contain common values
 
   Input Parameters:
-+ dm - the DMStag object
-- nRanks0,nRanks1,nRanks2 - number of ranks in each direction
-
-  Notes:
-  Arguments corresponding to higher dimensions are ignored for 1D and 2D grids.
++ dm - the `DMSTAG` object
+. nRanks0 - number of ranks in the x direction
+. nRanks1 - number of ranks in the y direction
+- nRanks2 - number of ranks in the z direction
 
   Level: developer
 
-.seealso: `DMSTAG`, `DMDASetNumProcs()`
+  Note:
+  Arguments corresponding to higher dimensions are ignored for 1D and 2D grids.
+
+.seealso: [](chapter_stag), `DMSTAG`, `DMDASetNumProcs()`
 @*/
 PetscErrorCode DMStagSetNumRanks(DM dm, PetscInt nRanks0, PetscInt nRanks1, PetscInt nRanks2)
 {
@@ -1151,12 +1176,12 @@
   Logically Collective; `stencilType` must contain common value
 
   Input Parameters:
-+ dm - the DMStag object
++ dm - the `DMSTAG` object
 - stencilType - the elementwise ghost stencil type: `DMSTAG_STENCIL_BOX`, `DMSTAG_STENCIL_STAR`, or `DMSTAG_STENCIL_NONE`
 
   Level: beginner
 
-.seealso: `DMSTAG`, `DMStagGetStencilType()`, `DMStagSetStencilWidth()`, `DMStagStencilType`
+.seealso: [](chapter_stag), `DMSTAG`, `DMStagGetStencilType()`, `DMStagSetStencilWidth()`, `DMStagStencilType`
 @*/
 PetscErrorCode DMStagSetStencilType(DM dm, DMStagStencilType stencilType)
 {
@@ -1176,15 +1201,15 @@
   Logically Collective; `stencilWidth` must contain common value
 
   Input Parameters:
-+ dm - the DMStag object
++ dm - the `DMSTAG` object
 - stencilWidth - stencil/halo/ghost width in elements
 
-  Notes:
-  The width value is not used when `DMSTAG_STENCIL_NONE` is specified.
-
   Level: beginner
 
-.seealso: `DMSTAG`, `DMStagGetStencilWidth()`, `DMStagGetStencilType()`, `DMStagStencilType`
+  Note:
+  The width value is not used when `DMSTAG_STENCIL_NONE` is specified.
+
+.seealso: [](chapter_stag), `DMSTAG`, `DMStagGetStencilWidth()`, `DMStagGetStencilType()`, `DMStagStencilType`
 @*/
 PetscErrorCode DMStagSetStencilWidth(DM dm, PetscInt stencilWidth)
 {
@@ -1205,15 +1230,17 @@
   Logically Collective; `N0`, `N1`, and `N2` must contain common values
 
   Input Parameters:
-+ dm - the DMStag object
-- N0,N1,N2 - global elementwise sizes
-
-  Notes:
-  Arguments corresponding to higher dimensions are ignored for 1D and 2D grids.
++ dm - the `DMSTAG` object
+. N0 - global elementwise size in the x direction
+. N1 - global elementwise size in the y direction
+- N2 - global elementwise size in the z direction
 
   Level: advanced
 
-.seealso: `DMSTAG`, `DMStagGetGlobalSizes()`, `DMDASetSizes()`
+  Note:
+  Arguments corresponding to higher dimensions are ignored for 1D and 2D grids.
+
+.seealso: [](chapter_stag), `DMSTAG`, `DMStagGetGlobalSizes()`, `DMDASetSizes()`
 @*/
 PetscErrorCode DMStagSetGlobalSizes(DM dm, PetscInt N0, PetscInt N1, PetscInt N2)
 {
@@ -1239,15 +1266,17 @@
   Logically Collective; `lx`, `ly`, and `lz` must contain common values
 
   Input Parameters:
-+ dm - the DMStag object
-- lx,ly,lz - element counts for each rank in each direction
-
-  Notes:
-  Arguments corresponding to higher dimensions are ignored for 1D and 2D grids. These arguments may be set to `NULL` in this case.
++ dm - the `DMSTAG` object
+. lx - element counts for each rank in the x direction
+. ly - element counts for each rank in the y direction
+- lz - element counts for each rank in the z direction
 
   Level: developer
 
-.seealso: `DMSTAG`, `DMStagSetGlobalSizes()`, `DMStagGetOwnershipRanges()`, `DMDASetOwnershipRanges()`
+  Note:
+  Arguments corresponding to higher dimensions are ignored for 1D and 2D grids. These arguments may be set to `NULL` in this case.
+
+.seealso: [](chapter_stag), `DMSTAG`, `DMStagSetGlobalSizes()`, `DMStagGetOwnershipRanges()`, `DMDASetOwnershipRanges()`
 @*/
 PetscErrorCode DMStagSetOwnershipRanges(DM dm, PetscInt const *lx, PetscInt const *ly, PetscInt const *lz)
 {
@@ -1273,16 +1302,23 @@
 }
 
 /*@C
-  DMStagSetUniformCoordinates - set DMStag coordinates to be a uniform grid
+  DMStagSetUniformCoordinates - set `DMSTAG` coordinates to be a uniform grid
 
   Collective
 
   Input Parameters:
-+ dm - the DMStag object
-- xmin,xmax,ymin,ymax,zmin,zmax - maximum and minimum global coordinate values
++ dm - the `DMSTAG` object
+. xmin - minimum global coordinate value in the x direction
+. xmax - maximum global coordinate values in the x direction
+. ymin - minimum global coordinate value in the y direction
+. ymax - maximum global coordinate value in the y direction
+. zmin - minimum global coordinate value in the z direction
+- zmax - maximum global coordinate value in the z direction
+
+  Level: advanced
 
   Notes:
-  DMStag supports 2 different types of coordinate DM: `DMSTAG` and `DMPRODUCT`.
+  `DMSTAG` supports 2 different types of coordinate DM: `DMSTAG` and `DMPRODUCT`.
   Arguments corresponding to higher dimensions are ignored for 1D and 2D grids.
 
   Local coordinates are populated (using `DMSetCoordinatesLocal()`), linearly
@@ -1293,9 +1329,7 @@
   i.e. two points are equivalent if their difference is a multiple of $($`xmax` $-$ `xmin` $)$
   in the x direction, $($ `ymax` $-$ `ymin` $)$ in the y direction, and $($ `zmax` $-$ `zmin` $)$ in the z direction.
 
-  Level: advanced
-
-.seealso: `DMSTAG`, `DMPRODUCT`, `DMStagSetUniformCoordinatesExplicit()`, `DMStagSetUniformCoordinatesProduct()`, `DMStagSetCoordinateDMType()`, `DMGetCoordinateDM()`, `DMGetCoordinates()`, `DMDASetUniformCoordinates()`, `DMBoundaryType`
+.seealso: [](chapter_stag), `DMSTAG`, `DMPRODUCT`, `DMStagSetUniformCoordinatesExplicit()`, `DMStagSetUniformCoordinatesProduct()`, `DMStagSetCoordinateDMType()`, `DMGetCoordinateDM()`, `DMGetCoordinates()`, `DMDASetUniformCoordinates()`, `DMBoundaryType`
 @*/
 PetscErrorCode DMStagSetUniformCoordinates(DM dm, PetscReal xmin, PetscReal xmax, PetscReal ymin, PetscReal ymax, PetscReal zmin, PetscReal zmax)
 {
@@ -1317,26 +1351,31 @@
 }
 
 /*@C
-  DMStagSetUniformCoordinatesExplicit - set DMStag coordinates to be a uniform grid, storing all values
+  DMStagSetUniformCoordinatesExplicit - set `DMSTAG` coordinates to be a uniform grid, storing all values
 
   Collective
 
   Input Parameters:
-+ dm - the DMStag object
-- xmin,xmax,ymin,ymax,zmin,zmax - maximum and minimum global coordinate values
++ dm - the `DMSTAG` object
+. xmin - minimum global coordinate value in the x direction
+. xmax - maximum global coordinate values in the x direction
+. ymin - minimum global coordinate value in the y direction
+. ymax - maximum global coordinate value in the y direction
+. zmin - minimum global coordinate value in the z direction
+- zmax - maximum global coordinate value in the z direction
+
+  Level: beginner
 
   Notes:
-  DMStag supports 2 different types of coordinate DM: either another DMStag, or a DMProduct.
-  If the grid is orthogonal, using DMProduct should be more efficient.
+  `DMSTAG` supports 2 different types of coordinate `DM`: either another `DMSTAG`, or a `DMPRODUCT`.
+  If the grid is orthogonal, using `DMPRODUCT` should be more efficient.
 
   Arguments corresponding to higher dimensions are ignored for 1D and 2D grids.
 
   See the manual page for `DMStagSetUniformCoordinates()` for information on how
   coordinates for dummy cells outside the physical domain boundary are populated.
 
-  Level: beginner
-
-.seealso: `DMSTAG`, `DMStagSetUniformCoordinates()`, `DMStagSetUniformCoordinatesProduct()`, `DMStagSetCoordinateDMType()`
+.seealso: [](chapter_stag), `DMSTAG`, `DMStagSetUniformCoordinates()`, `DMStagSetUniformCoordinatesProduct()`, `DMStagSetCoordinateDMType()`
 @*/
 PetscErrorCode DMStagSetUniformCoordinatesExplicit(DM dm, PetscReal xmin, PetscReal xmax, PetscReal ymin, PetscReal ymax, PetscReal zmin, PetscReal zmax)
 {
@@ -1371,27 +1410,32 @@
 /*@C
   DMStagSetUniformCoordinatesProduct - create uniform coordinates, as a product of 1D arrays
 
-  Set the coordinate DM to be a DMProduct of 1D DMStag objects, each of which have a coordinate DM (also a 1d DMStag) holding uniform coordinates.
+  Set the coordinate `DM` to be a `DMPRODUCT` of 1D `DMSTAG` objects, each of which have a coordinate `DM` (also a 1d `DMSTAG`) holding uniform coordinates.
 
   Collective
 
   Input Parameters:
-+ dm - the DMStag object
-- xmin,xmax,ymin,ymax,zmin,zmax - maximum and minimum global coordinate values
++ dm - the `DMSTAG` object
+. xmin - minimum global coordinate value in the x direction
+. xmax - maximum global coordinate values in the x direction
+. ymin - minimum global coordinate value in the y direction
+. ymax - maximum global coordinate value in the y direction
+. zmin - minimum global coordinate value in the z direction
+- zmax - maximum global coordinate value in the z direction
+
+  Level: intermediate
 
   Notes:
   Arguments corresponding to higher dimensions are ignored for 1D and 2D grids.
 
-  The per-dimension 1-dimensional DMStag objects that comprise the product
+  The per-dimension 1-dimensional `DMSTAG` objects that comprise the product
   always have active 0-cells (vertices, element boundaries) and 1-cells
   (element centers).
 
   See the manual page for `DMStagSetUniformCoordinates()` for information on how
   coordinates for dummy cells outside the physical domain boundary are populated.
 
-  Level: intermediate
-
-.seealso: `DMSTAG`, `DMPRODUCT`, `DMStagSetUniformCoordinates()`, `DMStagSetUniformCoordinatesExplicit()`, `DMStagSetCoordinateDMType()`
+.seealso: [](chapter_stag), `DMSTAG`, `DMPRODUCT`, `DMStagSetUniformCoordinates()`, `DMStagSetUniformCoordinatesExplicit()`, `DMStagSetCoordinateDMType()`
 @*/
 PetscErrorCode DMStagSetUniformCoordinatesProduct(DM dm, PetscReal xmin, PetscReal xmax, PetscReal ymin, PetscReal ymax, PetscReal zmin, PetscReal zmax)
 {
@@ -1469,8 +1513,18 @@
 
   Logically Collective
 
+  Input Parameters:
++ dm - the `DMSTAG` object
+- vec - the `Vec` object
+
+  Output Parameter:
+. array - the array
+
+  Level: beginner
+
+  Note:
   This function returns a (dim+1)-dimensional array for a dim-dimensional
-  DMStag.
+  `DMSTAG`.
 
   The first 1-3 dimensions indicate an element in the global
   numbering, using the standard C ordering.
@@ -1479,27 +1533,17 @@
   of freedom with respect to this element, for example corresponding to
   the element or one of its neighboring faces, edges, or vertices.
 
-  For example, for a 3D DMStag, indexing is `array[k][j][i][idx]`, where `k` is the
+  For example, for a 3D `DMSTAG`, indexing is `array[k][j][i][idx]`, where `k` is the
   index in the z-direction, `j` is the index in the y-direction, and `i` is the
   index in the x-direction.
 
   `idx` is obtained with `DMStagGetLocationSlot()`, since the correct offset
-  into the $(d+1)$-dimensional C array for a $d$-dimensional DMStag depends on the grid size and the number
+  into the $(d+1)$-dimensional C array for a $d$-dimensional `DMSTAG` depends on the grid size and the number
   of DOF stored at each location.
 
-  Input Parameters:
-+ dm - the DMStag object
-- vec - the `Vec` object
-
-  Output Parameters:
-. array - the array
-
-  Notes:
   `DMStagVecRestoreArray()` must be called, once finished with the array
 
-  Level: beginner
-
-.seealso: `DMSTAG`, `DMStagVecGetArrayRead()`, `DMStagGetLocationSlot()`, `DMGetLocalVector()`, `DMCreateLocalVector()`, `DMGetGlobalVector()`, `DMCreateGlobalVector()`, `DMDAVecGetArray()`, `DMDAVecGetArrayDOF()`
+.seealso: [](chapter_stag), `DMSTAG`, `DMStagVecGetArrayRead()`, `DMStagGetLocationSlot()`, `DMGetLocalVector()`, `DMCreateLocalVector()`, `DMGetGlobalVector()`, `DMCreateGlobalVector()`, `DMDAVecGetArray()`, `DMDAVecGetArrayDOF()`
 @*/
 PetscErrorCode DMStagVecGetArray(DM dm, Vec vec, void *array)
 {
@@ -1537,18 +1581,18 @@
   See the man page for `DMStagVecGetArray()` for more information.
 
   Input Parameters:
-+ dm - the DMStag object
++ dm - the `DMSTAG` object
 - vec - the `Vec` object
 
-  Output Parameters:
+  Output Parameter:
 . array - the read-only array
 
-  Notes:
-  `DMStagVecRestoreArrayRead()` must be called, once finished with the array
-
   Level: beginner
 
-.seealso: `DMSTAG`, `DMStagVecGetArrayRead()`, `DMStagGetLocationSlot()`, `DMGetLocalVector()`, `DMCreateLocalVector()`, `DMGetGlobalVector()`, `DMCreateGlobalVector()`, `DMDAVecGetArrayRead()`, `DMDAVecGetArrayDOFRead()`
+  Note:
+  `DMStagVecRestoreArrayRead()` must be called, once finished with the array
+
+.seealso: [](chapter_stag), `DMSTAG`, `DMStagVecGetArrayRead()`, `DMStagGetLocationSlot()`, `DMGetLocalVector()`, `DMCreateLocalVector()`, `DMGetGlobalVector()`, `DMCreateGlobalVector()`, `DMDAVecGetArrayRead()`, `DMDAVecGetArrayDOFRead()`
 @*/
 PetscErrorCode DMStagVecGetArrayRead(DM dm, Vec vec, void *array)
 {
@@ -1561,7 +1605,7 @@
   PetscValidHeaderSpecific(vec, VEC_CLASSID, 2);
   PetscCall(DMGetDimension(dm, &dim));
   PetscCall(VecGetLocalSize(vec, &nLocal));
-  PetscCheck(nLocal == stag->entriesGhost, PETSC_COMM_SELF, PETSC_ERR_ARG_INCOMP, "Vector local size %" PetscInt_FMT " is not compatible with DMStag local size %" PetscInt_FMT, nLocal, stag->entriesGhost);
+  PetscCheck(nLocal == stag->entriesGhost, PETSC_COMM_SELF, PETSC_ERR_ARG_INCOMP, "Vector local size %" PetscInt_FMT " is not compatible with DMSTAG local size %" PetscInt_FMT, nLocal, stag->entriesGhost);
   switch (dim) {
   case 1:
     PetscCall(VecGetArray2dRead(vec, stag->nGhost[0], stag->entriesPerElement, stag->startGhost[0], 0, (PetscScalar ***)array));
@@ -1584,15 +1628,15 @@
   Logically Collective
 
   Input Parameters:
-+ dm - the DMStag object
++ dm - the `DMSTAG` object
 - vec - the `Vec` object
 
-  Output Parameters:
+  Output Parameter:
 . array - the array
 
   Level: beginner
 
-.seealso: `DMSTAG`, `DMStagVecGetArray()`, `DMDAVecRestoreArray()`, `DMDAVecRestoreArrayDOF()`
+.seealso: [](chapter_stag), `DMSTAG`, `DMStagVecGetArray()`, `DMDAVecRestoreArray()`, `DMDAVecRestoreArrayDOF()`
 @*/
 PetscErrorCode DMStagVecRestoreArray(DM dm, Vec vec, void *array)
 {
@@ -1605,7 +1649,7 @@
   PetscValidHeaderSpecific(vec, VEC_CLASSID, 2);
   PetscCall(DMGetDimension(dm, &dim));
   PetscCall(VecGetLocalSize(vec, &nLocal));
-  PetscCheck(nLocal == stag->entriesGhost, PETSC_COMM_SELF, PETSC_ERR_ARG_INCOMP, "Vector local size %" PetscInt_FMT " is not compatible with DMStag local size %" PetscInt_FMT, nLocal, stag->entriesGhost);
+  PetscCheck(nLocal == stag->entriesGhost, PETSC_COMM_SELF, PETSC_ERR_ARG_INCOMP, "Vector local size %" PetscInt_FMT " is not compatible with DMSTAG local size %" PetscInt_FMT, nLocal, stag->entriesGhost);
   switch (dim) {
   case 1:
     PetscCall(VecRestoreArray2d(vec, stag->nGhost[0], stag->entriesPerElement, stag->startGhost[0], 0, (PetscScalar ***)array));
@@ -1628,15 +1672,15 @@
   Logically Collective
 
   Input Parameters:
-+ dm - the DMStag object
++ dm - the `DMSTAG` object
 - vec - the Vec object
 
-  Output Parameters:
+  Output Parameter:
 . array - the read-only array
 
   Level: beginner
 
-.seealso: `DMSTAG`, `DMStagVecGetArrayRead()`, `DMDAVecRestoreArrayRead()`, `DMDAVecRestoreArrayDOFRead()`
+.seealso: [](chapter_stag), `DMSTAG`, `DMStagVecGetArrayRead()`, `DMDAVecRestoreArrayRead()`, `DMDAVecRestoreArrayDOFRead()`
 @*/
 PetscErrorCode DMStagVecRestoreArrayRead(DM dm, Vec vec, void *array)
 {
@@ -1649,7 +1693,7 @@
   PetscValidHeaderSpecific(vec, VEC_CLASSID, 2);
   PetscCall(DMGetDimension(dm, &dim));
   PetscCall(VecGetLocalSize(vec, &nLocal));
-  PetscCheck(nLocal == stag->entriesGhost, PETSC_COMM_SELF, PETSC_ERR_ARG_INCOMP, "Vector local size %" PetscInt_FMT " is not compatible with DMStag local size %" PetscInt_FMT, nLocal, stag->entriesGhost);
+  PetscCheck(nLocal == stag->entriesGhost, PETSC_COMM_SELF, PETSC_ERR_ARG_INCOMP, "Vector local size %" PetscInt_FMT " is not compatible with DMSTAG local size %" PetscInt_FMT, nLocal, stag->entriesGhost);
   switch (dim) {
   case 1:
     PetscCall(VecRestoreArray2dRead(vec, stag->nGhost[0], stag->entriesPerElement, stag->startGhost[0], 0, (PetscScalar ***)array));
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/dm/impls/stag/tutorials/ex3.c petsc-3.18.5+dfsg1/src/dm/impls/stag/tutorials/ex3.c
--- petsc-3.18.4+dfsg1/src/dm/impls/stag/tutorials/ex3.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/dm/impls/stag/tutorials/ex3.c	2023-02-27 23:11:05.000000000 +0100
@@ -13,7 +13,7 @@
 
   Boundary conditions give prescribed flow perpendicular to the boundaries,
   and zero derivative perpendicular to them (free slip). This involves
-  using a modifed stencil at the boundaries. Another option would be to
+  using a modified stencil at the boundaries. Another option would be to
   use DM_BOUNDARY_GHOSTED in DMStagCreate3d() and a matrix-free operator (MATSHELL)
   making use of the uniformly-available ghost layer.
 
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/dm/impls/stag/tutorials/ex8.c petsc-3.18.5+dfsg1/src/dm/impls/stag/tutorials/ex8.c
--- petsc-3.18.4+dfsg1/src/dm/impls/stag/tutorials/ex8.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/dm/impls/stag/tutorials/ex8.c	2023-02-27 23:11:05.000000000 +0100
@@ -85,7 +85,7 @@
     row.loc = DMSTAG_LEFT;
 
     if (e == 0) {
-      /* Left bondary conditions (Dirichlet) */
+      /* Left boundary conditions (Dirichlet) */
       PetscScalar val;
 
       val = 1.0;
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/dm/impls/swarm/data_ex.c petsc-3.18.5+dfsg1/src/dm/impls/swarm/data_ex.c
--- petsc-3.18.4+dfsg1/src/dm/impls/swarm/data_ex.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/dm/impls/swarm/data_ex.c	2023-02-27 23:11:05.000000000 +0100
@@ -5,7 +5,7 @@
 On each processor, have a DomainExchangerTopology.
 This is a doubly-connected edge list which enumerates the
 communication paths between connected processors. By numbering
-these paths we can always uniquely assign message identifers.
+these paths we can always uniquely assign message identifiers.
 
         edge
          10
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/dm/impls/swarm/swarm.c petsc-3.18.5+dfsg1/src/dm/impls/swarm/swarm.c
--- petsc-3.18.4+dfsg1/src/dm/impls/swarm/swarm.c	2022-11-28 17:22:18.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/dm/impls/swarm/swarm.c	2023-02-27 23:11:05.000000000 +0100
@@ -768,7 +768,7 @@
   PetscFunctionBegin;
   if (!swarm->field_registration_initialized) {
     swarm->field_registration_initialized = PETSC_TRUE;
-    PetscCall(DMSwarmRegisterPetscDatatypeField(dm, DMSwarmField_pid, 1, PETSC_INT64)); /* unique identifer */
+    PetscCall(DMSwarmRegisterPetscDatatypeField(dm, DMSwarmField_pid, 1, PETSC_INT64)); /* unique identifier */
     PetscCall(DMSwarmRegisterPetscDatatypeField(dm, DMSwarmField_rank, 1, PETSC_INT));  /* used for communication */
   }
   PetscFunctionReturn(0);
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/dm/impls/swarm/swarmpic_sort.c petsc-3.18.5+dfsg1/src/dm/impls/swarm/swarmpic_sort.c
--- petsc-3.18.4+dfsg1/src/dm/impls/swarm/swarmpic_sort.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/dm/impls/swarm/swarmpic_sort.c	2023-02-27 23:11:05.000000000 +0100
@@ -149,7 +149,7 @@
 +  dm - a DMSwarm object
 .  e - the index of the cell
 .  npoints - the number of points in the cell
--  pidlist - array of the indices indentifying all points in cell e
+-  pidlist - array of the indices identifying all points in cell e
 
    Level: advanced
 
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/dm/interface/dm.c petsc-3.18.5+dfsg1/src/dm/interface/dm.c
--- petsc-3.18.4+dfsg1/src/dm/interface/dm.c	2023-01-31 06:19:48.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/dm/interface/dm.c	2023-02-27 23:11:05.000000000 +0100
@@ -496,7 +496,7 @@
 }
 
 /*@C
-   DMAppendOptionsPrefix - Appends an additional string to an already exising prefix used for searching for
+   DMAppendOptionsPrefix - Appends an additional string to an already existing prefix used for searching for
    `DM` options in the options database.
 
    Logically Collective on dm
@@ -1560,7 +1560,7 @@
 
   Input Parameters:
 + dm - the `DM`
-- only - `PETSC_TRUE` if you only want matrix stucture
+- only - `PETSC_TRUE` if you only want matrix structure
 
   Level: developer
 
@@ -1590,7 +1590,7 @@
   Level: developer
 
   Note:
-  A `DM` may stash the array between instantations so using this routine may be more efficient than calling `PetscMalloc()`
+  A `DM` may stash the array between instantiations so using this routine may be more efficient than calling `PetscMalloc()`
 
   The array may contain nonzero values
 
@@ -4686,7 +4686,7 @@
 
   Input Parameters:
 + dm - The `DM`
-- sf - The` PetscSF`
+- sf - The `PetscSF`
 
   Level: intermediate
 
@@ -4955,7 +4955,7 @@
   Notes:
   The label already exists or will be added to the `DM` with `DMSetLabel()`.
 
-  For example, a piecewise continous pressure field can be defined by coefficients at the cell centers of a mesh and piecewise constant functions
+  For example, a piecewise continuous pressure field can be defined by coefficients at the cell centers of a mesh and piecewise constant functions
   within each cell. Thus a specific function in the space is defined by the combination of a `Vec` containing the coefficients, a `DM` defining the
   geometry entities, a `DMLabel` indicating a subset of those geometric entities, and a discretization object, such as a `PetscFE`.
 
@@ -8915,7 +8915,7 @@
 /*@
   DMSetAuxiliaryVec - Set an auxiliary vector for region specified by the given label and value, and equation part
 
-  Not collective because auxilary vectors are not parallel
+  Not collective because auxiliary vectors are not parallel
 
   Input Parameters:
 + dm     - The `DM`
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/dm/interface/ftn-auto/makefile petsc-3.18.5+dfsg1/src/dm/interface/ftn-auto/makefile
--- petsc-3.18.4+dfsg1/src/dm/interface/ftn-auto/makefile	2023-01-31 07:00:47.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/dm/interface/ftn-auto/makefile	2023-02-27 23:28:31.000000000 +0100
@@ -4,7 +4,7 @@
 
 CFLAGS   =
 FFLAGS   =
-SOURCEC  = dmperiodicityf.c dmgetf.c dmf.c dmcoordinatesf.c
+SOURCEC  = dmperiodicityf.c dmgetf.c dmcoordinatesf.c dmf.c
 SOURCEF  =
 SOURCEH  = 
 DIRS     =
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/dm/partitioner/tests/ex33.c petsc-3.18.5+dfsg1/src/dm/partitioner/tests/ex33.c
--- petsc-3.18.4+dfsg1/src/dm/partitioner/tests/ex33.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/dm/partitioner/tests/ex33.c	2023-02-27 23:11:05.000000000 +0100
@@ -101,7 +101,7 @@
   PetscCall(PetscObjectTypeCompareAny((PetscObject)p, &sequential, PETSCPARTITIONERCHACO, NULL));
   if (sequential) goto finally;
 
-  /* test partitioning a graph on a subset of the processess only */
+  /* test partitioning a graph on a subset of the processes only */
   if (rank % 2) {
     PetscCall(PetscPartitionerPartition(p, nparts, 0, NULL, NULL, NULL, targetSection, partSection, &partition));
   } else {
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/dm/tests/ex53.c petsc-3.18.5+dfsg1/src/dm/tests/ex53.c
--- petsc-3.18.4+dfsg1/src/dm/tests/ex53.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/dm/tests/ex53.c	2023-02-27 23:11:05.000000000 +0100
@@ -2,7 +2,7 @@
 mx/my/mz - set the dimensions of the parent vector\n\
 dim - set the dimensionality of the parent vector (2,3)\n\
 sliceaxis - Integer describing the axis along which the sice will be selected (0-X, 1-Y, 2-Z)\n\
-sliceid - set the location where the slice will be extraced from the parent vector\n";
+sliceid - set the location where the slice will be extracted from the parent vector\n";
 
 /*
    This test checks the functionality of DMDACreatePatchIS when
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/ksp/f90-mod/ftn-auto-interfaces/petscksp.h90 petsc-3.18.5+dfsg1/src/ksp/f90-mod/ftn-auto-interfaces/petscksp.h90
--- petsc-3.18.4+dfsg1/src/ksp/f90-mod/ftn-auto-interfaces/petscksp.h90	2023-01-31 07:00:50.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/ksp/f90-mod/ftn-auto-interfaces/petscksp.h90	2023-02-27 23:28:35.000000000 +0100
@@ -381,21 +381,6 @@
        PetscBool b ! PetscBool
        PetscErrorCode z
        end subroutine KSPRichardsonSetSelfScale
-      subroutine KSPComputeOperator(a,b,c,z)
-       import tKSP,tMat
-       KSP a ! KSP
-       MatType b ! MatType
-       Mat c ! Mat
-       PetscErrorCode z
-       end subroutine KSPComputeOperator
-      subroutine KSPComputeEigenvaluesExplicitly(a,b,c,d,z)
-       import tKSP
-       KSP a ! KSP
-       PetscInt b ! PetscInt
-       PetscReal c (*) ! PetscReal
-       PetscReal d (*) ! PetscReal
-       PetscErrorCode z
-       end subroutine KSPComputeEigenvaluesExplicitly
       subroutine KSPGuessSetFromOptions(a,z)
        import tKSPGuess
        KSPGuess a ! KSPGuess
@@ -445,13 +430,13 @@
        PetscErrorCode z
        end subroutine KSPSetUseFischerGuess
       subroutine KSPSetGuess(a,b,z)
-       import tKSPGuess,tKSP
+       import tKSP,tKSPGuess
        KSP a ! KSP
        KSPGuess b ! KSPGuess
        PetscErrorCode z
        end subroutine KSPSetGuess
       subroutine KSPGetGuess(a,b,z)
-       import tKSPGuess,tKSP
+       import tKSP,tKSPGuess
        KSP a ! KSP
        KSPGuess b ! KSPGuess
        PetscErrorCode z
@@ -466,58 +451,6 @@
        KSP a ! KSP
        PetscErrorCode z
        end subroutine KSPResetFromOptions
-      subroutine KSPSetNormType(a,b,z)
-       import tKSP
-       KSP a ! KSP
-       KSPNormType b ! KSPNormType
-       PetscErrorCode z
-       end subroutine KSPSetNormType
-      subroutine KSPSetCheckNormIteration(a,b,z)
-       import tKSP
-       KSP a ! KSP
-       PetscInt b ! PetscInt
-       PetscErrorCode z
-       end subroutine KSPSetCheckNormIteration
-      subroutine KSPSetLagNorm(a,b,z)
-       import tKSP
-       KSP a ! KSP
-       PetscBool b ! PetscBool
-       PetscErrorCode z
-       end subroutine KSPSetLagNorm
-      subroutine KSPSetSupportedNorm(a,b,c,d,z)
-       import tKSP
-       KSP a ! KSP
-       KSPNormType b ! KSPNormType
-       PCSide c ! PCSide
-       PetscInt d ! PetscInt
-       PetscErrorCode z
-       end subroutine KSPSetSupportedNorm
-      subroutine KSPGetNormType(a,b,z)
-       import tKSP
-       KSP a ! KSP
-       KSPNormType b ! KSPNormType
-       PetscErrorCode z
-       end subroutine KSPGetNormType
-      subroutine KSPSetOperators(a,b,c,z)
-       import tKSP,tMat
-       KSP a ! KSP
-       Mat b ! Mat
-       Mat c ! Mat
-       PetscErrorCode z
-       end subroutine KSPSetOperators
-      subroutine KSPGetOperators(a,b,c,z)
-       import tKSP,tMat
-       KSP a ! KSP
-       Mat b ! Mat
-       Mat c ! Mat
-       PetscErrorCode z
-       end subroutine KSPGetOperators
-      subroutine KSPCreate(a,b,z)
-       import tKSP
-       MPI_Comm a ! MPI_Comm
-       KSP b ! KSP
-       PetscErrorCode z
-       end subroutine KSPCreate
       subroutine KSPGetResidualNorm(a,b,z)
        import tKSP
        KSP a ! KSP
@@ -583,6 +516,90 @@
        Vec c ! Vec
        PetscErrorCode z
        end subroutine KSPCheckSolve
+      subroutine KSPInitialResidual(a,b,c,d,e,f,z)
+       import tKSP,tVec
+       KSP a ! KSP
+       Vec b ! Vec
+       Vec c ! Vec
+       Vec d ! Vec
+       Vec e ! Vec
+       Vec f ! Vec
+       PetscErrorCode z
+       end subroutine KSPInitialResidual
+      subroutine KSPUnwindPreconditioner(a,b,c,z)
+       import tKSP,tVec
+       KSP a ! KSP
+       Vec b ! Vec
+       Vec c ! Vec
+       PetscErrorCode z
+       end subroutine KSPUnwindPreconditioner
+      subroutine KSPComputeOperator(a,b,c,z)
+       import tKSP,tMat
+       KSP a ! KSP
+       MatType b ! MatType
+       Mat c ! Mat
+       PetscErrorCode z
+       end subroutine KSPComputeOperator
+      subroutine KSPComputeEigenvaluesExplicitly(a,b,c,d,z)
+       import tKSP
+       KSP a ! KSP
+       PetscInt b ! PetscInt
+       PetscReal c (*) ! PetscReal
+       PetscReal d (*) ! PetscReal
+       PetscErrorCode z
+       end subroutine KSPComputeEigenvaluesExplicitly
+      subroutine KSPSetNormType(a,b,z)
+       import tKSP
+       KSP a ! KSP
+       KSPNormType b ! KSPNormType
+       PetscErrorCode z
+       end subroutine KSPSetNormType
+      subroutine KSPSetCheckNormIteration(a,b,z)
+       import tKSP
+       KSP a ! KSP
+       PetscInt b ! PetscInt
+       PetscErrorCode z
+       end subroutine KSPSetCheckNormIteration
+      subroutine KSPSetLagNorm(a,b,z)
+       import tKSP
+       KSP a ! KSP
+       PetscBool b ! PetscBool
+       PetscErrorCode z
+       end subroutine KSPSetLagNorm
+      subroutine KSPSetSupportedNorm(a,b,c,d,z)
+       import tKSP
+       KSP a ! KSP
+       KSPNormType b ! KSPNormType
+       PCSide c ! PCSide
+       PetscInt d ! PetscInt
+       PetscErrorCode z
+       end subroutine KSPSetSupportedNorm
+      subroutine KSPGetNormType(a,b,z)
+       import tKSP
+       KSP a ! KSP
+       KSPNormType b ! KSPNormType
+       PetscErrorCode z
+       end subroutine KSPGetNormType
+      subroutine KSPSetOperators(a,b,c,z)
+       import tKSP,tMat
+       KSP a ! KSP
+       Mat b ! Mat
+       Mat c ! Mat
+       PetscErrorCode z
+       end subroutine KSPSetOperators
+      subroutine KSPGetOperators(a,b,c,z)
+       import tKSP,tMat
+       KSP a ! KSP
+       Mat b ! Mat
+       Mat c ! Mat
+       PetscErrorCode z
+       end subroutine KSPGetOperators
+      subroutine KSPCreate(a,b,z)
+       import tKSP
+       MPI_Comm a ! MPI_Comm
+       KSP b ! KSP
+       PetscErrorCode z
+       end subroutine KSPCreate
       subroutine KSPComputeExtremeSingularValues(a,b,c,z)
        import tKSP
        KSP a ! KSP
@@ -869,23 +886,6 @@
        PetscBool b ! PetscBool
        PetscErrorCode z
        end subroutine KSPSetUseExplicitTranspose
-      subroutine KSPInitialResidual(a,b,c,d,e,f,z)
-       import tKSP,tVec
-       KSP a ! KSP
-       Vec b ! Vec
-       Vec c ! Vec
-       Vec d ! Vec
-       Vec e ! Vec
-       Vec f ! Vec
-       PetscErrorCode z
-       end subroutine KSPInitialResidual
-      subroutine KSPUnwindPreconditioner(a,b,c,z)
-       import tKSP,tVec
-       KSP a ! KSP
-       Vec b ! Vec
-       Vec c ! Vec
-       PetscErrorCode z
-       end subroutine KSPUnwindPreconditioner
       subroutine DMGlobalToLocalSolve(a,b,c,z)
        import tDM,tVec
        DM a ! DM
@@ -924,7 +924,7 @@
        PetscErrorCode z
        end subroutine MatLMVMSetJ0
       subroutine MatLMVMSetJ0PC(a,b,z)
-       import tMat,tPC
+       import tPC,tMat
        Mat a ! Mat
        PC b ! PC
        PetscErrorCode z
@@ -942,7 +942,7 @@
        PetscErrorCode z
        end subroutine MatLMVMGetJ0
       subroutine MatLMVMGetJ0PC(a,b,z)
-       import tMat,tPC
+       import tPC,tMat
        Mat a ! Mat
        PC b ! PC
        PetscErrorCode z
@@ -1134,7 +1134,7 @@
        PetscErrorCode z
        end subroutine MatSchurComplementComputeExplicitOperator
       subroutine MatGetSchurComplement(a,b,c,d,e,f,g,h,i,j,z)
-       import tIS,tMat
+       import tMat,tIS
        Mat a ! Mat
        IS b ! IS
        IS c ! IS
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/ksp/f90-mod/ftn-auto-interfaces/petscpc.h90 petsc-3.18.5+dfsg1/src/ksp/f90-mod/ftn-auto-interfaces/petscpc.h90
--- petsc-3.18.4+dfsg1/src/ksp/f90-mod/ftn-auto-interfaces/petscpc.h90	2023-01-31 07:00:50.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/ksp/f90-mod/ftn-auto-interfaces/petscpc.h90	2023-02-27 23:28:35.000000000 +0100
@@ -72,7 +72,7 @@
        PetscErrorCode z
        end subroutine PCASMSetSubMatType
       subroutine PCBDDCSetDiscreteGradient(a,b,c,d,e,f,z)
-       import tMat,tPC
+       import tPC,tMat
        PC a ! PC
        Mat b ! Mat
        PetscInt c ! PetscInt
@@ -82,7 +82,7 @@
        PetscErrorCode z
        end subroutine PCBDDCSetDiscreteGradient
       subroutine PCBDDCSetDivergenceMat(a,b,c,d,z)
-       import tIS,tPC,tMat
+       import tPC,tMat,tIS
        PC a ! PC
        Mat b ! Mat
        PetscBool c ! PetscBool
@@ -90,32 +90,32 @@
        PetscErrorCode z
        end subroutine PCBDDCSetDivergenceMat
       subroutine PCBDDCSetChangeOfBasisMat(a,b,c,z)
-       import tMat,tPC
+       import tPC,tMat
        PC a ! PC
        Mat b ! Mat
        PetscBool c ! PetscBool
        PetscErrorCode z
        end subroutine PCBDDCSetChangeOfBasisMat
       subroutine PCBDDCSetPrimalVerticesIS(a,b,z)
-       import tIS,tPC
+       import tPC,tIS
        PC a ! PC
        IS b ! IS
        PetscErrorCode z
        end subroutine PCBDDCSetPrimalVerticesIS
       subroutine PCBDDCGetPrimalVerticesIS(a,b,z)
-       import tIS,tPC
+       import tPC,tIS
        PC a ! PC
        IS b ! IS
        PetscErrorCode z
        end subroutine PCBDDCGetPrimalVerticesIS
       subroutine PCBDDCSetPrimalVerticesLocalIS(a,b,z)
-       import tIS,tPC
+       import tPC,tIS
        PC a ! PC
        IS b ! IS
        PetscErrorCode z
        end subroutine PCBDDCSetPrimalVerticesLocalIS
       subroutine PCBDDCGetPrimalVerticesLocalIS(a,b,z)
-       import tIS,tPC
+       import tPC,tIS
        PC a ! PC
        IS b ! IS
        PetscErrorCode z
@@ -133,49 +133,49 @@
        PetscErrorCode z
        end subroutine PCBDDCSetLevels
       subroutine PCBDDCSetDirichletBoundaries(a,b,z)
-       import tIS,tPC
+       import tPC,tIS
        PC a ! PC
        IS b ! IS
        PetscErrorCode z
        end subroutine PCBDDCSetDirichletBoundaries
       subroutine PCBDDCSetDirichletBoundariesLocal(a,b,z)
-       import tIS,tPC
+       import tPC,tIS
        PC a ! PC
        IS b ! IS
        PetscErrorCode z
        end subroutine PCBDDCSetDirichletBoundariesLocal
       subroutine PCBDDCSetNeumannBoundaries(a,b,z)
-       import tIS,tPC
+       import tPC,tIS
        PC a ! PC
        IS b ! IS
        PetscErrorCode z
        end subroutine PCBDDCSetNeumannBoundaries
       subroutine PCBDDCSetNeumannBoundariesLocal(a,b,z)
-       import tIS,tPC
+       import tPC,tIS
        PC a ! PC
        IS b ! IS
        PetscErrorCode z
        end subroutine PCBDDCSetNeumannBoundariesLocal
       subroutine PCBDDCGetDirichletBoundaries(a,b,z)
-       import tIS,tPC
+       import tPC,tIS
        PC a ! PC
        IS b ! IS
        PetscErrorCode z
        end subroutine PCBDDCGetDirichletBoundaries
       subroutine PCBDDCGetDirichletBoundariesLocal(a,b,z)
-       import tIS,tPC
+       import tPC,tIS
        PC a ! PC
        IS b ! IS
        PetscErrorCode z
        end subroutine PCBDDCGetDirichletBoundariesLocal
       subroutine PCBDDCGetNeumannBoundaries(a,b,z)
-       import tIS,tPC
+       import tPC,tIS
        PC a ! PC
        IS b ! IS
        PetscErrorCode z
        end subroutine PCBDDCGetNeumannBoundaries
       subroutine PCBDDCGetNeumannBoundariesLocal(a,b,z)
-       import tIS,tPC
+       import tPC,tIS
        PC a ! PC
        IS b ! IS
        PetscErrorCode z
@@ -190,14 +190,14 @@
        PetscErrorCode z
        end subroutine PCBDDCSetLocalAdjacencyGraph
       subroutine PCBDDCSetDofsSplittingLocal(a,b,c,z)
-       import tIS,tPC
+       import tPC,tIS
        PC a ! PC
        PetscInt b ! PetscInt
        IS c (*) ! IS
        PetscErrorCode z
        end subroutine PCBDDCSetDofsSplittingLocal
       subroutine PCBDDCSetDofsSplitting(a,b,c,z)
-       import tIS,tPC
+       import tPC,tIS
        PC a ! PC
        PetscInt b ! PetscInt
        IS c (*) ! IS
@@ -300,20 +300,20 @@
        PetscErrorCode z
        end subroutine PCDeflationSetSpaceToCompute
       subroutine PCDeflationSetSpace(a,b,c,z)
-       import tMat,tPC
+       import tPC,tMat
        PC a ! PC
        Mat b ! Mat
        PetscBool c ! PetscBool
        PetscErrorCode z
        end subroutine PCDeflationSetSpace
       subroutine PCDeflationSetProjectionNullSpaceMat(a,b,z)
-       import tMat,tPC
+       import tPC,tMat
        PC a ! PC
        Mat b ! Mat
        PetscErrorCode z
        end subroutine PCDeflationSetProjectionNullSpaceMat
       subroutine PCDeflationSetCoarseMat(a,b,z)
-       import tMat,tPC
+       import tPC,tMat
        PC a ! PC
        Mat b ! Mat
        PetscErrorCode z
@@ -506,27 +506,27 @@
        PetscErrorCode z
        end subroutine PCFieldSplitSetBlockSize
       subroutine PCFieldSplitSetSchurPre(a,b,c,z)
-       import tMat,tPC
+       import tPC,tMat
        PC a ! PC
        PCFieldSplitSchurPreType b ! PCFieldSplitSchurPreType
        Mat c ! Mat
        PetscErrorCode z
        end subroutine PCFieldSplitSetSchurPre
       subroutine PCFieldSplitGetSchurPre(a,b,c,z)
-       import tMat,tPC
+       import tPC,tMat
        PC a ! PC
        PCFieldSplitSchurPreType b ! PCFieldSplitSchurPreType
        Mat c ! Mat
        PetscErrorCode z
        end subroutine PCFieldSplitGetSchurPre
       subroutine PCFieldSplitSchurGetS(a,b,z)
-       import tMat,tPC
+       import tPC,tMat
        PC a ! PC
        Mat b ! Mat
        PetscErrorCode z
        end subroutine PCFieldSplitSchurGetS
       subroutine PCFieldSplitSchurRestoreS(a,b,z)
-       import tMat,tPC
+       import tPC,tMat
        PC a ! PC
        Mat b ! Mat
        PetscErrorCode z
@@ -604,13 +604,13 @@
        PetscErrorCode z
        end subroutine PCFieldSplitSetDetectSaddlePoint
       subroutine PCGalerkinSetRestriction(a,b,z)
-       import tMat,tPC
+       import tPC,tMat
        PC a ! PC
        Mat b ! Mat
        PetscErrorCode z
        end subroutine PCGalerkinSetRestriction
       subroutine PCGalerkinSetInterpolation(a,b,z)
-       import tMat,tPC
+       import tPC,tMat
        PC a ! PC
        Mat b ! Mat
        PetscErrorCode z
@@ -745,7 +745,7 @@
        PetscErrorCode z
        end subroutine PCGASMSetSortIndices
       subroutine PCGASMCreateSubdomains2D(a,b,c,d,e,f,g,h,i,j,z)
-       import tIS,tPC
+       import tPC,tIS
        PC a ! PC
        PetscInt b ! PetscInt
        PetscInt c ! PetscInt
@@ -801,7 +801,7 @@
        PetscErrorCode z
        end subroutine PCHPDDMHasNeumannMat
       subroutine PCHPDDMSetRHSMat(a,b,z)
-       import tMat,tPC
+       import tPC,tMat
        PC a ! PC
        Mat b ! Mat
        PetscErrorCode z
@@ -825,26 +825,26 @@
        PetscErrorCode z
        end subroutine PCHPDDMGetSTShareSubKSP
       subroutine PCHPDDMSetDeflationMat(a,b,c,z)
-       import tIS,tPC,tMat
+       import tPC,tMat,tIS
        PC a ! PC
        IS b ! IS
        Mat c ! Mat
        PetscErrorCode z
        end subroutine PCHPDDMSetDeflationMat
       subroutine PCHYPRESetDiscreteGradient(a,b,z)
-       import tMat,tPC
+       import tPC,tMat
        PC a ! PC
        Mat b ! Mat
        PetscErrorCode z
        end subroutine PCHYPRESetDiscreteGradient
       subroutine PCHYPRESetDiscreteCurl(a,b,z)
-       import tMat,tPC
+       import tPC,tMat
        PC a ! PC
        Mat b ! Mat
        PetscErrorCode z
        end subroutine PCHYPRESetDiscreteCurl
       subroutine PCHYPRESetInterpolations(a,b,c,d,e,f,z)
-       import tMat,tPC
+       import tPC,tMat
        PC a ! PC
        PetscInt b ! PetscInt
        Mat c ! Mat
@@ -854,13 +854,13 @@
        PetscErrorCode z
        end subroutine PCHYPRESetInterpolations
       subroutine PCHYPRESetAlphaPoissonMatrix(a,b,z)
-       import tMat,tPC
+       import tPC,tMat
        PC a ! PC
        Mat b ! Mat
        PetscErrorCode z
        end subroutine PCHYPRESetAlphaPoissonMatrix
       subroutine PCHYPRESetBetaPoissonMatrix(a,b,z)
-       import tMat,tPC
+       import tPC,tMat
        PC a ! PC
        Mat b ! Mat
        PetscErrorCode z
@@ -946,19 +946,19 @@
        PetscErrorCode z
        end subroutine PCKSPGetKSP
       subroutine PCLMVMSetMatLMVM(a,b,z)
-       import tMat,tPC
+       import tPC,tMat
        PC a ! PC
        Mat b ! Mat
        PetscErrorCode z
        end subroutine PCLMVMSetMatLMVM
       subroutine PCLMVMGetMatLMVM(a,b,z)
-       import tMat,tPC
+       import tPC,tMat
        PC a ! PC
        Mat b ! Mat
        PetscErrorCode z
        end subroutine PCLMVMGetMatLMVM
       subroutine PCLMVMSetIS(a,b,z)
-       import tIS,tPC
+       import tPC,tIS
        PC a ! PC
        IS b ! IS
        PetscErrorCode z
@@ -975,14 +975,14 @@
        PetscErrorCode z
        end subroutine PCMGGetCoarseSolve
       subroutine PCMGSetInterpolation(a,b,c,z)
-       import tMat,tPC
+       import tPC,tMat
        PC a ! PC
        PetscInt b ! PetscInt
        Mat c ! Mat
        PetscErrorCode z
        end subroutine PCMGSetInterpolation
       subroutine PCMGSetOperators(a,b,c,d,z)
-       import tMat,tPC
+       import tPC,tMat
        PC a ! PC
        PetscInt b ! PetscInt
        Mat c ! Mat
@@ -990,21 +990,21 @@
        PetscErrorCode z
        end subroutine PCMGSetOperators
       subroutine PCMGGetInterpolation(a,b,c,z)
-       import tMat,tPC
+       import tPC,tMat
        PC a ! PC
        PetscInt b ! PetscInt
        Mat c ! Mat
        PetscErrorCode z
        end subroutine PCMGGetInterpolation
       subroutine PCMGSetRestriction(a,b,c,z)
-       import tMat,tPC
+       import tPC,tMat
        PC a ! PC
        PetscInt b ! PetscInt
        Mat c ! Mat
        PetscErrorCode z
        end subroutine PCMGSetRestriction
       subroutine PCMGGetRestriction(a,b,c,z)
-       import tMat,tPC
+       import tPC,tMat
        PC a ! PC
        PetscInt b ! PetscInt
        Mat c ! Mat
@@ -1025,14 +1025,14 @@
        PetscErrorCode z
        end subroutine PCMGGetRScale
       subroutine PCMGSetInjection(a,b,c,z)
-       import tMat,tPC
+       import tPC,tMat
        PC a ! PC
        PetscInt b ! PetscInt
        Mat c ! Mat
        PetscErrorCode z
        end subroutine PCMGSetInjection
       subroutine PCMGGetInjection(a,b,c,z)
-       import tMat,tPC
+       import tPC,tMat
        PC a ! PC
        PetscInt b ! PetscInt
        Mat c ! Mat
@@ -1223,7 +1223,7 @@
        PetscErrorCode z
        end subroutine PCRedundantSetNumber
       subroutine PCRedundantSetScatter(a,b,c,z)
-       import tVecScatter,tPC
+       import tPC,tVecScatter
        PC a ! PC
        VecScatter b ! VecScatter
        VecScatter c ! VecScatter
@@ -1236,7 +1236,7 @@
        PetscErrorCode z
        end subroutine PCRedundantGetKSP
       subroutine PCRedundantGetOperators(a,b,c,z)
-       import tMat,tPC
+       import tPC,tMat
        PC a ! PC
        Mat b ! Mat
        Mat c ! Mat
@@ -1383,7 +1383,7 @@
        PetscErrorCode z
        end subroutine PCTelescopeSetIgnoreKSPComputeOperators
       subroutine PCTelescopeGetDM(a,b,z)
-       import tDM,tPC
+       import tPC,tDM
        PC a ! PC
        DM b ! DM
        PetscErrorCode z
@@ -1412,13 +1412,13 @@
        PetscErrorCode z
        end subroutine PCSetFromOptions
       subroutine PCSetDM(a,b,z)
-       import tDM,tPC
+       import tPC,tDM
        PC a ! PC
        DM b ! DM
        PetscErrorCode z
        end subroutine PCSetDM
       subroutine PCGetDM(a,b,z)
-       import tDM,tPC
+       import tPC,tDM
        PC a ! PC
        DM b ! DM
        PetscErrorCode z
@@ -1480,7 +1480,7 @@
        PetscErrorCode z
        end subroutine PCApply
       subroutine PCMatApply(a,b,c,z)
-       import tMat,tPC
+       import tPC,tMat
        PC a ! PC
        Mat b ! Mat
        Mat c ! Mat
@@ -1581,7 +1581,7 @@
        PetscErrorCode z
        end subroutine PCSetUpOnBlocks
       subroutine PCSetOperators(a,b,c,z)
-       import tMat,tPC
+       import tPC,tMat
        PC a ! PC
        Mat b ! Mat
        Mat c ! Mat
@@ -1600,14 +1600,14 @@
        PetscErrorCode z
        end subroutine PCGetReusePreconditioner
       subroutine PCGetOperators(a,b,c,z)
-       import tMat,tPC
+       import tPC,tMat
        PC a ! PC
        Mat b ! Mat
        Mat c ! Mat
        PetscErrorCode z
        end subroutine PCGetOperators
       subroutine PCFactorGetMatrix(a,b,z)
-       import tMat,tPC
+       import tPC,tMat
        PC a ! PC
        Mat b ! Mat
        PetscErrorCode z
@@ -1625,7 +1625,7 @@
        PetscErrorCode z
        end subroutine PCPostSolve
       subroutine PCComputeOperator(a,b,c,z)
-       import tMat,tPC
+       import tPC,tMat
        PC a ! PC
        MatType b ! MatType
        Mat c ! Mat
@@ -1640,14 +1640,14 @@
        PetscErrorCode z
        end subroutine PCSetCoordinates
       subroutine PCGetInterpolations(a,b,c,z)
-       import tMat,tPC
+       import tPC,tMat
        PC a ! PC
        PetscInt b ! PetscInt
        Mat c (*) ! Mat
        PetscErrorCode z
        end subroutine PCGetInterpolations
       subroutine PCGetCoarseOperators(a,b,c,z)
-       import tMat,tPC
+       import tPC,tMat
        PC a ! PC
        PetscInt b ! PetscInt
        Mat c (*) ! Mat
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/ksp/ksp/impls/cg/gltr/gltr.c petsc-3.18.5+dfsg1/src/ksp/ksp/impls/cg/gltr/gltr.c
--- petsc-3.18.4+dfsg1/src/ksp/ksp/impls/cg/gltr/gltr.c	2023-01-31 06:19:48.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/ksp/ksp/impls/cg/gltr/gltr.c	2023-02-27 23:11:05.000000000 +0100
@@ -667,7 +667,7 @@
   }
 
   /***************************************************************************/
-  /* Switch to contructing the Lanczos basis by way of the conjugate         */
+  /* Switch to constructing the Lanczos basis by way of the conjugate        */
   /* directions.                                                             */
   /***************************************************************************/
 
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/ksp/ksp/impls/cheby/cheby.c petsc-3.18.5+dfsg1/src/ksp/ksp/impls/cheby/cheby.c
--- petsc-3.18.4+dfsg1/src/ksp/ksp/impls/cheby/cheby.c	2022-12-28 20:00:16.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/ksp/ksp/impls/cheby/cheby.c	2023-02-27 23:11:05.000000000 +0100
@@ -622,7 +622,7 @@
 
    Only support for left preconditioning.
 
-   Chebyshev is configured as a smoother by default, targetting the "upper" part of the spectrum.
+   Chebyshev is configured as a smoother by default, targeting the "upper" part of the spectrum.
 
    The user should call `KSPChebyshevSetEigenvalues()` to get eigenvalue estimates.
 
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/ksp/ksp/impls/gmres/agmres/agmresorthog.c petsc-3.18.5+dfsg1/src/ksp/ksp/impls/gmres/agmres/agmresorthog.c
--- petsc-3.18.4+dfsg1/src/ksp/ksp/impls/gmres/agmres/agmresorthog.c	2022-11-28 17:22:18.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/ksp/ksp/impls/gmres/agmres/agmresorthog.c	2023-02-27 23:11:05.000000000 +0100
@@ -134,7 +134,7 @@
   PetscCall(PetscLogEventBegin(KSP_AGMRESRoddec, ksp, 0, 0, 0));
   PetscCall(PetscArrayzero(agmres->Rloc, N * N));
   /* check input arguments */
-  PetscCheck(nvec >= 1, PetscObjectComm((PetscObject)ksp), PETSC_ERR_ARG_OUTOFRANGE, "The number of input vectors shoud be positive");
+  PetscCheck(nvec >= 1, PetscObjectComm((PetscObject)ksp), PETSC_ERR_ARG_OUTOFRANGE, "The number of input vectors should be positive");
   PetscCall(VecGetLocalSize(VEC_V(0), &nloc));
   PetscCall(PetscBLASIntCast(nloc, &bnloc));
   PetscCheck(nvec <= nloc, PetscObjectComm((PetscObject)ksp), PETSC_ERR_ARG_WRONG, "In QR factorization, the number of local rows should be greater or equal to the number of columns");
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/ksp/ksp/impls/gmres/dgmres/README petsc-3.18.5+dfsg1/src/ksp/ksp/impls/gmres/dgmres/README
--- petsc-3.18.4+dfsg1/src/ksp/ksp/impls/gmres/dgmres/README	2022-06-29 08:00:07.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/ksp/ksp/impls/gmres/dgmres/README	2023-02-27 23:11:05.000000000 +0100
@@ -24,4 +24,4 @@
 1. The current version shows many fluctuations in the residual history with the left preconditioning, so you should
 consider using a right preconditioning with the option -ksp_right_pc
 2. This version does not support complex arithmetics
-3. It is not compliant when a scaling is done during the appication of the preconditioner
+3. It is not compliant when a scaling is done during the application of the preconditioner
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/ksp/ksp/impls/gmres/lgmres/lgmres.c petsc-3.18.5+dfsg1/src/ksp/ksp/impls/gmres/lgmres/lgmres.c
--- petsc-3.18.4+dfsg1/src/ksp/ksp/impls/gmres/lgmres/lgmres.c	2022-10-26 15:00:16.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/ksp/ksp/impls/gmres/lgmres/lgmres.c	2023-02-27 23:11:05.000000000 +0100
@@ -272,7 +272,7 @@
     for (ii = 0; ii < aug_dim; ii++) AUG_ORDER(ii)++;
     AUG_ORDER(spot) = 1;
 
-    /*now add the A*aug vector to A_AUGVEC(spot)  - this is independ. of preconditioning type*/
+    /*now add the A*aug vector to A_AUGVEC(spot) - this is independent of preconditioning type*/
     /* want V*H*y - y is in GRS, V is in VEC_VV and H is in HES */
 
     /* first do H+*y */
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/ksp/ksp/impls/gmres/pipefgmres/pipefgmres.c petsc-3.18.5+dfsg1/src/ksp/ksp/impls/gmres/pipefgmres/pipefgmres.c
--- petsc-3.18.4+dfsg1/src/ksp/ksp/impls/gmres/pipefgmres/pipefgmres.c	2022-12-28 20:00:16.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/ksp/ksp/impls/gmres/pipefgmres/pipefgmres.c	2023-02-27 23:11:05.000000000 +0100
@@ -747,7 +747,7 @@
 
   Note:
   A heuristic is to set this to be comparable to the largest eigenvalue of the preconditioned operator.
-  This can be acheived with PETSc itself by using a few iterations of a Krylov method.
+  This can be achieved with PETSc itself by using a few iterations of a Krylov method.
   See `KSPComputeEigenvalues()` (and note the caveats there).
 
 .seealso: [](chapter_ksp), `KSPPIPEFGMRES`, `KSPComputeEigenvalues()`
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/ksp/ksp/impls/lsqr/lsqr.c petsc-3.18.5+dfsg1/src/ksp/ksp/impls/lsqr/lsqr.c
--- petsc-3.18.4+dfsg1/src/ksp/ksp/impls/lsqr/lsqr.c	2022-12-28 20:00:16.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/ksp/ksp/impls/lsqr/lsqr.c	2023-02-27 23:11:05.000000000 +0100
@@ -610,7 +610,7 @@
    Notes:
      Supports non-square (rectangular) matrices.
 
-     This variant, when applied with no preconditioning is identical to the original algorithm in exact arithematic; however, in practice, with no preconditioning
+     This variant, when applied with no preconditioning is identical to the original algorithm in exact arithmetic; however, in practice, with no preconditioning
      due to inexact arithmetic, it can converge differently. Hence when no preconditioner is used (`PCType` `PCNONE`) it automatically reverts to the original algorithm.
 
      With the PETSc built-in preconditioners, such as `PCICC`, one should call `KSPSetOperators`(ksp,A,A'*A)) since the preconditioner needs to work
@@ -622,7 +622,7 @@
 
      In exact arithmetic the LSQR method (with no preconditioning) is identical to the `KSPCG` algorithm applied to the normal equations.
      The preconditioned variant was implemented by Bas van't Hof and is essentially a left preconditioning for the Normal Equations.
-     It appears the implementation with preconditioner track the true norm of the residual and uses that in the convergence test.
+     It appears the implementation with preconditioning tracks the true norm of the residual and uses that in the convergence test.
 
    Developer Note:
     How is this related to the `KSPCGNE` implementation? One difference is that `KSPCGNE` applies
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/ksp/ksp/impls/qcg/qcg.c petsc-3.18.5+dfsg1/src/ksp/ksp/impls/qcg/qcg.c
--- petsc-3.18.4+dfsg1/src/ksp/ksp/impls/qcg/qcg.c	2022-12-28 20:00:16.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/ksp/ksp/impls/qcg/qcg.c	2023-02-27 23:11:05.000000000 +0100
@@ -54,7 +54,7 @@
 
        q(s) = g^T * s + 0.5 * s^T * H * s
 
-    which satisfies the Euclidian Norm trust region constraint
+    which satisfies the Euclidean Norm trust region constraint
 
        || D * s || <= delta,
 
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/ksp/ksp/interface/eige.c petsc-3.18.5+dfsg1/src/ksp/ksp/interface/eige.c
--- petsc-3.18.4+dfsg1/src/ksp/ksp/interface/eige.c	2022-12-28 20:00:16.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/ksp/ksp/interface/eige.c	2023-02-27 23:11:05.000000000 +0100
@@ -101,7 +101,7 @@
    `KSPMonitorSingularValue()` (which can be set with option -ksp_monitor_singular_value)
    to print the singular values at each iteration of the linear solve.
 
-   The preconditoner operator, rhs vector, solution vectors should be
+   The preconditioner operator, rhs vector, solution vectors should be
    set before this routine is called. i.e use `KSPSetOperators()`, `KSPSolve()`
 
    Level: advanced
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/ksp/ksp/interface/ftn-auto/makefile petsc-3.18.5+dfsg1/src/ksp/ksp/interface/ftn-auto/makefile
--- petsc-3.18.4+dfsg1/src/ksp/ksp/interface/ftn-auto/makefile	2023-01-31 07:00:48.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/ksp/ksp/interface/ftn-auto/makefile	2023-02-27 23:28:31.000000000 +0100
@@ -4,7 +4,7 @@
 
 CFLAGS   =
 FFLAGS   =
-SOURCEC  = eigef.c iguessf.c itclf.c itcreatef.c iterativf.c itfuncf.c itresf.c
+SOURCEC  = iguessf.c itclf.c iterativf.c itresf.c eigef.c itcreatef.c itfuncf.c
 SOURCEF  =
 SOURCEH  = 
 DIRS     =
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/ksp/ksp/interface/itcreate.c petsc-3.18.5+dfsg1/src/ksp/ksp/interface/itcreate.c
--- petsc-3.18.4+dfsg1/src/ksp/ksp/interface/itcreate.c	2022-12-28 20:00:16.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/ksp/ksp/interface/itcreate.c	2023-02-27 23:11:05.000000000 +0100
@@ -491,7 +491,7 @@
 .ve
 
     The rationale for this support is so that when creating a `TS`, `SNES`, or `KSP` the hierarchy
-    of underlying objects (i.e. `SNES`, `KSP`, `PC`, `Mat`) and their livespans can be completely
+    of underlying objects (i.e. `SNES`, `KSP`, `PC`, `Mat`) and their lifespans can be completely
     managed by the top most level object (i.e. the `TS`, `SNES`, or `KSP`). Another way to look
     at this is when you create a `SNES` you do not NEED to create a `KSP` and attach it to
     the `SNES` object (the `SNES` object manages it for you). Similarly when you create a `KSP`
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/ksp/ksp/interface/itfunc.c petsc-3.18.5+dfsg1/src/ksp/ksp/interface/itfunc.c
--- petsc-3.18.4+dfsg1/src/ksp/ksp/interface/itfunc.c	2023-01-31 06:19:48.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/ksp/ksp/interface/itfunc.c	2023-02-27 23:11:05.000000000 +0100
@@ -169,8 +169,8 @@
 
    The (harmonic) Ritz pairs are given in order of increasing (harmonic) Ritz values in modulus.
 
-   The Ritz pairs do not neccessarily accurately reflect the eigenvalues and eigenvectors of the operator, consider the
-   excellant package `SLEPc` if accurate values are required.
+   The Ritz pairs do not necessarily accurately reflect the eigenvalues and eigenvectors of the operator, consider the
+   excellent package `SLEPc` if accurate values are required.
 
    Level: advanced
 
@@ -279,7 +279,7 @@
 }
 
 /*@
-   KSPSetSkipPCSetFromOptions - prevents `KSPSetFromOptions()` from calling `PCSetFromOptions()`. This is used if the same PC is shared by more than one KSP so its options are not resetable for each KSP
+   KSPSetSkipPCSetFromOptions - prevents `KSPSetFromOptions()` from calling `PCSetFromOptions()`. This is used if the same `PC` is shared by more than one `KSP` so its options are not resettable for each `KSP`
 
    Collective
 
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/ksp/ksp/tests/ex11.c petsc-3.18.5+dfsg1/src/ksp/ksp/tests/ex11.c
--- petsc-3.18.4+dfsg1/src/ksp/ksp/tests/ex11.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/ksp/ksp/tests/ex11.c	2023-02-27 23:11:05.000000000 +0100
@@ -189,7 +189,7 @@
       VecScatter  uscat, pscat;
       Mat         A11, A22;
 
-      /* grab matrices and create the compatable u,p vectors */
+      /* grab matrices and create the compatible u,p vectors */
       PetscCall(MatCreateSubMatrix(A, isu, isu, MAT_INITIAL_MATRIX, &A11));
       PetscCall(MatCreateSubMatrix(A, isp, isp, MAT_INITIAL_MATRIX, &A22));
 
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/ksp/ksp/tutorials/ex10.c petsc-3.18.5+dfsg1/src/ksp/ksp/tutorials/ex10.c
--- petsc-3.18.4+dfsg1/src/ksp/ksp/tutorials/ex10.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/ksp/ksp/tutorials/ex10.c	2023-02-27 23:11:05.000000000 +0100
@@ -126,7 +126,7 @@
   PetscFunctionReturn(0);
 }
 
-/* ATTENTION: this is the example used in the Profiling chaper of the PETSc manual,
+/* ATTENTION: this is the example used in the Profiling chapter of the PETSc manual,
    where we referenced its profiling stages, preloading and output etc.
    When you modify it, please make sure it is still consistent with the manual.
  */
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/ksp/ksp/tutorials/ex70.c petsc-3.18.5+dfsg1/src/ksp/ksp/tutorials/ex70.c
--- petsc-3.18.4+dfsg1/src/ksp/ksp/tutorials/ex70.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/ksp/ksp/tutorials/ex70.c	2023-02-27 23:11:05.000000000 +0100
@@ -599,12 +599,12 @@
     PetscCall(DMSwarmSortGetPointsPerCell(dm, e, &npoints_e, &plist_e));
 
     PetscCall(PetscMalloc1(npoints, &nnlist));
-    /* find nearest neighour points in this cell */
+    /* find nearest neighbour points in this cell */
     PetscCall(DMSwarmGetField(dm, DMSwarmPICField_coor, NULL, NULL, (void **)&swarm_coor));
     PetscCall(DMSwarmGetField(dm, DMSwarmPICField_cellid, NULL, NULL, (void **)&swarm_cellid));
     for (q = 0; q < npoints; q++) {
-      PetscInt  qn, nearest_neighour = -1;
-      PetscReal sep, min_sep         = PETSC_MAX_REAL;
+      PetscInt  qn, nearest_neighbour = -1;
+      PetscReal sep, min_sep          = PETSC_MAX_REAL;
 
       coor_q = &xp[dim * q];
       for (qn = 0; qn < npoints_e; qn++) {
@@ -612,12 +612,12 @@
         sep     = 0.0;
         for (d = 0; d < dim; d++) sep += (coor_q[d] - coor_qn[d]) * (coor_q[d] - coor_qn[d]);
         if (sep < min_sep) {
-          nearest_neighour = plist_e[qn];
-          min_sep          = sep;
+          nearest_neighbour = plist_e[qn];
+          min_sep           = sep;
         }
       }
-      PetscCheck(nearest_neighour != -1, PETSC_COMM_SELF, PETSC_ERR_USER, "Cell %" PetscInt_FMT " is empty - cannot initialize using nearest neighbours", e);
-      nnlist[q] = nearest_neighour;
+      PetscCheck(nearest_neighbour != -1, PETSC_COMM_SELF, PETSC_ERR_USER, "Cell %" PetscInt_FMT " is empty - cannot initialize using nearest neighbours", e);
+      nnlist[q] = nearest_neighbour;
     }
     PetscCall(DMSwarmRestoreField(dm, DMSwarmPICField_cellid, NULL, NULL, (void **)&swarm_cellid));
     PetscCall(DMSwarmRestoreField(dm, DMSwarmPICField_coor, NULL, NULL, (void **)&swarm_coor));
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/ksp/ksp/tutorials/ex9.c petsc-3.18.5+dfsg1/src/ksp/ksp/tutorials/ex9.c
--- petsc-3.18.4+dfsg1/src/ksp/ksp/tutorials/ex9.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/ksp/ksp/tutorials/ex9.c	2023-02-27 23:11:05.000000000 +0100
@@ -146,7 +146,7 @@
   PetscCall(PetscLogFlops(2.0 * ldim));
 
   /*
-     End curent profiling stage
+     End current profiling stage
   */
   PetscCall(PetscLogStagePop());
 
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/ksp/pc/impls/bddc/bddcgraph.c petsc-3.18.5+dfsg1/src/ksp/pc/impls/bddc/bddcgraph.c
--- petsc-3.18.4+dfsg1/src/ksp/pc/impls/bddc/bddcgraph.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/ksp/pc/impls/bddc/bddcgraph.c	2023-02-27 23:11:05.000000000 +0100
@@ -205,7 +205,7 @@
     PetscFunctionReturn(0);
   }
   PetscCall(PetscCalloc1(graph->ncc, &mark));
-  /* loop on ccs to evalute number of faces, edges and vertices */
+  /* loop on ccs to evaluate number of faces, edges and vertices */
   nfc = 0;
   nec = 0;
   nvc = 0;
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/ksp/pc/impls/bddc/bddcprivate.c petsc-3.18.5+dfsg1/src/ksp/pc/impls/bddc/bddcprivate.c
--- petsc-3.18.4+dfsg1/src/ksp/pc/impls/bddc/bddcprivate.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/ksp/pc/impls/bddc/bddcprivate.c	2023-02-27 23:11:05.000000000 +0100
@@ -4572,7 +4572,7 @@
   if (n_constraints) PetscCall(MatDestroy(&C_CR));
   PetscCall(PetscLogEventEnd(PC_BDDC_CorrectionSetUp[pcbddc->current_level], pc, 0, 0, 0));
 
-  /* Checking coarse_sub_mat and coarse basis functios */
+  /* Checking coarse_sub_mat and coarse basis functions */
   /* Symmetric case     : It should be \Phi^{(j)^T} A^{(j)} \Phi^{(j)}=coarse_sub_mat */
   /* Non-symmetric case : It should be \Psi^{(j)^T} A^{(j)} \Phi^{(j)}=coarse_sub_mat */
   if (pcbddc->dbg_flag) {
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/ksp/pc/impls/cp/cp.c petsc-3.18.5+dfsg1/src/ksp/pc/impls/cp/cp.c
--- petsc-3.18.4+dfsg1/src/ksp/pc/impls/cp/cp.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/ksp/pc/impls/cp/cp.c	2023-02-27 23:11:05.000000000 +0100
@@ -145,7 +145,7 @@
 .ve
 
     Notes:
-    This proceedure can also be done with block columns or any groups of columns
+    This procedure can also be done with block columns or any groups of columns
     but this is not coded.
 
     These "projections" can be done simultaneously for all columns (similar to Jacobi)
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/ksp/pc/impls/deflation/deflation.c petsc-3.18.5+dfsg1/src/ksp/pc/impls/deflation/deflation.c
--- petsc-3.18.4+dfsg1/src/ksp/pc/impls/deflation/deflation.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/ksp/pc/impls/deflation/deflation.c	2023-02-27 23:11:05.000000000 +0100
@@ -609,7 +609,7 @@
       PetscCall(KSPAppendOptionsPrefix(def->WtAWinv, "deflation_tel_"));
       PetscCall(PCSetFromOptions(pcinner));
       PetscCall(PetscObjectTypeCompare((PetscObject)pcinner, PCTELESCOPE, &match));
-      PetscCheck(match, comm, PETSC_ERR_SUP, "User can not owerwrite PCTELESCOPE on bottom level, use reduction factor = 1 instead.");
+      PetscCheck(match, comm, PETSC_ERR_SUP, "User can not overwrite PCTELESCOPE on bottom level, use reduction factor = 1 instead.");
       /* Reduction factor choice */
       red = def->reductionfact;
       if (red < 0) {
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/ksp/pc/impls/fieldsplit/fieldsplit.c petsc-3.18.5+dfsg1/src/ksp/pc/impls/fieldsplit/fieldsplit.c
--- petsc-3.18.4+dfsg1/src/ksp/pc/impls/fieldsplit/fieldsplit.c	2022-12-28 20:00:16.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/ksp/pc/impls/fieldsplit/fieldsplit.c	2023-02-27 23:11:05.000000000 +0100
@@ -2293,7 +2293,7 @@
 +     a11 - the preconditioner for the Schur complement is generated from the block diagonal part of the preconditioner
      matrix associated with the Schur complement (i.e. A11), not the Schur complement matrix
 .     self - the preconditioner for the Schur complement is generated from the symbolic representation of the Schur complement matrix:
-          The only preconditioner that currently works with this symbolic respresentation matrix object is the `PCLSC`
+          The only preconditioner that currently works with this symbolic representation matrix object is the `PCLSC`
           preconditioner
 .     user - the preconditioner for the Schur complement is generated from the user provided matrix (pre argument
           to this function).
@@ -2703,8 +2703,8 @@
     Level: intermediate
 
     Notes:
-    This shift is in general done to obtain better convergence properties for the outer loop of the algorithm. This is often achieved by chosing nu sufficiently big. However,
-    if nu is chosen too big, the matrix H might be badly conditioned and the solution of the linear system Hx = b in the inner loop gets difficult. It is therefore
+    This shift is in general done to obtain better convergence properties for the outer loop of the algorithm. This is often achieved by choosing nu sufficiently big. However,
+    if nu is chosen too big, the matrix H might be badly conditioned and the solution of the linear system Hx = b in the inner loop becomes difficult. It is therefore
     necessary to find a good balance in between the convergence of the inner and outer loop.
 
     For nu = 0, no shift is done. In this case A00 has to be positive definite. The matrix N in [Ar13] is then chosen as identity.
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/ksp/pc/impls/gamg/gamg.c petsc-3.18.5+dfsg1/src/ksp/pc/impls/gamg/gamg.c
--- petsc-3.18.4+dfsg1/src/ksp/pc/impls/gamg/gamg.c	2022-12-28 20:00:16.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/ksp/pc/impls/gamg/gamg.c	2023-02-27 23:11:05.000000000 +0100
@@ -131,7 +131,7 @@
 #endif
     PetscCall(MatGetSize(Cmat, &ncrs_eq_glob, NULL));
     new_size = (PetscMPIInt)((float)ncrs_eq_glob / (float)pc_gamg->min_eq_proc + 0.5); /* hardwire min. number of eq/proc */
-    if (!new_size) new_size = 1;                                                       /* not likely, posible? */
+    if (!new_size) new_size = 1;                                                       /* not likely, possible? */
     else if (new_size >= nactive) new_size = nactive;                                  /* no change, rare */
     PetscCall(PetscInfo(pc, "%s: Coarse grid reduction from %d to %d active processes\n", ((PetscObject)pc)->prefix, nactive, new_size));
   }
@@ -1454,7 +1454,7 @@
     PetscCall((*pc_gamg->ops->destroy)(pc));
     PetscCall(PetscMemzero(pc_gamg->ops, sizeof(struct _PCGAMGOps)));
     pc_gamg->ops->createlevel = PCGAMGCreateLevel_GAMG;
-    /* cleaning up common data in pc_gamg - this should disapear someday */
+    /* cleaning up common data in pc_gamg - this should disappear someday */
     pc_gamg->data_cell_cols      = 0;
     pc_gamg->data_cell_rows      = 0;
     pc_gamg->orig_data_cell_cols = 0;
@@ -1554,9 +1554,9 @@
 
    Options Database Keys:
 +   -pc_gamg_type <type,default=agg> - one of agg, geo, or classical
-.   -pc_gamg_repartition  <bool,default=false> - repartition the degrees of freedom accross the coarse grids as they are determined
+.   -pc_gamg_repartition  <bool,default=false> - repartition the degrees of freedom across the coarse grids as they are determined
 .   -pc_gamg_asm_use_agg <bool,default=false> - use the aggregates from the coasening process to defined the subdomains on each level for the PCASM smoother
-.   -pc_gamg_process_eq_limit <limit, default=50> - `PCGAMG` will reduce the number of MPI processes used directly on the coarse grids so that there are around <limit>
+.   -pc_gamg_process_eq_limit <limit, default=50> - `PCGAMG` will reduce the number of MPI ranks used directly on the coarse grids so that there are around <limit>
                                         equations on each process that has degrees of freedom
 .   -pc_gamg_coarse_eq_limit <limit, default=50> - Set maximum number of equations on coarsest grid to aim for.
 .   -pc_gamg_reuse_interpolation <bool,default=true> - when rebuilding the algebraic multigrid preconditioner reuse the previously computed interpolations (should always be true)
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/ksp/pc/impls/gasm/gasm.c petsc-3.18.5+dfsg1/src/ksp/pc/impls/gasm/gasm.c
--- petsc-3.18.4+dfsg1/src/ksp/pc/impls/gasm/gasm.c	2022-12-28 20:00:16.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/ksp/pc/impls/gasm/gasm.c	2023-02-27 23:11:05.000000000 +0100
@@ -1628,7 +1628,7 @@
   ystart = 0;
   for (j = 0; j < Ndomains; ++j) {
     maxheight = N / Ndomains + ((N % Ndomains) > j); /* Maximal height of subdomain */
-    PetscCheck(maxheight >= 2, PETSC_COMM_SELF, PETSC_ERR_ARG_OUTOFRANGE, "Too many %" PetscInt_FMT " subdomains in the vertical directon for mesh height %" PetscInt_FMT, Ndomains, N);
+    PetscCheck(maxheight >= 2, PETSC_COMM_SELF, PETSC_ERR_ARG_OUTOFRANGE, "Too many %" PetscInt_FMT " subdomains in the vertical direction for mesh height %" PetscInt_FMT, Ndomains, N);
     /* Vertical domain limits with an overlap. */
     ylow   = PetscMax(ystart - overlap, 0);
     yhigh  = PetscMin(ystart + maxheight + overlap, N);
@@ -1657,7 +1657,7 @@
   ystart = 0;
   for (j = 0; j < Ndomains; ++j) {
     maxheight = N / Ndomains + ((N % Ndomains) > j); /* Maximal height of subdomain */
-    PetscCheck(maxheight >= 2, PETSC_COMM_SELF, PETSC_ERR_ARG_OUTOFRANGE, "Too many %" PetscInt_FMT " subdomains in the vertical directon for mesh height %" PetscInt_FMT, Ndomains, N);
+    PetscCheck(maxheight >= 2, PETSC_COMM_SELF, PETSC_ERR_ARG_OUTOFRANGE, "Too many %" PetscInt_FMT " subdomains in the vertical direction for mesh height %" PetscInt_FMT, Ndomains, N);
     /* Vertical domain limits with an overlap. */
     y[0][0] = PetscMax(ystart - overlap, 0);
     y[0][1] = PetscMin(ystart + maxheight + overlap, N);
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/ksp/pc/impls/is/pcis.c petsc-3.18.5+dfsg1/src/ksp/pc/impls/is/pcis.c
--- petsc-3.18.4+dfsg1/src/ksp/pc/impls/is/pcis.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/ksp/pc/impls/is/pcis.c	2023-02-27 23:11:05.000000000 +0100
@@ -159,7 +159,7 @@
     for (i = 0; i < pcis->n_neigh; i++)
       for (j = 0; j < pcis->n_shared[i]; j++) PetscCall(PetscBTSet(bt, pcis->shared[i][j]));
 
-    /* Creating local and global index sets for interior and inteface nodes. */
+    /* Creating local and global index sets for interior and interface nodes. */
     PetscCall(PetscMalloc1(pcis->n, &idx_I_local));
     PetscCall(PetscMalloc1(pcis->n, &idx_B_local));
     for (i = 0, pcis->n_B = 0, n_I = 0; i < pcis->n; i++) {
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/ksp/pc/impls/ksp/pcksp.c petsc-3.18.5+dfsg1/src/ksp/pc/impls/ksp/pcksp.c
--- petsc-3.18.4+dfsg1/src/ksp/pc/impls/ksp/pcksp.c	2022-12-28 20:00:16.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/ksp/pc/impls/ksp/pcksp.c	2023-02-27 23:11:05.000000000 +0100
@@ -247,7 +247,7 @@
    Developer Note:
     If the outer Krylov method has a nonzero initial guess it will compute a new residual based on that initial guess
     and pass that as the right hand side into this `KSP` (and hence this `KSP` will always have a zero initial guess). For all outer Krylov methods
-    except Richardson this is neccessary since Krylov methods, even the flexible ones, need to "see" the result of the action of the preconditioner on the
+    except Richardson this is necessary since Krylov methods, even the flexible ones, need to "see" the result of the action of the preconditioner on the
     input (current residual) vector, the action of the preconditioner cannot depend also on some other vector (the "initial guess"). For
     `KSPRICHARDSON` it is possible to provide a `PCApplyRichardson_PCKSP()` that short circuits returning to the `KSP` object at each iteration to compute the
     residual, see for example `PCApplyRichardson_SOR()`. We do not implement a `PCApplyRichardson_PCKSP()`  because (1) using a `KSP` directly inside a Richardson
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/ksp/pc/impls/ml/ml.c petsc-3.18.5+dfsg1/src/ksp/pc/impls/ml/ml.c
--- petsc-3.18.4+dfsg1/src/ksp/pc/impls/ml/ml.c	2023-01-31 06:19:48.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/ksp/pc/impls/ml/ml.c	2023-02-27 23:11:05.000000000 +0100
@@ -1012,7 +1012,7 @@
   }
   /* energy minimization sometimes breaks if this is turned off, the more classical stuff should be okay without it */
   if (pc_ml->EnergyMinimization) pc_ml->KeepAggInfo = PETSC_TRUE;
-  PetscCall(PetscOptionsBool("-pc_ml_KeepAggInfo", "Allows the preconditioner to be reused, or auxilliary matrices to be generated", "None", pc_ml->KeepAggInfo, &pc_ml->KeepAggInfo, NULL));
+  PetscCall(PetscOptionsBool("-pc_ml_KeepAggInfo", "Allows the preconditioner to be reused, or auxiliary matrices to be generated", "None", pc_ml->KeepAggInfo, &pc_ml->KeepAggInfo, NULL));
   /* Option (-1) doesn't work at all (calls exit(1)) if the tentative restriction operator isn't stored. */
   if (pc_ml->EnergyMinimization == -1) pc_ml->Reusable = PETSC_TRUE;
   PetscCall(PetscOptionsBool("-pc_ml_Reusable", "Store intermedaiate data structures so that the multilevel hierarchy is reusable", "None", pc_ml->Reusable, &pc_ml->Reusable, NULL));
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/ksp/pc/impls/mpi/pcmpi.c petsc-3.18.5+dfsg1/src/ksp/pc/impls/mpi/pcmpi.c
--- petsc-3.18.4+dfsg1/src/ksp/pc/impls/mpi/pcmpi.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/ksp/pc/impls/mpi/pcmpi.c	2023-02-27 23:11:05.000000000 +0100
@@ -311,7 +311,7 @@
   if (!ksp) PetscFunctionReturn(0);
   PetscCall(PetscObjectGetComm((PetscObject)ksp, &comm));
 
-  /* TODO: optimize code to not require building counts/displ everytime */
+  /* TODO: optimize code to not require building counts/displ every time */
 
   /* scatterv rhs */
   PetscCallMPI(MPI_Comm_size(comm, &size));
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/ksp/pc/impls/pbjacobi/pbjacobi.c petsc-3.18.5+dfsg1/src/ksp/pc/impls/pbjacobi/pbjacobi.c
--- petsc-3.18.4+dfsg1/src/ksp/pc/impls/pbjacobi/pbjacobi.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/ksp/pc/impls/pbjacobi/pbjacobi.c	2023-02-27 23:11:05.000000000 +0100
@@ -336,7 +336,7 @@
    Developer Notes:
      This should support the `PCSetErrorIfFailure()` flag set to `PETSC_TRUE` to allow
      the factorization to continue even after a zero pivot is found resulting in a Nan and hence
-     terminating `KSP` with a `KSP_DIVERGED_NANORIF` allowing
+     terminating `KSP` with a `KSP_DIVERGED_NANORINF` allowing
      a nonlinear solver/ODE integrator to recover without stopping the program as currently happens.
 
      Perhaps should provide an option that allows generation of a valid preconditioner
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/ksp/pc/impls/redistribute/redistribute.c petsc-3.18.5+dfsg1/src/ksp/pc/impls/redistribute/redistribute.c
--- petsc-3.18.4+dfsg1/src/ksp/pc/impls/redistribute/redistribute.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/ksp/pc/impls/redistribute/redistribute.c	2023-02-27 23:11:05.000000000 +0100
@@ -338,21 +338,22 @@
      PCREDISTRIBUTE - Redistributes a matrix for load balancing, removing the rows (and the corresponding columns) that only have a diagonal entry and then
      applies a `KSP` to that new smaller matrix
 
+     Level: intermediate
+
      Notes:
      Options for the redistribute `KSP` and `PC` with the options database prefix -redistribute_
 
-     Usually run this with -ksp_type preonly
+     Usually run this with `-ksp_type preonly`
 
-     If you have used `MatZeroRows()` to eliminate (for example, Dirichlet) boundary conditions for a symmetric problem then you can use, for example, -ksp_type preonly
-     -pc_type redistribute -redistribute_ksp_type cg -redistribute_pc_type bjacobi -redistribute_sub_pc_type icc to take advantage of the symmetry.
+     If you have used `MatZeroRows()` to eliminate (for example, Dirichlet) boundary conditions for a symmetric problem then you can use, for example, `-ksp_type preonly
+     -pc_type redistribute -redistribute_ksp_type cg -redistribute_pc_type bjacobi -redistribute_sub_pc_type icc` to take advantage of the symmetry.
 
-     This does NOT call a partitioner to reorder rows to lower communication; the ordering of the rows in the original matrix and redistributed matrix is the same.
+     This does NOT call a partitioner to reorder rows to lower communication; the ordering of the rows in the original matrix and redistributed matrix is the same. Rows are moved
+     between MPI processes inside the preconditioner to balance the number of rows on each process.
 
      Developer Note:
      Should add an option to this preconditioner to use a partitioner to redistribute the rows to lower communication.
 
-   Level: intermediate
-
 .seealso: `PCCreate()`, `PCSetType()`, `PCType`, `PCRedistributeGetKSP()`, `MatZeroRows()`
 M*/
 
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/ksp/pc/impls/sor/sor.c petsc-3.18.5+dfsg1/src/ksp/pc/impls/sor/sor.c
--- petsc-3.18.4+dfsg1/src/ksp/pc/impls/sor/sor.c	2023-01-31 06:19:48.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/ksp/pc/impls/sor/sor.c	2023-02-27 23:11:05.000000000 +0100
@@ -405,7 +405,7 @@
    Jacobi with SOR on each block.
 
           For `MATAIJ` matrices if a diagonal entry is zero (and the diagonal shift is zero) then by default the inverse of that
-          zero will be used and hence the `KSPSolve()` will terminate with `KSP_DIVERGED_NANORIF`. If the option
+          zero will be used and hence the `KSPSolve()` will terminate with `KSP_DIVERGED_NANORINF`. If the option
           `KSPSetErrorIfNotConverged()` or -ksp_error_if_not_converged the code will terminate as soon as it detects the
           zero pivot.
 
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/ksp/pc/impls/telescope/telescope.c petsc-3.18.5+dfsg1/src/ksp/pc/impls/telescope/telescope.c
--- petsc-3.18.4+dfsg1/src/ksp/pc/impls/telescope/telescope.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/ksp/pc/impls/telescope/telescope.c	2023-02-27 23:11:05.000000000 +0100
@@ -1240,7 +1240,7 @@
    `PCTELESCOPE` will interpret the coarse `DM` as being defined on a sub-communicator of c.
    The communicator associated with dmcoarse will define the c' to be used within `PCTELESCOPE`.
    `PCTELESCOPE` will check that c' is in fact a sub-communicator of c. If it is not, an error will be reported.
-   The intention of this setup type is that` PCTELESCOPE` will use an existing (e.g. user defined) communicator hierarchy, say as would be
+   The intention of this setup type is that `PCTELESCOPE` will use an existing (e.g. user defined) communicator hierarchy, say as would be
    available with using multi-grid on unstructured meshes.
    This setup will not use the command line options -pc_telescope_reduction_factor or -pc_telescope_subcomm_type.
    Any explicitly defined nullspace or near nullspace vectors attached to the original Bmat operator (B) are extracted, scattered into the correct ordering consistent with dmcoarse and set on B'.
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/ksp/pc/impls/vpbjacobi/vpbjacobi.c petsc-3.18.5+dfsg1/src/ksp/pc/impls/vpbjacobi/vpbjacobi.c
--- petsc-3.18.4+dfsg1/src/ksp/pc/impls/vpbjacobi/vpbjacobi.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/ksp/pc/impls/vpbjacobi/vpbjacobi.c	2023-02-27 23:11:05.000000000 +0100
@@ -185,7 +185,7 @@
    Developer Notes:
      This should support the `PCSetErrorIfFailure()` flag set to `PETSC_TRUE` to allow
      the factorization to continue even after a zero pivot is found resulting in a Nan and hence
-     terminating `KSP` with a `KSP_DIVERGED_NANORIF` allowing
+     terminating `KSP` with a `KSP_DIVERGED_NANORINF` allowing
      a nonlinear solver/ODE integrator to recover without stopping the program as currently happens.
 
      Perhaps should provide an option that allows generation of a valid preconditioner
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/ksp/pc/interface/precon.c petsc-3.18.5+dfsg1/src/ksp/pc/interface/precon.c
--- petsc-3.18.4+dfsg1/src/ksp/pc/interface/precon.c	2022-12-28 20:00:16.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/ksp/pc/interface/precon.c	2023-02-27 23:11:05.000000000 +0100
@@ -1285,7 +1285,7 @@
 .ve
 
     The rationale for this support is so that when creating a `TS`, `SNES`, or `KSP` the hierarchy
-    of underlying objects (i.e. `SNES`, `KSP`, `PC`, `Mat`) and their livespans can be completely
+    of underlying objects (i.e. `SNES`, `KSP`, `PC`, `Mat`) and their lifespans can be completely
     managed by the top most level object (i.e. the `TS`, `SNES`, or `KSP`). Another way to look
     at this is when you create a `SNES` you do not NEED to create a `KSP` and attach it to
     the `SNES` object (the `SNES` object manages it for you). Similarly when you create a KSP
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/ksp/pc/tests/ex6.c petsc-3.18.5+dfsg1/src/ksp/pc/tests/ex6.c
--- petsc-3.18.4+dfsg1/src/ksp/pc/tests/ex6.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/ksp/pc/tests/ex6.c	2023-02-27 23:11:05.000000000 +0100
@@ -75,7 +75,7 @@
     PetscCall(PCASMCreateSubdomains2D(m + 1, m + 1, x1, x2, 1, ol, &Nsub2, &is2, &islocal2));
 
     PetscCall(PetscPrintf(PETSC_COMM_SELF, "flg == 1 => both index sets are same\n"));
-    if (Nsub1 != Nsub2) PetscCall(PetscPrintf(PETSC_COMM_SELF, "Error: No of indes sets don't match\n"));
+    if (Nsub1 != Nsub2) PetscCall(PetscPrintf(PETSC_COMM_SELF, "Error: No of index sets don't match\n"));
 
     for (i = 0; i < Nsub1; ++i) {
       PetscCall(ISEqual(is1[i], is2[i], &flg));
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/mat/coarsen/impls/hem/hem.c petsc-3.18.5+dfsg1/src/mat/coarsen/impls/hem/hem.c
--- petsc-3.18.4+dfsg1/src/mat/coarsen/impls/hem/hem.c	2022-11-28 17:22:18.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/mat/coarsen/impls/hem/hem.c	2023-02-27 23:11:05.000000000 +0100
@@ -12,7 +12,7 @@
   PetscCoarsenData *ail;
 
   PetscFunctionBegin;
-  /* alocate pool, partially */
+  /* allocate pool, partially */
   PetscCall(PetscNew(&ail));
   *a_out               = ail;
   ail->pool_list.next  = NULL;
@@ -771,7 +771,7 @@
         }
         /* receive requests, send response, clear lists */
         kk = nactive_edges;
-        PetscCall(MPIU_Allreduce(&kk, &nactive_edges, 1, MPIU_INT, MPI_SUM, comm)); /* not correct syncronization and global */
+        PetscCall(MPIU_Allreduce(&kk, &nactive_edges, 1, MPIU_INT, MPI_SUM, comm)); /* not correct synchronization and global */
         nSend2 = 0;
         while (1) {
 #define BF_SZ 10000
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/mat/coarsen/impls/mis/mis.c petsc-3.18.5+dfsg1/src/mat/coarsen/impls/mis/mis.c
--- petsc-3.18.4+dfsg1/src/mat/coarsen/impls/mis/mis.c	2023-01-31 06:19:48.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/mat/coarsen/impls/mis/mis.c	2023-02-27 23:11:05.000000000 +0100
@@ -93,7 +93,7 @@
   /* MIS */
   nremoved = nDone = 0;
   PetscCall(ISGetIndices(perm, &perm_ix));
-  while (nDone < nloc || PETSC_TRUE) { /* asyncronous not implemented */
+  while (nDone < nloc || PETSC_TRUE) { /* asynchronous not implemented */
     /* check all vertices */
     for (kk = 0; kk < nloc; kk++) {
       lid   = perm_ix[kk];
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/mat/f90-mod/ftn-auto-interfaces/petscmat.h90 petsc-3.18.5+dfsg1/src/mat/f90-mod/ftn-auto-interfaces/petscmat.h90
--- petsc-3.18.4+dfsg1/src/mat/f90-mod/ftn-auto-interfaces/petscmat.h90	2023-01-31 07:00:50.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/mat/f90-mod/ftn-auto-interfaces/petscmat.h90	2023-02-27 23:28:35.000000000 +0100
@@ -69,7 +69,7 @@
        PetscErrorCode z
        end subroutine MatMPIAIJGetLocalMat
       subroutine MatMPIAIJGetLocalMatMerge(a,b,c,d,z)
-       import tIS,tMat
+       import tMat,tIS
        Mat a ! Mat
        MatReuse b ! MatReuse
        IS c ! IS
@@ -632,7 +632,7 @@
        PetscErrorCode z
        end subroutine MatKAIJSetAIJ
       subroutine MatCreateLocalRef(a,b,c,d,z)
-       import tIS,tMat
+       import tMat,tIS
        Mat a ! Mat
        IS b ! IS
        IS c ! IS
@@ -760,7 +760,7 @@
        PetscErrorCode z
        end subroutine MatNestGetSize
       subroutine MatNestSetSubMats(a,b,c,d,e,f,z)
-       import tIS,tMat
+       import tMat,tIS
        Mat a ! Mat
        PetscInt b ! PetscInt
        IS c (*) ! IS
@@ -876,7 +876,7 @@
        PetscErrorCode z
        end subroutine MatIsShell
       subroutine MatCreateSubMatrixVirtual(a,b,c,d,z)
-       import tIS,tMat
+       import tMat,tIS
        Mat a ! Mat
        IS b ! IS
        IS c ! IS
@@ -884,7 +884,7 @@
        PetscErrorCode z
        end subroutine MatCreateSubMatrixVirtual
       subroutine MatSubMatrixVirtualUpdate(a,b,c,d,z)
-       import tIS,tMat
+       import tMat,tIS
        Mat a ! Mat
        Mat b ! Mat
        IS c ! IS
@@ -916,7 +916,7 @@
        PetscErrorCode z
        end subroutine MatCreateTranspose
       subroutine MatNullSpaceCreateRigidBody(a,b,z)
-       import tMatNullSpace,tVec
+       import tVec,tMatNullSpace
        Vec a ! Vec
        MatNullSpace b ! MatNullSpace
        PetscErrorCode z
@@ -927,7 +927,7 @@
        PetscErrorCode z
        end subroutine MatNullSpaceDestroy
       subroutine MatNullSpaceTest(a,b,c,z)
-       import tMatNullSpace,tMat
+       import tMat,tMatNullSpace
        MatNullSpace a ! MatNullSpace
        Mat b ! Mat
        PetscBool c ! PetscBool
@@ -997,7 +997,7 @@
        PetscErrorCode z
        end subroutine MatProductGetMats
       subroutine MatSetRandom(a,b,z)
-       import tMat,tPetscRandom
+       import tPetscRandom,tMat
        Mat a ! Mat
        PetscRandom b ! PetscRandom
        PetscErrorCode z
@@ -1021,13 +1021,13 @@
        PetscErrorCode z
        end subroutine MatFactorClearError
       subroutine MatFindNonzeroRows(a,b,z)
-       import tIS,tMat
+       import tMat,tIS
        Mat a ! Mat
        IS b ! IS
        PetscErrorCode z
        end subroutine MatFindNonzeroRows
       subroutine MatFindZeroRows(a,b,z)
-       import tIS,tMat
+       import tMat,tIS
        Mat a ! Mat
        IS b ! IS
        PetscErrorCode z
@@ -1221,14 +1221,14 @@
        PetscErrorCode z
        end subroutine MatMultHermitianTransposeAdd
       subroutine MatQRFactor(a,b,c,z)
-       import tIS,tMat
+       import tMat,tIS
        Mat a ! Mat
        IS b ! IS
        MatFactorInfo c ! MatFactorInfo
        PetscErrorCode z
        end subroutine MatQRFactor
       subroutine MatQRFactorSymbolic(a,b,c,d,z)
-       import tIS,tMat
+       import tMat,tIS
        Mat a ! Mat
        Mat b ! Mat
        IS c ! IS
@@ -1388,7 +1388,7 @@
        PetscErrorCode z
        end subroutine MatIsHermitianTranspose
       subroutine MatPermute(a,b,c,d,z)
-       import tIS,tMat
+       import tMat,tIS
        Mat a ! Mat
        IS b ! IS
        IS c ! IS
@@ -1470,7 +1470,7 @@
        PetscErrorCode z
        end subroutine MatZeroRowsColumns
       subroutine MatZeroRowsColumnsIS(a,b,c,d,e,z)
-       import tIS,tMat,tVec
+       import tVec,tMat,tIS
        Mat a ! Mat
        IS b ! IS
        PetscScalar c ! PetscScalar
@@ -1489,7 +1489,7 @@
        PetscErrorCode z
        end subroutine MatZeroRows
       subroutine MatZeroRowsIS(a,b,c,d,e,z)
-       import tIS,tMat,tVec
+       import tVec,tMat,tIS
        Mat a ! Mat
        IS b ! IS
        PetscScalar c ! PetscScalar
@@ -1518,7 +1518,7 @@
        PetscErrorCode z
        end subroutine MatZeroRowsColumnsStencil
       subroutine MatZeroRowsLocalIS(a,b,c,d,e,z)
-       import tIS,tMat,tVec
+       import tVec,tMat,tIS
        Mat a ! Mat
        IS b ! IS
        PetscScalar c ! PetscScalar
@@ -1537,7 +1537,7 @@
        PetscErrorCode z
        end subroutine MatZeroRowsColumnsLocal
       subroutine MatZeroRowsColumnsLocalIS(a,b,c,d,e,z)
-       import tIS,tMat,tVec
+       import tVec,tMat,tIS
        Mat a ! Mat
        IS b ! IS
        PetscScalar c ! PetscScalar
@@ -1546,7 +1546,7 @@
        PetscErrorCode z
        end subroutine MatZeroRowsColumnsLocalIS
       subroutine MatIncreaseOverlap(a,b,c,d,z)
-       import tIS,tMat
+       import tMat,tIS
        Mat a ! Mat
        PetscInt b ! PetscInt
        IS c (*) ! IS
@@ -1554,7 +1554,7 @@
        PetscErrorCode z
        end subroutine MatIncreaseOverlap
       subroutine MatIncreaseOverlapSplit(a,b,c,d,z)
-       import tIS,tMat
+       import tMat,tIS
        Mat a ! Mat
        PetscInt b ! PetscInt
        IS c (*) ! IS
@@ -1622,7 +1622,7 @@
        PetscErrorCode z
        end subroutine MatSetUnfactored
       subroutine MatCreateSubMatrix(a,b,c,d,e,z)
-       import tIS,tMat
+       import tMat,tIS
        Mat a ! Mat
        IS b ! IS
        IS c ! IS
@@ -1688,37 +1688,37 @@
        PetscErrorCode z
        end subroutine MatMatRestrict
       subroutine MatGetNullSpace(a,b,z)
-       import tMatNullSpace,tMat
+       import tMat,tMatNullSpace
        Mat a ! Mat
        MatNullSpace b ! MatNullSpace
        PetscErrorCode z
        end subroutine MatGetNullSpace
       subroutine MatSetNullSpace(a,b,z)
-       import tMatNullSpace,tMat
+       import tMat,tMatNullSpace
        Mat a ! Mat
        MatNullSpace b ! MatNullSpace
        PetscErrorCode z
        end subroutine MatSetNullSpace
       subroutine MatGetTransposeNullSpace(a,b,z)
-       import tMatNullSpace,tMat
+       import tMat,tMatNullSpace
        Mat a ! Mat
        MatNullSpace b ! MatNullSpace
        PetscErrorCode z
        end subroutine MatGetTransposeNullSpace
       subroutine MatSetTransposeNullSpace(a,b,z)
-       import tMatNullSpace,tMat
+       import tMat,tMatNullSpace
        Mat a ! Mat
        MatNullSpace b ! MatNullSpace
        PetscErrorCode z
        end subroutine MatSetTransposeNullSpace
       subroutine MatSetNearNullSpace(a,b,z)
-       import tMatNullSpace,tMat
+       import tMat,tMatNullSpace
        Mat a ! Mat
        MatNullSpace b ! MatNullSpace
        PetscErrorCode z
        end subroutine MatSetNearNullSpace
       subroutine MatGetNearNullSpace(a,b,z)
-       import tMatNullSpace,tMat
+       import tMat,tMatNullSpace
        Mat a ! Mat
        MatNullSpace b ! MatNullSpace
        PetscErrorCode z
@@ -1795,7 +1795,7 @@
        PetscErrorCode z
        end subroutine MatStashGetInfo
       subroutine MatFactorSetSchurIS(a,b,z)
-       import tIS,tMat
+       import tMat,tIS
        Mat a ! Mat
        IS b ! IS
        PetscErrorCode z
@@ -1910,7 +1910,7 @@
        PetscErrorCode z
        end subroutine MatCreateRedundantMatrix
       subroutine MatGetLocalSubMatrix(a,b,c,d,z)
-       import tIS,tMat
+       import tMat,tIS
        Mat a ! Mat
        IS b ! IS
        IS c ! IS
@@ -1918,7 +1918,7 @@
        PetscErrorCode z
        end subroutine MatGetLocalSubMatrix
       subroutine MatRestoreLocalSubMatrix(a,b,c,d,z)
-       import tIS,tMat
+       import tMat,tIS
        Mat a ! Mat
        IS b ! IS
        IS c ! IS
@@ -1926,13 +1926,13 @@
        PetscErrorCode z
        end subroutine MatRestoreLocalSubMatrix
       subroutine MatFindZeroDiagonals(a,b,z)
-       import tIS,tMat
+       import tMat,tIS
        Mat a ! Mat
        IS b ! IS
        PetscErrorCode z
        end subroutine MatFindZeroDiagonals
       subroutine MatFindOffBlockDiagonalEntries(a,b,z)
-       import tIS,tMat
+       import tMat,tIS
        Mat a ! Mat
        IS b ! IS
        PetscErrorCode z
@@ -1959,7 +1959,7 @@
        PetscErrorCode z
        end subroutine MatCreateMPIMatConcatenateSeqMat
       subroutine MatSubdomainsCreateCoalesce(a,b,c,d,z)
-       import tIS,tMat
+       import tMat,tIS
        Mat a ! Mat
        PetscInt b ! PetscInt
        PetscInt c ! PetscInt
@@ -2004,7 +2004,7 @@
        PetscErrorCode z
        end subroutine MatFDColoringSetBlockSize
       subroutine MatFDColoringSetUp(a,b,c,z)
-       import tISColoring,tMat,tMatFDColoring
+       import tMat,tISColoring,tMatFDColoring
        Mat a ! Mat
        ISColoring b ! ISColoring
        MatFDColoring c ! MatFDColoring
@@ -2016,7 +2016,7 @@
        PetscErrorCode z
        end subroutine MatFDColoringSetFromOptions
       subroutine MatFDColoringCreate(a,b,c,z)
-       import tISColoring,tMat,tMatFDColoring
+       import tMat,tISColoring,tMatFDColoring
        Mat a ! Mat
        ISColoring b ! ISColoring
        MatFDColoring c ! MatFDColoring
@@ -2298,7 +2298,7 @@
        PetscErrorCode z
        end subroutine MatIsLinear
       subroutine MatReorderForNonzeroDiagonal(a,b,c,d,z)
-       import tIS,tMat
+       import tMat,tIS
        Mat a ! Mat
        PetscReal b ! PetscReal
        IS c ! IS
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/mat/impls/aij/mpi/kokkos/mpiaijkok.kokkos.cxx petsc-3.18.5+dfsg1/src/mat/impls/aij/mpi/kokkos/mpiaijkok.kokkos.cxx
--- petsc-3.18.4+dfsg1/src/mat/impls/aij/mpi/kokkos/mpiaijkok.kokkos.cxx	2022-12-28 20:00:16.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/mat/impls/aij/mpi/kokkos/mpiaijkok.kokkos.cxx	2023-02-27 23:11:05.000000000 +0100
@@ -480,7 +480,7 @@
                   unrelated places in Ca, so dstrowoffset is not in CSR-like format as srcrowoffset.
 -  C            - the matrix made up by rows sent to me from other ranks, using global col ids
 
-   TODO: we can even have MatSeqAIJKokkosReduceBegin/End to provide oppertunity for callers to overlap comp./comm. when reuse = MAT_REUSE_MATRIX.
+   TODO: we can even have MatSeqAIJKokkosReduceBegin/End to provide opportunity for callers to overlap comp./comm. when reuse = MAT_REUSE_MATRIX.
  */
 static PetscErrorCode MatSeqAIJKokkosReduce(Mat A, MatReuse reuse, PetscBool local, PetscInt N, const ConstMatColIdxKokkosView &l2g, PetscSF ownerSF, PetscSF &reduceSF, MatScalarKokkosView &abuf, MatRowMapKokkosView &srcrowoffset, MatRowMapKokkosView &dstrowoffset, KokkosCsrMatrix &C)
 {
@@ -917,7 +917,7 @@
   /* C2 = Ao * B_other. B_other is a matrix consisting of needed rows of B gathered from other procs */
   PetscCall(MatSeqAIJKokkosBcast(mm->B_local, MAT_INITIAL_MATRIX, N, l2g1, a->Mvctx, mm->sf, mm->abuf, mm->rows, mm->rowoffset, mm->B_other));
 
-  /* Compact B_other to use local ids as we guess KK spgemm is more memroy scalable with that; We could skip the compaction to simplify code */
+  /* Compact B_other to use local ids as we guess KK spgemm is more memory scalable with that; We could skip the compaction to simplify code */
   PetscCall(MatSeqAIJCompactOutExtraColumns_SeqAIJKokkos(mm->B_other, l2g2));
   PetscCall(MatProductCreate(Ao, mm->B_other, NULL, &C2));
   PetscCall(MatProductSetType(C2, MATPRODUCT_AB));
@@ -1568,7 +1568,7 @@
     h_mat.diag.i = aijkokA->i_device_data();
     h_mat.diag.j = aijkokA->j_device_data();
     h_mat.diag.a = aijkokA->a_device_data();
-    // copy pointers and metdata to device
+    // copy pointers and metadata to device
     PetscCall(MatSeqAIJKokkosSetDeviceMat(Amat, &h_mat));
     PetscCall(MatSeqAIJKokkosGetDeviceMat(Amat, &d_mat));
     PetscCall(PetscInfo(A, "Create device Mat n=%" PetscInt_FMT " nnz=%" PetscInt_FMT "\n", h_mat.diag.n, nnz));
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/mat/impls/aij/mpi/mkl_cpardiso/mkl_cpardiso.c petsc-3.18.5+dfsg1/src/mat/impls/aij/mpi/mkl_cpardiso/mkl_cpardiso.c
--- petsc-3.18.4+dfsg1/src/mat/impls/aij/mpi/mkl_cpardiso/mkl_cpardiso.c	2022-12-28 20:00:16.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/mat/impls/aij/mpi/mkl_cpardiso/mkl_cpardiso.c	2023-02-27 23:11:05.000000000 +0100
@@ -584,7 +584,7 @@
   mat_mkl_cpardiso->iparm[27]     = 0;
 #endif
 
-  mat_mkl_cpardiso->iparm[0]  = 1;  /* Solver default parameters overriden with provided by iparm */
+  mat_mkl_cpardiso->iparm[0]  = 1;  /* Solver default parameters overridden with provided by iparm */
   mat_mkl_cpardiso->iparm[1]  = 2;  /* Use METIS for fill-in reordering */
   mat_mkl_cpardiso->iparm[5]  = 0;  /* Write solution into x */
   mat_mkl_cpardiso->iparm[7]  = 2;  /* Max number of iterative refinement steps */
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/mat/impls/aij/mpi/mpiaij.c petsc-3.18.5+dfsg1/src/mat/impls/aij/mpi/mpiaij.c
--- petsc-3.18.4+dfsg1/src/mat/impls/aij/mpi/mpiaij.c	2023-01-31 06:19:48.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/mat/impls/aij/mpi/mpiaij.c	2023-02-27 23:11:05.000000000 +0100
@@ -6397,7 +6397,7 @@
     }
   }
 
-  /* Sort by row; after that, [0,k) have ignored entires, [k,rem) have local rows and [rem,n1) have remote rows */
+  /* Sort by row; after that, [0,k) have ignored entries, [k,rem) have local rows and [rem,n1) have remote rows */
   PetscCall(PetscSortIntWithIntCountArrayPair(n1, i1, j1, perm1));
   for (k = 0; k < n1; k++) {
     if (i1[k] > PETSC_MIN_INT) break;
@@ -6686,7 +6686,7 @@
   PetscCall(PetscSFReduceWithMemTypeBegin(mpiaij->coo_sf, MPIU_SCALAR, PETSC_MEMTYPE_HOST, sendbuf, PETSC_MEMTYPE_HOST, recvbuf, MPI_REPLACE));
   /* Add local entries to A and B */
   for (PetscCount i = 0; i < Annz; i++) { /* All nonzeros in A are either zero'ed or added with a value (i.e., initialized) */
-    PetscScalar sum = 0.0;                /* Do partial summation first to improve numerical stablility */
+    PetscScalar sum = 0.0;                /* Do partial summation first to improve numerical stability */
     for (PetscCount k = Ajmap1[i]; k < Ajmap1[i + 1]; k++) sum += v[Aperm1[k]];
     Aa[i] = (imode == INSERT_VALUES ? 0.0 : Aa[i]) + sum;
   }
@@ -7367,7 +7367,7 @@
     so, off[p+1]-off[p] is the number of nonzeros that mp[p] will send to others.
 
     coo_i/j/v[]: [ncoo] row/col/val of nonzeros belonging to this proc.
-    Ex. coo_i[]: the beginning part (of size ncoo_d + ncoo_oown) stores i of local nonzeros, and the remaing part stores i of nonzeros I will receive.
+    Ex. coo_i[]: the beginning part (of size ncoo_d + ncoo_oown) stores i of local nonzeros, and the remaining part stores i of nonzeros I will receive.
   */
   PetscCall(PetscCalloc1(mmdata->cp + 1, &mmdata->off)); /* +1 to make a csr-like data structure */
   PetscCall(PetscCalloc1(mmdata->cp + 1, &mmdata->own));
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/mat/impls/aij/mpi/mpiov.c petsc-3.18.5+dfsg1/src/mat/impls/aij/mpi/mpiov.c
--- petsc-3.18.4+dfsg1/src/mat/impls/aij/mpi/mpiov.c	2022-12-28 20:00:16.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/mat/impls/aij/mpi/mpiov.c	2023-02-27 23:11:05.000000000 +0100
@@ -148,7 +148,7 @@
     PetscFunctionReturn(0);
   }
   nto = 0;
-  /* send sizes and ranks for building a two-sided communcation */
+  /* send sizes and ranks for building a two-sided communication */
   for (i = 0; i < size; i++) {
     if (tosizes_temp[i]) {
       tosizes[nto * 2] = tosizes_temp[i] * 2; /* size */
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/mat/impls/aij/mpi/mumps/mumps.c petsc-3.18.5+dfsg1/src/mat/impls/aij/mpi/mumps/mumps.c
--- petsc-3.18.4+dfsg1/src/mat/impls/aij/mpi/mumps/mumps.c	2023-01-31 06:19:48.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/mat/impls/aij/mpi/mumps/mumps.c	2023-02-27 23:11:05.000000000 +0100
@@ -183,7 +183,7 @@
 
   /* stuff used by petsc/mumps OpenMP support*/
   PetscBool    use_petsc_omp_support;
-  PetscOmpCtrl omp_ctrl;             /* an OpenMP controler that blocked processes will release their CPU (MPI_Barrier does not have this guarantee) */
+  PetscOmpCtrl omp_ctrl;             /* an OpenMP controller that blocked processes will release their CPU (MPI_Barrier does not have this guarantee) */
   MPI_Comm     petsc_comm, omp_comm; /* petsc_comm is petsc matrix's comm */
   PetscInt64  *recvcount;            /* a collection of nnz on omp_master */
   PetscMPIInt  tag, omp_comm_size;
@@ -1267,7 +1267,7 @@
   } else {                   /* sparse B */
     PetscCheck(X != B, PetscObjectComm((PetscObject)A), PETSC_ERR_ARG_IDN, "X and B must be different matrices");
     PetscCall(PetscObjectTypeCompare((PetscObject)B, MATTRANSPOSEVIRTUAL, &flgT));
-    if (flgT) { /* input B is transpose of actural RHS matrix,
+    if (flgT) { /* input B is transpose of actual RHS matrix,
                  because mumps requires sparse compressed COLUMN storage! See MatMatTransposeSolve_MUMPS() */
       PetscCall(MatTransposeGetMat(B, &Bt));
     } else SETERRQ(PetscObjectComm((PetscObject)B), PETSC_ERR_ARG_WRONG, "Matrix B must be MATTRANSPOSEVIRTUAL matrix");
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/mat/impls/aij/seq/aij.c petsc-3.18.5+dfsg1/src/mat/impls/aij/seq/aij.c
--- petsc-3.18.4+dfsg1/src/mat/impls/aij/seq/aij.c	2023-01-31 06:19:48.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/mat/impls/aij/seq/aij.c	2023-02-27 23:11:05.000000000 +0100
@@ -2476,7 +2476,7 @@
   const PetscScalar *aa;
   PetscInt           nrows, ncols;
   PetscInt          *starts, *j_new, *i_new, *aj = a->j, *ai = a->i, ii, *ailen = a->ilen;
-  MatScalar         *a_new, *mat_a;
+  MatScalar         *a_new, *mat_a, *c_a;
   Mat                C;
   PetscBool          stride;
 
@@ -2533,7 +2533,7 @@
     c = (Mat_SeqAIJ *)C->data;
 
     /* loop over rows inserting into submatrix */
-    a_new = c->a;
+    PetscCall(MatSeqAIJGetArrayWrite(C, &a_new)); // Not 'a_new = c->a-new', since that raw usage ignores offload state of C
     j_new = c->j;
     i_new = c->i;
     PetscCall(MatSeqAIJGetArrayRead(A, &aa));
@@ -2546,6 +2546,7 @@
       i_new[i + 1] = i_new[i] + lensi;
       c->ilen[i]   = lensi;
     }
+    PetscCall(MatSeqAIJRestoreArrayWrite(C, &a_new)); // Set C's offload state properly
     PetscCall(MatSeqAIJRestoreArrayRead(A, &aa));
     PetscCall(PetscFree2(lens, starts));
   } else {
@@ -2587,14 +2588,16 @@
       PetscCall(MatSeqAIJSetPreallocation_SeqAIJ(C, 0, lens));
     }
     PetscCall(MatSeqAIJGetArrayRead(A, &aa));
+
     c = (Mat_SeqAIJ *)(C->data);
+    PetscCall(MatSeqAIJGetArrayWrite(C, &c_a)); // Not 'c->a', since that raw usage ignores offload state of C
     for (i = 0; i < nrows; i++) {
       row      = irow[i];
       kstart   = ai[row];
       kend     = kstart + a->ilen[row];
       mat_i    = c->i[i];
       mat_j    = c->j + mat_i;
-      mat_a    = c->a + mat_i;
+      mat_a    = c_a + mat_i;
       mat_ilen = c->ilen + i;
       for (k = kstart; k < kend; k++) {
         if ((tcol = smap[a->j[k]])) {
@@ -2615,10 +2618,11 @@
 
       mat_i = c->i[i];
       mat_j = c->j + mat_i;
-      mat_a = c->a + mat_i;
+      mat_a = c_a + mat_i;
       ilen  = c->ilen[i];
       PetscCall(PetscSortIntWithScalarArray(ilen, mat_j, mat_a));
     }
+    PetscCall(MatSeqAIJRestoreArrayWrite(C, &c_a));
   }
 #if defined(PETSC_HAVE_DEVICE)
   PetscCall(MatBindToCPU(C, A->boundtocpu));
@@ -3766,7 +3770,7 @@
 $    endloop
 
   Notes:
-    Matrix must already be assemblied before calling this routine
+    Matrix must already be assembled before calling this routine
     Must set the matrix option `MatSetOption`(mat,`MAT_NEW_NONZERO_LOCATIONS`,`PETSC_FALSE`); before
     calling this routine.
 
@@ -5306,7 +5310,7 @@
 -  matype   - matrix type
 
    Options Database Key:
-.  -mat_seqai_type  <method> - for example seqaijcrl
+.  -mat_seqaij_type  <method> - for example seqaijcrl
 
   Level: intermediate
 
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/mat/impls/aij/seq/aijfact.c petsc-3.18.5+dfsg1/src/mat/impls/aij/seq/aijfact.c
--- petsc-3.18.4+dfsg1/src/mat/impls/aij/seq/aijfact.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/mat/impls/aij/seq/aijfact.c	2023-02-27 23:11:05.000000000 +0100
@@ -3412,7 +3412,7 @@
   PetscFunctionReturn(0);
 }
 
-/* a wraper of MatILUDTFactor_SeqAIJ() */
+/* a wrapper of MatILUDTFactor_SeqAIJ() */
 /*
     This will get a new name and become a variant of MatILUFactor_SeqAIJ() there is no longer separate functions in the matrix function table for dt factors
 */
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/mat/impls/aij/seq/aij.h petsc-3.18.5+dfsg1/src/mat/impls/aij/seq/aij.h
--- petsc-3.18.4+dfsg1/src/mat/impls/aij/seq/aij.h	2023-01-31 06:19:48.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/mat/impls/aij/seq/aij.h	2023-02-27 23:11:05.000000000 +0100
@@ -554,7 +554,6 @@
 {
   __m512d  vec_x, vec_y, vec_vals;
   __m256i  vec_idx;
-  __mmask8 mask;
   PetscInt j;
 
   vec_y = _mm512_setzero_pd();
@@ -569,6 +568,7 @@
   #if defined(__AVX512VL__)
   /* masked load requires avx512vl, which is not supported by KNL */
   if (n & 0x07) {
+    __mmask8 mask;
     mask     = (__mmask8)(0xff >> (8 - (n & 0x07)));
     vec_idx  = _mm256_mask_loadu_epi32(vec_idx, mask, aj);
     vec_vals = _mm512_mask_loadu_pd(vec_vals, mask, aa);
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/mat/impls/aij/seq/bas/spbas.h petsc-3.18.5+dfsg1/src/mat/impls/aij/seq/bas/spbas.h
--- petsc-3.18.4+dfsg1/src/mat/impls/aij/seq/bas/spbas.h	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/mat/impls/aij/seq/bas/spbas.h	2023-02-27 23:11:05.000000000 +0100
@@ -19,7 +19,7 @@
    Information about each row
       row_nnz     : number of nonzeros for each row
       icol0       : column index offset (when needed, otherwise NULL)
-      icols       : array of diagonal offsets for each row, as descibed
+      icols       : array of diagonal offsets for each row, as described
                     for col_idx_type, above
       values      : array of matrix entries for each row
                     when values == NULL, this matrix is really
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/mat/impls/aij/seq/essl/essl.c petsc-3.18.5+dfsg1/src/mat/impls/aij/seq/essl/essl.c
--- petsc-3.18.4+dfsg1/src/mat/impls/aij/seq/essl/essl.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/mat/impls/aij/seq/essl/essl.c	2023-02-27 23:11:05.000000000 +0100
@@ -58,7 +58,7 @@
 
   PetscFunctionBegin;
   PetscCall(PetscBLASIntCast(A->rmap->n, &nessl));
-  /* copy matrix data into silly ESSL data structure (1-based Frotran style) */
+  /* copy matrix data into silly ESSL data structure (1-based Fortran style) */
   for (i = 0; i < A->rmap->n + 1; i++) essl->ia[i] = aa->i[i] + 1;
   for (i = 0; i < aa->nz; i++) essl->ja[i] = aa->j[i] + 1;
 
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/mat/impls/aij/seq/kokkos/aijkok.kokkos.cxx petsc-3.18.5+dfsg1/src/mat/impls/aij/seq/kokkos/aijkok.kokkos.cxx
--- petsc-3.18.4+dfsg1/src/mat/impls/aij/seq/kokkos/aijkok.kokkos.cxx	2022-12-28 20:00:16.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/mat/impls/aij/seq/kokkos/aijkok.kokkos.cxx	2023-02-27 23:11:05.000000000 +0100
@@ -1384,7 +1384,7 @@
     Kokkos::View<size_t, Kokkos::HostSpace>                                                                              h_flops_k(&flops_h);
     Kokkos::View<size_t>                                                                                                 d_flops_k("flops");
     const int                                                                                                            conc = Kokkos::DefaultExecutionSpace().concurrency(), team_size = conc > 1 ? 16 : 1; // 8*32 = 256
-    const int                                                                                                            nloc = n / Nf, Ni = (conc > 8) ? 1 /* some intelegent number of SMs -- but need league_barrier */ : 1;
+    const int                                                                                                            nloc = n / Nf, Ni = (conc > 8) ? 1 /* some intelligent number of SMs -- but need league_barrier */ : 1;
     Kokkos::deep_copy(d_flops_k, h_flops_k);
     Kokkos::deep_copy(d_r_k, h_r_k);
     Kokkos::deep_copy(d_ic_k, h_ic_k);
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/mat/impls/aij/seq/mkl_pardiso/mkl_pardiso.c petsc-3.18.5+dfsg1/src/mat/impls/aij/seq/mkl_pardiso/mkl_pardiso.c
--- petsc-3.18.4+dfsg1/src/mat/impls/aij/seq/mkl_pardiso/mkl_pardiso.c	2022-12-28 20:00:16.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/mat/impls/aij/seq/mkl_pardiso/mkl_pardiso.c	2023-02-27 23:11:05.000000000 +0100
@@ -665,7 +665,7 @@
   mat_mkl_pardiso->iparm[27] = 0;
 #endif
   /* Default options for both sym and unsym */
-  mat_mkl_pardiso->iparm[0]  = 1;  /* Solver default parameters overriden with provided by iparm */
+  mat_mkl_pardiso->iparm[0]  = 1;  /* Solver default parameters overridden with provided by iparm */
   mat_mkl_pardiso->iparm[1]  = 2;  /* Metis reordering */
   mat_mkl_pardiso->iparm[5]  = 0;  /* Write solution into x */
   mat_mkl_pardiso->iparm[7]  = 0;  /* Max number of iterative refinement steps */
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/mat/impls/aij/seq/seqcusparse/aijcusparse.cu petsc-3.18.5+dfsg1/src/mat/impls/aij/seq/seqcusparse/aijcusparse.cu
--- petsc-3.18.4+dfsg1/src/mat/impls/aij/seq/seqcusparse/aijcusparse.cu	2023-01-31 06:19:48.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/mat/impls/aij/seq/seqcusparse/aijcusparse.cu	2023-02-27 23:11:05.000000000 +0100
@@ -3363,7 +3363,7 @@
       /* ScatterAdd the result from work vector into the full vector when A is compressed */
       if (compressed) {
         PetscCall(PetscLogGpuTimeBegin());
-        /* I wanted to make this for_each asynchronous but failed. thrust::async::for_each() returns an event (internally registerred)
+        /* I wanted to make this for_each asynchronous but failed. thrust::async::for_each() returns an event (internally registered)
            and in the destructor of the scope, it will call cudaStreamSynchronize() on this stream. One has to store all events to
            prevent that. So I just add a ScatterAdd kernel.
          */
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/mat/impls/aij/seq/seqhipsparse/aijhipsparse.hip.cpp petsc-3.18.5+dfsg1/src/mat/impls/aij/seq/seqhipsparse/aijhipsparse.hip.cpp
--- petsc-3.18.4+dfsg1/src/mat/impls/aij/seq/seqhipsparse/aijhipsparse.hip.cpp	2023-01-31 06:19:48.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/mat/impls/aij/seq/seqhipsparse/aijhipsparse.hip.cpp	2023-02-27 23:11:05.000000000 +0100
@@ -3152,7 +3152,7 @@
       /* ScatterAdd the result from work vector into the full vector when A is compressed */
       if (compressed) {
         PetscCall(PetscLogGpuTimeBegin());
-        /* I wanted to make this for_each asynchronous but failed. thrust::async::for_each() returns an event (internally registerred)
+        /* I wanted to make this for_each asynchronous but failed. thrust::async::for_each() returns an event (internally registered)
            and in the destructor of the scope, it will call hipStreamSynchronize() on this stream. One has to store all events to
            prevent that. So I just add a ScatterAdd kernel.
          */
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/mat/impls/aij/seq/superlu/superlu.c petsc-3.18.5+dfsg1/src/mat/impls/aij/seq/superlu/superlu.c
--- petsc-3.18.4+dfsg1/src/mat/impls/aij/seq/superlu/superlu.c	2022-12-28 20:00:16.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/mat/impls/aij/seq/superlu/superlu.c	2023-02-27 23:11:05.000000000 +0100
@@ -231,7 +231,7 @@
   SCformat    *Lstore;
 
   PetscFunctionBegin;
-  if (lu->flg == SAME_NONZERO_PATTERN) { /* successing numerical factorization */
+  if (lu->flg == SAME_NONZERO_PATTERN) { /* successive numerical factorization */
     lu->options.Fact = SamePattern;
     /* Ref: ~SuperLU_3.0/EXAMPLE/dlinsolx2.c */
     Destroy_SuperMatrix_Store(&lu->A);
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/mat/impls/baij/mpi/baijmkl/mpibaijmkl.c petsc-3.18.5+dfsg1/src/mat/impls/baij/mpi/baijmkl/mpibaijmkl.c
--- petsc-3.18.4+dfsg1/src/mat/impls/baij/mpi/baijmkl/mpibaijmkl.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/mat/impls/baij/mpi/baijmkl/mpibaijmkl.c	2023-02-27 23:11:05.000000000 +0100
@@ -27,19 +27,7 @@
 }
 
 /*@C
-   MatCreateBAIJMKL - Creates a sparse parallel matrix in `MATBAIJMKL` format
-   (block compressed row).
-   This type inherits from `MATBAIJ` and is largely identical, but uses sparse BLAS
-   routines from Intel MKL whenever possible.
-   `MatMult()`, `MatMultAdd()`, `MatMultTranspose()`, and `MatMultTransposeAdd()`
-   operations are currently supported.
-   If the installed version of MKL supports the "SpMV2" sparse
-   inspector-executor routines, then those are used by default.
-   Default PETSc kernels are used otherwise.
-   For good matrix assembly performance the user should preallocate the matrix
-   storage by setting the parameters d_nz (or d_nnz) and o_nz (or o_nnz).
-   By setting these parameters accurately, performance can be increased by more
-   than a factor of 50.
+   MatCreateBAIJMKL - Creates a sparse parallel matrix in `MATBAIJMKL` format (block compressed row).
 
    Collective
 
@@ -79,6 +67,18 @@
    [MatXXXXSetPreallocation() is, for example, `MatSeqAIJSetPreallocation()`]
 
    Notes:
+   This type inherits from `MATBAIJ` and is largely identical, but uses sparse BLAS
+   routines from Intel MKL whenever possible.
+   `MatMult()`, `MatMultAdd()`, `MatMultTranspose()`, and `MatMultTransposeAdd()`
+   operations are currently supported.
+   If the installed version of MKL supports the "SpMV2" sparse
+   inspector-executor routines, then those are used by default.
+   Default PETSc kernels are used otherwise.
+   For good matrix assembly performance the user should preallocate the matrix
+   storage by setting the parameters `d_nz` (or `d_nnz`) and `o_nz` (or `o_nnz`).
+   By setting these parameters accurately, performance can be increased by more
+   than a factor of 50.
+
    If the *_nnz parameter is given then the *_nz parameter is ignored
 
    A nonzero block is any block that as 1 or more nonzeros in it
@@ -96,10 +96,10 @@
    local matrix (a rectangular submatrix).
 
    The user can specify preallocated storage for the diagonal part of
-   the local submatrix with either d_nz or d_nnz (not both).  Set
-   d_nz = `PETSC_DEFAULT` and d_nnz = NULL for PETSc to control dynamic
+   the local submatrix with either `d_nz` or `d_nnz` (not both).  Set
+   `d_nz` = `PETSC_DEFAULT` and `d_nnz` = `NULL` for PETSc to control dynamic
    memory allocation.  Likewise, specify preallocated storage for the
-   off-diagonal part of the local submatrix with o_nz or o_nnz (not both).
+   off-diagonal part of the local submatrix with `o_nz` or `o_nnz` (not both).
 
    Consider a processor that owns rows 3, 4 and 5 of a parallel matrix. In
    the figure below we depict these three local rows and all columns (0-11).
@@ -118,10 +118,10 @@
    o (off-diagonal) submatrix.  Note that the d and the o submatrices are
    stored simply in the `MATSEQBAIJMKL` format for compressed row storage.
 
-   Now d_nz should indicate the number of block nonzeros per row in the d matrix,
-   and o_nz should indicate the number of block nonzeros per row in the o matrix.
+   Now `d_nz` should indicate the number of block nonzeros per row in the d matrix,
+   and `o_nz` should indicate the number of block nonzeros per row in the o matrix.
    In general, for PDE problems in which most nonzeros are near the diagonal,
-   one expects d_nz >> o_nz.   For large problems you MUST preallocate memory
+   one expects `d_nz` >> `o_nz`.   For large problems you MUST preallocate memory
    or you will get TERRIBLE performance; see the users' manual chapter on
    matrices.
 
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/mat/impls/baij/mpi/mpibaij.c petsc-3.18.5+dfsg1/src/mat/impls/baij/mpi/mpibaij.c
--- petsc-3.18.4+dfsg1/src/mat/impls/baij/mpi/mpibaij.c	2022-12-28 20:00:16.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/mat/impls/baij/mpi/mpibaij.c	2023-02-27 23:11:05.000000000 +0100
@@ -1228,7 +1228,7 @@
   PetscCall(VecGetLocalSize(xx, &nt));
   PetscCheck(nt == A->cmap->n, PETSC_COMM_SELF, PETSC_ERR_ARG_SIZ, "Incompatible partition of A and xx");
   PetscCall(VecGetLocalSize(yy, &nt));
-  PetscCheck(nt == A->rmap->n, PETSC_COMM_SELF, PETSC_ERR_ARG_SIZ, "Incompatible parition of A and yy");
+  PetscCheck(nt == A->rmap->n, PETSC_COMM_SELF, PETSC_ERR_ARG_SIZ, "Incompatible partition of A and yy");
   PetscCall(VecScatterBegin(a->Mvctx, xx, a->lvec, INSERT_VALUES, SCATTER_FORWARD));
   PetscCall((*a->A->ops->mult)(a->A, xx, yy));
   PetscCall(VecScatterEnd(a->Mvctx, xx, a->lvec, INSERT_VALUES, SCATTER_FORWARD));
@@ -2671,7 +2671,7 @@
 
    Though this routine has Preallocation() in the name it also sets the exact nonzero locations of the matrix entries and usually the numerical values as well
 
-.seealso: `MatCreate()`, `MatCreateSeqAIJ()`, `MatSetValues()`, `MatMPIBAIJSetPreallocation()`, `MatCreateAIJ()`, `MPIAIJ`, `MatCreateMPIBAIJWithArrays()`, `MPIBAIJ`
+.seealso: `Mat`, `MatCreate()`, `MatCreateSeqAIJ()`, `MatSetValues()`, `MatMPIBAIJSetPreallocation()`, `MatCreateAIJ()`, `MPIAIJ`, `MatCreateMPIBAIJWithArrays()`, `MPIBAIJ`
 @*/
 PetscErrorCode MatMPIBAIJSetPreallocationCSR(Mat B, PetscInt bs, const PetscInt i[], const PetscInt j[], const PetscScalar v[])
 {
@@ -2855,7 +2855,7 @@
     `MatSetOptions`(,`MAT_STRUCTURE_ONLY`,`PETSC_TRUE`) may be called for this matrix type. In this no
     space is allocated for the nonzero entries and any entries passed with `MatSetValues()` are ignored
 
-.seealso: MATBAIJ`, MATSEQBAIJ`, `MatCreateBAIJ`
+.seealso: `Mat`, MATBAIJ`, MATSEQBAIJ`, `MatCreateBAIJ`
 M*/
 
 PETSC_INTERN PetscErrorCode MatConvert_MPIBAIJ_MPIBSTRM(Mat, MatType, MatReuse, Mat *);
@@ -2951,33 +2951,30 @@
 
   Level: beginner
 
-.seealso: `MatCreateBAIJ()`, `MATSEQBAIJ`, `MATMPIBAIJ`, `MatMPIBAIJSetPreallocation()`, `MatMPIBAIJSetPreallocationCSR()`
+.seealso: `Mat`, `MatCreateBAIJ()`, `MATSEQBAIJ`, `MATMPIBAIJ`, `MatMPIBAIJSetPreallocation()`, `MatMPIBAIJSetPreallocationCSR()`
 M*/
 
 /*@C
    MatMPIBAIJSetPreallocation - Allocates memory for a sparse parallel matrix in `MATMPIBAIJ` format
-   (block compressed row).  For good matrix assembly performance
-   the user should preallocate the matrix storage by setting the parameters
-   d_nz (or d_nnz) and o_nz (or o_nnz).  By setting these parameters accurately,
-   performance can be increased by more than a factor of 50.
+   (block compressed row).
 
    Collective
 
    Input Parameters:
 +  B - the matrix
 .  bs   - size of block, the blocks are ALWAYS square. One can use `MatSetBlockSizes()` to set a different row and column blocksize but the row
-          blocksize always defines the size of the blocks. The column blocksize sets the blocksize of the vectors obtained with MatCreateVecs()
+          blocksize always defines the size of the blocks. The column blocksize sets the blocksize of the vectors obtained with `MatCreateVecs()`
 .  d_nz  - number of block nonzeros per block row in diagonal portion of local
            submatrix  (same for all local rows)
 .  d_nnz - array containing the number of block nonzeros in the various block rows
            of the in diagonal portion of the local (possibly different for each block
-           row) or NULL.  If you plan to factor the matrix you must leave room for the diagonal entry and
+           row) or `NULL`.  If you plan to factor the matrix you must leave room for the diagonal entry and
            set it even if it is zero.
 .  o_nz  - number of block nonzeros per block row in the off-diagonal portion of local
            submatrix (same for all local rows).
 -  o_nnz - array containing the number of nonzeros in the various block rows of the
            off-diagonal portion of the local submatrix (possibly different for
-           each block row) or NULL.
+           each block row) or `NULL`.
 
    If the *_nnz parameter is given then the *_nz parameter is ignored
 
@@ -2985,7 +2982,14 @@
 +   -mat_block_size - size of the blocks to use
 -   -mat_use_hash_table <fact> - set hash table factor
 
+   Level: intermediate
+
    Notes:
+   For good matrix assembly performance
+   the user should preallocate the matrix storage by setting the parameters
+   `d_nz` (or `d_nnz`) and `o_nz` (or `o_nnz`).  By setting these parameters accurately,
+   performance can be increased by more than a factor of 50.
+
    If `PETSC_DECIDE` or  `PETSC_DETERMINE` is used for a particular argument on one processor
    than it must be used on all processors that share the object for that argument.
 
@@ -2996,10 +3000,10 @@
    local matrix (a rectangular submatrix).
 
    The user can specify preallocated storage for the diagonal part of
-   the local submatrix with either d_nz or d_nnz (not both).  Set
-   d_nz=PETSC_DEFAULT and d_nnz=NULL for PETSc to control dynamic
+   the local submatrix with either `d_nz` or `d_nnz` (not both).  Set
+   `d_nz` = `PETSC_DEFAULT` and `d_nnz` = `NULL` for PETSc to control dynamic
    memory allocation.  Likewise, specify preallocated storage for the
-   off-diagonal part of the local submatrix with o_nz or o_nnz (not both).
+   off-diagonal part of the local submatrix with `o_nz` or `o_nnz` (not both).
 
    Consider a processor that owns rows 3, 4 and 5 of a parallel matrix. In
    the figure below we depict these three local rows and all columns (0-11).
@@ -3018,21 +3022,19 @@
    o (off-diagonal) submatrix.  Note that the d and the o submatrices are
    stored simply in the `MATSEQBAIJ` format for compressed row storage.
 
-   Now d_nz should indicate the number of block nonzeros per row in the d matrix,
-   and o_nz should indicate the number of block nonzeros per row in the o matrix.
+   Now `d_nz` should indicate the number of block nonzeros per row in the d matrix,
+   and `o_nz` should indicate the number of block nonzeros per row in the o matrix.
    In general, for PDE problems in which most nonzeros are near the diagonal,
-   one expects d_nz >> o_nz.   For large problems you MUST preallocate memory
+   one expects `d_nz` >> `o_nz`.   For large problems you MUST preallocate memory
    or you will get TERRIBLE performance; see the users' manual chapter on
    matrices.
 
    You can call `MatGetInfo()` to get information on how effective the preallocation was;
    for example the fields mallocs,nz_allocated,nz_used,nz_unneeded;
-   You can also run with the option -info and look for messages with the string
+   You can also run with the option `-info` and look for messages with the string
    malloc in them to see if additional memory allocation was needed.
 
-   Level: intermediate
-
-.seealso: `MATMPIBAIJ`, `MatCreate()`, `MatCreateSeqBAIJ()`, `MatSetValues()`, `MatCreateBAIJ()`, `MatMPIBAIJSetPreallocationCSR()`, `PetscSplitOwnership()`
+.seealso: `Mat`, `MATMPIBAIJ`, `MatCreate()`, `MatCreateSeqBAIJ()`, `MatSetValues()`, `MatCreateBAIJ()`, `MatMPIBAIJSetPreallocationCSR()`, `PetscSplitOwnership()`
 @*/
 PetscErrorCode MatMPIBAIJSetPreallocation(Mat B, PetscInt bs, PetscInt d_nz, const PetscInt d_nnz[], PetscInt o_nz, const PetscInt o_nnz[])
 {
@@ -3046,10 +3048,7 @@
 
 /*@C
    MatCreateBAIJ - Creates a sparse parallel matrix in `MATBAIJ` format
-   (block compressed row).  For good matrix assembly performance
-   the user should preallocate the matrix storage by setting the parameters
-   d_nz (or d_nnz) and o_nz (or o_nnz).  By setting these parameters accurately,
-   performance can be increased by more than a factor of 50.
+   (block compressed row).
 
    Collective
 
@@ -3084,11 +3083,18 @@
 +   -mat_block_size - size of the blocks to use
 -   -mat_use_hash_table <fact> - set hash table factor
 
+   Level: intermediate
+
+   Notes:
+   For good matrix assembly performance
+   the user should preallocate the matrix storage by setting the parameters
+   `d_nz` (or `d_nnz`) and `o_nz` (or `o_nnz`).  By setting these parameters accurately,
+   performance can be increased by more than a factor of 50.
+
    It is recommended that one use the `MatCreate()`, `MatSetType()` and/or `MatSetFromOptions()`,
    MatXXXXSetPreallocation() paradigm instead of this routine directly.
    [MatXXXXSetPreallocation() is, for example, `MatSeqBAIJSetPreallocation()`]
 
-   Notes:
    If the *_nnz parameter is given then the *_nz parameter is ignored
 
    A nonzero block is any block that as 1 or more nonzeros in it
@@ -3107,9 +3113,9 @@
 
    The user can specify preallocated storage for the diagonal part of
    the local submatrix with either d_nz or d_nnz (not both).  Set
-   d_nz=PETSC_DEFAULT and d_nnz=NULL for PETSc to control dynamic
+   `d_nz` = `PETSC_DEFAULT` and `d_nnz` = `NULL` for PETSc to control dynamic
    memory allocation.  Likewise, specify preallocated storage for the
-   off-diagonal part of the local submatrix with o_nz or o_nnz (not both).
+   off-diagonal part of the local submatrix with `o_nz` or `o_nnz` (not both).
 
    Consider a processor that owns rows 3, 4 and 5 of a parallel matrix. In
    the figure below we depict these three local rows and all columns (0-11).
@@ -3128,16 +3134,14 @@
    o (off-diagonal) submatrix.  Note that the d and the o submatrices are
    stored simply in the `MATSEQBAIJ` format for compressed row storage.
 
-   Now d_nz should indicate the number of block nonzeros per row in the d matrix,
-   and o_nz should indicate the number of block nonzeros per row in the o matrix.
+   Now `d_nz` should indicate the number of block nonzeros per row in the d matrix,
+   and `o_nz` should indicate the number of block nonzeros per row in the o matrix.
    In general, for PDE problems in which most nonzeros are near the diagonal,
-   one expects d_nz >> o_nz.   For large problems you MUST preallocate memory
+   one expects `d_nz` >> `o_nz`.   For large problems you MUST preallocate memory
    or you will get TERRIBLE performance; see the users' manual chapter on
    matrices.
 
-   Level: intermediate
-
-.seealso: `MatCreate()`, `MatCreateSeqBAIJ()`, `MatSetValues()`, `MatCreateBAIJ()`, `MatMPIBAIJSetPreallocation()`, `MatMPIBAIJSetPreallocationCSR()`
+.seealso: `Mat`, `MatCreate()`, `MatCreateSeqBAIJ()`, `MatSetValues()`, `MatCreateBAIJ()`, `MatMPIBAIJSetPreallocation()`, `MatMPIBAIJSetPreallocationCSR()`
 @*/
 PetscErrorCode MatCreateBAIJ(MPI_Comm comm, PetscInt bs, PetscInt m, PetscInt n, PetscInt M, PetscInt N, PetscInt d_nz, const PetscInt d_nnz[], PetscInt o_nz, const PetscInt o_nnz[], Mat *A)
 {
@@ -3358,7 +3362,7 @@
 
    Level: advanced
 
-.seealso: `MATMPIBAIJ`, `MatSetOption()`
+.seealso: `Mat`, `MATMPIBAIJ`, `MatSetOption()`
 @*/
 PetscErrorCode MatMPIBAIJSetHashTableFactor(Mat mat, PetscReal fact)
 {
@@ -3419,7 +3423,7 @@
 
   Level: advanced
 
-.seealso: `MatSetValuesBlocked()`
+.seealso: `Mat`, `MatSetValuesBlocked()`
 @*/
 PetscErrorCode matmpibaijsetvaluesblocked_(Mat *matin, PetscInt *min, const PetscInt im[], PetscInt *nin, const PetscInt in[], const MatScalar v[], InsertMode *addvin)
 {
@@ -3554,7 +3558,7 @@
    Level: intermediate
 
    Notes:
-       The i, j, and a arrays ARE copied by this routine into the internal format used by PETSc;
+       The `i`, `j`, and `a` arrays ARE copied by this routine into the internal format used by PETSc;
      thus you CANNOT change the matrix entries by changing the values of a[] after you have
      called this routine. Use `MatCreateMPIAIJWithSplitArrays()` to avoid needing to copy the arrays.
 
@@ -3563,9 +3567,9 @@
      block, followed by the second column of the first block etc etc.  That is, the blocks are contiguous in memory
      with column-major ordering within blocks.
 
-       The i and j indices are 0 based, and i indices are indices corresponding to the local j array.
+       The `i` and `j` indices are 0 based, and i indices are indices corresponding to the local `j` array.
 
-.seealso: `MatCreate()`, `MatCreateSeqAIJ()`, `MatSetValues()`, `MatMPIAIJSetPreallocation()`, `MatMPIAIJSetPreallocationCSR()`,
+.seealso: `Mat`, `MatCreate()`, `MatCreateSeqAIJ()`, `MatSetValues()`, `MatMPIAIJSetPreallocation()`, `MatMPIAIJSetPreallocationCSR()`,
           `MPIAIJ`, `MatCreateAIJ()`, `MatCreateMPIAIJWithSplitArrays()`
 @*/
 PetscErrorCode MatCreateMPIBAIJWithArrays(MPI_Comm comm, PetscInt bs, PetscInt m, PetscInt n, PetscInt M, PetscInt N, const PetscInt i[], const PetscInt j[], const PetscScalar a[], Mat *mat)
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/mat/impls/baij/seq/baij2.c petsc-3.18.5+dfsg1/src/mat/impls/baij/seq/baij2.c
--- petsc-3.18.4+dfsg1/src/mat/impls/baij/seq/baij2.c	2022-12-28 20:00:16.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/mat/impls/baij/seq/baij2.c	2023-02-27 23:11:05.000000000 +0100
@@ -169,7 +169,7 @@
   PetscCall(ISGetLocalSize(isrow, &nrows));
   PetscCall(ISGetLocalSize(iscol, &ncols));
 
-  /* Verify if the indices corespond to each element in a block
+  /* Verify if the indices correspond to each element in a block
    and form the IS with compressed IS */
   maxmnbs = PetscMax(a->mbs, a->nbs);
   PetscCall(PetscMalloc2(maxmnbs, &vary, maxmnbs, &iary));
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/mat/impls/baij/seq/baijfact.c petsc-3.18.5+dfsg1/src/mat/impls/baij/seq/baijfact.c
--- petsc-3.18.4+dfsg1/src/mat/impls/baij/seq/baijfact.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/mat/impls/baij/seq/baijfact.c	2023-02-27 23:11:05.000000000 +0100
@@ -1194,7 +1194,7 @@
   B->info.factor_mallocs   = reallocs;
   B->info.fill_ratio_given = fill;
   if (ai[am] != 0.) {
-    /* nonzeros in lower triangular part of A (includign diagonals)= (ai[am]+am)/2 */
+    /* nonzeros in lower triangular part of A (including diagonals)= (ai[am]+am)/2 */
     B->info.fill_ratio_needed = ((PetscReal)2 * ui[am]) / (ai[am] + am);
   } else {
     B->info.fill_ratio_needed = 0.0;
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/mat/impls/baij/seq/baijmkl/baijmkl.c petsc-3.18.5+dfsg1/src/mat/impls/baij/seq/baijmkl/baijmkl.c
--- petsc-3.18.4+dfsg1/src/mat/impls/baij/seq/baijmkl/baijmkl.c	2022-10-26 15:00:16.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/mat/impls/baij/seq/baijmkl/baijmkl.c	2023-02-27 23:11:05.000000000 +0100
@@ -1,7 +1,7 @@
 /*
   Defines basic operations for the MATSEQBAIJMKL matrix class.
   Uses sparse BLAS operations from the Intel Math Kernel Library (MKL)
-  wherever possible. If used MKL verion is older than 11.3 PETSc default
+  wherever possible. If used MKL version is older than 11.3 PETSc default
   code for sparse matrix operations is used.
 */
 
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/mat/impls/composite/mcomposite.c petsc-3.18.5+dfsg1/src/mat/impls/composite/mcomposite.c
--- petsc-3.18.4+dfsg1/src/mat/impls/composite/mcomposite.c	2022-12-28 20:00:16.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/mat/impls/composite/mcomposite.c	2023-02-27 23:11:05.000000000 +0100
@@ -264,7 +264,7 @@
 
   if (shell->Mvctx) { /* Have a merged Mvctx */
     /* Suppose we want to compute y = sMx, where s is the scaling factor and A, B are matrix M's diagonal/off-diagonal part. We could do
-       in y = s(Ax1 + Bx2) or y = sAx1 + sBx2. The former incurs less FLOPS than the latter, but the latter provides an oppertunity to
+       in y = s(Ax1 + Bx2) or y = sAx1 + sBx2. The former incurs less FLOPS than the latter, but the latter provides an opportunity to
        overlap communication/computation since we can do sAx1 while communicating x2. Here, we use the former approach.
      */
     PetscCall(VecScatterBegin(shell->Mvctx, in, shell->gvec, INSERT_VALUES, SCATTER_FORWARD));
@@ -714,7 +714,7 @@
    Level: advanced
 
    Note:
-    The resulting matrix is the same regardles of the `MatCompositeMergeType`. Only the order of operation is changed.
+    The resulting matrix is the same regardless of the `MatCompositeMergeType`. Only the order of operation is changed.
     If set to `MAT_COMPOSITE_MERGE_RIGHT` the order of the merge is mat[nmat-1]*(mat[nmat-2]*(...*(mat[1]*mat[0])))
     otherwise the order is (((mat[nmat-1]*mat[nmat-2])*mat[nmat-3])*...)*mat[0].
 
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/mat/impls/dense/mpi/mpidense.c petsc-3.18.5+dfsg1/src/mat/impls/dense/mpi/mpidense.c
--- petsc-3.18.4+dfsg1/src/mat/impls/dense/mpi/mpidense.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/mat/impls/dense/mpi/mpidense.c	2023-02-27 23:11:05.000000000 +0100
@@ -305,7 +305,7 @@
   PetscCall(ISGetSize(iscol, &Ncols)); /* global number of columns, size of iscol_local */
 
   /* No parallel redistribution currently supported! Should really check each index set
-     to comfirm that it is OK.  ... Currently supports only submatrix same partitioning as
+     to confirm that it is OK.  ... Currently supports only submatrix same partitioning as
      original matrix! */
 
   PetscCall(MatGetLocalSize(A, &nlrows, &nlcols));
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/mat/impls/dense/mpi/mpidense.h petsc-3.18.5+dfsg1/src/mat/impls/dense/mpi/mpidense.h
--- petsc-3.18.4+dfsg1/src/mat/impls/dense/mpi/mpidense.h	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/mat/impls/dense/mpi/mpidense.h	2023-02-27 23:11:05.000000000 +0100
@@ -2,7 +2,7 @@
 #include <../src/mat/impls/dense/seq/dense.h>
 #include <petscsf.h>
 
-/*  Data stuctures for basic parallel dense matrix  */
+/*  Data structures for basic parallel dense matrix  */
 
 typedef struct {  /* used by MatMatMultxxx_MPIDense_MPIDense() */
   Mat Ae, Be, Ce; /* matrix in Elemental format */
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/mat/impls/fft/fftw/fftw.c petsc-3.18.5+dfsg1/src/mat/impls/fft/fftw/fftw.c
--- petsc-3.18.4+dfsg1/src/mat/impls/fft/fftw/fftw.c	2022-12-28 20:00:16.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/mat/impls/fft/fftw/fftw.c	2023-02-27 23:11:05.000000000 +0100
@@ -23,7 +23,7 @@
   PetscInt     partial_dim;
   fftw_plan    p_forward, p_backward;
   unsigned     p_flag;                                      /* planner flags, FFTW_ESTIMATE,FFTW_MEASURE, FFTW_PATIENT, FFTW_EXHAUSTIVE */
-  PetscScalar *finarray, *foutarray, *binarray, *boutarray; /* keep track of arrays becaue fftw plan should be
+  PetscScalar *finarray, *foutarray, *binarray, *boutarray; /* keep track of arrays because fftw plan should be
                                                             executed for the arrays with which the plan was created */
 } Mat_FFTW;
 
@@ -699,7 +699,7 @@
     }
     /* fftw vectors have their data array allocated by fftw_malloc, such that v->array=xxx but
        v->array_allocated=NULL. A regular replacearray call won't free the memory and only causes
-       memory leaks. We void these pointers here to avoid acident uses.
+       memory leaks. We void these pointers here to avoid accident uses.
     */
     if (fin) (*fin)->ops->replacearray = NULL;
     if (fout) (*fout)->ops->replacearray = NULL;
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/mat/impls/hypre/mhypre.c petsc-3.18.5+dfsg1/src/mat/impls/hypre/mhypre.c
--- petsc-3.18.4+dfsg1/src/mat/impls/hypre/mhypre.c	2022-12-28 20:00:16.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/mat/impls/hypre/mhypre.c	2023-02-27 23:11:05.000000000 +0100
@@ -215,7 +215,7 @@
   PetscFunctionBegin;
   pdiag = (Mat_SeqAIJ *)pA->A->data;
   poffd = (Mat_SeqAIJ *)pA->B->data;
-  /* cstart is only valid for square MPIAIJ layed out in the usual way */
+  /* cstart is only valid for square MPIAIJ laid out in the usual way */
   PetscCall(MatGetOwnershipRange(A, &cstart, NULL));
 
   PetscCallExternal(HYPRE_IJMatrixGetObjectType, ij, &type);
@@ -625,7 +625,7 @@
   }
 
   /* we have to use hypre_Tfree to free the HYPRE arrays
-     that PETSc now onws */
+     that PETSc now owns */
   if (reuse == MAT_INPLACE_MATRIX) {
     PetscInt    nh;
     void       *ptrs[6]  = {da, oa, dii, djj, oii, ojj};
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/mat/impls/is/matis.c petsc-3.18.5+dfsg1/src/mat/impls/is/matis.c
--- petsc-3.18.4+dfsg1/src/mat/impls/is/matis.c	2022-12-28 20:00:16.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/mat/impls/is/matis.c	2023-02-27 23:11:05.000000000 +0100
@@ -870,7 +870,7 @@
       lr[i] = l1;
       lc[j] = l2;
 
-      /* check compatibilty for local matrix reusage */
+      /* check compatibility for local matrix reusage */
       if (rnest && !rnest[i][j] != !snest[ij]) lreuse = PETSC_FALSE;
     }
   }
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/mat/impls/mffd/mffd.c petsc-3.18.5+dfsg1/src/mat/impls/mffd/mffd.c
--- petsc-3.18.4+dfsg1/src/mat/impls/mffd/mffd.c	2022-12-28 20:00:16.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/mat/impls/mffd/mffd.c	2023-02-27 23:11:05.000000000 +0100
@@ -93,7 +93,7 @@
 
 /*@C
     MatMFFDSetType - Sets the method that is used to compute the
-    differencing parameter for finite differene matrix-free formulations.
+    differencing parameter for finite difference matrix-free formulations.
 
     Input Parameters:
 +   mat - the "matrix-free" matrix created via `MatCreateSNESMF()`, or `MatCreateMFFD()`
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/mat/impls/sbaij/mpi/mpisbaij.c petsc-3.18.5+dfsg1/src/mat/impls/sbaij/mpi/mpisbaij.c
--- petsc-3.18.4+dfsg1/src/mat/impls/sbaij/mpi/mpisbaij.c	2022-12-28 20:00:16.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/mat/impls/sbaij/mpi/mpisbaij.c	2023-02-27 23:11:05.000000000 +0100
@@ -221,7 +221,7 @@
   }
 
 /* Only add/insert a(i,j) with i<=j (blocks).
-   Any a(i,j) with i>j input by user is ingored or generates an error
+   Any a(i,j) with i>j input by user is ignored or generates an error
 */
 PetscErrorCode MatSetValues_MPISBAIJ(Mat mat, PetscInt m, const PetscInt im[], PetscInt n, const PetscInt in[], const PetscScalar v[], InsertMode addv)
 {
@@ -2185,11 +2185,11 @@
    and `MATMPISBAIJ` otherwise.
 
    Options Database Key:
-. -mat_type sbaij - sets the matrix type to "sbaij" during a call to MatSetFromOptions()
+. -mat_type sbaij - sets the matrix type to `MATSBAIJ` during a call to `MatSetFromOptions()`
 
   Level: beginner
 
-.seealso: `MATSEQSBAIJ`, `MATMPISBAIJ`, `MatCreateSBAIJ`, `MATSEQSBAIJ`, `MATMPISBAIJ`
+.seealso: `MATSEQSBAIJ`, `MATMPISBAIJ`, `MatCreateSBAIJ()`, `MATSEQSBAIJ`, `MATMPISBAIJ`
 M*/
 
 /*@C
@@ -2223,7 +2223,7 @@
 
    Notes:
 
-   If `PETSC_DECIDE` or  `PETSC_DETERMINE` is used for a particular argument on one processor
+   If `PETSC_DECIDE` or `PETSC_DETERMINE` is used for a particular argument on one processor
    than it must be used on all processors that share the object for that argument.
 
    If the *_nnz parameter is given then the *_nz parameter is ignored
@@ -2307,7 +2307,7 @@
 .  M - number of global rows (or `PETSC_DETERMINE` to have calculated if m is given)
 .  N - number of global columns (or `PETSC_DETERMINE` to have calculated if n is given)
 .  d_nz  - number of block nonzeros per block row in diagonal portion of local
-           submatrix  (same for all local rows)
+           submatrix (same for all local rows)
 .  d_nnz - array containing the number of block nonzeros in the various block rows
            in the upper triangular portion of the in diagonal portion of the local
            (possibly different for each block block row) or NULL.
@@ -2340,7 +2340,7 @@
    The user MUST specify either the local or global matrix dimensions
    (possibly both).
 
-   If` PETSC_DECIDE` or  `PETSC_DETERMINE` is used for a particular argument on one processor
+   If `PETSC_DECIDE` or `PETSC_DETERMINE` is used for a particular argument on one processor
    than it must be used on all processors that share the object for that argument.
 
    If the *_nnz parameter is given then the *_nz parameter is ignored
@@ -2352,9 +2352,9 @@
    local matrix (a rectangular submatrix).
 
    The user can specify preallocated storage for the diagonal part of
-   the local submatrix with either d_nz or d_nnz (not both).  Set
+   the local submatrix with either d_nz or d_nnz (not both). Set
    d_nz=PETSC_DEFAULT and d_nnz=NULL for PETSc to control dynamic
-   memory allocation.  Likewise, specify preallocated storage for the
+   memory allocation. Likewise, specify preallocated storage for the
    off-diagonal part of the local submatrix with o_nz or o_nnz (not both).
 
    Consider a processor that owns rows 3, 4 and 5 of a parallel matrix. In
@@ -2371,14 +2371,14 @@
 
    Thus, any entries in the d locations are stored in the d (diagonal)
    submatrix, and any entries in the o locations are stored in the
-   o (off-diagonal) submatrix.  Note that the d matrix is stored in
+   o (off-diagonal) submatrix. Note that the d matrix is stored in
    MatSeqSBAIJ format and the o submatrix in `MATSEQBAIJ` format.
 
    Now d_nz should indicate the number of block nonzeros per row in the upper triangular
    plus the diagonal part of the d matrix,
    and o_nz should indicate the number of block nonzeros per row in the o matrix.
    In general, for PDE problems in which most nonzeros are near the diagonal,
-   one expects d_nz >> o_nz.   For large problems you MUST preallocate memory
+   one expects d_nz >> o_nz. For large problems you MUST preallocate memory
    or you will get TERRIBLE performance; see the users' manual chapter on
    matrices.
 
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/mat/impls/sbaij/mpi/sbaijov.c petsc-3.18.5+dfsg1/src/mat/impls/sbaij/mpi/sbaijov.c
--- petsc-3.18.4+dfsg1/src/mat/impls/sbaij/mpi/sbaijov.c	2023-01-31 06:19:48.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/mat/impls/sbaij/mpi/sbaijov.c	2023-02-27 23:11:05.000000000 +0100
@@ -461,7 +461,7 @@
   PetscInt      row, mbs, Mbs, *nidx_i, col, col_max, isz, isz0, *ai, *aj, *bi, *bj, *garray, rstart, l;
   PetscInt      a_start, a_end, b_start, b_end, i, j, k, is_max, *idx_i, n;
   PetscBT       table0;  /* mark the indices of input is[] for look up */
-  PetscBT       table_i; /* poits to i-th table. When whose=OTHER, a single table is used for all is[] */
+  PetscBT       table_i; /* points to i-th table. When whose=OTHER, a single table is used for all is[] */
 
   PetscFunctionBegin;
   Mbs    = c->Mbs;
@@ -530,7 +530,7 @@
         k++;
         if (k >= isz0) break;               /* for (row=0; row<mbs; row++) */
       } else {                              /* row is not on input is[i]:
-                  do col serach: add row onto nidx_i if there is a col in nidx_i */
+                  do col search: add row onto nidx_i if there is a col in nidx_i */
         for (l = a_start; l < a_end; l++) { /* Amat */
           col = aj[l] + rstart;
           if (col > col_max) break;
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/mat/impls/sbaij/seq/sbaij2.c petsc-3.18.5+dfsg1/src/mat/impls/sbaij/seq/sbaij2.c
--- petsc-3.18.4+dfsg1/src/mat/impls/sbaij/seq/sbaij2.c	2022-12-28 20:00:16.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/mat/impls/sbaij/seq/sbaij2.c	2023-02-27 23:11:05.000000000 +0100
@@ -64,7 +64,7 @@
           }
           k++;
           if (k >= n) break; /* for (brow=0; brow<mbs; brow++) */
-        } else {             /* brow is not on nidx - col serach: add brow onto nidx if there is a bcol in nidx */
+        } else {             /* brow is not on nidx - col search: add brow onto nidx if there is a bcol in nidx */
           for (l = start; l < end; l++) {
             bcol = aj[l];
             if (bcol > bcol_max) break;
@@ -209,7 +209,7 @@
   PetscCall(ISGetLocalSize(isrow, &nrows));
   PetscCall(ISGetLocalSize(iscol, &ncols));
 
-  /* Verify if the indices corespond to each element in a block
+  /* Verify if the indices correspond to each element in a block
    and form the IS with compressed IS */
   maxmnbs = PetscMax(a->mbs, a->nbs);
   PetscCall(PetscMalloc2(maxmnbs, &vary, maxmnbs, &iary));
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/mat/impls/sbaij/seq/sbaij.c petsc-3.18.5+dfsg1/src/mat/impls/sbaij/seq/sbaij.c
--- petsc-3.18.4+dfsg1/src/mat/impls/sbaij/seq/sbaij.c	2022-12-28 20:00:16.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/mat/impls/sbaij/seq/sbaij.c	2023-02-27 23:11:05.000000000 +0100
@@ -912,7 +912,7 @@
 }
 
 /* Only add/insert a(i,j) with i<=j (blocks).
-   Any a(i,j) with i>j input by user is ingored.
+   Any a(i,j) with i>j input by user is ignored.
 */
 
 PetscErrorCode MatSetValues_SeqSBAIJ(Mat A, PetscInt m, const PetscInt im[], PetscInt n, const PetscInt in[], const PetscScalar v[], InsertMode is)
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/mat/impls/sbaij/seq/sbaijfact.c petsc-3.18.5+dfsg1/src/mat/impls/sbaij/seq/sbaijfact.c
--- petsc-3.18.4+dfsg1/src/mat/impls/sbaij/seq/sbaijfact.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/mat/impls/sbaij/seq/sbaijfact.c	2023-02-27 23:11:05.000000000 +0100
@@ -400,7 +400,7 @@
 
   /*
    This code originally uses Modified Sparse Row (MSR) storage
-   (see page 85, "Iterative Methods ..." by Saad) for the output matrix B - bad choise!
+   (see page 85, "Iterative Methods ..." by Saad) for the output matrix B - bad choice!
    Then it is rewritten so the factor B takes seqsbaij format. However the associated
    MatCholeskyFactorNumeric_() have not been modified for the cases of bs>1 or !perm_identity,
    thus the original code in MSR format is still used for these cases.
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/mat/impls/sell/mpi/mpisell.c petsc-3.18.5+dfsg1/src/mat/impls/sell/mpi/mpisell.c
--- petsc-3.18.4+dfsg1/src/mat/impls/sell/mpi/mpisell.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/mat/impls/sell/mpi/mpisell.c	2023-02-27 23:11:05.000000000 +0100
@@ -19,7 +19,7 @@
 
   Level: beginner
 
-.seealso: `MATAIJ`, `MATBAIJ`, `MATSBAIJ`, `MatCreateSELL()`, `MatCreateSeqSELL()`, `MATSEQSELL`, `MATMPISELL`
+.seealso: `Mat`, `MATAIJ`, `MATBAIJ`, `MATSBAIJ`, `MatCreateSELL()`, `MatCreateSeqSELL()`, `MATSEQSELL`, `MATMPISELL`
 M*/
 
 PetscErrorCode MatDiagonalSet_MPISELL(Mat Y, Vec D, InsertMode is)
@@ -40,7 +40,7 @@
 number to the local number in the off-diagonal part of the local
 storage of the matrix.  When PETSC_USE_CTABLE is used this is scalable at
 a slightly higher hash table cost; without it it is not scalable (each processor
-has an order N integer array but is fast to acess.
+has an order N integer array but is fast to access.
 */
 PetscErrorCode MatCreateColmap_MPISELL_Private(Mat mat)
 {
@@ -1244,7 +1244,7 @@
 /*@C
    MatMPISELLSetPreallocation - Preallocates memory for a `MATMPISELL` sparse parallel matrix in sell format.
    For good matrix assembly performance the user should preallocate the matrix storage by
-   setting the parameters d_nz (or d_nnz) and o_nz (or o_nnz).
+   setting the parameters `d_nz` (or `d_nnz`) and `o_nz` (or `o_nnz`).
 
    Collective
 
@@ -1254,7 +1254,7 @@
            (same value is used for all local rows)
 .  d_nnz - array containing the number of nonzeros in the various rows of the
            DIAGONAL portion of the local submatrix (possibly different for each row)
-           or NULL (`PETSC_NULL_INTEGER` in Fortran), if d_nz is used to specify the nonzero structure.
+           or NULL (`PETSC_NULL_INTEGER` in Fortran), if `d_nz` is used to specify the nonzero structure.
            The size of this array is equal to the number of local rows, i.e 'm'.
            For matrices that will be factored, you must leave room for (and set)
            the diagonal entry even if it is zero.
@@ -1262,41 +1262,15 @@
            submatrix (same value is used for all local rows).
 -  o_nnz - array containing the number of nonzeros in the various rows of the
            OFF-DIAGONAL portion of the local submatrix (possibly different for
-           each row) or NULL (`PETSC_NULL_INTEGER` in Fortran), if o_nz is used to specify the nonzero
+           each row) or NULL (`PETSC_NULL_INTEGER` in Fortran), if `o_nz` is used to specify the nonzero
            structure. The size of this array is equal to the number
            of local rows, i.e 'm'.
 
-   If the *_nnz parameter is given then the *_nz parameter is ignored
-
-   The stored row and column indices begin with zero.
-
-   The parallel matrix is partitioned such that the first m0 rows belong to
-   process 0, the next m1 rows belong to process 1, the next m2 rows belong
-   to process 2 etc.. where m0,m1,m2... are the input parameter 'm'.
-
-   The DIAGONAL portion of the local submatrix of a processor can be defined
-   as the submatrix which is obtained by extraction the part corresponding to
-   the rows r1-r2 and columns c1-c2 of the global matrix, where r1 is the
-   first row that belongs to the processor, r2 is the last row belonging to
-   the this processor, and c1-c2 is range of indices of the local part of a
-   vector suitable for applying the matrix to.  This is an mxn matrix.  In the
-   common case of a square matrix, the row and column ranges are the same and
-   the DIAGONAL part is also square. The remaining portion of the local
-   submatrix (mxN) constitute the OFF-DIAGONAL portion.
-
-   If o_nnz, d_nnz are specified, then o_nz, and d_nz are ignored.
-
-   You can call `MatGetInfo()` to get information on how effective the preallocation was;
-   for example the fields mallocs,nz_allocated,nz_used,nz_unneeded;
-   You can also run with the option -info and look for messages with the string
-   malloc in them to see if additional memory allocation was needed.
-
    Example usage:
-
    Consider the following 8x8 matrix with 34 non-zero values, that is
    assembled across 3 processors. Lets assume that proc0 owns 3 rows,
    proc1 owns 3 rows, proc2 owns 2 rows. This division can be shown
-   as follows:
+   as follows
 
 .vb
             1  2  0  |  0  3  0  |  0  4
@@ -1333,10 +1307,10 @@
    part as SeqSELL matrices. for eg: proc1 will store [E] as a SeqSELL
    matrix, ans [DF] as another SeqSELL matrix.
 
-   When d_nz, o_nz parameters are specified, d_nz storage elements are
+   When `d_nz`, `o_nz` parameters are specified, `d_nz` storage elements are
    allocated for every row of the local diagonal submatrix, and o_nz
    storage locations are allocated for every row of the OFF-DIAGONAL submat.
-   One way to choose d_nz and o_nz is to use the max nonzerors per local
+   One way to choose `d_nz` and `o_nz` is to use the max nonzerors per local
    rows for each of the local DIAGONAL, and the OFF-DIAGONAL submatrices.
    In this case, the values of d_nz,o_nz are:
 .vb
@@ -1349,7 +1323,7 @@
    for proc3. i.e we are using 12+15+10=37 storage locations to store
    34 values.
 
-   When d_nnz, o_nnz parameters are specified, the storage is specified
+   When `d_nnz`, `o_nnz` parameters are specified, the storage is specified
    for every row, corresponding to both DIAGONAL and OFF-DIAGONAL submatrices.
    In the above case the values for d_nnz,o_nnz are:
 .vb
@@ -1362,7 +1336,33 @@
 
    Level: intermediate
 
-.seealso: `MatCreate()`, `MatCreateSeqSELL()`, `MatSetValues()`, `MatCreatesell()`,
+   Notes:
+   If the *_nnz parameter is given then the *_nz parameter is ignored
+
+   The stored row and column indices begin with zero.
+
+   The parallel matrix is partitioned such that the first m0 rows belong to
+   process 0, the next m1 rows belong to process 1, the next m2 rows belong
+   to process 2 etc.. where m0,m1,m2... are the input parameter 'm'.
+
+   The DIAGONAL portion of the local submatrix of a processor can be defined
+   as the submatrix which is obtained by extraction the part corresponding to
+   the rows r1-r2 and columns c1-c2 of the global matrix, where r1 is the
+   first row that belongs to the processor, r2 is the last row belonging to
+   the this processor, and c1-c2 is range of indices of the local part of a
+   vector suitable for applying the matrix to.  This is an mxn matrix.  In the
+   common case of a square matrix, the row and column ranges are the same and
+   the DIAGONAL part is also square. The remaining portion of the local
+   submatrix (mxN) constitute the OFF-DIAGONAL portion.
+
+   If `o_nnz`, `d_nnz` are specified, then `o_nz`, and `d_nz` are ignored.
+
+   You can call `MatGetInfo()` to get information on how effective the preallocation was;
+   for example the fields mallocs,nz_allocated,nz_used,nz_unneeded;
+   You can also run with the option -info and look for messages with the string
+   malloc in them to see if additional memory allocation was needed.
+
+.seealso: `Mat`, `MatCreate()`, `MatCreateSeqSELL()`, `MatSetValues()`, `MatCreatesell()`,
           `MATMPISELL`, `MatGetInfo()`, `PetscSplitOwnership()`, `MATSELL`
 @*/
 PetscErrorCode MatMPISELLSetPreallocation(Mat B, PetscInt d_nz, const PetscInt d_nnz[], PetscInt o_nz, const PetscInt o_nnz[])
@@ -1383,7 +1383,7 @@
 
    Level: beginner
 
-.seealso: `MatCreateSell()`, `MATSEQSELL`, `MATSELL`, `MATSEQAIJ`, `MATAIJ`, `MATMPIAIJ`
+.seealso: `Mat`, `MatCreateSell()`, `MATSEQSELL`, `MATSELL`, `MATSEQAIJ`, `MATAIJ`, `MATMPIAIJ`
 M*/
 
 /*@C
@@ -1476,7 +1476,7 @@
    Consider the following 8x8 matrix with 34 non-zero values, that is
    assembled across 3 processors. Lets assume that proc0 owns 3 rows,
    proc1 owns 3 rows, proc2 owns 2 rows. This division can be shown
-   as follows:
+   as follows
 
 .vb
             1  2  0  |  0  3  0  |  0  4
@@ -1542,7 +1542,7 @@
 
    Level: intermediate
 
-.seealso: `MATSELL`, `MatCreate()`, `MatCreateSeqSELL()`, `MatSetValues()`, `MatMPISELLSetPreallocation()`, `MatMPISELLSetPreallocationSELL()`,
+.seealso: `Mat`, `MATSELL`, `MatCreate()`, `MatCreateSeqSELL()`, `MatSetValues()`, `MatMPISELLSetPreallocation()`, `MatMPISELLSetPreallocationSELL()`,
           `MATMPISELL`, `MatCreateMPISELLWithArrays()`
 @*/
 PetscErrorCode MatCreateSELL(MPI_Comm comm, PetscInt m, PetscInt n, PetscInt M, PetscInt N, PetscInt d_rlenmax, const PetscInt d_rlen[], PetscInt o_rlenmax, const PetscInt o_rlen[], Mat *A)
@@ -1585,14 +1585,15 @@
    Input Parameters:
 +    A - the matrix
 .    scall - either `MAT_INITIAL_MATRIX` or `MAT_REUSE_MATRIX`
--    row, col - index sets of rows and columns to extract (or NULL)
+.    row - index sets of rows to extract (or `NULL`)
+-    col - index sets of columns to extract (or `NULL`)
 
    Output Parameter:
 .    A_loc - the local sequential matrix generated
 
     Level: developer
 
-.seealso: `MATSEQSELL`, `MATMPISELL`, `MatGetOwnershipRange()`, `MatMPISELLGetLocalMat()`
+.seealso: `Mat`, `MATSEQSELL`, `MATMPISELL`, `MatGetOwnershipRange()`, `MatMPISELLGetLocalMat()`
 @*/
 PetscErrorCode MatMPISELLGetLocalMatCondensed(Mat A, MatReuse scall, IS *row, IS *col, Mat *A_loc)
 {
@@ -1812,7 +1813,7 @@
 
   Level: beginner
 
-.seealso: `MATSELL`, `MATSEQSELL` `MatCreateSELL()`
+.seealso: `Mat`, `MATSELL`, `MATSEQSELL` `MatCreateSELL()`
 M*/
 PETSC_EXTERN PetscErrorCode MatCreate_MPISELL(Mat B)
 {
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/mat/impls/sell/seq/sell.c petsc-3.18.5+dfsg1/src/mat/impls/sell/seq/sell.c
--- petsc-3.18.4+dfsg1/src/mat/impls/sell/seq/sell.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/mat/impls/sell/seq/sell.c	2023-02-27 23:11:05.000000000 +0100
@@ -52,33 +52,34 @@
 
  Input Parameters:
  +  B - The `MATSEQSELL` matrix
- .  nz - number of nonzeros per row (same for all rows)
- -  nnz - array containing the number of nonzeros in the various rows
- (possibly different for each row) or NULL
+ .  rlenmax - number of nonzeros per row (same for all rows)
+ -  rlen - array containing the number of nonzeros in the various rows
+ (possibly different for each row) or `NULL`
+
+ Level: intermediate
 
  Notes:
- If nnz is given then nz is ignored.
+ If `rlen` is given then `rlenmax` is ignored.
 
- Specify the preallocated storage with either nz or nnz (not both).
- Set nz = `PETSC_DEFAULT` and nnz = NULL for PETSc to control dynamic memory
+ Specify the preallocated storage with either `rlenmax` or `rlen` (not both).
+ Set `rlenmax` = `PETSC_DEFAULT` and `rlen` = `NULL` for PETSc to control dynamic memory
  allocation.  For large problems you MUST preallocate memory or you
  will get TERRIBLE performance, see the users' manual chapter on matrices.
 
  You can call `MatGetInfo()` to get information on how effective the preallocation was;
  for example the fields mallocs,nz_allocated,nz_used,nz_unneeded;
- You can also run with the option -info and look for messages with the string
+ You can also run with the option `-info` and look for messages with the string
  malloc in them to see if additional memory allocation was needed.
 
- Developers: Use nz of `MAT_SKIP_ALLOCATION` to not allocate any space for the matrix
+ Developers Note:
+ Use `rlenmax` of `MAT_SKIP_ALLOCATION` to not allocate any space for the matrix
  entries or columns indices.
 
  The maximum number of nonzeos in any row should be as accurate as possible.
  If it is underestimated, you will get bad performance due to reallocation
- (MatSeqXSELLReallocateSELL).
-
- Level: intermediate
+ (`MatSeqXSELLReallocateSELL()`).
 
- .seealso: `MATSEQSELL`, `MATSELL`, `MatCreate()`, `MatCreateSELL()`, `MatSetValues()`, `MatGetInfo()`
+ .seealso: `Mat`, `MATSEQSELL`, `MATSELL`, `MatCreate()`, `MatCreateSELL()`, `MatSetValues()`, `MatGetInfo()`
  @*/
 PetscErrorCode MatSeqSELLSetPreallocation(Mat B, PetscInt rlenmax, const PetscInt rlen[])
 {
@@ -335,7 +336,7 @@
     vec_y3 = _mm512_setzero_pd();
     vec_y4 = _mm512_setzero_pd();
 
-    j = a->sliidx[i] >> 3; /* 8 bytes are read at each time, corresponding to a slice columnn */
+    j = a->sliidx[i] >> 3; /* 8 bytes are read at each time, corresponding to a slice column */
     switch ((a->sliidx[i + 1] - a->sliidx[i]) / 8 & 3) {
     case 3:
       AVX512_Mult_Private(vec_idx, vec_x, vec_vals, vec_y);
@@ -551,7 +552,7 @@
     vec_y3 = _mm512_setzero_pd();
     vec_y4 = _mm512_setzero_pd();
 
-    j = a->sliidx[i] >> 3; /* 8 bytes are read at each time, corresponding to a slice columnn */
+    j = a->sliidx[i] >> 3; /* 8 bytes are read at each time, corresponding to a slice column */
     switch ((a->sliidx[i + 1] - a->sliidx[i]) / 8 & 3) {
     case 3:
       AVX512_Mult_Private(vec_idx, vec_x, vec_vals, vec_y);
@@ -1926,7 +1927,7 @@
 
  Level: intermediate
 
- .seealso: `MATSEQSELL`, `MatSeqSELLGetArray()`, `MatSeqSELLRestoreArrayF90()`
+ .seealso: `Mat`, `MATSEQSELL`, `MatSeqSELLGetArray()`, `MatSeqSELLRestoreArrayF90()`
  @*/
 PetscErrorCode MatSeqSELLRestoreArray(Mat A, PetscScalar **array)
 {
@@ -2071,7 +2072,7 @@
 
    Level: beginner
 
-.seealso: `MatCreateSeqSell()`, `MATSELL`, `MATMPISELL`, `MATSEQAIJ`, `MATAIJ`, `MATMPIAIJ`
+.seealso: `Mat`, `MatCreateSeqSell()`, `MATSELL`, `MATMPISELL`, `MATSEQAIJ`, `MATAIJ`, `MATMPIAIJ`
 M*/
 
 /*MC
@@ -2126,7 +2127,7 @@
 . * - Hong Zhang, Richard T. Mills, Karl Rupp, and Barry F. Smith, Vectorized Parallel Sparse Matrix-Vector Multiplication in {PETSc} Using {AVX-512},
    Proceedings of the 47th International Conference on Parallel Processing, 2018.
 
-.seealso: `MatCreateSeqSELL()`, `MatCreateSeqAIJ()`, `MatCreateSell()`, `MATSEQSELL`, `MATMPISELL`, `MATSEQAIJ`, `MATMPIAIJ`, `MATAIJ`
+.seealso: `Mat`, `MatCreateSeqSELL()`, `MatCreateSeqAIJ()`, `MatCreateSell()`, `MATSEQSELL`, `MATMPISELL`, `MATSEQAIJ`, `MATMPIAIJ`, `MATAIJ`
 M*/
 
 /*@C
@@ -2159,7 +2160,7 @@
 
  Level: intermediate
 
- .seealso: `MATSEQSELL`, `MatCreate()`, `MatCreateSELL()`, `MatSetValues()`, `MatSeqSELLSetPreallocation()`, `MATSELL`, `MATSEQSELL`, `MATMPISELL`
+ .seealso: `Mat`, `MATSEQSELL`, `MatCreate()`, `MatCreateSELL()`, `MatSetValues()`, `MatSeqSELLSetPreallocation()`, `MATSELL`, `MATSEQSELL`, `MATMPISELL`
  @*/
 PetscErrorCode MatCreateSeqSELL(MPI_Comm comm, PetscInt m, PetscInt n, PetscInt maxallocrow, const PetscInt rlen[], Mat *A)
 {
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/mat/impls/sell/seq/sell.h petsc-3.18.5+dfsg1/src/mat/impls/sell/seq/sell.h
--- petsc-3.18.4+dfsg1/src/mat/impls/sell/seq/sell.h	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/mat/impls/sell/seq/sell.h	2023-02-27 23:11:05.000000000 +0100
@@ -82,7 +82,7 @@
     PetscCall(PetscArraycpy(new_colidx + SIDX[SID + 1] + 8, COLIDX + SIDX[SID + 1], SIDX[AM >> 3] - SIDX[SID + 1])); \
     /* update slice_idx */ \
     for (ii = SID + 1; ii <= AM >> 3; ii++) SIDX[ii] += 8; \
-    /* update pointers. Notice that they point to the FIRST postion of the row */ \
+    /* update pointers. Notice that they point to the FIRST position of the row */ \
     CP = new_colidx + SIDX[SID] + (ROW & 0x07); \
     VP = new_val + SIDX[SID] + (ROW & 0x07); \
     /* free up old matrix storage */ \
@@ -133,7 +133,7 @@
           PetscCall(PetscArraycpy(new_colidx, a->colidx, a->sliidx[row / 8 + 1])); \
           PetscCall(PetscArraycpy(new_val + a->sliidx[row / 8 + 1] + 8, a->val + a->sliidx[row / 8 + 1], a->sliidx[a->totalslices] - a->sliidx[row / 8 + 1])); \
           PetscCall(PetscArraycpy(new_colidx + a->sliidx[row / 8 + 1] + 8, a->colidx + a->sliidx[row / 8 + 1], a->sliidx[a->totalslices] - a->sliidx[row / 8 + 1])); \
-          /* update pointers. Notice that they point to the FIRST postion of the row */ \
+          /* update pointers. Notice that they point to the FIRST position of the row */ \
           cp = new_colidx + a->sliidx[row / 8] + (row & 0x07); \
           vp = new_val + a->sliidx[row / 8] + (row & 0x07); \
           /* free up old matrix storage */ \
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/mat/impls/shell/shell.c petsc-3.18.5+dfsg1/src/mat/impls/shell/shell.c
--- petsc-3.18.4+dfsg1/src/mat/impls/shell/shell.c	2022-12-28 20:00:16.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/mat/impls/shell/shell.c	2023-02-27 23:11:05.000000000 +0100
@@ -1720,8 +1720,8 @@
 
           A is the user provided function.
 
-   `KSP`/`PC` uses changes in the` Mat`'s "state" to decide if preconditioners need to be rebuilt: `PCSetUp()` only calls the setup() for
-   for the PC implementation if the Mat state has increased from the previous call. Thus to get changes in a `MATSHELL` to trigger
+   `KSP`/`PC` uses changes in the `Mat`'s "state" to decide if preconditioners need to be rebuilt: `PCSetUp()` only calls the setup() for
+   for the `PC` implementation if the `Mat` state has increased from the previous call. Thus to get changes in a `MATSHELL` to trigger
    an update in the preconditioner you must call `MatAssemblyBegin()` and `MatAssemblyEnd()` or `PetscObjectStateIncrease`((`PetscObject`)mat);
    each time the `MATSHELL` matrix has changed.
 
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/mat/interface/matproduct.c petsc-3.18.5+dfsg1/src/mat/interface/matproduct.c
--- petsc-3.18.4+dfsg1/src/mat/interface/matproduct.c	2022-12-28 20:00:16.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/mat/interface/matproduct.c	2023-02-27 23:11:05.000000000 +0100
@@ -216,7 +216,7 @@
      If the type of any of the input matrices is different than what was previously used, or their symmetry flag changed but
      the symbolic phase took advantage of their symmetry, the product is cleared and `MatProductSetFromOptions()` and `MatProductSymbolic()` are invoked again.
 
-.seealso: `MatProductCreate()`, `MatProductSetFromOptions()`, `MatProductSymbolic().` `MatProductClear()`
+.seealso: `Mat`, `MatProductCreate()`, `MatProductSetFromOptions()`, `MatProductSymbolic().` `MatProductClear()`
 @*/
 PetscErrorCode MatProductReplaceMats(Mat A, Mat B, Mat C, Mat D)
 {
@@ -516,7 +516,7 @@
 
    Level: intermediate
 
-.seealso: `MatSetFromOptions()`, `MatProductCreate()`, `MatProductCreateWithMat()`, `MatProductNumeric()`, `MatProductSetType()`, `MatProductSetAlgorithm()`
+.seealso: `Mat`, `MatSetFromOptions()`, `MatProductCreate()`, `MatProductCreateWithMat()`, `MatProductNumeric()`, `MatProductSetType()`, `MatProductSetAlgorithm()`
 @*/
 PetscErrorCode MatProductSetFromOptions(Mat mat)
 {
@@ -538,12 +538,13 @@
 
    Logically Collective
 
-   Input Parameter:
-.  mat - the matrix obtained with `MatProductCreate()` or `MatProductCreateWithMat()`
+   Input Parameters:
++  mat - the matrix obtained with `MatProductCreate()` or `MatProductCreateWithMat()`
+-  viewer - where `mat` should be reviewed
 
    Level: intermediate
 
-.seealso: `MatProductSetFromOptions()`, `MatView()`, `MatProductCreate()`, `MatProductCreateWithMat()`
+.seealso: `Mat`, `MatProductSetFromOptions()`, `MatView()`, `MatProductCreate()`, `MatProductCreateWithMat()`
 @*/
 PetscErrorCode MatProductView(Mat mat, PetscViewer viewer)
 {
@@ -635,7 +636,7 @@
    Note:
    `MatProductSymbolic()` must have been called on mat before calling this function
 
-.seealso: `MatProductSetAlgorithm()`, `MatProductSetType()`, `MatProductCreate()`, `MatSetType()`, `MatProductSymbolic()`
+.seealso: `Mat`, `MatProductSetAlgorithm()`, `MatProductSetType()`, `MatProductCreate()`, `MatSetType()`, `MatProductSymbolic()`
 @*/
 PetscErrorCode MatProductNumeric(Mat mat)
 {
@@ -754,7 +755,7 @@
    Note:
    `MatProductSetFromOptions()` must have been called on mat before calling this function
 
-.seealso: `MatProductCreate()`, `MatProductCreateWithMat()`, `MatProductSetFromOptions()`, `MatProductNumeric()`, `MatProductSetType()`, `MatProductSetAlgorithm()`
+.seealso: `Mat`, `MatProductCreate()`, `MatProductCreateWithMat()`, `MatProductSetFromOptions()`, `MatProductNumeric()`, `MatProductSetType()`, `MatProductSetAlgorithm()`
 @*/
 PetscErrorCode MatProductSymbolic(Mat mat)
 {
@@ -819,7 +820,7 @@
 
    Level: intermediate
 
-.seealso: `MatProductSetFromOptions()`, `MatProductSetType()`, `MatProductSetAlgorithm()`, `MatProductCreate()`
+.seealso: `Mat`, `MatProductSetFromOptions()`, `MatProductSetType()`, `MatProductSetAlgorithm()`, `MatProductCreate()`
 @*/
 PetscErrorCode MatProductSetFill(Mat mat, PetscReal fill)
 {
@@ -846,7 +847,7 @@
 
    Level: intermediate
 
-.seealso: `MatProductSetType()`, `MatProductSetFill()`, `MatProductCreate()`, `MatProductAlgorithm`, `MatProductType`
+.seealso: `Mat`, `MatProductSetType()`, `MatProductSetFill()`, `MatProductCreate()`, `MatProductAlgorithm`, `MatProductType`
 @*/
 PetscErrorCode MatProductSetAlgorithm(Mat mat, MatProductAlgorithm alg)
 {
@@ -872,7 +873,7 @@
    Note:
    The small t represents the transpose operation.
 
-.seealso: `MatProductCreate()`, `MatProductType`, `MatProductType`,
+.seealso: `Mat`, `MatProductCreate()`, `MatProductType`, `MatProductType`,
           `MATPRODUCT_AB`, `MATPRODUCT_AtB`, `MATPRODUCT_ABt`, `MATPRODUCT_PtAP`, `MATPRODUCT_RARt`, `MATPRODUCT_ABC`
 @*/
 PetscErrorCode MatProductSetType(Mat mat, MatProductType productype)
@@ -907,7 +908,7 @@
 
    After having called this function, matrix-matrix operations can no longer be used on mat
 
-.seealso: `MatProductCreate()`
+.seealso: `Mat`, `MatProductCreate()`
 @*/
 PetscErrorCode MatProductClear(Mat mat)
 {
@@ -964,22 +965,19 @@
    Input Parameters:
 +  A - the first matrix
 .  B - the second matrix
-.  C - the third matrix (optional)
+.  C - the third matrix (optional, use `NULL` if not needed)
 -  D - the matrix which will be used to hold the product
 
-   Output Parameters:
-.  D - the product matrix
+   Level: intermediate
 
    Notes:
    Use `MatProductCreate()` if the matrix you wish computed (the D matrix) does not already exist
 
    See `MatProductCreate()` for details on the usage of the MatProduct routines
 
-   Any product data currently attached to D will be cleared
-
-   Level: intermediate
+   Any product data currently attached to `D` will be cleared
 
-.seealso: `MatProductCreate()`, `MatProductClear()`
+.seealso: `Mat`, `MatProductCreate()`, `MatProductClear()`
 @*/
 PetscErrorCode MatProductCreateWithMat(Mat A, Mat B, Mat C, Mat D)
 {
@@ -1053,7 +1051,7 @@
    It is undocumented what happens if the nonzero structure of the input matrices changes. Is the symbolic stage automatically redone? Does it crash?
    Is there error checking for it?
 
-.seealso: `MatProductCreateWithMat()`, `MatProductSetType()`, `MatProductSetAlgorithm()`, `MatProductClear()`
+.seealso: `Mat`, `MatProductCreateWithMat()`, `MatProductSetType()`, `MatProductSetAlgorithm()`, `MatProductClear()`
 @*/
 PetscErrorCode MatProductCreate(Mat A, Mat B, Mat C, Mat *D)
 {
@@ -1208,7 +1206,7 @@
 
    Level: intermediate
 
-.seealso: `MatProductCreateWithMat()`, `MatProductSetType()`, `MatProductCreate()`, `MatProductType`, `MatProductAlgorithm`
+.seealso: `Mat`, `MatProductCreateWithMat()`, `MatProductSetType()`, `MatProductCreate()`, `MatProductType`, `MatProductAlgorithm`
 @*/
 PetscErrorCode MatProductGetType(Mat mat, MatProductType *mtype)
 {
@@ -1235,7 +1233,7 @@
 
    Level: intermediate
 
-.seealso: `MatProductCreateWithMat()`, `MatProductSetType()`, `MatProductSetAlgorithm()`, `MatProductCreate()`
+.seealso: `Mat`, `MatProductCreateWithMat()`, `MatProductSetType()`, `MatProductSetAlgorithm()`, `MatProductCreate()`
 @*/
 PetscErrorCode MatProductGetMats(Mat mat, Mat *A, Mat *B, Mat *C)
 {
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/mat/interface/matreg.c petsc-3.18.5+dfsg1/src/mat/interface/matreg.c
--- petsc-3.18.4+dfsg1/src/mat/interface/matreg.c	2022-12-28 20:00:16.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/mat/interface/matreg.c	2023-02-27 23:11:05.000000000 +0100
@@ -254,8 +254,10 @@
    Not Collective
 
    Input Parameters:
-+  name - name of a new user-defined matrix type
--  routine_create - routine to create method context
++  sname - name of a new user-defined matrix type
+-  function - routine to create method context
+
+   Level: advanced
 
    Note:
    `MatRegister()` may be called multiple times to add several user-defined solvers.
@@ -270,8 +272,6 @@
    or at runtime via the option
 $     -mat_type my_mat
 
-   Level: advanced
-
 .seealso: `Mat`, `MatType`, `MatSetType()`, `MatRegisterAll()`
 @*/
 PetscErrorCode MatRegister(const char sname[], PetscErrorCode (*function)(Mat))
@@ -294,6 +294,8 @@
 .     sname - the name of the sequential matrix type, for example, `MATSEQAIJ`
 -     mname - the name of the parallel matrix type, for example, `MATMPIAIJ`
 
+  Level: developer
+
   Note:
   The matrix rootname should not be confused with the base type of the function `PetscObjectBaseTypeCompare()`
 
@@ -303,8 +305,6 @@
       appropriate creation routine. Why have two different ways of implementing the same functionality for different types of objects? It is
       confusing.
 
-  Level: developer
-
 .seealso: `Mat`, `MatType`, `PetscObjectBaseTypeCompare()`
 @*/
 PetscErrorCode MatRegisterRootName(const char rname[], const char sname[], const char mname[])
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/mat/interface/matrix.c petsc-3.18.5+dfsg1/src/mat/interface/matrix.c
--- petsc-3.18.4+dfsg1/src/mat/interface/matrix.c	2022-12-28 20:00:16.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/mat/interface/matrix.c	2023-02-27 23:11:05.000000000 +0100
@@ -48,14 +48,13 @@
 const char *const MatFactorTypes[] = {"NONE", "LU", "CHOLESKY", "ILU", "ICC", "ILUDT", "QR", "MatFactorType", "MAT_FACTOR_", NULL};
 
 /*@
-   MatSetRandom - Sets all components of a matrix to random numbers. For sparse matrices that have been preallocated but not been assembled it randomly selects appropriate locations,
-                  for sparse matrices that already have locations it fills the locations with random numbers
+   MatSetRandom - Sets all components of a matrix to random numbers.
 
    Logically Collective
 
    Input Parameters:
 +  x  - the matrix
--  rctx - the `PetscRandom` object, formed by `PetscRandomCreate()`, or NULL and
+-  rctx - the `PetscRandom` object, formed by `PetscRandomCreate()`, or `NULL` and
           it will create one internally.
 
    Output Parameter:
@@ -70,7 +69,12 @@
 
    Level: intermediate
 
-.seealso: `PetscRandom`, `PetscRandomCreate()`, `MatZeroEntries()`, `MatSetValues()`, `PetscRandomCreate()`, `PetscRandomDestroy()`
+   Note:
+   For sparse matrices that have been preallocated but not been assembled it randomly selects appropriate locations,
+   for sparse matrices that already have locations it fills the locations with random numbers. It generates an error if used on sparse matrices that have
+   not been preallocated.
+
+.seealso: `Mat`, `PetscRandom`, `PetscRandomCreate()`, `MatZeroEntries()`, `MatSetValues()`, `PetscRandomCreate()`, `PetscRandomDestroy()`
 @*/
 PetscErrorCode MatSetRandom(Mat x, PetscRandom rctx)
 {
@@ -122,7 +126,7 @@
 
     This can be called on non-factored matrices that come from, for example, matrices used in SOR.
 
-.seealso: `MatZeroEntries()`, `MatFactor()`, `MatGetFactor()`, `MatLUFactorSymbolic()`, `MatCholeskyFactorSymbolic()`, `MatFactorClearError()`, `MatFactorGetErrorZeroPivot()`,
+.seealso: `Mat`, `MatZeroEntries()`, `MatFactor()`, `MatGetFactor()`, `MatLUFactorSymbolic()`, `MatCholeskyFactorSymbolic()`, `MatFactorClearError()`, `MatFactorGetErrorZeroPivot()`,
           `MAT_FACTOR_NUMERIC_ZEROPIVOT`
 @*/
 PetscErrorCode MatFactorGetErrorZeroPivot(Mat mat, PetscReal *pivot, PetscInt *row)
@@ -152,7 +156,7 @@
    Note:
     This can also be called on non-factored matrices that come from, for example, matrices used in SOR.
 
-.seealso: `MatZeroEntries()`, `MatFactor()`, `MatGetFactor()`, `MatLUFactorSymbolic()`, `MatCholeskyFactorSymbolic()`, `MatFactorClearError()`, `MatFactorGetErrorZeroPivot()`,
+.seealso: `Mat`, `MatZeroEntries()`, `MatFactor()`, `MatGetFactor()`, `MatLUFactorSymbolic()`, `MatCholeskyFactorSymbolic()`, `MatFactorClearError()`, `MatFactorGetErrorZeroPivot()`,
           `MatFactorError`
 @*/
 PetscErrorCode MatFactorGetError(Mat mat, MatFactorError *err)
@@ -177,7 +181,7 @@
    Note:
     This can also be called on non-factored matrices that come from, for example, matrices used in SOR.
 
-.seealso: `MatZeroEntries()`, `MatFactor()`, `MatGetFactor()`, `MatLUFactorSymbolic()`, `MatCholeskyFactorSymbolic()`, `MatFactorGetError()`, `MatFactorGetErrorZeroPivot()`,
+.seealso: `Mat`, `MatZeroEntries()`, `MatFactor()`, `MatGetFactor()`, `MatLUFactorSymbolic()`, `MatCholeskyFactorSymbolic()`, `MatFactorGetError()`, `MatFactorGetErrorZeroPivot()`,
           `MatGetErrorCode()`, `MatFactorError`
 @*/
 PetscErrorCode MatFactorClearError(Mat mat)
@@ -254,11 +258,11 @@
   Output Parameter:
 .    keptrows - the rows that are not completely zero
 
-  Note:
-    keptrows is set to NULL if all rows are nonzero.
-
   Level: intermediate
 
+  Note:
+    `keptrows` is set to `NULL` if all rows are nonzero.
+
 .seealso: `Mat`, `MatFindZeroRows()`
  @*/
 PetscErrorCode MatFindNonzeroRows(Mat mat, IS *keptrows)
@@ -283,11 +287,11 @@
   Output Parameter:
 .    zerorows - the rows that are completely zero
 
-  Note:
-    zerorows is set to NULL if no rows are zero.
-
   Level: intermediate
 
+  Note:
+    `zerorows` is set to `NULL` if no rows are zero.
+
 .seealso: `Mat`, `MatFindNonzeroRows()`
  @*/
 PetscErrorCode MatFindZeroRows(Mat mat, IS *zerorows)
@@ -324,14 +328,14 @@
    Output Parameters:
 .   a - the diagonal part (which is a SEQUENTIAL matrix)
 
+   Level: advanced
+
    Notes:
    See the manual page for `MatCreateAIJ()` for more information on the "diagonal part" of the matrix.
 
-   Use caution, as the reference count on the returned matrix is not incremented and it is used as part of the containing MPI Mat's normal operation.
+   Use caution, as the reference count on the returned matrix is not incremented and it is used as part of `A`'s normal operation.
 
-   Level: advanced
-
-.seelaso: `MatCreateAIJ()`, `MATAIJ`, `MATBAIJ`, `MATSBAIJ`
+.seealso: `Mat`, `MatCreateAIJ()`, `MATAIJ`, `MATBAIJ`, `MATSBAIJ`
 @*/
 PetscErrorCode MatGetDiagonalBlock(Mat A, Mat *a)
 {
@@ -390,7 +394,7 @@
 
    Level: advanced
 
-.seealso: `MatImaginaryPart()`
+.seealso: `Mat`, `MatImaginaryPart()`
 @*/
 PetscErrorCode MatRealPart(Mat mat)
 {
@@ -416,11 +420,11 @@
 +   nghosts - number of ghosts (note for `MATBAIJ` and `MATSBAIJ` matrices there is one ghost for each block)
 -   ghosts - the global indices of the ghost points
 
-   Note:
-    the nghosts and ghosts are suitable to pass into `VecCreateGhost()`
-
    Level: advanced
 
+   Note:
+   `nghosts` and `ghosts` are suitable to pass into `VecCreateGhost()`
+
 .seealso: `Mat`, `VecCreateGhost()`
 @*/
 PetscErrorCode MatGetGhosts(Mat mat, PetscInt *nghosts, const PetscInt *ghosts[])
@@ -448,7 +452,7 @@
 
    Level: advanced
 
-.seealso: `MatRealPart()`
+.seealso: `Mat`, `MatRealPart()`
 @*/
 PetscErrorCode MatImaginaryPart(Mat mat)
 {
@@ -502,9 +506,11 @@
 -  row - the row to get
 
    Output Parameters:
-+  ncols -  if not NULL, the number of nonzeros in the row
-.  cols - if not NULL, the column numbers
--  vals - if not NULL, the values
++  ncols -  if not `NULL`, the number of nonzeros in the row
+.  cols - if not `NULL`, the column numbers
+-  vals - if not `NULL`, the values
+
+   Level: advanced
 
    Notes:
    This routine is provided for people who need to have direct access
@@ -514,7 +520,7 @@
    `MatGetRow()` always returns 0-based column indices, regardless of
    whether the internal representation is 0-based (default) or 1-based.
 
-   For better efficiency, set cols and/or vals to NULL if you do
+   For better efficiency, set cols and/or vals to `NULL` if you do
    not wish to extract these quantities.
 
    The user can only examine the values extracted with `MatGetRow()`;
@@ -533,7 +539,7 @@
    Use `MatSeqAIJGetArray()` and similar functions to access the numerical values for certain matrix types directly.
 
    Fortran Note:
-   The calling sequence from Fortran is
+   The calling sequence is
 .vb
    MatGetRow(matrix,row,ncols,cols,values,ierr)
          Mat     matrix (input)
@@ -548,9 +554,7 @@
    Do not try to change the contents of the output arrays (cols and vals).
    In some cases, this may corrupt the matrix.
 
-   Level: advanced
-
-.seealso: `MatRestoreRow()`, `MatSetValues()`, `MatGetValues()`, `MatCreateSubMatrices()`, `MatGetDiagonal()`, `MatGetRowIJ()`, `MatRestoreRowIJ()`
+.seealso: `Mat`, `MatRestoreRow()`, `MatSetValues()`, `MatGetValues()`, `MatCreateSubMatrices()`, `MatGetDiagonal()`, `MatGetRowIJ()`, `MatRestoreRowIJ()`
 @*/
 PetscErrorCode MatGetRow(Mat mat, PetscInt row, PetscInt *ncols, const PetscInt *cols[], const PetscScalar *vals[])
 {
@@ -580,7 +584,7 @@
 
    Level: advanced
 
-.seealso: `MatRealPart()`, `MatImaginaryPart()`, `VecConjugate()`, `MatTranspose()`
+.seealso: `Mat`, `MatRealPart()`, `MatImaginaryPart()`, `VecConjugate()`, `MatTranspose()`
 @*/
 PetscErrorCode MatConjugate(Mat mat)
 {
@@ -605,15 +609,17 @@
 .  ncols, cols - the number of nonzeros and their columns
 -  vals - if nonzero the column values
 
+   Level: advanced
+
    Notes:
    This routine should be called after you have finished examining the entries.
 
-   This routine zeros out ncols, cols, and vals. This is to prevent accidental
-   us of the array after it has been restored. If you pass NULL, it will
-   not zero the pointers.  Use of cols or vals after `MatRestoreRow()` is invalid.
+   This routine zeros out `ncols`, `cols`, and `vals`. This is to prevent accidental
+   us of the array after it has been restored. If you pass `NULL`, it will
+   not zero the pointers.  Use of `cols` or `vals` after `MatRestoreRow()` is invalid.
 
    Fortran Notes:
-   The calling sequence from Fortran is
+   The calling sequence is
 .vb
    MatRestoreRow(matrix,row,ncols,cols,values,ierr)
       Mat     matrix (input)
@@ -627,9 +633,7 @@
    In Fortran `MatRestoreRow()` MUST be called after `MatGetRow()`
    before another call to `MatGetRow()` can be made.
 
-   Level: advanced
-
-.seealso: `MatGetRow()`
+.seealso: `Mat`, `MatGetRow()`
 @*/
 PetscErrorCode MatRestoreRow(Mat mat, PetscInt row, PetscInt *ncols, const PetscInt *cols[], const PetscScalar *vals[])
 {
@@ -654,12 +658,12 @@
    Input Parameters:
 .  mat - the matrix
 
+   Level: advanced
+
    Note:
    The flag is to ensure that users are aware that `MatGetRow()` only provides the upper triangular part of the row for the matrices in `MATSBAIJ` format.
 
-   Level: advanced
-
-.seealso: `MATSBAIJ`, `MatRestoreRowUpperTriangular()`
+.seealso: `Mat`, `MATSBAIJ`, `MatRestoreRowUpperTriangular()`
 @*/
 PetscErrorCode MatGetRowUpperTriangular(Mat mat)
 {
@@ -682,12 +686,12 @@
    Input Parameters:
 .  mat - the matrix
 
+   Level: advanced
+
    Note:
    This routine should be called after you have finished calls to `MatGetRow()` and `MatRestoreRow()`.
 
-   Level: advanced
-
-.seealso: `MATSBAIJ`, `MatGetRowUpperTriangular()`
+.seealso: `Mat`, `MATSBAIJ`, `MatGetRowUpperTriangular()`
 @*/
 PetscErrorCode MatRestoreRowUpperTriangular(Mat mat)
 {
@@ -706,12 +710,14 @@
    MatSetOptionsPrefix - Sets the prefix used for searching for all
    `Mat` options in the database.
 
-   Logically Collective on A
+   Logically Collective
 
    Input Parameters:
 +  A - the matrix
 -  prefix - the prefix to prepend to all option names
 
+   Level: advanced
+
    Notes:
    A hyphen (-) must NOT be given at the beginning of the prefix name.
    The first character of all runtime options is AUTOMATICALLY the hyphen.
@@ -720,9 +726,7 @@
    prefix is automatically passed in from the PC calling the factorization. To set
    it directly use  `MatSetOptionsPrefixFactor()`
 
-   Level: advanced
-
-.seealso: `MatSetFromOptions()`, `MatSetOptionsPrefixFactor()`
+.seealso: `Mat`, `MatSetFromOptions()`, `MatSetOptionsPrefixFactor()`
 @*/
 PetscErrorCode MatSetOptionsPrefix(Mat A, const char prefix[])
 {
@@ -736,12 +740,14 @@
    MatSetOptionsPrefixFactor - Sets the prefix used for searching for all matrix factor options in the database for
    for matrices created with `MatGetFactor()`
 
-   Logically Collective on A
+   Logically Collective
 
    Input Parameters:
 +  A - the matrix
 -  prefix - the prefix to prepend to all option names for the factored matrix
 
+   Level: developer
+
    Notes:
    A hyphen (-) must NOT be given at the beginning of the prefix name.
    The first character of all runtime options is AUTOMATICALLY the hyphen.
@@ -749,9 +755,7 @@
    Normally the prefix is automatically passed in from the `PC` calling the factorization. To set
    it directly when not using `KSP`/`PC` use  `MatSetOptionsPrefixFactor()`
 
-   Level: developer
-
-.seealso:   [Matrix Factorization](sec_matfactor), `MatGetFactor()`, `MatSetFromOptions()`, `MatSetOptionsPrefix()`, `MatAppendOptionsPrefixFactor()`
+.seealso: `Mat`,   [Matrix Factorization](sec_matfactor), `MatGetFactor()`, `MatSetFromOptions()`, `MatSetOptionsPrefix()`, `MatAppendOptionsPrefixFactor()`
 @*/
 PetscErrorCode MatSetOptionsPrefixFactor(Mat A, const char prefix[])
 {
@@ -772,12 +776,14 @@
    MatAppendOptionsPrefixFactor - Appends to the prefix used for searching for all matrix factor options in the database for
    for matrices created with `MatGetFactor()`
 
-   Logically Collective on A
+   Logically Collective
 
    Input Parameters:
 +  A - the matrix
 -  prefix - the prefix to prepend to all option names for the factored matrix
 
+   Level: developer
+
    Notes:
    A hyphen (-) must NOT be given at the beginning of the prefix name.
    The first character of all runtime options is AUTOMATICALLY the hyphen.
@@ -785,9 +791,7 @@
    Normally the prefix is automatically passed in from the `PC` calling the factorization. To set
    it directly when not using `KSP`/`PC` use  `MatAppendOptionsPrefixFactor()`
 
-   Level: developer
-
-.seealso: [Matrix Factorization](sec_matfactor), `MatGetFactor()`, PetscOptionsCreate()`, `PetscOptionsDestroy()`, `PetscObjectSetOptionsPrefix()`, `PetscObjectPrependOptionsPrefix()`,
+.seealso: `Mat`, [Matrix Factorization](sec_matfactor), `MatGetFactor()`, PetscOptionsCreate()`, `PetscOptionsDestroy()`, `PetscObjectSetOptionsPrefix()`, `PetscObjectPrependOptionsPrefix()`,
           `PetscObjectGetOptionsPrefix()`, `TSAppendOptionsPrefix()`, `SNESAppendOptionsPrefix()`, `KSPAppendOptionsPrefix()`, `MatSetOptionsPrefixFactor()`,
           `MatSetOptionsPrefix()`
 @*/
@@ -818,18 +822,18 @@
    MatAppendOptionsPrefix - Appends to the prefix used for searching for all
    matrix options in the database.
 
-   Logically Collective on A
+   Logically Collective
 
    Input Parameters:
 +  A - the matrix
 -  prefix - the prefix to prepend to all option names
 
+   Level: advanced
+
    Note:
    A hyphen (-) must NOT be given at the beginning of the prefix name.
    The first character of all runtime options is AUTOMATICALLY the hyphen.
 
-   Level: advanced
-
 .seealso: `Mat`, `MatGetOptionsPrefix()`, `MatAppendOptionsPrefixFactor()`, `MatSetOptionsPrefix()`
 @*/
 PetscErrorCode MatAppendOptionsPrefix(Mat A, const char prefix[])
@@ -855,10 +859,10 @@
    Level: advanced
 
    Fortran Note:
-    On the fortran side, the user should pass in a string 'prefix' of
+    On the fortran side, the user should pass in a string `prefix` of
    sufficient length to hold the prefix.
 
-.seealso: `MatAppendOptionsPrefix()`, `MatSetOptionsPrefix()`, `MatAppendOptionsPrefixFactor()`, `MatSetOptionsPrefixFactor()`
+.seealso: `Mat`, `MatAppendOptionsPrefix()`, `MatSetOptionsPrefix()`, `MatAppendOptionsPrefixFactor()`, `MatSetOptionsPrefixFactor()`
 @*/
 PetscErrorCode MatGetOptionsPrefix(Mat A, const char *prefix[])
 {
@@ -872,11 +876,13 @@
 /*@
    MatResetPreallocation - Reset matrix to use the original nonzero pattern provided by users.
 
-   Collective on A
+   Collective
 
    Input Parameters:
 .  A - the matrix
 
+   Level: beginner
+
    Notes:
    The allocated memory will be shrunk after calling `MatAssemblyBegin()` and `MatAssemblyEnd()` with `MAT_FINAL_ASSEMBLY`.
 
@@ -884,9 +890,7 @@
 
    Currently only supported for  `MATMPIAIJ` and `MATSEQAIJ` matrices.
 
-   Level: beginner
-
-.seealso: `MatSeqAIJSetPreallocation()`, `MatMPIAIJSetPreallocation()`, `MatXAIJSetPreallocation()`
+.seealso: `Mat`, `MatSeqAIJSetPreallocation()`, `MatMPIAIJSetPreallocation()`, `MatXAIJSetPreallocation()`
 @*/
 PetscErrorCode MatResetPreallocation(Mat A)
 {
@@ -900,11 +904,13 @@
 /*@
    MatSetUp - Sets up the internal matrix data structures for later use.
 
-   Collective on A
+   Collective
 
    Input Parameters:
 .  A - the matrix
 
+   Level: intermediate
+
    Notes:
    If the user has not set preallocation for this matrix then a default preallocation that is likely to be inefficient is used.
 
@@ -914,8 +920,6 @@
 
    This routine is called internally by other matrix functions when needed so rarely needs to be called by users
 
-   Level: intermediate
-
 .seealso: `Mat`, `MatMult()`, `MatCreate()`, `MatDestroy()`
 @*/
 PetscErrorCode MatSetUp(Mat A)
@@ -945,7 +949,7 @@
 /*@C
    MatViewFromOptions - View properties of the matrix from the options database
 
-   Collective on A
+   Collective
 
    Input Parameters:
 +  A - the matrix
@@ -955,6 +959,8 @@
   Options Database Key:
 .  -mat_view [viewertype]:... - the viewer and its options
 
+   Level: intermediate
+
   Notes:
 .vb
     If no value is provided ascii:stdout is used
@@ -967,8 +973,6 @@
        saws[:communicatorname]                    publishes object to the Scientific Application Webserver (SAWs)
 .ve
 
-   Level: intermediate
-
 .seealso: `Mat`, `MatView()`, `PetscObjectViewFromOptions()`, `MatCreate()`
 @*/
 PetscErrorCode MatViewFromOptions(Mat A, PetscObject obj, const char name[])
@@ -1056,7 +1060,7 @@
   right mouse: continue with the simulation
 .ve
 
-.seealso: `PetscViewerPushFormat()`, `PetscViewerASCIIOpen()`, `PetscViewerDrawOpen()`, `PetscViewer`, `Mat`,
+.seealso: `Mat`, `PetscViewerPushFormat()`, `PetscViewerASCIIOpen()`, `PetscViewerDrawOpen()`, `PetscViewer`,
           `PetscViewerSocketOpen()`, `PetscViewerBinaryOpen()`, `MatLoad()`, `MatViewFromOptions()`
 @*/
 PetscErrorCode MatView(Mat mat, PetscViewer viewer)
@@ -1284,7 +1288,7 @@
    References:
 .  * - MATLAB(R) Documentation, manual page of save(), https://www.mathworks.com/help/matlab/ref/save.html#btox10b-1-version
 
-.seealso: `PetscViewerBinaryOpen()`, `PetscViewerSetType()`, `MatView()`, `VecLoad()`
+.seealso: `Mat`, `PetscViewerBinaryOpen()`, `PetscViewerSetType()`, `MatView()`, `VecLoad()`
  @*/
 PetscErrorCode MatLoad(Mat mat, PetscViewer viewer)
 {
@@ -1342,7 +1346,7 @@
 /*@C
    MatDestroy - Frees space taken by a matrix.
 
-   Collective on A
+   Collective
 
    Input Parameter:
 .  A - the matrix
@@ -1404,6 +1408,8 @@
 .  n, idxn - the number of columns and their global indices
 -  addv - either `ADD_VALUES` to add values to any existing entries, or `INSERT_VALUES` to replace existing entries with new values
 
+   Level: beginner
+
    Notes:
    If you create the matrix yourself (that is not with a call to `DMCreateMatrix()`) then you MUST call MatXXXXSetPreallocation() or
       `MatSetUp()` before using this routine
@@ -1426,8 +1432,6 @@
    The routine `MatSetValuesBlocked()` may offer much better efficiency
    for users of block sparse formats (`MATSEQBAIJ` and `MATMPIBAIJ`).
 
-   Level: beginner
-
    Developer Note:
    This is labeled with C so does not automatically generate Fortran stubs and interfaces
    because it requires multiple Fortran interfaces depending on which arguments are scalar or arrays.
@@ -1520,7 +1524,7 @@
     This is labeled with C so does not automatically generate Fortran stubs and interfaces
                     because it requires multiple Fortran interfaces depending on which arguments are scalar or arrays.
 
-.seealso: `MatSetOption()`, `MatSetValues()`, `MatAssemblyBegin()`, `MatAssemblyEnd()`, `MatSetValuesBlocked()`, `MatSetValuesLocal()`,
+.seealso: `Mat`, `MatSetOption()`, `MatSetValues()`, `MatAssemblyBegin()`, `MatAssemblyEnd()`, `MatSetValuesBlocked()`, `MatSetValuesLocal()`,
           `InsertMode`, `INSERT_VALUES`, `ADD_VALUES`, `MatSetValues()`
 @*/
 PetscErrorCode MatSetValuesIS(Mat mat, IS ism, IS isn, const PetscScalar v[], InsertMode addv)
@@ -1551,8 +1555,10 @@
 .  row - the (block) row to set
 -  v - a logically two-dimensional array of values
 
+   Level: intermediate
+
    Notes:
-   By the values, v, are column-oriented (for the block version) and sorted
+   The values, `v`, are column-oriented (for the block version) and sorted
 
    All the nonzeros in the row must be provided
 
@@ -1560,9 +1566,7 @@
 
    The row must belong to this process
 
-   Level: intermediate
-
-.seealso: `MatSetOption()`, `MatAssemblyBegin()`, `MatAssemblyEnd()`, `MatSetValuesBlocked()`, `MatSetValuesLocal()`,
+.seealso: `Mat`, `MatSetOption()`, `MatAssemblyBegin()`, `MatAssemblyEnd()`, `MatSetValuesBlocked()`, `MatSetValuesLocal()`,
           `InsertMode`, `INSERT_VALUES`, `ADD_VALUES`, `MatSetValues()`, `MatSetValuesRow()`, `MatSetLocalToGlobalMapping()`
 @*/
 PetscErrorCode MatSetValuesRowLocal(Mat mat, PetscInt row, const PetscScalar v[])
@@ -1589,8 +1593,10 @@
 .  row - the (block) row to set
 -  v - a logically two-dimensional (column major) array of values for  block matrices with blocksize larger than one, otherwise a one dimensional array of values
 
+   Level: advanced
+
    Notes:
-   The values, v, are column-oriented for the block version.
+   The values, `v`, are column-oriented for the block version.
 
    All the nonzeros in the row must be provided
 
@@ -1598,9 +1604,7 @@
 
    The row must belong to this process
 
-   Level: advanced
-
-.seealso: `MatSetValues()`, `MatSetOption()`, `MatAssemblyBegin()`, `MatAssemblyEnd()`, `MatSetValuesBlocked()`, `MatSetValuesLocal()`,
+.seealso: `Mat`, `MatSetValues()`, `MatSetOption()`, `MatAssemblyBegin()`, `MatAssemblyEnd()`, `MatSetValuesBlocked()`, `MatSetValuesLocal()`,
           `InsertMode`, `INSERT_VALUES`, `ADD_VALUES`, `MatSetValues()`
 @*/
 PetscErrorCode MatSetValuesRow(Mat mat, PetscInt row, const PetscScalar v[])
@@ -1642,7 +1646,7 @@
    Level: beginner
 
    Notes:
-   By default the values, v, are row-oriented.  See `MatSetOption()` for other options.
+   By default the values, `v`, are row-oriented.  See `MatSetOption()` for other options.
 
    Calls to `MatSetValuesStencil()` with the `INSERT_VALUES` and `ADD_VALUES`
    options cannot be mixed without intervening calls to the assembly
@@ -1758,7 +1762,7 @@
    Level: beginner
 
    Notes:
-   By default the values, v, are row-oriented and unsorted.
+   By default the values, `v`, are row-oriented and unsorted.
    See `MatSetOption()` for other options.
 
    Calls to `MatSetValuesBlockedStencil()` with the `INSERT_VALUES` and `ADD_VALUES`
@@ -1864,6 +1868,8 @@
 .  starts - starting point of ghost nodes on your processor in x, y, and z direction
 -  dof - number of degrees of freedom per node
 
+   Level: beginner
+
    Notes:
    Inspired by the structured grid interface to the HYPRE package
    (www.llnl.gov/CASC/hyper)
@@ -1871,8 +1877,6 @@
    For matrices generated with `DMCreateMatrix()` this routine is automatically called and so not needed by the
    user.
 
-   Level: beginner
-
 .seealso: `Mat`, `MatStencil`, `MatSetOption()`, `MatAssemblyBegin()`, `MatAssemblyEnd()`, `MatSetValuesBlocked()`, `MatSetValuesLocal()`
           `MatSetValues()`, `MatSetValuesBlockedStencil()`, `MatSetValuesStencil()`
 @*/
@@ -1902,8 +1906,10 @@
    Input Parameters:
 +  mat - the matrix
 .  v - a logically two-dimensional array of values
-.  m, idxm - the number of block rows and their global block indices
-.  n, idxn - the number of block columns and their global block indices
+.  m  - the number of block rows
+.  idxm - the global block indices
+.  n - the number of block columns
+.  idxn - the global block indices
 -  addv - either `ADD_VALUES` to add values to any existing entries, or `INSERT_VALUES` replaces existing entries with new values
 
    Level: intermediate
@@ -1912,7 +1918,7 @@
    If you create the matrix yourself (that is not with a call to `DMCreateMatrix()`) then you MUST call
    MatXXXXSetPreallocation() or `MatSetUp()` before using this routine.
 
-   The m and n count the NUMBER of blocks in the row direction and column direction,
+   The `m` and `n` count the NUMBER of blocks in the row direction and column direction,
    NOT the total number of rows/columns; for example, if the block size is 2 and
    you are passing in values for rows 2,3,4,5  then m would be 2 (not 4).
    The values in idxm would be 1 2; that is the first index for each block divided by
@@ -1921,8 +1927,8 @@
    Note that you must call `MatSetBlockSize()` when constructing this matrix (before
    preallocating it).
 
-   By default the values, v, are row-oriented, so the layout of
-   v is the same as for `MatSetValues()`. See `MatSetOption()` for other options.
+   By default the values, `v`, are row-oriented, so the layout of
+   `v` is the same as for `MatSetValues()`. See `MatSetOption()` for other options.
 
    Calls to `MatSetValuesBlocked()` with the `INSERT_VALUES` and `ADD_VALUES`
    options cannot be mixed without intervening calls to the assembly
@@ -1931,7 +1937,7 @@
    `MatSetValuesBlocked()` uses 0-based row and column numbers in Fortran
    as well as in C.
 
-   Negative indices may be passed in idxm and idxn, these rows and columns are
+   Negative indices may be passed in `idxm` and `idxn`, these rows and columns are
    simply ignored. This allows easily inserting element stiffness matrices
    with homogeneous Dirchlet boundary conditions that you don't want represented
    in the matrix.
@@ -2026,12 +2032,16 @@
    Input Parameters:
 +  mat - the matrix
 .  v - a logically two-dimensional array for storing the values
-.  m, idxm - the number of rows and their global indices
--  n, idxn - the number of columns and their global indices
+.  m  - the number of rows
+.  idxm - the  global indices of the rows
+.  n - the number of columns
+-  idxn - the global indices of the columns
+
+   Level: advanced
 
    Notes:
-     The user must allocate space (m*n `PetscScalar`s) for the values, v.
-     The values, v, are then returned in a row-oriented format,
+     The user must allocate space (m*n `PetscScalar`s) for the values, `v`.
+     The values, `v`, are then returned in a row-oriented format,
      analogous to that used by default in `MatSetValues()`.
 
      `MatGetValues()` uses 0-based row and column numbers in
@@ -2042,15 +2052,13 @@
      `MatSetValues()` and `MatGetValues()` CANNOT be made in succession
      without intermediate matrix assembly.
 
-     Negative row or column indices will be ignored and those locations in v[] will be
+     Negative row or column indices will be ignored and those locations in `v` will be
      left unchanged.
 
-     For the standard row-based matrix formats, idxm[] can only contain rows owned by the requesting MPI rank.
+     For the standard row-based matrix formats, `idxm` can only contain rows owned by the requesting MPI rank.
      That is, rows with global index greater than or equal to rstart and less than rend where rstart and rend are obtainable
      from `MatGetOwnershipRange`(mat,&rstart,&rend).
 
-   Level: advanced
-
 .seealso: `Mat`, `MatGetRow()`, `MatCreateSubMatrices()`, `MatSetValues()`, `MatGetOwnershipRange()`, `MatGetValuesLocal()`, `MatGetValue()`
 @*/
 PetscErrorCode MatGetValues(Mat mat, PetscInt m, const PetscInt idxm[], PetscInt n, const PetscInt idxn[], PetscScalar v[])
@@ -2080,8 +2088,10 @@
 
    Input Parameters:
 +  mat - the matrix
-.  nrow, irow - number of rows and their local indices
--  ncol, icol - number of columns and their local indices
+.  nrow - number of rows
+.  irow - the row local indices
+.  ncol - number of columns
+-  icol - the column local indices
 
    Output Parameter:
 .  y -  a logically two-dimensional array of values
@@ -2153,13 +2163,13 @@
 . rows - a concatenation of the rows for each block
 - v - a concatenation of logically two-dimensional arrays of values
 
+  Level: advanced
+
   Note:
   `MatSetPreallocationCOO()` and `MatSetValuesCOO()` may be a better way to provide the values
 
   In the future, we will extend this routine to handle rectangular blocks, and to allow multiple calls for a given matrix.
 
-  Level: advanced
-
 .seealso: `Mat`, `Mat`MatSetOption()`, `MatAssemblyBegin()`, `MatAssemblyEnd()`, `MatSetValuesBlocked()`, `MatSetValuesLocal()`,
           `InsertMode`, `INSERT_VALUES`, `ADD_VALUES`, `MatSetValues()`, `MatSetPreallocationCOO()`, `MatSetValuesCOO()`
 @*/
@@ -2250,7 +2260,7 @@
 /*@
    MatSetLayouts - Sets the `PetscLayout` objects for rows and columns of a matrix
 
-   Logically Collective on A
+   Logically Collective
 
    Input Parameters:
 +  A - the matrix
@@ -2262,7 +2272,7 @@
    Note:
    The `PetscLayout` objects are usually created automatically for the matrix so this routine rarely needs to be called.
 
-.seealso: `PetscLayout`, `MatCreateVecs()`, `MatGetLocalToGlobalMapping()`, `MatGetLayouts()`
+.seealso: `Mat`, `PetscLayout`, `MatCreateVecs()`, `MatGetLocalToGlobalMapping()`, `MatGetLayouts()`
 @*/
 PetscErrorCode MatSetLayouts(Mat A, PetscLayout rmap, PetscLayout cmap)
 {
@@ -2287,7 +2297,7 @@
 
    Level: advanced
 
-.seealso: [Matrix Layouts](sec_matlayout), `PetscLayout`, `MatCreateVecs()`, `MatGetLocalToGlobalMapping()`, `MatSetLayouts()`
+.seealso: `Mat`, [Matrix Layouts](sec_matlayout), `PetscLayout`, `MatCreateVecs()`, `MatGetLocalToGlobalMapping()`, `MatSetLayouts()`
 @*/
 PetscErrorCode MatGetLayouts(Mat A, PetscLayout *rmap, PetscLayout *cmap)
 {
@@ -2313,11 +2323,15 @@
 
    Input Parameters:
 +  mat - the matrix
-.  nrow, irow - number of rows and their local indices
-.  ncol, icol - number of columns and their local indices
+.  nrow - number of rows
+.  irow - the row local indices
+.  ncol - number of columns
+.  icol - the column local indices
 .  y -  a logically two-dimensional array of values
 -  addv - either `INSERT_VALUES` to add values to any existing entries, or `INSERT_VALUES` to replace existing entries with new values
 
+   Level: intermediate
+
    Notes:
    If you create the matrix yourself (that is not with a call to `DMCreateMatrix()`) then you MUST call MatXXXXSetPreallocation() or
       `MatSetUp()` before using this routine
@@ -2331,13 +2345,11 @@
    These values may be cached, so `MatAssemblyBegin()` and `MatAssemblyEnd()`
    MUST be called after all calls to `MatSetValuesLocal()` have been completed.
 
-   Level: intermediate
-
    Developer Note:
     This is labeled with C so does not automatically generate Fortran stubs and interfaces
                     because it requires multiple Fortran interfaces depending on which arguments are scalar or arrays.
 
-.seealso: `MatAssemblyBegin()`, `MatAssemblyEnd()`, `MatSetValues()`, `MatSetLocalToGlobalMapping()`,
+.seealso: `Mat`, `MatAssemblyBegin()`, `MatAssemblyEnd()`, `MatSetValues()`, `MatSetLocalToGlobalMapping()`,
           `MatGetValuesLocal()`
 @*/
 PetscErrorCode MatSetValuesLocal(Mat mat, PetscInt nrow, const PetscInt irow[], PetscInt ncol, const PetscInt icol[], const PetscScalar y[], InsertMode addv)
@@ -2398,11 +2410,15 @@
 
    Input Parameters:
 +  x - the matrix
-.  nrow, irow - number of rows and their local indices
-.  ncol, icol - number of columns and their local indices
+.  nrow - number of rows
+.  irow - the row local indices
+.  ncol - number of columns
+.  icol - the column local indices
 .  y -  a logically two-dimensional array of values
 -  addv - either `ADD_VALUES` to add values to any existing entries, or `INSERT_VALUES` to replace existing entries with new values
 
+   Level: intermediate
+
    Notes:
    If you create the matrix yourself (that is not with a call to `DMCreateMatrix()`) then you MUST call MatXXXXSetPreallocation() or
       `MatSetUp()` before using this routine
@@ -2417,8 +2433,6 @@
    These values may be cached, so `MatAssemblyBegin()` and `MatAssemblyEnd()`
    MUST be called after all calls to `MatSetValuesBlockedLocal()` have been completed.
 
-   Level: intermediate
-
    Developer Note:
     This is labeled with C so does not automatically generate Fortran stubs and interfaces
                     because it requires multiple Fortran interfaces depending on which arguments are scalar or arrays.
@@ -2500,12 +2514,12 @@
    Output Parameters:
 .  y - the result
 
+   Level: developer
+
    Note:
-   The vectors x and y cannot be the same.  I.e., one cannot
+   The vectors `x` and `y` cannot be the same.  I.e., one cannot
    call `MatMultDiagonalBlock`(A,y,y).
 
-   Level: developer
-
 .seealso: `Mat`, `MatMult()`, `MatMultTranspose()`, `MatMultAdd()`, `MatMultTransposeAdd()`
 @*/
 PetscErrorCode MatMultDiagonalBlock(Mat mat, Vec x, Vec y)
@@ -2526,7 +2540,6 @@
   PetscFunctionReturn(0);
 }
 
-/* --------------------------------------------------------*/
 /*@
    MatMult - Computes the matrix-vector product, y = Ax.
 
@@ -2539,12 +2552,12 @@
    Output Parameters:
 .  y - the result
 
+   Level: beginner
+
    Note:
-   The vectors x and y cannot be the same.  I.e., one cannot
+   The vectors `x` and `y` cannot be the same.  I.e., one cannot
    call `MatMult`(A,y,y).
 
-   Level: beginner
-
 .seealso: `Mat`, `MatMultTranspose()`, `MatMultAdd()`, `MatMultTransposeAdd()`
 @*/
 PetscErrorCode MatMult(Mat mat, Vec x, Vec y)
@@ -2586,15 +2599,15 @@
    Output Parameters:
 .  y - the result
 
+   Level: beginner
+
    Notes:
-   The vectors x and y cannot be the same.  I.e., one cannot
+   The vectors `x` and `y` cannot be the same.  I.e., one cannot
    call `MatMultTranspose`(A,y,y).
 
    For complex numbers this does NOT compute the Hermitian (complex conjugate) transpose multiple,
    use `MatMultHermitianTranspose()`
 
-   Level: beginner
-
 .seealso: `Mat`, `MatMult()`, `MatMultAdd()`, `MatMultTransposeAdd()`, `MatMultHermitianTranspose()`, `MatTranspose()`
 @*/
 PetscErrorCode MatMultTranspose(Mat mat, Vec x, Vec y)
@@ -2643,16 +2656,16 @@
    Output Parameters:
 .  y - the result
 
+   Level: beginner
+
    Notes:
-   The vectors x and y cannot be the same.  I.e., one cannot
+   The vectors `x` and `y` cannot be the same.  I.e., one cannot
    call `MatMultHermitianTranspose`(A,y,y).
 
    Also called the conjugate transpose, complex conjugate transpose, or adjoint.
 
    For real numbers `MatMultTranspose()` and `MatMultHermitianTranspose()` are identical.
 
-   Level: beginner
-
 .seealso: `Mat`, `MatMult()`, `MatMultAdd()`, `MatMultHermitianTransposeAdd()`, `MatMultTranspose()`
 @*/
 PetscErrorCode MatMultHermitianTranspose(Mat mat, Vec x, Vec y)
@@ -2708,12 +2721,12 @@
     Output Parameters:
 .   v3 - the result
 
+    Level: beginner
+
     Note:
-    The vectors v1 and v3 cannot be the same.  I.e., one cannot
+    The vectors `v1` and `v3` cannot be the same.  I.e., one cannot
     call `MatMultAdd`(A,v1,v2,v1).
 
-    Level: beginner
-
 .seealso: `Mat`, `MatMultTranspose()`, `MatMult()`, `MatMultTransposeAdd()`
 @*/
 PetscErrorCode MatMultAdd(Mat mat, Vec v1, Vec v2, Vec v3)
@@ -2756,12 +2769,12 @@
    Output Parameters:
 .  v3 - the result
 
+   Level: beginner
+
    Note:
-   The vectors v1 and v3 cannot be the same.  I.e., one cannot
+   The vectors `v1` and `v3` cannot be the same.  I.e., one cannot
    call `MatMultTransposeAdd`(A,v1,v2,v1).
 
-   Level: beginner
-
 .seealso: `Mat`, `MatMultTranspose()`, `MatMultAdd()`, `MatMult()`
 @*/
 PetscErrorCode MatMultTransposeAdd(Mat mat, Vec v1, Vec v2, Vec v3)
@@ -2805,12 +2818,12 @@
    Output Parameters:
 .  v3 - the result
 
+   Level: beginner
+
    Note:
-   The vectors v1 and v3 cannot be the same.  I.e., one cannot
+   The vectors `v1` and `v3` cannot be the same.  I.e., one cannot
    call `MatMultHermitianTransposeAdd`(A,v1,v2,v1).
 
-   Level: beginner
-
 .seealso: `Mat`, `MatMultHermitianTranspose()`, `MatMultTranspose()`, `MatMultAdd()`, `MatMult()`
 @*/
 PetscErrorCode MatMultHermitianTransposeAdd(Mat mat, Vec v1, Vec v2, Vec v3)
@@ -2868,7 +2881,7 @@
 
    Level: intermediate
 
-.seealso: [Matrix Factorization](sec_matfactor), `MatFactorType`, `MatGetFactor()`, `MatSetFactorType()`, `MAT_FACTOR_NONE`, `MAT_FACTOR_LU`, `MAT_FACTOR_CHOLESKY`, `MAT_FACTOR_ILU`,
+.seealso: `Mat`, [Matrix Factorization](sec_matfactor), `MatFactorType`, `MatGetFactor()`, `MatSetFactorType()`, `MAT_FACTOR_NONE`, `MAT_FACTOR_LU`, `MAT_FACTOR_CHOLESKY`, `MAT_FACTOR_ILU`,
           `MAT_FACTOR_ICC,MAT_FACTOR_ILUDT`, `MAT_FACTOR_QR`
 @*/
 PetscErrorCode MatGetFactorType(Mat mat, MatFactorType *t)
@@ -2892,7 +2905,7 @@
 
    Level: intermediate
 
-.seealso: [Matrix Factorization](sec_matfactor), `MatFactorType`, `MatGetFactor()`, `MatGetFactorType()`, `MAT_FACTOR_NONE`, `MAT_FACTOR_LU`, `MAT_FACTOR_CHOLESKY`, `MAT_FACTOR_ILU`,
+.seealso: `Mat`, [Matrix Factorization](sec_matfactor), `MatFactorType`, `MatGetFactor()`, `MatGetFactorType()`, `MAT_FACTOR_NONE`, `MAT_FACTOR_LU`, `MAT_FACTOR_CHOLESKY`, `MAT_FACTOR_ILU`,
           `MAT_FACTOR_ICC,MAT_FACTOR_ILUDT`, `MAT_FACTOR_QR`
 @*/
 PetscErrorCode MatSetFactorType(Mat mat, MatFactorType t)
@@ -2904,21 +2917,18 @@
   PetscFunctionReturn(0);
 }
 
-/* ------------------------------------------------------------*/
 /*@C
    MatGetInfo - Returns information about matrix storage (number of
    nonzeros, memory, etc.).
 
    Collective if `MAT_GLOBAL_MAX` or `MAT_GLOBAL_SUM` is used as the flag
 
-   Input Parameter:
-.  mat - the matrix
+   Input Parameters:
++  mat - the matrix
+-  flag - flag indicating the type of parameters to be returned (`MAT_LOCAL` - local matrix, `MAT_GLOBAL_MAX` - maximum over all processors, `MAT_GLOBAL_SUM` - sum over all processors)
 
    Output Parameters:
-+  flag - flag indicating the type of parameters to be returned
-   (`MAT_LOCAL` - local matrix, `MAT_GLOBAL_MAX` - maximum over all processors,
-   MAT_GLOBAL_SUM - sum over all processors)
--  info - matrix information context
+.  info - matrix information context
 
    Notes:
    The `MatInfo` context contains a variety of matrix data, including
@@ -2964,7 +2974,7 @@
     Fortran interface is not autogenerated as the
     interface definition cannot be generated correctly [due to MatInfo]
 
-.seealso: `MatInfo`, `MatStashGetInfo()`
+.seealso: `Mat`, `MatInfo`, `MatStashGetInfo()`
 @*/
 PetscErrorCode MatGetInfo(Mat mat, MatInfoType flag, MatInfo *info)
 {
@@ -2988,8 +2998,6 @@
   PetscFunctionReturn(0);
 }
 
-/* ----------------------------------------------------------*/
-
 /*@C
    MatLUFactor - Performs in-place LU factorization of matrix.
 
@@ -3000,9 +3008,12 @@
 .  row - row permutation
 .  col - column permutation
 -  info - options for factorization, includes
-$          fill - expected fill as ratio of original fill.
-$          dtcol - pivot tolerance (0 no pivot, 1 full column pivoting)
-$                   Run with the option -info to determine an optimal value to use
+.vb
+          fill - expected fill as ratio of original fill.
+          dtcol - pivot tolerance (0 no pivot, 1 full column pivoting)
+                   Run with the option -info to determine an optimal value to use
+.ve
+   Level: developer
 
    Notes:
    Most users should employ the `KSP` interface for linear solvers
@@ -3012,11 +3023,9 @@
    This changes the state of the matrix to a factored matrix; it cannot be used
    for example with `MatSetValues()` unless one first calls `MatSetUnfactored()`.
 
-   This is really in-place only for dense matrices, the prefered approach is to use `MatGetFactor()`, `MatLUFactorSymbolic()`, and `MatLUFactorNumeric()`
+   This is really in-place only for dense matrices, the preferred approach is to use `MatGetFactor()`, `MatLUFactorSymbolic()`, and `MatLUFactorNumeric()`
    when not using `KSP`.
 
-   Level: developer
-
    Developer Note:
    The Fortran interface is not autogenerated as the
    interface definition cannot be generated correctly [due to `MatFactorInfo`]
@@ -3059,10 +3068,12 @@
 .  row - row permutation
 .  col - column permutation
 -  info - structure containing
-$      levels - number of levels of fill.
-$      expected fill - as ratio of original fill.
-$      1 or 0 - indicating force fill on diagonal (improves robustness for matrices
+.vb
+      levels - number of levels of fill.
+      expected fill - as ratio of original fill.
+      1 or 0 - indicating force fill on diagonal (improves robustness for matrices
                 missing diagonal entries)
+.ve
 
    Level: developer
 
@@ -3072,14 +3083,14 @@
    See, e.g., `KSPCreate()`.
 
    Probably really in-place only when level of fill is zero, otherwise allocates
-   new space to store factored matrix and deletes previous memory. The prefered approach is to use `MatGetFactor()`, `MatILUFactorSymbolic()`, and `MatILUFactorNumeric()`
+   new space to store factored matrix and deletes previous memory. The preferred approach is to use `MatGetFactor()`, `MatILUFactorSymbolic()`, and `MatILUFactorNumeric()`
    when not using `KSP`.
 
    Developer Note:
    The Fortran interface is not autogenerated as the
    interface definition cannot be generated correctly [due to MatFactorInfo]
 
-.seealso: [Matrix Factorization](sec_matfactor), `MatILUFactorSymbolic()`, `MatLUFactorNumeric()`, `MatCholeskyFactor()`, `MatFactorInfo`
+.seealso: `Mat`, [Matrix Factorization](sec_matfactor), `MatILUFactorSymbolic()`, `MatLUFactorNumeric()`, `MatCholeskyFactor()`, `MatFactorInfo`
 @*/
 PetscErrorCode MatILUFactor(Mat mat, IS row, IS col, const MatFactorInfo *info)
 {
@@ -3130,7 +3141,7 @@
    The Fortran interface is not autogenerated as the
    interface definition cannot be generated correctly [due to `MatFactorInfo`]
 
-.seealso: [Matrix Factorization](sec_matfactor), `MatGetFactor()`, `MatLUFactor()`, `MatLUFactorNumeric()`, `MatCholeskyFactor()`, `MatFactorInfo`, `MatFactorInfoInitialize()`
+.seealso: `Mat`, [Matrix Factorization](sec_matfactor), `MatGetFactor()`, `MatLUFactor()`, `MatLUFactorNumeric()`, `MatCholeskyFactor()`, `MatFactorInfo`, `MatFactorInfoInitialize()`
 @*/
 PetscErrorCode MatLUFactorSymbolic(Mat fact, Mat mat, IS row, IS col, const MatFactorInfo *info)
 {
@@ -3188,7 +3199,7 @@
     The Fortran interface is not autogenerated as the
     interface definition cannot be generated correctly [due to `MatFactorInfo`]
 
-.seealso: [Matrix Factorization](sec_matfactor), `MatGetFactor()`, `MatFactorInfo`, `MatLUFactorSymbolic()`, `MatLUFactor()`, `MatCholeskyFactor()`
+.seealso: `Mat`, [Matrix Factorization](sec_matfactor), `MatGetFactor()`, `MatFactorInfo`, `MatLUFactorSymbolic()`, `MatLUFactor()`, `MatCholeskyFactor()`
 @*/
 PetscErrorCode MatLUFactorNumeric(Mat fact, Mat mat, const MatFactorInfo *info)
 {
@@ -3245,7 +3256,7 @@
    The Fortran interface is not autogenerated as the
    interface definition cannot be generated correctly [due to `MatFactorInfo`]
 
-.seealso: [Matrix Factorization](sec_matfactor), `MatGetFactor()`, `MatFactorInfo`, `MatLUFactor()`, `MatCholeskyFactorSymbolic()`, `MatCholeskyFactorNumeric()`
+.seealso: `Mat`, [Matrix Factorization](sec_matfactor), `MatGetFactor()`, `MatFactorInfo`, `MatLUFactor()`, `MatCholeskyFactorSymbolic()`, `MatCholeskyFactorNumeric()`
           `MatGetOrdering()`
 @*/
 PetscErrorCode MatCholeskyFactor(Mat mat, IS perm, const MatFactorInfo *info)
@@ -3304,7 +3315,7 @@
    The Fortran interface is not autogenerated as the
    interface definition cannot be generated correctly [due to `MatFactorInfo`]
 
-.seealso: [Matrix Factorization](sec_matfactor), `MatFactorInfo`, `MatGetFactor()`, `MatLUFactorSymbolic()`, `MatCholeskyFactor()`, `MatCholeskyFactorNumeric()`
+.seealso: `Mat`, [Matrix Factorization](sec_matfactor), `MatFactorInfo`, `MatGetFactor()`, `MatLUFactorSymbolic()`, `MatCholeskyFactor()`, `MatCholeskyFactorNumeric()`
           `MatGetOrdering()`
 @*/
 PetscErrorCode MatCholeskyFactorSymbolic(Mat fact, Mat mat, IS perm, const MatFactorInfo *info)
@@ -3362,7 +3373,7 @@
    The Fortran interface is not autogenerated as the
    interface definition cannot be generated correctly [due to `MatFactorInfo`]
 
-.seealso: [Matrix Factorization](sec_matfactor), `MatFactorInfo`, `MatGetFactor()`, `MatCholeskyFactorSymbolic()`, `MatCholeskyFactor()`, `MatLUFactorNumeric()`
+.seealso: `Mat`, [Matrix Factorization](sec_matfactor), `MatFactorInfo`, `MatGetFactor()`, `MatCholeskyFactorSymbolic()`, `MatCholeskyFactor()`, `MatLUFactorNumeric()`
 @*/
 PetscErrorCode MatCholeskyFactorNumeric(Mat fact, Mat mat, const MatFactorInfo *info)
 {
@@ -3422,7 +3433,7 @@
    The Fortran interface is not autogenerated as the
    interface definition cannot be generated correctly [due to MatFactorInfo]
 
-.seealso: [Matrix Factorization](sec_matfactor), `MatFactorInfo`, `MatGetFactor()`, `MatQRFactorSymbolic()`, `MatQRFactorNumeric()`, `MatLUFactor()`,
+.seealso: `Mat`, [Matrix Factorization](sec_matfactor), `MatFactorInfo`, `MatGetFactor()`, `MatQRFactorSymbolic()`, `MatQRFactorNumeric()`, `MatLUFactor()`,
           `MatSetUnfactored()`, `MatFactorInfo`, `MatGetFactor()`
 @*/
 PetscErrorCode MatQRFactor(Mat mat, IS col, const MatFactorInfo *info)
@@ -3470,7 +3481,7 @@
    The Fortran interface is not autogenerated as the
    interface definition cannot be generated correctly [due to `MatFactorInfo`]
 
-.seealso: [Matrix Factorization](sec_matfactor), `MatGetFactor()`, `MatFactorInfo`, `MatQRFactor()`, `MatQRFactorNumeric()`, `MatLUFactor()`, `MatFactorInfo`, `MatFactorInfoInitialize()`
+.seealso: `Mat`, [Matrix Factorization](sec_matfactor), `MatGetFactor()`, `MatFactorInfo`, `MatQRFactor()`, `MatQRFactorNumeric()`, `MatLUFactor()`, `MatFactorInfo`, `MatFactorInfoInitialize()`
 @*/
 PetscErrorCode MatQRFactorSymbolic(Mat fact, Mat mat, IS col, const MatFactorInfo *info)
 {
@@ -3521,7 +3532,7 @@
    The Fortran interface is not autogenerated as the
    interface definition cannot be generated correctly [due to `MatFactorInfo`]
 
-.seealso: [Matrix Factorization](sec_matfactor), `MatFactorInfo`, `MatGetFactor()`, `MatQRFactor()`, `MatQRFactorSymbolic()`, `MatLUFactor()`
+.seealso: `Mat`, [Matrix Factorization](sec_matfactor), `MatFactorInfo`, `MatGetFactor()`, `MatQRFactor()`, `MatQRFactorSymbolic()`, `MatLUFactor()`
 @*/
 PetscErrorCode MatQRFactorNumeric(Mat fact, Mat mat, const MatFactorInfo *info)
 {
@@ -3552,7 +3563,6 @@
   PetscFunctionReturn(0);
 }
 
-/* ----------------------------------------------------------------*/
 /*@
    MatSolve - Solves A x = b, given a factored matrix.
 
@@ -3565,17 +3575,17 @@
    Output Parameter:
 .  x - the result vector
 
+   Level: developer
+
    Notes:
-   The vectors b and x cannot be the same.  I.e., one cannot
+   The vectors `b` and `x` cannot be the same.  I.e., one cannot
    call `MatSolve`(A,x,x).
 
    Most users should employ the `KSP` interface for linear solvers
    instead of working directly with matrix algebra routines such as this.
    See, e.g., `KSPCreate()`.
 
-   Level: developer
-
-.seealso: [Matrix Factorization](sec_matfactor), `MatGetFactor()`, `MatLUFactor()`, `MatSolveAdd()`, `MatSolveTranspose()`, `MatSolveTransposeAdd()`
+.seealso: `Mat`, [Matrix Factorization](sec_matfactor), `MatGetFactor()`, `MatLUFactor()`, `MatSolveAdd()`, `MatSolveTranspose()`, `MatSolveTransposeAdd()`
 @*/
 PetscErrorCode MatSolve(Mat mat, Vec b, Vec x)
 {
@@ -3646,7 +3656,7 @@
 /*@
    MatMatSolve - Solves A X = B, given a factored matrix.
 
-   Neighbor-wise Collective on A
+   Neighbor-wise Collective
 
    Input Parameters:
 +  A - the factored matrix
@@ -3655,13 +3665,13 @@
    Output Parameter:
 .  X - the result matrix (dense matrix)
 
-   Note:
-   If B is a `MATDENSE` matrix then one can call `MatMatSolve`(A,B,B) except with MKL_CPARDISO;
-   otherwise, B and X cannot be the same.
-
    Level: developer
 
-.seealso: [Matrix Factorization](sec_matfactor), `MatGetFactor()`, `MatSolve()`, `MatMatSolveTranspose()`, `MatLUFactor()`, `MatCholeskyFactor()`
+   Note:
+   If `B` is a `MATDENSE` matrix then one can call `MatMatSolve`(A,B,B) except with `MATSOLVERMKL_CPARDISO`;
+   otherwise, `B` and `X` cannot be the same.
+
+.seealso: `Mat`, [Matrix Factorization](sec_matfactor), `MatGetFactor()`, `MatSolve()`, `MatMatSolveTranspose()`, `MatLUFactor()`, `MatCholeskyFactor()`
 @*/
 PetscErrorCode MatMatSolve(Mat A, Mat B, Mat X)
 {
@@ -3692,7 +3702,7 @@
 /*@
    MatMatSolveTranspose - Solves A^T X = B, given a factored matrix.
 
-   Neighbor-wise Collective on A
+   Neighbor-wise Collective
 
    Input Parameters:
 +  A - the factored matrix
@@ -3701,13 +3711,13 @@
    Output Parameter:
 .  X - the result matrix (dense matrix)
 
+   Level: developer
+
    Note:
-   The matrices B and X cannot be the same.  I.e., one cannot
+   The matrices `B` and `X` cannot be the same.  I.e., one cannot
    call `MatMatSolveTranspose`(A,X,X).
 
-   Level: developer
-
-.seealso: [Matrix Factorization](sec_matfactor), `MatGetFactor()`, `MatSolveTranspose()`, `MatMatSolve()`, `MatLUFactor()`, `MatCholeskyFactor()`
+.seealso: `Mat`, [Matrix Factorization](sec_matfactor), `MatGetFactor()`, `MatSolveTranspose()`, `MatMatSolve()`, `MatLUFactor()`, `MatCholeskyFactor()`
 @*/
 PetscErrorCode MatMatSolveTranspose(Mat A, Mat B, Mat X)
 {
@@ -3740,7 +3750,7 @@
 /*@
    MatMatTransposeSolve - Solves A X = B^T, given a factored matrix.
 
-   Neighbor-wise Collective on A
+   Neighbor-wise Collective
 
    Input Parameters:
 +  A - the factored matrix
@@ -3749,13 +3759,13 @@
    Output Parameter:
 .  X - the result matrix (dense matrix)
 
+   Level: developer
+
    Note:
    For MUMPS, it only supports centralized sparse compressed column format on the host processor for right hand side matrix. User must create B^T in sparse compressed row
    format on the host processor and call `MatMatTransposeSolve()` to implement MUMPS' `MatMatSolve()`.
 
-   Level: developer
-
-.seealso: [Matrix Factorization](sec_matfactor), `MatMatSolve()`, `MatMatSolveTranspose()`, `MatLUFactor()`, `MatCholeskyFactor()`
+.seealso: `Mat`, [Matrix Factorization](sec_matfactor), `MatMatSolve()`, `MatMatSolveTranspose()`, `MatLUFactor()`, `MatCholeskyFactor()`
 @*/
 PetscErrorCode MatMatTransposeSolve(Mat A, Mat Bt, Mat X)
 {
@@ -3795,11 +3805,13 @@
    Output Parameter:
 .  x - the result vector
 
+   Level: developer
+
    Notes:
    `MatSolve()` should be used for most applications, as it performs
    a forward solve followed by a backward solve.
 
-   The vectors b and x cannot be the same,  i.e., one cannot
+   The vectors `b` and `x` cannot be the same,  i.e., one cannot
    call `MatForwardSolve`(A,x,x).
 
    For matrix in `MATSEQBAIJ` format with block size larger than 1,
@@ -3808,9 +3820,7 @@
    `MatBackwardSolve()` solves U x = y.
    Thus they do not provide a symmetric preconditioner.
 
-   Level: developer
-
-.seealso: `MatBackwardSolve()`, `MatGetFactor()`, `MatSolve()`, `MatBackwardSolve()`
+.seealso: `Mat`, `MatBackwardSolve()`, `MatGetFactor()`, `MatSolve()`, `MatBackwardSolve()`
 @*/
 PetscErrorCode MatForwardSolve(Mat mat, Vec b, Vec x)
 {
@@ -3848,11 +3858,13 @@
    Output Parameter:
 .  x - the result vector
 
+   Level: developer
+
    Notes:
    `MatSolve()` should be used for most applications, as it performs
    a forward solve followed by a backward solve.
 
-   The vectors b and x cannot be the same.  I.e., one cannot
+   The vectors `b` and `x` cannot be the same.  I.e., one cannot
    call `MatBackwardSolve`(A,x,x).
 
    For matrix in `MATSEQBAIJ` format with block size larger than 1,
@@ -3861,9 +3873,7 @@
    `MatBackwardSolve()` solves U x = y.
    Thus they do not provide a symmetric preconditioner.
 
-   Level: developer
-
-.seealso: `MatForwardSolve()`, `MatGetFactor()`, `MatSolve()`, `MatForwardSolve()`
+.seealso: `Mat`, `MatForwardSolve()`, `MatGetFactor()`, `MatSolve()`, `MatForwardSolve()`
 @*/
 PetscErrorCode MatBackwardSolve(Mat mat, Vec b, Vec x)
 {
@@ -3901,13 +3911,13 @@
    Output Parameter:
 .  x - the result vector
 
+   Level: developer
+
    Note:
-   The vectors b and x cannot be the same.  I.e., one cannot
+   The vectors `b` and `x` cannot be the same.  I.e., one cannot
    call `MatSolveAdd`(A,x,y,x).
 
-   Level: developer
-
-.seealso: [Matrix Factorization](sec_matfactor), `MatSolve()`, `MatGetFactor()`, `MatSolveTranspose()`, `MatSolveTransposeAdd()`
+.seealso: `Mat`, [Matrix Factorization](sec_matfactor), `MatSolve()`, `MatGetFactor()`, `MatSolveTranspose()`, `MatSolveTransposeAdd()`
 @*/
 PetscErrorCode MatSolveAdd(Mat mat, Vec b, Vec y, Vec x)
 {
@@ -3968,17 +3978,17 @@
    Output Parameter:
 .  x - the result vector
 
+   Level: developer
+
    Notes:
-   The vectors b and x cannot be the same.  I.e., one cannot
+   The vectors `b` and `x` cannot be the same.  I.e., one cannot
    call `MatSolveTranspose`(A,x,x).
 
    Most users should employ the `KSP` interface for linear solvers
    instead of working directly with matrix algebra routines such as this.
    See, e.g., `KSPCreate()`.
 
-   Level: developer
-
-.seealso: `MatGetFactor()`, `KSP`, `MatSolve()`, `MatSolveAdd()`, `MatSolveTransposeAdd()`
+.seealso: `Mat`, `MatGetFactor()`, `KSP`, `MatSolve()`, `MatSolveAdd()`, `MatSolveTransposeAdd()`
 @*/
 PetscErrorCode MatSolveTranspose(Mat mat, Vec b, Vec x)
 {
@@ -4023,13 +4033,13 @@
    Output Parameter:
 .  x - the result vector
 
+   Level: developer
+
    Note:
-   The vectors b and x cannot be the same.  I.e., one cannot
+   The vectors `b` and `x` cannot be the same.  I.e., one cannot
    call `MatSolveTransposeAdd`(A,x,y,x).
 
-   Level: developer
-
-.seealso: `MatGetFactor()`, `MatSolve()`, `MatSolveAdd()`, `MatSolveTranspose()`
+.seealso: `Mat`, `MatGetFactor()`, `MatSolve()`, `MatSolveAdd()`, `MatSolveTranspose()`
 @*/
 PetscErrorCode MatSolveTransposeAdd(Mat mat, Vec b, Vec y, Vec x)
 {
@@ -4077,7 +4087,6 @@
   PetscCall(PetscObjectStateIncrease((PetscObject)x));
   PetscFunctionReturn(0);
 }
-/* ----------------------------------------------------------------*/
 
 /*@
    MatSOR - Computes relaxation (SOR, Gauss-Seidel) sweeps.
@@ -4109,6 +4118,8 @@
          vector (with omega)
 -     `SOR_ZERO_INITIAL_GUESS` - zero initial guess
 
+   Level: developer
+
    Notes:
    `SOR_LOCAL_FORWARD_SWEEP`, `SOR_LOCAL_BACKWARD_SWEEP`, and
    `SOR_LOCAL_SYMMETRIC_SWEEP` perform separate independent smoothings
@@ -4123,7 +4134,7 @@
    instead of working directly with matrix algebra routines such as this.
    See, e.g., `KSPCreate()`.
 
-   Vectors x and b CANNOT be the same
+   Vectors `x` and `b` CANNOT be the same
 
    Notes for Advanced Users:
    The flags are implemented as bitwise inclusive or operations.
@@ -4133,8 +4144,6 @@
    Developer Note:
    We should add block SOR support for `MATAIJ` matrices with block size set to great than one and no inodes
 
-   Level: developer
-
 .seealso: `Mat`, `MatMult()`, `KSP`, `PC`, `MatGetFactor()`
 @*/
 PetscErrorCode MatSOR(Mat mat, Vec b, PetscReal omega, MatSORType flag, PetscReal shift, PetscInt its, PetscInt lits, Vec x)
@@ -4192,7 +4201,7 @@
 /*@
    MatCopy - Copies a matrix to another matrix.
 
-   Collective on A
+   Collective
 
    Input Parameters:
 +  A - the matrix
@@ -4201,6 +4210,8 @@
    Output Parameter:
 .  B - where the copy is put
 
+   Level: intermediate
+
    Notes:
    If you use `SAME_NONZERO_PATTERN `then the two matrices must have the same nonzero pattern or the routine will crash.
 
@@ -4208,8 +4219,6 @@
    matrix (after first zeroing the second matrix).  A related routine is
    `MatConvert()`, which first creates a new matrix and then copies the data.
 
-   Level: intermediate
-
 .seealso: `Mat`, `MatConvert()`, `MatDuplicate()`
 @*/
 PetscErrorCode MatCopy(Mat A, Mat B, MatStructure str)
@@ -4263,6 +4272,8 @@
    Output Parameter:
 .  M - pointer to place new matrix
 
+   Level: intermediate
+
    Notes:
    `MatConvert()` first creates a new matrix and then copies the data from
    the first matrix.  A related routine is `MatCopy()`, which copies the matrix
@@ -4272,8 +4283,6 @@
    the MPI communicator of the generated matrix is always the same as the communicator
    of the input matrix.
 
-   Level: intermediate
-
 .seealso: `Mat`, `MatCopy()`, `MatDuplicate()`, `MAT_INITIAL_MATRIX`, `MAT_REUSE_MATRIX`, `MAT_INPLACE_MATRIX`
 @*/
 PetscErrorCode MatConvert(Mat mat, MatType newtype, MatReuse reuse, Mat *M)
@@ -4438,11 +4447,10 @@
 
    Level: intermediate
 
-   Note:
-      In Fortran you pass in a empty string and the package name will be copied into it.
-    (Make sure the string is long enough)
+   Fortran Note:
+   Pass in an empty string and the package name will be copied into it. Make sure the string is long enough.
 
-.seealso: [Matrix Factorization](sec_matfactor), `MatGetFactor()`, `MatSolverType`, `MatCopy()`, `MatDuplicate()`, `MatGetFactorAvailable()`, `MatGetFactor()`
+.seealso: `Mat`, [Matrix Factorization](sec_matfactor), `MatGetFactor()`, `MatSolverType`, `MatCopy()`, `MatDuplicate()`, `MatGetFactorAvailable()`, `MatGetFactor()`
 @*/
 PetscErrorCode MatFactorGetSolverType(Mat mat, MatSolverType *type)
 {
@@ -4487,7 +4495,7 @@
 
     Level: developer
 
-.seealso: [Matrix Factorization](sec_matfactor), `MatFactorGetSolverType()`, `MatCopy()`, `MatDuplicate()`, `MatGetFactorAvailable()`, `MatGetFactor()`
+.seealso: `Mat`, [Matrix Factorization](sec_matfactor), `MatFactorGetSolverType()`, `MatCopy()`, `MatDuplicate()`, `MatGetFactorAvailable()`, `MatGetFactor()`
 @*/
 PetscErrorCode MatSolverTypeRegister(MatSolverType package, MatType mtype, MatFactorType ftype, PetscErrorCode (*createfactor)(Mat, MatFactorType, Mat *))
 {
@@ -4546,11 +4554,11 @@
    Output Parameters:
 +   foundtype - `PETSC_TRUE` if the type was registered
 .   foundmtype - `PETSC_TRUE` if the type supports the requested mtype
--   createfactor - routine that will create the factored matrix ready to be used or NULL if not found
+-   createfactor - routine that will create the factored matrix ready to be used or `NULL` if not found
 
     Level: developer
 
-.seealso: `MatFactorType`, `MatType`, `MatCopy()`, `MatDuplicate()`, `MatGetFactorAvailable()`, `MatSolverTypeRegister()`, `MatGetFactor()`
+.seealso: `Mat`, `MatFactorType`, `MatType`, `MatCopy()`, `MatDuplicate()`, `MatGetFactorAvailable()`, `MatSolverTypeRegister()`, `MatGetFactor()`
 @*/
 PetscErrorCode MatSolverTypeGet(MatSolverType type, MatType mtype, MatFactorType ftype, PetscBool *foundtype, PetscBool *foundmtype, PetscErrorCode (**createfactor)(Mat, MatFactorType, Mat *))
 {
@@ -4650,13 +4658,13 @@
    Output Parameters:
 .  flg - `PETSC_TRUE` if uses the ordering
 
+   Level: developer
+
    Note:
    Most internal PETSc factorizations use the ordering passed to the factorization routine but external
    packages do not, thus we want to skip generating the ordering when it is not needed or used.
 
-   Level: developer
-
-.seealso: [Matrix Factorization](sec_matfactor), `MatCopy()`, `MatDuplicate()`, `MatGetFactorAvailable()`, `MatGetFactor()`, `MatLUFactorSymbolic()`, `MatCholeskyFactorSymbolic()`
+.seealso: `Mat`, [Matrix Factorization](sec_matfactor), `MatCopy()`, `MatDuplicate()`, `MatGetFactorAvailable()`, `MatGetFactor()`, `MatLUFactorSymbolic()`, `MatCholeskyFactorSymbolic()`
 @*/
 PetscErrorCode MatFactorGetCanUseOrdering(Mat mat, PetscBool *flg)
 {
@@ -4678,7 +4686,7 @@
 
    Level: developer
 
-.seealso: [Matrix Factorization](sec_matfactor), `MatFactorType`, `MatOrderingType`, `MatCopy()`, `MatDuplicate()`, `MatGetFactorAvailable()`, `MatGetFactor()`, `MatLUFactorSymbolic()`, `MatCholeskyFactorSymbolic()`
+.seealso: `Mat`, [Matrix Factorization](sec_matfactor), `MatFactorType`, `MatOrderingType`, `MatCopy()`, `MatDuplicate()`, `MatGetFactorAvailable()`, `MatGetFactor()`, `MatLUFactorSymbolic()`, `MatCholeskyFactorSymbolic()`
 @*/
 PetscErrorCode MatFactorGetPreferredOrdering(Mat mat, MatFactorType ftype, MatOrderingType *otype)
 {
@@ -4705,6 +4713,8 @@
 .  -mat_factor_bind_factorization <host, device> - Where to do matrix factorization? Default is device (might consume more device memory.
                                   One can choose host to save device memory). Currently only supported with `MATSEQAIJCUSPARSE` matrices.
 
+   Level: intermediate
+
    Notes:
      Users usually access the factorization solvers via `KSP`
 
@@ -4720,9 +4730,7 @@
    Developer Note:
       This should actually be called `MatCreateFactor()` since it creates a new factor object
 
-   Level: intermediate
-
-.seealso: [Matrix Factorization](sec_matfactor), `KSP`, `MatSolverType`, `MatFactorType`, `MatCopy()`, `MatDuplicate()`, `MatGetFactorAvailable()`, `MatFactorGetCanUseOrdering()`, `MatSolverTypeRegister()`,
+.seealso: `Mat`, [Matrix Factorization](sec_matfactor), `KSP`, `MatSolverType`, `MatFactorType`, `MatCopy()`, `MatDuplicate()`, `MatGetFactorAvailable()`, `MatFactorGetCanUseOrdering()`, `MatSolverTypeRegister()`,
           `MAT_FACTOR_LU`, `MAT_FACTOR_CHOLESKY`, `MAT_FACTOR_ICC`, `MAT_FACTOR_ILU`, `MAT_FACTOR_QR`
 @*/
 PetscErrorCode MatGetFactor(Mat mat, MatSolverType type, MatFactorType ftype, Mat *f)
@@ -4767,6 +4775,8 @@
    Output Parameter:
 .    flg - PETSC_TRUE if the factorization is available
 
+   Level: intermediate
+
    Notes:
       Some PETSc matrix formats have alternative solvers available that are contained in alternative packages
      such as pastix, superlu, mumps etc.
@@ -4776,9 +4786,7 @@
    Developer Note:
       This should actually be called MatCreateFactorAvailable() since MatGetFactor() creates a new factor object
 
-   Level: intermediate
-
-.seealso: [Matrix Factorization](sec_matfactor), `MatSolverType`, `MatFactorType`, `MatGetFactor()`, `MatCopy()`, `MatDuplicate()`, `MatGetFactor()`, `MatSolverTypeRegister()`,
+.seealso: `Mat`, [Matrix Factorization](sec_matfactor), `MatSolverType`, `MatFactorType`, `MatGetFactor()`, `MatCopy()`, `MatDuplicate()`, `MatGetFactor()`, `MatSolverTypeRegister()`,
           `MAT_FACTOR_LU`, `MAT_FACTOR_CHOLESKY`, `MAT_FACTOR_ICC`, `MAT_FACTOR_ILU`, `MAT_FACTOR_QR`
 @*/
 PetscErrorCode MatGetFactorAvailable(Mat mat, MatSolverType type, MatFactorType ftype, PetscBool *flg)
@@ -4822,7 +4830,7 @@
     is duplicated and the internal data structures created for the reuse of previous matrix operations are not duplicated.
     User should not use `MatDuplicate()` to create new matrix M if M is intended to be reused as the product of matrix operation.
 
-.seealso: `MatCopy()`, `MatConvert()`, `MatDuplicateOption`
+.seealso: `Mat`, `MatCopy()`, `MatConvert()`, `MatDuplicateOption`
 @*/
 PetscErrorCode MatDuplicate(Mat mat, MatDuplicateOption op, Mat *M)
 {
@@ -4921,7 +4929,7 @@
 
     This code is only implemented for a couple of matrix formats.
 
-.seealso: `MatGetDiagonal()`, `MatCreateSubMatrices()`, `MatCreateSubMatrix()`, `MatGetRowMaxAbs()`, `MatGetRowMinAbs()`,
+.seealso: `Mat`, `MatGetDiagonal()`, `MatCreateSubMatrices()`, `MatCreateSubMatrix()`, `MatGetRowMaxAbs()`, `MatGetRowMinAbs()`,
           `MatGetRowMax()`
 @*/
 PetscErrorCode MatGetRowMin(Mat mat, Vec v, PetscInt idx[])
@@ -4957,7 +4965,7 @@
 
    Output Parameters:
 +  v - the vector for storing the minimums
--  idx - the indices of the column found for each row (or NULL if not needed)
+-  idx - the indices of the column found for each row (or `NULL` if not needed)
 
    Level: intermediate
 
@@ -4967,7 +4975,7 @@
 
     This code is only implemented for a couple of matrix formats.
 
-.seealso: `MatGetDiagonal()`, `MatCreateSubMatrices()`, `MatCreateSubMatrix()`, `MatGetRowMax()`, `MatGetRowMaxAbs()`, `MatGetRowMin()`
+.seealso: `Mat`, `MatGetDiagonal()`, `MatCreateSubMatrices()`, `MatCreateSubMatrix()`, `MatGetRowMax()`, `MatGetRowMaxAbs()`, `MatGetRowMin()`
 @*/
 PetscErrorCode MatGetRowMinAbs(Mat mat, Vec v, PetscInt idx[])
 {
@@ -5014,7 +5022,7 @@
 
     This code is only implemented for a couple of matrix formats.
 
-.seealso: `MatGetDiagonal()`, `MatCreateSubMatrices()`, `MatCreateSubMatrix()`, `MatGetRowMaxAbs()`, `MatGetRowMin()`, `MatGetRowMinAbs()`
+.seealso: `Mat`, `MatGetDiagonal()`, `MatCreateSubMatrices()`, `MatCreateSubMatrix()`, `MatGetRowMaxAbs()`, `MatGetRowMin()`, `MatGetRowMinAbs()`
 @*/
 PetscErrorCode MatGetRowMax(Mat mat, Vec v, PetscInt idx[])
 {
@@ -5049,7 +5057,7 @@
 
    Output Parameters:
 +  v - the vector for storing the maximums
--  idx - the indices of the column found for each row (or NULL if not needed)
+-  idx - the indices of the column found for each row (or `NULL` if not needed)
 
    Level: intermediate
 
@@ -5059,7 +5067,7 @@
 
     This code is only implemented for a couple of matrix formats.
 
-.seealso: `MatGetDiagonal()`, `MatCreateSubMatrices()`, `MatCreateSubMatrix()`, `MatGetRowMax()`, `MatGetRowMin()`, `MatGetRowMinAbs()`
+.seealso: `Mat`, `MatGetDiagonal()`, `MatCreateSubMatrices()`, `MatCreateSubMatrix()`, `MatGetRowMax()`, `MatGetRowMin()`, `MatGetRowMinAbs()`
 @*/
 PetscErrorCode MatGetRowMaxAbs(Mat mat, Vec v, PetscInt idx[])
 {
@@ -5100,7 +5108,7 @@
    Notes:
     This code is slow since it is not currently specialized for different formats
 
-.seealso: `MatGetDiagonal()`, `MatCreateSubMatrices()`, `MatCreateSubMatrix()`, `MatGetRowMax()`, `MatGetRowMin()`, `MatGetRowMaxAbs()`, `MatGetRowMinAbs()`
+.seealso: `Mat`, `MatGetDiagonal()`, `MatCreateSubMatrices()`, `MatCreateSubMatrix()`, `MatGetRowMax()`, `MatGetRowMin()`, `MatGetRowMaxAbs()`, `MatGetRowMinAbs()`
 @*/
 PetscErrorCode MatGetRowSum(Mat mat, Vec v)
 {
@@ -5137,7 +5145,7 @@
    Normally he use of `MatTranspose`(A,`MAT_REUSE_MATRIX`,&B) requires that B was obtained with a call to `MatTranspose`(A,`MAT_INITIAL_MATRIX`,&B). This
    routine allows bypassing that call.
 
-.seealso: `MatTransposeSymbolic()`, `MatTranspose()`, `MatMultTranspose()`, `MatMultTransposeAdd()`, `MatIsTranspose()`, `MatReuse`, `MAT_INITIAL_MATRIX`, `MAT_REUSE_MATRIX`, `MAT_INPLACE_MATRIX`
+.seealso: `Mat`, `MatTransposeSymbolic()`, `MatTranspose()`, `MatMultTranspose()`, `MatMultTransposeAdd()`, `MatIsTranspose()`, `MatReuse`, `MAT_INITIAL_MATRIX`, `MAT_REUSE_MATRIX`, `MAT_INPLACE_MATRIX`
 @*/
 PetscErrorCode MatTransposeSetPrecursor(Mat mat, Mat B)
 {
@@ -5169,6 +5177,8 @@
    Output Parameter:
 .  B - the transpose
 
+   Level: intermediate
+
    Notes:
      If you use `MAT_INPLACE_MATRIX` then you must pass in &mat for B
 
@@ -5183,9 +5193,7 @@
 
      If you only need the symbolic transpose, and not the numerical values, use `MatTransposeSymbolic()`
 
-   Level: intermediate
-
-.seealso: `MatTransposeSetPrecursor()`, `MatMultTranspose()`, `MatMultTransposeAdd()`, `MatIsTranspose()`, `MatReuse`, `MAT_INITIAL_MATRIX`, `MAT_REUSE_MATRIX`, `MAT_INPLACE_MATRIX`,
+.seealso: `Mat`, `MatTransposeSetPrecursor()`, `MatMultTranspose()`, `MatMultTransposeAdd()`, `MatIsTranspose()`, `MatReuse`, `MAT_INITIAL_MATRIX`, `MAT_REUSE_MATRIX`, `MAT_INPLACE_MATRIX`,
           `MatTransposeSymbolic()`
 @*/
 PetscErrorCode MatTranspose(Mat mat, MatReuse reuse, Mat *B)
@@ -5229,7 +5237,7 @@
 /*@
    MatTransposeSymbolic - Computes the symbolic part of the transpose of a matrix.
 
-   Collective on A
+   Collective
 
    Input Parameters:
 .  A - the matrix to transpose
@@ -5243,7 +5251,7 @@
    Note:
    This is not supported for many matrix types, use `MatTranspose()` in those cases
 
-.seealso: `MatTransposeSetPrecursor()`, `MatTranspose()`, `MatMultTranspose()`, `MatMultTransposeAdd()`, `MatIsTranspose()`, `MatReuse`, `MAT_INITIAL_MATRIX`, `MAT_REUSE_MATRIX`, `MAT_INPLACE_MATRIX`
+.seealso: `Mat`, `MatTransposeSetPrecursor()`, `MatTranspose()`, `MatMultTranspose()`, `MatMultTransposeAdd()`, `MatIsTranspose()`, `MatReuse`, `MAT_INITIAL_MATRIX`, `MAT_REUSE_MATRIX`, `MAT_INPLACE_MATRIX`
 @*/
 PetscErrorCode MatTransposeSymbolic(Mat A, Mat *B)
 {
@@ -5283,7 +5291,7 @@
    MatIsTranspose - Test whether a matrix is another one's transpose,
         or its own, in which case it tests symmetry.
 
-   Collective on A
+   Collective
 
    Input Parameters:
 +  A - the matrix to test
@@ -5292,15 +5300,15 @@
    Output Parameters:
 .  flg - the result
 
+   Level: intermediate
+
    Notes:
    Only available for `MATAIJ` matrices.
 
    The sequential algorithm has a running time of the order of the number of nonzeros; the parallel
    test involves parallel copies of the block-offdiagonal parts of the matrix.
 
-   Level: intermediate
-
-.seealso: `MatTranspose()`, `MatIsSymmetric()`, `MatIsHermitian()`
+.seealso: `Mat`, `MatTranspose()`, `MatIsSymmetric()`, `MatIsHermitian()`
 @*/
 PetscErrorCode MatIsTranspose(Mat A, Mat B, PetscReal tol, PetscBool *flg)
 {
@@ -5339,7 +5347,7 @@
 
    Level: intermediate
 
-.seealso: `MatTranspose()`, `MatMultTranspose()`, `MatMultTransposeAdd()`, `MatIsTranspose()`, `MatReuse`
+.seealso: `Mat`, `MatTranspose()`, `MatMultTranspose()`, `MatMultTransposeAdd()`, `MatIsTranspose()`, `MatReuse`
 @*/
 PetscErrorCode MatHermitianTranspose(Mat mat, MatReuse reuse, Mat *B)
 {
@@ -5354,7 +5362,7 @@
 /*@
    MatIsHermitianTranspose - Test whether a matrix is another one's Hermitian transpose,
 
-   Collective on A
+   Collective
 
    Input Parameters:
 +  A - the matrix to test
@@ -5363,6 +5371,8 @@
    Output Parameters:
 .  flg - the result
 
+   Level: intermediate
+
    Notes:
    Only available for `MATAIJ` matrices.
 
@@ -5370,9 +5380,7 @@
    has a running time of the order of the number of nonzeros; the parallel
    test involves parallel copies of the block-offdiagonal parts of the matrix.
 
-   Level: intermediate
-
-.seealso: `MatTranspose()`, `MatIsSymmetric()`, `MatIsHermitian()`, `MatIsTranspose()`
+.seealso: `Mat`, `MatTranspose()`, `MatIsSymmetric()`, `MatIsHermitian()`, `MatIsTranspose()`
 @*/
 PetscErrorCode MatIsHermitianTranspose(Mat A, Mat B, PetscReal tol, PetscBool *flg)
 {
@@ -5416,7 +5424,7 @@
      exploit the fact that row and col are permutations, consider implementing the
      more general `MatCreateSubMatrix()` instead.
 
-.seealso: `MatGetOrdering()`, `ISAllGather()`, `MatCreateSubMatrix()`
+.seealso: `Mat`, `MatGetOrdering()`, `ISAllGather()`, `MatCreateSubMatrix()`
 @*/
 PetscErrorCode MatPermute(Mat mat, IS row, IS col, Mat *B)
 {
@@ -5445,7 +5453,7 @@
 /*@
    MatEqual - Compares two matrices.
 
-   Collective on A
+   Collective
 
    Input Parameters:
 +  A - the first matrix
@@ -5484,22 +5492,22 @@
 /*@
    MatDiagonalScale - Scales a matrix on the left and right by diagonal
    matrices that are stored as vectors.  Either of the two scaling
-   matrices can be NULL.
+   matrices can be `NULL`.
 
    Collective
 
    Input Parameters:
 +  mat - the matrix to be scaled
-.  l - the left scaling vector (or NULL)
--  r - the right scaling vector (or NULL)
+.  l - the left scaling vector (or `NULL`)
+-  r - the right scaling vector (or `NULL`)
+
+   Level: intermediate
 
    Note:
    `MatDiagonalScale()` computes A = LAR, where
    L = a diagonal matrix (stored as a vector), R = a diagonal matrix (stored as a vector)
    The L scales the rows of the matrix, the R scales the columns of the matrix.
 
-   Level: intermediate
-
 .seealso: `Mat`, `MatScale()`, `MatShift()`, `MatDiagonalSet()`
 @*/
 PetscErrorCode MatDiagonalScale(Mat mat, Vec l, Vec r)
@@ -5610,6 +5618,8 @@
 +  mat - the matrix
 -  type - type of assembly, either `MAT_FLUSH_ASSEMBLY` or `MAT_FINAL_ASSEMBLY`
 
+   Level: beginner
+
    Notes:
    `MatSetValues()` generally caches the values that belong to other MPI ranks.  The matrix is ready to
    use only after `MatAssemblyBegin()` and `MatAssemblyEnd()` have been called.
@@ -5626,8 +5636,6 @@
    out by assembly. If you intend to use that extra space on a subsequent assembly, be sure to insert explicit zeros
    before `MAT_FINAL_ASSEMBLY` so the space is not compressed out.
 
-   Level: beginner
-
 .seealso: `Mat`, `MatAssemblyEnd()`, `MatSetValues()`, `MatAssembled()`
 @*/
 PetscErrorCode MatAssemblyBegin(Mat mat, MatAssemblyType type)
@@ -5802,6 +5810,8 @@
         of the off-process entries required for all subsequent assemblies. This avoids a rendezvous step in the MatAssembly
         functions, instead sending only neighbor messages.
 
+   Level: intermediate
+
    Notes:
    Except for `MAT_UNUSED_NONZERO_LOCATION_ERR` and  `MAT_ROW_ORIENTED` all processes that share the matrix must pass the same value in flg!
 
@@ -5815,7 +5825,7 @@
 
    `MAT_NEW_NONZERO_LOCATIONS` set to `PETSC_FALSE` indicates that any add or insertion
    that would generate a new entry in the nonzero structure is instead
-   ignored.  Thus, if memory has not alredy been allocated for this particular
+   ignored.  Thus, if memory has not already been allocated for this particular
    data, then the insertion is ignored. For dense matrices, in which
    the entire array is allocated, no entries are ever ignored.
    Set after the first `MatAssemblyEnd()`. If this option is set then the MatAssemblyBegin/End() processes has one less global reduction
@@ -5839,10 +5849,10 @@
    `MAT_USE_HASH_TABLE` indicates that a hash table be used to improve the
    searches during matrix assembly. When this flag is set, the hash table
    is created during the first matrix assembly. This hash table is
-   used the next time through, during `MatSetVaules()`/`MatSetVaulesBlocked()`
+   used the next time through, during `MatSetValues()`/`MatSetValuesBlocked()`
    to improve the searching of indices. `MAT_NEW_NONZERO_LOCATIONS` flag
    should be used with `MAT_USE_HASH_TABLE` flag. This option is currently
-   supported by` MATMPIBAIJ` format only.
+   supported by `MATMPIBAIJ` format only.
 
    `MAT_KEEP_NONZERO_PATTERN` indicates when `MatZeroRows()` is called the zeroed entries
    are kept in the nonzero structure
@@ -5868,8 +5878,6 @@
    to `PETSC_BOOL3_UNKNOWN` because the matrix values had changed so the code cannot be certain that the related property had
    not changed.
 
-   Level: intermediate
-
 .seealso: `MatOption`, `Mat`, `MatGetOption()`
 @*/
 PetscErrorCode MatSetOption(Mat mat, MatOption op, PetscBool flg)
@@ -5970,15 +5978,15 @@
    Output Parameter:
 .  flg - turn the option on (`PETSC_TRUE`) or off (`PETSC_FALSE`)
 
+   Level: intermediate
+
     Notes:
     Can only be called after `MatSetSizes()` and `MatSetType()` have been set.
 
     Certain option values may be unknown, for those use the routines `MatIsSymmetric()`, `MatIsHermitian()`, `MatIsStructurallySymmetric()`, or
     `MatIsSymmetricKnown()`, `MatIsHermitianKnown()`, `MatIsStructurallySymmetricKnown()`
 
-   Level: intermediate
-
-.seealso: `MatOption`, `MatSetOption()`, `MatIsSymmetric()`, `MatIsHermitian()`, `MatIsStructurallySymmetric()`,
+.seealso: `Mat`, `MatOption`, `MatSetOption()`, `MatIsSymmetric()`, `MatIsHermitian()`, `MatIsStructurallySymmetric()`,
     `MatIsSymmetricKnown()`, `MatIsHermitianKnown()`, `MatIsStructurallySymmetricKnown()`
 @*/
 PetscErrorCode MatGetOption(Mat mat, MatOption op, PetscBool *flg)
@@ -6062,17 +6070,19 @@
 
    Input Parameters:
 +  mat - the matrix
-.  numRows - the number of rows to remove
+.  numRows - the number of rows/columns to zero
 .  rows - the global row indices
 .  diag - value put in the diagonal of the eliminated rows
-.  x - optional vector of solutions for zeroed rows (other entries in vector are not used), these must be set before this call
--  b - optional vector of right hand side, that will be adjusted by provided solution
+.  x - optional vector of the solution for zeroed rows (other entries in vector are not used), these must be set before this call
+-  b - optional vector of the right hand side, that will be adjusted by provided solution entries
+
+   Level: intermediate
 
    Notes:
    This routine, along with `MatZeroRows()`, is typically used to eliminate known Dirichlet boundary conditions from a linear system.
 
-   For each zeroed row, the value of the corresponding b is set to diag times the value of the corresponding x.
-   The other entries of b will be adjusted by the known values of x times the corresponding matrix entries in the columns that are being eliminated
+   For each zeroed row, the value of the corresponding `b` is set to diag times the value of the corresponding `x`.
+   The other entries of `b` will be adjusted by the known values of `x` times the corresponding matrix entries in the columns that are being eliminated
 
    If the resulting linear system is to be solved with `KSP` then one can (but does not have to) call `KSPSetInitialGuessNonzero()` to allow the
    Krylov method to take advantage of the known solution on the zeroed rows.
@@ -6089,9 +6099,7 @@
 
    The option `MAT_NO_OFF_PROC_ZERO_ROWS` does not apply to this routine.
 
-   Level: intermediate
-
-.seealso: `MatZeroRowsIS()`, `MatZeroRows()`, `MatZeroRowsLocalIS()`, `MatZeroRowsStencil()`, `MatZeroEntries()`, `MatZeroRowsLocal()`, `MatSetOption()`,
+.seealso: `Mat`, `MatZeroRowsIS()`, `MatZeroRows()`, `MatZeroRowsLocalIS()`, `MatZeroRowsStencil()`, `MatZeroEntries()`, `MatZeroRowsLocal()`, `MatSetOption()`,
           `MatZeroRowsColumnsLocal()`, `MatZeroRowsColumnsLocalIS()`, `MatZeroRowsColumnsIS()`, `MatZeroRowsColumnsStencil()`
 @*/
 PetscErrorCode MatZeroRowsColumns(Mat mat, PetscInt numRows, const PetscInt rows[], PetscScalar diag, Vec x, Vec b)
@@ -6123,12 +6131,12 @@
 .  x - optional vector of solutions for zeroed rows (other entries in vector are not used)
 -  b - optional vector of right hand side, that will be adjusted by provided solution
 
+   Level: intermediate
+
    Note:
    See `MatZeroRowsColumns()` for details on how this routine operates.
 
-   Level: intermediate
-
-.seealso: `MatZeroRowsIS()`, `MatZeroRowsColumns()`, `MatZeroRowsLocalIS()`, `MatZeroRowsStencil()`, `MatZeroEntries()`, `MatZeroRowsLocal()`, `MatSetOption()`,
+.seealso: `Mat`, `MatZeroRowsIS()`, `MatZeroRowsColumns()`, `MatZeroRowsLocalIS()`, `MatZeroRowsStencil()`, `MatZeroEntries()`, `MatZeroRowsLocal()`, `MatSetOption()`,
           `MatZeroRowsColumnsLocal()`, `MatZeroRowsColumnsLocalIS()`, `MatZeroRows()`, `MatZeroRowsColumnsStencil()`
 @*/
 PetscErrorCode MatZeroRowsColumnsIS(Mat mat, IS is, PetscScalar diag, Vec x, Vec b)
@@ -6156,21 +6164,23 @@
 
    Input Parameters:
 +  mat - the matrix
-.  numRows - the number of rows to remove
+.  numRows - the number of rows to zero
 .  rows - the global row indices
-.  diag - value put in the diagonal of the eliminated rows
+.  diag - value put in the diagonal of the zeroed rows
 .  x - optional vector of solutions for zeroed rows (other entries in vector are not used), these must be set before this call
--  b - optional vector of right hand side, that will be adjusted by provided solution
+-  b - optional vector of right hand side, that will be adjusted by provided solution entries
+
+   Level: intermediate
 
    Notes:
    This routine, along with `MatZeroRowsColumns()`, is typically used to eliminate known Dirichlet boundary conditions from a linear system.
 
-   For each zeroed row, the value of the corresponding b is set to diag times the value of the corresponding x.
+   For each zeroed row, the value of the corresponding `b` is set to `diag` times the value of the corresponding `x`.
 
    If the resulting linear system is to be solved with `KSP` then one can (but does not have to) call `KSPSetInitialGuessNonzero()` to allow the
    Krylov method to take advantage of the known solution on the zeroed rows.
 
-   May be followed by using a `PC` of type `PCREDISTRIBUTE` to solve the reducing problem (after completely eliminating the zeroed rows and their corresponding columns)
+   May be followed by using a `PC` of type `PCREDISTRIBUTE` to solve the reduced problem (`PCDISTRIBUTE` completely eliminates the zeroed rows and their corresponding columns)
    from the matrix.
 
    Unlike `MatZeroRowsColumns()` for the `MATAIJ` and `MATBAIJ` matrix formats this removes the old nonzero structure, from the eliminated rows of the matrix
@@ -6196,8 +6206,6 @@
    You can call `MatSetOption`(mat,`MAT_NO_OFF_PROC_ZERO_ROWS`,`PETSC_TRUE`) if each process indicates only rows it
    owns that are to be zeroed. This saves a global synchronization in the implementation.
 
-   Level: intermediate
-
 .seealso: `Mat`, `MatZeroRowsIS()`, `MatZeroRowsColumns()`, `MatZeroRowsLocalIS()`, `MatZeroRowsStencil()`, `MatZeroEntries()`, `MatZeroRowsLocal()`, `MatSetOption()`,
           `MatZeroRowsColumnsLocal()`, `MatZeroRowsColumnsLocalIS()`, `MatZeroRowsColumnsIS()`, `MatZeroRowsColumnsStencil()`, `PCREDISTRIBUTE`
 @*/
@@ -6225,17 +6233,17 @@
 
    Input Parameters:
 +  mat - the matrix
-.  is - index set of rows to remove (if NULL then no row is removed)
+.  is - index set of rows to remove (if `NULL` then no row is removed)
 .  diag - value put in all diagonals of eliminated rows
 .  x - optional vector of solutions for zeroed rows (other entries in vector are not used)
 -  b - optional vector of right hand side, that will be adjusted by provided solution
 
+   Level: intermediate
+
    Note:
    See `MatZeroRows()` for details on how this routine operates.
 
-   Level: intermediate
-
-.seealso: `MatZeroRows()`, `MatZeroRowsColumns()`, `MatZeroRowsLocalIS()`, `MatZeroRowsStencil()`, `MatZeroEntries()`, `MatZeroRowsLocal()`, `MatSetOption()`,
+.seealso: `Mat`, `MatZeroRows()`, `MatZeroRowsColumns()`, `MatZeroRowsLocalIS()`, `MatZeroRowsStencil()`, `MatZeroEntries()`, `MatZeroRowsLocal()`, `MatSetOption()`,
           `MatZeroRowsColumnsLocal()`, `MatZeroRowsColumnsLocalIS()`, `MatZeroRowsColumnsIS()`, `MatZeroRowsColumnsStencil()`
 @*/
 PetscErrorCode MatZeroRowsIS(Mat mat, IS is, PetscScalar diag, Vec x, Vec b)
@@ -6297,7 +6305,7 @@
    etc
 .ve
 
-.seealso: `MatZeroRowsIS()`, `MatZeroRowsColumns()`, `MatZeroRowsLocalIS()`, `MatZeroRowsl()`, `MatZeroEntries()`, `MatZeroRowsLocal()`, `MatSetOption()`,
+.seealso: `Mat`, `MatZeroRowsIS()`, `MatZeroRowsColumns()`, `MatZeroRowsLocalIS()`, `MatZeroRowsl()`, `MatZeroEntries()`, `MatZeroRowsLocal()`, `MatSetOption()`,
           `MatZeroRowsColumnsLocal()`, `MatZeroRowsColumnsLocalIS()`, `MatZeroRowsColumnsIS()`, `MatZeroRowsColumnsStencil()`
 @*/
 PetscErrorCode MatZeroRowsStencil(Mat mat, PetscInt numRows, const MatStencil rows[], PetscScalar diag, Vec x, Vec b)
@@ -6378,7 +6386,7 @@
     etc
 .ve
 
-.seealso: `MatZeroRowsIS()`, `MatZeroRowsColumns()`, `MatZeroRowsLocalIS()`, `MatZeroRowsStencil()`, `MatZeroEntries()`, `MatZeroRowsLocal()`, `MatSetOption()`,
+.seealso: `Mat`, `MatZeroRowsIS()`, `MatZeroRowsColumns()`, `MatZeroRowsLocalIS()`, `MatZeroRowsStencil()`, `MatZeroEntries()`, `MatZeroRowsLocal()`, `MatSetOption()`,
           `MatZeroRowsColumnsLocal()`, `MatZeroRowsColumnsLocalIS()`, `MatZeroRowsColumnsIS()`, `MatZeroRows()`
 @*/
 PetscErrorCode MatZeroRowsColumnsStencil(Mat mat, PetscInt numRows, const MatStencil rows[], PetscScalar diag, Vec x, Vec b)
@@ -6432,15 +6440,15 @@
 .  x - optional vector of solutions for zeroed rows (other entries in vector are not used)
 -  b - optional vector of right hand side, that will be adjusted by provided solution
 
+   Level: intermediate
+
    Notes:
    Before calling `MatZeroRowsLocal()`, the user must first set the
    local-to-global mapping by calling MatSetLocalToGlobalMapping(), this is often already set for matrices obtained with `DMCreateMatrix()`.
 
    See `MatZeroRows()` for details on how this routine operates.
 
-   Level: intermediate
-
-.seealso: `MatZeroRowsIS()`, `MatZeroRowsColumns()`, `MatZeroRowsLocalIS()`, `MatZeroRowsStencil()`, `MatZeroEntries()`, `MatZeroRows()`, `MatSetOption()`,
+.seealso: `Mat`, `MatZeroRowsIS()`, `MatZeroRowsColumns()`, `MatZeroRowsLocalIS()`, `MatZeroRowsStencil()`, `MatZeroEntries()`, `MatZeroRows()`, `MatSetOption()`,
           `MatZeroRowsColumnsLocal()`, `MatZeroRowsColumnsLocalIS()`, `MatZeroRowsColumnsIS()`, `MatZeroRowsColumnsStencil()`
 @*/
 PetscErrorCode MatZeroRowsLocal(Mat mat, PetscInt numRows, const PetscInt rows[], PetscScalar diag, Vec x, Vec b)
@@ -6485,15 +6493,15 @@
 .  x - optional vector of solutions for zeroed rows (other entries in vector are not used)
 -  b - optional vector of right hand side, that will be adjusted by provided solution
 
+   Level: intermediate
+
    Notes:
    Before calling `MatZeroRowsLocalIS()`, the user must first set the
    local-to-global mapping by calling `MatSetLocalToGlobalMapping()`, this is often already set for matrices obtained with `DMCreateMatrix()`.
 
    See `MatZeroRows()` for details on how this routine operates.
 
-   Level: intermediate
-
-.seealso: `MatZeroRowsIS()`, `MatZeroRowsColumns()`, `MatZeroRows()`, `MatZeroRowsStencil()`, `MatZeroEntries()`, `MatZeroRowsLocal()`, `MatSetOption()`,
+.seealso: `Mat`, `MatZeroRowsIS()`, `MatZeroRowsColumns()`, `MatZeroRows()`, `MatZeroRowsStencil()`, `MatZeroEntries()`, `MatZeroRowsLocal()`, `MatSetOption()`,
           `MatZeroRowsColumnsLocal()`, `MatZeroRowsColumnsLocalIS()`, `MatZeroRowsColumnsIS()`, `MatZeroRowsColumnsStencil()`
 @*/
 PetscErrorCode MatZeroRowsLocalIS(Mat mat, IS is, PetscScalar diag, Vec x, Vec b)
@@ -6530,15 +6538,15 @@
 .  x - optional vector of solutions for zeroed rows (other entries in vector are not used)
 -  b - optional vector of right hand side, that will be adjusted by provided solution
 
+   Level: intermediate
+
    Notes:
    Before calling `MatZeroRowsColumnsLocal()`, the user must first set the
    local-to-global mapping by calling `MatSetLocalToGlobalMapping()`, this is often already set for matrices obtained with `DMCreateMatrix()`.
 
    See `MatZeroRowsColumns()` for details on how this routine operates.
 
-   Level: intermediate
-
-.seealso: `MatZeroRowsIS()`, `MatZeroRowsColumns()`, `MatZeroRowsLocalIS()`, `MatZeroRowsStencil()`, `MatZeroEntries()`, `MatZeroRowsLocal()`, `MatSetOption()`,
+.seealso: `Mat`, `MatZeroRowsIS()`, `MatZeroRowsColumns()`, `MatZeroRowsLocalIS()`, `MatZeroRowsStencil()`, `MatZeroEntries()`, `MatZeroRowsLocal()`, `MatSetOption()`,
           `MatZeroRows()`, `MatZeroRowsColumnsLocalIS()`, `MatZeroRowsColumnsIS()`, `MatZeroRowsColumnsStencil()`
 @*/
 PetscErrorCode MatZeroRowsColumnsLocal(Mat mat, PetscInt numRows, const PetscInt rows[], PetscScalar diag, Vec x, Vec b)
@@ -6579,15 +6587,15 @@
 .  x - optional vector of solutions for zeroed rows (other entries in vector are not used)
 -  b - optional vector of right hand side, that will be adjusted by provided solution
 
+   Level: intermediate
+
    Notes:
    Before calling `MatZeroRowsColumnsLocalIS()`, the user must first set the
    local-to-global mapping by calling `MatSetLocalToGlobalMapping()`, this is often already set for matrices obtained with `DMCreateMatrix()`.
 
    See `MatZeroRowsColumns()` for details on how this routine operates.
 
-   Level: intermediate
-
-.seealso: `MatZeroRowsIS()`, `MatZeroRowsColumns()`, `MatZeroRowsLocalIS()`, `MatZeroRowsStencil()`, `MatZeroEntries()`, `MatZeroRowsLocal()`, `MatSetOption()`,
+.seealso: `Mat`, `MatZeroRowsIS()`, `MatZeroRowsColumns()`, `MatZeroRowsLocalIS()`, `MatZeroRowsStencil()`, `MatZeroEntries()`, `MatZeroRowsLocal()`, `MatSetOption()`,
           `MatZeroRowsColumnsLocal()`, `MatZeroRows()`, `MatZeroRowsColumnsIS()`, `MatZeroRowsColumnsStencil()`
 @*/
 PetscErrorCode MatZeroRowsColumnsLocalIS(Mat mat, IS is, PetscScalar diag, Vec x, Vec b)
@@ -6618,13 +6626,14 @@
    Input Parameter:
 .  mat - the matrix
 
+   Level: beginner
+
    Output Parameters:
 +  m - the number of global rows
 -  n - the number of global columns
 
-   Note: both output parameters can be NULL on input.
-
-   Level: beginner
+   Note:
+   Both output parameters can be `NULL` on input.
 
 .seealso: `Mat`, `MatSetSizes()`, `MatGetLocalSize()`
 @*/
@@ -6709,14 +6718,14 @@
 +  m - the global index of the first local row, use `NULL` to not obtain this value
 -  n - one more than the global index of the last local row, use `NULL` to not obtain this value
 
+   Level: beginner
+
    Note:
   This function requires that the matrix be preallocated. If you have not preallocated, consider using
   `PetscSplitOwnership`(`MPI_Comm` comm, `PetscInt` *n, `PetscInt` *N)
   and then `MPI_Scan()` to calculate prefix sums of the local sizes.
 
-   Level: beginner
-
-.seealso: `MatGetOwnershipRanges()`, `MatGetOwnershipRangeColumn()`, `MatGetOwnershipRangesColumn()`, `PetscSplitOwnership()`, `PetscSplitOwnershipBlock()`,
+.seealso: `Mat`, `MatGetOwnershipRanges()`, `MatGetOwnershipRangeColumn()`, `MatGetOwnershipRangesColumn()`, `PetscSplitOwnership()`, `PetscSplitOwnershipBlock()`,
           `PetscLayout`
 @*/
 PetscErrorCode MatGetOwnershipRange(Mat mat, PetscInt *m, PetscInt *n)
@@ -6801,7 +6810,7 @@
 
    Level: intermediate
 
-.seealso: `MatGetOwnershipRange()`, `MatGetOwnershipRangeColumn()`, `MatSetValues()`, ``MATELEMENTAL``, ``MATSCALAPACK``
+.seealso: `Mat`, `MatGetOwnershipRange()`, `MatGetOwnershipRangeColumn()`, `MatSetValues()`, ``MATELEMENTAL``, ``MATSCALAPACK``
 @*/
 PetscErrorCode MatGetOwnershipIS(Mat A, IS *rows, IS *cols)
 {
@@ -6832,10 +6841,12 @@
 .  row - row permutation
 .  column - column permutation
 -  info - structure containing
-$      levels - number of levels of fill.
-$      expected fill - as ratio of original fill.
-$      1 or 0 - indicating force fill on diagonal (improves robustness for matrices
+.vb
+      levels - number of levels of fill.
+      expected fill - as ratio of original fill.
+      1 or 0 - indicating force fill on diagonal (improves robustness for matrices
                 missing diagonal entries)
+.ve
 
    Output Parameters:
 .  fact - new matrix that has been symbolically factored
@@ -6858,7 +6869,7 @@
    References:
 .  * - Y. Saad, Iterative methods for sparse linear systems Philadelphia: Society for Industrial and Applied Mathematics, 2003
 
-.seealso: [Matrix Factorization](sec_matfactor), `MatGetFactor()`, `MatLUFactorSymbolic()`, `MatLUFactorNumeric()`, `MatCholeskyFactor()`
+.seealso: `Mat`, [Matrix Factorization](sec_matfactor), `MatGetFactor()`, `MatLUFactorSymbolic()`, `MatLUFactorNumeric()`, `MatCholeskyFactor()`
           `MatGetOrdering()`, `MatFactorInfo`
 @*/
 PetscErrorCode MatILUFactorSymbolic(Mat fact, Mat mat, IS row, IS col, const MatFactorInfo *info)
@@ -6899,8 +6910,10 @@
 .  mat - the matrix to be factored
 .  perm - row and column permutation
 -  info - structure containing
-$      levels - number of levels of fill.
-$      expected fill - as ratio of original fill.
+.vb
+      levels - number of levels of fill.
+      expected fill - as ratio of original fill.
+.ve
 
    Output Parameter:
 .  fact - the factored matrix
@@ -6921,7 +6934,7 @@
    References:
 .  * - Y. Saad, Iterative methods for sparse linear systems Philadelphia: Society for Industrial and Applied Mathematics, 2003
 
-.seealso: `MatGetFactor()`, `MatCholeskyFactorNumeric()`, `MatCholeskyFactor()`, `MatFactorInfo`
+.seealso: `Mat`, `MatGetFactor()`, `MatCholeskyFactorNumeric()`, `MatCholeskyFactor()`, `MatFactorInfo`
 @*/
 PetscErrorCode MatICCFactorSymbolic(Mat fact, Mat mat, IS perm, const MatFactorInfo *info)
 {
@@ -6964,6 +6977,8 @@
    Output Parameter:
 .  submat - the array of submatrices
 
+   Level: advanced
+
    Notes:
    `MatCreateSubMatrices()` can extract ONLY sequential submatrices
    (from both sequential and parallel matrices). Use `MatCreateSubMatrix()`
@@ -6996,8 +7011,6 @@
    The Fortran interface is slightly different from that given below; it
    requires one to pass in  as submat a `Mat` (integer) array of size at least n+1.
 
-   Level: advanced
-
 .seealso: `Mat`, `MatDestroySubMatrices()`, `MatCreateSubMatrix()`, `MatGetRow()`, `MatGetDiagonal()`, `MatReuse`
 @*/
 PetscErrorCode MatCreateSubMatrices(Mat mat, PetscInt n, const IS irow[], const IS icol[], MatReuse scall, Mat *submat[])
@@ -7058,7 +7071,7 @@
    Note:
    This is used by `PCGASM`
 
-.seealso: `PCGASM`, `MatCreateSubMatrices()`, `MatCreateSubMatrix()`, `MatGetRow()`, `MatGetDiagonal()`, `MatReuse`
+.seealso: `Mat`, `PCGASM`, `MatCreateSubMatrices()`, `MatCreateSubMatrix()`, `MatGetRow()`, `MatGetDiagonal()`, `MatReuse`
 @*/
 PetscErrorCode MatCreateSubMatricesMPI(Mat mat, PetscInt n, const IS irow[], const IS icol[], MatReuse scall, Mat *submat[])
 {
@@ -7106,7 +7119,9 @@
 
     Note:
     Frees not only the matrices, but also the array that contains the matrices
-           In Fortran will not free the array.
+
+    Fortran Note:
+    Will not free the array.
 
 .seealso: `Mat`, `MatCreateSubMatrices()` `MatDestroySubMatrices()`
 @*/
@@ -7140,9 +7155,11 @@
 
     Note:
     Frees not only the matrices, but also the array that contains the matrices
-           In Fortran will not free the array.
 
-.seealso: `MatCreateSubMatrices()`, `MatDestroyMatrices()`
+    Fortran Note:
+    Will not free the array.
+
+.seealso: `Mat`, `MatCreateSubMatrices()`, `MatDestroyMatrices()`
 @*/
 PetscErrorCode MatDestroySubMatrices(PetscInt n, Mat *mat[])
 {
@@ -7291,7 +7308,7 @@
 
    Level: developer
 
-.seealso: `MatCreateSubMatrices()`, `MatIncreaseOverlap()`
+.seealso: `Mat`, `MatCreateSubMatrices()`, `MatIncreaseOverlap()`
 @*/
 PetscErrorCode MatIncreaseOverlapSplit(Mat mat, PetscInt n, IS is[], PetscInt ov)
 {
@@ -7326,14 +7343,14 @@
    Output Parameter:
 .  bs - block size
 
+   Level: intermediate
+
    Notes:
     Block row formats are `MATBAIJ` and `MATSBAIJ` ALWAYS have square block storage in the matrix.
 
    If the block size has not been set yet this routine returns 1.
 
-   Level: intermediate
-
-.seealso: `MATBAIJ`, `MATSBAIJ`, `MatCreateSeqBAIJ()`, `MatCreateBAIJ()`, `MatGetBlockSizes()`
+.seealso: `Mat`, `MATBAIJ`, `MATSBAIJ`, `MatCreateSeqBAIJ()`, `MatCreateBAIJ()`, `MatGetBlockSizes()`
 @*/
 PetscErrorCode MatGetBlockSize(Mat mat, PetscInt *bs)
 {
@@ -7356,15 +7373,15 @@
 +  rbs - row block size
 -  cbs - column block size
 
+   Level: intermediate
+
    Notes:
     Block row formats are `MATBAIJ` and `MATSBAIJ` ALWAYS have square block storage in the matrix.
     If you pass a different block size for the columns than the rows, the row block size determines the square block storage.
 
    If a block size has not been set yet this routine returns 1.
 
-   Level: intermediate
-
-.seealso: `MATBAIJ`, `MATSBAIJ`, `MatCreateSeqBAIJ()`, `MatCreateBAIJ()`, `MatGetBlockSize()`, `MatSetBlockSize()`, `MatSetBlockSizes()`
+.seealso: `Mat`, `MATBAIJ`, `MATSBAIJ`, `MatCreateSeqBAIJ()`, `MatCreateBAIJ()`, `MatGetBlockSize()`, `MatSetBlockSize()`, `MatSetBlockSizes()`
 @*/
 PetscErrorCode MatGetBlockSizes(Mat mat, PetscInt *rbs, PetscInt *cbs)
 {
@@ -7386,6 +7403,8 @@
 +  mat - the matrix
 -  bs - block size
 
+   Level: intermediate
+
    Notes:
     Block row formats are `MATBAIJ` and `MATSBAIJ` formats ALWAYS have square block storage in the matrix.
     This must be called before `MatSetUp()` or MatXXXSetPreallocation() (or will default to 1) and the block size cannot be changed later.
@@ -7393,9 +7412,7 @@
     For `MATAIJ` matrix format, this function can be called at a later stage, provided that the specified block size
     is compatible with the matrix local sizes.
 
-   Level: intermediate
-
-.seealso:  `MATBAIJ`, `MATSBAIJ`, `MATAIJ`, `MatCreateSeqBAIJ()`, `MatCreateBAIJ()`, `MatGetBlockSize()`, `MatSetBlockSizes()`, `MatGetBlockSizes()`
+.seealso: `Mat`,  `MATBAIJ`, `MATSBAIJ`, `MATAIJ`, `MatCreateSeqBAIJ()`, `MatCreateBAIJ()`, `MatGetBlockSize()`, `MatSetBlockSizes()`, `MatGetBlockSizes()`
 @*/
 PetscErrorCode MatSetBlockSize(Mat mat, PetscInt bs)
 {
@@ -7582,7 +7599,7 @@
 /*@
   MatInvertVariableBlockEnvelope - set matrix C to be the inverted block diagonal of matrix A
 
-  Collective on A
+  Collective
 
   Input Parameters:
 . A - the matrix
@@ -7590,12 +7607,12 @@
   Output Parameters:
 . C - matrix with inverted block diagonal of A.  This matrix should be created and may have its type set.
 
+  Level: advanced
+
   Note:
      For efficiency the matrix A should have all the nonzero entries clustered in smallish blocks along the diagonal.
 
-  Level: advanced
-
-.seealso: `MatInvertBlockDiagonal()`, `MatComputeBlockDiagonal()`
+.seealso: `Mat`, `MatInvertBlockDiagonal()`, `MatComputeBlockDiagonal()`
 @*/
 PetscErrorCode MatInvertVariableBlockEnvelope(Mat A, MatReuse reuse, Mat *C)
 {
@@ -7644,14 +7661,14 @@
 .  nblocks - the number of blocks on this process, each block can only exist on a single process
 -  bsizes - the block sizes
 
+   Level: intermediate
+
    Notes:
     Currently used by `PCVPBJACOBI` for `MATAIJ` matrices
 
     Each variable point-block set of degrees of freedom must live on a single MPI rank. That is a point block cannot straddle two MPI ranks.
 
-   Level: intermediate
-
-.seealso: `MatCreateSeqBAIJ()`, `MatCreateBAIJ()`, `MatGetBlockSize()`, `MatSetBlockSizes()`, `MatGetBlockSizes()`, `MatGetVariableBlockSizes()`,
+.seealso: `Mat`, `MatCreateSeqBAIJ()`, `MatCreateBAIJ()`, `MatGetBlockSize()`, `MatSetBlockSizes()`, `MatGetBlockSizes()`, `MatGetVariableBlockSizes()`,
           `MatComputeVariableBlockEnvelope()`, `PCVPBJACOBI`
 @*/
 PetscErrorCode MatSetVariableBlockSizes(Mat mat, PetscInt nblocks, PetscInt *bsizes)
@@ -7685,7 +7702,7 @@
 
    Level: intermediate
 
-.seealso: `MatCreateSeqBAIJ()`, `MatCreateBAIJ()`, `MatGetBlockSize()`, `MatSetBlockSizes()`, `MatGetBlockSizes()`, `MatSetVariableBlockSizes()`, `MatComputeVariableBlockEnvelope()`
+.seealso: `Mat`, `MatCreateSeqBAIJ()`, `MatCreateBAIJ()`, `MatGetBlockSize()`, `MatSetBlockSizes()`, `MatGetBlockSizes()`, `MatSetVariableBlockSizes()`, `MatComputeVariableBlockEnvelope()`
 @*/
 PetscErrorCode MatGetVariableBlockSizes(Mat mat, PetscInt *nblocks, const PetscInt **bsizes)
 {
@@ -7706,6 +7723,8 @@
 .  rbs - row block size
 -  cbs - column block size
 
+   Level: intermediate
+
    Notes:
     Block row formats are `MATBAIJ` and  `MATSBAIJ`. These formats ALWAYS have square block storage in the matrix.
     If you pass a different block size for the columns than the rows, the row block size determines the square block storage.
@@ -7716,9 +7735,7 @@
 
     The row and column block size determine the blocksize of the "row" and "column" vectors returned by `MatCreateVecs()`.
 
-   Level: intermediate
-
-.seealso: `MatCreateSeqBAIJ()`, `MatCreateBAIJ()`, `MatGetBlockSize()`, `MatSetBlockSize()`, `MatGetBlockSizes()`
+.seealso: `Mat`, `MatCreateSeqBAIJ()`, `MatCreateBAIJ()`, `MatGetBlockSize()`, `MatSetBlockSize()`, `MatGetBlockSizes()`
 @*/
 PetscErrorCode MatSetBlockSizes(Mat mat, PetscInt rbs, PetscInt cbs)
 {
@@ -7764,7 +7781,7 @@
 
    Level: developer
 
-.seealso: `MatCreateSeqBAIJ()`, `MatCreateBAIJ()`, `MatGetBlockSize()`, `MatSetBlockSizes()`
+.seealso: `Mat`, `MatCreateSeqBAIJ()`, `MatCreateBAIJ()`, `MatGetBlockSize()`, `MatSetBlockSizes()`
 @*/
 PetscErrorCode MatSetBlockSizesFromMats(Mat mat, Mat fromRow, Mat fromCol)
 {
@@ -7828,9 +7845,9 @@
                  always used.
 
     Output Parameters:
-+   n - number of local rows in the (possibly compressed) matrix, use NULL if not needed
-.   ia - the row pointers; that is ia[0] = 0, ia[row] = ia[row-1] + number of elements in that row of the matrix, use NULL if not needed
-.   ja - the column indices, use NULL if not needed
++   n - number of local rows in the (possibly compressed) matrix, use `NULL` if not needed
+.   ia - the row pointers; that is ia[0] = 0, ia[row] = ia[row-1] + number of elements in that row of the matrix, use `NULL` if not needed
+.   ja - the column indices, use `NULL` if not needed
 -   done - indicates if the routine actually worked and returned appropriate ia[] and ja[] arrays; callers
            are responsible for handling the case when done == `PETSC_FALSE` and ia and ja are not set
 
@@ -7900,7 +7917,7 @@
 
     Level: developer
 
-.seealso: `MatGetRowIJ()`, `MatRestoreColumnIJ()`
+.seealso: `Mat`, `MatGetRowIJ()`, `MatRestoreColumnIJ()`
 @*/
 PetscErrorCode MatGetColumnIJ(Mat mat, PetscInt shift, PetscBool symmetric, PetscBool inodecompressed, PetscInt *n, const PetscInt *ia[], const PetscInt *ja[], PetscBool *done)
 {
@@ -7939,14 +7956,14 @@
     Output Parameters:
 .   done - `PETSC_TRUE` or `PETSC_FALSE` indicated that the values have been returned
 
+    Level: developer
+
     Note:
-    This routine zeros out n, ia, and ja. This is to prevent accidental
-    us of the array after it has been restored. If you pass NULL, it will
+    This routine zeros out `n`, `ia`, and `ja`. This is to prevent accidental
+    us of the array after it has been restored. If you pass `NULL`, it will
     not zero the pointers.  Use of ia or ja after `MatRestoreRowIJ()` is invalid.
 
-    Level: developer
-
-.seealso: `MatGetRowIJ()`, `MatRestoreColumnIJ()`
+.seealso: `Mat`, `MatGetRowIJ()`, `MatRestoreColumnIJ()`
 @*/
 PetscErrorCode MatRestoreRowIJ(Mat mat, PetscInt shift, PetscBool symmetric, PetscBool inodecompressed, PetscInt *n, const PetscInt *ia[], const PetscInt *ja[], PetscBool *done)
 {
@@ -7990,7 +8007,7 @@
 
     Level: developer
 
-.seealso: `MatGetColumnIJ()`, `MatRestoreRowIJ()`
+.seealso: `Mat`, `MatGetColumnIJ()`, `MatRestoreRowIJ()`
 @*/
 PetscErrorCode MatRestoreColumnIJ(Mat mat, PetscInt shift, PetscBool symmetric, PetscBool inodecompressed, PetscInt *n, const PetscInt *ia[], const PetscInt *ja[], PetscBool *done)
 {
@@ -8029,7 +8046,7 @@
 
     Level: developer
 
-.seealso: `MatGetRowIJ()`, `MatGetColumnIJ()`
+.seealso: `Mat`, `MatGetRowIJ()`, `MatGetColumnIJ()`
 @*/
 PetscErrorCode MatColoringPatch(Mat mat, PetscInt ncolors, PetscInt n, ISColoringValue colorarray[], ISColoring *iscoloring)
 {
@@ -8056,6 +8073,8 @@
    Input Parameter:
 .  mat - the factored matrix to be reset
 
+   Level: developer
+
    Notes:
    This routine should be used only with factored matrices formed by in-place
    factorization via ILU(0) (or by in-place LU factorization for the `MATSEQDENSE`
@@ -8079,9 +8098,7 @@
    instead of working directly with matrix algebra routines such as this.
    See, e.g., `KSPCreate()`.
 
-   Level: developer
-
-.seealso: `PCFactorSetUseInPlace()`, `PCFactorGetUseInPlace()`
+.seealso: `Mat`, `PCFactorSetUseInPlace()`, `PCFactorGetUseInPlace()`
 @*/
 PetscErrorCode MatSetUnfactored(Mat mat)
 {
@@ -8121,8 +8138,7 @@
 
     Level: advanced
 
-.seealso: `MatDenseRestoreArrayF90()`, `MatDenseGetArray()`, `MatDenseRestoreArray()`, `MatSeqAIJGetArrayF90()`
-
+.seealso: `Mat`, `MatDenseRestoreArrayF90()`, `MatDenseGetArray()`, `MatDenseRestoreArray()`, `MatSeqAIJGetArrayF90()`
 M*/
 
 /*MC
@@ -8152,8 +8168,7 @@
 
     Level: advanced
 
-.seealso: `MatDenseGetArrayF90()`, `MatDenseGetArray()`, `MatDenseRestoreArray()`, `MatSeqAIJRestoreArrayF90()`
-
+.seealso: `Mat`, `MatDenseGetArrayF90()`, `MatDenseGetArray()`, `MatDenseRestoreArray()`, `MatSeqAIJRestoreArrayF90()`
 M*/
 
 /*MC
@@ -8182,8 +8197,7 @@
 
     Level: advanced
 
-.seealso: `MatSeqAIJRestoreArrayF90()`, `MatSeqAIJGetArray()`, `MatSeqAIJRestoreArray()`, `MatDenseGetArrayF90()`
-
+.seealso: `Mat`, `MatSeqAIJRestoreArrayF90()`, `MatSeqAIJGetArray()`, `MatSeqAIJRestoreArray()`, `MatDenseGetArrayF90()`
 M*/
 
 /*MC
@@ -8213,8 +8227,7 @@
 
     Level: advanced
 
-.seealso: `MatSeqAIJGetArrayF90()`, `MatSeqAIJGetArray()`, `MatSeqAIJRestoreArray()`, `MatDenseRestoreArrayF90()`
-
+.seealso: `Mat`, `MatSeqAIJGetArrayF90()`, `MatSeqAIJGetArray()`, `MatSeqAIJRestoreArray()`, `MatDenseRestoreArrayF90()`
 M*/
 
 /*@
@@ -8252,7 +8265,7 @@
     The communicator of the newly obtained matrix is ALWAYS the same as the communicator of
     the input matrix.
 
-    If iscol is NULL then all columns are obtained (not supported in Fortran).
+    If iscol is `NULL` then all columns are obtained (not supported in Fortran).
 
    Example usage:
    Consider the following 8x8 matrix with 34 non-zero values, that is
@@ -8391,7 +8404,7 @@
    Note:
    Propagates the options associated to `MAT_SYMMETRY_ETERNAL`, `MAT_STRUCTURALLY_SYMMETRIC`, `MAT_HERMITIAN`, `MAT_SPD`, `MAT_SYMMETRIC`, and `MAT_STRUCTURAL_SYMMETRY_ETERNAL`
 
-.seealso: `MatSetOption()`, `MatIsSymmetricKnown()`, `MatIsSPDKnown()`, `MatIsHermitianKnown()`, MatIsStructurallySymmetricKnown()`
+.seealso: `Mat`, `MatSetOption()`, `MatIsSymmetricKnown()`, `MatIsSPDKnown()`, `MatIsHermitianKnown()`, MatIsStructurallySymmetricKnown()`
 @*/
 PetscErrorCode MatPropagateSymmetryOptions(Mat A, Mat B)
 {
@@ -8461,12 +8474,12 @@
    Level: intermediate
 
    Notes:
-    w may be the same vector as y.
+    `w` may be the same vector as `y`.
 
     This allows one to use either the restriction or interpolation (its transpose)
     matrix to do the interpolation
 
-.seealso: `MatMultAdd()`, `MatMultTransposeAdd()`, `MatRestrict()`, `PCMG`
+.seealso: `Mat`, `MatMultAdd()`, `MatMultTransposeAdd()`, `MatRestrict()`, `PCMG`
 @*/
 PetscErrorCode MatInterpolateAdd(Mat A, Vec x, Vec y, Vec w)
 {
@@ -8503,7 +8516,7 @@
     This allows one to use either the restriction or interpolation (its transpose)
     matrix to do the interpolation
 
-.seealso: `MatMultAdd()`, `MatMultTransposeAdd()`, `MatRestrict()`, `PCMG`
+.seealso: `Mat`, `MatMultAdd()`, `MatMultTransposeAdd()`, `MatRestrict()`, `PCMG`
 @*/
 PetscErrorCode MatInterpolate(Mat A, Vec x, Vec y)
 {
@@ -8538,7 +8551,7 @@
     This allows one to use either the restriction or interpolation (its transpose)
     matrix to do the restriction
 
-.seealso: `MatMultAdd()`, `MatMultTransposeAdd()`, `MatInterpolate()`, `PCMG`
+.seealso: `Mat`, `MatMultAdd()`, `MatMultTransposeAdd()`, `MatInterpolate()`, `PCMG`
 @*/
 PetscErrorCode MatRestrict(Mat A, Vec x, Vec y)
 {
@@ -8575,9 +8588,9 @@
    Note:
     This allows one to use either the restriction or interpolation (its transpose)
     matrix to do the interpolation. y matrix can be reused if already created with the proper sizes,
-    otherwise it will be recreated. y must be initialized to NULL if not supplied.
+    otherwise it will be recreated. y must be initialized to `NULL` if not supplied.
 
-.seealso: `MatInterpolateAdd()`, `MatMatInterpolate()`, `MatMatRestrict()`, `PCMG`
+.seealso: `Mat`, `MatInterpolateAdd()`, `MatMatInterpolate()`, `MatMatRestrict()`, `PCMG`
 @*/
 PetscErrorCode MatMatInterpolateAdd(Mat A, Mat x, Mat w, Mat *y)
 {
@@ -8652,9 +8665,9 @@
    Note:
     This allows one to use either the restriction or interpolation (its transpose)
     matrix to do the interpolation. y matrix can be reused if already created with the proper sizes,
-    otherwise it will be recreated. y must be initialized to NULL if not supplied.
+    otherwise it will be recreated. y must be initialized to `NULL` if not supplied.
 
-.seealso: `MatInterpolate()`, `MatRestrict()`, `MatMatRestrict()`, `PCMG`
+.seealso: `Mat`, `MatInterpolate()`, `MatRestrict()`, `MatMatRestrict()`, `PCMG`
 @*/
 PetscErrorCode MatMatInterpolate(Mat A, Mat x, Mat *y)
 {
@@ -8680,9 +8693,9 @@
    Note:
     This allows one to use either the restriction or interpolation (its transpose)
     matrix to do the restriction. y matrix can be reused if already created with the proper sizes,
-    otherwise it will be recreated. y must be initialized to NULL if not supplied.
+    otherwise it will be recreated. y must be initialized to `NULL` if not supplied.
 
-.seealso: `MatRestrict()`, `MatInterpolate()`, `MatMatInterpolate()`, `PCMG`
+.seealso: `Mat`, `MatRestrict()`, `MatInterpolate()`, `MatMatInterpolate()`, `PCMG`
 @*/
 PetscErrorCode MatMatRestrict(Mat A, Mat x, Mat *y)
 {
@@ -8702,7 +8715,7 @@
 
    Level: developer
 
-.seealso: `MatCreate()`, `MatNullSpaceCreate()`, `MatSetNearNullSpace()`, `MatSetNullSpace()`, `MatNullSpace`
+.seealso: `Mat`, `MatCreate()`, `MatNullSpaceCreate()`, `MatSetNearNullSpace()`, `MatSetNullSpace()`, `MatNullSpace`
 @*/
 PetscErrorCode MatGetNullSpace(Mat mat, MatNullSpace *nullsp)
 {
@@ -8727,7 +8740,7 @@
    Notes:
       This null space is used by the `KSP` linear solvers to solve singular systems.
 
-      Overwrites any previous null space that may have been attached. You can remove the null space from the matrix object by calling this routine with an nullsp of NULL
+      Overwrites any previous null space that may have been attached. You can remove the null space from the matrix object by calling this routine with an nullsp of `NULL`
 
       For inconsistent singular systems (linear systems where the right hand side is not in the range of the operator) the `KSP` residuals will not converge to
       to zero but the linear system will still be solved in a least squares sense.
@@ -8745,7 +8758,7 @@
 
     The user should call `MatNullSpaceDestroy()`.
 
-.seealso: `MatCreate()`, `MatNullSpaceCreate()`, `MatSetNearNullSpace()`, `MatGetNullSpace()`, `MatSetTransposeNullSpace()`, `MatGetTransposeNullSpace()`, `MatNullSpaceRemove()`,
+.seealso: `Mat`, `MatCreate()`, `MatNullSpaceCreate()`, `MatSetNearNullSpace()`, `MatGetNullSpace()`, `MatSetTransposeNullSpace()`, `MatGetTransposeNullSpace()`, `MatNullSpaceRemove()`,
           `KSPSetPCSide()`
 @*/
 PetscErrorCode MatSetNullSpace(Mat mat, MatNullSpace nullsp)
@@ -8771,7 +8784,7 @@
 
    Level: developer
 
-.seealso: `MatNullSpace`, `MatCreate()`, `MatNullSpaceCreate()`, `MatSetNearNullSpace()`, `MatSetTransposeNullSpace()`, `MatSetNullSpace()`, `MatGetNullSpace()`
+.seealso: `Mat`, `MatNullSpace`, `MatCreate()`, `MatNullSpaceCreate()`, `MatSetNearNullSpace()`, `MatSetTransposeNullSpace()`, `MatSetNullSpace()`, `MatGetNullSpace()`
 @*/
 PetscErrorCode MatGetTransposeNullSpace(Mat mat, MatNullSpace *nullsp)
 {
@@ -8799,7 +8812,7 @@
 
    See `MatSetNullSpace()`
 
-.seealso: `MatNullSpace`, `MatCreate()`, `MatNullSpaceCreate()`, `MatSetNearNullSpace()`, `MatGetNullSpace()`, `MatSetNullSpace()`, `MatGetTransposeNullSpace()`, `MatNullSpaceRemove()`, `KSPSetPCSide()`
+.seealso: `Mat`, `MatNullSpace`, `MatCreate()`, `MatNullSpaceCreate()`, `MatSetNearNullSpace()`, `MatGetNullSpace()`, `MatSetNullSpace()`, `MatGetTransposeNullSpace()`, `MatNullSpaceRemove()`, `KSPSetPCSide()`
 @*/
 PetscErrorCode MatSetTransposeNullSpace(Mat mat, MatNullSpace nullsp)
 {
@@ -8827,9 +8840,9 @@
    Notes:
    Overwrites any previous near null space that may have been attached
 
-   You can remove the null space by calling this routine with an nullsp of NULL
+   You can remove the null space by calling this routine with an nullsp of `NULL`
 
-.seealso: `MatNullSpace`, `MatCreate()`, `MatNullSpaceCreate()`, `MatSetNullSpace()`, `MatNullSpaceCreateRigidBody()`, `MatGetNearNullSpace()`
+.seealso: `Mat`, `MatNullSpace`, `MatCreate()`, `MatNullSpaceCreate()`, `MatSetNullSpace()`, `MatNullSpaceCreateRigidBody()`, `MatGetNearNullSpace()`
 @*/
 PetscErrorCode MatSetNearNullSpace(Mat mat, MatNullSpace nullsp)
 {
@@ -8853,11 +8866,11 @@
 .  mat - the matrix
 
    Output Parameter:
-.  nullsp - the null space object, NULL if not set
+.  nullsp - the null space object, `NULL` if not set
 
    Level: advanced
 
-.seealso: `MatNullSpace`, `MatSetNearNullSpace()`, `MatGetNullSpace()`, `MatNullSpaceCreate()`
+.seealso: `Mat`, `MatNullSpace`, `MatSetNearNullSpace()`, `MatGetNullSpace()`, `MatNullSpaceCreate()`
 @*/
 PetscErrorCode MatGetNearNullSpace(Mat mat, MatNullSpace *nullsp)
 {
@@ -8895,7 +8908,7 @@
    The Fortran interface is not autogenerated as the
    interface definition cannot be generated correctly [due to `MatFactorInfo`]
 
-.seealso: `MatGetFactor()`, `MatICCFactorSymbolic()`, `MatLUFactorNumeric()`, `MatCholeskyFactor()`
+.seealso: `Mat`, `MatGetFactor()`, `MatICCFactorSymbolic()`, `MatLUFactorNumeric()`, `MatCholeskyFactor()`
 @*/
 PetscErrorCode MatICCFactor(Mat mat, IS row, const MatFactorInfo *info)
 {
@@ -8930,7 +8943,7 @@
 
     This allows one to avoid during communication to perform the scaling that must be done with `MatDiagonalScale()`
 
-.seealso: `MatDiagonalScale()`
+.seealso: `Mat`, `MatDiagonalScale()`
 @*/
 PetscErrorCode MatDiagonalScaleLocal(Mat mat, Vec diag)
 {
@@ -8977,7 +8990,7 @@
    Note:
     Matrix must have been factored by `MatCholeskyFactor()`
 
-.seealso: `MatGetFactor()`, `MatCholeskyFactor()`
+.seealso: `Mat`, `MatGetFactor()`, `MatCholeskyFactor()`
 @*/
 PetscErrorCode MatGetInertia(Mat mat, PetscInt *nneg, PetscInt *nzero, PetscInt *npos)
 {
@@ -8990,7 +9003,6 @@
   PetscFunctionReturn(0);
 }
 
-/* ----------------------------------------------------------------*/
 /*@C
    MatSolves - Solves A x = b, given a factored matrix, for a collection of vectors
 
@@ -9003,13 +9015,13 @@
    Output Parameter:
 .  x - the result vectors
 
+   Level: developer
+
    Note:
-   The vectors b and x cannot be the same.  I.e., one cannot
+   The vectors `b` and `x` cannot be the same.  I.e., one cannot
    call `MatSolves`(A,x,x).
 
-   Level: developer
-
-.seealso: `Vecs`, `MatSolveAdd()`, `MatSolveTranspose()`, `MatSolveTransposeAdd()`, `MatSolve()`
+.seealso: `Mat`, `Vecs`, `MatSolveAdd()`, `MatSolveTranspose()`, `MatSolveTransposeAdd()`, `MatSolve()`
 @*/
 PetscErrorCode MatSolves(Mat mat, Vecs b, Vecs x)
 {
@@ -9039,6 +9051,8 @@
    Output Parameters:
 .  flg - the result
 
+   Level: intermediate
+
    Notes:
     For real numbers `MatIsSymmetric()` and `MatIsHermitian()` return identical results
 
@@ -9047,9 +9061,7 @@
     One can declare that a matrix is symmetric with `MatSetOption`(mat,`MAT_SYMMETRIC`,`PETSC_TRUE`) and if it is known to remain symmetric
     after changes to the matrices values one can call `MatSetOption`(mat,`MAT_SYMMETRY_ETERNAL`,`PETSC_TRUE`)
 
-   Level: intermediate
-
-.seealso: `MatTranspose()`, `MatIsTranspose()`, `MatIsHermitian()`, `MatIsStructurallySymmetric()`, `MatSetOption()`, `MatIsSymmetricKnown()`,
+.seealso: `Mat`, `MatTranspose()`, `MatIsTranspose()`, `MatIsHermitian()`, `MatIsStructurallySymmetric()`, `MatSetOption()`, `MatIsSymmetricKnown()`,
           `MAT_SYMMETRIC`, `MAT_SYMMETRY_ETERNAL`, `MatSetOption()`
 @*/
 PetscErrorCode MatIsSymmetric(Mat A, PetscReal tol, PetscBool *flg)
@@ -9094,7 +9106,7 @@
     One can declare that a matrix is Hermitian with `MatSetOption`(mat,`MAT_HERMITIAN`,`PETSC_TRUE`) and if it is known to remain Hermitian
     after changes to the matrices values one can call `MatSetOption`(mat,`MAT_SYMEMTRY_ETERNAL`,`PETSC_TRUE`)
 
-.seealso: `MatTranspose()`, `MatIsTranspose()`, `MatIsHermitianKnown()`, `MatIsStructurallySymmetric()`, `MatSetOption()`,
+.seealso: `Mat`, `MatTranspose()`, `MatIsTranspose()`, `MatIsHermitianKnown()`, `MatIsStructurallySymmetric()`, `MatSetOption()`,
           `MatIsSymmetricKnown()`, `MatIsSymmetric()`, `MAT_HERMITIAN`, `MAT_SYMMETRY_ETERNAL`, `MatSetOption()`
 @*/
 PetscErrorCode MatIsHermitian(Mat A, PetscReal tol, PetscBool *flg)
@@ -9138,7 +9150,7 @@
     One can declare that a matrix is symmetric with `MatSetOption`(mat,`MAT_SYMMETRIC`,`PETSC_TRUE`) and if it is known to remain symmetric
     after changes to the matrices values one can call `MatSetOption`(mat,`MAT_SYMMETRY_ETERNAL`,`PETSC_TRUE`)
 
-.seealso: `MAT_SYMMETRY_ETERNAL`, `MatTranspose()`, `MatIsTranspose()`, `MatIsHermitian()`, `MatIsStructurallySymmetric()`, `MatSetOption()`, `MatIsSymmetric()`, `MatIsHermitianKnown()`
+.seealso: `Mat`, `MAT_SYMMETRY_ETERNAL`, `MatTranspose()`, `MatIsTranspose()`, `MatIsHermitian()`, `MatIsStructurallySymmetric()`, `MatSetOption()`, `MatIsSymmetric()`, `MatIsHermitianKnown()`
 @*/
 PetscErrorCode MatIsSymmetricKnown(Mat A, PetscBool *set, PetscBool *flg)
 {
@@ -9175,7 +9187,7 @@
    One can declare that a matrix is SPD with `MatSetOption`(mat,`MAT_SPD`,`PETSC_TRUE`) and if it is known to remain SPD
    after changes to the matrices values one can call `MatSetOption`(mat,`MAT_SPD_ETERNAL`,`PETSC_TRUE`)
 
-.seealso: `MAT_SPD_ETERNAL`, `MAT_SPD`, `MatTranspose()`, `MatIsTranspose()`, `MatIsHermitian()`, `MatIsStructurallySymmetric()`, `MatSetOption()`, `MatIsSymmetric()`, `MatIsHermitianKnown()`
+.seealso: `Mat`, `MAT_SPD_ETERNAL`, `MAT_SPD`, `MatTranspose()`, `MatIsTranspose()`, `MatIsHermitian()`, `MatIsStructurallySymmetric()`, `MatSetOption()`, `MatIsSymmetric()`, `MatIsHermitianKnown()`
 @*/
 PetscErrorCode MatIsSPDKnown(Mat A, PetscBool *set, PetscBool *flg)
 {
@@ -9213,7 +9225,7 @@
    One can declare that a matrix is Hermitian with `MatSetOption`(mat,`MAT_HERMITIAN`,`PETSC_TRUE`) and if it is known to remain Hermitian
    after changes to the matrices values one can call `MatSetOption`(mat,`MAT_SYMMETRY_ETERNAL`,`PETSC_TRUE`)
 
-.seealso: `MAT_SYMMETRY_ETERNAL`, `MAT_HERMITIAN`, `MatTranspose()`, `MatIsTranspose()`, `MatIsHermitian()`, `MatIsStructurallySymmetric()`, `MatSetOption()`, `MatIsSymmetric()`
+.seealso: `Mat`, `MAT_SYMMETRY_ETERNAL`, `MAT_HERMITIAN`, `MatTranspose()`, `MatIsTranspose()`, `MatIsHermitian()`, `MatIsStructurallySymmetric()`, `MatSetOption()`, `MatIsSymmetric()`
 @*/
 PetscErrorCode MatIsHermitianKnown(Mat A, PetscBool *set, PetscBool *flg)
 {
@@ -9241,15 +9253,15 @@
    Output Parameters:
 .  flg - the result
 
+   Level: intermediate
+
    Notes:
    If the matrix does yet know it is structurally symmetric this can be an expensive operation, also available `MatIsStructurallySymmetricKnown()`
 
    One can declare that a matrix is structurally symmetric with `MatSetOption`(mat,`MAT_STRUCTURALLY_SYMMETRIC`,`PETSC_TRUE`) and if it is known to remain structurally
    symmetric after changes to the matrices values one can call `MatSetOption`(mat,`MAT_STRUCTURAL_SYMMETRY_ETERNAL`,`PETSC_TRUE`)
 
-   Level: intermediate
-
-.seealso: `MAT_STRUCTURALLY_SYMMETRIC`, `MAT_STRUCTURAL_SYMMETRY_ETERNAL`, `MatTranspose()`, `MatIsTranspose()`, `MatIsHermitian()`, `MatIsSymmetric()`, `MatSetOption()`, `MatIsStructurallySymmetricKnown()`
+.seealso: `Mat`, `MAT_STRUCTURALLY_SYMMETRIC`, `MAT_STRUCTURAL_SYMMETRY_ETERNAL`, `MatTranspose()`, `MatIsTranspose()`, `MatIsHermitian()`, `MatIsSymmetric()`, `MatSetOption()`, `MatIsStructurallySymmetricKnown()`
 @*/
 PetscErrorCode MatIsStructurallySymmetric(Mat A, PetscBool *flg)
 {
@@ -9285,7 +9297,7 @@
 
    Use `MatIsStructurallySymmetric()` to explicitly check if a matrix is structurally symmetric (this is an expensive operation)
 
-.seealso: `MAT_STRUCTURALLY_SYMMETRIC`, `MatTranspose()`, `MatIsTranspose()`, `MatIsHermitian()`, `MatIsStructurallySymmetric()`, `MatSetOption()`, `MatIsSymmetric()`, `MatIsHermitianKnown()`
+.seealso: `Mat`, `MAT_STRUCTURALLY_SYMMETRIC`, `MatTranspose()`, `MatIsTranspose()`, `MatIsHermitian()`, `MatIsStructurallySymmetric()`, `MatSetOption()`, `MatIsSymmetric()`, `MatIsHermitianKnown()`
 @*/
 PetscErrorCode MatIsStructurallySymmetricKnown(Mat A, PetscBool *set, PetscBool *flg)
 {
@@ -9342,13 +9354,13 @@
 +   right - (optional) vector that the matrix can be multiplied against
 -   left - (optional) vector that the matrix vector product can be stored in
 
+  Level: advanced
+
    Notes:
     The blocksize of the returned vectors is determined by the row and column block sizes set with `MatSetBlockSizes()` or the single blocksize (same for both) set by `MatSetBlockSize()`.
 
     These are new vectors which are not owned by the mat, they should be destroyed in `VecDestroy()` when no longer needed
 
-  Level: advanced
-
 .seealso: `Mat`, `Vec`, `VecCreate()`, `VecDestroy()`, `DMCreateGlobalVector()`
 @*/
 PetscErrorCode MatCreateVecs(Mat mat, Vec *right, Vec *left)
@@ -9402,19 +9414,19 @@
    Input Parameters:
 .    info - the `MatFactorInfo` data structure
 
+   Level: developer
+
    Notes:
     The solvers are generally used through the `KSP` and `PC` objects, for example
           `PCLU`, `PCILU`, `PCCHOLESKY`, `PCICC`
 
     Once the data structure is initialized one may change certain entries as desired for the particular factorization to be performed
 
-   Level: developer
-
    Developer Note:
    The Fortran interface is not autogenerated as the
    interface definition cannot be generated correctly [due to `MatFactorInfo`]
 
-.seealso: `MatGetFactor()`, `MatFactorInfo`
+.seealso: `Mat`, `MatGetFactor()`, `MatFactorInfo`
 @*/
 PetscErrorCode MatFactorInfoInitialize(MatFactorInfo *info)
 {
@@ -9432,6 +9444,8 @@
 +  mat - the factored matrix
 -  is - the index set defining the Schur indices (0-based)
 
+   Level: advanced
+
    Notes:
     Call `MatFactorSolveSchurComplement()` or `MatFactorSolveSchurComplementTranspose()` after this call to solve a Schur complement system.
 
@@ -9439,11 +9453,8 @@
 
    This functionality is only supported for `MATSOLVERMUMPS` and `MATSOLVERMKL_PARDISO`
 
-   Level: advanced
-
-.seealso: `MatGetFactor()`, `MatFactorGetSchurComplement()`, `MatFactorRestoreSchurComplement()`, `MatFactorCreateSchurComplement()`, `MatFactorSolveSchurComplement()`,
+.seealso: `Mat`, `MatGetFactor()`, `MatFactorGetSchurComplement()`, `MatFactorRestoreSchurComplement()`, `MatFactorCreateSchurComplement()`, `MatFactorSolveSchurComplement()`,
           `MatFactorSolveSchurComplementTranspose()`, `MatFactorSolveSchurComplement()`, `MATSOLVERMUMPS`, `MATSOLVERMKL_PARDISO`
-
 @*/
 PetscErrorCode MatFactorSetSchurIS(Mat mat, IS is)
 {
@@ -9471,8 +9482,10 @@
 
    Input Parameters:
 +  F - the factored matrix obtained by calling `MatGetFactor()`
-.  S - location where to return the Schur complement, can be NULL
--  status - the status of the Schur complement matrix, can be NULL
+.  S - location where to return the Schur complement, can be `NULL`
+-  status - the status of the Schur complement matrix, can be `NULL`
+
+   Level: advanced
 
    Notes:
    You must call `MatFactorSetSchurIS()` before calling this routine.
@@ -9491,9 +9504,7 @@
     The reason this routine exists is because the representation of the Schur complement within the factor matrix may be different than a standard PETSc
    matrix representation and we normally do not want to use the time or memory to make a copy as a regular PETSc matrix.
 
-   Level: advanced
-
-.seealso: `MatGetFactor()`, `MatFactorSetSchurIS()`, `MatFactorGetSchurComplement()`, `MatFactorSchurStatus`, `MATSOLVERMUMPS`, `MATSOLVERMKL_PARDISO`
+.seealso: `Mat`, `MatGetFactor()`, `MatFactorSetSchurIS()`, `MatFactorGetSchurComplement()`, `MatFactorSchurStatus`, `MATSOLVERMUMPS`, `MATSOLVERMKL_PARDISO`
 @*/
 PetscErrorCode MatFactorCreateSchurComplement(Mat F, Mat *S, MatFactorSchurStatus *status)
 {
@@ -9522,15 +9533,17 @@
 
    Input Parameters:
 +  F - the factored matrix obtained by calling `MatGetFactor()`
-.  *S - location where to return the Schur complement, can be NULL
--  status - the status of the Schur complement matrix, can be NULL
+.  *S - location where to return the Schur complement, can be `NULL`
+-  status - the status of the Schur complement matrix, can be `NULL`
+
+   Level: advanced
 
    Notes:
    You must call `MatFactorSetSchurIS()` before calling this routine.
 
    Schur complement mode is currently implemented for sequential matrices with factor type of `MATSOLVERMUMPS`
 
-   The routine returns a the Schur Complement stored within the data strutures of the solver.
+   The routine returns a the Schur Complement stored within the data structures of the solver.
 
    If `MatFactorInvertSchurComplement()` has previously been called, the returned matrix is actually the inverse of the Schur complement.
 
@@ -9540,9 +9553,7 @@
 
    See `MatCreateSchurComplement()` or `MatGetSchurComplement()` for ways to create virtual or approximate Schur complements.
 
-   Level: advanced
-
-.seealso: `MatGetFactor()`, `MatFactorSetSchurIS()`, `MatFactorRestoreSchurComplement()`, `MatFactorCreateSchurComplement()`, `MatFactorSchurStatus`
+.seealso: `Mat`, `MatGetFactor()`, `MatFactorSetSchurIS()`, `MatFactorRestoreSchurComplement()`, `MatFactorCreateSchurComplement()`, `MatFactorSchurStatus`
 @*/
 PetscErrorCode MatFactorGetSchurComplement(Mat F, Mat *S, MatFactorSchurStatus *status)
 {
@@ -9567,7 +9578,7 @@
 
    Level: advanced
 
-.seealso: `MatGetFactor()`, `MatFactorSetSchurIS()`, `MatFactorRestoreSchurComplement()`, `MatFactorCreateSchurComplement()`, `MatFactorSchurStatus`
+.seealso: `Mat`, `MatGetFactor()`, `MatFactorSetSchurIS()`, `MatFactorRestoreSchurComplement()`, `MatFactorCreateSchurComplement()`, `MatFactorSchurStatus`
 @*/
 PetscErrorCode MatFactorRestoreSchurComplement(Mat F, Mat *S, MatFactorSchurStatus status)
 {
@@ -9592,14 +9603,14 @@
 .  rhs - location where the right hand side of the Schur complement system is stored
 -  sol - location where the solution of the Schur complement system has to be returned
 
+   Level: advanced
+
    Notes:
    The sizes of the vectors should match the size of the Schur complement
 
    Must be called after `MatFactorSetSchurIS()`
 
-   Level: advanced
-
-.seealso: `MatGetFactor()`, `MatFactorSetSchurIS()`, `MatFactorSolveSchurComplement()`
+.seealso: `Mat`, `MatGetFactor()`, `MatFactorSetSchurIS()`, `MatFactorSolveSchurComplement()`
 @*/
 PetscErrorCode MatFactorSolveSchurComplementTranspose(Mat F, Vec rhs, Vec sol)
 {
@@ -9636,14 +9647,14 @@
 .  rhs - location where the right hand side of the Schur complement system is stored
 -  sol - location where the solution of the Schur complement system has to be returned
 
+   Level: advanced
+
    Notes:
    The sizes of the vectors should match the size of the Schur complement
 
    Must be called after `MatFactorSetSchurIS()`
 
-   Level: advanced
-
-.seealso: `MatGetFactor()`, `MatFactorSetSchurIS()`, `MatFactorSolveSchurComplementTranspose()`
+.seealso: `Mat`, `MatGetFactor()`, `MatFactorSetSchurIS()`, `MatFactorSolveSchurComplementTranspose()`
 @*/
 PetscErrorCode MatFactorSolveSchurComplement(Mat F, Vec rhs, Vec sol)
 {
@@ -9678,14 +9689,14 @@
    Input Parameters:
 .  F - the factored matrix obtained by calling `MatGetFactor()`
 
+   Level: advanced
+
    Notes:
     Must be called after `MatFactorSetSchurIS()`.
 
    Call `MatFactorGetSchurComplement()` or  `MatFactorCreateSchurComplement()` AFTER this call to actually compute the inverse and get access to it.
 
-   Level: advanced
-
-.seealso: `MatGetFactor()`, `MatFactorSetSchurIS()`, `MatFactorGetSchurComplement()`, `MatFactorCreateSchurComplement()`
+.seealso: `Mat`, `MatGetFactor()`, `MatFactorSetSchurIS()`, `MatFactorGetSchurComplement()`, `MatFactorCreateSchurComplement()`
 @*/
 PetscErrorCode MatFactorInvertSchurComplement(Mat F)
 {
@@ -9707,12 +9718,12 @@
    Input Parameters:
 .  F - the factored matrix obtained by calling `MatGetFactor()`
 
+   Level: advanced
+
    Note:
     Must be called after `MatFactorSetSchurIS()`
 
-   Level: advanced
-
-.seealso: `MatGetFactor()`, `MatFactorSetSchurIS()`, `MatFactorInvertSchurComplement()`
+.seealso: `Mat`, `MatGetFactor()`, `MatFactorSetSchurIS()`, `MatFactorInvertSchurComplement()`
 @*/
 PetscErrorCode MatFactorFactorizeSchurComplement(Mat F)
 {
@@ -9728,7 +9739,7 @@
 /*@
    MatPtAP - Creates the matrix product C = P^T * A * P
 
-   Neighbor-wise Collective on A
+   Neighbor-wise Collective
 
    Input Parameters:
 +  A - the matrix
@@ -9740,6 +9751,8 @@
    Output Parameters:
 .  C - the product matrix
 
+   Level: intermediate
+
    Notes:
    C will be created and must be destroyed by the user with `MatDestroy()`.
 
@@ -9748,9 +9761,7 @@
    Developer Note:
    For matrix types without special implementation the function fallbacks to `MatMatMult()` followed by `MatTransposeMatMult()`.
 
-   Level: intermediate
-
-.seealso: `MatProductCreate()`, `MatMatMult()`, `MatRARt()`
+.seealso: `Mat`, `MatProductCreate()`, `MatMatMult()`, `MatRARt()`
 @*/
 PetscErrorCode MatPtAP(Mat A, Mat P, MatReuse scall, PetscReal fill, Mat *C)
 {
@@ -9781,7 +9792,7 @@
 /*@
    MatRARt - Creates the matrix product C = R * A * R^T
 
-   Neighbor-wise Collective on A
+   Neighbor-wise Collective
 
    Input Parameters:
 +  A - the matrix
@@ -9793,6 +9804,8 @@
    Output Parameters:
 .  C - the product matrix
 
+   Level: intermediate
+
    Notes:
    C will be created and must be destroyed by the user with `MatDestroy()`.
 
@@ -9803,9 +9816,7 @@
    parallel MatRARt is implemented via explicit transpose of R, which could be very expensive.
    We recommend using MatPtAP().
 
-   Level: intermediate
-
-.seealso: `MatProductCreate()`, `MatMatMult()`, `MatPtAP()`
+.seealso: `Mat`, `MatProductCreate()`, `MatMatMult()`, `MatPtAP()`
 @*/
 PetscErrorCode MatRARt(Mat A, Mat R, MatReuse scall, PetscReal fill, Mat *C)
 {
@@ -9881,7 +9892,7 @@
 /*@
    MatMatMult - Performs matrix-matrix multiplication C=A*B.
 
-   Neighbor-wise Collective on A
+   Neighbor-wise Collective
 
    Input Parameters:
 +  A - the left matrix
@@ -9918,7 +9929,7 @@
 
    Level: intermediate
 
-.seealso: `MatProductType`, `MATPRODUCT_AB`, `MatTransposeMatMult()`, `MatMatTransposeMult()`, `MatPtAP()`, `MatProductCreate()`, `MatProductSymbolic()`, `MatProductReplaceMats()`, `MatProductNumeric()`
+.seealso: `Mat`, `MatProductType`, `MATPRODUCT_AB`, `MatTransposeMatMult()`, `MatMatTransposeMult()`, `MatPtAP()`, `MatProductCreate()`, `MatProductSymbolic()`, `MatProductReplaceMats()`, `MatProductNumeric()`
 @*/
 PetscErrorCode MatMatMult(Mat A, Mat B, MatReuse scall, PetscReal fill, Mat *C)
 {
@@ -9930,7 +9941,7 @@
 /*@
    MatMatTransposeMult - Performs matrix-matrix multiplication C=A*B^T.
 
-   Neighbor-wise Collective on A
+   Neighbor-wise Collective
 
    Input Parameters:
 +  A - the left matrix
@@ -9941,6 +9952,8 @@
    Output Parameters:
 .  C - the product matrix
 
+   Level: intermediate
+
    Notes:
    C will be created if `MAT_INITIAL_MATRIX` and must be destroyed by the user with `MatDestroy()`.
 
@@ -9959,9 +9972,7 @@
               first redundantly copies the transposed B matrix on each process and requiers O(log P) communication complexity;
               the second never stores more than one portion of the B matrix at a time by requires O(P) communication complexity.
 
-   Level: intermediate
-
-.seealso: `MatProductCreate()`, `MATPRODUCT_ABt`, `MatMatMult()`, `MatTransposeMatMult()` `MatPtAP()`, `MatProductCreate()`, `MatProductAlgorithm`, `MatProductType`, `MATPRODUCT_ABt`
+.seealso: `Mat`, `MatProductCreate()`, `MATPRODUCT_ABt`, `MatMatMult()`, `MatTransposeMatMult()` `MatPtAP()`, `MatProductCreate()`, `MatProductAlgorithm`, `MatProductType`, `MATPRODUCT_ABt`
 @*/
 PetscErrorCode MatMatTransposeMult(Mat A, Mat B, MatReuse scall, PetscReal fill, Mat *C)
 {
@@ -9974,7 +9985,7 @@
 /*@
    MatTransposeMatMult - Performs matrix-matrix multiplication C=A^T*B.
 
-   Neighbor-wise Collective on A
+   Neighbor-wise Collective
 
    Input Parameters:
 +  A - the left matrix
@@ -9985,6 +9996,8 @@
    Output Parameters:
 .  C - the product matrix
 
+   Level: intermediate
+
    Notes:
    C will be created if `MAT_INITIAL_MATRIX` and must be destroyed by the user with `MatDestroy()`.
 
@@ -9998,9 +10011,7 @@
    This routine is currently implemented for pairs of `MATAIJ` matrices and pairs of `MATSEQDENSE` matrices and classes
    which inherit from `MATSEQAIJ`.  C will be of the same type as the input matrices.
 
-   Level: intermediate
-
-.seealso: `MatProductCreate()`, `MATPRODUCT_AtB`, `MatMatMult()`, `MatMatTransposeMult()`, `MatPtAP()`
+.seealso: `Mat`, `MatProductCreate()`, `MATPRODUCT_AtB`, `MatMatMult()`, `MatMatTransposeMult()`, `MatPtAP()`
 @*/
 PetscErrorCode MatTransposeMatMult(Mat A, Mat B, MatReuse scall, PetscReal fill, Mat *C)
 {
@@ -10012,7 +10023,7 @@
 /*@
    MatMatMatMult - Performs matrix-matrix-matrix multiplication D=A*B*C.
 
-   Neighbor-wise Collective on A
+   Neighbor-wise Collective
 
    Input Parameters:
 +  A - the left matrix
@@ -10025,6 +10036,8 @@
    Output Parameters:
 .  D - the product matrix
 
+   Level: intermediate
+
    Notes:
    Unless scall is `MAT_REUSE_MATRIX` D will be created.
 
@@ -10038,9 +10051,7 @@
    If you have many matrices with the same non-zero structure to multiply, you
    should use `MAT_REUSE_MATRIX` in all calls but the first
 
-   Level: intermediate
-
-.seealso: `MatProductCreate()`, `MATPRODUCT_ABC`, `MatMatMult`, `MatPtAP()`, `MatMatTransposeMult()`, `MatTransposeMatMult()`
+.seealso: `Mat`, `MatProductCreate()`, `MATPRODUCT_ABC`, `MatMatMult`, `MatPtAP()`, `MatMatTransposeMult()`, `MatTransposeMatMult()`
 @*/
 PetscErrorCode MatMatMatMult(Mat A, Mat B, Mat C, MatReuse scall, PetscReal fill, Mat *D)
 {
@@ -10080,6 +10091,8 @@
    Output Parameter:
 .  matredundant - redundant matrix
 
+   Level: advanced
+
    Notes:
    `MAT_REUSE_MATRIX` can only be used when the nonzero structure of the
    original matrix has not changed from that last call to MatCreateRedundantMatrix().
@@ -10089,9 +10102,7 @@
 
    `PetscSubcommCreate()` can be used to manage the creation of the subcomm but need not be.
 
-   Level: advanced
-
-.seealso: `MatDestroy()`, `PetscSubcommCreate()`, `PetscSubComm`
+.seealso: `Mat`, `MatDestroy()`, `PetscSubcommCreate()`, `PetscSubComm`
 @*/
 PetscErrorCode MatCreateRedundantMatrix(Mat mat, PetscInt nsubcomm, MPI_Comm subcomm, MatReuse reuse, Mat *matredundant)
 {
@@ -10205,29 +10216,29 @@
 
    Input Parameters:
 +  mat - the matrix
-.  subcomm - the subcommunicator obtained by MPI_Com_split(comm)
+.  subcomm - the sub communicator obtained as if by `MPI_Comm_split(PetscObjectComm((PetscObject)mat))`
 -  scall - either `MAT_INITIAL_MATRIX` or `MAT_REUSE_MATRIX`
 
    Output Parameter:
-.  subMat - 'parallel submatrices each spans a given subcomm
+.  subMat - parallel sub-matrices each spanning a given `subcomm`
+
+  Level: advanced
 
   Notes:
-  The submatrix partition across processors is dictated by 'subComm' a
-  communicator obtained by MPI_comm_split() or via `PetscSubcommCreate()`. The subComm
-  is not restriced to be grouped with consecutive original ranks.
+  The submatrix partition across processors is dictated by `subComm` a
+  communicator obtained by `MPI_comm_split()` or via `PetscSubcommCreate()`. The `subComm`
+  is not restricted to be grouped with consecutive original ranks.
 
-  Due the MPI_Comm_split() usage, the parallel layout of the submatrices
+  Due the `MPI_Comm_split()` usage, the parallel layout of the submatrices
   map directly to the layout of the original matrix [wrt the local
   row,col partitioning]. So the original 'DiagonalMat' naturally maps
-  into the 'DiagonalMat' of the subMat, hence it is used directly from
-  the subMat. However the offDiagMat looses some columns - and this is
+  into the 'DiagonalMat' of the `subMat`, hence it is used directly from
+  the `subMat`. However the offDiagMat looses some columns - and this is
   reconstructed with `MatSetValues()`
 
   This is used by `PCBJACOBI` when a single block spans multiple MPI ranks
 
-  Level: advanced
-
-.seealso: `MatCreateRedundantMatrix()`, `MatCreateSubMatrices()`, `PCBJACOBI`
+.seealso: `Mat`, `MatCreateRedundantMatrix()`, `MatCreateSubMatrices()`, `PCBJACOBI`
 @*/
 PetscErrorCode MatGetMultiProcBlock(Mat mat, MPI_Comm subComm, MatReuse scall, Mat *subMat)
 {
@@ -10261,18 +10272,18 @@
    Level: intermediate
 
    Notes:
-   The submat should be returned with `MatRestoreLocalSubMatrix()`.
+   `submat` should be disposed of with `MatRestoreLocalSubMatrix()`.
 
-   Depending on the format of mat, the returned submat may not implement `MatMult()`.  Its communicator may be
-   the same as mat, it may be `PETSC_COMM_SELF`, or some other subcomm of mat's.
+   Depending on the format of `mat`, the returned submat may not implement `MatMult()`.  Its communicator may be
+   the same as mat, it may be `PETSC_COMM_SELF`, or some other subcomm of `mat`'s.
 
-   The submat always implements `MatSetValuesLocal()`.  If isrow and iscol have the same block size, then
+   `submat` always implements `MatSetValuesLocal()`.  If `isrow` and `iscol` have the same block size, then
    `MatSetValuesBlockedLocal()` will also be implemented.
 
-   The mat must have had a `ISLocalToGlobalMapping` provided to it with `MatSetLocalToGlobalMapping()`.
-   Matrices obtained with DMCreateMatrix() generally already have the local to global mapping provided.
+   `mat` must have had a `ISLocalToGlobalMapping` provided to it with `MatSetLocalToGlobalMapping()`.
+   Matrices obtained with `DMCreateMatrix()` generally already have the local to global mapping provided.
 
-.seealso: `MatRestoreLocalSubMatrix()`, `MatCreateLocalRef()`, `MatSetLocalToGlobalMapping()`
+.seealso: `Mat`, `MatRestoreLocalSubMatrix()`, `MatCreateLocalRef()`, `MatSetLocalToGlobalMapping()`
 @*/
 PetscErrorCode MatGetLocalSubMatrix(Mat mat, IS isrow, IS iscol, Mat *submat)
 {
@@ -10305,7 +10316,7 @@
 
    Level: intermediate
 
-.seealso: `MatGetLocalSubMatrix()`
+.seealso: `Mat`, `MatGetLocalSubMatrix()`
 @*/
 PetscErrorCode MatRestoreLocalSubMatrix(Mat mat, IS isrow, IS iscol, Mat *submat)
 {
@@ -10326,7 +10337,6 @@
   PetscFunctionReturn(0);
 }
 
-/* --------------------------------------------------------*/
 /*@
    MatFindZeroDiagonals - Finds all the rows of a matrix that have zero or no diagonal entry in the matrix
 
@@ -10340,7 +10350,7 @@
 
    Level: developer
 
-.seealso: `MatMultTranspose()`, `MatMultAdd()`, `MatMultTransposeAdd()`
+.seealso: `Mat`, `MatMultTranspose()`, `MatMultAdd()`, `MatMultTransposeAdd()`
 @*/
 PetscErrorCode MatFindZeroDiagonals(Mat mat, IS *is)
 {
@@ -10388,7 +10398,7 @@
 
    Level: developer
 
-.seealso: `MatMultTranspose()`, `MatMultAdd()`, `MatMultTransposeAdd()`
+.seealso: `Mat`, `MatMultTranspose()`, `MatMultAdd()`, `MatMultTransposeAdd()`
 @*/
 PetscErrorCode MatFindOffBlockDiagonalEntries(Mat mat, IS *is)
 {
@@ -10454,7 +10464,7 @@
 
   The blocks never overlap between two MPI ranks, use `MatInvertVariableBlockEnvelope()` for that case
 
-.seealso: `MatInvertBlockDiagonal()`, `MatSetVariableBlockSizes()`, `MatInvertVariableBlockEnvelope()`
+.seealso: `Mat`, `MatInvertBlockDiagonal()`, `MatSetVariableBlockSizes()`, `MatInvertVariableBlockEnvelope()`
 @*/
 PetscErrorCode MatInvertVariableBlockDiagonal(Mat mat, PetscInt nblocks, const PetscInt *bsizes, PetscScalar *values)
 {
@@ -10473,14 +10483,14 @@
 
   Input Parameters:
 + A - the matrix
-- C - matrix with inverted block diagonal of A.  This matrix should be created and may have its type set.
-
-  Note:
-  The blocksize of the matrix is used to determine the blocks on the diagonal of C
+- C - matrix with inverted block diagonal of `A`.  This matrix should be created and may have its type set.
 
   Level: advanced
 
-.seealso: `MatInvertBlockDiagonal()`
+  Note:
+  The blocksize of the matrix is used to determine the blocks on the diagonal of `C`
+
+.seealso: `Mat`, `MatInvertBlockDiagonal()`
 @*/
 PetscErrorCode MatInvertBlockDiagonalMat(Mat A, Mat C)
 {
@@ -10517,7 +10527,7 @@
 
     Level: intermediate
 
-.seealso: `MatTransposeColoringCreate()`
+.seealso: `Mat`, `MatTransposeColoringCreate()`
 @*/
 PetscErrorCode MatTransposeColoringDestroy(MatTransposeColoring *c)
 {
@@ -10560,8 +10570,7 @@
     Note:
     These are used internally for some implementations of `MatRARt()`
 
-.seealso: `MatTransposeColoringCreate()`, `MatTransposeColoringDestroy()`, `MatTransColoringApplyDenToSp()`
-
+.seealso: `Mat`, `MatTransposeColoringCreate()`, `MatTransposeColoringDestroy()`, `MatTransColoringApplyDenToSp()`
 @*/
 PetscErrorCode MatTransColoringApplySpToDen(MatTransposeColoring coloring, Mat B, Mat Btdense)
 {
@@ -10594,8 +10603,7 @@
     Note:
     These are used internally for some implementations of `MatRARt()`
 
-.seealso: `MatTransposeColoringCreate()`, `MatTransposeColoringDestroy()`, `MatTransColoringApplySpToDen()`
-
+.seealso: `Mat`, `MatTransposeColoringCreate()`, `MatTransposeColoringDestroy()`, `MatTransColoringApplySpToDen()`
 @*/
 PetscErrorCode MatTransColoringApplyDenToSp(MatTransposeColoring matcoloring, Mat Cden, Mat Csp)
 {
@@ -10624,7 +10632,7 @@
 
     Level: intermediate
 
-.seealso: `MatTransposeColoringDestroy()`, `MatTransColoringApplySpToDen()`,
+.seealso: `Mat`, `MatTransposeColoringDestroy()`, `MatTransColoringApplySpToDen()`,
           `MatTransColoringApplyDenToSp()`
 @*/
 PetscErrorCode MatTransposeColoringCreate(Mat mat, ISColoring iscoloring, MatTransposeColoring *color)
@@ -10660,6 +10668,8 @@
   Output Parameter:
 .    state - the current state
 
+  Level: intermediate
+
   Notes:
     You can only compare states from two different calls to the SAME matrix, you cannot compare calls between
          different matrices
@@ -10668,9 +10678,7 @@
 
     Use the result of `PetscObjectGetId()` to compare if a previously checked matrix is the same as the current matrix, do not compare object pointers.
 
-  Level: intermediate
-
-.seealso: `PetscObjectStateGet()`, `PetscObjectGetId()`
+.seealso: `Mat`, `PetscObjectStateGet()`, `PetscObjectGetId()`
 @*/
 PetscErrorCode MatGetNonzeroState(Mat mat, PetscObjectState *state)
 {
@@ -10728,7 +10736,7 @@
 /*@
      MatSubdomainsCreateCoalesce - Creates index subdomains by coalescing adjacent ranks' ownership ranges.
 
-    Collective on A
+    Collective
 
    Input Parameters:
 +    A   - the matrix to create subdomains from
@@ -10792,7 +10800,7 @@
 
    Level: developer
 
-.seealso: `MatPtAP()`, `MatMatMatMult()`
+.seealso: `Mat`, `MatPtAP()`, `MatMatMatMult()`
 @*/
 PetscErrorCode MatGalerkin(Mat restrct, Mat dA, Mat interpolate, MatReuse reuse, PetscReal fill, Mat *A)
 {
@@ -10839,28 +10847,33 @@
    Level: developer
 
     Usage:
-$      extern PetscErrorCode usermult(Mat,Vec,Vec);
-$      PetscCall(MatCreateXXX(comm,...&A);
-$      PetscCall(MatSetOperation(A,MATOP_MULT,(void(*)(void))usermult);
+.vb
+  extern PetscErrorCode usermult(Mat, Vec, Vec);
+
+  PetscCall(MatCreateXXX(comm, ..., &A));
+  PetscCall(MatSetOperation(A, MATOP_MULT, (PetscVoidFunction)usermult));
+.ve
 
     Notes:
-    See the file include/petscmat.h for a complete list of matrix
+    See the file `include/petscmat.h` for a complete list of matrix
     operations, which all have the form MATOP_<OPERATION>, where
     <OPERATION> is the name (in all capital letters) of the
-    user interface routine (e.g., MatMult() -> MATOP_MULT).
+    user interface routine (e.g., `MatMult()` -> `MATOP_MULT`).
 
     All user-provided functions (except for `MATOP_DESTROY`) should have the same calling
     sequence as the usual matrix interface routines, since they
     are intended to be accessed via the usual matrix interface
     routines, e.g.,
-$       MatMult(Mat,Vec,Vec) -> usermult(Mat,Vec,Vec)
+.vb
+  MatMult(Mat, Vec, Vec) -> usermult(Mat, Vec, Vec)
+.ve
 
-    In particular each function MUST return an error code of 0 on success and
+    In particular each function MUST return `PETSC_SUCCESS` on success and
     nonzero on failure.
 
     This routine is distinct from `MatShellSetOperation()` in that it can be called on any matrix type.
 
-.seealso: `MatGetOperation()`, `MatCreateShell()`, `MatShellSetContext()`, `MatShellSetOperation()`
+.seealso: `Mat`, `MatGetOperation()`, `MatCreateShell()`, `MatShellSetContext()`, `MatShellSetOperation()`
 @*/
 PetscErrorCode MatSetOperation(Mat mat, MatOperation op, void (*f)(void))
 {
@@ -10897,7 +10910,7 @@
 
     This routine is distinct from `MatShellGetOperation()` in that it can be called on any matrix type.
 
-.seealso: `MatSetOperation()`, `MatCreateShell()`, `MatShellGetContext()`, `MatShellGetOperation()`
+.seealso: `Mat`, `MatSetOperation()`, `MatCreateShell()`, `MatShellGetContext()`, `MatShellGetOperation()`
 @*/
 PetscErrorCode MatGetOperation(Mat mat, MatOperation op, void (**f)(void))
 {
@@ -10922,12 +10935,9 @@
    Level: advanced
 
    Note:
-   See the file include/petscmat.h for a complete list of matrix
-   operations, which all have the form MATOP_<OPERATION>, where
-   <OPERATION> is the name (in all capital letters) of the
-   user-level routine.  E.g., `MatNorm()` -> `MATOP_NORM`.
+   See `MatSetOperation()` for additional discussion on naming convention and usage of `op`.
 
-.seealso: `MatCreateShell()`, `MatGetOperation()`, `MatSetOperation()`
+.seealso: `Mat`, `MatCreateShell()`, `MatGetOperation()`, `MatSetOperation()`
 @*/
 PetscErrorCode MatHasOperation(Mat mat, MatOperation op, PetscBool *has)
 {
@@ -10964,7 +10974,7 @@
 
    Level: beginner
 
-.seealso: `MatCreate()`, `MatSetSizes()`, `PetscLayout`
+.seealso: `Mat`, `MatCreate()`, `MatSetSizes()`, `PetscLayout`
 @*/
 PetscErrorCode MatHasCongruentLayouts(Mat mat, PetscBool *cong)
 {
@@ -11010,7 +11020,7 @@
 
    Level: advanced
 
-.seealso: `MatCreate()`, `PCGAMG`
+.seealso: `Mat`, `MatCreate()`, `PCGAMG`
 */
 PETSC_EXTERN PetscErrorCode MatCreateGraph(Mat A, PetscBool sym, PetscBool scale, PetscReal filter, Mat *graph)
 {
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/mat/matfd/fdmatrix.c petsc-3.18.5+dfsg1/src/mat/matfd/fdmatrix.c
--- petsc-3.18.4+dfsg1/src/mat/matfd/fdmatrix.c	2022-12-28 20:00:16.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/mat/matfd/fdmatrix.c	2023-02-27 23:11:05.000000000 +0100
@@ -92,7 +92,7 @@
    involves more than 33 then some seemingly identical colors are displayed making it look
    like an illegal coloring. This is just a graphical artifact.
 
-.seealso: `MatFDColoring`, `MatFDColoringCreate()`
+.seealso: `Mat`, `MatFDColoring`, `MatFDColoringCreate()`
 @*/
 PetscErrorCode MatFDColoringView(MatFDColoring c, PetscViewer viewer)
 {
@@ -158,13 +158,13 @@
 .ve
 
    Input Parameters:
-+  coloring - the coloring context
-.  error_rel - relative error
++  matfd - the coloring context
+.  error - relative error
 -  umin - minimum allowable u-value magnitude
 
    Level: advanced
 
-.seealso: `MatFDColoring`, `MatFDColoringCreate()`, `MatFDColoringSetFromOptions()`
+.seealso: `Mat`, `MatFDColoring`, `MatFDColoringCreate()`, `MatFDColoringSetFromOptions()`
 @*/
 PetscErrorCode MatFDColoringSetParameters(MatFDColoring matfd, PetscReal error, PetscReal umin)
 {
@@ -189,7 +189,7 @@
 
    Level: intermediate
 
-.seealso: `MatFDColoring`, `MatFDColoringCreate()`, `MatFDColoringSetFromOptions()`
+.seealso: `Mat`, `MatFDColoring`, `MatFDColoringCreate()`, `MatFDColoringSetFromOptions()`
 @*/
 PetscErrorCode MatFDColoringSetBlockSize(MatFDColoring matfd, PetscInt brows, PetscInt bcols)
 {
@@ -217,7 +217,7 @@
    Notes:
    When the coloring type is `IS_COLORING_LOCAL` the coloring is in the local ordering of the unknowns.
 
-.seealso: `MatFDColoring`, `MatFDColoringCreate()`, `MatFDColoringDestroy()`
+.seealso: `Mat`, `MatFDColoring`, `MatFDColoringCreate()`, `MatFDColoringDestroy()`
 @*/
 PetscErrorCode MatFDColoringSetUp(Mat mat, ISColoring iscoloring, MatFDColoring color)
 {
@@ -252,7 +252,7 @@
 
    Level: intermediate
 
-.seealso: `MatFDColoring`, `MatFDColoringCreate()`, `MatFDColoringSetFunction()`, `MatFDColoringSetFromOptions()`
+.seealso: `Mat`, `MatFDColoring`, `MatFDColoringCreate()`, `MatFDColoringSetFunction()`, `MatFDColoringSetFromOptions()`
 @*/
 PetscErrorCode MatFDColoringGetFunction(MatFDColoring matfd, PetscErrorCode (**f)(void), void **fctx)
 {
@@ -288,7 +288,7 @@
     In Fortran you must call `MatFDColoringSetFunction()` for a coloring object to
   be used without `SNES` or within the `SNES` solvers.
 
-.seealso: `MatFDColoring`, `MatFDColoringCreate()`, `MatFDColoringGetFunction()`, `MatFDColoringSetFromOptions()`
+.seealso: `Mat`, `MatFDColoring`, `MatFDColoringCreate()`, `MatFDColoringGetFunction()`, `MatFDColoringSetFromOptions()`
 @*/
 PetscErrorCode MatFDColoringSetFunction(MatFDColoring matfd, PetscErrorCode (*f)(void), void *fctx)
 {
@@ -326,7 +326,7 @@
 
     Level: intermediate
 
-.seealso: `MatFDColoring`, `MatFDColoringCreate()`, `MatFDColoringView()`, `MatFDColoringSetParameters()`
+.seealso: `Mat`, `MatFDColoring`, `MatFDColoringCreate()`, `MatFDColoringView()`, `MatFDColoringSetParameters()`
 @*/
 PetscErrorCode MatFDColoringSetFromOptions(MatFDColoring matfd)
 {
@@ -370,14 +370,14 @@
    Options Database Keys:
 .  -mat_fd_type - "wp" or "ds"
 
+   Level: intermediate
+
    Note:
    It is goofy that the argument type is `MatMFFDType` since the `MatFDColoring` actually computes the matrix entries
          but the process of computing the entries is the same as as with the `MATMFFD` operation so we should reuse the names instead of
          introducing another one.
 
-   Level: intermediate
-
-.seealso: `MatFDColoring`, `MatFDColoringCreate()`, `MatFDColoringView()`, `MatFDColoringSetParameters()`
+.seealso: `Mat`, `MatFDColoring`, `MatFDColoringCreate()`, `MatFDColoringView()`, `MatFDColoringSetParameters()`
 @*/
 PetscErrorCode MatFDColoringSetType(MatFDColoring matfd, MatMFFDType type)
 {
@@ -385,7 +385,7 @@
   PetscValidHeaderSpecific(matfd, MAT_FDCOLORING_CLASSID, 1);
   /*
      It is goofy to handle the strings this way but currently there is no code to free a dynamically created matfd->htype
-     and this function is being provided as patch for a release so it shouldn't change the implementaton
+     and this function is being provided as patch for a release so it shouldn't change the implementation
   */
   if (type[0] == 'w' && type[1] == 'p') matfd->htype = "wp";
   else if (type[0] == 'd' && type[1] == 's') matfd->htype = "ds";
@@ -429,7 +429,7 @@
 
     Level: intermediate
 
-.seealso: `MatFDColoring`, `MatFDColoringDestroy()`, `SNESComputeJacobianDefaultColor()`, `ISColoringCreate()`,
+.seealso: `Mat`, `MatFDColoring`, `MatFDColoringDestroy()`, `SNESComputeJacobianDefaultColor()`, `ISColoringCreate()`,
           `MatFDColoringSetFunction()`, `MatFDColoringSetFromOptions()`, `MatFDColoringApply()`,
           `MatFDColoringView()`, `MatFDColoringSetParameters()`, `MatColoringCreate()`, `DMCreateColoring()`, `MatFDColoringSetValues()`
 @*/
@@ -484,7 +484,7 @@
 
     Level: intermediate
 
-.seealso: `MatFDColoring`, `MatFDColoringCreate()`
+.seealso: `Mat`, `MatFDColoring`, `MatFDColoringCreate()`
 @*/
 PetscErrorCode MatFDColoringDestroy(MatFDColoring *c)
 {
@@ -537,16 +537,18 @@
 
    Fortran Note:
    This routine has a different interface for Fortran
-$     #include <petsc/finclude/petscmat.h>
-$          use petscmat
-$          PetscInt, pointer :: array(:)
-$          PetscErrorCode  ierr
-$          MatFDColoring   i
-$          call MatFDColoringGetPerturbedColumnsF90(i,array,ierr)
-$      use the entries of array ...
-$          call MatFDColoringRestorePerturbedColumnsF90(i,array,ierr)
+.vb
+     #include <petsc/finclude/petscmat.h>
+          use petscmat
+          PetscInt, pointer :: array(:)
+          PetscErrorCode  ierr
+          MatFDColoring   i
+          call MatFDColoringGetPerturbedColumnsF90(i,array,ierr)
+      use the entries of array ...
+          call MatFDColoringRestorePerturbedColumnsF90(i,array,ierr)
+.ve
 
-.seealso: `MatFDColoring`, `MatFDColoringCreate()`, `MatFDColoringDestroy()`, `MatFDColoringView()`, `MatFDColoringApply()`
+.seealso: `Mat`, `MatFDColoring`, `MatFDColoringCreate()`, `MatFDColoringDestroy()`, `MatFDColoringView()`, `MatFDColoringApply()`
 @*/
 PetscErrorCode MatFDColoringGetPerturbedColumns(MatFDColoring coloring, PetscInt *n, const PetscInt *cols[])
 {
@@ -580,7 +582,7 @@
 
     Level: intermediate
 
-.seealso: `MatFDColoring`, `MatFDColoringCreate()`, `MatFDColoringDestroy()`, `MatFDColoringView()`, `MatFDColoringSetFunction()`, `MatFDColoringSetValues()`
+.seealso: `Mat`, `MatFDColoring`, `MatFDColoringCreate()`, `MatFDColoringDestroy()`, `MatFDColoringView()`, `MatFDColoringSetFunction()`, `MatFDColoringSetValues()`
 @*/
 PetscErrorCode MatFDColoringApply(Mat J, MatFDColoring coloring, Vec x1, void *sctx)
 {
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/mat/order/degree.c petsc-3.18.5+dfsg1/src/mat/order/degree.c
--- petsc-3.18.4+dfsg1/src/mat/order/degree.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/mat/order/degree.c	2023-02-27 23:11:05.000000000 +0100
@@ -19,7 +19,7 @@
 /*    OUTPUT PARAMETERS -*/
 /*       DEG - ARRAY CONTAINING THE DEGREES OF THE NODES IN*/
 /*             THE COMPONENT.*/
-/*       CCSIZE-SIZE OF THE COMPONENT SPECIFED BY MASK AND ROOT*/
+/*       CCSIZE-SIZE OF THE COMPONENT SPECIFIED BY MASK AND ROOT*/
 /*    WORKING PARAMETER -*/
 /*       LS - A TEMPORARY VECTOR USED TO STORE THE NODES OF THE*/
 /*              COMPONENT LEVEL BY LEVEL.*/
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/mat/order/wbm.c petsc-3.18.5+dfsg1/src/mat/order/wbm.c
--- petsc-3.18.4+dfsg1/src/mat/order/wbm.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/mat/order/wbm.c	2023-02-27 23:11:05.000000000 +0100
@@ -10,7 +10,7 @@
    corresponds to the PETSc BLAS/LAPACK mangling flag (we pass this flag to configure SuperLU_dist)
 */
 
-  /* Why not include superlu_dist inludes? */
+  /* Why not include superlu_dist includes? */
   #if defined(PETSC_BLASLAPACK_CAPS)
     #define mc64id_dist MC64ID_DIST
     #define mc64ad_dist MC64AD_DIST
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/mat/tests/ex199.c petsc-3.18.5+dfsg1/src/mat/tests/ex199.c
--- petsc-3.18.4+dfsg1/src/mat/tests/ex199.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/mat/tests/ex199.c	2023-02-27 23:11:05.000000000 +0100
@@ -1,5 +1,5 @@
 
-static char help[] = "Tests the different MatColoring implementatons.\n\n";
+static char help[] = "Tests the different MatColoring implementations.\n\n";
 
 #include <petscmat.h>
 
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/mat/tests/ex1.c petsc-3.18.5+dfsg1/src/mat/tests/ex1.c
--- petsc-3.18.4+dfsg1/src/mat/tests/ex1.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/mat/tests/ex1.c	2023-02-27 23:11:05.000000000 +0100
@@ -200,7 +200,7 @@
   PetscCall(VecDestroy(&ytmp));
 
   if (qr) {
-    /* setup rectanglar */
+    /* setup rectangular */
     PetscCall(createMatsAndVecs(m, n, nrhs, full, &mat, &RHS, &SOLU, &x, &y, &b));
     PetscCall(VecDuplicate(y, &ytmp));
 
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/mat/tests/ex24.c petsc-3.18.5+dfsg1/src/mat/tests/ex24.c
--- petsc-3.18.4+dfsg1/src/mat/tests/ex24.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/mat/tests/ex24.c	2023-02-27 23:11:05.000000000 +0100
@@ -1,6 +1,6 @@
 
-static char help[] = "Tests the different MatColoring implementatons and ISColoringTestValid() \n\
-                      Modifed from the code contributed by Ali Berk Kahraman. \n\n";
+static char help[] = "Tests the different MatColoring implementations and ISColoringTestValid() \n\
+                      Modified from the code contributed by Ali Berk Kahraman. \n\n";
 #include <petscmat.h>
 
 PetscErrorCode FormJacobian(Mat A)
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/mat/tests/ex42.c petsc-3.18.5+dfsg1/src/mat/tests/ex42.c
--- petsc-3.18.4+dfsg1/src/mat/tests/ex42.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/mat/tests/ex42.c	2023-02-27 23:11:05.000000000 +0100
@@ -61,7 +61,7 @@
 
   /* Create the random Index Sets */
   for (i = 0; i < nd; i++) {
-    /* Skip a few,so that the IS on different procs are diffeent*/
+    /* Skip a few,so that the IS on different procs are different*/
     for (j = 0; j < rank; j++) PetscCall(PetscRandomGetValue(r, &rand));
     PetscCall(PetscRandomGetValue(r, &rand));
     lsize = (PetscInt)(rand * (m / bs));
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/mat/tests/ex72mmio.h petsc-3.18.5+dfsg1/src/mat/tests/ex72mmio.h
--- petsc-3.18.4+dfsg1/src/mat/tests/ex72mmio.h	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/mat/tests/ex72mmio.h	2023-02-27 23:11:05.000000000 +0100
@@ -83,7 +83,7 @@
 
    MM_matrix_typecode: 4-character sequence
 
-                    ojbect      sparse/     data        storage
+                    object      sparse/     data        storage
                                 dense       type        scheme
 
    string position:  [0]        [1]         [2]         [3]
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/mat/tutorials/ex18.c petsc-3.18.5+dfsg1/src/mat/tutorials/ex18.c
--- petsc-3.18.4+dfsg1/src/mat/tutorials/ex18.c	2023-01-31 06:19:48.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/mat/tutorials/ex18.c	2023-02-27 23:11:05.000000000 +0100
@@ -53,7 +53,7 @@
   PetscCall(MatSetSizes(*A, fe->n, fe->n, PETSC_DECIDE, PETSC_DECIDE));
   PetscCall(MatSetFromOptions(*A));
 
-  /* determine for each entry in each element stiffness matrix the global row and colum */
+  /* determine for each entry in each element stiffness matrix the global row and column */
   /* since the element is triangular with piecewise linear basis functions there are three degrees of freedom per element, one for each vertex */
   PetscCall(PetscMalloc2(3 * 3 * fe->Ne, &oor, 3 * 3 * fe->Ne, &ooc));
   for (PetscInt e = 0; e < fe->Ne; e++) {
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/mat/tutorials/ex5cu.cu petsc-3.18.5+dfsg1/src/mat/tutorials/ex5cu.cu
--- petsc-3.18.4+dfsg1/src/mat/tutorials/ex5cu.cu	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/mat/tutorials/ex5cu.cu	2023-02-27 23:11:05.000000000 +0100
@@ -22,7 +22,7 @@
   PetscErrorCode ierr;
 
   for (i = start + my0; i < end + 1; i += inc) {
-    PetscInt    js[] = {i - 1, i}, nn = (i == N) ? 1 : 2; // negative indices are igored but >= N are not, so clip end
+    PetscInt    js[] = {i - 1, i}, nn = (i == N) ? 1 : 2; // negative indices are ignored but >= N are not, so clip end
     PetscScalar values[] = {1, 1, 1, 1};
     ierr                 = MatSetValuesDevice(d_mat, nn, js, nn, js, values, ADD_VALUES);
     if (ierr) assert(0);
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/mat/utils/matstash.c petsc-3.18.5+dfsg1/src/mat/utils/matstash.c
--- petsc-3.18.4+dfsg1/src/mat/utils/matstash.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/mat/utils/matstash.c	2023-02-27 23:11:05.000000000 +0100
@@ -352,7 +352,7 @@
     space->idy[l] = idxn[i];
     /* Now copy over the block of values. Store the values column oriented.
        This enables inserting multiple blocks belonging to a row with a single
-       funtion call */
+       function call */
     array = space->val + bs2 * l;
     vals  = values + idx * bs2 * n + bs * i;
     for (j = 0; j < bs; j++) {
@@ -403,7 +403,7 @@
     space->idy[l] = idxn[i];
     /* Now copy over the block of values. Store the values column oriented.
      This enables inserting multiple blocks belonging to a row with a single
-     funtion call */
+     function call */
     array = space->val + bs2 * l;
     vals  = values + idx * bs2 * n + bs * i;
     for (j = 0; j < bs; j++) {
@@ -779,7 +779,7 @@
   PetscFunctionReturn(0);
 }
 
-/* Callback invoked after target rank has initiatied receive of rendezvous message.
+/* Callback invoked after target rank has initiated receive of rendezvous message.
  * Here we post the main sends.
  */
 static PetscErrorCode MatStashBTSSend_Private(MPI_Comm comm, const PetscMPIInt tag[], PetscMPIInt rankid, PetscMPIInt rank, void *sdata, MPI_Request req[], void *ctx)
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/snes/f90-mod/ftn-auto-interfaces/petscsnesfas.h90 petsc-3.18.5+dfsg1/src/snes/f90-mod/ftn-auto-interfaces/petscsnesfas.h90
--- petsc-3.18.4+dfsg1/src/snes/f90-mod/ftn-auto-interfaces/petscsnesfas.h90	2023-01-31 07:00:50.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/snes/f90-mod/ftn-auto-interfaces/petscsnesfas.h90	2023-02-27 23:28:35.000000000 +0100
@@ -1,11 +1,11 @@
       subroutine SNESFASCreateCoarseVec(a,b,z)
-       import tSNES,tVec
+       import tVec,tSNES
        SNES a ! SNES
        Vec b ! Vec
        PetscErrorCode z
        end subroutine SNESFASCreateCoarseVec
       subroutine SNESFASRestrict(a,b,c,z)
-       import tSNES,tVec
+       import tVec,tSNES
        SNES a ! SNES
        Vec b ! Vec
        Vec c ! Vec
@@ -104,25 +104,25 @@
        PetscErrorCode z
        end subroutine SNESFASCycleGetCorrection
       subroutine SNESFASCycleGetInterpolation(a,b,z)
-       import tSNES,tMat
+       import tMat,tSNES
        SNES a ! SNES
        Mat b ! Mat
        PetscErrorCode z
        end subroutine SNESFASCycleGetInterpolation
       subroutine SNESFASCycleGetRestriction(a,b,z)
-       import tSNES,tMat
+       import tMat,tSNES
        SNES a ! SNES
        Mat b ! Mat
        PetscErrorCode z
        end subroutine SNESFASCycleGetRestriction
       subroutine SNESFASCycleGetInjection(a,b,z)
-       import tSNES,tMat
+       import tMat,tSNES
        SNES a ! SNES
        Mat b ! Mat
        PetscErrorCode z
        end subroutine SNESFASCycleGetInjection
       subroutine SNESFASCycleGetRScale(a,b,z)
-       import tSNES,tVec
+       import tVec,tSNES
        SNES a ! SNES
        Vec b ! Vec
        PetscErrorCode z
@@ -134,49 +134,49 @@
        PetscErrorCode z
        end subroutine SNESFASCycleIsFine
       subroutine SNESFASSetInterpolation(a,b,c,z)
-       import tSNES,tMat
+       import tMat,tSNES
        SNES a ! SNES
        PetscInt b ! PetscInt
        Mat c ! Mat
        PetscErrorCode z
        end subroutine SNESFASSetInterpolation
       subroutine SNESFASGetInterpolation(a,b,c,z)
-       import tSNES,tMat
+       import tMat,tSNES
        SNES a ! SNES
        PetscInt b ! PetscInt
        Mat c ! Mat
        PetscErrorCode z
        end subroutine SNESFASGetInterpolation
       subroutine SNESFASSetRestriction(a,b,c,z)
-       import tSNES,tMat
+       import tMat,tSNES
        SNES a ! SNES
        PetscInt b ! PetscInt
        Mat c ! Mat
        PetscErrorCode z
        end subroutine SNESFASSetRestriction
       subroutine SNESFASGetRestriction(a,b,c,z)
-       import tSNES,tMat
+       import tMat,tSNES
        SNES a ! SNES
        PetscInt b ! PetscInt
        Mat c ! Mat
        PetscErrorCode z
        end subroutine SNESFASGetRestriction
       subroutine SNESFASSetInjection(a,b,c,z)
-       import tSNES,tMat
+       import tMat,tSNES
        SNES a ! SNES
        PetscInt b ! PetscInt
        Mat c ! Mat
        PetscErrorCode z
        end subroutine SNESFASSetInjection
       subroutine SNESFASGetInjection(a,b,c,z)
-       import tSNES,tMat
+       import tMat,tSNES
        SNES a ! SNES
        PetscInt b ! PetscInt
        Mat c ! Mat
        PetscErrorCode z
        end subroutine SNESFASGetInjection
       subroutine SNESFASSetRScale(a,b,c,z)
-       import tSNES,tVec
+       import tVec,tSNES
        SNES a ! SNES
        PetscInt b ! PetscInt
        Vec c ! Vec
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/snes/f90-mod/ftn-auto-interfaces/petscsnes.h90 petsc-3.18.5+dfsg1/src/snes/f90-mod/ftn-auto-interfaces/petscsnes.h90
--- petsc-3.18.4+dfsg1/src/snes/f90-mod/ftn-auto-interfaces/petscsnes.h90	2023-01-31 07:00:50.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/snes/f90-mod/ftn-auto-interfaces/petscsnes.h90	2023-02-27 23:28:35.000000000 +0100
@@ -57,7 +57,7 @@
        PetscErrorCode z
        end subroutine SNESMultiblockSetFields
       subroutine SNESMultiblockSetIS(a,b,c,z)
-       import tSNES,tIS
+       import tIS,tSNES
        SNES a ! SNES
        character b (*) ! char
        IS c ! IS
@@ -88,7 +88,7 @@
        PetscErrorCode z
        end subroutine SNESNASMGetType
       subroutine SNESNASMSetSubdomains(a,b,c,d,e,f,z)
-       import tSNES,tVecScatter
+       import tVecScatter,tSNES
        SNES a ! SNES
        PetscInt b ! PetscInt
        SNES c (*) ! SNES
@@ -98,7 +98,7 @@
        PetscErrorCode z
        end subroutine SNESNASMSetSubdomains
       subroutine SNESNASMGetSubdomains(a,b,c,d,e,f,z)
-       import tSNES,tVecScatter
+       import tVecScatter,tSNES
        SNES a ! SNES
        PetscInt b ! PetscInt
        SNES c (*) ! SNES
@@ -108,7 +108,7 @@
        PetscErrorCode z
        end subroutine SNESNASMGetSubdomains
       subroutine SNESNASMGetSubdomainVecs(a,b,c,d,e,f,z)
-       import tSNES,tVec
+       import tVec,tSNES
        SNES a ! SNES
        PetscInt b ! PetscInt
        Vec c ! Vec
@@ -149,7 +149,7 @@
        PetscErrorCode z
        end subroutine SNESNASMGetNumber
       subroutine SNESNASMSetWeight(a,b,z)
-       import tSNES,tVec
+       import tVec,tSNES
        SNES a ! SNES
        Vec b ! Vec
        PetscErrorCode z
@@ -203,20 +203,20 @@
        PetscErrorCode z
        end subroutine SNESQNSetType
       subroutine SNESVISetVariableBounds(a,b,c,z)
-       import tSNES,tVec
+       import tVec,tSNES
        SNES a ! SNES
        Vec b ! Vec
        Vec c ! Vec
        PetscErrorCode z
        end subroutine SNESVISetVariableBounds
       subroutine SNESVIGetInactiveSet(a,b,z)
-       import tSNES,tIS
+       import tIS,tSNES
        SNES a ! SNES
        IS b ! IS
        PetscErrorCode z
        end subroutine SNESVIGetInactiveSet
       subroutine DMSetVI(a,b,z)
-       import tIS,tDM
+       import tDM,tIS
        DM a ! DM
        IS b ! IS
        PetscErrorCode z
@@ -382,7 +382,7 @@
        PetscErrorCode z
        end subroutine SNESSetCountersReset
       subroutine SNESSetKSP(a,b,z)
-       import tSNES,tKSP
+       import tKSP,tSNES
        SNES a ! SNES
        KSP b ! KSP
        PetscErrorCode z
@@ -430,28 +430,28 @@
        PetscErrorCode z
        end subroutine SNESGetSolutionNorm
       subroutine SNESComputeFunction(a,b,c,z)
-       import tSNES,tVec
+       import tVec,tSNES
        SNES a ! SNES
        Vec b ! Vec
        Vec c ! Vec
        PetscErrorCode z
        end subroutine SNESComputeFunction
       subroutine SNESComputeMFFunction(a,b,c,z)
-       import tSNES,tVec
+       import tVec,tSNES
        SNES a ! SNES
        Vec b ! Vec
        Vec c ! Vec
        PetscErrorCode z
        end subroutine SNESComputeMFFunction
       subroutine SNESComputeNGS(a,b,c,z)
-       import tSNES,tVec
+       import tVec,tSNES
        SNES a ! SNES
        Vec b ! Vec
        Vec c ! Vec
        PetscErrorCode z
        end subroutine SNESComputeNGS
       subroutine SNESComputeJacobian(a,b,c,d,z)
-       import tSNES,tMat,tVec
+       import tMat,tVec,tSNES
        SNES a ! SNES
        Vec b ! Vec
        Mat c ! Mat
@@ -610,26 +610,26 @@
        PetscErrorCode z
        end subroutine SNESConvergedReasonViewFromOptions
       subroutine SNESSolve(a,b,c,z)
-       import tSNES,tVec
+       import tVec,tSNES
        SNES a ! SNES
        Vec b ! Vec
        Vec c ! Vec
        PetscErrorCode z
        end subroutine SNESSolve
       subroutine SNESSetSolution(a,b,z)
-       import tSNES,tVec
+       import tVec,tSNES
        SNES a ! SNES
        Vec b ! Vec
        PetscErrorCode z
        end subroutine SNESSetSolution
       subroutine SNESGetSolution(a,b,z)
-       import tSNES,tVec
+       import tVec,tSNES
        SNES a ! SNES
        Vec b ! Vec
        PetscErrorCode z
        end subroutine SNESGetSolution
       subroutine SNESGetSolutionUpdate(a,b,z)
-       import tSNES,tVec
+       import tVec,tSNES
        SNES a ! SNES
        Vec b ! Vec
        PetscErrorCode z
@@ -671,19 +671,19 @@
        PetscErrorCode z
        end subroutine SNESKSPGetParametersEW
       subroutine SNESGetKSP(a,b,z)
-       import tSNES,tKSP
+       import tKSP,tSNES
        SNES a ! SNES
        KSP b ! KSP
        PetscErrorCode z
        end subroutine SNESGetKSP
       subroutine SNESSetDM(a,b,z)
-       import tSNES,tDM
+       import tDM,tSNES
        SNES a ! SNES
        DM b ! DM
        PetscErrorCode z
        end subroutine SNESSetDM
       subroutine SNESGetDM(a,b,z)
-       import tSNES,tDM
+       import tDM,tSNES
        SNES a ! SNES
        DM b ! DM
        PetscErrorCode z
@@ -731,7 +731,7 @@
        PetscErrorCode z
        end subroutine SNESGetLineSearch
       subroutine SNESApplyNPC(a,b,c,d,z)
-       import tSNES,tVec
+       import tVec,tSNES
        SNES a ! SNES
        Vec b ! Vec
        Vec c ! Vec
@@ -739,7 +739,7 @@
        PetscErrorCode z
        end subroutine SNESApplyNPC
       subroutine SNESGetNPCFunction(a,b,c,z)
-       import tSNES,tVec
+       import tVec,tSNES
        SNES a ! SNES
        Vec b ! Vec
        PetscReal c ! PetscReal
@@ -945,7 +945,7 @@
        PetscErrorCode z
        end subroutine SNESLineSearchSetReason
       subroutine MatSNESMFGetSNES(a,b,z)
-       import tSNES,tMat
+       import tMat,tSNES
        Mat a ! Mat
        SNES b ! SNES
        PetscErrorCode z
@@ -963,7 +963,7 @@
        PetscErrorCode z
        end subroutine MatSNESMFGetReuseBase
       subroutine MatCreateSNESMF(a,b,z)
-       import tSNES,tMat
+       import tMat,tSNES
        SNES a ! SNES
        Mat b ! Mat
        PetscErrorCode z
@@ -979,7 +979,7 @@
        PetscErrorCode z
        end subroutine PetscConvEstSetFromOptions
       subroutine PetscConvEstView(a,b,z)
-       import tPetscViewer,tPetscConvEst
+       import tPetscConvEst,tPetscViewer
        PetscConvEst a ! PetscConvEst
        PetscViewer b ! PetscViewer
        PetscErrorCode z
@@ -1014,7 +1014,7 @@
        PetscErrorCode z
        end subroutine PetscConvEstGetConvRate
       subroutine PetscConvEstRateView(a,b,c,z)
-       import tPetscViewer,tPetscConvEst
+       import tPetscConvEst,tPetscViewer
        PetscConvEst a ! PetscConvEst
        PetscReal b (*) ! PetscReal
        PetscViewer c ! PetscViewer
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/snes/impls/fas/fasgalerkin.c petsc-3.18.5+dfsg1/src/snes/impls/fas/fasgalerkin.c
--- petsc-3.18.4+dfsg1/src/snes/impls/fas/fasgalerkin.c	2022-12-28 20:00:16.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/snes/impls/fas/fasgalerkin.c	2023-02-27 23:11:05.000000000 +0100
@@ -65,7 +65,7 @@
 .  F - output vector
 
    Note:
-   The Galerkin FAS function evalutation is defined as
+   The Galerkin FAS function evaluation is defined as
 $  F^l(x^l) = I^l_0 F^0(P^0_l x^l)
 
    Level: developer
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/snes/impls/ngmres/snesngmres.c petsc-3.18.5+dfsg1/src/snes/impls/ngmres/snesngmres.c
--- petsc-3.18.4+dfsg1/src/snes/impls/ngmres/snesngmres.c	2022-12-28 20:00:16.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/snes/impls/ngmres/snesngmres.c	2023-02-27 23:11:05.000000000 +0100
@@ -384,7 +384,7 @@
 +   snes - the iterative context
 -   rtype - restart type
 
-    Options Databas Keys:
+    Options Database Keys:
 +   -snes_ngmres_restart_type<difference,periodic,none> - set the restart type
 -   -snes_ngmres_restart[30] - sets the number of iterations before restart for periodic
 
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/snes/impls/ntrdc/ntrdcimpl.h petsc-3.18.5+dfsg1/src/snes/impls/ntrdc/ntrdcimpl.h
--- petsc-3.18.4+dfsg1/src/snes/impls/ntrdc/ntrdcimpl.h	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/snes/impls/ntrdc/ntrdcimpl.h	2023-02-27 23:11:05.000000000 +0100
@@ -28,11 +28,11 @@
   /* PetscReal      *inorms;         Heeho's new TR-dogleg, stores largest inf norm */
   /* PetscInt       bs;              Heeho's new TR-dogleg, solution vector block size */
 
-  PetscReal sigma;                 /* used to detemine termination */
+  PetscReal sigma;                 /* used to determine termination */
   PetscBool itflag;                /* flag for convergence testing */
   PetscBool use_cauchy;            /* flag to use/not use Cauchy step and direction (S&D) */
   PetscBool auto_scale_multiphase; /* flag to use/not use autoscaling for Cauchy S&D for multiphase*/
-  PetscReal auto_scale_max;        /* max cap value for auto-scaling muste be > 1 */
+  PetscReal auto_scale_max;        /* max cap value for auto-scaling must be > 1 */
   PetscBool rho_satisfied;         /* flag for whether inner iteration satisfied rho */
   PetscReal rnorm0, ttol;          /* used for KSP convergence test */
   PetscErrorCode (*precheck)(SNES, Vec, Vec, PetscBool *, void *);
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/snes/impls/tr/trimpl.h petsc-3.18.5+dfsg1/src/snes/impls/tr/trimpl.h
--- petsc-3.18.4+dfsg1/src/snes/impls/tr/trimpl.h	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/snes/impls/tr/trimpl.h	2023-02-27 23:11:05.000000000 +0100
@@ -17,7 +17,7 @@
   PetscReal delta1;       /* used to compute trust region parameter */
   PetscReal delta2;       /* used to compute trust region parameter */
   PetscReal delta3;       /* used to compute trust region parameter */
-  PetscReal sigma;        /* used to detemine termination */
+  PetscReal sigma;        /* used to determine termination */
   PetscBool itflag;       /* flag for convergence testing */
   PetscReal rnorm0, ttol; /* used for KSP convergence test */
   PetscErrorCode (*precheck)(SNES, Vec, Vec, PetscBool *, void *);
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/snes/tests/ex1.c petsc-3.18.5+dfsg1/src/snes/tests/ex1.c
--- petsc-3.18.4+dfsg1/src/snes/tests/ex1.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/snes/tests/ex1.c	2023-02-27 23:11:05.000000000 +0100
@@ -392,7 +392,7 @@
 */
 PetscErrorCode FormJacobian(SNES snes, Vec X, Mat J, Mat jac, void *ptr)
 {
-  AppCtx            *user = (AppCtx *)ptr; /* user-defined applicatin context */
+  AppCtx            *user = (AppCtx *)ptr; /* user-defined application context */
   PetscInt           i, j, row, mx, my, col[5];
   PetscScalar        two = 2.0, one = 1.0, lambda, v[5], sc;
   const PetscScalar *x;
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/snes/tutorials/ex10d/ex10.c petsc-3.18.5+dfsg1/src/snes/tutorials/ex10d/ex10.c
--- petsc-3.18.4+dfsg1/src/snes/tutorials/ex10d/ex10.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/snes/tutorials/ex10d/ex10.c	2023-02-27 23:11:05.000000000 +0100
@@ -591,7 +591,7 @@
   /*
     Now compute the f(x). As mentioned earlier, the computed Laplacian is just an
     approximate one chosen for illustrative purpose only. Another point to notice
-    is that this is a local (completly parallel) calculation. In practical application
+    is that this is a local (completely parallel) calculation. In practical application
     codes, function calculation time is a dominat portion of the overall execution time.
   */
   for (i = 0; i < Nvlocal; i++) {
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/snes/tutorials/ex12.c petsc-3.18.5+dfsg1/src/snes/tutorials/ex12.c
--- petsc-3.18.4+dfsg1/src/snes/tutorials/ex12.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/snes/tutorials/ex12.c	2023-02-27 23:11:05.000000000 +0100
@@ -436,7 +436,7 @@
   PetscCall(PetscOptionsEList("-bc_type", "Type of boundary condition", "ex12.c", bcTypes, 3, bcTypes[options->bcType], &bc, NULL));
   options->bcType = (BCType)bc;
   coeff           = options->variableCoefficient;
-  PetscCall(PetscOptionsEList("-variable_coefficient", "Type of variable coefficent", "ex12.c", coeffTypes, 8, coeffTypes[options->variableCoefficient], &coeff, NULL));
+  PetscCall(PetscOptionsEList("-variable_coefficient", "Type of variable coefficient", "ex12.c", coeffTypes, 8, coeffTypes[options->variableCoefficient], &coeff, NULL));
   options->variableCoefficient = (CoeffType)coeff;
 
   PetscCall(PetscOptionsBool("-field_bc", "Use a field representation for the BC", "ex12.c", options->fieldBC, &options->fieldBC, NULL));
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/snes/tutorials/ex13.c petsc-3.18.5+dfsg1/src/snes/tutorials/ex13.c
--- petsc-3.18.4+dfsg1/src/snes/tutorials/ex13.c	2022-12-28 20:00:16.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/snes/tutorials/ex13.c	2023-02-27 23:11:05.000000000 +0100
@@ -14,7 +14,7 @@
   PetscBool spectral;    /* Look at the spectrum along planes in the solution */
   PetscBool shear;       /* Shear the domain */
   PetscBool adjoint;     /* Solve the adjoint problem */
-  PetscBool homogeneous; /* Use homogeneous boudnary conditions */
+  PetscBool homogeneous; /* Use homogeneous boundary conditions */
   PetscBool viewError;   /* Output the solution error */
 } AppCtx;
 
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/snes/tutorials/ex16.c petsc-3.18.5+dfsg1/src/snes/tutorials/ex16.c
--- petsc-3.18.4+dfsg1/src/snes/tutorials/ex16.c	2022-11-28 17:22:18.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/snes/tutorials/ex16.c	2023-02-27 23:11:05.000000000 +0100
@@ -12,7 +12,7 @@
     F is the deformation gradient, and S is the second Piola-Kirchhoff tensor from the Saint Venant-Kirchhoff model of
     hyperelasticity.  \Omega is a (arc) angle subsection of a cylindrical shell of thickness (height), inner radius
     (rad) and width (width).  The problem is discretized using Q1 finite elements on a logically structured grid.
-    Homogenous Dirichlet boundary conditions are applied at the centers of the ends of the sphere.
+    Homogeneous Dirichlet boundary conditions are applied at the centers of the ends of the sphere.
 
     This example is tunable with the following options:
     -rad : the radius of the circle
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/snes/tutorials/ex19.c petsc-3.18.5+dfsg1/src/snes/tutorials/ex19.c
--- petsc-3.18.4+dfsg1/src/snes/tutorials/ex19.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/snes/tutorials/ex19.c	2023-02-27 23:11:05.000000000 +0100
@@ -4,7 +4,7 @@
 static char help[] = "Nonlinear driven cavity with multigrid in 2d.\n \
   \n\
 The 2D driven cavity problem is solved in a velocity-vorticity formulation.\n\
-The flow can be driven with the lid or with bouyancy or both:\n\
+The flow can be driven with the lid or with buoyancy or both:\n\
   -lidvelocity &ltlid&gt, where &ltlid&gt = dimensionless velocity of lid\n\
   -grashof &ltgr&gt, where &ltgr&gt = dimensionless temperature gradent\n\
   -prandtl &ltpr&gt, where &ltpr&gt = dimensionless thermal/momentum diffusity ratio\n\
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/snes/tutorials/ex28.c petsc-3.18.5+dfsg1/src/snes/tutorials/ex28.c
--- petsc-3.18.4+dfsg1/src/snes/tutorials/ex28.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/snes/tutorials/ex28.c	2023-02-27 23:11:05.000000000 +0100
@@ -470,10 +470,30 @@
       nsize: 3
       args: -u_da_grid_x 20 -snes_converged_reason -snes_monitor_short -problem_type 2
 
-   test:
+   testset:
       suffix: 3
       nsize: 3
-      args: -u_da_grid_x 20 -snes_converged_reason -snes_monitor_short -ksp_monitor_short -problem_type 2 -snes_mf_operator -pack_dm_mat_type {{aij nest}} -pc_type fieldsplit -pc_fieldsplit_dm_splits -pc_fieldsplit_type additive -fieldsplit_u_ksp_type gmres -fieldsplit_k_pc_type jacobi
+      output_file: output/ex28_3.out
+      args: -u_da_grid_x 20 -snes_converged_reason -snes_monitor_short -ksp_monitor_short -problem_type 2 -snes_mf_operator  -pc_type fieldsplit -pc_fieldsplit_dm_splits -pc_fieldsplit_type additive -fieldsplit_u_ksp_type gmres -fieldsplit_k_pc_type jacobi
+
+      test:
+        suffix: std
+        args: -pack_dm_mat_type {{aij nest}}
+
+      test:
+        suffix: cuda
+        requires: cuda
+        args: -pack_dm_mat_type aijcusparse -pack_dm_vec_type cuda
+
+      test:
+        suffix: hip
+        requires: hip
+        args: -pack_dm_mat_type aijhipsparse -pack_dm_vec_type hip
+
+      test:
+        suffix: kok
+        requires: kokkos_kernels
+        args: -pack_dm_mat_type aijkokkos -pack_dm_vec_type kokkos
 
    test:
       suffix: 4
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/snes/tutorials/ex30.c petsc-3.18.5+dfsg1/src/snes/tutorials/ex30.c
--- petsc-3.18.4+dfsg1/src/snes/tutorials/ex30.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/snes/tutorials/ex30.c	2023-02-27 23:11:05.000000000 +0100
@@ -78,7 +78,7 @@
   PetscReal A, n, Estar, Vstar;
 } ViscParam;
 
-typedef struct { /* physical and miscelaneous parameters */
+typedef struct { /* physical and miscellaneous parameters */
   PetscReal width, depth, scaled_width, scaled_depth, peclet, potentialT;
   PetscReal slab_dip, slab_age, slab_velocity, kappa, z_scale;
   PetscReal c, d, sb, cb, skt, visc_cutoff, lid_age, eta0, continuation;
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/snes/tutorials/ex3.c petsc-3.18.5+dfsg1/src/snes/tutorials/ex3.c
--- petsc-3.18.4+dfsg1/src/snes/tutorials/ex3.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/snes/tutorials/ex3.c	2023-02-27 23:11:05.000000000 +0100
@@ -68,7 +68,7 @@
 } StepCheckCtx;
 
 typedef struct {
-  PetscInt its0; /* num of prevous outer KSP iterations */
+  PetscInt its0; /* num of previous outer KSP iterations */
 } SetSubKSPCtx;
 
 int main(int argc, char **argv)
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/snes/tutorials/ex6.c petsc-3.18.5+dfsg1/src/snes/tutorials/ex6.c
--- petsc-3.18.4+dfsg1/src/snes/tutorials/ex6.c	2022-11-28 17:22:18.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/snes/tutorials/ex6.c	2023-02-27 23:11:05.000000000 +0100
@@ -94,12 +94,12 @@
   */
   PetscCall(PetscViewerASCIIGetStdout(comm, &monP.viewer));
   /* Just make sure we can not repeat adding the same function
-   * PETSc will be able to igore the repeated function
+   * PETSc will be able to ignore the repeated function
    */
   for (i = 0; i < 4; i++) PetscCall(SNESConvergedReasonViewSet(snes, MySNESConvergedReasonView, &monP, 0));
   PetscCall(SNESGetKSP(snes, &ksp));
   /* Just make sure we can not repeat adding the same function
-   * PETSc will be able to igore the repeated function
+   * PETSc will be able to ignore the repeated function
    */
   for (i = 0; i < 4; i++) PetscCall(KSPConvergedReasonViewSet(ksp, MyKSPConvergedReasonView, &monP, 0));
   /*
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/snes/tutorials/ex73f90t.F90 petsc-3.18.5+dfsg1/src/snes/tutorials/ex73f90t.F90
--- petsc-3.18.4+dfsg1/src/snes/tutorials/ex73f90t.F90	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/snes/tutorials/ex73f90t.F90	2023-02-27 23:11:05.000000000 +0100
@@ -242,7 +242,7 @@
       PetscCallA(MatAssemblyEnd(Cmat,MAT_FINAL_ASSEMBLY,ierr))
 
 ! - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-!  Set D (indentity)
+!  Set D (identity)
 ! - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
       do 30 j=lamlow,lamhigh-1
          row(1) = j
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/sys/classes/bag/bag.c petsc-3.18.5+dfsg1/src/sys/classes/bag/bag.c
--- petsc-3.18.4+dfsg1/src/sys/classes/bag/bag.c	2022-12-28 20:00:16.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/sys/classes/bag/bag.c	2023-02-27 23:11:05.000000000 +0100
@@ -664,7 +664,7 @@
     while (nitem) {
       if (nitem->dtype == PETSC_CHAR) {
         char *value             = (char *)(((char *)bag) + nitem->offset);
-        char  tmp               = value[nitem->msize - 1]; /* special handling for fortran chars wihout null terminator */
+        char  tmp               = value[nitem->msize - 1]; /* special handling for fortran chars without null terminator */
         value[nitem->msize - 1] = 0;
         PetscCall(PetscViewerASCIIPrintf(view, "  %s = %s; %s\n", nitem->name, value, nitem->help));
         value[nitem->msize - 1] = tmp;
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/sys/classes/draw/impls/image/drawimage.h petsc-3.18.5+dfsg1/src/sys/classes/draw/impls/image/drawimage.h
--- petsc-3.18.4+dfsg1/src/sys/classes/draw/impls/image/drawimage.h	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/sys/classes/draw/impls/image/drawimage.h	2023-02-27 23:11:05.000000000 +0100
@@ -151,7 +151,7 @@
   }
 #undef SWAP
 
-  /* This code is decidely non-optimal;
+  /* This code is decidedly non-optimal;
    it is intended to be a start at an implementation */
 
   t2_t1   = t_2 - t_1;
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/sys/classes/draw/impls/tikz/tikz.c petsc-3.18.5+dfsg1/src/sys/classes/draw/impls/tikz/tikz.c
--- petsc-3.18.4+dfsg1/src/sys/classes/draw/impls/tikz/tikz.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/sys/classes/draw/impls/tikz/tikz.c	2023-02-27 23:11:05.000000000 +0100
@@ -74,7 +74,7 @@
   PetscBool       written;
 
   PetscFunctionBegin;
-  /* often PETSc generates unneeded clears, we want avoid creating empy pictures for them */
+  /* often PETSc generates unneeded clears, we want avoid creating empty pictures for them */
   PetscCallMPI(MPI_Allreduce(&win->written, &written, 1, MPIU_BOOL, MPI_LOR, PetscObjectComm((PetscObject)(draw))));
   if (!written) PetscFunctionReturn(0);
   PetscCall(PetscFPrintf(PetscObjectComm((PetscObject)draw), win->fd, TikZ_END_FRAME));
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/sys/classes/draw/impls/win32/win32draw.c petsc-3.18.5+dfsg1/src/sys/classes/draw/impls/win32/win32draw.c
--- petsc-3.18.4+dfsg1/src/sys/classes/draw/impls/win32/win32draw.c	2023-01-31 06:19:48.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/sys/classes/draw/impls/win32/win32draw.c	2023-02-27 23:11:05.000000000 +0100
@@ -34,7 +34,7 @@
 unsigned char GreenMap[] = {255, 0, 0, 255, 255, 0, 0, 255, 139, 165, 130, 42, 182, 127, 190, 255, 215, 162, 197, 246, 105, 205, 206, 100, 0, 164, 245, 224, 17, 191, 205, 240};
 unsigned char BlueMap[]  = {255, 0, 0, 0, 255, 255, 225, 212, 34, 0, 238, 42, 193, 80, 190, 0, 0, 173, 205, 143, 105, 50, 235, 0, 128, 96, 255, 230, 120, 216, 50, 245};
 
-/* Foward declarations of functions included in this code module: */
+/* Forward declarations of functions included in this code module: */
 LRESULT CALLBACK      PetscWndProc(HWND, UINT, WPARAM, LPARAM);
 static PetscErrorCode TranslateColor_Win32(PetscDraw, int);
 static PetscErrorCode AverageColorRectangle_Win32(PetscDraw, int, int, int, int);
@@ -56,7 +56,7 @@
   windraw->node->dbstore         = SelectObject(windraw->node->DoubleBuffer, windraw->node->DoubleBufferBit);
   /* Fill background of second buffer */
   ExtFloodFill(windraw->node->DoubleBuffer, 0, 0, COLOR_WINDOW, FLOODFILLBORDER);
-  /* Copy current buffer into seconf buffer and set window data as double buffered */
+  /* Copy current buffer into second buffer and set window data as double buffered */
   BitBlt(windraw->node->DoubleBuffer, 0, 0, windraw->w, windraw->h, windraw->node->Buffer, 0, 0, SRCCOPY);
 
   windraw->node->DoubleBuffered = PETSC_TRUE;
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/sys/classes/draw/impls/x/xcolor.c petsc-3.18.5+dfsg1/src/sys/classes/draw/impls/x/xcolor.c
--- petsc-3.18.4+dfsg1/src/sys/classes/draw/impls/x/xcolor.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/sys/classes/draw/impls/x/xcolor.c	2023-02-27 23:11:05.000000000 +0100
@@ -210,7 +210,7 @@
     created.
 
     The next layer is the colormap.  The installation of colormaps is
-    the buisness of the window manager (in some distant later release).
+    the business of the window manager (in some distant later release).
 */
 
 /*
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/sys/classes/draw/impls/x/xops.c petsc-3.18.5+dfsg1/src/sys/classes/draw/impls/x/xops.c
--- petsc-3.18.4+dfsg1/src/sys/classes/draw/impls/x/xops.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/sys/classes/draw/impls/x/xops.c	2023-02-27 23:11:05.000000000 +0100
@@ -670,7 +670,7 @@
   /* initialize the display size */
   if (!xmax) {
     PetscCall(PetscDrawXGetDisplaySize_Private(draw->display, &xmax, &ymax, &has_display));
-    /* if some processors fail on this and others succed then this is a problem ! */
+    /* if some processors fail on this and others succeed then this is a problem ! */
     if (!has_display) {
       (*PetscErrorPrintf)("PETSc unable to use X windows\nproceeding without graphics\n");
       PetscCall(PetscDrawSetType(draw, PETSC_DRAW_NULL));
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/sys/classes/draw/impls/x/xtone.c petsc-3.18.5+dfsg1/src/sys/classes/draw/impls/x/xtone.c
--- petsc-3.18.4+dfsg1/src/sys/classes/draw/impls/x/xtone.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/sys/classes/draw/impls/x/xtone.c	2023-02-27 23:11:05.000000000 +0100
@@ -51,7 +51,7 @@
     SWAP(t2, t3);
     SWAP(x2, x3);
   }
-  /* This code is decidely non-optimal; it is intended to be a start at
+  /* This code is decidedly non-optimal; it is intended to be a start at
    an implementation */
 
   if (y2 != y_1) R_y2_y_1 = 1.0 / ((double)(y2 - y_1));
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/sys/classes/draw/utils/axisc.c petsc-3.18.5+dfsg1/src/sys/classes/draw/utils/axisc.c
--- petsc-3.18.4+dfsg1/src/sys/classes/draw/utils/axisc.c	2022-12-28 20:00:16.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/sys/classes/draw/utils/axisc.c	2023-02-27 23:11:05.000000000 +0100
@@ -277,7 +277,7 @@
   PetscDrawCollectiveBegin(draw);
   if (rank) goto finally;
 
-  /* get cannonical string size */
+  /* get canonical string size */
   PetscCall(PetscDrawSetCoordinates(draw, 0, 0, 1, 1));
   PetscCall(PetscDrawStringGetSize(draw, &tw, &th));
   /* lower spacing */
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/sys/classes/draw/utils/ftn-auto/makefile petsc-3.18.5+dfsg1/src/sys/classes/draw/utils/ftn-auto/makefile
--- petsc-3.18.4+dfsg1/src/sys/classes/draw/utils/ftn-auto/makefile	2023-01-31 07:00:49.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/sys/classes/draw/utils/ftn-auto/makefile	2023-02-27 23:28:33.000000000 +0100
@@ -4,7 +4,7 @@
 
 CFLAGS   =
 FFLAGS   =
-SOURCEC  = axiscf.c barsf.c dscatterf.c histsf.c lgf.c lgcf.c
+SOURCEC  = barsf.c dscatterf.c histsf.c lgf.c lgcf.c axiscf.c
 SOURCEF  =
 SOURCEH  = 
 DIRS     =
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/sys/classes/random/impls/sprng/sprng.c petsc-3.18.5+dfsg1/src/sys/classes/random/impls/sprng/sprng.c
--- petsc-3.18.4+dfsg1/src/sys/classes/random/impls/sprng/sprng.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/sys/classes/random/impls/sprng/sprng.c	2023-02-27 23:11:05.000000000 +0100
@@ -50,7 +50,7 @@
 };
 
 /*MC
-   PETSCSPRNG - access to the publically available random number generator sprng
+   PETSCSPRNG - access to the publicly available random number generator sprng
 
    Options Database Keys:
 . -random_type <rand,rand48,sprng> - select the random number generator at runtime
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/sys/classes/random/interface/ftn-auto/randomcf.c petsc-3.18.5+dfsg1/src/sys/classes/random/interface/ftn-auto/randomcf.c
--- petsc-3.18.4+dfsg1/src/sys/classes/random/interface/ftn-auto/randomcf.c	2023-01-31 07:00:49.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/sys/classes/random/interface/ftn-auto/randomcf.c	2023-02-27 23:28:33.000000000 +0100
@@ -54,7 +54,6 @@
 *__ierr = PetscRandomSetFromOptions(
 	(PetscRandom)PetscToPointer((rnd) ));
 }
-
 PETSC_EXTERN void  petscrandomcreate_(MPI_Fint * comm,PetscRandom *r, int *__ierr)
 {
 *__ierr = PetscRandomCreate(
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/sys/classes/random/interface/randomc.c petsc-3.18.5+dfsg1/src/sys/classes/random/interface/randomc.c
--- petsc-3.18.4+dfsg1/src/sys/classes/random/interface/randomc.c	2022-12-28 20:00:16.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/sys/classes/random/interface/randomc.c	2023-02-27 23:11:05.000000000 +0100
@@ -148,7 +148,7 @@
 . rnd - The random number generator context
 
   Options Database Keys:
-+ -random_seed <integer> - provide a seed to the random number generater
++ -random_seed <integer> - provide a seed to the random number generator
 - -random_no_imaginary_part - makes the imaginary part of the random number zero, this is useful when you want the
                               same code to produce the same result when run with real numbers or complex numbers for regression testing purposes
 
@@ -292,7 +292,7 @@
 
    Collective
 
-   Input Parameters:
+   Input Parameter:
 .  comm - MPI communicator
 
    Output Parameter:
@@ -306,7 +306,7 @@
    This is only a primitive "parallel" random number generator, it should NOT
    be used for sophisticated parallel Monte Carlo methods since it will very likely
    not have the correct statistics across processors. You can provide your own
-   parallel generator using PetscRandomRegister();
+   parallel generator using `PetscRandomRegister()`;
 
    If you create a `PetscRandom()` using `PETSC_COMM_SELF` on several processors then
    the SAME random numbers will be generated on all those processors. Use `PETSC_COMM_WORLD`
@@ -326,7 +326,6 @@
 .seealso: `PetscRandomSetType()`, `PetscRandomGetValue()`, `PetscRandomGetValueReal()`, `PetscRandomSetInterval()`,
           `PetscRandomDestroy()`, `VecSetRandom()`, `PetscRandomType`, `PetscRandom`
 @*/
-
 PetscErrorCode PetscRandomCreate(MPI_Comm comm, PetscRandom *r)
 {
   PetscRandom rr;
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/sys/classes/random/tests/ex3.c petsc-3.18.5+dfsg1/src/sys/classes/random/tests/ex3.c
--- petsc-3.18.4+dfsg1/src/sys/classes/random/tests/ex3.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/sys/classes/random/tests/ex3.c	2023-02-27 23:11:05.000000000 +0100
@@ -99,7 +99,7 @@
 
   PetscCallMPI(MPI_Allreduce(MPI_IN_PLACE, &Y, 1, MPIU_INT, MPI_SUM, MPI_COMM_WORLD));
   PetscCall(PoissonTailProbability(N * lambda, Y, &p));
-  PetscCall(PetscPrintf(PETSC_COMM_WORLD, "%" PetscInt_FMT " total collisions counted: that many or more should occur with probabilty %g.\n", Y, (double)p));
+  PetscCall(PetscPrintf(PETSC_COMM_WORLD, "%" PetscInt_FMT " total collisions counted: that many or more should occur with probability %g.\n", Y, (double)p));
 
   PetscCall(PetscFree(X));
   PetscCall(PetscRandomDestroy(&random));
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/sys/classes/random/tests/output/ex3_1.out petsc-3.18.5+dfsg1/src/sys/classes/random/tests/output/ex3_1.out
--- petsc-3.18.4+dfsg1/src/sys/classes/random/tests/output/ex3_1.out	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/sys/classes/random/tests/output/ex3_1.out	2023-02-27 23:11:05.000000000 +0100
@@ -3,4 +3,4 @@
 PetscRandom Object: 1 MPI process
   type: rander48
 [0] Random type rander48, seed 305419896
-1 total collisions counted: that many or more should occur with probabilty 0.632121.
+1 total collisions counted: that many or more should occur with probability 0.632121.
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/sys/classes/viewer/impls/glvis/glvis.c petsc-3.18.5+dfsg1/src/sys/classes/viewer/impls/glvis/glvis.c
--- petsc-3.18.4+dfsg1/src/sys/classes/viewer/impls/glvis/glvis.c	2022-12-28 20:00:16.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/sys/classes/viewer/impls/glvis/glvis.c	2023-02-27 23:11:05.000000000 +0100
@@ -216,7 +216,7 @@
 
   PetscFunctionBegin;
   PetscCall(PetscViewerASCIISocketOpen(PETSC_COMM_SELF, socket->name, socket->port, &window));
-  /* if we could not estabilish a connection, we disable the socket viewer on all MPI ranks */
+  /* if we could not establish a connection, we disable the socket viewer on all MPI ranks */
   ldis = !viewer ? PETSC_TRUE : PETSC_FALSE;
   PetscCall(MPIU_Allreduce(&ldis, &dis, 1, MPIU_BOOL, MPI_LOR, PetscObjectComm((PetscObject)viewer)));
   if (dis) {
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/sys/classes/viewer/impls/hdf5/hdf5v.c petsc-3.18.5+dfsg1/src/sys/classes/viewer/impls/hdf5/hdf5v.c
--- petsc-3.18.4+dfsg1/src/sys/classes/viewer/impls/hdf5/hdf5v.c	2022-12-28 20:00:16.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/sys/classes/viewer/impls/hdf5/hdf5v.c	2023-02-27 23:11:05.000000000 +0100
@@ -611,7 +611,7 @@
   FILE_MODE_UPDATE - same as FILE_MODE_APPEND
 .ve
 
-   In case of `FILE_MODE_APPEND` / `FILE_MODE_UPDATE`, any stored object (dataset, attribute) can be selectively ovewritten if the same fully qualified name (/group/path/to/object) is specified.
+   In case of `FILE_MODE_APPEND` / `FILE_MODE_UPDATE`, any stored object (dataset, attribute) can be selectively overwritten if the same fully qualified name (/group/path/to/object) is specified.
 
    This PetscViewer should be destroyed with PetscViewerDestroy().
 
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/sys/classes/viewer/impls/string/stringv.c petsc-3.18.5+dfsg1/src/sys/classes/viewer/impls/string/stringv.c
--- petsc-3.18.4+dfsg1/src/sys/classes/viewer/impls/string/stringv.c	2022-12-28 20:00:16.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/sys/classes/viewer/impls/string/stringv.c	2023-02-27 23:11:05.000000000 +0100
@@ -5,7 +5,7 @@
   char     *string; /* string where info is stored */
   char     *head;   /* pointer to beginning of unused portion */
   size_t    curlen, maxlen;
-  PetscBool ownstring; /* string viewer is responsable for freeing the string */
+  PetscBool ownstring; /* string viewer is responsible for freeing the string */
 } PetscViewer_String;
 
 static PetscErrorCode PetscViewerDestroy_String(PetscViewer viewer)
@@ -189,7 +189,7 @@
   Note:
   The function does not copy the string, it uses it directly therefore you cannot free
   the string until the viewer is destroyed. If you call `PetscViewerStringSetOwnString()` the ownership
-  passes to the viewer and it will be responsable for freeing it. In this case the string must be
+  passes to the viewer and it will be responsible for freeing it. In this case the string must be
   obtained with `PetscMalloc()`.
 
 .seealso: [](sec_viewers), `PetscViewerStringOpen()`, `PETSCVIEWERSTRING`, `PetscViewerStringGetStringRead()`, `PetscViewerStringSPrintf()`,
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/sys/classes/viewer/impls/vtk/vtkv.c petsc-3.18.5+dfsg1/src/sys/classes/viewer/impls/vtk/vtkv.c
--- petsc-3.18.4+dfsg1/src/sys/classes/viewer/impls/vtk/vtkv.c	2022-12-28 20:00:16.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/sys/classes/viewer/impls/vtk/vtkv.c	2023-02-27 23:11:05.000000000 +0100
@@ -25,7 +25,7 @@
 +  viewer - `PETSCVIEWERVTK`
 .  dm - `DM` on which `Vec` lives
 .  PetscViewerVTKWriteFunction - function to write this `Vec`
-.  fieldnum - which field of the DM to write (`PETSC_DEFAULT` if the whle vector should be written)
+.  fieldnum - which field of the DM to write (`PETSC_DEFAULT` if the while vector should be written)
 .  fieldtype - Either `PETSC_VTK_POINT_FIELD` or `PETSC_VTK_CELL_FIELD`
 .  checkdm - whether to check for identical dm arguments as fields are added
 -  vec - `Vec` from which to write
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/sys/dll/dl.c petsc-3.18.5+dfsg1/src/sys/dll/dl.c
--- petsc-3.18.4+dfsg1/src/sys/dll/dl.c	2022-12-28 20:00:16.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/sys/dll/dl.c	2023-02-27 23:11:05.000000000 +0100
@@ -290,7 +290,7 @@
 }
 
 /*@C
-     PetscDLLibraryAppend - Appends another dynamic link library to the seach list, to the end
+     PetscDLLibraryAppend - Appends another dynamic link library to the search list, to the end
                 of the search path.
 
      Collective
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/sys/f90-mod/ftn-auto-interfaces/petscdraw.h90 petsc-3.18.5+dfsg1/src/sys/f90-mod/ftn-auto-interfaces/petscdraw.h90
--- petsc-3.18.4+dfsg1/src/sys/f90-mod/ftn-auto-interfaces/petscdraw.h90	2023-01-31 07:00:50.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/sys/f90-mod/ftn-auto-interfaces/petscdraw.h90	2023-02-27 23:28:35.000000000 +0100
@@ -281,47 +281,6 @@
        PetscDraw a ! PetscDraw
        PetscErrorCode z
        end subroutine PetscDrawSplitViewPort
-      subroutine PetscDrawAxisCreate(a,b,z)
-       PetscDraw a ! PetscDraw
-       PetscDrawAxis b ! PetscDrawAxis
-       PetscErrorCode z
-       end subroutine PetscDrawAxisCreate
-      subroutine PetscDrawAxisDestroy(a,z)
-       PetscDrawAxis a ! PetscDrawAxis
-       PetscErrorCode z
-       end subroutine PetscDrawAxisDestroy
-      subroutine PetscDrawAxisSetColors(a,b,c,d,z)
-       PetscDrawAxis a ! PetscDrawAxis
-       integer b ! int
-       integer c ! int
-       integer d ! int
-       PetscErrorCode z
-       end subroutine PetscDrawAxisSetColors
-      subroutine PetscDrawAxisSetLimits(a,b,c,d,e,z)
-       PetscDrawAxis a ! PetscDrawAxis
-       PetscReal b ! PetscReal
-       PetscReal c ! PetscReal
-       PetscReal d ! PetscReal
-       PetscReal e ! PetscReal
-       PetscErrorCode z
-       end subroutine PetscDrawAxisSetLimits
-      subroutine PetscDrawAxisGetLimits(a,b,c,d,e,z)
-       PetscDrawAxis a ! PetscDrawAxis
-       PetscReal b ! PetscReal
-       PetscReal c ! PetscReal
-       PetscReal d ! PetscReal
-       PetscReal e ! PetscReal
-       PetscErrorCode z
-       end subroutine PetscDrawAxisGetLimits
-      subroutine PetscDrawAxisSetHoldLimits(a,b,z)
-       PetscDrawAxis a ! PetscDrawAxis
-       PetscBool b ! PetscBool
-       PetscErrorCode z
-       end subroutine PetscDrawAxisSetHoldLimits
-      subroutine PetscDrawAxisDraw(a,z)
-       PetscDrawAxis a ! PetscDrawAxis
-       PetscErrorCode z
-       end subroutine PetscDrawAxisDraw
       subroutine PetscDrawBarDraw(a,z)
        PetscDrawBar a ! PetscDrawBar
        PetscErrorCode z
@@ -547,3 +506,44 @@
        PetscDrawLG a ! PetscDrawLG
        PetscErrorCode z
        end subroutine PetscDrawLGSetFromOptions
+      subroutine PetscDrawAxisCreate(a,b,z)
+       PetscDraw a ! PetscDraw
+       PetscDrawAxis b ! PetscDrawAxis
+       PetscErrorCode z
+       end subroutine PetscDrawAxisCreate
+      subroutine PetscDrawAxisDestroy(a,z)
+       PetscDrawAxis a ! PetscDrawAxis
+       PetscErrorCode z
+       end subroutine PetscDrawAxisDestroy
+      subroutine PetscDrawAxisSetColors(a,b,c,d,z)
+       PetscDrawAxis a ! PetscDrawAxis
+       integer b ! int
+       integer c ! int
+       integer d ! int
+       PetscErrorCode z
+       end subroutine PetscDrawAxisSetColors
+      subroutine PetscDrawAxisSetLimits(a,b,c,d,e,z)
+       PetscDrawAxis a ! PetscDrawAxis
+       PetscReal b ! PetscReal
+       PetscReal c ! PetscReal
+       PetscReal d ! PetscReal
+       PetscReal e ! PetscReal
+       PetscErrorCode z
+       end subroutine PetscDrawAxisSetLimits
+      subroutine PetscDrawAxisGetLimits(a,b,c,d,e,z)
+       PetscDrawAxis a ! PetscDrawAxis
+       PetscReal b ! PetscReal
+       PetscReal c ! PetscReal
+       PetscReal d ! PetscReal
+       PetscReal e ! PetscReal
+       PetscErrorCode z
+       end subroutine PetscDrawAxisGetLimits
+      subroutine PetscDrawAxisSetHoldLimits(a,b,z)
+       PetscDrawAxis a ! PetscDrawAxis
+       PetscBool b ! PetscBool
+       PetscErrorCode z
+       end subroutine PetscDrawAxisSetHoldLimits
+      subroutine PetscDrawAxisDraw(a,z)
+       PetscDrawAxis a ! PetscDrawAxis
+       PetscErrorCode z
+       end subroutine PetscDrawAxisDraw
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/sys/f90-mod/ftn-auto-interfaces/petscsys.h90 petsc-3.18.5+dfsg1/src/sys/f90-mod/ftn-auto-interfaces/petscsys.h90
--- petsc-3.18.4+dfsg1/src/sys/f90-mod/ftn-auto-interfaces/petscsys.h90	2023-01-31 07:00:50.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/sys/f90-mod/ftn-auto-interfaces/petscsys.h90	2023-02-27 23:28:35.000000000 +0100
@@ -212,31 +212,6 @@
        PetscBool c ! PetscBool
        PetscErrorCode z
        end subroutine PetscObjectCompareId
-      subroutine PetscObjectSetPrintedOptions(a,z)
-       PetscObject a ! PetscObject
-       PetscErrorCode z
-       end subroutine PetscObjectSetPrintedOptions
-      subroutine PetscObjectInheritPrintedOptions(a,b,z)
-       PetscObject a ! PetscObject
-       PetscObject b ! PetscObject
-       PetscErrorCode z
-       end subroutine PetscObjectInheritPrintedOptions
-      subroutine PetscObjectSetFromOptions(a,z)
-       PetscObject a ! PetscObject
-       PetscErrorCode z
-       end subroutine PetscObjectSetFromOptions
-      subroutine PetscObjectSetUp(a,z)
-       PetscObject a ! PetscObject
-       PetscErrorCode z
-       end subroutine PetscObjectSetUp
-      subroutine PetscInitialized(a,z)
-       PetscBool a ! PetscBool
-       PetscErrorCode z
-       end subroutine PetscInitialized
-      subroutine PetscFinalized(a,z)
-       PetscBool a ! PetscBool
-       PetscErrorCode z
-       end subroutine PetscFinalized
       subroutine PetscSubcommSetFromOptions(a,z)
        import tPetscSubcomm
        PetscSubcomm a ! PetscSubcomm
@@ -277,10 +252,6 @@
        PetscMPIInt b ! PetscMPIInt
        PetscErrorCode z
        end subroutine PetscCommGetNewTag
-      subroutine PetscObjectDestroy(a,z)
-       PetscObject a ! PetscObject
-       PetscErrorCode z
-       end subroutine PetscObjectDestroy
       subroutine PetscObjectGetTabLevel(a,b,z)
        PetscObject a ! PetscObject
        PetscInt b ! PetscInt
@@ -326,6 +297,35 @@
        PetscOptions a ! PetscOptions
        PetscErrorCode z
        end subroutine PetscOptionsLeft
+      subroutine PetscObjectDestroy(a,z)
+       PetscObject a ! PetscObject
+       PetscErrorCode z
+       end subroutine PetscObjectDestroy
+      subroutine PetscObjectSetPrintedOptions(a,z)
+       PetscObject a ! PetscObject
+       PetscErrorCode z
+       end subroutine PetscObjectSetPrintedOptions
+      subroutine PetscObjectInheritPrintedOptions(a,b,z)
+       PetscObject a ! PetscObject
+       PetscObject b ! PetscObject
+       PetscErrorCode z
+       end subroutine PetscObjectInheritPrintedOptions
+      subroutine PetscObjectSetFromOptions(a,z)
+       PetscObject a ! PetscObject
+       PetscErrorCode z
+       end subroutine PetscObjectSetFromOptions
+      subroutine PetscObjectSetUp(a,z)
+       PetscObject a ! PetscObject
+       PetscErrorCode z
+       end subroutine PetscObjectSetUp
+      subroutine PetscInitialized(a,z)
+       PetscBool a ! PetscBool
+       PetscErrorCode z
+       end subroutine PetscInitialized
+      subroutine PetscFinalized(a,z)
+       PetscBool a ! PetscBool
+       PetscErrorCode z
+       end subroutine PetscFinalized
       subroutine PetscElementalInitializePackage(z)
        PetscErrorCode z
        end subroutine PetscElementalInitializePackage
@@ -354,25 +354,6 @@
        PetscReal a ! PetscReal
        PetscErrorCode z
        end subroutine PetscSleep
-      subroutine PetscSplitOwnershipBlock(a,b,c,d,z)
-       MPI_Comm a ! MPI_Comm
-       PetscInt b ! PetscInt
-       PetscInt c ! PetscInt
-       PetscInt d ! PetscInt
-       PetscErrorCode z
-       end subroutine PetscSplitOwnershipBlock
-      subroutine PetscSplitOwnership(a,b,c,z)
-       MPI_Comm a ! MPI_Comm
-       PetscInt b ! PetscInt
-       PetscInt c ! PetscInt
-       PetscErrorCode z
-       end subroutine PetscSplitOwnership
-      subroutine PetscSplitOwnershipEqual(a,b,c,z)
-       MPI_Comm a ! MPI_Comm
-       PetscInt b ! PetscInt
-       PetscInt c ! PetscInt
-       PetscErrorCode z
-       end subroutine PetscSplitOwnershipEqual
       subroutine PetscSortedReal(a,b,c,z)
        PetscInt a ! PetscInt
        PetscReal b (*) ! PetscReal
@@ -417,6 +398,80 @@
        PetscInt d (*) ! PetscInt
        PetscErrorCode z
        end subroutine PetscSortSplitReal
+      subroutine PetscSortIntWithPermutation(a,b,c,z)
+       PetscInt a ! PetscInt
+       PetscInt b (*) ! PetscInt
+       PetscInt c (*) ! PetscInt
+       PetscErrorCode z
+       end subroutine PetscSortIntWithPermutation
+      subroutine PetscSortRealWithPermutation(a,b,c,z)
+       PetscInt a ! PetscInt
+       PetscReal b (*) ! PetscReal
+       PetscInt c (*) ! PetscInt
+       PetscErrorCode z
+       end subroutine PetscSortRealWithPermutation
+      subroutine PetscIntSortSemiOrdered(a,b,z)
+       PetscInt a ! PetscInt
+       PetscInt b (*) ! PetscInt
+       PetscErrorCode z
+       end subroutine PetscIntSortSemiOrdered
+      subroutine PetscIntSortSemiOrderedWithArray(a,b,c,z)
+       PetscInt a ! PetscInt
+       PetscInt b (*) ! PetscInt
+       PetscInt c (*) ! PetscInt
+       PetscErrorCode z
+       end subroutine PetscIntSortSemiOrderedWithArray
+      subroutine PetscMPIIntSortSemiOrdered(a,b,z)
+       PetscInt a ! PetscInt
+       PetscMPIInt b (*) ! PetscMPIInt
+       PetscErrorCode z
+       end subroutine PetscMPIIntSortSemiOrdered
+      subroutine PetscMPIIntSortSemiOrderedWithArray(a,b,c,z)
+       PetscInt a ! PetscInt
+       PetscMPIInt b (*) ! PetscMPIInt
+       PetscMPIInt c (*) ! PetscMPIInt
+       PetscErrorCode z
+       end subroutine PetscMPIIntSortSemiOrderedWithArray
+      subroutine PetscRealSortSemiOrdered(a,b,z)
+       PetscInt a ! PetscInt
+       PetscReal b (*) ! PetscReal
+       PetscErrorCode z
+       end subroutine PetscRealSortSemiOrdered
+      subroutine PetscRealSortSemiOrderedWithArrayInt(a,b,c,z)
+       PetscInt a ! PetscInt
+       PetscReal b (*) ! PetscReal
+       PetscInt c (*) ! PetscInt
+       PetscErrorCode z
+       end subroutine PetscRealSortSemiOrderedWithArrayInt
+      subroutine PetscSequentialPhaseBegin(a,b,z)
+       MPI_Comm a ! MPI_Comm
+       integer b ! int
+       PetscErrorCode z
+       end subroutine PetscSequentialPhaseBegin
+      subroutine PetscSequentialPhaseEnd(a,b,z)
+       MPI_Comm a ! MPI_Comm
+       integer b ! int
+       PetscErrorCode z
+       end subroutine PetscSequentialPhaseEnd
+      subroutine PetscSplitOwnershipBlock(a,b,c,d,z)
+       MPI_Comm a ! MPI_Comm
+       PetscInt b ! PetscInt
+       PetscInt c ! PetscInt
+       PetscInt d ! PetscInt
+       PetscErrorCode z
+       end subroutine PetscSplitOwnershipBlock
+      subroutine PetscSplitOwnership(a,b,c,z)
+       MPI_Comm a ! MPI_Comm
+       PetscInt b ! PetscInt
+       PetscInt c ! PetscInt
+       PetscErrorCode z
+       end subroutine PetscSplitOwnership
+      subroutine PetscSplitOwnershipEqual(a,b,c,z)
+       MPI_Comm a ! MPI_Comm
+       PetscInt b ! PetscInt
+       PetscInt c ! PetscInt
+       PetscErrorCode z
+       end subroutine PetscSplitOwnershipEqual
       subroutine PetscSortedInt(a,b,c,z)
        PetscInt a ! PetscInt
        PetscInt b (*) ! PetscInt
@@ -582,58 +637,3 @@
        PetscBool d ! PetscBool
        PetscErrorCode z
        end subroutine PetscParallelSortedInt
-      subroutine PetscSortIntWithPermutation(a,b,c,z)
-       PetscInt a ! PetscInt
-       PetscInt b (*) ! PetscInt
-       PetscInt c (*) ! PetscInt
-       PetscErrorCode z
-       end subroutine PetscSortIntWithPermutation
-      subroutine PetscSortRealWithPermutation(a,b,c,z)
-       PetscInt a ! PetscInt
-       PetscReal b (*) ! PetscReal
-       PetscInt c (*) ! PetscInt
-       PetscErrorCode z
-       end subroutine PetscSortRealWithPermutation
-      subroutine PetscIntSortSemiOrdered(a,b,z)
-       PetscInt a ! PetscInt
-       PetscInt b (*) ! PetscInt
-       PetscErrorCode z
-       end subroutine PetscIntSortSemiOrdered
-      subroutine PetscIntSortSemiOrderedWithArray(a,b,c,z)
-       PetscInt a ! PetscInt
-       PetscInt b (*) ! PetscInt
-       PetscInt c (*) ! PetscInt
-       PetscErrorCode z
-       end subroutine PetscIntSortSemiOrderedWithArray
-      subroutine PetscMPIIntSortSemiOrdered(a,b,z)
-       PetscInt a ! PetscInt
-       PetscMPIInt b (*) ! PetscMPIInt
-       PetscErrorCode z
-       end subroutine PetscMPIIntSortSemiOrdered
-      subroutine PetscMPIIntSortSemiOrderedWithArray(a,b,c,z)
-       PetscInt a ! PetscInt
-       PetscMPIInt b (*) ! PetscMPIInt
-       PetscMPIInt c (*) ! PetscMPIInt
-       PetscErrorCode z
-       end subroutine PetscMPIIntSortSemiOrderedWithArray
-      subroutine PetscRealSortSemiOrdered(a,b,z)
-       PetscInt a ! PetscInt
-       PetscReal b (*) ! PetscReal
-       PetscErrorCode z
-       end subroutine PetscRealSortSemiOrdered
-      subroutine PetscRealSortSemiOrderedWithArrayInt(a,b,c,z)
-       PetscInt a ! PetscInt
-       PetscReal b (*) ! PetscReal
-       PetscInt c (*) ! PetscInt
-       PetscErrorCode z
-       end subroutine PetscRealSortSemiOrderedWithArrayInt
-      subroutine PetscSequentialPhaseBegin(a,b,z)
-       MPI_Comm a ! MPI_Comm
-       integer b ! int
-       PetscErrorCode z
-       end subroutine PetscSequentialPhaseBegin
-      subroutine PetscSequentialPhaseEnd(a,b,z)
-       MPI_Comm a ! MPI_Comm
-       integer b ! int
-       PetscErrorCode z
-       end subroutine PetscSequentialPhaseEnd
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/sys/f90-mod/ftn-auto-interfaces/petscviewer.h90 petsc-3.18.5+dfsg1/src/sys/f90-mod/ftn-auto-interfaces/petscviewer.h90
--- petsc-3.18.4+dfsg1/src/sys/f90-mod/ftn-auto-interfaces/petscviewer.h90	2023-01-31 07:00:50.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/sys/f90-mod/ftn-auto-interfaces/petscviewer.h90	2023-02-27 23:28:35.000000000 +0100
@@ -252,13 +252,13 @@
        PetscErrorCode z
        end subroutine PetscViewerMathematicaClearName
       subroutine PetscViewerMathematicaGetVector(a,b,z)
-       import tPetscViewer,tVec
+       import tVec,tPetscViewer
        PetscViewer a ! PetscViewer
        Vec b ! Vec
        PetscErrorCode z
        end subroutine PetscViewerMathematicaGetVector
       subroutine PetscViewerMathematicaPutVector(a,b,z)
-       import tPetscViewer,tVec
+       import tVec,tPetscViewer
        PetscViewer a ! PetscViewer
        Vec b ! Vec
        PetscErrorCode z
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/sys/fileio/apple_fdir.h petsc-3.18.5+dfsg1/src/sys/fileio/apple_fdir.h
--- petsc-3.18.4+dfsg1/src/sys/fileio/apple_fdir.h	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/sys/fileio/apple_fdir.h	2023-02-27 23:11:05.000000000 +0100
@@ -31,7 +31,7 @@
  * the template.
  *
  * If the desired path was found, set result and return FTPP_DONE.
- * If an IO/FS error ocurred, set errno and return FTPP_ERROR.
+ * If an IO/FS error occurred, set errno and return FTPP_ERROR.
  * Otherwise return FTPP_TRY_NEXT.
  */
 typedef find_temp_path_progress_t (*find_temp_path_action_t)(int dfd, char *path, void *ctx, void *result);
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/sys/fileio/ghome.c petsc-3.18.5+dfsg1/src/sys/fileio/ghome.c
--- petsc-3.18.4+dfsg1/src/sys/fileio/ghome.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/sys/fileio/ghome.c	2023-02-27 23:11:05.000000000 +0100
@@ -10,7 +10,7 @@
    Not Collective
 
    Input Parameter:
-.  maxlen - maximum lengh allowed
+.  maxlen - maximum length allowed
 
    Output Parameter:
 .  dir - contains the home directory. Must be long enough to hold the name.
@@ -20,7 +20,7 @@
    Notes:
    If PETSc cannot determine the home directory it makes dir a null string
 
-   On Windows machines the enviornmental variable `HOME` specifies the home directory.
+   On Windows machines the environmental variable `HOME` specifies the home directory.
 
 .seealso: `PetscGetTmp()`, `PetscSharedTmp()`, `PetscGetWorkingDirectory()`
 @*/
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/sys/fileio/mprint.c petsc-3.18.5+dfsg1/src/sys/fileio/mprint.c
--- petsc-3.18.4+dfsg1/src/sys/fileio/mprint.c	2022-12-28 20:00:16.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/sys/fileio/mprint.c	2023-02-27 23:11:05.000000000 +0100
@@ -1,5 +1,5 @@
 /*
-      Utilites routines to add simple ASCII IO capability.
+      Utilities routines to add simple ASCII IO capability.
 */
 #include <../src/sys/fileio/mprint.h>
 #include <errno.h>
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/sys/logging/plog.c petsc-3.18.5+dfsg1/src/sys/logging/plog.c
--- petsc-3.18.4+dfsg1/src/sys/logging/plog.c	2022-12-28 20:00:16.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/sys/logging/plog.c	2023-02-27 23:11:05.000000000 +0100
@@ -2067,7 +2067,7 @@
   Level: beginner
 
   Notes:
-  It is possible to control the logging programatically but we recommend using the options database approach whenever possible
+  It is possible to control the logging programmatically but we recommend using the options database approach whenever possible
   By default the summary is printed to stdout.
 
   Before calling this routine you must have called either PetscLogDefaultBegin() or PetscLogNestedBegin()
@@ -2375,7 +2375,7 @@
 
     This timer should NOT include times for data transfers between the GPU and CPU, nor setup actions such as allocating space.
 
-    The regular logging captures the time for data transfers and any CPU activites during the event
+    The regular logging captures the time for data transfers and any CPU activities during the event
 
     It is used to compute the flop rate on the GPU as it is actively engaged in running a kernel.
 
@@ -2384,7 +2384,7 @@
 
     `PetscLogGpuTimeBegin()` and `PetsLogGpuTimeEnd()` insert the begin and end events into the default stream (stream 0). The device will record a time stamp for the
     event when it reaches that event in the stream. The function xxxEventSynchronize() is called in `PetsLogGpuTimeEnd()` to block CPU execution,
-    but not continued GPU excution, until the timer event is recorded.
+    but not continued GPU execution, until the timer event is recorded.
 
 .seealso: [](ch_profiling), `PetscLogView()`, `PetscLogGpuFlops()`, `PetscLogGpuTimeEnd()`, `PetscLogGpuTime()`
 @*/
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/sys/memory/mtr.c petsc-3.18.5+dfsg1/src/sys/memory/mtr.c
--- petsc-3.18.4+dfsg1/src/sys/memory/mtr.c	2022-12-28 20:00:16.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/sys/memory/mtr.c	2023-02-27 23:11:05.000000000 +0100
@@ -361,7 +361,7 @@
     *result = NULL;
     PetscFunctionReturn(0);
   }
-  /* If the orginal space was NULL just use the regular malloc() */
+  /* If the original space was NULL just use the regular malloc() */
   if (!*result) {
     PetscCall(PetscTrMallocDefault(len, PETSC_FALSE, lineno, function, filename, result));
     PetscFunctionReturn(0);
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/sys/mpiuni/mpi.c petsc-3.18.5+dfsg1/src/sys/mpiuni/mpi.c
--- petsc-3.18.4+dfsg1/src/sys/mpiuni/mpi.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/sys/mpiuni/mpi.c	2023-02-27 23:11:05.000000000 +0100
@@ -582,7 +582,7 @@
   #define petsc_mpi_exscan_             petsc_mpi_exscan__
 #endif
 
-/* Do not build fortran interface if MPI namespace colision is to be avoided */
+/* Do not build fortran interface if MPI namespace collision is to be avoided */
 #if defined(PETSC_HAVE_FORTRAN)
 
 PETSC_EXTERN void mpiunisetmoduleblock_(void);
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/sys/objects/cxx/elemental.cxx petsc-3.18.5+dfsg1/src/sys/objects/cxx/elemental.cxx
--- petsc-3.18.4+dfsg1/src/sys/objects/cxx/elemental.cxx	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/sys/objects/cxx/elemental.cxx	2023-02-27 23:11:05.000000000 +0100
@@ -11,7 +11,7 @@
 
    Note:
    Can be called outside of `PetscInitialize()` and `PetscFinalize()`.
-   If called outside of these functions, it is the user's responsability
+   If called outside of these functions, it is the user's responsibility
    to make sure that `PETSC_COMM_WORLD` is either unset (default value is `MPI_COMM_NULL`),
    or that it is not `MPI_UNEQUAL` to `MPI_COMM_WORLD`.
    Users who do not have a custom `PETSC_COMM_WORLD` do not have to call this function.
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/sys/objects/destroy.c petsc-3.18.5+dfsg1/src/sys/objects/destroy.c
--- petsc-3.18.4+dfsg1/src/sys/objects/destroy.c	2023-01-31 06:19:48.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/sys/objects/destroy.c	2023-02-27 23:11:05.000000000 +0100
@@ -174,7 +174,7 @@
 
    Input Parameters:
 +  obj1 - any PETSc object, for example a Vec, Mat or KSP.
--  obj2 - anther PETSc object
+-  obj2 - another PETSc object
 
    Output Parameter:
 .  same - PETSC_TRUE if they are the same, else PETSC_FALSE
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/sys/objects/device/impls/cupm/cupmcontext.hpp petsc-3.18.5+dfsg1/src/sys/objects/device/impls/cupm/cupmcontext.hpp
--- petsc-3.18.4+dfsg1/src/sys/objects/device/impls/cupm/cupmcontext.hpp	2022-11-28 17:22:18.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/sys/objects/device/impls/cupm/cupmcontext.hpp	2023-02-27 23:11:05.000000000 +0100
@@ -456,15 +456,21 @@
   PetscFunctionBegin;
   // can't use PetscCUPMMemcpyAsync here since we don't know sizeof(*src)...
   if (mode == PETSC_DEVICE_COPY_HTOH) {
+    const auto cerr = cupmStreamQuery(stream);
+
     // yes this is faster
-    if (cupmStreamQuery(stream) == cupmSuccess) {
+    if (cerr == cupmSuccess) {
       PetscCall(PetscMemcpy(dest, src, n));
       PetscFunctionReturn(0);
+    } else if (cerr == cupmErrorNotReady) {
+      auto PETSC_UNUSED unused = cupmGetLastError();
+
+      static_cast<void>(unused);
+    } else {
+      PetscCallCUPM(cerr);
     }
-    // in case cupmStreamQuery() did not return cupmErrorNotReady
-    PetscCallCUPM(cupmGetLastError());
   }
-  PetscCall(cupmMemcpyAsync(dest, src, n, PetscDeviceCopyModeToCUPMMemcpyKind(mode), stream));
+  PetscCallCUPM(cupmMemcpyAsync(dest, src, n, PetscDeviceCopyModeToCUPMMemcpyKind(mode), stream));
   PetscFunctionReturn(0);
 }
 
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/sys/objects/device/interface/dcontext.cxx petsc-3.18.5+dfsg1/src/sys/objects/device/interface/dcontext.cxx
--- petsc-3.18.4+dfsg1/src/sys/objects/device/interface/dcontext.cxx	2023-01-31 06:19:48.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/sys/objects/device/interface/dcontext.cxx	2023-02-27 23:11:05.000000000 +0100
@@ -112,7 +112,7 @@
   `dctx`'s stream the user is responsible for calling `PetscDeviceContextSynchronize()` before
   calling this routine.
 
-  DAG represetation:
+  DAG representation:
 .vb
   time ->
 
@@ -271,7 +271,7 @@
 
   Notes:
   This routine is effectively `PetscDeviceContext`'s "set-type" (so every `PetscDeviceContext` must
-  also have an attached `PetscDevice`). Unlike the usual set-type semantics, it is not stricly
+  also have an attached `PetscDevice`). Unlike the usual set-type semantics, it is not strictly
   necessary to set a contexts device to enable usage, any created `PetscDeviceContext`s will
   always come equipped with the "default" device.
 
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/sys/objects/device/interface/device.cxx petsc-3.18.5+dfsg1/src/sys/objects/device/interface/device.cxx
--- petsc-3.18.4+dfsg1/src/sys/objects/device/interface/device.cxx	2022-11-28 17:22:18.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/sys/objects/device/interface/device.cxx	2023-02-27 23:11:05.000000000 +0100
@@ -360,7 +360,7 @@
 static std::array<std::pair<PetscDevice, bool>, PETSC_DEVICE_MAX> defaultDevices = {};
 
 /*
-  Actual intialization function; any functions claiming to initialize PetscDevice or
+  Actual initialization function; any functions claiming to initialize PetscDevice or
   PetscDeviceContext will have to run through this one
 */
 static PetscErrorCode PetscDeviceInitializeDefaultDevice_Internal(PetscDeviceType type, PetscInt defaultDeviceId)
@@ -454,7 +454,7 @@
   Notes:
   Since different attributes are often different types `value` is a `void *` to accommodate
   them all. The underlying type of the attribute is therefore included in the name of the
-  `PetscDeviceAttribute` reponsible for querying it. For example,
+  `PetscDeviceAttribute` responsible for querying it. For example,
   `PETSC_DEVICE_ATTR_SIZE_T_SHARED_MEM_PER_BLOCK` is of type `size_t`.
 
   Level: intermediate
@@ -521,7 +521,7 @@
 
   if (initIdx == PETSC_DEVICE_INIT_NONE) {
     /* disabled all device initialization if devices are globally disabled */
-    PetscCheck(*defaultDevice == PETSC_DECIDE, comm, PETSC_ERR_USER_INPUT, "You have disabled devices but also specified a particular device to use, these options are mutually exlusive");
+    PetscCheck(*defaultDevice == PETSC_DECIDE, comm, PETSC_ERR_USER_INPUT, "You have disabled devices but also specified a particular device to use, these options are mutually exclusive");
     *defaultView  = PETSC_FALSE;
     initDeviceIdx = PETSC_DEVICE_HOST;
   } else {
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/sys/objects/device/interface/global_dcontext.cxx petsc-3.18.5+dfsg1/src/sys/objects/device/interface/global_dcontext.cxx
--- petsc-3.18.4+dfsg1/src/sys/objects/device/interface/global_dcontext.cxx	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/sys/objects/device/interface/global_dcontext.cxx	2023-02-27 23:11:05.000000000 +0100
@@ -5,7 +5,7 @@
 static PetscDeviceContext globalContext  = nullptr;
 
 /* when PetsDevice initializes PetscDeviceContext eagerly the type of device created should
- * match whatever device is eagerly intialized */
+ * match whatever device is eagerly initialized */
 PetscErrorCode PetscDeviceContextSetRootDeviceType_Internal(PetscDeviceType type)
 {
   PetscFunctionBegin;
@@ -100,7 +100,7 @@
   Notes:
   This routine can be used to set the defacto "root" `PetscDeviceContext` to a user-defined
   implementation by calling this routine immediately after `PetscInitialize()` and ensuring that
-  `PetscDevice` is not greedily intialized. In this case the user is responsible for destroying
+  `PetscDevice` is not greedily initialized. In this case the user is responsible for destroying
   their `PetscDeviceContext` before `PetscFinalize()` returns.
 
   The old context is not stored in any way by this routine; if one is overriding a context that
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/sys/objects/device/interface/memory.cxx petsc-3.18.5+dfsg1/src/sys/objects/device/interface/memory.cxx
--- petsc-3.18.4+dfsg1/src/sys/objects/device/interface/memory.cxx	2022-11-28 17:22:18.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/sys/objects/device/interface/memory.cxx	2023-02-27 23:11:05.000000000 +0100
@@ -34,7 +34,7 @@
   std::size_t   size  = 0;                  // size of allocation (bytes)
 
   // even though this is a POD and can be aggregate initialized, the STL uses () constructors
-  // in unordered_map and so we need to provide a trivial contructor...
+  // in unordered_map and so we need to provide a trivial constructor...
   constexpr PointerAttributes(PetscMemType, PetscObjectId, std::size_t) noexcept;
 
   bool operator==(const PointerAttributes &) const noexcept;
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/sys/objects/ftn-auto/makefile petsc-3.18.5+dfsg1/src/sys/objects/ftn-auto/makefile
--- petsc-3.18.4+dfsg1/src/sys/objects/ftn-auto/makefile	2023-01-31 07:00:49.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/sys/objects/ftn-auto/makefile	2023-02-27 23:28:34.000000000 +0100
@@ -4,7 +4,7 @@
 
 CFLAGS   =
 FFLAGS   =
-SOURCEC  = gcookief.c statef.c inheritf.c pinitf.c subcommf.c tagmf.c destroyf.c gcommf.c optionsf.c
+SOURCEC  = gcookief.c statef.c subcommf.c tagmf.c gcommf.c optionsf.c destroyf.c inheritf.c pinitf.c
 SOURCEF  =
 SOURCEH  = 
 DIRS     =
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/sys/objects/inherit.c petsc-3.18.5+dfsg1/src/sys/objects/inherit.c
--- petsc-3.18.4+dfsg1/src/sys/objects/inherit.c	2022-12-28 20:00:16.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/sys/objects/inherit.c	2023-02-27 23:11:05.000000000 +0100
@@ -790,7 +790,7 @@
 
     Synopsis:
     #include <petscsys.h>
-    PetscErrorCode PetscObjectComposeFunction(PetscObject obj,const char name[],void (*fptr)(void))
+    PetscErrorCode PetscObjectComposeFunction(PetscObject obj, const char name[], void (*fptr)(void))
 
    Logically Collective
 
@@ -798,21 +798,20 @@
 +  obj - the PETSc object; this must be cast with a (`PetscObject`), for example,
          `PetscObjectCompose`((`PetscObject`)mat,...);
 .  name - name associated with the child function
-.  fname - name of the function
 -  fptr - function pointer
 
    Level: advanced
 
    Notes:
-   When the first argument of the function is the object within which it has been composed then `PetscTryMethod()` and `PetscUseMethod()`
+   When the first argument of `fptr` is (or is derived from) a `PetscObject` then `PetscTryMethod()` and `PetscUseMethod()`
    can be used to call the function directly with error checking.
 
-   To remove a registered routine, pass in NULL for fptr().
+   To remove a registered routine, pass in `NULL` for `fptr`.
 
-   PetscObjectComposeFunction() can be used with any PETSc object (such as
+   `PetscObjectComposeFunction()` can be used with any PETSc object (such as
    `Mat`, `Vec`, `KSP`, `SNES`, etc.) or any user-provided object.
 
-   `PetscCallMethod()` is used to call a function that is stored in the objects obj->ops table.
+   `PetscCallMethod()` is used to call a function that is stored in the objects `obj->ops` table.
 
 .seealso: `PetscObjectQueryFunction()`, `PetscContainerCreate()` `PetscObjectCompose()`, `PetscObjectQuery()`, `PetscTryMethod()`, `PetscUseMethod()`,
           `PetscCallMethod()`
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/sys/objects/pinit.c petsc-3.18.5+dfsg1/src/sys/objects/pinit.c
--- petsc-3.18.4+dfsg1/src/sys/objects/pinit.c	2022-12-28 20:00:16.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/sys/objects/pinit.c	2023-02-27 23:11:05.000000000 +0100
@@ -738,7 +738,7 @@
   prog:     program name
   file:     optional PETSc database file name. Might be in Fortran string format when 'ftn' is true
   help:     program help message
-  ftn:      is it called from Fortran initilization (petscinitializef_)?
+  ftn:      is it called from Fortran initialization (petscinitializef_)?
   readarguments,len: used when fortran is true
 */
 PETSC_INTERN PetscErrorCode PetscInitialize_Common(const char *prog, const char *file, const char *help, PetscBool ftn, PetscBool readarguments, PetscInt len)
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/sys/tests/ex54.c petsc-3.18.5+dfsg1/src/sys/tests/ex54.c
--- petsc-3.18.4+dfsg1/src/sys/tests/ex54.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/sys/tests/ex54.c	2023-02-27 23:11:05.000000000 +0100
@@ -22,7 +22,7 @@
       args: -options_left 0 -options_view
 
    testset:
-      TODO: occassionally randomly produces errors in CI, very difficult to debug, the wasted time out-weighs keeping this test in the CI
+      TODO: occasionally randomly produces errors in CI, very difficult to debug, the wasted time out-weighs keeping this test in the CI
       args: -options_left 0 -options_view
       test:
         suffix: 1
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/sys/tutorials/ex3f.F90 petsc-3.18.5+dfsg1/src/sys/tutorials/ex3f.F90
--- petsc-3.18.4+dfsg1/src/sys/tutorials/ex3f.F90	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/sys/tutorials/ex3f.F90	2023-02-27 23:11:05.000000000 +0100
@@ -93,7 +93,7 @@
       PetscCallA(PetscLogEventEnd(USER_EVENT9,ierr))
 !
 !    We disable the logging of an event.
-!      - Note that the user can activate/deactive both user-defined
+!      - Note that the user can activate/deactivate both user-defined
 !        events and predefined PETSc events.
 !
       PetscCallA(PetscLogEventDeactivate(USER_EVENT1,ierr))
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/sys/utils/ftn-auto/makefile petsc-3.18.5+dfsg1/src/sys/utils/ftn-auto/makefile
--- petsc-3.18.4+dfsg1/src/sys/utils/ftn-auto/makefile	2023-01-31 07:00:49.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/sys/utils/ftn-auto/makefile	2023-02-27 23:28:34.000000000 +0100
@@ -4,7 +4,7 @@
 
 CFLAGS   =
 FFLAGS   =
-SOURCEC  = mpitsf.c psleepf.c psplitf.c sortdf.c sortif.c sortipf.c sortsof.c mpiuf.c memcf.c
+SOURCEC  = mpitsf.c psleepf.c sortdf.c sortipf.c sortsof.c mpiuf.c memcf.c psplitf.c sortif.c
 SOURCEF  =
 SOURCEH  = 
 DIRS     =
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/sys/utils/mpimesg.c petsc-3.18.5+dfsg1/src/sys/utils/mpimesg.c
--- petsc-3.18.4+dfsg1/src/sys/utils/mpimesg.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/sys/utils/mpimesg.c	2023-02-27 23:11:05.000000000 +0100
@@ -58,7 +58,7 @@
 }
 
 /*@C
-  PetscGatherMessageLengths - Computes infomation about messages that an MPI rank will receive,
+  PetscGatherMessageLengths - Computes information about messages that an MPI rank will receive,
   including (from-id,length) pairs for each message.
 
   Collective
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/sys/utils/psplit.c petsc-3.18.5+dfsg1/src/sys/utils/psplit.c
--- petsc-3.18.4+dfsg1/src/sys/utils/psplit.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/sys/utils/psplit.c	2023-02-27 23:11:05.000000000 +0100
@@ -114,7 +114,7 @@
    Notes:
      This is intended to be used with `MATSCALAPACK`, where the local size must
      be equal in all processes (except possibly the last one). For instance,
-     the local sizes when spliting N=50 with 6 processes are 9,9,9,9,9,5
+     the local sizes when splitting N=50 with 6 processes are 9,9,9,9,9,5
 
      n and N cannot be both `PETSC_DECIDE`
 
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/sys/utils/sorti.c petsc-3.18.5+dfsg1/src/sys/utils/sorti.c
--- petsc-3.18.4+dfsg1/src/sys/utils/sorti.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/sys/utils/sorti.c	2023-02-27 23:11:05.000000000 +0100
@@ -996,7 +996,7 @@
 -  J   - merged additional array
 
    Note:
-    if L or J point to non-null arrays then this routine will assume they are of the approproate size and use them, otherwise this routine will allocate space for them
+    if L or J point to non-null arrays then this routine will assume they are of the appropriate size and use them, otherwise this routine will allocate space for them
 
    Level: intermediate
 
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/sys/utils/str.c petsc-3.18.5+dfsg1/src/sys/utils/str.c
--- petsc-3.18.4+dfsg1/src/sys/utils/str.c	2022-10-26 15:00:16.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/sys/utils/str.c	2023-02-27 23:11:05.000000000 +0100
@@ -1345,7 +1345,7 @@
   In particular the output of filenames and line numbers in PETSc stacks. This is to allow (limited) checking of PETSc
   error handling by the test harness. This options also causes PETSc to attempt to return an error code of 0 so that the test
   harness can process the output for differences in the usual manner as for successful runs. It should be provided to the test
-  harness in the args: argument for specific examples. It will not neccessarily produce portable output if different errors
+  harness in the args: argument for specific examples. It will not necessarily produce portable output if different errors
   (or no errors) occur on a subset of the MPI ranks.
 
   Level: developer
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/tao/constrained/tutorials/ex1.c petsc-3.18.5+dfsg1/src/tao/constrained/tutorials/ex1.c
--- petsc-3.18.4+dfsg1/src/tao/constrained/tutorials/ex1.c	2022-12-28 20:00:16.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/tao/constrained/tutorials/ex1.c	2023-02-27 23:11:05.000000000 +0100
@@ -17,7 +17,7 @@
 
 #include <petsctao.h>
 
-static char help[] = "Solves constrained optimiztion problem using pdipm.\n\
+static char help[] = "Solves constrained optimization problem using pdipm.\n\
 Input parameters include:\n\
   -tao_type pdipm    : sets Tao solver\n\
   -no_eq             : removes the equaility constraints from the problem\n\
@@ -504,7 +504,7 @@
    test:
       suffix: 5
       args: -tao_converged_reason -tao_almm_type classic -no_eq
-      requires: !single
+      requires: !single !defined(PETSCTEST_VALGRIND)
       filter: sed  -e "s/CONVERGED_GATOL iterations *[0-9]\{1,\}/CONVERGED_GATOL/g"
 
    test:
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/tao/f90-mod/ftn-auto-interfaces/petsctao.h90 petsc-3.18.5+dfsg1/src/tao/f90-mod/ftn-auto-interfaces/petsctao.h90
--- petsc-3.18.4+dfsg1/src/tao/f90-mod/ftn-auto-interfaces/petsctao.h90	2023-01-31 07:00:50.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/tao/f90-mod/ftn-auto-interfaces/petsctao.h90	2023-02-27 23:28:35.000000000 +0100
@@ -156,6 +156,73 @@
        IS c ! IS
        PetscErrorCode z
        end subroutine TaoALMMGetDualIS
+      subroutine TaoSetSolution(a,b,z)
+       import tVec
+       Tao a ! Tao
+       Vec b ! Vec
+       PetscErrorCode z
+       end subroutine TaoSetSolution
+      subroutine TaoComputeGradient(a,b,c,z)
+       import tVec
+       Tao a ! Tao
+       Vec b ! Vec
+       Vec c ! Vec
+       PetscErrorCode z
+       end subroutine TaoComputeGradient
+      subroutine TaoComputeObjective(a,b,c,z)
+       import tVec
+       Tao a ! Tao
+       Vec b ! Vec
+       PetscReal c ! PetscReal
+       PetscErrorCode z
+       end subroutine TaoComputeObjective
+      subroutine TaoComputeObjectiveAndGradient(a,b,c,d,z)
+       import tVec
+       Tao a ! Tao
+       Vec b ! Vec
+       PetscReal c ! PetscReal
+       Vec d ! Vec
+       PetscErrorCode z
+       end subroutine TaoComputeObjectiveAndGradient
+      subroutine TaoSetResidualWeights(a,b,c,d,e,f,z)
+       import tVec
+       Tao a ! Tao
+       Vec b ! Vec
+       PetscInt c ! PetscInt
+       PetscInt d ! PetscInt
+       PetscInt e ! PetscInt
+       PetscReal f ! PetscReal
+       PetscErrorCode z
+       end subroutine TaoSetResidualWeights
+      subroutine TaoComputeResidual(a,b,c,z)
+       import tVec
+       Tao a ! Tao
+       Vec b ! Vec
+       Vec c ! Vec
+       PetscErrorCode z
+       end subroutine TaoComputeResidual
+      subroutine TaoIsObjectiveDefined(a,b,z)
+       Tao a ! Tao
+       PetscBool b ! PetscBool
+       PetscErrorCode z
+       end subroutine TaoIsObjectiveDefined
+      subroutine TaoIsGradientDefined(a,b,z)
+       Tao a ! Tao
+       PetscBool b ! PetscBool
+       PetscErrorCode z
+       end subroutine TaoIsGradientDefined
+      subroutine TaoIsObjectiveAndGradientDefined(a,b,z)
+       Tao a ! Tao
+       PetscBool b ! PetscBool
+       PetscErrorCode z
+       end subroutine TaoIsObjectiveAndGradientDefined
+      subroutine TaoSetStateDesignIS(a,b,c,z)
+       import tIS
+       Tao a ! Tao
+       IS b ! IS
+       IS c ! IS
+       PetscErrorCode z
+       end subroutine TaoSetStateDesignIS
       subroutine TaoCreate(a,b,z)
        MPI_Comm a ! MPI_Comm
        Tao b ! Tao
@@ -407,73 +474,6 @@
        Vec c ! Vec
        PetscErrorCode z
        end subroutine TaoGetDualVariables
-      subroutine TaoSetSolution(a,b,z)
-       import tVec
-       Tao a ! Tao
-       Vec b ! Vec
-       PetscErrorCode z
-       end subroutine TaoSetSolution
-      subroutine TaoComputeGradient(a,b,c,z)
-       import tVec
-       Tao a ! Tao
-       Vec b ! Vec
-       Vec c ! Vec
-       PetscErrorCode z
-       end subroutine TaoComputeGradient
-      subroutine TaoComputeObjective(a,b,c,z)
-       import tVec
-       Tao a ! Tao
-       Vec b ! Vec
-       PetscReal c ! PetscReal
-       PetscErrorCode z
-       end subroutine TaoComputeObjective
-      subroutine TaoComputeObjectiveAndGradient(a,b,c,d,z)
-       import tVec
-       Tao a ! Tao
-       Vec b ! Vec
-       PetscReal c ! PetscReal
-       Vec d ! Vec
-       PetscErrorCode z
-       end subroutine TaoComputeObjectiveAndGradient
-      subroutine TaoSetResidualWeights(a,b,c,d,e,f,z)
-       import tVec
-       Tao a ! Tao
-       Vec b ! Vec
-       PetscInt c ! PetscInt
-       PetscInt d ! PetscInt
-       PetscInt e ! PetscInt
-       PetscReal f ! PetscReal
-       PetscErrorCode z
-       end subroutine TaoSetResidualWeights
-      subroutine TaoComputeResidual(a,b,c,z)
-       import tVec
-       Tao a ! Tao
-       Vec b ! Vec
-       Vec c ! Vec
-       PetscErrorCode z
-       end subroutine TaoComputeResidual
-      subroutine TaoIsObjectiveDefined(a,b,z)
-       Tao a ! Tao
-       PetscBool b ! PetscBool
-       PetscErrorCode z
-       end subroutine TaoIsObjectiveDefined
-      subroutine TaoIsGradientDefined(a,b,z)
-       Tao a ! Tao
-       PetscBool b ! PetscBool
-       PetscErrorCode z
-       end subroutine TaoIsGradientDefined
-      subroutine TaoIsObjectiveAndGradientDefined(a,b,z)
-       Tao a ! Tao
-       PetscBool b ! PetscBool
-       PetscErrorCode z
-       end subroutine TaoIsObjectiveAndGradientDefined
-      subroutine TaoSetStateDesignIS(a,b,c,z)
-       import tIS
-       Tao a ! Tao
-       IS b ! IS
-       IS c ! IS
-       PetscErrorCode z
-       end subroutine TaoSetStateDesignIS
       subroutine TaoBRGNGetSubsolver(a,b,z)
        Tao a ! Tao
        Tao b ! Tao
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/tao/interface/ftn-auto/makefile petsc-3.18.5+dfsg1/src/tao/interface/ftn-auto/makefile
--- petsc-3.18.4+dfsg1/src/tao/interface/ftn-auto/makefile	2023-01-31 07:00:49.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/tao/interface/ftn-auto/makefile	2023-02-27 23:28:34.000000000 +0100
@@ -4,7 +4,7 @@
 
 CFLAGS   =
 FFLAGS   =
-SOURCEC  = taosolverf.c taosolver_boundsf.c taosolver_fgf.c taosolver_hjf.c
+SOURCEC  = taosolver_fgf.c taosolver_hjf.c taosolverf.c taosolver_boundsf.c
 SOURCEF  =
 SOURCEH  = 
 DIRS     =
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/tao/interface/taosolver_bounds.c petsc-3.18.5+dfsg1/src/tao/interface/taosolver_bounds.c
--- petsc-3.18.4+dfsg1/src/tao/interface/taosolver_bounds.c	2022-12-28 20:00:16.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/tao/interface/taosolver_bounds.c	2023-02-27 23:11:05.000000000 +0100
@@ -397,7 +397,7 @@
 .  tao - the Tao context
 
    Output Parameters:
-+  X - point the equality constraints were evaluted on
++  X - point the equality constraints were evaluated on
 -  CE   - vector of equality constraints evaluated at X
 
    Level: developer
@@ -430,7 +430,7 @@
 .  tao - the Tao context
 
    Output Parameters:
-+  X - point the inequality constraints were evaluted on
++  X - point the inequality constraints were evaluated on
 -  CE   - vector of inequality constraints evaluated at X
 
    Level: developer
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/tao/interface/taosolver.c petsc-3.18.5+dfsg1/src/tao/interface/taosolver.c
--- petsc-3.18.4+dfsg1/src/tao/interface/taosolver.c	2022-12-28 20:00:16.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/tao/interface/taosolver.c	2023-02-27 23:11:05.000000000 +0100
@@ -144,14 +144,14 @@
   Input Parameters:
 . tao - the Tao context
 
+  Level: beginner
+
   Notes:
   The user must set up the Tao with calls to `TaoSetSolution()`, `TaoSetObjective()`, `TaoSetGradient()`, and (if using 2nd order method) `TaoSetHessian()`.
 
-  You should call `TaoGetConvergedReason()` or run with -tao_converged_reason to determine if the optimization algorithm actually succeeded or
+  You should call `TaoGetConvergedReason()` or run with `-tao_converged_reason` to determine if the optimization algorithm actually succeeded or
   why it failed.
 
-  Level: beginner
-
 .seealso: `Tao`, `TaoCreate()`, `TaoSetObjective()`, `TaoSetGradient()`, `TaoSetHessian()`, `TaoGetConvergedReason()`, `TaoSetUp()`
  @*/
 PetscErrorCode TaoSolve(Tao tao)
@@ -204,14 +204,14 @@
   Input Parameters:
 . tao - the Tao context
 
+  Level: advanced
+
   Notes:
   The user will not need to explicitly call `TaoSetUp()`, as it will
   automatically be called in `TaoSolve()`.  However, if the user
   desires to call it explicitly, it should come after `TaoCreate()`
   and any TaoSetSomething() routines, but before `TaoSolve()`.
 
-  Level: advanced
-
 .seealso: `Tao`, `TaoCreate()`, `TaoSolve()`
 @*/
 PetscErrorCode TaoSetUp(Tao tao)
@@ -314,11 +314,11 @@
 +  tao - Tao context
 -  flag - `PETSC_TRUE` or `PETSC_FALSE`
 
+   Level: advanced
+
    Notes:
    See `SNESKSPSetUseEW()` for customization details.
 
-   Level: advanced
-
    Reference:
    S. C. Eisenstat and H. F. Walker, "Choosing the forcing terms in an
    inexact Newton method", SISC 17 (1), pp.16-32, 1996.
@@ -370,12 +370,12 @@
 . -tao_view - prints information about the Tao after solving
 - -tao_converged_reason - prints the reason Tao stopped iterating
 
-  Notes:
+  Level: beginner
+
+  Note:
   To see all options, run your program with the -help option or consult the
  user's manual. Should be called after `TaoCreate()` but before `TaoSolve()`
 
-  Level: beginner
-
 .seealso: `Tao`, `TaoCreate()`, `TaoSolve()`
 @*/
 PetscErrorCode TaoSetFromOptions(Tao tao)
@@ -556,6 +556,7 @@
 -  name - command line option
 
    Level: intermediate
+
 .seealso: `Tao`, `TaoView`, `PetscObjectViewFromOptions()`, `TaoCreate()`
 @*/
 PetscErrorCode TaoViewFromOptions(Tao A, PetscObject obj, const char name[])
@@ -578,6 +579,8 @@
   Options Database Key:
 . -tao_view - Calls `TaoView()` at the end of `TaoSolve()`
 
+  Level: beginner
+
   Notes:
   The available visualization contexts include
 +     `PETSC_VIEWER_STDOUT_SELF` - standard output (default)
@@ -586,8 +589,6 @@
          the file.  All other processors send their
          data to the first processor to print.
 
-  Level: beginner
-
 .seealso: `PetscViewerASCIIOpen()`
 @*/
 PetscErrorCode TaoView(Tao tao, PetscViewer viewer)
@@ -730,6 +731,18 @@
   iterate information from the previous `TaoSolve()`. This feature is disabled by
   default.
 
+  Logically Collective
+
+  Input Parameters:
++ tao - the Tao context
+- recycle - boolean flag
+
+  Options Database Keys:
+. -tao_recycle_history <true,false> - reuse the history
+
+  Level: intermediate
+
+  Notes:
   For conjugate gradient methods (`TAOBNCG`), this re-uses the latest search direction
   from the previous `TaoSolve()` call when computing the first search direction in a
   new solution. By default, CG methods set the first search direction to the
@@ -742,19 +755,7 @@
 
   For any other algorithm, this setting has no effect.
 
-  Logically collective
-
-  Input Parameters:
-+ tao - the Tao context
-- recycle - boolean flag
-
-  Options Database Keys:
-. -tao_recycle_history <true,false> - reuse the history
-
-  Level: intermediate
-
 .seealso: `TaoGetRecycleHistory()`, `TAOBNCG`, `TAOBQNLS`, `TAOBQNKLS`, `TAOBQNKTR`, `TAOBQNKTL`
-
 @*/
 PetscErrorCode TaoSetRecycleHistory(Tao tao, PetscBool recycle)
 {
@@ -769,7 +770,7 @@
   TaoGetRecycleHistory - Retrieve the boolean flag for re-using iterate information
   from the previous `TaoSolve()`. This feature is disabled by default.
 
-  Logically collective
+  Logically Collective
 
   Input Parameters:
 . tao - the Tao context
@@ -780,7 +781,6 @@
   Level: intermediate
 
 .seealso: `TaoSetRecycleHistory()`, `TAOBNCG`, `TAOBQNLS`, `TAOBQNKLS`, `TAOBQNKTR`, `TAOBQNKTL`
-
 @*/
 PetscErrorCode TaoGetRecycleHistory(Tao tao, PetscBool *recycle)
 {
@@ -794,7 +794,7 @@
 /*@
   TaoSetTolerances - Sets parameters used in Tao convergence tests
 
-  Logically collective
+  Logically Collective
 
   Input Parameters:
 + tao - the Tao context
@@ -808,17 +808,18 @@
 - -tao_gttol <gttol> - Sets gttol
 
   Stopping Criteria:
-$ ||g(X)||                            <= gatol
-$ ||g(X)|| / |f(X)|                   <= grtol
-$ ||g(X)|| / ||g(X0)||                <= gttol
-
-  Notes:
-  Use PETSC_DEFAULT to leave one or more tolerances unchanged.
+.vb
+  ||g(X)||                            <= gatol
+  ||g(X)|| / |f(X)|                   <= grtol
+  ||g(X)|| / ||g(X0)||                <= gttol
+.ve
 
   Level: beginner
 
-.seealso: `TaoGetTolerances()`
+  Note:
+  Use `PETSC_DEFAULT` to leave one or more tolerances unchanged.
 
+.seealso: `TaoGetTolerances()`
 @*/
 PetscErrorCode TaoSetTolerances(Tao tao, PetscReal gatol, PetscReal grtol, PetscReal gttol)
 {
@@ -860,24 +861,23 @@
 /*@
   TaoSetConstraintTolerances - Sets constraint tolerance parameters used in Tao convergence tests
 
-  Logically collective
+  Logically Collective
 
   Input Parameters:
 + tao - the Tao context
-. catol - absolute constraint tolerance, constraint norm must be less than catol for used for gatol convergence criteria
-- crtol - relative constraint tolerance, constraint norm must be less than crtol for used for gatol, gttol convergence criteria
+. catol - absolute constraint tolerance, constraint norm must be less than `catol` for used for gatol convergence criteria
+- crtol - relative constraint tolerance, constraint norm must be less than `crtol` for used for gatol, gttol convergence criteria
 
   Options Database Keys:
 + -tao_catol <catol> - Sets catol
 - -tao_crtol <crtol> - Sets crtol
 
-  Notes:
-  Use PETSC_DEFAULT to leave any tolerance unchanged.
-
   Level: intermediate
 
-.seealso: `TaoGetTolerances()`, `TaoGetConstraintTolerances()`, `TaoSetTolerances()`
+  Notes:
+  Use `PETSC_DEFAULT` to leave any tolerance unchanged.
 
+.seealso: `TaoGetTolerances()`, `TaoGetConstraintTolerances()`, `TaoSetTolerances()`
 @*/
 PetscErrorCode TaoSetConstraintTolerances(Tao tao, PetscReal catol, PetscReal crtol)
 {
@@ -909,14 +909,14 @@
 /*@
   TaoGetConstraintTolerances - Gets constraint tolerance parameters used in Tao  convergence tests
 
-  Not ollective
+  Not Collective
 
   Input Parameter:
 . tao - the Tao context
 
   Output Parameters:
-+ catol - absolute constraint tolerance, constraint norm must be less than catol for used for gatol convergence criteria
-- crtol - relative constraint tolerance, constraint norm must be less than crtol for used for gatol, gttol convergence criteria
++ catol - absolute constraint tolerance, constraint norm must be less than `catol` for used for gatol convergence criteria
+- crtol - relative constraint tolerance, constraint norm must be less than `crtol` for used for gatol, gttol convergence criteria
 
   Level: intermediate
 
@@ -965,7 +965,7 @@
    When an approximate solution with an objective value below this number
    has been found, the solver will terminate.
 
-   Not collective
+   Not Collective
 
    Input Parameters:
 .  tao - the Tao solver context
@@ -1123,7 +1123,7 @@
 /*@
    TaoSetInitialTrustRegionRadius - Sets the initial trust region radius.
 
-   Logically collective
+   Logically Collective
 
    Input Parameters:
 +  tao - a Tao optimization solver
@@ -2181,7 +2181,7 @@
   PetscFunctionReturn(0);
 }
 
-/*MC
+/*@C
    TaoRegister - Adds a method to the Tao package for unconstrained minimization.
 
    Synopsis:
@@ -2193,9 +2193,6 @@
 +  sname - name of a new user-defined solver
 -  func - routine to Create method context
 
-   Note:
-   `TaoRegister()` may be called multiple times to add several user-defined solvers.
-
    Sample usage:
 .vb
    TaoRegister("my_solver",MySolverCreate);
@@ -2208,8 +2205,11 @@
 
    Level: advanced
 
+   Note:
+   `TaoRegister()` may be called multiple times to add several user-defined solvers.
+
 .seealso: `Tao`, `TaoSetType()`, `TaoRegisterAll()`, `TaoRegisterDestroy()`
-M*/
+@*/
 PetscErrorCode TaoRegister(const char sname[], PetscErrorCode (*func)(Tao))
 {
   PetscFunctionBegin;
@@ -2226,7 +2226,7 @@
 
    Level: advanced
 
-.seealso: `TaoRegisterAll()`, `TaoRegister()`
+.seealso: `Tao`, `TaoRegisterAll()`, `TaoRegister()`
 @*/
 PetscErrorCode TaoRegisterDestroy(void)
 {
@@ -2253,7 +2253,7 @@
 
    Level: intermediate
 
-.seealso: `TaoGetLinearSolveIterations()`, `TaoGetResidualNorm()`, `TaoGetObjective()`
+.seealso: `Tao`, `TaoGetLinearSolveIterations()`, `TaoGetResidualNorm()`, `TaoGetObjective()`
 @*/
 PetscErrorCode TaoGetIterationNumber(Tao tao, PetscInt *iter)
 {
@@ -2278,10 +2278,11 @@
 
    Level: intermediate
 
-   Developer Note: This is the 2-norm of the residual, we cannot use `TaoGetGradientNorm()` because that has
-                   a different meaning. For some reason Tao sometimes calls the gradient the residual.
+   Developer Note:
+   This is the 2-norm of the residual, we cannot use `TaoGetGradientNorm()` because that has
+   a different meaning. For some reason Tao sometimes calls the gradient the residual.
 
-.seealso: `TaoGetLinearSolveIterations()`, `TaoGetIterationNumber()`, `TaoGetObjective()`
+.seealso: `Tao`, `TaoGetLinearSolveIterations()`, `TaoGetIterationNumber()`, `TaoGetObjective()`
 @*/
 PetscErrorCode TaoGetResidualNorm(Tao tao, PetscReal *value)
 {
@@ -2303,7 +2304,7 @@
 
    Level: developer
 
-.seealso: `TaoGetLinearSolveIterations()`
+.seealso: `Tao`, `TaoGetLinearSolveIterations()`
 @*/
 PetscErrorCode TaoSetIterationNumber(Tao tao, PetscInt iter)
 {
@@ -2329,13 +2330,13 @@
    Output Parameter:
 .  iter - iteration number
 
+   Level: intermediate
+
    Notes:
    The total iteration count is updated after each solve, if there is a current
-   TaoSolve() in progress then those iterations are not yet counted.
-
-   Level: intermediate
+   `TaoSolve()` in progress then those iterations are not yet counted.
 
-.seealso: `TaoGetLinearSolveIterations()`
+.seealso: `Tao`, `TaoGetLinearSolveIterations()`
 @*/
 PetscErrorCode TaoGetTotalIterationNumber(Tao tao, PetscInt *iter)
 {
@@ -2357,7 +2358,7 @@
 
    Level: developer
 
-.seealso: `TaoGetLinearSolveIterations()`
+.seealso: `Tao`, `TaoGetLinearSolveIterations()`
 @*/
 PetscErrorCode TaoSetTotalIterationNumber(Tao tao, PetscInt iter)
 {
@@ -2378,21 +2379,24 @@
   Input Parameters:
 + tao - the Tao context
 - reason - one of
-$     `TAO_CONVERGED_ATOL` (2),
-$     `TAO_CONVERGED_RTOL` (3),
-$     `TAO_CONVERGED_STEPTOL` (4),
-$     `TAO_CONVERGED_MINF` (5),
-$     `TAO_CONVERGED_USER` (6),
-$     `TAO_DIVERGED_MAXITS` (-2),
-$     `TAO_DIVERGED_NAN` (-4),
-$     `TAO_DIVERGED_MAXFCN` (-5),
-$     `TAO_DIVERGED_LS_FAILURE` (-6),
-$     `TAO_DIVERGED_TR_REDUCTION` (-7),
-$     `TAO_DIVERGED_USER` (-8),
-$     `TAO_CONTINUE_ITERATING` (0)
+.vb
+     TAO_CONVERGED_ATOL (2),
+     TAO_CONVERGED_RTOL (3),
+     TAO_CONVERGED_STEPTOL (4),
+     TAO_CONVERGED_MINF (5),
+     TAO_CONVERGED_USER (6),
+     TAO_DIVERGED_MAXITS (-2),
+     TAO_DIVERGED_NAN (-4),
+     TAO_DIVERGED_MAXFCN (-5),
+     TAO_DIVERGED_LS_FAILURE (-6),
+     TAO_DIVERGED_TR_REDUCTION (-7),
+     TAO_DIVERGED_USER (-8),
+     TAO_CONTINUE_ITERATING (0)
+.ve
 
    Level: intermediate
 
+.seealso: `Tao`
 @*/
 PetscErrorCode TaoSetConvergedReason(Tao tao, TaoConvergedReason reason)
 {
@@ -2413,19 +2417,21 @@
 
    Output Parameter:
 .  reason - one of
-$  `TAO_CONVERGED_GATOL` (3)           ||g(X)|| < gatol
-$  `TAO_CONVERGED_GRTOL` (4)           ||g(X)|| / f(X)  < grtol
-$  `TAO_CONVERGED_GTTOL` (5)           ||g(X)|| / ||g(X0)|| < gttol
-$  `TAO_CONVERGED_STEPTOL` (6)         step size small
-$  `TAO_CONVERGED_MINF` (7)            F < F_min
-$  `TAO_CONVERGED_USER` (8)            User defined
-$  `TAO_DIVERGED_MAXITS` (-2)          its > maxits
-$  `TAO_DIVERGED_NAN` (-4)             Numerical problems
-$  `TAO_DIVERGED_MAXFCN` (-5)          fevals > max_funcsals
-$  `TAO_DIVERGED_LS_FAILURE` (-6)      line search failure
-$  `TAO_DIVERGED_TR_REDUCTION` (-7)    trust region failure
-$  `TAO_DIVERGED_USER` (-8)             (user defined)
-$  `TAO_CONTINUE_ITERATING` (0)
+.vb
+  TAO_CONVERGED_GATOL (3)           ||g(X)|| < gatol
+  TAO_CONVERGED_GRTOL (4)           ||g(X)|| / f(X)  < grtol
+  TAO_CONVERGED_GTTOL (5)           ||g(X)|| / ||g(X0)|| < gttol
+  TAO_CONVERGED_STEPTOL (6)         step size small
+  TAO_CONVERGED_MINF (7)            F < F_min
+  TAO_CONVERGED_USER (8)            User defined
+  TAO_DIVERGED_MAXITS (-2)          its > maxits
+  TAO_DIVERGED_NAN (-4)             Numerical problems
+  TAO_DIVERGED_MAXFCN (-5)          fevals > max_funcsals
+  TAO_DIVERGED_LS_FAILURE (-6)      line search failure
+  TAO_DIVERGED_TR_REDUCTION (-7)    trust region failure
+  TAO_DIVERGED_USER (-8)             (user defined)
+  TAO_CONTINUE_ITERATING (0)
+.ve
 
    where
 +  X - current solution
@@ -2441,7 +2447,6 @@
    Level: intermediate
 
 .seealso: `TaoSetConvergenceTest()`, `TaoSetTolerances()`
-
 @*/
 PetscErrorCode TaoGetConvergedReason(Tao tao, TaoConvergedReason *reason)
 {
@@ -2474,7 +2479,7 @@
    Notes:
    Tao returns the values set by the solvers in the routine `TaoMonitor()`.
 
-   If any of the output arguments are set to NULL, no corresponding value will be returned.
+   If any of the output arguments are set to `NULL`, no corresponding value will be returned.
 
 .seealso: `TaoMonitor()`, `TaoGetConvergedReason()`
 @*/
@@ -2569,16 +2574,18 @@
 .  resid - array to hold residual history
 .  cnorm - array to hold constraint violation history
 .  lits - integer array holds the number of linear iterations for each Tao iteration
-.  na  - size of obj, resid, and cnorm
+.  na  - size of `obj`, `resid`, and `cnorm`
 -  reset - `PETSC_TRUE` indicates each new minimization resets the history counter to zero,
            else it continues storing new values for new minimizations after the old ones
 
+   Level: intermediate
+
    Notes:
    If set, Tao will fill the given arrays with the indicated
    information at each iteration.  If 'obj','resid','cnorm','lits' are
-   *all* NULL then space (using size na, or 1000 if na is `PETSC_DECIDE` or
+   *all* `NULL` then space (using size `na`, or 1000 if na is `PETSC_DECIDE` or
    `PETSC_DEFAULT`) is allocated for the history.
-   If not all are NULL, then only the non-NULL information categories
+   If not all are `NULL`, then only the non-`NULL` information categories
    will be stored, the others will be ignored.
 
    Any convergence information after iteration number 'na' will not be stored.
@@ -2587,10 +2594,7 @@
    of accurate performance monitoring, when no I/O should be done
    during the section of code that is being timed.
 
-   Level: intermediate
-
 .seealso: `TaoGetConvergenceHistory()`
-
 @*/
 PetscErrorCode TaoSetConvergenceHistory(Tao tao, PetscReal obj[], PetscReal resid[], PetscReal cnorm[], PetscInt lits[], PetscInt na, PetscBool reset)
 {
@@ -2630,23 +2634,25 @@
 .  resid - array used to hold residual history
 .  cnorm - array used to hold constraint violation history
 .  lits  - integer array used to hold linear solver iteration count
--  nhist  - size of obj, resid, cnorm, and lits
+-  nhist  - size of `obj`, `resid`, `cnorm`, and `lits`
+
+   Level: advanced
 
    Notes:
     This routine must be preceded by calls to `TaoSetConvergenceHistory()`
     and `TaoSolve()`, otherwise it returns useless information.
 
-    The calling sequence for this routine in Fortran is
-$   call TaoGetConvergenceHistory(Tao tao, PetscInt nhist, PetscErrorCode ierr)
-
    This routine is useful, e.g., when running a code for purposes
    of accurate performance monitoring, when no I/O should be done
    during the section of code that is being timed.
 
-   Level: advanced
+   Fortran Note:
+   The calling sequence is
+.vb
+   call TaoGetConvergenceHistory(Tao tao, PetscInt nhist, PetscErrorCode ierr)
+.ve
 
 .seealso: `Tao`, `TaoSolve()`, `TaoSetConvergenceHistory()`
-
 @*/
 PetscErrorCode TaoGetConvergenceHistory(Tao tao, PetscReal **obj, PetscReal **resid, PetscReal **cnorm, PetscInt **lits, PetscInt *nhist)
 {
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/tao/leastsquares/tutorials/cs1.c petsc-3.18.5+dfsg1/src/tao/leastsquares/tutorials/cs1.c
--- petsc-3.18.4+dfsg1/src/tao/leastsquares/tutorials/cs1.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/tao/leastsquares/tutorials/cs1.c	2023-02-27 23:11:05.000000000 +0100
@@ -196,7 +196,7 @@
 /* ---------------------------------------------------------------------- */
 PetscErrorCode InitializeUserData(AppCtx *user)
 {
-  PetscReal *b = user->b; /* **A=user->A, but we don't kown the dimension of A in this way, how to fix? */
+  PetscReal *b = user->b; /* **A=user->A, but we don't know the dimension of A in this way, how to fix? */
   PetscInt   m, n, k;     /* loop index for M,N,K dimension. */
 
   PetscFunctionBegin;
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/tao/leastsquares/tutorials/tomographyGenerateData.m petsc-3.18.5+dfsg1/src/tao/leastsquares/tutorials/tomographyGenerateData.m
--- petsc-3.18.4+dfsg1/src/tao/leastsquares/tutorials/tomographyGenerateData.m	2022-06-29 08:00:08.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/tao/leastsquares/tutorials/tomographyGenerateData.m	2023-02-27 23:11:05.000000000 +0100
@@ -10,7 +10,7 @@
 % NTheta*NTau:  Sinogram Size
 % L:            Forward Model, sparse matrix of NTheta*NTau by Ny*Nx
 % SAll:         Sinogram for all scans of NTheta*NTau*NScan, SAll(:,:,n) for the nth scan
-NTheta = 20;  % sample angle #. Use odd NOT even, for display purpose of sinagram of Phantom. As even NTheta will include theta of 90 degree where sinagram will be very bright as Phantom sample has verical bright line on left and right boundary.
+NTheta = 20;  % sample angle #. Use odd NOT even, for display purpose of sinagram of Phantom. As even NTheta will include theta of 90 degree where sinagram will be very bright as Phantom sample has vertical bright line on left and right boundary.
 NTau = ceil(sqrt(sum(WSz.^2))); NTau = NTau + rem(NTau-Ny,2); % number of discrete beam, enough to cover object diagonal, also use + rem(NTau-Ny,2) to make NTau the same odd/even as Ny just for perfection, so that for theta=0, we have sum(WGT, 2)' and  S(1, (1:Ny)+(NTau-Ny)/2) are the same with a scale factor
 SSz = [NTheta, NTau];
 L = XTM_Tensor_XH(WSz, NTheta, NTau);
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/tao/quadratic/impls/gpcg/gpcg.h petsc-3.18.5+dfsg1/src/tao/quadratic/impls/gpcg/gpcg.h
--- petsc-3.18.4+dfsg1/src/tao/quadratic/impls/gpcg/gpcg.h	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/tao/quadratic/impls/gpcg/gpcg.h	2023-02-27 23:11:05.000000000 +0100
@@ -52,7 +52,7 @@
   PetscInt n_free; /* Number of free variables */
   PetscInt n_upper;
   PetscInt n_lower;
-  PetscInt n_bind; /* Number of binding varibles */
+  PetscInt n_bind; /* Number of binding variables */
   PetscInt ksp_type;
   PetscInt subset_type;
 } TAO_GPCG;
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/tao/unconstrained/impls/nls/nls.c petsc-3.18.5+dfsg1/src/tao/unconstrained/impls/nls/nls.c
--- petsc-3.18.4+dfsg1/src/tao/unconstrained/impls/nls/nls.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/tao/unconstrained/impls/nls/nls.c	2023-02-27 23:11:05.000000000 +0100
@@ -836,7 +836,7 @@
 . -tao_nls_pmsfac - merit shrink factor
 . -tao_nls_eta1 - poor steplength; reduce radius
 . -tao_nls_eta2 - reasonable steplength; leave radius
-. -tao_nls_eta3 - good steplength; increase readius
+. -tao_nls_eta3 - good steplength; increase radius
 . -tao_nls_eta4 - excellent steplength; greatly increase radius
 . -tao_nls_alpha1 - alpha1 reduction
 . -tao_nls_alpha2 - alpha2 reduction
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/ts/adapt/interface/tsadapt.c petsc-3.18.5+dfsg1/src/ts/adapt/interface/tsadapt.c
--- petsc-3.18.4+dfsg1/src/ts/adapt/interface/tsadapt.c	2022-12-28 20:00:16.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/ts/adapt/interface/tsadapt.c	2023-02-27 23:11:05.000000000 +0100
@@ -844,7 +844,7 @@
    Collective
 
    Input Parameters:
-+  adapt - adaptive contoller
++  adapt - adaptive controller
 .  ts - time stepper
 -  h - current step size
 
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/ts/event/tsevent.c petsc-3.18.5+dfsg1/src/ts/event/tsevent.c
--- petsc-3.18.4+dfsg1/src/ts/event/tsevent.c	2022-12-28 20:00:16.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/ts/event/tsevent.c	2023-02-27 23:11:05.000000000 +0100
@@ -453,7 +453,7 @@
   PetscCall(MPIU_Allreduce(in, out, 2, MPIU_INT, MPI_MAX, PetscObjectComm((PetscObject)ts)));
   event->status = (TSEventStatus)out[0];
   rollback      = out[1];
-  /* If rollback is true, the status will be overwritten so that an event at the endtime of current time step will be postponed to guarantee corret order */
+  /* If rollback is true, the status will be overwritten so that an event at the endtime of current time step will be postponed to guarantee correct order */
   if (rollback) event->status = TSEVENT_LOCATED_INTERVAL;
   if (event->status == TSEVENT_ZERO) {
     for (i = 0; i < event->nevents; i++) {
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/ts/f90-mod/ftn-auto-interfaces/petsclandau.h90 petsc-3.18.5+dfsg1/src/ts/f90-mod/ftn-auto-interfaces/petsclandau.h90
--- petsc-3.18.4+dfsg1/src/ts/f90-mod/ftn-auto-interfaces/petsclandau.h90	2023-01-31 07:00:50.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/ts/f90-mod/ftn-auto-interfaces/petsclandau.h90	2023-02-27 23:28:35.000000000 +0100
@@ -10,7 +10,7 @@
        PetscErrorCode z
        end subroutine DMPlexLandauPrintNorms
       subroutine DMPlexLandauCreateMassMatrix(a,b,z)
-       import tMat,tDM
+       import tDM,tMat
        DM a ! DM
        Mat b ! Mat
        PetscErrorCode z
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/ts/f90-mod/ftn-auto-interfaces/petscsensitivity.h90 petsc-3.18.5+dfsg1/src/ts/f90-mod/ftn-auto-interfaces/petscsensitivity.h90
--- petsc-3.18.4+dfsg1/src/ts/f90-mod/ftn-auto-interfaces/petscsensitivity.h90	2023-01-31 07:00:50.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/ts/f90-mod/ftn-auto-interfaces/petscsensitivity.h90	2023-02-27 23:28:35.000000000 +0100
@@ -33,7 +33,7 @@
        PetscErrorCode z
        end subroutine TSGetCostHessianProducts
       subroutine TSAdjointSetForward(a,b,z)
-       import tMat,tTS
+       import tTS,tMat
        TS a ! TS
        Mat b ! Mat
        PetscErrorCode z
@@ -120,14 +120,14 @@
        PetscErrorCode z
        end subroutine TSForwardStep
       subroutine TSForwardSetSensitivities(a,b,c,z)
-       import tMat,tTS
+       import tTS,tMat
        TS a ! TS
        PetscInt b ! PetscInt
        Mat c ! Mat
        PetscErrorCode z
        end subroutine TSForwardSetSensitivities
       subroutine TSForwardGetSensitivities(a,b,c,z)
-       import tMat,tTS
+       import tTS,tMat
        TS a ! TS
        PetscInt b ! PetscInt
        Mat c ! Mat
@@ -139,13 +139,13 @@
        PetscErrorCode z
        end subroutine TSForwardCostIntegral
       subroutine TSForwardSetInitialSensitivities(a,b,z)
-       import tMat,tTS
+       import tTS,tMat
        TS a ! TS
        Mat b ! Mat
        PetscErrorCode z
        end subroutine TSForwardSetInitialSensitivities
       subroutine TSForwardGetStages(a,b,c,z)
-       import tMat,tTS
+       import tTS,tMat
        TS a ! TS
        PetscInt b ! PetscInt
        Mat c ! Mat
@@ -166,7 +166,7 @@
        PetscErrorCode z
        end subroutine TSGetQuadratureTS
       subroutine TSComputeSNESJacobian(a,b,c,d,z)
-       import tMat,tTS,tVec
+       import tTS,tMat,tVec
        TS a ! TS
        Vec b ! Vec
        Mat c ! Mat
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/ts/f90-mod/ftn-auto-interfaces/petscts.h90 petsc-3.18.5+dfsg1/src/ts/f90-mod/ftn-auto-interfaces/petscts.h90
--- petsc-3.18.4+dfsg1/src/ts/f90-mod/ftn-auto-interfaces/petscts.h90	2023-01-31 07:00:50.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/ts/f90-mod/ftn-auto-interfaces/petscts.h90	2023-02-27 23:28:35.000000000 +0100
@@ -295,7 +295,7 @@
        PetscErrorCode z
        end subroutine TSSundialsSetTolerance
       subroutine TSSundialsGetPC(a,b,z)
-       import tTS,tPC
+       import tPC,tTS
        TS a ! TS
        PC b ! PC
        PetscErrorCode z
@@ -379,7 +379,7 @@
        PetscErrorCode z
        end subroutine TSSetFromOptions
       subroutine TSGetTrajectory(a,b,z)
-       import tTS,tTSTrajectory
+       import tTSTrajectory,tTS
        TS a ! TS
        TSTrajectory b ! TSTrajectory
        PetscErrorCode z
@@ -400,7 +400,7 @@
        PetscErrorCode z
        end subroutine TSRemoveTrajectory
       subroutine TSComputeRHSJacobian(a,b,c,d,e,z)
-       import tMat,tTS,tVec
+       import tTS,tMat,tVec
        TS a ! TS
        PetscReal b ! PetscReal
        Vec c ! Vec
@@ -441,7 +441,7 @@
        PetscErrorCode z
        end subroutine TSComputeIFunction
       subroutine TSComputeIJacobian(a,b,c,d,e,f,g,h,z)
-       import tMat,tTS,tVec
+       import tTS,tMat,tVec
        TS a ! TS
        PetscReal b ! PetscReal
        Vec c ! Vec
@@ -469,7 +469,7 @@
        PetscErrorCode z
        end subroutine TSComputeI2Function
       subroutine TSComputeI2Jacobian(a,b,c,d,e,f,g,h,i,z)
-       import tMat,tTS,tVec
+       import tTS,tMat,tVec
        TS a ! TS
        PetscReal b ! PetscReal
        Vec c ! Vec
@@ -593,13 +593,13 @@
        PetscErrorCode z
        end subroutine TSReset
       subroutine TSGetSNES(a,b,z)
-       import tSNES,tTS
+       import tTS,tSNES
        TS a ! TS
        SNES b ! SNES
        PetscErrorCode z
        end subroutine TSGetSNES
       subroutine TSSetSNES(a,b,z)
-       import tSNES,tTS
+       import tTS,tSNES
        TS a ! TS
        SNES b ! SNES
        PetscErrorCode z
@@ -768,13 +768,13 @@
        PetscErrorCode z
        end subroutine TSSetTime
       subroutine TSSetDM(a,b,z)
-       import tDM,tTS
+       import tTS,tDM
        TS a ! TS
        DM b ! DM
        PetscErrorCode z
        end subroutine TSSetDM
       subroutine TSGetDM(a,b,z)
-       import tDM,tTS
+       import tTS,tDM
        TS a ! TS
        DM b ! DM
        PetscErrorCode z
@@ -1053,7 +1053,7 @@
        PetscErrorCode z
        end subroutine TSTrajectoryGetNumSteps
       subroutine TSTrajectoryGet(a,b,c,d,z)
-       import tTS,tTSTrajectory
+       import tTSTrajectory,tTS
        TSTrajectory a ! TSTrajectory
        TS b ! TS
        PetscInt c ! PetscInt
@@ -1105,13 +1105,13 @@
        PetscErrorCode z
        end subroutine TSTrajectorySetKeepFiles
       subroutine TSTrajectorySetFromOptions(a,b,z)
-       import tTS,tTSTrajectory
+       import tTSTrajectory,tTS
        TSTrajectory a ! TSTrajectory
        TS b ! TS
        PetscErrorCode z
        end subroutine TSTrajectorySetFromOptions
       subroutine TSTrajectorySetUp(a,b,z)
-       import tTS,tTSTrajectory
+       import tTSTrajectory,tTS
        TSTrajectory a ! TSTrajectory
        TS b ! TS
        PetscErrorCode z
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/ts/impls/arkimex/arkimex.c petsc-3.18.5+dfsg1/src/ts/impls/arkimex/arkimex.c
--- petsc-3.18.4+dfsg1/src/ts/impls/arkimex/arkimex.c	2022-11-28 17:22:18.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/ts/impls/arkimex/arkimex.c	2023-02-27 23:11:05.000000000 +0100
@@ -126,7 +126,7 @@
 /*MC
      TSARKIMEX2D - Second order ARK IMEX scheme with L-stable implicit part.
 
-     This method has one explicit stage and two implicit stages. The stability function is independent of the explicit part in the infinity limit of the implict component. This method was provided by Emil Constantinescu.
+     This method has one explicit stage and two implicit stages. The stability function is independent of the explicit part in the infinity limit of the implicit component. This method was provided by Emil Constantinescu.
 
      Options Database Key:
 .      -ts_arkimex_type 2d - set arkimex type to 2d
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/ts/impls/explicit/rk/mrk.c petsc-3.18.5+dfsg1/src/ts/impls/explicit/rk/mrk.c
--- petsc-3.18.4+dfsg1/src/ts/impls/explicit/rk/mrk.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/ts/impls/explicit/rk/mrk.c	2023-02-27 23:11:05.000000000 +0100
@@ -8,7 +8,7 @@
   2) The general system is written as
      Usdot = Fs(t,Us,Uf)
      Ufdot = Ff(t,Us,Uf) for multi-rate RK with RHS splits,
-     user should partioned RHS by themselves and also provide the indexes for both slow and fast components.
+     user should partition RHS by themselves and also provide the indexes for both slow and fast components.
 */
 
 #include <petsc/private/tsimpl.h>
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/ts/impls/explicit/rk/rk.c petsc-3.18.5+dfsg1/src/ts/impls/explicit/rk/rk.c
--- petsc-3.18.4+dfsg1/src/ts/impls/explicit/rk/rk.c	2022-11-28 17:22:18.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/ts/impls/explicit/rk/rk.c	2023-02-27 23:11:05.000000000 +0100
@@ -1433,7 +1433,7 @@
   Level: intermediate
 
   Note:
-  The multirate method requires interpolation. The default interpolation works for 1st- and 2nd- order RK, but not for high-order RKs except `TSRK5DP` which comes with the interpolation coeffcients (binterp).
+  The multirate method requires interpolation. The default interpolation works for 1st- and 2nd- order RK, but not for high-order RKs except `TSRK5DP` which comes with the interpolation coefficients (binterp).
 
 .seealso: [](chapter_ts), `TSRK`, `TSRKGetMultirate()`
 @*/
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/ts/impls/implicit/theta/theta.c petsc-3.18.5+dfsg1/src/ts/impls/implicit/theta/theta.c
--- petsc-3.18.4+dfsg1/src/ts/impls/implicit/theta/theta.c	2022-11-28 17:22:18.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/ts/impls/implicit/theta/theta.c	2023-02-27 23:11:05.000000000 +0100
@@ -402,7 +402,7 @@
   KSP          ksp;
   PetscScalar *xarr;
   PetscReal    adjoint_time_step;
-  PetscReal    adjoint_ptime; /* end time of the adjoint time step (ts->ptime is the start time, ususally ts->ptime is larger than adjoint_ptime) */
+  PetscReal    adjoint_ptime; /* end time of the adjoint time step (ts->ptime is the start time, usually ts->ptime is larger than adjoint_ptime) */
 
   PetscFunctionBegin;
   if (th->Theta == 1.) {
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/ts/interface/sensitivity/tssen.c petsc-3.18.5+dfsg1/src/ts/interface/sensitivity/tssen.c
--- petsc-3.18.4+dfsg1/src/ts/interface/sensitivity/tssen.c	2023-01-31 06:19:48.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/ts/interface/sensitivity/tssen.c	2023-02-27 23:11:05.000000000 +0100
@@ -1869,7 +1869,7 @@
   /*
     Unlike implicit methods, explicit methods do not have SNESMatFDColoring in the snes object
     because SNESSolve() has not been called yet; so querying SNESMatFDColoring does not work for
-    explicit methods. Instead, we check the Jacobian compute function directly to determin if FD
+    explicit methods. Instead, we check the Jacobian compute function directly to determine if FD
     coloring is used.
   */
   PetscCall(SNESGetJacobian(snes, NULL, NULL, &jac, NULL));
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/ts/tests/ex28.c petsc-3.18.5+dfsg1/src/ts/tests/ex28.c
--- petsc-3.18.4+dfsg1/src/ts/tests/ex28.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/ts/tests/ex28.c	2023-02-27 23:11:05.000000000 +0100
@@ -116,7 +116,7 @@
   PetscFunctionReturn(0);
 }
 
-/* The intiial conditions are just the initial particle weights */
+/* The initial conditions are just the initial particle weights */
 static PetscErrorCode SetInitialConditions(DM dmSw, Vec u)
 {
   DM           dm;
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/ts/tests/ex5.c petsc-3.18.5+dfsg1/src/ts/tests/ex5.c
--- petsc-3.18.4+dfsg1/src/ts/tests/ex5.c	2022-11-28 17:22:18.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/ts/tests/ex5.c	2023-02-27 23:11:05.000000000 +0100
@@ -148,7 +148,7 @@
   PetscInt      time; /* amount of loops */
   struct in     put;
   PetscScalar   rh;                 /* relative humidity */
-  PetscScalar   x;                  /* memory varialbe for relative humidity calculation */
+  PetscScalar   x;                  /* memory variable for relative humidity calculation */
   PetscScalar   deep_grnd_temp;     /* temperature of ground under top soil surface layer */
   PetscScalar   emma;               /* absorption-emission constant for air */
   PetscScalar   pressure1 = 101300; /* surface pressure */
@@ -400,7 +400,7 @@
   PetscScalar e;        /* vapor pressure */
   PetscScalar mixratio; /* mixing ratio */
 
-  dtemp    = dtemp - 273;                                                    /* converts from Kelvin to Celsuis */
+  dtemp    = dtemp - 273;                                                    /* converts from Kelvin to Celsius */
   e        = 6.11 * (PetscPowScalar(10, ((7.5 * dtemp) / (237.7 + dtemp)))); /* converts from dew point temp to vapor pressure */
   e        = e * 100;                                                        /* converts from hPa to Pa */
   mixratio = (0.622 * e) / (pressure1 - e);                                  /* computes mixing ratio */
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/ts/tests/ex5_control.txt petsc-3.18.5+dfsg1/src/ts/tests/ex5_control.txt
--- petsc-3.18.4+dfsg1/src/ts/tests/ex5_control.txt	2022-06-29 08:00:08.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/ts/tests/ex5_control.txt	2023-02-27 23:11:05.000000000 +0100
@@ -11,11 +11,11 @@
 11. Wind direction........................90
 13. RUNTIME...............................12
 
-14. INITAL DOMAIN:
+14. INITIAL DOMAIN:
 15. Initiation specifier..................1
 
 INITIAL DOMAIN DESCRIPTION:
-- To only diabatic dT/dt contributions (all fileds uniform throughout grid) enter 0 in line 15
+- To only diabatic dT/dt contributions (all fields uniform throughout grid) enter 0 in line 15
 - Default initiation is a west-east temperature gradient, wind = 0, and two high pressure perturbations in the mass field
 
 
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/ts/tutorials/advection-diffusion-reaction/ex1.c petsc-3.18.5+dfsg1/src/ts/tutorials/advection-diffusion-reaction/ex1.c
--- petsc-3.18.4+dfsg1/src/ts/tutorials/advection-diffusion-reaction/ex1.c	2023-01-31 06:19:48.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/ts/tutorials/advection-diffusion-reaction/ex1.c	2023-02-27 23:11:05.000000000 +0100
@@ -17,7 +17,7 @@
 
      Helpful runtime monitoring options:
          -ts_view                  -  prints information about the solver being used
-         -ts_monitor               -  prints the progess of the solver
+         -ts_monitor               -  prints the progress of the solver
          -ts_adapt_monitor         -  prints the progress of the time-step adaptor
          -ts_monitor_lg_timestep   -  plots the size of each timestep (at each time-step)
          -ts_monitor_lg_solution   -  plots each component of the solution as a function of time (at each timestep)
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/ts/tutorials/advection-diffusion-reaction/ex4.c petsc-3.18.5+dfsg1/src/ts/tutorials/advection-diffusion-reaction/ex4.c
--- petsc-3.18.4+dfsg1/src/ts/tutorials/advection-diffusion-reaction/ex4.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/ts/tutorials/advection-diffusion-reaction/ex4.c	2023-02-27 23:11:05.000000000 +0100
@@ -7,7 +7,7 @@
         rho_t =
         c_t   =
 
-     Further discusson on Page 134 and in 2d on Page 409
+     Further discussion on Page 134 and in 2d on Page 409
 */
 
 /*
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/ts/tutorials/advection-diffusion-reaction/ex5opt_ic.c petsc-3.18.5+dfsg1/src/ts/tutorials/advection-diffusion-reaction/ex5opt_ic.c
--- petsc-3.18.4+dfsg1/src/ts/tutorials/advection-diffusion-reaction/ex5opt_ic.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/ts/tutorials/advection-diffusion-reaction/ex5opt_ic.c	2023-02-27 23:11:05.000000000 +0100
@@ -6,7 +6,7 @@
    time-dependent partial differential equations.
    In this problem, the initial value for the PDE is unknown, but the output (the final solution of the PDE) is known.
    We want to determine the initial value that can produce the given output.
-   We formulate the problem as a nonlinear optimization problem that minimizes the discrepency between the simulated
+   We formulate the problem as a nonlinear optimization problem that minimizes the discrepancy between the simulated
    result and given reference solution, calculate the gradient of the objective function with the discrete adjoint
    solver, and solve the optimization problem with TAO.
 
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/ts/tutorials/ex11.c petsc-3.18.5+dfsg1/src/ts/tutorials/ex11.c
--- petsc-3.18.4+dfsg1/src/ts/tutorials/ex11.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/ts/tutorials/ex11.c	2023-02-27 23:11:05.000000000 +0100
@@ -84,7 +84,7 @@
 };
 
 struct _n_Model {
-  MPI_Comm         comm; /* Does not do collective communicaton, but some error conditions can be collective */
+  MPI_Comm         comm; /* Does not do collective communication, but some error conditions can be collective */
   Physics          physics;
   FunctionalLink   functionalRegistry;
   PetscInt         maxComputed;
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/ts/tutorials/ex11_sa.c petsc-3.18.5+dfsg1/src/ts/tutorials/ex11_sa.c
--- petsc-3.18.4+dfsg1/src/ts/tutorials/ex11_sa.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/ts/tutorials/ex11_sa.c	2023-02-27 23:11:05.000000000 +0100
@@ -86,7 +86,7 @@
 };
 
 struct _n_Model {
-  MPI_Comm         comm; /* Does not do collective communicaton, but some error conditions can be collective */
+  MPI_Comm         comm; /* Does not do collective communication, but some error conditions can be collective */
   Physics          physics;
   FunctionalLink   functionalRegistry;
   PetscInt         maxComputed;
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/ts/tutorials/ex14.c petsc-3.18.5+dfsg1/src/ts/tutorials/ex14.c
--- petsc-3.18.4+dfsg1/src/ts/tutorials/ex14.c	2022-12-28 20:00:16.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/ts/tutorials/ex14.c	2023-02-27 23:11:05.000000000 +0100
@@ -603,7 +603,7 @@
     thi->erosion.refvel *= units->meter / units->year;
     PetscCall(PetscOptionsReal("-thi_dirichlet_scale", "Scale Dirichlet boundary conditions by this factor", "", thi->dirichlet_scale, &thi->dirichlet_scale, NULL));
     PetscCall(PetscOptionsReal("-thi_ssa_friction_scale", "Scale slip boundary conditions by this factor in SSA (2D) assembly", "", thi->ssa_friction_scale, &thi->ssa_friction_scale, NULL));
-    PetscCall(PetscOptionsReal("-thi_inertia", "Coefficient of accelaration term in velocity system, physical is almost zero", NULL, thi->inertia, &thi->inertia, NULL));
+    PetscCall(PetscOptionsReal("-thi_inertia", "Coefficient of acceleration term in velocity system, physical is almost zero", NULL, thi->inertia, &thi->inertia, NULL));
     PetscCall(PetscOptionsInt("-thi_nlevels", "Number of levels of refinement", "", thi->nlevels, &thi->nlevels, NULL));
     PetscCall(PetscOptionsFList("-thi_mat_type", "Matrix type", "MatSetType", MatList, mtype, (char *)mtype, sizeof(mtype), NULL));
     PetscCall(PetscStrallocpy(mtype, &thi->mattype));
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/ts/tutorials/ex20fwd.c petsc-3.18.5+dfsg1/src/ts/tutorials/ex20fwd.c
--- petsc-3.18.4+dfsg1/src/ts/tutorials/ex20fwd.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/ts/tutorials/ex20fwd.c	2023-02-27 23:11:05.000000000 +0100
@@ -7,8 +7,8 @@
 
 /* ------------------------------------------------------------------------
 
-   This code demonstrates how to compute trajectory sensitivties w.r.t. the stiffness parameter mu.
-   1) Use two vectors s and sp for sensitivities w.r.t. initial values and paraeters respectively. This case requires the original Jacobian matrix and a JacobianP matrix for the only parameter mu.
+   This code demonstrates how to compute trajectory sensitivities w.r.t. the stiffness parameter mu.
+   1) Use two vectors s and sp for sensitivities w.r.t. initial values and parameters respectively. This case requires the original Jacobian matrix and a JacobianP matrix for the only parameter mu.
    2) Consider the initial values to be parameters as well. Then there are three parameters in total. The JacobianP matrix will be combined matrix of the Jacobian matrix and JacobianP matrix in the previous case. This choice can be selected by using command line option '-combined'
 
   ------------------------------------------------------------------------- */
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/ts/tutorials/ex20td.c petsc-3.18.5+dfsg1/src/ts/tutorials/ex20td.c
--- petsc-3.18.4+dfsg1/src/ts/tutorials/ex20td.c	2022-11-28 17:22:18.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/ts/tutorials/ex20td.c	2023-02-27 23:11:05.000000000 +0100
@@ -14,7 +14,7 @@
    [u2'] = [mu2(t)*((1-u1^2)*u2-u1)]
    (with initial conditions & params independent)
 
-   Define uref to be solution with initail conditions (2,-2/3), mu=(1,1e3)
+   Define uref to be solution with initial conditions (2,-2/3), mu=(1,1e3)
    - u_ref : (1.5967,-1.02969)
 
    Define const function as cost = 2-norm(u - u_ref);
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/ts/tutorials/ex26.c petsc-3.18.5+dfsg1/src/ts/tutorials/ex26.c
--- petsc-3.18.4+dfsg1/src/ts/tutorials/ex26.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/ts/tutorials/ex26.c	2023-02-27 23:11:05.000000000 +0100
@@ -2,7 +2,7 @@
 static char help[] = "Transient nonlinear driven cavity in 2d.\n\
   \n\
 The 2D driven cavity problem is solved in a velocity-vorticity formulation.\n\
-The flow can be driven with the lid or with bouyancy or both:\n\
+The flow can be driven with the lid or with buoyancy or both:\n\
   -lidvelocity <lid>, where <lid> = dimensionless velocity of lid\n\
   -grashof <gr>, where <gr> = dimensionless temperature gradent\n\
   -prandtl <pr>, where <pr> = dimensionless thermal/momentum diffusity ratio\n\
@@ -140,7 +140,7 @@
   PetscOptionsBegin(PETSC_COMM_WORLD, NULL, "Driven cavity/natural convection options", "");
   PetscCall(PetscOptionsReal("-lidvelocity", "Lid velocity, related to Reynolds number", "", user.lidvelocity, &user.lidvelocity, NULL));
   PetscCall(PetscOptionsReal("-prandtl", "Ratio of viscous to thermal diffusivity", "", user.prandtl, &user.prandtl, NULL));
-  PetscCall(PetscOptionsReal("-grashof", "Ratio of bouyant to viscous forces", "", user.grashof, &user.grashof, NULL));
+  PetscCall(PetscOptionsReal("-grashof", "Ratio of buoyant to viscous forces", "", user.grashof, &user.grashof, NULL));
   PetscCall(PetscOptionsBool("-parabolic", "Relax incompressibility to make the system parabolic instead of differential-algebraic", "", user.parabolic, &user.parabolic, NULL));
   PetscCall(PetscOptionsReal("-cfl_initial", "Advective CFL for the first time step", "", user.cfl_initial, &user.cfl_initial, NULL));
   PetscOptionsEnd();
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/ts/tutorials/ex36.c petsc-3.18.5+dfsg1/src/ts/tutorials/ex36.c
--- petsc-3.18.4+dfsg1/src/ts/tutorials/ex36.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/ts/tutorials/ex36.c	2023-02-27 23:11:05.000000000 +0100
@@ -152,7 +152,7 @@
   PetscCall(TSCreate(PETSC_COMM_WORLD, &ts));
   PetscCall(TSSetProblemType(ts, TS_NONLINEAR));
   PetscCall(TSSetType(ts, TSARKIMEX));
-  /* Must use ARKIMEX with fully implicit stages since mass matrix is not the indentity */
+  /* Must use ARKIMEX with fully implicit stages since mass matrix is not the identity */
   PetscCall(TSARKIMEXSetType(ts, TSARKIMEXPRSSP2));
   PetscCall(TSSetEquationType(ts, TS_EQ_DAE_IMPLICIT_INDEX1));
   /*PetscCall(TSSetType(ts,TSROSW));*/
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/ts/tutorials/ex9.c petsc-3.18.5+dfsg1/src/ts/tutorials/ex9.c
--- petsc-3.18.4+dfsg1/src/ts/tutorials/ex9.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/ts/tutorials/ex9.c	2023-02-27 23:11:05.000000000 +0100
@@ -656,7 +656,7 @@
 
 typedef struct {
   PetscReal c; /* speed of sound: c = sqrt(bulk/rho) */
-  PetscReal z; /* impedence: z = sqrt(rho*bulk) */
+  PetscReal z; /* impedance: z = sqrt(rho*bulk) */
 } AcousticsCtx;
 
 PETSC_UNUSED static inline void AcousticsFlux(AcousticsCtx *ctx, const PetscScalar *u, PetscScalar *f)
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/ts/tutorials/multirate/ex5.c petsc-3.18.5+dfsg1/src/ts/tutorials/multirate/ex5.c
--- petsc-3.18.4+dfsg1/src/ts/tutorials/multirate/ex5.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/ts/tutorials/multirate/ex5.c	2023-02-27 23:11:05.000000000 +0100
@@ -52,7 +52,7 @@
   speed = ctx->a;
   if (x == 0 || x == xmin || x == xmax)
     flux[0] = PetscMax(0, (speed[0] + speed[1]) / 2.0) * uL[0] + PetscMin(0, (speed[0] + speed[1]) / 2.0) * uR[0]; /* if condition need to be changed base on different problem, '0' is the discontinuous point of a */
-  else if (x < 0) flux[0] = PetscMax(0, speed[0]) * uL[0] + PetscMin(0, speed[0]) * uR[0];                         /* else if condition need to be changed based on diferent problem, 'x = 0' is discontinuous point of a */
+  else if (x < 0) flux[0] = PetscMax(0, speed[0]) * uL[0] + PetscMin(0, speed[0]) * uR[0];                         /* else if condition need to be changed based on different problem, 'x = 0' is discontinuous point of a */
   else flux[0] = PetscMax(0, speed[1]) * uL[0] + PetscMin(0, speed[1]) * uR[0];
   *maxspeed = *speed;
   PetscFunctionReturn(0);
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/ts/tutorials/multirate/finitevolume1d.h petsc-3.18.5+dfsg1/src/ts/tutorials/multirate/finitevolume1d.h
--- petsc-3.18.4+dfsg1/src/ts/tutorials/multirate/finitevolume1d.h	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/ts/tutorials/multirate/finitevolume1d.h	2023-02-27 23:11:05.000000000 +0100
@@ -36,7 +36,7 @@
   FVBC_INFLOW
 } FVBCType;
 extern const char *FVBCTypes[];
-/* we add three new variables at the end of input parameters of function to be position of cell center, left bounday of domain, right boundary of domain */
+/* we add three new variables at the end of input parameters of function to be position of cell center, left boundary of domain, right boundary of domain */
 typedef PetscErrorCode (*RiemannFunction)(void *, PetscInt, const PetscScalar *, const PetscScalar *, PetscScalar *, PetscReal *, PetscReal, PetscReal, PetscReal);
 typedef PetscErrorCode (*ReconstructFunction)(void *, PetscInt, const PetscScalar *, PetscScalar *, PetscScalar *, PetscReal *, PetscReal);
 
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/ts/tutorials/network/wash.h petsc-3.18.5+dfsg1/src/ts/tutorials/network/wash.h
--- petsc-3.18.4+dfsg1/src/ts/tutorials/network/wash.h	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/ts/tutorials/network/wash.h	2023-02-27 23:11:05.000000000 +0100
@@ -54,7 +54,7 @@
   PetscInt  nedge, nvertex;    /* local number of components */
   PetscInt  Nedge, Nvertex;    /* global number of components */
   PetscInt *edgelist;          /* local edge list */
-  Vec       localX, localXdot; /* vectors used in local function evalutation */
+  Vec       localX, localXdot; /* vectors used in local function evaluation */
   PetscInt  nnodes_loc;        /* num of global and local nodes */
 
   /* Junction */
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/ts/utils/dmplexlandau/plexland.c petsc-3.18.5+dfsg1/src/ts/utils/dmplexlandau/plexland.c
--- petsc-3.18.4+dfsg1/src/ts/utils/dmplexlandau/plexland.c	2022-12-28 20:00:16.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/ts/utils/dmplexlandau/plexland.c	2023-02-27 23:11:05.000000000 +0100
@@ -31,7 +31,7 @@
   if (maps[0].deviceType != LANDAU_CPU) {
 #if defined(PETSC_HAVE_KOKKOS_KERNELS)
     if (maps[0].deviceType == LANDAU_KOKKOS) {
-      PetscCall(LandauKokkosDestroyMatMaps(maps, maps[0].numgrids)); // imples Kokkos does
+      PetscCall(LandauKokkosDestroyMatMaps(maps, maps[0].numgrids)); // implies Kokkos does
     }                                                                // else could be CUDA
 #elif defined(PETSC_HAVE_CUDA)
     if (maps[0].deviceType == LANDAU_CUDA) {
@@ -1393,9 +1393,9 @@
     }
     ctx->radius[grid] *= v0_grid[grid] / ctx->v_0; // scale domain by thermal radius relative to v_0
   }
-  /* amr parametres */
+  /* amr parameters */
   nt = LANDAU_DIM;
-  PetscCall(PetscOptionsIntArray("-dm_landau_num_cells", "Number of cells in each dimention of base grid", "plexland.c", ctx->cells0, &nt, &flg));
+  PetscCall(PetscOptionsIntArray("-dm_landau_num_cells", "Number of cells in each dimension of base grid", "plexland.c", ctx->cells0, &nt, &flg));
   nt = LANDAU_MAX_GRIDS;
   PetscCall(PetscOptionsIntArray("-dm_landau_amr_levels_max", "Number of AMR levels of refinement around origin, after (RE) refinements along z", "plexland.c", ctx->numAMRRefine, &nt, &flg));
   PetscCheck(!flg || nt >= ctx->num_grids, ctx->comm, PETSC_ERR_ARG_WRONG, "-dm_landau_amr_levels_max: given %" PetscInt_FMT " != number grids %" PetscInt_FMT, nt, ctx->num_grids);
@@ -1533,7 +1533,7 @@
     P4estVertexMaps *maps;
     const PetscInt  *plex_batch = NULL, Nb = Nq, elMatSz = Nq * Nq * ctx->num_species * ctx->num_species; // tensor elements;
     LandauIdx       *coo_elem_offsets = NULL, *coo_elem_fullNb = NULL, (*coo_elem_point_offsets)[LANDAU_MAX_NQ + 1] = NULL;
-    /* create GPU asssembly data */
+    /* create GPU assembly data */
     PetscCall(PetscInfo(ctx->plex[0], "Make GPU maps %d\n", 1));
     PetscCall(PetscLogEventBegin(ctx->events[2], 0, 0, 0, 0));
     PetscCall(PetscMalloc(sizeof(*maps) * ctx->num_grids, &maps));
@@ -1658,7 +1658,7 @@
       }
 #if defined(PETSC_HAVE_KOKKOS_KERNELS)
       if (ctx->deviceType == LANDAU_KOKKOS) {
-        PetscCall(LandauKokkosCreateMatMaps(maps, pointMaps, Nf, Nq, grid)); // imples Kokkos does
+        PetscCall(LandauKokkosCreateMatMaps(maps, pointMaps, Nf, Nq, grid)); // implies Kokkos does
       }                                                                      // else could be CUDA
 #endif
 #if defined(PETSC_HAVE_CUDA)
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/ts/utils/dmplexlandau/tutorials/ex2.c petsc-3.18.5+dfsg1/src/ts/utils/dmplexlandau/tutorials/ex2.c
--- petsc-3.18.4+dfsg1/src/ts/utils/dmplexlandau/tutorials/ex2.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/ts/utils/dmplexlandau/tutorials/ex2.c	2023-02-27 23:11:05.000000000 +0100
@@ -592,7 +592,7 @@
   PetscCall(PetscOptionsReal("-ex2_pulse_rate", "Number density of pulse for 'pulse' source", "none", rectx->pulse_rate, &rectx->pulse_rate, NULL));
   rectx->T_cold *= 1.16e7; /* convert to Kelvin */
   PetscCall(PetscOptionsReal("-ex2_ion_potential", "Potential to ionize impurity (should be array) in ev", "none", rectx->ion_potential, &rectx->ion_potential, NULL));
-  PetscCall(PetscOptionsReal("-ex2_inductance", "Inductance E feild", "none", rectx->L, &rectx->L, NULL));
+  PetscCall(PetscOptionsReal("-ex2_inductance", "Inductance E field", "none", rectx->L, &rectx->L, NULL));
   PetscCall(PetscOptionsBool("-ex2_connor_e_field_units", "Scale Ex but Connor-Hastie E_c", "none", Connor_E, &Connor_E, NULL));
   PetscCall(PetscInfo(dm_dummy, "Num electrons from ions=%g, T_cold=%10.3e, ion potential=%10.3e, E_z=%10.3e v_0=%10.3e\n", (double)rectx->Ne_ion, (double)rectx->T_cold, (double)rectx->ion_potential, (double)ctx->Ez, (double)ctx->v_0));
   PetscOptionsEnd();
@@ -681,7 +681,7 @@
   PetscCall(TSSetApplicationContext(ts, ctx));
   PetscCall(TSMonitorSet(ts, Monitor, ctx, NULL));
   PetscCall(TSSetPreStep(ts, PreStep));
-  rectx->Ez_initial = ctx->Ez; /* cache for induction caclulation - applied E field */
+  rectx->Ez_initial = ctx->Ez; /* cache for induction calculation - applied E field */
   if (1) {                     /* warm up an test just DMPlexLandauIJacobian */
     Vec       vec;
     PetscInt  nsteps;
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/vec/f90-mod/ftn-auto-interfaces/petscis.h90 petsc-3.18.5+dfsg1/src/vec/f90-mod/ftn-auto-interfaces/petscis.h90
--- petsc-3.18.4+dfsg1/src/vec/f90-mod/ftn-auto-interfaces/petscis.h90	2023-01-31 07:00:50.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/vec/f90-mod/ftn-auto-interfaces/petscis.h90	2023-02-27 23:28:35.000000000 +0100
@@ -212,7 +212,7 @@
        PetscErrorCode z
        end subroutine ISRestoreNonlocalIS
       subroutine ISLoad(a,b,z)
-       import tPetscViewer,tIS
+       import tIS,tPetscViewer
        IS a ! IS
        PetscViewer b ! PetscViewer
        PetscErrorCode z
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/vec/f90-mod/ftn-auto-interfaces/petscpetscsection.h90 petsc-3.18.5+dfsg1/src/vec/f90-mod/ftn-auto-interfaces/petscpetscsection.h90
--- petsc-3.18.4+dfsg1/src/vec/f90-mod/ftn-auto-interfaces/petscpetscsection.h90	2023-01-31 07:00:50.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/vec/f90-mod/ftn-auto-interfaces/petscpetscsection.h90	2023-02-27 23:28:35.000000000 +0100
@@ -407,26 +407,26 @@
        PetscErrorCode z
        end subroutine PetscSectionSymDestroy
       subroutine PetscSectionSetSym(a,b,z)
-       import tPetscSection,tPetscSectionSym
+       import tPetscSectionSym,tPetscSection
        PetscSection a ! PetscSection
        PetscSectionSym b ! PetscSectionSym
        PetscErrorCode z
        end subroutine PetscSectionSetSym
       subroutine PetscSectionGetSym(a,b,z)
-       import tPetscSection,tPetscSectionSym
+       import tPetscSectionSym,tPetscSection
        PetscSection a ! PetscSection
        PetscSectionSym b ! PetscSectionSym
        PetscErrorCode z
        end subroutine PetscSectionGetSym
       subroutine PetscSectionSetFieldSym(a,b,c,z)
-       import tPetscSection,tPetscSectionSym
+       import tPetscSectionSym,tPetscSection
        PetscSection a ! PetscSection
        PetscInt b ! PetscInt
        PetscSectionSym c ! PetscSectionSym
        PetscErrorCode z
        end subroutine PetscSectionSetFieldSym
       subroutine PetscSectionGetFieldSym(a,b,c,z)
-       import tPetscSection,tPetscSectionSym
+       import tPetscSectionSym,tPetscSection
        PetscSection a ! PetscSection
        PetscInt b ! PetscInt
        PetscSectionSym c ! PetscSectionSym
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/vec/f90-mod/ftn-auto-interfaces/petscpetscsf.h90 petsc-3.18.5+dfsg1/src/vec/f90-mod/ftn-auto-interfaces/petscpetscsf.h90
--- petsc-3.18.4+dfsg1/src/vec/f90-mod/ftn-auto-interfaces/petscpetscsf.h90	2023-01-31 07:00:50.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/vec/f90-mod/ftn-auto-interfaces/petscpetscsf.h90	2023-02-27 23:28:35.000000000 +0100
@@ -105,7 +105,7 @@
        PetscErrorCode z
        end subroutine VecScatterSetFromOptions
       subroutine VecScatterCreate(a,b,c,d,e,z)
-       import tIS,tVecScatter,tVec
+       import tVec,tIS,tVecScatter
        Vec a ! Vec
        IS b ! IS
        Vec c ! Vec
@@ -114,7 +114,7 @@
        PetscErrorCode z
        end subroutine VecScatterCreate
       subroutine VecScatterBegin(a,b,c,d,e,z)
-       import tVecScatter,tVec
+       import tVec,tVecScatter
        VecScatter a ! VecScatter
        Vec b ! Vec
        Vec c ! Vec
@@ -123,7 +123,7 @@
        PetscErrorCode z
        end subroutine VecScatterBegin
       subroutine VecScatterEnd(a,b,c,d,e,z)
-       import tVecScatter,tVec
+       import tVec,tVecScatter
        VecScatter a ! VecScatter
        Vec b ! Vec
        Vec c ! Vec
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/vec/f90-mod/ftn-auto-interfaces/petscvec.h90 petsc-3.18.5+dfsg1/src/vec/f90-mod/ftn-auto-interfaces/petscvec.h90
--- petsc-3.18.4+dfsg1/src/vec/f90-mod/ftn-auto-interfaces/petscvec.h90	2023-01-31 07:00:50.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/vec/f90-mod/ftn-auto-interfaces/petscvec.h90	2023-02-27 23:28:35.000000000 +0100
@@ -258,7 +258,7 @@
        PetscErrorCode z
        end subroutine VecMAXPY
       subroutine VecConcatenate(a,b,c,d,z)
-       import tIS,tVec
+       import tVec,tIS
        PetscInt a ! PetscInt
        Vec b (*) ! Vec
        Vec c ! Vec
@@ -266,14 +266,14 @@
        PetscErrorCode z
        end subroutine VecConcatenate
       subroutine VecGetSubVector(a,b,c,z)
-       import tIS,tVec
+       import tVec,tIS
        Vec a ! Vec
        IS b ! IS
        Vec c ! Vec
        PetscErrorCode z
        end subroutine VecGetSubVector
       subroutine VecRestoreSubVector(a,b,c,z)
-       import tIS,tVec
+       import tVec,tIS
        Vec a ! Vec
        IS b ! IS
        Vec c ! Vec
@@ -528,7 +528,7 @@
        PetscErrorCode z
        end subroutine VecSwap
       subroutine VecStashView(a,b,z)
-       import tPetscViewer,tVec
+       import tVec,tPetscViewer
        Vec a ! Vec
        PetscViewer b ! PetscViewer
        PetscErrorCode z
@@ -654,28 +654,28 @@
        PetscErrorCode z
        end subroutine VecMTDotEnd
       subroutine VecWhichEqual(a,b,c,z)
-       import tIS,tVec
+       import tVec,tIS
        Vec a ! Vec
        Vec b ! Vec
        IS c ! IS
        PetscErrorCode z
        end subroutine VecWhichEqual
       subroutine VecWhichLessThan(a,b,c,z)
-       import tIS,tVec
+       import tVec,tIS
        Vec a ! Vec
        Vec b ! Vec
        IS c ! IS
        PetscErrorCode z
        end subroutine VecWhichLessThan
       subroutine VecWhichGreaterThan(a,b,c,z)
-       import tIS,tVec
+       import tVec,tIS
        Vec a ! Vec
        Vec b ! Vec
        IS c ! IS
        PetscErrorCode z
        end subroutine VecWhichGreaterThan
       subroutine VecWhichBetween(a,b,c,d,z)
-       import tIS,tVec
+       import tVec,tIS
        Vec a ! Vec
        Vec b ! Vec
        Vec c ! Vec
@@ -683,7 +683,7 @@
        PetscErrorCode z
        end subroutine VecWhichBetween
       subroutine VecWhichBetweenOrEqual(a,b,c,d,z)
-       import tIS,tVec
+       import tVec,tIS
        Vec a ! Vec
        Vec b ! Vec
        Vec c ! Vec
@@ -691,7 +691,7 @@
        PetscErrorCode z
        end subroutine VecWhichBetweenOrEqual
       subroutine VecWhichInactive(a,b,c,d,e,f,z)
-       import tIS,tVec
+       import tVec,tIS
        Vec a ! Vec
        Vec b ! Vec
        Vec c ! Vec
@@ -701,7 +701,7 @@
        PetscErrorCode z
        end subroutine VecWhichInactive
       subroutine VecISAXPY(a,b,c,d,z)
-       import tIS,tVec
+       import tVec,tIS
        Vec a ! Vec
        IS b ! IS
        PetscScalar c ! PetscScalar
@@ -709,7 +709,7 @@
        PetscErrorCode z
        end subroutine VecISAXPY
       subroutine VecISCopy(a,b,c,d,z)
-       import tIS,tVec
+       import tVec,tIS
        Vec a ! Vec
        IS b ! IS
        ScatterMode c ! ScatterMode
@@ -717,14 +717,14 @@
        PetscErrorCode z
        end subroutine VecISCopy
       subroutine ISComplementVec(a,b,c,z)
-       import tIS,tVec
+       import tVec,tIS
        IS a ! IS
        Vec b ! Vec
        IS c ! IS
        PetscErrorCode z
        end subroutine ISComplementVec
       subroutine VecISSet(a,b,c,z)
-       import tIS,tVec
+       import tVec,tIS
        Vec a ! Vec
        IS b ! IS
        PetscScalar c ! PetscScalar
@@ -778,7 +778,7 @@
        PetscErrorCode z
        end subroutine VecChop
       subroutine PetscSectionVecView(a,b,c,z)
-       import tPetscViewer,tPetscSection,tVec
+       import tVec,tPetscSection,tPetscViewer
        PetscSection a ! PetscSection
        Vec b ! Vec
        PetscViewer c ! PetscViewer
@@ -969,7 +969,7 @@
        PetscErrorCode z
        end subroutine VecAbs
       subroutine VecPermute(a,b,c,z)
-       import tIS,tVec
+       import tVec,tIS
        Vec a ! Vec
        IS b ! IS
        PetscBool c ! PetscBool
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/vec/is/is/interface/index.c petsc-3.18.5+dfsg1/src/vec/is/is/interface/index.c
--- petsc-3.18.4+dfsg1/src/vec/is/is/interface/index.c	2023-01-31 06:19:48.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/vec/is/is/interface/index.c	2023-02-27 23:11:05.000000000 +0100
@@ -755,7 +755,7 @@
 -  type - whether the property is local (IS_LOCAL) or global (IS_GLOBAL)
 
    Output Parameter:
-.  flg - wheter the property is true (PETSC_TRUE) or false (PETSC_FALSE)
+.  flg - whether the property is true (PETSC_TRUE) or false (PETSC_FALSE)
 
    Note: ISGetInfo uses cached values when possible, which will be incorrect if ISSetInfo() has been called with incorrect information.  To clear cached values, use ISClearInfoCache().
 
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/vec/is/is/utils/isdiff.c petsc-3.18.5+dfsg1/src/vec/is/is/utils/isdiff.c
--- petsc-3.18.4+dfsg1/src/vec/is/is/utils/isdiff.c	2022-12-28 20:00:16.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/vec/is/is/utils/isdiff.c	2023-02-27 23:11:05.000000000 +0100
@@ -725,7 +725,7 @@
   corresponding to these global indices are either mapped to -1 (if !drop) or are omitted (if drop).  In the former
   case the size of c is that same as that of a, in the latter case c's size may be smaller.
 
-  The resulting `IS` is sequential, since the index substition it encodes is purely local.
+  The resulting `IS` is sequential, since the index substitution it encodes is purely local.
 
 .seealso: `IS`, `ISLocalToGlobalMapping`
  @*/
@@ -775,7 +775,7 @@
   Notes:
   Indices in f are unchanged. f[h[i]] is the i-th smallest f index.
 
-  If always == `PETSC_FALSE`, an extra check is peformed to see whether
+  If always == `PETSC_FALSE`, an extra check is performed to see whether
   the f indices are nondecreasing. h is built on `PETSC_COMM_SELF`, since
   the permutation has a local meaning only.
 
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/vec/is/section/interface/section.c petsc-3.18.5+dfsg1/src/vec/is/section/interface/section.c
--- petsc-3.18.4+dfsg1/src/vec/is/section/interface/section.c	2023-01-31 06:19:48.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/vec/is/section/interface/section.c	2023-02-27 23:11:05.000000000 +0100
@@ -3549,7 +3549,7 @@
 - points - `IS` with points to extract; its indices must lie in the chart of origSection
 
   Output Parameters:
-+ newSection - the new `PetscSection` desribing the layout of the new array (with points renumbered 0,1,... but preserving numbers of DOFs)
++ newSection - the new `PetscSection` describing the layout of the new array (with points renumbered 0,1,... but preserving numbers of DOFs)
 - newArray - the array of the extracted DOFs; its size is the storage size of newSection
 
   Level: developer
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/vec/is/sf/impls/basic/nvshmem/sfnvshmem.cu petsc-3.18.5+dfsg1/src/vec/is/sf/impls/basic/nvshmem/sfnvshmem.cu
--- petsc-3.18.4+dfsg1/src/vec/is/sf/impls/basic/nvshmem/sfnvshmem.cu	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/vec/is/sf/impls/basic/nvshmem/sfnvshmem.cu	2023-02-27 23:11:05.000000000 +0100
@@ -233,7 +233,7 @@
   PetscInt       buflen = (direction == PETSCSF_ROOT2LEAF) ? sf->leafbuflen[PETSCSF_REMOTE] : bas->rootbuflen[PETSCSF_REMOTE];
 
   PetscFunctionBegin;
-  /* If unpack to non-null device buffer, build the endRemoteComm dependance */
+  /* If unpack to non-null device buffer, build the endRemoteComm dependence */
   if (buflen) {
     PetscCallCUDA(cudaEventRecord(link->endRemoteComm, link->remoteCommStream));
     PetscCallCUDA(cudaStreamWaitEvent(link->stream, link->endRemoteComm, 0));
@@ -498,7 +498,7 @@
   }
 }
 
-/* one-thread kernel, which takes in charge all locally accesible */
+/* one-thread kernel, which takes in charge all locally accessible */
 __global__ static void WaitSignalsFromLocallyAccessible(PetscInt ndstranks, PetscMPIInt *dstranks, uint64_t *srcsig, const char *dst)
 {
   for (int i = 0; i < ndstranks; i++) {
@@ -694,7 +694,7 @@
 
   PetscFunctionBegin;
   /* Check to see if we can directly send/recv root/leafdata with the given sf, sfop and op.
-     We only care root/leafdirect[PETSCSF_REMOTE], since we never need intermeidate buffers in local communication with NVSHMEM.
+     We only care root/leafdirect[PETSCSF_REMOTE], since we never need intermediate buffers in local communication with NVSHMEM.
   */
   if (sfop == PETSCSF_BCAST) { /* Move data from rootbuf to leafbuf */
     if (sf->use_nvshmem_get) {
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/vec/is/sf/impls/basic/sfbasic.c petsc-3.18.5+dfsg1/src/vec/is/sf/impls/basic/sfbasic.c
--- petsc-3.18.4+dfsg1/src/vec/is/sf/impls/basic/sfbasic.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/vec/is/sf/impls/basic/sfbasic.c	2023-02-27 23:11:05.000000000 +0100
@@ -187,7 +187,7 @@
   PetscCall(PetscSFLinkCreate(sf, unit, rootmtype, rootdata, leafmtype, leafdata, op, PETSCSF_BCAST, &link));
   /* Pack rootdata to rootbuf for remote communication */
   PetscCall(PetscSFLinkPackRootData(sf, link, PETSCSF_REMOTE, rootdata));
-  /* Start communcation, e.g., post MPI_Isend */
+  /* Start communication, e.g., post MPI_Isend */
   PetscCall(PetscSFLinkStartCommunication(sf, link, PETSCSF_ROOT2LEAF));
   /* Do local scatter (i.e., self to self communication), which overlaps with the remote communication above */
   PetscCall(PetscSFLinkScatterLocal(sf, link, PETSCSF_ROOT2LEAF, (void *)rootdata, leafdata, op));
@@ -287,7 +287,7 @@
   PetscFunctionReturn(0);
 }
 
-/* An optimized PetscSFCreateEmbeddedRootSF. We aggresively make use of the established communication on sf.
+/* An optimized PetscSFCreateEmbeddedRootSF. We aggressively make use of the established communication on sf.
    We need one bcast on sf, and no communication anymore to build the embedded sf. Note that selected[]
    was sorted before calling the routine.
  */
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/vec/is/sf/impls/basic/sfmpi.c petsc-3.18.5+dfsg1/src/vec/is/sf/impls/basic/sfmpi.c
--- petsc-3.18.4+dfsg1/src/vec/is/sf/impls/basic/sfmpi.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/vec/is/sf/impls/basic/sfmpi.c	2023-02-27 23:11:05.000000000 +0100
@@ -110,7 +110,7 @@
   } else {
     rootmtype_mpi = leafmtype_mpi = PETSC_MEMTYPE_HOST;
   }
-  /* Will root/leafdata be directly accessed by MPI?  Without use_gpu_aware_mpi, device data is bufferred on host and then passed to MPI */
+  /* Will root/leafdata be directly accessed by MPI?  Without use_gpu_aware_mpi, device data is buffered on host and then passed to MPI */
   rootdirect_mpi = rootdirect[PETSCSF_REMOTE] && (rootmtype_mpi == rootmtype) ? 1 : 0;
   leafdirect_mpi = leafdirect[PETSCSF_REMOTE] && (leafmtype_mpi == leafmtype) ? 1 : 0;
 
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/vec/is/sf/impls/basic/sfpack.h petsc-3.18.5+dfsg1/src/vec/is/sf/impls/basic/sfpack.h
--- petsc-3.18.4+dfsg1/src/vec/is/sf/impls/basic/sfpack.h	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/vec/is/sf/impls/basic/sfpack.h	2023-02-27 23:11:05.000000000 +0100
@@ -15,7 +15,7 @@
 #endif
 
 /* In terms of function overloading, long long int is a different type than int64_t, which PetscInt might be defined to.
-   We perfer long long int over PetscInt (int64_t), since CUDA atomics are built around (unsigned) long long int.
+   We prefer long long int over PetscInt (int64_t), since CUDA atomics are built around (unsigned) long long int.
  */
 typedef long long int          llint;
 typedef unsigned long long int ullint;
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/vec/is/sf/interface/sf.c petsc-3.18.5+dfsg1/src/vec/is/sf/interface/sf.c
--- petsc-3.18.4+dfsg1/src/vec/is/sf/interface/sf.c	2023-01-31 06:19:48.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/vec/is/sf/interface/sf.c	2023-02-27 23:11:05.000000000 +0100
@@ -1399,7 +1399,7 @@
 
    Notes:
     When petsc is configured with device support, it will use its own mechanism to figure out whether the given data pointers
-    are host pointers or device pointers, which may incur a noticable cost. If you already knew the info, you should
+    are host pointers or device pointers, which may incur a noticeable cost. If you already knew the info, you should
     use `PetscSFBcastWithMemTypeBegin()` instead.
 
 .seealso: `PetscSF`, `PetscSFBcastEnd()`, `PetscSFBcastWithMemTypeBegin()`
@@ -1496,7 +1496,7 @@
 
    Notes:
     When petsc is configured with device support, it will use its own mechanism to figure out whether the given data pointers
-    are host pointers or device pointers, which may incur a noticable cost. If you already knew the info, you should
+    are host pointers or device pointers, which may incur a noticeable cost. If you already knew the info, you should
     use `PetscSFReduceWithMemTypeBegin()` instead.
 
 .seealso: `PetscSF`, `PetscSFBcastBegin()`, `PetscSFReduceWithMemTypeBegin()`
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/vec/is/sf/interface/vscat.c petsc-3.18.5+dfsg1/src/vec/is/sf/interface/vscat.c
--- petsc-3.18.4+dfsg1/src/vec/is/sf/interface/vscat.c	2023-01-31 06:19:48.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/vec/is/sf/interface/vscat.c	2023-02-27 23:11:05.000000000 +0100
@@ -143,7 +143,7 @@
   PetscCall(PetscObjectTypeCompare((PetscObject)sf, PETSCSFNEIGHBOR, &isneighbor));
   PetscCheck(isbasic || isneighbor, PetscObjectComm((PetscObject)sf), PETSC_ERR_SUP, "VecScatterRemap on SF type %s is not supported", type);
 
-  PetscCall(PetscSFSetUp(sf)); /* to bulid sf->irootloc if SetUp is not yet called */
+  PetscCall(PetscSFSetUp(sf)); /* to build sf->irootloc if SetUp is not yet called */
 
   /* Root indices are going to be remapped. This is tricky for SF. Root indices are used in sf->rremote,
     sf->remote and bas->irootloc. The latter one is cheap to remap, but the former two are not.
@@ -160,7 +160,7 @@
   /* Not easy to free sf->rremote since it was allocated with PetscMalloc4(), so just give it crazy values */
   for (i = 0; i < sf->roffset[sf->nranks]; i++) sf->rremote[i] = PETSC_MIN_INT;
 
-  /* Indices in tomap[] are for each indivisual vector entry. But indices in sf are for each
+  /* Indices in tomap[] are for each individual vector entry. But indices in sf are for each
      block in the vector. So before the remapping, we have to expand indices in sf by bs, and
      after the remapping, we have to shrink them back.
    */
@@ -766,7 +766,7 @@
         /* Other ranks also scatter the whole mpi x to seq y, so it is a ToAll candidate in their view */
         pattern[0] = 1;
       } else if (ixsize == 0) {
-        /* Other ranks do nothing, so it is a ToZero candiate */
+        /* Other ranks do nothing, so it is a ToZero candidate */
         pattern[1] = 1;
       }
     }
@@ -876,7 +876,7 @@
        to owner process of yindices[i] according to ylayout, i = 0..n.
 
        I did it through a temp sf, but later I thought the old design was inefficient and also distorted log view.
-       We want to mape one VecScatterCreate() call to one PetscSFCreate() call. The old design mapped to three
+       We want to map one VecScatterCreate() call to one PetscSFCreate() call. The old design mapped to three
        PetscSFCreate() calls. This code is on critical path of VecScatterSetUp and is used by every VecScatterCreate.
        So I commented it out and did another optimized implementation. The commented code is left here for reference.
      */
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/vec/is/sf/tutorials/ex1f.F90 petsc-3.18.5+dfsg1/src/vec/is/sf/tutorials/ex1f.F90
--- petsc-3.18.4+dfsg1/src/vec/is/sf/tutorials/ex1f.F90	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/vec/is/sf/tutorials/ex1f.F90	2023-02-27 23:11:05.000000000 +0100
@@ -104,7 +104,7 @@
 !    Clean storage for star forest.
       PetscCallA(PetscSFDestroy(sf,ierr))
 
-!  Create a star forest with continous leaves and hence no buffer
+!  Create a star forest with continuous leaves and hence no buffer
       PetscCallA(PetscSFCreate(PETSC_COMM_WORLD,sf,ierr))
       PetscCallA(PetscSFSetFromOptions(sf,ierr))
       PetscCallA(PetscSFSetGraph(sf,nrootsalloc,nleaves,PETSC_NULL_INTEGER,PETSC_COPY_VALUES,remote,PETSC_COPY_VALUES,ierr))
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/vec/vec/impls/mpi/pbvec.c petsc-3.18.5+dfsg1/src/vec/vec/impls/mpi/pbvec.c
--- petsc-3.18.4+dfsg1/src/vec/vec/impls/mpi/pbvec.c	2022-12-28 20:00:16.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/vec/vec/impls/mpi/pbvec.c	2023-02-27 23:11:05.000000000 +0100
@@ -758,7 +758,7 @@
 
   PetscFunctionBegin;
   PetscCall(PetscObjectTypeCompare((PetscObject)vv, VECMPI, &flg));
-  /* if already fully existant VECMPI then basically destroy it and rebuild with ghosting */
+  /* if already fully existent VECMPI then basically destroy it and rebuild with ghosting */
   if (flg) {
     PetscInt               n, N;
     Vec_MPI               *w;
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/vec/vec/impls/mpi/pdvec.c petsc-3.18.5+dfsg1/src/vec/vec/impls/mpi/pdvec.c
--- petsc-3.18.4+dfsg1/src/vec/vec/impls/mpi/pdvec.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/vec/vec/impls/mpi/pdvec.c	2023-02-27 23:11:05.000000000 +0100
@@ -1020,7 +1020,7 @@
   PetscCall(VecGetSize(x, &M));
 
   /* ---------------------------------------------------------------------------*/
-  /* Sort COOs along with a permuation array, so that negative indices come     */
+  /* Sort COOs along with a permutation array, so that negative indices come    */
   /* first, then local ones, then remote ones.                                  */
   /* ---------------------------------------------------------------------------*/
   PetscCount n1 = coo_n, nneg, *perm;
@@ -1046,7 +1046,7 @@
     }
   }
 
-  /* Sort the indices, after that, [0,nneg) have ignored entires, [nneg,rem) have local entries and [rem,n1) have remote entries */
+  /* Sort the indices, after that, [0,nneg) have ignored entries, [nneg,rem) have local entries and [rem,n1) have remote entries */
   PetscCall(PetscSortIntWithCountArray(n1, i1, perm));
   for (k = 0; k < n1; k++) {
     if (i1[k] > PETSC_MIN_INT) break;
@@ -1252,7 +1252,7 @@
   PetscCall(PetscSFReduceWithMemTypeBegin(vmpi->coo_sf, MPIU_SCALAR, PETSC_MEMTYPE_HOST, sendbuf, PETSC_MEMTYPE_HOST, recvbuf, MPI_REPLACE));
   /* Add local entries to A and B */
   for (PetscInt i = 0; i < m; i++) { /* All entries in a[] are either zero'ed or added with a value (i.e., initialized) */
-    PetscScalar sum = 0.0;           /* Do partial summation first to improve numerical stablility */
+    PetscScalar sum = 0.0;           /* Do partial summation first to improve numerical stability */
     for (PetscCount k = jmap1[i]; k < jmap1[i + 1]; k++) sum += v[perm1[k]];
     a[i] = (imode == INSERT_VALUES ? 0.0 : a[i]) + sum;
   }
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/vec/vec/impls/nest/vecnest.c petsc-3.18.5+dfsg1/src/vec/vec/impls/nest/vecnest.c
--- petsc-3.18.4+dfsg1/src/vec/vec/impls/nest/vecnest.c	2022-12-28 20:00:16.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/vec/vec/impls/nest/vecnest.c	2023-02-27 23:11:05.000000000 +0100
@@ -469,7 +469,7 @@
   PetscFunctionReturn(0);
 }
 
-/* Returns the sum of the global size of all the consituent vectors in the nest */
+/* Returns the sum of the global size of all the constituent vectors in the nest */
 static PetscErrorCode VecGetSize_Nest(Vec x, PetscInt *N)
 {
   PetscFunctionBegin;
@@ -477,7 +477,7 @@
   PetscFunctionReturn(0);
 }
 
-/* Returns the sum of the local size of all the consituent vectors in the nest */
+/* Returns the sum of the local size of all the constituent vectors in the nest */
 static PetscErrorCode VecGetLocalSize_Nest(Vec x, PetscInt *n)
 {
   PetscFunctionBegin;
@@ -1119,7 +1119,7 @@
   PetscCall(VecCreate(comm, &V));
   PetscCall(PetscObjectChangeTypeName((PetscObject)V, VECNEST));
 
-  /* allocate and set pointer for implememtation data */
+  /* allocate and set pointer for implementation data */
   PetscCall(PetscNew(&s));
   V->data         = (void *)s;
   s->setup_called = PETSC_FALSE;
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/vec/vec/impls/seq/kokkos/veckok.kokkos.cxx petsc-3.18.5+dfsg1/src/vec/vec/impls/seq/kokkos/veckok.kokkos.cxx
--- petsc-3.18.4+dfsg1/src/vec/vec/impls/seq/kokkos/veckok.kokkos.cxx	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/vec/vec/impls/seq/kokkos/veckok.kokkos.cxx	2023-02-27 23:11:05.000000000 +0100
@@ -834,7 +834,7 @@
   PetscFunctionReturn(0);
 }
 
-/* Replace the array in vin with a[] that must be allocated by PetscMalloc. a[] is owned by vin afterwords. */
+/* Replace the array in vin with a[] that must be allocated by PetscMalloc. a[] is owned by vin afterwards. */
 PetscErrorCode VecReplaceArray_SeqKokkos(Vec vin, const PetscScalar *a)
 {
   Vec_Seq    *vecseq = (Vec_Seq *)vin->data;
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/vec/vec/interface/rvector.c petsc-3.18.5+dfsg1/src/vec/vec/interface/rvector.c
--- petsc-3.18.4+dfsg1/src/vec/vec/interface/rvector.c	2022-12-28 20:00:16.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/vec/vec/interface/rvector.c	2023-02-27 23:11:05.000000000 +0100
@@ -379,7 +379,7 @@
    Notes:
    Returns the value `PETSC_MAX_REAL` and negative p if the vector is of length 0.
 
-   This returns the smallest index with the minumum value
+   This returns the smallest index with the minimum value
 
 .seealso: [](chapter_vectors), `Vec`, `VecMax()`
 @*/
@@ -770,7 +770,7 @@
     `w` cannot be either `x` or `y`, but `x` and `y` can be the same
 
    Developer Note:
-    The implementation is optimzed for alpha of -1.0, 0.0, and 1.0
+    The implementation is optimized for alpha of -1.0, 0.0, and 1.0
 
 .seealso: [](chapter_vectors), `Vec`, `VecAXPY()`, `VecAYPX()`, `VecAXPBY()`, `VecMAXPY()`, `VecAXPBYPCZ()`
 @*/
@@ -2176,7 +2176,7 @@
 }
 
 /*@C
-   VecGetArrayReadAndMemType - Like `VecGetArrayRead()`, but if the input vector is a device vector, it will return a read-only device pointer. The returned pointer is guarenteed to point to up-to-date data. For host vectors, it functions as `VecGetArrayRead()`.
+   VecGetArrayReadAndMemType - Like `VecGetArrayRead()`, but if the input vector is a device vector, it will return a read-only device pointer. The returned pointer is guaranteed to point to up-to-date data. For host vectors, it functions as `VecGetArrayRead()`.
 
    Not Collective
 
@@ -4462,7 +4462,7 @@
    Level: beginner
 
    Notes:
-    The function is usefull in split-phase computations, which usually have a begin phase and an end phase.
+    The function is useful in split-phase computations, which usually have a begin phase and an end phase.
     One can call `VecLockWriteSet`(x,`PETSC_TRUE`) in the begin phase to lock a vector for exclusive
     access, and call `VecLockWriteSet`(x,`PETSC_FALSE`) in the end phase to unlock the vector from exclusive
     access. In this way, one is ensured no other operations can access the vector in between. The code may like
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/vec/vec/interface/vector.c petsc-3.18.5+dfsg1/src/vec/vec/interface/vector.c
--- petsc-3.18.4+dfsg1/src/vec/vec/interface/vector.c	2022-12-28 20:00:16.000000000 +0100
+++ petsc-3.18.5+dfsg1/src/vec/vec/interface/vector.c	2023-02-27 23:11:05.000000000 +0100
@@ -923,7 +923,7 @@
 }
 
 /*@
-   VecSetOption - Sets an option for controling a vector's behavior.
+   VecSetOption - Sets an option for controlling a vector's behavior.
 
    Collective
 
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/vec/vec/tests/ex48.c petsc-3.18.5+dfsg1/src/vec/vec/tests/ex48.c
--- petsc-3.18.4+dfsg1/src/vec/vec/tests/ex48.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/vec/vec/tests/ex48.c	2023-02-27 23:11:05.000000000 +0100
@@ -46,7 +46,7 @@
   /* 20 */
   "<",
 };
-/* corresponsing expected absolute paths - positions in abspath */
+/* corresponding expected absolute paths - positions in abspath */
 static const PetscInt paths2apaths[np] = {
   /* 0 */
   0,
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/vec/vec/tests/ex49.c petsc-3.18.5+dfsg1/src/vec/vec/tests/ex49.c
--- petsc-3.18.4+dfsg1/src/vec/vec/tests/ex49.c	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/vec/vec/tests/ex49.c	2023-02-27 23:11:05.000000000 +0100
@@ -47,7 +47,7 @@
     PetscInt  shift = (k < 2) ? 0 : (k == 2) ? 1 : 0; /* Used to change patterns */
 
     /* If saveCommunicationPattern, let's see what should happen in the 5 iterations:
-      iter 0: flag is true, and this is the first assebmly, so petsc should keep the
+      iter 0: flag is true, and this is the first assembly, so petsc should keep the
               communication pattern built during this assembly.
       iter 1: flag is true, reuse the pattern.
       iter 2: flag is false, discard/free the pattern built in iter 0; rebuild a new
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/vec/vec/tutorials/ex43f.F90 petsc-3.18.5+dfsg1/src/vec/vec/tutorials/ex43f.F90
--- petsc-3.18.4+dfsg1/src/vec/vec/tutorials/ex43f.F90	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/vec/vec/tutorials/ex43f.F90	2023-02-27 23:11:05.000000000 +0100
@@ -22,7 +22,7 @@
         use ex43fmodule
        implicit none
 !
-!  This routine demonstates how to call a bind C function from Fortran
+!  This routine demonstrates how to call a bind C function from Fortran
        Vec            v
        PetscErrorCode ierr
        PetscInt five
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/src/vec/vec/tutorials/ex7f.F90 petsc-3.18.5+dfsg1/src/vec/vec/tutorials/ex7f.F90
--- petsc-3.18.4+dfsg1/src/vec/vec/tutorials/ex7f.F90	2022-10-01 06:12:21.000000000 +0200
+++ petsc-3.18.5+dfsg1/src/vec/vec/tutorials/ex7f.F90	2023-02-27 23:11:05.000000000 +0100
@@ -5,7 +5,7 @@
        use petscvec
        implicit none
 !
-!  This routine demonstates how a computational module may be written
+!  This routine demonstrates how a computational module may be written
 !  in Fortran and called from a C routine, passing down PETSc objects.
 !
 
diff -Nru --exclude '*doc*' petsc-3.18.4+dfsg1/TAGS petsc-3.18.5+dfsg1/TAGS
--- petsc-3.18.4+dfsg1/TAGS	2023-01-31 07:04:23.000000000 +0100
+++ petsc-3.18.5+dfsg1/TAGS	2023-02-27 23:31:42.000000000 +0100
@@ -508,6 +508,14 @@
 LIBBASE 7,124
 LOCDIR 8,147
 
+src/vec/vec/tutorials/ex7f.F90,28
+ex7f.F90:^?ex7f.F90^A,1
+       subroutine ex7f(3,4
+
+src/vec/vec/tutorials/ex43f.F90,39
+ex43f.F90:^?ex43f.F90^A,1
+        subroutine fillupvector(6,114
+
 src/vec/vec/tutorials/ex42a.c,43
 ex42a.c:^?ex42a.c^A,1
 static char help[help2,1
@@ -543,10 +551,6 @@
 static char help[help2,1
 int main(12,333
 
-src/vec/vec/tutorials/ex7f.F90,28
-ex7f.F90:^?ex7f.F90^A,1
-       subroutine ex7f(3,4
-
 src/vec/vec/tutorials/ex7.c,173
 ex7.c:^?ex7.c^A,1
 static char help[help2,1
@@ -572,10 +576,6 @@
 static char help[help2,1
 int main(6,100
 
-src/vec/vec/tutorials/ex43f.F90,39
-ex43f.F90:^?ex43f.F90^A,1
-        subroutine fillupvector(6,114
-
 src/vec/vec/tutorials/ex43.c,37
 ex43.c:^?ex43.c^A,1
 PETSC_INTERN void fillupvector(4,24
@@ -671,6 +671,56 @@
 static char help[help2,1
 int main(13,283
 
+src/vec/vec/tests/ex49.c,50
+ex49.c:^?ex49.c^A,1
+static const char help[help1,0
+int main(21,954
+
+src/vec/vec/tests/ex48.c,1669
+ex48.c:^?ex48.c^A,1
+static char help[help2,1
+static PetscInt  n 7,108
+static PetscBool verbose 8,164
+#define SLEN 9,204
+#define nap 12,262
+static const char *apaths[apaths13,276
+#define np 19,473
+static const char *paths[paths21,551
+static const PetscInt paths2apaths[paths2apaths50,1065
+#define ns 79,1270
+static const char *datasets[datasets81,1358
+static inline PetscErrorCode shouldExist(84,1506
+static inline PetscErrorCode isPop(99,1857
+static inline PetscErrorCode isDot(106,2022
+static inline PetscErrorCode isRoot(113,2187
+static inline PetscErrorCode compare(124,2441
+static inline PetscErrorCode alterString(174,4145
+static PetscErrorCode hasGroupOrDataset(192,4677
+#define nt 207,5026
+typedef struct _n_Capsule *Capsule;Capsule208,5065
+struct _n_Capsule 209,5101
+  char          names[names210,5121
+  PetscDataType types[types211,5154
+  char          typeNames[typeNames212,5181
+  size_t        sizes[sizes213,5218
+  void         *vals[vals214,5245
+  PetscInt      id,215,5271
+  PetscInt      id, ntypes;215,5271
+static PetscErrorCode CapsuleCreate(218,5303
+#undef nt260,6815
+static PetscErrorCode CapsuleWriteAttributes(262,6826
+static PetscErrorCode CapsuleReadAndCompareAttributes(276,7237
+static PetscErrorCode CapsuleDestroy(327,9578
+static PetscErrorCode testGroupsDatasets(338,9832
+static inline PetscErrorCode formPath(468,15303
+static PetscErrorCode testAttributesAbsolutePath(488,15976
+static PetscErrorCode testAttributesPushedPath(581,19762
+static PetscErrorCode testObjectAttributes(658,22850
+static PetscErrorCode testAttributesDefaultValue(750,26297
+#define nv 752,26368
+#undef nv801,29596
+int main(805,29635
+
 src/vec/vec/tests/ex50.c,44
 ex50.c:^?ex50.c^A,1
 static char help[help1,0
@@ -751,56 +801,6 @@
 static char help[help2,1
 int main(8,198
 
-src/vec/vec/tests/ex49.c,50
-ex49.c:^?ex49.c^A,1
-static const char help[help1,0
-int main(21,954
-
-src/vec/vec/tests/ex48.c,1669
-ex48.c:^?ex48.c^A,1
-static char help[help2,1
-static PetscInt  n 7,108
-static PetscBool verbose 8,164
-#define SLEN 9,204
-#define nap 12,262
-static const char *apaths[apaths13,276
-#define np 19,473
-static const char *paths[paths21,551
-static const PetscInt paths2apaths[paths2apaths50,1065
-#define ns 79,1270
-static const char *datasets[datasets81,1358
-static inline PetscErrorCode shouldExist(84,1506
-static inline PetscErrorCode isPop(99,1857
-static inline PetscErrorCode isDot(106,2022
-static inline PetscErrorCode isRoot(113,2187
-static inline PetscErrorCode compare(124,2441
-static inline PetscErrorCode alterString(174,4145
-static PetscErrorCode hasGroupOrDataset(192,4677
-#define nt 207,5026
-typedef struct _n_Capsule *Capsule;Capsule208,5065
-struct _n_Capsule 209,5101
-  char          names[names210,5121
-  PetscDataType types[types211,5154
-  char          typeNames[typeNames212,5181
-  size_t        sizes[sizes213,5218
-  void         *vals[vals214,5245
-  PetscInt      id,215,5271
-  PetscInt      id, ntypes;215,5271
-static PetscErrorCode CapsuleCreate(218,5303
-#undef nt260,6815
-static PetscErrorCode CapsuleWriteAttributes(262,6826
-static PetscErrorCode CapsuleReadAndCompareAttributes(276,7237
-static PetscErrorCode CapsuleDestroy(327,9578
-static PetscErrorCode testGroupsDatasets(338,9832
-static inline PetscErrorCode formPath(468,15303
-static PetscErrorCode testAttributesAbsolutePath(488,15976
-static PetscErrorCode testAttributesPushedPath(581,19762
-static PetscErrorCode testObjectAttributes(658,22850
-static PetscErrorCode testAttributesDefaultValue(750,26297
-#define nv 752,26368
-#undef nv801,29596
-int main(805,29635
-
 src/vec/vec/tests/ex47.c,43
 ex47.c:^?ex47.c^A,1
 static char help[help2,1
@@ -1085,56 +1085,47 @@
 PetscErrorCode VecGetLocalSize(841,29392
 PetscErrorCode VecGetOwnershipRange(877,30463
 PetscErrorCode VecGetOwnershipRanges(916,31682
-PetscErrorCode VecSetOption(958,33463
-PetscErrorCode VecDuplicateVecs_Default(969,33790
-PetscErrorCode VecDestroyVecs_Default(980,34194
-PetscErrorCode VecResetArray(1004,34748
-PetscErrorCode VecLoad(1072,37911
-PetscErrorCode VecReciprocal(1115,39548
-PetscErrorCode VecSetOperation(1154,40770
-PetscErrorCode VecStashSetInitialSize(1197,42348
-PetscErrorCode VecConjugate(1218,42844
-PetscErrorCode VecSetRandom(1257,43921
-PetscErrorCode VecZeroEntries(1296,45120
-static PetscErrorCode VecSetTypeFromOptions_Private(1316,45585
-PetscErrorCode VecSetFromOptions(1358,46737
-PetscErrorCode VecSetSizes(1404,48449
-PetscErrorCode VecSetBlockSize(1438,49682
-PetscErrorCode VecGetBlockSize(1467,50470
-PetscErrorCode VecSetOptionsPrefix(1494,51177
-PetscErrorCode VecAppendOptionsPrefix(1520,51891
-PetscErrorCode VecGetOptionsPrefix(1548,52559
-PetscErrorCode VecSetUp(1572,53172
-PetscErrorCode VecCopy(1620,54484
-PetscErrorCode VecSwap(1697,57223
-PetscErrorCode VecStashViewFromOptions(1749,59168
-PetscErrorCode VecStashView(1781,60111
-PetscErrorCode PetscOptionsGetVec(1835,62405
-PetscErrorCode VecGetLayout(1872,63387
-PetscErrorCode VecSetLayout(1897,63995
-PetscErrorCode VecSetInf(1905,64196
-PetscErrorCode VecBindToCPU(1934,64873
-PetscErrorCode VecBoundToCPU(1962,65477
-PetscErrorCode VecSetBindingPropagates(1994,66625
-PetscErrorCode VecGetBindingPropagates(2017,67267
-PetscErrorCode VecSetPinnedMemoryMin(2048,68230
-PetscErrorCode VecGetPinnedMemoryMin(2073,68807
-PetscErrorCode VecGetOffloadMask(2099,69421
-PETSC_EXTERN PetscErrorCode VecViennaCLGetCLContext(2109,69675
-PETSC_EXTERN PetscErrorCode VecViennaCLGetCLQueue(2114,69877
-PETSC_EXTERN PetscErrorCode VecViennaCLGetCLMem(2119,70085
-PETSC_EXTERN PetscErrorCode VecViennaCLGetCLMemRead(2124,70281
-PETSC_EXTERN PetscErrorCode VecViennaCLGetCLMemWrite(2129,70481
-PETSC_EXTERN PetscErrorCode VecViennaCLRestoreCLMemWrite(2134,70682
-
-src/vec/vec/interface/vecreg.c,233
-vecreg.c:^?vecreg.c^A,1
-PetscFunctionList VecList 4,59
-PetscBool         VecRegisterAllCalled 5,106
-PetscErrorCode VecSetType(29,765
-PetscErrorCode VecGetType(109,3535
-PetscErrorCode VecGetRootType_Private(119,3789
-PetscErrorCode VecRegister(177,5470
+PetscErrorCode VecSetOption(958,33464
+PetscErrorCode VecDuplicateVecs_Default(969,33791
+PetscErrorCode VecDestroyVecs_Default(980,34195
+PetscErrorCode VecResetArray(1004,34749
+PetscErrorCode VecLoad(1072,37912
+PetscErrorCode VecReciprocal(1115,39549
+PetscErrorCode VecSetOperation(1154,40771
+PetscErrorCode VecStashSetInitialSize(1197,42349
+PetscErrorCode VecConjugate(1218,42845
+PetscErrorCode VecSetRandom(1257,43922
+PetscErrorCode VecZeroEntries(1296,45121
+static PetscErrorCode VecSetTypeFromOptions_Private(1316,45586
+PetscErrorCode VecSetFromOptions(1358,46738
+PetscErrorCode VecSetSizes(1404,48450
+PetscErrorCode VecSetBlockSize(1438,49683
+PetscErrorCode VecGetBlockSize(1467,50471
+PetscErrorCode VecSetOptionsPrefix(1494,51178
+PetscErrorCode VecAppendOptionsPrefix(1520,51892
+PetscErrorCode VecGetOptionsPrefix(1548,52560
+PetscErrorCode VecSetUp(1572,53173
+PetscErrorCode VecCopy(1620,54485
+PetscErrorCode VecSwap(1697,57224
+PetscErrorCode VecStashViewFromOptions(1749,59169
+PetscErrorCode VecStashView(1781,60112
+PetscErrorCode PetscOptionsGetVec(1835,62406
+PetscErrorCode VecGetLayout(1872,63388
+PetscErrorCode VecSetLayout(1897,63996
+PetscErrorCode VecSetInf(1905,64197
+PetscErrorCode VecBindToCPU(1934,64874
+PetscErrorCode VecBoundToCPU(1962,65478
+PetscErrorCode VecSetBindingPropagates(1994,66626
+PetscErrorCode VecGetBindingPropagates(2017,67268
+PetscErrorCode VecSetPinnedMemoryMin(2048,68231
+PetscErrorCode VecGetPinnedMemoryMin(2073,68808
+PetscErrorCode VecGetOffloadMask(2099,69422
+PETSC_EXTERN PetscErrorCode VecViennaCLGetCLContext(2109,69676
+PETSC_EXTERN PetscErrorCode VecViennaCLGetCLQueue(2114,69878
+PETSC_EXTERN PetscErrorCode VecViennaCLGetCLMem(2119,70086
+PETSC_EXTERN PetscErrorCode VecViennaCLGetCLMemRead(2124,70282
+PETSC_EXTERN PetscErrorCode VecViennaCLGetCLMemWrite(2129,70482
+PETSC_EXTERN PetscErrorCode VecViennaCLRestoreCLMemWrite(2134,70683
 
 src/vec/vec/interface/rvector.c,4686
 rvector.c:^?rvector.c^A,1
@@ -1155,91 +1146,100 @@
 PetscErrorCode VecAYPX(629,20194
 PetscErrorCode VecAXPBY(677,21591
 PetscErrorCode VecAXPBYPCZ(723,23047
-PetscErrorCode VecWAXPY(777,24950
-PetscErrorCode VecSetValues(847,27598
-PetscErrorCode VecGetValues(894,29147
-PetscErrorCode VecSetValuesBlocked(943,30911
-PetscErrorCode VecSetValuesLocal(991,32604
-PetscErrorCode VecSetValuesBlockedLocal(1049,34849
-PetscErrorCode VecMTDot(1100,36461
-PetscErrorCode VecMDot(1152,37956
-PetscErrorCode VecMAXPY(1196,39230
-PetscErrorCode VecConcatenate(1260,41966
-PetscErrorCode VecGetSubVectorContiguityAndBS_Private(1324,44194
-PetscErrorCode VecGetSubVectorThroughVecScatter_Private(1363,45824
-PetscErrorCode VecGetSubVector(1409,47539
-PetscErrorCode VecRestoreSubVector(1525,52263
-PetscErrorCode VecCreateLocalVector(1636,56578
-PetscErrorCode VecGetLocalVectorRead(1692,58540
-PetscErrorCode VecRestoreLocalVectorRead(1726,59638
-PetscErrorCode VecGetLocalVector(1773,61242
-PetscErrorCode VecRestoreLocalVector(1805,62284
-PetscErrorCode VecGetArray(1862,64144
-PetscErrorCode VecRestoreArray(1889,65229
-PetscErrorCode VecGetArrayRead(1925,66612
-PetscErrorCode VecRestoreArrayRead(1955,67544
-PetscErrorCode VecGetArrayWrite(1992,68937
-PetscErrorCode VecRestoreArrayWrite(2020,69807
-PetscErrorCode VecGetArrays(2053,70746
-PetscErrorCode VecRestoreArrays(2090,71924
-PetscErrorCode VecGetArrayAndMemType(2127,73502
-PetscErrorCode VecRestoreArrayAndMemType(2160,74627
-PetscErrorCode VecGetArrayReadAndMemType(2197,75937
-PetscErrorCode VecRestoreArrayReadAndMemType(2230,77038
-PetscErrorCode VecGetArrayWriteAndMemType(2267,78261
-PetscErrorCode VecRestoreArrayWriteAndMemType(2301,79373
-PetscErrorCode VecPlaceArray(2342,80783
-PetscErrorCode VecReplaceArray(2375,81787
-PETSC_EXTERN PetscErrorCode VecCUDAGetArray(2416,83270
-PETSC_EXTERN PetscErrorCode VecCUDARestoreArray(2448,84221
-PETSC_EXTERN PetscErrorCode VecCUDAGetArrayRead(2490,85747
-PETSC_EXTERN PetscErrorCode VecCUDARestoreArrayRead(2516,86678
-PETSC_EXTERN PetscErrorCode VecCUDAGetArrayWrite(2552,87928
-PETSC_EXTERN PetscErrorCode VecCUDARestoreArrayWrite(2584,88942
-PetscErrorCode VecCUDAPlaceArray(2621,90257
-PetscErrorCode VecCUDAReplaceArray(2658,91763
-PetscErrorCode VecCUDAResetArray(2687,92810
-PETSC_EXTERN PetscErrorCode VecHIPGetArray(2735,94538
-PETSC_EXTERN PetscErrorCode VecHIPRestoreArray(2766,95474
-PETSC_EXTERN PetscErrorCode VecHIPGetArrayRead(2808,96978
-PETSC_EXTERN PetscErrorCode VecHIPRestoreArrayRead(2840,98021
-PETSC_EXTERN PetscErrorCode VecHIPGetArrayWrite(2876,99260
-PETSC_EXTERN PetscErrorCode VecHIPRestoreArrayWrite(2907,100256
-PetscErrorCode VecHIPPlaceArray(2944,101541
-PetscErrorCode VecHIPReplaceArray(2981,103036
-PetscErrorCode VecHIPResetArray(3007,103879
-PetscErrorCode VecGetArray2d(3254,110773
-PetscErrorCode VecGetArray2dWrite(3304,112877
-PetscErrorCode VecRestoreArray2d(3350,114746
-PetscErrorCode VecRestoreArray2dWrite(3391,116336
-PetscErrorCode VecGetArray1d(3433,117919
-PetscErrorCode VecGetArray1dWrite(3476,119612
-PetscErrorCode VecRestoreArray1d(3516,121188
-PetscErrorCode VecRestoreArray1dWrite(3550,122521
-PetscErrorCode VecGetArray3d(3592,124336
-PetscErrorCode VecGetArray3dWrite(3647,126828
-PetscErrorCode VecRestoreArray3d(3699,129089
-PetscErrorCode VecRestoreArray3dWrite(3742,130843
-PetscErrorCode VecGetArray4d(3791,132940
-PetscErrorCode VecGetArray4dWrite(3852,135848
-PetscErrorCode VecRestoreArray4d(3909,138528
-PetscErrorCode VecRestoreArray4dWrite(3954,140434
-PetscErrorCode VecGetArray2dRead(3999,142324
-PetscErrorCode VecRestoreArray2dRead(4045,144224
-PetscErrorCode VecGetArray1dRead(4087,145813
-PetscErrorCode VecRestoreArray1dRead(4127,147425
-PetscErrorCode VecGetArray3dRead(4169,149250
-PetscErrorCode VecRestoreArray3dRead(4221,151568
-PetscErrorCode VecGetArray4dRead(4270,153671
-PetscErrorCode VecRestoreArray4dRead(4328,156404
-PetscErrorCode VecLockGet(4360,157403
-PetscErrorCode VecLockGetLocation(4368,157573
-PetscErrorCode VecLockReadPush(4404,158790
-PetscErrorCode VecLockReadPop(4440,160054
+PetscErrorCode VecWAXPY(777,24951
+PetscErrorCode VecSetValues(847,27599
+PetscErrorCode VecGetValues(894,29148
+PetscErrorCode VecSetValuesBlocked(943,30912
+PetscErrorCode VecSetValuesLocal(991,32605
+PetscErrorCode VecSetValuesBlockedLocal(1049,34850
+PetscErrorCode VecMTDot(1100,36462
+PetscErrorCode VecMDot(1152,37957
+PetscErrorCode VecMAXPY(1196,39231
+PetscErrorCode VecConcatenate(1260,41967
+PetscErrorCode VecGetSubVectorContiguityAndBS_Private(1324,44195
+PetscErrorCode VecGetSubVectorThroughVecScatter_Private(1363,45825
+PetscErrorCode VecGetSubVector(1409,47540
+PetscErrorCode VecRestoreSubVector(1525,52264
+PetscErrorCode VecCreateLocalVector(1636,56579
+PetscErrorCode VecGetLocalVectorRead(1692,58541
+PetscErrorCode VecRestoreLocalVectorRead(1726,59639
+PetscErrorCode VecGetLocalVector(1773,61243
+PetscErrorCode VecRestoreLocalVector(1805,62285
+PetscErrorCode VecGetArray(1862,64145
+PetscErrorCode VecRestoreArray(1889,65230
+PetscErrorCode VecGetArrayRead(1925,66613
+PetscErrorCode VecRestoreArrayRead(1955,67545
+PetscErrorCode VecGetArrayWrite(1992,68938
+PetscErrorCode VecRestoreArrayWrite(2020,69808
+PetscErrorCode VecGetArrays(2053,70747
+PetscErrorCode VecRestoreArrays(2090,71925
+PetscErrorCode VecGetArrayAndMemType(2127,73503
+PetscErrorCode VecRestoreArrayAndMemType(2160,74628
+PetscErrorCode VecGetArrayReadAndMemType(2197,75938
+PetscErrorCode VecRestoreArrayReadAndMemType(2230,77039
+PetscErrorCode VecGetArrayWriteAndMemType(2267,78262
+PetscErrorCode VecRestoreArrayWriteAndMemType(2301,79374
+PetscErrorCode VecPlaceArray(2342,80784
+PetscErrorCode VecReplaceArray(2375,81788
+PETSC_EXTERN PetscErrorCode VecCUDAGetArray(2416,83271
+PETSC_EXTERN PetscErrorCode VecCUDARestoreArray(2448,84222
+PETSC_EXTERN PetscErrorCode VecCUDAGetArrayRead(2490,85748
+PETSC_EXTERN PetscErrorCode VecCUDARestoreArrayRead(2516,86679
+PETSC_EXTERN PetscErrorCode VecCUDAGetArrayWrite(2552,87929
+PETSC_EXTERN PetscErrorCode VecCUDARestoreArrayWrite(2584,88943
+PetscErrorCode VecCUDAPlaceArray(2621,90258
+PetscErrorCode VecCUDAReplaceArray(2658,91764
+PetscErrorCode VecCUDAResetArray(2687,92811
+PETSC_EXTERN PetscErrorCode VecHIPGetArray(2735,94539
+PETSC_EXTERN PetscErrorCode VecHIPRestoreArray(2766,95475
+PETSC_EXTERN PetscErrorCode VecHIPGetArrayRead(2808,96979
+PETSC_EXTERN PetscErrorCode VecHIPRestoreArrayRead(2840,98022
+PETSC_EXTERN PetscErrorCode VecHIPGetArrayWrite(2876,99261
+PETSC_EXTERN PetscErrorCode VecHIPRestoreArrayWrite(2907,100257
+PetscErrorCode VecHIPPlaceArray(2944,101542
+PetscErrorCode VecHIPReplaceArray(2981,103037
+PetscErrorCode VecHIPResetArray(3007,103880
+PetscErrorCode VecGetArray2d(3254,110774
+PetscErrorCode VecGetArray2dWrite(3304,112878
+PetscErrorCode VecRestoreArray2d(3350,114747
+PetscErrorCode VecRestoreArray2dWrite(3391,116337
+PetscErrorCode VecGetArray1d(3433,117920
+PetscErrorCode VecGetArray1dWrite(3476,119613
+PetscErrorCode VecRestoreArray1d(3516,121189
+PetscErrorCode VecRestoreArray1dWrite(3550,122522
+PetscErrorCode VecGetArray3d(3592,124337
+PetscErrorCode VecGetArray3dWrite(3647,126829
+PetscErrorCode VecRestoreArray3d(3699,129090
+PetscErrorCode VecRestoreArray3dWrite(3742,130844
+PetscErrorCode VecGetArray4d(3791,132941
+PetscErrorCode VecGetArray4dWrite(3852,135849
+PetscErrorCode VecRestoreArray4d(3909,138529
+PetscErrorCode VecRestoreArray4dWrite(3954,140435
+PetscErrorCode VecGetArray2dRead(3999,142325
+PetscErrorCode VecRestoreArray2dRead(4045,144225
+PetscErrorCode VecGetArray1dRead(4087,145814
+PetscErrorCode VecRestoreArray1dRead(4127,147426
+PetscErrorCode VecGetArray3dRead(4169,149251
+PetscErrorCode VecRestoreArray3dRead(4221,151569
+PetscErrorCode VecGetArray4dRead(4270,153672
+PetscErrorCode VecRestoreArray4dRead(4328,156405
+PetscErrorCode VecLockGet(4360,157404
+PetscErrorCode VecLockGetLocation(4368,157574
+PetscErrorCode VecLockReadPush(4404,158791
+PetscErrorCode VecLockReadPop(4440,160055
 PetscErrorCode VecLockWriteSet(4485,161770
 PetscErrorCode VecLockPush(4507,162617
 PetscErrorCode VecLockPop(4521,162878
 
+src/vec/vec/interface/vecreg.c,233
+vecreg.c:^?vecreg.c^A,1
+PetscFunctionList VecList 4,59
+PetscBool         VecRegisterAllCalled 5,106
+PetscErrorCode VecSetType(29,765
+PetscErrorCode VecGetType(109,3535
+PetscErrorCode VecGetRootType_Private(119,3789
+PetscErrorCode VecRegister(177,5470
+
 src/vec/vec/interface/vecregall.c,39
 vecregall.c:^?vecregall.c^A,1
 PetscErrorCode VecRegisterAll(41,1341
@@ -1909,37 +1909,37 @@
 static PetscErrorCode VecMax_Nest(382,9760
 static PetscErrorCode VecView_Nest(415,10583
 static PetscErrorCode VecSize_Nest_Recursive(447,11901
-static PetscErrorCode VecGetSize_Nest(473,12642
-static PetscErrorCode VecGetLocalSize_Nest(481,12853
-static PetscErrorCode VecMaxPointwiseDivide_Nest(488,12987
-static PetscErrorCode VecGetSubVector_Nest(507,13460
-static PetscErrorCode VecRestoreSubVector_Nest(527,13997
-static PetscErrorCode VecGetArray_Nest(535,14202
-static PetscErrorCode VecRestoreArray_Nest(564,15167
-static PetscErrorCode VecRestoreArrayRead_Nest(594,16163
-static PetscErrorCode VecConcatenate_Nest(601,16321
-static PetscErrorCode VecCreateLocalVector_Nest(608,16587
-static PetscErrorCode VecGetLocalVector_Nest(634,17387
-static PetscErrorCode VecRestoreLocalVector_Nest(647,17815
-static PetscErrorCode VecGetLocalVectorRead_Nest(661,18306
-static PetscErrorCode VecRestoreLocalVectorRead_Nest(674,18742
-static PetscErrorCode VecSetRandom_Nest(687,19186
-static PetscErrorCode VecNestSetOps_Private(697,19424
-static PetscErrorCode VecNestGetSubVecs_Private(776,23017
-PetscErrorCode VecNestGetSubVec_Nest(792,23513
-PetscErrorCode VecNestGetSubVec(818,24072
-PetscErrorCode VecNestGetSubVecs_Nest(825,24270
-PetscErrorCode VecNestGetSubVecs(858,24945
-static PetscErrorCode VecNestSetSubVec_Private(865,25144
-PetscErrorCode VecNestSetSubVec_Nest(933,27503
-PetscErrorCode VecNestSetSubVec(958,28184
-PetscErrorCode VecNestSetSubVecs_Nest(965,28379
-PetscErrorCode VecNestSetSubVecs(994,29203
-PetscErrorCode VecNestGetSize_Nest(1001,29431
-PetscErrorCode VecNestGetSize(1027,29842
-static PetscErrorCode VecSetUp_Nest_Private(1036,30090
-static PetscErrorCode VecSetUp_NestIS_Private(1061,30783
-PetscErrorCode VecCreateNest(1112,32696
+static PetscErrorCode VecGetSize_Nest(473,12643
+static PetscErrorCode VecGetLocalSize_Nest(481,12855
+static PetscErrorCode VecMaxPointwiseDivide_Nest(488,12989
+static PetscErrorCode VecGetSubVector_Nest(507,13462
+static PetscErrorCode VecRestoreSubVector_Nest(527,13999
+static PetscErrorCode VecGetArray_Nest(535,14204
+static PetscErrorCode VecRestoreArray_Nest(564,15169
+static PetscErrorCode VecRestoreArrayRead_Nest(594,16165
+static PetscErrorCode VecConcatenate_Nest(601,16323
+static PetscErrorCode VecCreateLocalVector_Nest(608,16589
+static PetscErrorCode VecGetLocalVector_Nest(634,17389
+static PetscErrorCode VecRestoreLocalVector_Nest(647,17817
+static PetscErrorCode VecGetLocalVectorRead_Nest(661,18308
+static PetscErrorCode VecRestoreLocalVectorRead_Nest(674,18744
+static PetscErrorCode VecSetRandom_Nest(687,19188
+static PetscErrorCode VecNestSetOps_Private(697,19426
+static PetscErrorCode VecNestGetSubVecs_Private(776,23019
+PetscErrorCode VecNestGetSubVec_Nest(792,23515
+PetscErrorCode VecNestGetSubVec(818,24074
+PetscErrorCode VecNestGetSubVecs_Nest(825,24272
+PetscErrorCode VecNestGetSubVecs(858,24947
+static PetscErrorCode VecNestSetSubVec_Private(865,25146
+PetscErrorCode VecNestSetSubVec_Nest(933,27505
+PetscErrorCode VecNestSetSubVec(958,28186
+PetscErrorCode VecNestSetSubVecs_Nest(965,28381
+PetscErrorCode VecNestSetSubVecs(994,29205
+PetscErrorCode VecNestGetSize_Nest(1001,29433
+PetscErrorCode VecNestGetSize(1027,29844
+static PetscErrorCode VecSetUp_Nest_Private(1036,30092
+static PetscErrorCode VecSetUp_NestIS_Private(1061,30785
+PetscErrorCode VecCreateNest(1112,32698
 
 src/vec/vec/impls/nest/vecnestimpl.h,240
 vecnestimpl.h:^?vecnestimpl.h^A,1
@@ -1976,6 +1976,27 @@
 PETSC_EXTERN void vecnestsetsubvecs_(27,794
 PETSC_EXTERN void veccreatenest_(32,944
 
+src/vec/vec/impls/mpi/pdvec.c,826
+pdvec.c:^?pdvec.c^A,1
+static PetscErrorCode VecResetPreallocationCOO_MPI(11,279
+PetscErrorCode VecDestroy_MPI(27,732
+PetscErrorCode VecView_MPI_ASCII(56,1701
+PetscErrorCode VecView_MPI_Binary(375,17824
+PetscErrorCode VecView_MPI_Draw_LG(381,17953
+PetscErrorCode VecView_MPI_Draw(434,19953
+PetscErrorCode VecView_MPI_Matlab(489,22112
+PetscErrorCode VecView_MPI_ADIOS(526,23456
+PetscErrorCode VecView_MPI_HDF5(554,24420
+PETSC_EXTERN PetscErrorCode VecView_MPI(742,31609
+PetscErrorCode VecGetSize_MPI(808,33810
+PetscErrorCode VecGetValues_MPI(815,33935
+PetscErrorCode VecSetValues_MPI(832,34544
+PetscErrorCode VecSetValuesBlocked_MPI(874,36652
+PetscErrorCode VecAssemblyBegin_MPI(926,38793
+PetscErrorCode VecAssemblyEnd_MPI(959,40440
+PetscErrorCode VecSetPreallocationCOO_MPI(1004,42137
+PetscErrorCode VecSetValuesCOO_MPI(1231,52127
+
 src/vec/vec/impls/mpi/pbvec.c,1056
 pbvec.c:^?pbvec.c^A,1
 PetscErrorCode VecDot_MPI(8,165
@@ -2075,27 +2096,6 @@
       PetscReal v;114,3597
       PetscInt  i;115,3616
 
-src/vec/vec/impls/mpi/pdvec.c,826
-pdvec.c:^?pdvec.c^A,1
-static PetscErrorCode VecResetPreallocationCOO_MPI(11,279
-PetscErrorCode VecDestroy_MPI(27,732
-PetscErrorCode VecView_MPI_ASCII(56,1701
-PetscErrorCode VecView_MPI_Binary(375,17824
-PetscErrorCode VecView_MPI_Draw_LG(381,17953
-PetscErrorCode VecView_MPI_Draw(434,19953
-PetscErrorCode VecView_MPI_Matlab(489,22112
-PetscErrorCode VecView_MPI_ADIOS(526,23456
-PetscErrorCode VecView_MPI_HDF5(554,24420
-PETSC_EXTERN PetscErrorCode VecView_MPI(742,31609
-PetscErrorCode VecGetSize_MPI(808,33810
-PetscErrorCode VecGetValues_MPI(815,33935
-PetscErrorCode VecSetValues_MPI(832,34544
-PetscErrorCode VecSetValuesBlocked_MPI(874,36652
-PetscErrorCode VecAssemblyBegin_MPI(926,38793
-PetscErrorCode VecAssemblyEnd_MPI(959,40440
-PetscErrorCode VecSetPreallocationCOO_MPI(1004,42137
-PetscErrorCode VecSetValuesCOO_MPI(1231,52127
-
 src/vec/vec/impls/mpi/makefile,98
 makefile:^?makefile^A,1
 SOURCEC 3,37
@@ -2965,28 +2965,28 @@
 PetscErrorCode PetscSFGetMultiSF(1169,44180
 PetscErrorCode PetscSFCreateEmbeddedRootSF(1259,48719
 PetscErrorCode PetscSFCreateEmbeddedLeafSF(1344,52194
-PetscErrorCode PetscSFBcastBegin(1407,54970
-PetscErrorCode PetscSFBcastWithMemTypeBegin(1442,56288
-PetscErrorCode PetscSFBcastEnd(1471,57304
-PetscErrorCode PetscSFReduceBegin(1504,58525
-PetscErrorCode PetscSFReduceWithMemTypeBegin(1539,59755
-PetscErrorCode PetscSFReduceEnd(1568,60748
-PetscErrorCode PetscSFFetchAndOpBegin(1604,62278
-PetscErrorCode PetscSFFetchAndOpWithMemTypeBegin(1647,64103
-PetscErrorCode PetscSFFetchAndOpEnd(1678,65536
-PetscErrorCode PetscSFComputeDegreeBegin(1706,66488
-PetscErrorCode PetscSFComputeDegreeEnd(1744,67897
-PetscErrorCode PetscSFComputeMultiRootOriginalNumbering(1781,69366
-PetscErrorCode PetscSFGatherBegin(1821,70808
-PetscErrorCode PetscSFGatherEnd(1850,71647
-PetscErrorCode PetscSFScatterBegin(1878,72509
-PetscErrorCode PetscSFScatterEnd(1907,73374
-static PetscErrorCode PetscSFCheckLeavesUnique_Private(1918,73736
-PetscErrorCode PetscSFCompose(1962,75361
-PetscErrorCode PetscSFComposeInverse(2066,80199
-PetscErrorCode PetscSFCreateLocalSF_Private(2156,83812
-PetscErrorCode PetscSFBcastToZero_Private(2200,85534
-PetscErrorCode PetscSFConcatenate(2243,87290
+PetscErrorCode PetscSFBcastBegin(1407,54971
+PetscErrorCode PetscSFBcastWithMemTypeBegin(1442,56289
+PetscErrorCode PetscSFBcastEnd(1471,57305
+PetscErrorCode PetscSFReduceBegin(1504,58527
+PetscErrorCode PetscSFReduceWithMemTypeBegin(1539,59757
+PetscErrorCode PetscSFReduceEnd(1568,60750
+PetscErrorCode PetscSFFetchAndOpBegin(1604,62280
+PetscErrorCode PetscSFFetchAndOpWithMemTypeBegin(1647,64105
+PetscErrorCode PetscSFFetchAndOpEnd(1678,65538
+PetscErrorCode PetscSFComputeDegreeBegin(1706,66490
+PetscErrorCode PetscSFComputeDegreeEnd(1744,67899
+PetscErrorCode PetscSFComputeMultiRootOriginalNumbering(1781,69368
+PetscErrorCode PetscSFGatherBegin(1821,70810
+PetscErrorCode PetscSFGatherEnd(1850,71649
+PetscErrorCode PetscSFScatterBegin(1878,72511
+PetscErrorCode PetscSFScatterEnd(1907,73376
+static PetscErrorCode PetscSFCheckLeavesUnique_Private(1918,73738
+PetscErrorCode PetscSFCompose(1962,75363
+PetscErrorCode PetscSFComposeInverse(2066,80201
+PetscErrorCode PetscSFCreateLocalSF_Private(2156,83814
+PetscErrorCode PetscSFBcastToZero_Private(2200,85536
+PetscErrorCode PetscSFConcatenate(2243,87292
 
 src/vec/is/sf/interface/sfregi.c,171
 sfregi.c:^?sfregi.c^A,1
@@ -3145,25 +3145,6 @@
 MANSEC 9,192
 SUBMANSEC 10,208
 
-src/vec/is/sf/impls/basic/sfbasic.h,684
-sfbasic.h:^?sfbasic.h^A,1
-#define __SFBASIC_H2,20
-typedef struct _n_PetscSFLink *PetscSFLink;PetscSFLink6,96
-#define SFBASICHEADER 8,141
-  SFBASICHEADER;27,1832
-  PetscInt rootbuflen_rmax;29,1881
-  PetscInt nRemoteLeafRanks;30,1952
-  PetscInt nRemoteLeafRanksMax;31,2009
-  PetscInt *leafbufdisp;leafbufdisp33,2079
-  PetscInt *leafsigdisp;leafsigdisp34,2240
-  PetscInt    *leafbufdisp_d;leafbufdisp_d36,2359
-  PetscInt    *leafsigdisp_d;leafsigdisp_d37,2389
-  PetscMPIInt *iranks_d;iranks_d38,2457
-  PetscInt    *ioffset_d;ioffset_d39,2546
-} PetscSF_Basic;41,2636
-static inline PetscErrorCode PetscSFGetRootInfo_Basic(43,2654
-static inline PetscErrorCode PetscSFGetLeafInfo_Basic(56,3180
-
 src/vec/is/sf/impls/basic/sfpack.h,9155
 sfpack.h:^?sfpack.h^A,1
 #define __SFPACK_H2,19
@@ -3334,6 +3315,49 @@
 static inline PetscErrorCode PetscSFLinkGetRootPackOptAndIndices(365,28767
 static inline PetscErrorCode PetscSFLinkGetLeafPackOptAndIndices(414,31236
 
+src/vec/is/sf/impls/basic/sfmpi.c,163
+sfmpi.c:^?sfmpi.c^A,1
+static PetscErrorCode PetscSFLinkStartRequests_MPI(8,322
+static PetscErrorCode PetscSFLinkWaitRequests_MPI(45,1982
+PetscErrorCode PetscSFLinkCreate_MPI(78,3864
+
+src/vec/is/sf/impls/basic/sfbasic.c,926
+sfbasic.c:^?sfbasic.c^A,1
+PETSC_INTERN PetscErrorCode PetscSFSetUp_Basic(8,402
+PETSC_INTERN PetscErrorCode PetscSFReset_Basic(87,4424
+PETSC_INTERN PetscErrorCode PetscSFDestroy_Basic(114,5250
+PETSC_INTERN PetscErrorCode PetscSFView_Basic_PatternAndSizes(125,5498
+PETSC_INTERN PetscErrorCode PetscSFView_Basic(163,7412
+static PetscErrorCode PetscSFBcastBegin_Basic(181,8235
+PETSC_INTERN PetscErrorCode PetscSFBcastEnd_Basic(197,9161
+static inline PetscErrorCode PetscSFLeafToRootBegin_Basic(214,9932
+static PetscErrorCode PetscSFReduceBegin_Basic(227,10537
+PETSC_INTERN PetscErrorCode PetscSFReduceEnd_Basic(237,11014
+PETSC_INTERN PetscErrorCode PetscSFFetchAndOpBegin_Basic(249,11514
+static PetscErrorCode PetscSFFetchAndOpEnd_Basic(259,12006
+PETSC_INTERN PetscErrorCode PetscSFGetLeafRanks_Basic(278,13007
+PETSC_INTERN PetscErrorCode PetscSFCreateEmbeddedRootSF_Basic(294,13697
+PETSC_EXTERN PetscErrorCode PetscSFCreate_Basic(436,19756
+
+src/vec/is/sf/impls/basic/sfbasic.h,684
+sfbasic.h:^?sfbasic.h^A,1
+#define __SFBASIC_H2,20
+typedef struct _n_PetscSFLink *PetscSFLink;PetscSFLink6,96
+#define SFBASICHEADER 8,141
+  SFBASICHEADER;27,1832
+  PetscInt rootbuflen_rmax;29,1881
+  PetscInt nRemoteLeafRanks;30,1952
+  PetscInt nRemoteLeafRanksMax;31,2009
+  PetscInt *leafbufdisp;leafbufdisp33,2079
+  PetscInt *leafsigdisp;leafsigdisp34,2240
+  PetscInt    *leafbufdisp_d;leafbufdisp_d36,2359
+  PetscInt    *leafsigdisp_d;leafsigdisp_d37,2389
+  PetscMPIInt *iranks_d;iranks_d38,2457
+  PetscInt    *ioffset_d;ioffset_d39,2546
+} PetscSF_Basic;41,2636
+static inline PetscErrorCode PetscSFGetRootInfo_Basic(43,2654
+static inline PetscErrorCode PetscSFGetLeafInfo_Basic(56,3180
+
 src/vec/is/sf/impls/basic/sfpack.c,2842
 sfpack.c:^?sfpack.c^A,1
 #define CPPJoin4(12,465
@@ -3405,30 +3429,6 @@
 PetscErrorCode PetscSFSetUpPackFields(1345,68627
 PetscErrorCode PetscSFResetPackFields(1419,72039
 
-src/vec/is/sf/impls/basic/sfmpi.c,163
-sfmpi.c:^?sfmpi.c^A,1
-static PetscErrorCode PetscSFLinkStartRequests_MPI(8,322
-static PetscErrorCode PetscSFLinkWaitRequests_MPI(45,1982
-PetscErrorCode PetscSFLinkCreate_MPI(78,3864
-
-src/vec/is/sf/impls/basic/sfbasic.c,926
-sfbasic.c:^?sfbasic.c^A,1
-PETSC_INTERN PetscErrorCode PetscSFSetUp_Basic(8,402
-PETSC_INTERN PetscErrorCode PetscSFReset_Basic(87,4424
-PETSC_INTERN PetscErrorCode PetscSFDestroy_Basic(114,5250
-PETSC_INTERN PetscErrorCode PetscSFView_Basic_PatternAndSizes(125,5498
-PETSC_INTERN PetscErrorCode PetscSFView_Basic(163,7412
-static PetscErrorCode PetscSFBcastBegin_Basic(181,8235
-PETSC_INTERN PetscErrorCode PetscSFBcastEnd_Basic(197,9160
-static inline PetscErrorCode PetscSFLeafToRootBegin_Basic(214,9931
-static PetscErrorCode PetscSFReduceBegin_Basic(227,10536
-PETSC_INTERN PetscErrorCode PetscSFReduceEnd_Basic(237,11013
-PETSC_INTERN PetscErrorCode PetscSFFetchAndOpBegin_Basic(249,11513
-static PetscErrorCode PetscSFFetchAndOpEnd_Basic(259,12005
-PETSC_INTERN PetscErrorCode PetscSFGetLeafRanks_Basic(278,13006
-PETSC_INTERN PetscErrorCode PetscSFCreateEmbeddedRootSF_Basic(294,13695
-PETSC_EXTERN PetscErrorCode PetscSFCreate_Basic(436,19754
-
 src/vec/is/sf/impls/basic/makefile,116
 makefile:^?makefile^A,1
 SOURCEH 3,40
@@ -3459,17 +3459,17 @@
 PetscErrorCode PetscSFLinkGetDataBegin_NVSHMEM(339,16331
 PetscErrorCode PetscSFLinkGetDataEnd_NVSHMEM(435,20637
 __global__ static void WaitAndPutDataToRemotelyAccessible(488,23140
-__global__ static void WaitSignalsFromLocallyAccessible(502,23820
-PetscErrorCode PetscSFLinkPutDataBegin_NVSHMEM(514,24220
-__global__ static void PutDataEnd(587,27850
-PetscErrorCode PetscSFLinkPutDataEnd_NVSHMEM(606,28793
-PetscErrorCode PetscSFLinkSendSignalsToAllowPuttingData_NVSHMEM(640,30161
-static PetscErrorCode PetscSFLinkDestroy_NVSHMEM(668,31328
-PetscErrorCode PetscSFLinkCreate_NVSHMEM(687,32098
-PetscErrorCode PetscNvshmemSum(793,38331
-PetscErrorCode PetscNvshmemMax(803,38662
-PetscErrorCode PetscNvshmemSum(813,38989
-PetscErrorCode PetscNvshmemMax(823,39283
+__global__ static void WaitSignalsFromLocallyAccessible(502,23821
+PetscErrorCode PetscSFLinkPutDataBegin_NVSHMEM(514,24221
+__global__ static void PutDataEnd(587,27851
+PetscErrorCode PetscSFLinkPutDataEnd_NVSHMEM(606,28794
+PetscErrorCode PetscSFLinkSendSignalsToAllowPuttingData_NVSHMEM(640,30162
+static PetscErrorCode PetscSFLinkDestroy_NVSHMEM(668,31329
+PetscErrorCode PetscSFLinkCreate_NVSHMEM(687,32099
+PetscErrorCode PetscNvshmemSum(793,38332
+PetscErrorCode PetscNvshmemMax(803,38663
+PetscErrorCode PetscNvshmemSum(813,38990
+PetscErrorCode PetscNvshmemMax(823,39284
 
 src/vec/is/sf/impls/basic/nvshmem/makefile,118
 makefile:^?makefile^A,1
@@ -3890,7 +3890,7 @@
 PetscErrorCode PetscSectionGetUseFieldOffsets(3496,121894
 PetscErrorCode PetscSectionSetUseFieldOffsets(3517,122507
 #define PetscSectionExpandPoints_Loop(3525,122718
-PetscErrorCode PetscSectionExtractDofsFromArray(3559,124225
+PetscErrorCode PetscSectionExtractDofsFromArray(3559,124226
 
 src/vec/is/section/interface/sectionhdf5.c,328
 sectionhdf5.c:^?sectionhdf5.c^A,1
@@ -3959,8 +3959,8 @@
 PetscErrorCode ISConcatenate(474,13116
 PetscErrorCode ISListToPair(547,15586
 PetscErrorCode ISPairToList(605,17569
-PetscErrorCode ISEmbed(732,22767
-PetscErrorCode ISSortPermutation(784,24560
+PetscErrorCode ISEmbed(732,22769
+PetscErrorCode ISSortPermutation(784,24563
 
 src/vec/is/is/utils/iscoloring.c,751
 iscoloring.c:^?iscoloring.c^A,1
@@ -4149,44 +4149,44 @@
 static PetscErrorCode ISGetInfo_Permutation(594,22376
 static PetscErrorCode ISGetInfo_Interval(637,23677
 static PetscErrorCode ISGetInfo_Identity(691,25589
-PetscErrorCode ISGetInfo(767,28133
-static PetscErrorCode ISCopyInfo(831,30470
-PetscErrorCode ISIdentity(860,31442
-PetscErrorCode ISSetIdentity(885,32205
-PetscErrorCode ISContiguousLocal(911,32901
-PetscErrorCode ISPermutation(945,33997
-PetscErrorCode ISSetPermutation(973,34940
-PetscErrorCode ISDestroy(1011,36000
-PetscErrorCode ISInvertPermutation(1056,37382
-PetscErrorCode ISGetSize(1099,38550
-PetscErrorCode ISGetLocalSize(1122,38965
-PetscErrorCode ISGetLayout(1146,39429
-PetscErrorCode ISSetLayout(1174,40177
-PetscErrorCode ISGetIndices(1223,41554
-PetscErrorCode ISGetMinMax(1252,42246
-PetscErrorCode ISLocate(1275,42812
-PetscErrorCode ISRestoreIndices(1340,44411
-static PetscErrorCode ISGatherTotal_Private(1349,44649
-PetscErrorCode ISGetTotalIndices(1404,46658
-PetscErrorCode ISRestoreTotalIndices(1434,47442
-PetscErrorCode ISGetNonlocalIndices(1474,48742
-PetscErrorCode ISRestoreNonlocalIndices(1509,49870
-PetscErrorCode ISGetNonlocalIS(1540,50927
-PetscErrorCode ISRestoreNonlocalIS(1575,51991
-PetscErrorCode ISViewFromOptions(1602,52880
-PetscErrorCode ISView(1623,53367
-PetscErrorCode ISLoad(1656,54668
-PetscErrorCode ISSort(1686,55669
-PetscErrorCode ISSortRemoveDups(1707,56132
-PetscErrorCode ISToGeneral(1730,56749
-PetscErrorCode ISSorted(1759,57452
-PetscErrorCode ISDuplicate(1783,57945
-PetscErrorCode ISCopy(1808,58418
-PetscErrorCode ISShift(1849,59813
-PetscErrorCode ISOnComm(1892,61549
-PetscErrorCode ISSetBlockSize(1926,62669
-PetscErrorCode ISGetBlockSize(1972,64497
-PetscErrorCode ISGetIndicesCopy(1979,64656
+PetscErrorCode ISGetInfo(767,28134
+static PetscErrorCode ISCopyInfo(831,30471
+PetscErrorCode ISIdentity(860,31443
+PetscErrorCode ISSetIdentity(885,32206
+PetscErrorCode ISContiguousLocal(911,32902
+PetscErrorCode ISPermutation(945,33998
+PetscErrorCode ISSetPermutation(973,34941
+PetscErrorCode ISDestroy(1011,36001
+PetscErrorCode ISInvertPermutation(1056,37383
+PetscErrorCode ISGetSize(1099,38551
+PetscErrorCode ISGetLocalSize(1122,38966
+PetscErrorCode ISGetLayout(1146,39430
+PetscErrorCode ISSetLayout(1174,40178
+PetscErrorCode ISGetIndices(1223,41555
+PetscErrorCode ISGetMinMax(1252,42247
+PetscErrorCode ISLocate(1275,42813
+PetscErrorCode ISRestoreIndices(1340,44412
+static PetscErrorCode ISGatherTotal_Private(1349,44650
+PetscErrorCode ISGetTotalIndices(1404,46659
+PetscErrorCode ISRestoreTotalIndices(1434,47443
+PetscErrorCode ISGetNonlocalIndices(1474,48743
+PetscErrorCode ISRestoreNonlocalIndices(1509,49871
+PetscErrorCode ISGetNonlocalIS(1540,50928
+PetscErrorCode ISRestoreNonlocalIS(1575,51992
+PetscErrorCode ISViewFromOptions(1602,52881
+PetscErrorCode ISView(1623,53368
+PetscErrorCode ISLoad(1656,54669
+PetscErrorCode ISSort(1686,55670
+PetscErrorCode ISSortRemoveDups(1707,56133
+PetscErrorCode ISToGeneral(1730,56750
+PetscErrorCode ISSorted(1759,57453
+PetscErrorCode ISDuplicate(1783,57946
+PetscErrorCode ISCopy(1808,58419
+PetscErrorCode ISShift(1849,59814
+PetscErrorCode ISOnComm(1892,61550
+PetscErrorCode ISSetBlockSize(1926,62670
+PetscErrorCode ISGetBlockSize(1972,64498
+PetscErrorCode ISGetIndicesCopy(1979,64657
 
 src/vec/is/is/interface/isreg.c,212
 isreg.c:^?isreg.c^A,1
@@ -5324,46 +5324,46 @@
   #define C_0(16,528
 #define PETSC_THREAD_SYNC19,641
 static PetscErrorCode LandauGPUMapsDestroy(26,752
-static PetscErrorCode energy_f(51,1698
-static PetscErrorCode gamma_m1_f(63,2043
-static PetscErrorCode LandauFormJacobian_Internal(92,2929
-static void zero_bc(611,32285
-#define MATVEC2(617,32729
-static void CircleInflate(625,32912
-static PetscErrorCode GeometryDMLandau(717,35843
-static PetscErrorCode LandauDMCreateVMeshes(737,36521
-static PetscErrorCode SetupDS(918,44558
-  PetscReal v_0;961,46474
-  PetscReal kT_m;962,46491
-  PetscReal n;963,46509
-  PetscReal shift;964,46524
-} MaxwellianCtx;965,46543
-static PetscErrorCode maxwellian(967,46561
-PetscErrorCode DMPlexLandauAddMaxwellians(1010,47976
-static PetscErrorCode LandauSetInitialCondition(1054,49694
-static PetscErrorCode adaptToleranceFEM(1065,50141
-static PetscErrorCode adapt(1193,57259
-static PetscErrorCode ProcessOptions(1218,58239
-static PetscErrorCode CreateStaticGPUData(1500,80171
-static void g0_1(1907,105045
-static void g0_fake(1913,105507
-static void g0_r(1920,106016
-static PetscErrorCode MatrixNfDestroy(1925,106481
-static PetscErrorCode LandauCreateJacobianMatrix(1938,106856
-PetscErrorCode DMPlexLandauCreateVelocitySpace(2059,112614
-PetscErrorCode DMPlexLandauAccess(2226,120408
-PetscErrorCode DMPlexLandauDestroyVelocitySpace(2278,122414
-static void f0_s_den(2332,125540
-static void f0_s_mom(2339,126050
-static void f0_s_v2(2345,126607
-static PetscErrorCode gamma_n_f(2353,127175
-static void f0_s_rden(2375,127851
-static void f0_s_rmom(2382,128385
-static void f0_s_rv2(2388,128910
-PetscErrorCode DMPlexLandauPrintNorms(2408,129696
-PetscErrorCode DMPlexLandauCreateMassMatrix(2574,139783
-PetscErrorCode DMPlexLandauIFunction(2693,144905
-PetscErrorCode DMPlexLandauIJacobian(2770,147543
+static PetscErrorCode energy_f(51,1699
+static PetscErrorCode gamma_m1_f(63,2044
+static PetscErrorCode LandauFormJacobian_Internal(92,2930
+static void zero_bc(611,32286
+#define MATVEC2(617,32730
+static void CircleInflate(625,32913
+static PetscErrorCode GeometryDMLandau(717,35844
+static PetscErrorCode LandauDMCreateVMeshes(737,36522
+static PetscErrorCode SetupDS(918,44559
+  PetscReal v_0;961,46475
+  PetscReal kT_m;962,46492
+  PetscReal n;963,46510
+  PetscReal shift;964,46525
+} MaxwellianCtx;965,46544
+static PetscErrorCode maxwellian(967,46562
+PetscErrorCode DMPlexLandauAddMaxwellians(1010,47977
+static PetscErrorCode LandauSetInitialCondition(1054,49695
+static PetscErrorCode adaptToleranceFEM(1065,50142
+static PetscErrorCode adapt(1193,57260
+static PetscErrorCode ProcessOptions(1218,58240
+static PetscErrorCode CreateStaticGPUData(1500,80172
+static void g0_1(1907,105046
+static void g0_fake(1913,105508
+static void g0_r(1920,106017
+static PetscErrorCode MatrixNfDestroy(1925,106482
+static PetscErrorCode LandauCreateJacobianMatrix(1938,106857
+PetscErrorCode DMPlexLandauCreateVelocitySpace(2059,112615
+PetscErrorCode DMPlexLandauAccess(2226,120409
+PetscErrorCode DMPlexLandauDestroyVelocitySpace(2278,122415
+static void f0_s_den(2332,125541
+static void f0_s_mom(2339,126051
+static void f0_s_v2(2345,126608
+static PetscErrorCode gamma_n_f(2353,127176
+static void f0_s_rden(2375,127852
+static void f0_s_rmom(2382,128386
+static void f0_s_rv2(2388,128911
+PetscErrorCode DMPlexLandauPrintNorms(2408,129697
+PetscErrorCode DMPlexLandauCreateMassMatrix(2574,139784
+PetscErrorCode DMPlexLandauIFunction(2693,144906
+PetscErrorCode DMPlexLandauIJacobian(2770,147544
 
 src/ts/utils/dmplexlandau/makefile,131
 makefile:^?makefile^A,1
@@ -5392,11 +5392,6 @@
   #define GAMMA3(126,7152
 PETSC_DEVICE_FUNC_DECL void LandauTensor3DRelativistic(127,7263
 
-src/ts/utils/dmplexlandau/tutorials/makefile,26
-makefile:^?makefile^A,1
-LOCDIR 3,37
-MANSEC 4,86
-
 src/ts/utils/dmplexlandau/tutorials/ex2.c,1817
 ex2.c:^?ex2.c^A,1
 static char help[help1,0
@@ -5454,6 +5449,11 @@
 static PetscErrorCode ProcessREOptions(534,25091
 int main(620,31063
 
+src/ts/utils/dmplexlandau/tutorials/makefile,26
+makefile:^?makefile^A,1
+LOCDIR 3,37
+MANSEC 4,86
+
 src/ts/utils/dmplexlandau/tutorials/ex1.c,278
 ex1.c:^?ex1.c^A,1
 static char help[help1,0
@@ -5538,6 +5538,227 @@
 __global__ void __launch_bounds__(539,27206
 PetscErrorCode LandauCUDAJacobian(647,32203
 
+src/ts/tutorials/ex9.c,5792
+ex9.c:^?ex9.c^A,1
+static const char help[help1,0
+static inline PetscReal Sgn(40,3203
+static inline PetscReal Abs(44,3275
+static inline PetscReal Sqr(48,3346
+static inline PetscReal MaxAbs(52,3407
+PETSC_UNUSED static inline PetscReal MinAbs(56,3514
+static inline PetscReal MinMod2(60,3634
+static inline PetscReal MaxMod2(64,3768
+static inline PetscReal MinMod3(68,3902
+static inline PetscReal RangeMod(73,4086
+typedef struct _LimitInfo 80,4384
+  PetscReal hx;81,4412
+  PetscInt  m;82,4428
+}          *LimitInfo;LimitInfo83,4443
+static void Limit_Upwind(84,4466
+static void Limit_LaxWendroff(89,4633
+static void Limit_BeamWarming(94,4809
+static void Limit_Fromm(99,4985
+static void Limit_Minmod(104,5171
+static void Limit_Superbee(109,5358
+static void Limit_MC(114,5587
+static void Limit_VanLeer(119,5801
+static void Limit_VanAlbada(124,6085
+static void Limit_VanAlbadaTVD(129,6492
+static void Limit_Koren(134,6801
+static void Limit_KorenSym(139,7238
+static void Limit_Koren3(144,7674
+static PetscReal CadaTorrilhonPhiHatR_Eq13(149,7929
+static void Limit_CadaTorrilhon2(153,8124
+static void Limit_CadaTorrilhon3R(158,8370
+static void Limit_CadaTorrilhon3R0p1(168,9041
+static void Limit_CadaTorrilhon3R1(172,9211
+static void Limit_CadaTorrilhon3R10(176,9377
+static void Limit_CadaTorrilhon3R100(180,9545
+  FVBC_PERIODIC,188,9838
+  FVBC_OUTFLOW189,9855
+} FVBCType;190,9870
+static const char *FVBCTypes[FVBCTypes191,9882
+typedef PetscErrorCode (*RiemannFunction)RiemannFunction192,9964
+typedef PetscErrorCode (*ReconstructFunction)ReconstructFunction193,10095
+  PetscErrorCode (*sample)sample196,10242
+  RiemannFunction     riemann;197,10355
+  ReconstructFunction characteristic;198,10386
+  PetscErrorCode (*destroy)destroy199,10424
+  void    *user;user200,10461
+  PetscInt dof;201,10478
+  char    *fieldname[fieldname202,10494
+} PhysicsCtx;203,10520
+  void (*limit)limit206,10552
+  PhysicsCtx physics;207,10637
+  MPI_Comm   comm;208,10659
+  char       prefix[prefix209,10678
+  PetscScalar *R,R212,10731
+  PetscScalar *R, *Rinv;Rinv212,10731
+  PetscScalar *cjmpLR;cjmpLR213,10816
+  PetscScalar *cslope;cslope214,10920
+  PetscScalar *uLR;uLR215,10998
+  PetscScalar *flux;flux216,11104
+  PetscReal   *speeds;speeds217,11157
+  PetscReal cfl_idt;219,11209
+  PetscReal cfl;220,11269
+  PetscReal xmin,221,11286
+  PetscReal xmin, xmax;221,11286
+  PetscInt  initial;222,11310
+  PetscBool exact;223,11331
+  FVBCType  bctype;224,11350
+} FVCtx;225,11370
+PetscErrorCode RiemannListAdd(227,11380
+PetscErrorCode RiemannListFind(234,11591
+PetscErrorCode ReconstructListAdd(242,11922
+PetscErrorCode ReconstructListFind(249,12131
+static PetscErrorCode PhysicsCharacteristic_Conservative(265,12929
+static PetscErrorCode PhysicsDestroy_SimpleFree(277,13329
+  PetscReal a;287,13580
+} AdvectCtx;288,13620
+static PetscErrorCode PhysicsRiemann_Advect(290,13634
+static PetscErrorCode PhysicsCharacteristic_Advect(302,14018
+static PetscErrorCode PhysicsSample_Advect(313,14321
+static PetscErrorCode PhysicsCreate_Advect(360,15517
+  PetscReal lxf_speed;385,16357
+} BurgersCtx;386,16380
+static PetscErrorCode PhysicsSample_Burgers(388,16395
+static PetscErrorCode PhysicsRiemann_Burgers_Exact(426,17556
+static PetscErrorCode PhysicsRiemann_Burgers_Roe(439,18136
+static PetscErrorCode PhysicsRiemann_Burgers_LxF(451,18611
+static PetscErrorCode PhysicsRiemann_Burgers_Rusanov(465,19064
+static PetscErrorCode PhysicsCreate_Burgers(479,19532
+  PetscReal lxf_speed;520,21069
+  PetscReal a;521,21092
+} TrafficCtx;522,21107
+static inline PetscScalar TrafficFlux(524,21122
+static PetscErrorCode PhysicsSample_Traffic(529,21221
+static PetscErrorCode PhysicsRiemann_Traffic_Exact(554,22110
+static PetscErrorCode PhysicsRiemann_Traffic_Roe(568,22657
+static PetscErrorCode PhysicsRiemann_Traffic_LxF(580,23107
+static PetscErrorCode PhysicsRiemann_Traffic_Rusanov(593,23589
+static PetscErrorCode PhysicsCreate_Traffic(605,24070
+  PetscReal c;658,26142
+  PetscReal z;659,26198
+} AcousticsCtx;660,26249
+PETSC_UNUSED static inline void AcousticsFlux(662,26266
+static PetscErrorCode PhysicsCharacteristic_Acoustics(668,26440
+static PetscErrorCode PhysicsSample_Acoustics_Initial(687,26982
+static PetscErrorCode PhysicsSample_Acoustics(705,27668
+static PetscErrorCode PhysicsRiemann_Acoustics_Exact(735,28815
+static PetscErrorCode PhysicsCreate_Acoustics(753,29541
+  PetscReal acoustic_speed;793,31365
+} IsoGasCtx;794,31393
+static inline void IsoGasFlux(796,31407
+static PetscErrorCode PhysicsSample_IsoGas(802,31555
+static PetscErrorCode PhysicsRiemann_IsoGas_Roe(821,32172
+static PetscErrorCode PhysicsRiemann_IsoGas_Exact(867,34010
+    PetscScalar rho,873,34290
+    PetscScalar rho, u;873,34290
+static PetscErrorCode PhysicsRiemann_IsoGas_Rusanov(930,37135
+    PetscScalar rho,935,37410
+    PetscScalar rho, u;935,37410
+static PetscErrorCode PhysicsCharacteristic_IsoGas(949,37925
+static PetscErrorCode PhysicsCreate_IsoGas(966,38486
+  PetscReal gravity;1003,40342
+} ShallowCtx;1004,40363
+static inline void ShallowFlux(1006,40378
+static PetscErrorCode PhysicsRiemann_Shallow_Exact(1012,40556
+    PetscScalar h,1017,40835
+    PetscScalar h, u;1017,40835
+static PetscErrorCode PhysicsRiemann_Shallow_Rusanov(1086,44218
+    PetscScalar h,1091,44488
+    PetscScalar h, u;1091,44488
+static PetscErrorCode PhysicsCharacteristic_Shallow(1105,45057
+static PetscErrorCode PhysicsCreate_Shallow(1123,45652
+static PetscErrorCode FVRHSFunction(1160,47502
+static PetscErrorCode SmallMatMultADB(1259,51284
+static PetscErrorCode FVIJacobian(1274,51693
+static PetscErrorCode FVSample(1309,53097
+static PetscErrorCode SolutionStatsView(1336,54278
+static PetscErrorCode SolutionErrorNorms(1371,56011
+int main(1388,56482
+
+src/ts/tutorials/ex36.c,293
+ex36.c:^?ex36.c^A,1
+static char help[help2,1
+FILE *gfilepointer_data,gfilepointer_data35,1113
+FILE *gfilepointer_data, *gfilepointer_info;gfilepointer_info35,1113
+PetscErrorCode Ue(38,1185
+static PetscErrorCode IFunctionImplicit(48,1391
+static PetscErrorCode IJacobianImplicit(74,2618
+int main(114,4139
+
+src/ts/tutorials/ex26.c,497
+ex26.c:^?ex26.c^A,1
+static char help[help2,1
+  PetscScalar u,99,4570
+  PetscScalar u, v,99,4570
+  PetscScalar u, v, omega,99,4570
+  PetscScalar u, v, omega, temp;99,4570
+} Field;100,4603
+  PetscReal lidvelocity,105,4732
+  PetscReal lidvelocity, prandtl,105,4732
+  PetscReal lidvelocity, prandtl, grashof;105,4732
+  PetscBool parabolic;106,4801
+  PetscReal cfl_initial;107,4925
+} AppCtx;108,4998
+int main(112,5065
+PetscErrorCode FormInitialSolution(209,9423
+PetscErrorCode FormIFunctionLocal(257,10763
+
+src/ts/tutorials/ex20td.c,750
+ex20td.c:^?ex20td.c^A,1
+static char help[help1,0
+  PetscInt  max_steps;71,3253
+  PetscReal final_time;72,3313
+  PetscReal time_step;73,3369
+  Vec       mu1;74,3424
+  Vec       mu2;75,3476
+  Vec       U;76,3528
+  Mat       A;77,3574
+  Mat Jacp;80,3686
+  Vec lambda;81,3723
+  Vec mup;82,3760
+  Vec      sens_mu1;85,3883
+  Vec      sens_mu2;86,3942
+  PetscInt adj_idx;87,4001
+} AppCtx;88,4065
+  SA_TRACK,91,4091
+  SA_GLOBAL92,4103
+} SAMethod;93,4115
+static const char *const SAMethods[SAMethods94,4127
+PetscErrorCode RHSFunction(98,4288
+PetscErrorCode RHSJacobian(122,5077
+PetscErrorCode RHSJacobianP_track(152,6180
+PetscErrorCode RHSJacobianP_global(173,6860
+PetscErrorCode Monitor(197,7631
+PetscErrorCode AdjointMonitor(208,8084
+int main(240,9444
+
+src/ts/tutorials/ex20fwd.c,585
+ex20fwd.c:^?ex20fwd.c^A,1
+#define c11 1,0
+#define c12 2,16
+#define c21 3,30
+#define c22 4,46
+static char help[help5,62
+typedef struct _n_User *User;User18,933
+struct _n_User 19,963
+  PetscReal mu;20,980
+  PetscReal next_output;21,996
+  PetscBool combined;22,1021
+  PetscInt  steps;24,1080
+  PetscReal ftime;25,1099
+  Mat       Jac;26,1118
+  Mat       Jacp;27,1158
+  Vec       x;28,1199
+  Mat       sp;29,1214
+static PetscErrorCode IFunction(35,1301
+static PetscErrorCode IJacobian(53,1895
+static PetscErrorCode RHSJacobianP(78,2737
+static PetscErrorCode Monitor(99,3454
+int main(122,4398
+
 src/ts/tutorials/ex14.c,5086
 ex14.c:^?ex14.c^A,1
 static const char help[help1,0
@@ -5677,34 +5898,332 @@
 static PetscErrorCode THICreateDM3d(1490,73407
 int main(1515,74483
 
-src/ts/tutorials/ex20td.c,750
-ex20td.c:^?ex20td.c^A,1
+src/ts/tutorials/ex11_sa.c,6200
+ex11_sa.c:^?ex11_sa.c^A,1
 static char help[help1,0
-  PetscInt  max_steps;71,3253
-  PetscReal final_time;72,3313
-  PetscReal time_step;73,3369
-  Vec       mu1;74,3424
-  Vec       mu2;75,3476
-  Vec       U;76,3528
-  Mat       A;77,3574
-  Mat Jacp;80,3686
-  Vec lambda;81,3723
-  Vec mup;82,3760
-  Vec      sens_mu1;85,3883
-  Vec      sens_mu2;86,3942
-  PetscInt adj_idx;87,4001
-} AppCtx;88,4065
-  SA_TRACK,91,4091
-  SA_GLOBAL92,4103
-} SAMethod;93,4115
-static const char *const SAMethods[SAMethods94,4127
-PetscErrorCode RHSFunction(98,4288
-PetscErrorCode RHSJacobian(122,5077
-PetscErrorCode RHSJacobianP_track(152,6180
-PetscErrorCode RHSJacobianP_global(173,6860
-PetscErrorCode Monitor(197,7631
-PetscErrorCode AdjointMonitor(208,8084
-int main(240,9444
+#define DIM 43,1890
+static PetscFunctionList PhysicsList;45,1931
+typedef struct _n_Physics *Physics;Physics48,2017
+typedef struct _n_Model *Model;Model52,2244
+typedef struct _n_User *User;User55,2341
+typedef PetscErrorCode (*RiemannFunction)RiemannFunction57,2372
+typedef PetscErrorCode (*SolutionFunction)SolutionFunction58,2518
+typedef PetscErrorCode (*FunctionalFunction)FunctionalFunction59,2622
+typedef PetscErrorCode (*SetupFields)SetupFields60,2747
+struct FieldDescription 65,3064
+  const char *name;name66,3090
+  PetscInt    dof;67,3110
+typedef struct _n_FunctionalLink *FunctionalLink;FunctionalLink70,3133
+struct _n_FunctionalLink 71,3183
+  char              *name;name72,3210
+  FunctionalFunction func;73,3237
+  void              *ctx;ctx74,3264
+  PetscInt           offset;75,3290
+  FunctionalLink     next;76,3319
+struct _n_Physics 79,3350
+  RiemannFunction                riemann;80,3370
+  PetscInt                       dof;81,3412
+  PetscReal                      maxspeed;82,3499
+  void                          *data;data83,3622
+  PetscInt                       nfields;84,3661
+  const struct FieldDescription *field_desc;field_desc85,3703
+struct _n_Model 88,3752
+  MPI_Comm         comm;89,3770
+  Physics          physics;90,3883
+  FunctionalLink   functionalRegistry;91,3911
+  PetscInt         maxComputed;92,3950
+  PetscInt         numMonitored;93,3982
+  FunctionalLink  *functionalMonitored;functionalMonitored94,4015
+  PetscInt         numCall;95,4055
+  FunctionalLink  *functionalCall;functionalCall96,4083
+  SolutionFunction solution;97,4118
+  void            *solutionctx;solutionctx98,4147
+  PetscReal        maxspeed;99,4179
+struct _n_User 102,4273
+  PetscInt numSplitFaces;103,4290
+  PetscInt vtkInterval;104,4316
+  Model    model;105,4358
+static inline PetscScalar DotDIM(108,4380
+static inline PetscReal NormDIM(116,4569
+static inline void axDIM(120,4681
+static inline void waxDIM(125,4800
+static inline void NormalSplitDIM(130,4948
+static inline PetscScalar Dot2(141,5266
+static inline PetscReal Norm2(145,5381
+static inline void Normalize2(149,5489
+static inline void Waxpy2(155,5596
+static inline void Scale2(160,5753
+static inline void WaxpyD(166,5875
+static inline PetscScalar DotD(171,6060
+static inline PetscReal NormD(178,6257
+static inline void NormalSplit(183,6385
+  ADVECT_SOL_TILTED,191,6681
+  ADVECT_SOL_BUMP192,6702
+} AdvectSolType;193,6720
+static const char *const AdvectSolTypes[AdvectSolTypes194,6737
+  ADVECT_SOL_BUMP_CONE,196,6851
+  ADVECT_SOL_BUMP_COS197,6875
+} AdvectSolBumpType;198,6897
+static const char *const AdvectSolBumpTypes[AdvectSolBumpTypes199,6918
+  PetscReal wind[wind202,7045
+} Physics_Advect_Tilted;203,7068
+  PetscReal         center[center205,7110
+  PetscReal         radius;206,7143
+  AdvectSolBumpType type;207,7171
+} Physics_Advect_Bump;208,7197
+  PetscReal     inflowState;211,7238
+  AdvectSolType soltype;212,7267
+    Physics_Advect_Tilted tilted;215,7304
+    Physics_Advect_Bump   bump;216,7338
+  } sol;217,7370
+    PetscInt Error;219,7390
+  } functional;220,7410
+} Physics_Advect;221,7426
+static const struct FieldDescription PhysicsFields_Advect[PhysicsFields_Advect223,7445
+static PetscErrorCode PhysicsBoundary_Advect_Inflow(228,7538
+static PetscErrorCode PhysicsBoundary_Advect_Outflow(238,7884
+static PetscErrorCode PhysicsRiemann_Advect(245,8118
+static PetscErrorCode PhysicsSolution_Advect(269,8941
+static PetscErrorCode PhysicsFunctional_Advect(307,10179
+static PetscErrorCode PhysicsCreate_Advect(319,10638
+  PetscReal gravity;377,13624
+  PetscReal boundaryHeight;378,13645
+    PetscInt Height;380,13684
+    PetscInt Speed;381,13705
+    PetscInt Energy;382,13725
+  } functional;383,13746
+} Physics_SW;384,13762
+  PetscScalar vals[vals386,13793
+  PetscScalar h;387,13816
+  PetscScalar uh[uh388,13833
+} SWNode;389,13856
+static const struct FieldDescription PhysicsFields_SW[PhysicsFields_SW391,13867
+static PetscErrorCode SWFlux(402,14074
+static PetscErrorCode PhysicsBoundary_SW_Wall(416,14471
+static PetscErrorCode PhysicsRiemann_SW(425,14734
+static PetscErrorCode PhysicsSolution_SW(447,15760
+static PetscErrorCode PhysicsFunctional_SW(463,16244
+static PetscErrorCode PhysicsCreate_SW(480,16857
+  PetscScalar vals[vals513,18272
+  PetscScalar r;514,18295
+  PetscScalar ru[ru515,18312
+  PetscScalar e;516,18335
+} EulerNode;517,18352
+typedef PetscErrorCode (*EquationOfState)EquationOfState518,18365
+  PetscInt        npars;520,18478
+  PetscReal       pars[pars521,18503
+  EquationOfState pressure;522,18532
+  EquationOfState sound;523,18560
+    PetscInt Density;525,18596
+    PetscInt Momentum;526,18618
+    PetscInt Energy;527,18641
+    PetscInt Pressure;528,18662
+    PetscInt Speed;529,18685
+  } monitor;530,18705
+} Physics_Euler;531,18718
+static const struct FieldDescription PhysicsFields_Euler[PhysicsFields_Euler533,18736
+static PetscErrorCode Pressure_PG(540,18886
+static PetscErrorCode SpeedOfSound_PG(552,19180
+static PetscErrorCode EulerFlux(572,19678
+static PetscErrorCode PhysicsBoundary_Euler_Wall(591,20228
+static PetscErrorCode PhysicsRiemann_Euler_Rusanov(605,20672
+static PetscErrorCode PhysicsSolution_Euler(624,21601
+static PetscErrorCode PhysicsFunctional_Euler(636,21996
+static PetscErrorCode PhysicsCreate_Euler(653,22592
+PetscErrorCode ConstructCellBoundary(689,24324
+PetscErrorCode SplitFaces(761,27770
+PetscErrorCode CreatePartitionVec(959,35982
+PetscErrorCode CreateMassMatrix(998,37523
+PetscErrorCode SetUpLocalSpace(1074,41026
+PetscErrorCode SetUpBoundaries(1116,42838
+static PetscErrorCode ModelSolutionSetDefault(1144,43788
+static PetscErrorCode ModelFunctionalRegister(1152,43989
+static PetscErrorCode ModelFunctionalSetFromOptions(1170,44568
+static PetscErrorCode FunctionalLinkDestroy(1211,46447
+PetscErrorCode SetInitialCondition(1227,46779
+static PetscErrorCode OutputVTK(1257,47809
+static PetscErrorCode MonitorVTK(1266,48136
+static PetscErrorCode OutputBIN(1373,52738
+static PetscErrorCode TestMonitor(1383,53131
+static PetscErrorCode MonitorBIN(1416,54248
+int main(1435,54915
+
+src/ts/tutorials/ex11.c,7072
+ex11.c:^?ex11.c^A,1
+static char help[help1,0
+#define DIM 42,1867
+static PetscFunctionList PhysicsList,44,1908
+static PetscFunctionList PhysicsList, PhysicsRiemannList_SW;44,1908
+typedef struct _n_Physics *Physics;Physics47,2017
+typedef struct _n_Model *Model;Model51,2244
+typedef struct _n_User *User;User54,2341
+typedef PetscErrorCode (*SolutionFunction)SolutionFunction55,2371
+typedef PetscErrorCode (*SetUpBCFunction)SetUpBCFunction56,2475
+typedef PetscErrorCode (*FunctionalFunction)FunctionalFunction57,2540
+typedef PetscErrorCode (*SetupFields)SetupFields58,2665
+struct FieldDescription 63,2982
+  const char *name;name64,3008
+  PetscInt    dof;65,3028
+typedef struct _n_FunctionalLink *FunctionalLink;FunctionalLink68,3051
+struct _n_FunctionalLink 69,3101
+  char              *name;name70,3128
+  FunctionalFunction func;71,3155
+  void              *ctx;ctx72,3182
+  PetscInt           offset;73,3208
+  FunctionalLink     next;74,3237
+struct _n_Physics 77,3268
+  PetscRiemannFunc               riemann;78,3288
+  PetscInt                       dof;79,3330
+  PetscReal                      maxspeed;80,3417
+  void                          *data;data81,3540
+  PetscInt                       nfields;82,3579
+  const struct FieldDescription *field_desc;field_desc83,3621
+struct _n_Model 86,3670
+  MPI_Comm         comm;87,3688
+  Physics          physics;88,3801
+  FunctionalLink   functionalRegistry;89,3829
+  PetscInt         maxComputed;90,3868
+  PetscInt         numMonitored;91,3900
+  FunctionalLink  *functionalMonitored;functionalMonitored92,3933
+  PetscInt         numCall;93,3973
+  FunctionalLink  *functionalCall;functionalCall94,4001
+  SolutionFunction solution;95,4036
+  SetUpBCFunction  setupbc;96,4065
+  void            *solutionctx;solutionctx97,4093
+  PetscReal        maxspeed;98,4125
+  PetscReal        bounds[bounds99,4215
+  PetscErrorCode (*errorIndicator)errorIndicator100,4251
+  void *errorCtx;errorCtx101,4381
+struct _n_User 104,4403
+  PetscInt  vtkInterval;105,4420
+  char      outputBasename[outputBasename106,4486
+  PetscInt  monitorStepOffset;107,4566
+  Model     model;108,4597
+  PetscBool vtkmon;109,4616
+static inline PetscReal DotDIMReal(112,4640
+static inline PetscReal NormDIM(120,4823
+static inline PetscReal Dot2Real(125,4936
+static inline PetscReal Norm2Real(129,5049
+static inline void Normalize2Real(133,5161
+static inline void Waxpy2Real(139,5274
+static inline void Scale2Real(144,5427
+  ADVECT_SOL_TILTED,152,5612
+  ADVECT_SOL_BUMP,153,5633
+  ADVECT_SOL_BUMP_CAVITY154,5652
+} AdvectSolType;155,5677
+static const char *const AdvectSolTypes[AdvectSolTypes156,5694
+  ADVECT_SOL_BUMP_CONE,158,5823
+  ADVECT_SOL_BUMP_COS159,5847
+} AdvectSolBumpType;160,5869
+static const char *const AdvectSolBumpTypes[AdvectSolBumpTypes161,5890
+  PetscReal wind[wind164,6017
+} Physics_Advect_Tilted;165,6040
+  PetscReal         center[center167,6082
+  PetscReal         radius;168,6115
+  AdvectSolBumpType type;169,6143
+} Physics_Advect_Bump;170,6169
+  PetscReal     inflowState;173,6210
+  AdvectSolType soltype;174,6239
+    Physics_Advect_Tilted tilted;177,6276
+    Physics_Advect_Bump   bump;178,6310
+  } sol;179,6342
+    PetscInt Solution;181,6362
+    PetscInt Error;182,6385
+  } functional;183,6405
+} Physics_Advect;184,6421
+static const struct FieldDescription PhysicsFields_Advect[PhysicsFields_Advect186,6440
+static PetscErrorCode PhysicsBoundary_Advect_Inflow(191,6533
+static PetscErrorCode PhysicsBoundary_Advect_Outflow(201,6879
+static void PhysicsRiemann_Advect(208,7113
+static PetscErrorCode PhysicsSolution_Advect(258,8558
+static PetscErrorCode PhysicsFunctional_Advect(297,9839
+static PetscErrorCode SetUpBC_Advect(310,10369
+static PetscErrorCode PhysicsCreate_Advect(323,11136
+  PetscReal gravity;376,13667
+  PetscReal boundaryHeight;377,13688
+    PetscInt Height;379,13727
+    PetscInt Speed;380,13748
+    PetscInt Energy;381,13768
+  } functional;382,13789
+} Physics_SW;383,13805
+  PetscReal h;385,13836
+  PetscReal uh[uh386,13851
+} SWNode;387,13872
+  SWNode    swnode;390,13898
+  PetscReal vals[vals391,13918
+} SWNodeUnion;392,13945
+static const struct FieldDescription PhysicsFields_SW[PhysicsFields_SW394,13961
+static PetscErrorCode SWFlux(405,14168
+static PetscErrorCode PhysicsBoundary_SW_Wall(419,14588
+static void PhysicsRiemann_SW_HLL(428,14851
+static void PhysicsRiemann_SW_Rusanov(478,16705
+static PetscErrorCode PhysicsSolution_SW(515,18191
+static PetscErrorCode PhysicsFunctional_SW(531,18677
+static PetscErrorCode SetUpBC_SW(548,19287
+static PetscErrorCode PhysicsCreate_SW(559,19731
+  EULER_PAR_GAMMA,598,21705
+  EULER_PAR_RHOR,599,21724
+  EULER_PAR_AMACH,600,21742
+  EULER_PAR_ITANA,601,21761
+  EULER_PAR_SIZE602,21780
+} EulerParamIdx;603,21797
+  EULER_IV_SHOCK,605,21829
+  EULER_SS_SHOCK,606,21847
+  EULER_SHOCK_TUBE,607,21865
+  EULER_LINEAR_WAVE608,21885
+} EulerType;609,21905
+  PetscReal r;611,21935
+  PetscReal ru[ru612,21950
+  PetscReal E;613,21971
+} EulerNode;614,21986
+  EulerNode eulernode;617,22015
+  PetscReal vals[vals618,22038
+} EulerNodeUnion;619,22065
+typedef PetscErrorCode (*EquationOfState)EquationOfState620,22083
+  EulerType       type;622,22194
+  PetscReal       pars[pars623,22218
+  EquationOfState sound;624,22258
+    PetscInt Density;626,22294
+    PetscInt Momentum;627,22316
+    PetscInt Energy;628,22339
+    PetscInt Pressure;629,22360
+    PetscInt Speed;630,22383
+  } monitor;631,22403
+} Physics_Euler;632,22416
+static const struct FieldDescription PhysicsFields_Euler[PhysicsFields_Euler634,22434
+static PetscErrorCode PhysicsSolution_Euler(643,22729
+static PetscErrorCode Pressure_PG(704,25364
+static PetscErrorCode SpeedOfSound_PG(714,25666
+static PetscErrorCode EulerFlux(733,26208
+static PetscErrorCode PhysicsBoundary_Euler_Wall(750,26896
+static void PhysicsRiemann_Euler_Godunov(775,28216
+static PetscErrorCode PhysicsFunctional_Euler(811,29658
+static PetscErrorCode SetUpBC_Euler(828,30270
+static PetscErrorCode PhysicsCreate_Euler(845,31070
+static PetscErrorCode ErrorIndicator_Simple(910,34540
+PetscErrorCode CreatePartitionVec(923,34956
+PetscErrorCode CreateMassMatrix(962,36497
+static PetscErrorCode ModelSolutionSetDefault(1039,40077
+static PetscErrorCode ModelFunctionalRegister(1047,40278
+static PetscErrorCode ModelFunctionalSetFromOptions(1065,40857
+static PetscErrorCode FunctionalLinkDestroy(1106,42740
+static PetscErrorCode SolutionFunctional(1123,43131
+PetscErrorCode SetInitialCondition(1132,43425
+static PetscErrorCode OutputVTK(1145,43837
+static PetscErrorCode MonitorVTK(1154,44164
+static PetscErrorCode initializeTS(1271,49195
+static PetscErrorCode adaptToleranceFVM(1285,49768
+int main(1388,54835
+PetscScalar cvmgp_(1777,71076
+PetscScalar cvmgm_(1790,71336
+int riem1mdt(1803,71596
+PetscScalar sign(1973,78248
+int riemannsolver(1981,78482
+int godunovflux(2073,81736
+int projecteqstate(2184,84981
+int projecttoprim(2195,85306
+int eigenvectors(2206,85622
+int initLinearWave(2237,86307
 
 src/ts/tutorials/makefile,55
 makefile:^?makefile^A,1
@@ -5775,146 +6294,6 @@
 PetscErrorCode MonitorTempature(374,15851
 PETSC_UNUSED PetscErrorCode PrintSpecies(389,16333
 
-src/ts/tutorials/ex9.c,5792
-ex9.c:^?ex9.c^A,1
-static const char help[help1,0
-static inline PetscReal Sgn(40,3203
-static inline PetscReal Abs(44,3275
-static inline PetscReal Sqr(48,3346
-static inline PetscReal MaxAbs(52,3407
-PETSC_UNUSED static inline PetscReal MinAbs(56,3514
-static inline PetscReal MinMod2(60,3634
-static inline PetscReal MaxMod2(64,3768
-static inline PetscReal MinMod3(68,3902
-static inline PetscReal RangeMod(73,4086
-typedef struct _LimitInfo 80,4384
-  PetscReal hx;81,4412
-  PetscInt  m;82,4428
-}          *LimitInfo;LimitInfo83,4443
-static void Limit_Upwind(84,4466
-static void Limit_LaxWendroff(89,4633
-static void Limit_BeamWarming(94,4809
-static void Limit_Fromm(99,4985
-static void Limit_Minmod(104,5171
-static void Limit_Superbee(109,5358
-static void Limit_MC(114,5587
-static void Limit_VanLeer(119,5801
-static void Limit_VanAlbada(124,6085
-static void Limit_VanAlbadaTVD(129,6492
-static void Limit_Koren(134,6801
-static void Limit_KorenSym(139,7238
-static void Limit_Koren3(144,7674
-static PetscReal CadaTorrilhonPhiHatR_Eq13(149,7929
-static void Limit_CadaTorrilhon2(153,8124
-static void Limit_CadaTorrilhon3R(158,8370
-static void Limit_CadaTorrilhon3R0p1(168,9041
-static void Limit_CadaTorrilhon3R1(172,9211
-static void Limit_CadaTorrilhon3R10(176,9377
-static void Limit_CadaTorrilhon3R100(180,9545
-  FVBC_PERIODIC,188,9838
-  FVBC_OUTFLOW189,9855
-} FVBCType;190,9870
-static const char *FVBCTypes[FVBCTypes191,9882
-typedef PetscErrorCode (*RiemannFunction)RiemannFunction192,9964
-typedef PetscErrorCode (*ReconstructFunction)ReconstructFunction193,10095
-  PetscErrorCode (*sample)sample196,10242
-  RiemannFunction     riemann;197,10355
-  ReconstructFunction characteristic;198,10386
-  PetscErrorCode (*destroy)destroy199,10424
-  void    *user;user200,10461
-  PetscInt dof;201,10478
-  char    *fieldname[fieldname202,10494
-} PhysicsCtx;203,10520
-  void (*limit)limit206,10552
-  PhysicsCtx physics;207,10637
-  MPI_Comm   comm;208,10659
-  char       prefix[prefix209,10678
-  PetscScalar *R,R212,10731
-  PetscScalar *R, *Rinv;Rinv212,10731
-  PetscScalar *cjmpLR;cjmpLR213,10816
-  PetscScalar *cslope;cslope214,10920
-  PetscScalar *uLR;uLR215,10998
-  PetscScalar *flux;flux216,11104
-  PetscReal   *speeds;speeds217,11157
-  PetscReal cfl_idt;219,11209
-  PetscReal cfl;220,11269
-  PetscReal xmin,221,11286
-  PetscReal xmin, xmax;221,11286
-  PetscInt  initial;222,11310
-  PetscBool exact;223,11331
-  FVBCType  bctype;224,11350
-} FVCtx;225,11370
-PetscErrorCode RiemannListAdd(227,11380
-PetscErrorCode RiemannListFind(234,11591
-PetscErrorCode ReconstructListAdd(242,11922
-PetscErrorCode ReconstructListFind(249,12131
-static PetscErrorCode PhysicsCharacteristic_Conservative(265,12929
-static PetscErrorCode PhysicsDestroy_SimpleFree(277,13329
-  PetscReal a;287,13580
-} AdvectCtx;288,13620
-static PetscErrorCode PhysicsRiemann_Advect(290,13634
-static PetscErrorCode PhysicsCharacteristic_Advect(302,14018
-static PetscErrorCode PhysicsSample_Advect(313,14321
-static PetscErrorCode PhysicsCreate_Advect(360,15517
-  PetscReal lxf_speed;385,16357
-} BurgersCtx;386,16380
-static PetscErrorCode PhysicsSample_Burgers(388,16395
-static PetscErrorCode PhysicsRiemann_Burgers_Exact(426,17556
-static PetscErrorCode PhysicsRiemann_Burgers_Roe(439,18136
-static PetscErrorCode PhysicsRiemann_Burgers_LxF(451,18611
-static PetscErrorCode PhysicsRiemann_Burgers_Rusanov(465,19064
-static PetscErrorCode PhysicsCreate_Burgers(479,19532
-  PetscReal lxf_speed;520,21069
-  PetscReal a;521,21092
-} TrafficCtx;522,21107
-static inline PetscScalar TrafficFlux(524,21122
-static PetscErrorCode PhysicsSample_Traffic(529,21221
-static PetscErrorCode PhysicsRiemann_Traffic_Exact(554,22110
-static PetscErrorCode PhysicsRiemann_Traffic_Roe(568,22657
-static PetscErrorCode PhysicsRiemann_Traffic_LxF(580,23107
-static PetscErrorCode PhysicsRiemann_Traffic_Rusanov(593,23589
-static PetscErrorCode PhysicsCreate_Traffic(605,24070
-  PetscReal c;658,26142
-  PetscReal z;659,26198
-} AcousticsCtx;660,26249
-PETSC_UNUSED static inline void AcousticsFlux(662,26266
-static PetscErrorCode PhysicsCharacteristic_Acoustics(668,26440
-static PetscErrorCode PhysicsSample_Acoustics_Initial(687,26982
-static PetscErrorCode PhysicsSample_Acoustics(705,27668
-static PetscErrorCode PhysicsRiemann_Acoustics_Exact(735,28815
-static PetscErrorCode PhysicsCreate_Acoustics(753,29541
-  PetscReal acoustic_speed;793,31365
-} IsoGasCtx;794,31393
-static inline void IsoGasFlux(796,31407
-static PetscErrorCode PhysicsSample_IsoGas(802,31555
-static PetscErrorCode PhysicsRiemann_IsoGas_Roe(821,32172
-static PetscErrorCode PhysicsRiemann_IsoGas_Exact(867,34010
-    PetscScalar rho,873,34290
-    PetscScalar rho, u;873,34290
-static PetscErrorCode PhysicsRiemann_IsoGas_Rusanov(930,37135
-    PetscScalar rho,935,37410
-    PetscScalar rho, u;935,37410
-static PetscErrorCode PhysicsCharacteristic_IsoGas(949,37925
-static PetscErrorCode PhysicsCreate_IsoGas(966,38486
-  PetscReal gravity;1003,40342
-} ShallowCtx;1004,40363
-static inline void ShallowFlux(1006,40378
-static PetscErrorCode PhysicsRiemann_Shallow_Exact(1012,40556
-    PetscScalar h,1017,40835
-    PetscScalar h, u;1017,40835
-static PetscErrorCode PhysicsRiemann_Shallow_Rusanov(1086,44218
-    PetscScalar h,1091,44488
-    PetscScalar h, u;1091,44488
-static PetscErrorCode PhysicsCharacteristic_Shallow(1105,45057
-static PetscErrorCode PhysicsCreate_Shallow(1123,45652
-static PetscErrorCode FVRHSFunction(1160,47502
-static PetscErrorCode SmallMatMultADB(1259,51284
-static PetscErrorCode FVIJacobian(1274,51693
-static PetscErrorCode FVSample(1309,53097
-static PetscErrorCode SolutionStatsView(1336,54278
-static PetscErrorCode SolutionErrorNorms(1371,56011
-int main(1388,56482
-
 src/ts/tutorials/ex8.c,1170
 ex8.c:^?ex8.c^A,1
 static char help[help2,1
@@ -6695,16 +7074,6 @@
 static PetscErrorCode IJacobianImplicit(62,2103
 int main(104,3714
 
-src/ts/tutorials/ex36.c,293
-ex36.c:^?ex36.c^A,1
-static char help[help2,1
-FILE *gfilepointer_data,gfilepointer_data35,1113
-FILE *gfilepointer_data, *gfilepointer_info;gfilepointer_info35,1113
-PetscErrorCode Ue(38,1185
-static PetscErrorCode IFunctionImplicit(48,1391
-static PetscErrorCode IJacobianImplicit(74,2618
-int main(114,4139
-
 src/ts/tutorials/ex35.cxx,707
 ex35.cxx:^?ex35.cxx^A,1
 static const char help[help1,0
@@ -6876,24 +7245,6 @@
 PetscErrorCode ReactingFlowPostCheck(285,10093
 PetscErrorCode FormIFunction(315,11163
 
-src/ts/tutorials/ex26.c,497
-ex26.c:^?ex26.c^A,1
-static char help[help2,1
-  PetscScalar u,99,4570
-  PetscScalar u, v,99,4570
-  PetscScalar u, v, omega,99,4570
-  PetscScalar u, v, omega, temp;99,4570
-} Field;100,4603
-  PetscReal lidvelocity,105,4732
-  PetscReal lidvelocity, prandtl,105,4732
-  PetscReal lidvelocity, prandtl, grashof;105,4732
-  PetscBool parabolic;106,4801
-  PetscReal cfl_initial;107,4925
-} AppCtx;108,4998
-int main(112,5065
-PetscErrorCode FormInitialSolution(209,9423
-PetscErrorCode FormIFunctionLocal(257,10763
-
 src/ts/tutorials/ex25.c,550
 ex25.c:^?ex25.c^A,1
 static const char help[help1,0
@@ -7087,30 +7438,6 @@
 static PetscErrorCode HessianProductMat(380,12999
 int main(394,13393
 
-src/ts/tutorials/ex20fwd.c,585
-ex20fwd.c:^?ex20fwd.c^A,1
-#define c11 1,0
-#define c12 2,16
-#define c21 3,30
-#define c22 4,46
-static char help[help5,62
-typedef struct _n_User *User;User18,931
-struct _n_User 19,961
-  PetscReal mu;20,978
-  PetscReal next_output;21,994
-  PetscBool combined;22,1019
-  PetscInt  steps;24,1078
-  PetscReal ftime;25,1097
-  Mat       Jac;26,1116
-  Mat       Jacp;27,1156
-  Vec       x;28,1197
-  Mat       sp;29,1212
-static PetscErrorCode IFunction(35,1299
-static PetscErrorCode IJacobian(53,1893
-static PetscErrorCode RHSJacobianP(78,2735
-static PetscErrorCode Monitor(99,3452
-int main(122,4396
-
 src/ts/tutorials/ex20adj.c,631
 ex20adj.c:^?ex20adj.c^A,1
 static char help[help1,0
@@ -7346,333 +7673,6 @@
 PetscErrorCode MyTSMonitor(247,8714
 PetscErrorCode MySNESMonitor(270,9521
 
-src/ts/tutorials/ex11_sa.c,6200
-ex11_sa.c:^?ex11_sa.c^A,1
-static char help[help1,0
-#define DIM 43,1890
-static PetscFunctionList PhysicsList;45,1931
-typedef struct _n_Physics *Physics;Physics48,2017
-typedef struct _n_Model *Model;Model52,2244
-typedef struct _n_User *User;User55,2341
-typedef PetscErrorCode (*RiemannFunction)RiemannFunction57,2372
-typedef PetscErrorCode (*SolutionFunction)SolutionFunction58,2518
-typedef PetscErrorCode (*FunctionalFunction)FunctionalFunction59,2622
-typedef PetscErrorCode (*SetupFields)SetupFields60,2747
-struct FieldDescription 65,3064
-  const char *name;name66,3090
-  PetscInt    dof;67,3110
-typedef struct _n_FunctionalLink *FunctionalLink;FunctionalLink70,3133
-struct _n_FunctionalLink 71,3183
-  char              *name;name72,3210
-  FunctionalFunction func;73,3237
-  void              *ctx;ctx74,3264
-  PetscInt           offset;75,3290
-  FunctionalLink     next;76,3319
-struct _n_Physics 79,3350
-  RiemannFunction                riemann;80,3370
-  PetscInt                       dof;81,3412
-  PetscReal                      maxspeed;82,3499
-  void                          *data;data83,3622
-  PetscInt                       nfields;84,3661
-  const struct FieldDescription *field_desc;field_desc85,3703
-struct _n_Model 88,3752
-  MPI_Comm         comm;89,3770
-  Physics          physics;90,3882
-  FunctionalLink   functionalRegistry;91,3910
-  PetscInt         maxComputed;92,3949
-  PetscInt         numMonitored;93,3981
-  FunctionalLink  *functionalMonitored;functionalMonitored94,4014
-  PetscInt         numCall;95,4054
-  FunctionalLink  *functionalCall;functionalCall96,4082
-  SolutionFunction solution;97,4117
-  void            *solutionctx;solutionctx98,4146
-  PetscReal        maxspeed;99,4178
-struct _n_User 102,4272
-  PetscInt numSplitFaces;103,4289
-  PetscInt vtkInterval;104,4315
-  Model    model;105,4357
-static inline PetscScalar DotDIM(108,4379
-static inline PetscReal NormDIM(116,4568
-static inline void axDIM(120,4680
-static inline void waxDIM(125,4799
-static inline void NormalSplitDIM(130,4947
-static inline PetscScalar Dot2(141,5265
-static inline PetscReal Norm2(145,5380
-static inline void Normalize2(149,5488
-static inline void Waxpy2(155,5595
-static inline void Scale2(160,5752
-static inline void WaxpyD(166,5874
-static inline PetscScalar DotD(171,6059
-static inline PetscReal NormD(178,6256
-static inline void NormalSplit(183,6384
-  ADVECT_SOL_TILTED,191,6680
-  ADVECT_SOL_BUMP192,6701
-} AdvectSolType;193,6719
-static const char *const AdvectSolTypes[AdvectSolTypes194,6736
-  ADVECT_SOL_BUMP_CONE,196,6850
-  ADVECT_SOL_BUMP_COS197,6874
-} AdvectSolBumpType;198,6896
-static const char *const AdvectSolBumpTypes[AdvectSolBumpTypes199,6917
-  PetscReal wind[wind202,7044
-} Physics_Advect_Tilted;203,7067
-  PetscReal         center[center205,7109
-  PetscReal         radius;206,7142
-  AdvectSolBumpType type;207,7170
-} Physics_Advect_Bump;208,7196
-  PetscReal     inflowState;211,7237
-  AdvectSolType soltype;212,7266
-    Physics_Advect_Tilted tilted;215,7303
-    Physics_Advect_Bump   bump;216,7337
-  } sol;217,7369
-    PetscInt Error;219,7389
-  } functional;220,7409
-} Physics_Advect;221,7425
-static const struct FieldDescription PhysicsFields_Advect[PhysicsFields_Advect223,7444
-static PetscErrorCode PhysicsBoundary_Advect_Inflow(228,7537
-static PetscErrorCode PhysicsBoundary_Advect_Outflow(238,7883
-static PetscErrorCode PhysicsRiemann_Advect(245,8117
-static PetscErrorCode PhysicsSolution_Advect(269,8940
-static PetscErrorCode PhysicsFunctional_Advect(307,10178
-static PetscErrorCode PhysicsCreate_Advect(319,10637
-  PetscReal gravity;377,13623
-  PetscReal boundaryHeight;378,13644
-    PetscInt Height;380,13683
-    PetscInt Speed;381,13704
-    PetscInt Energy;382,13724
-  } functional;383,13745
-} Physics_SW;384,13761
-  PetscScalar vals[vals386,13792
-  PetscScalar h;387,13815
-  PetscScalar uh[uh388,13832
-} SWNode;389,13855
-static const struct FieldDescription PhysicsFields_SW[PhysicsFields_SW391,13866
-static PetscErrorCode SWFlux(402,14073
-static PetscErrorCode PhysicsBoundary_SW_Wall(416,14470
-static PetscErrorCode PhysicsRiemann_SW(425,14733
-static PetscErrorCode PhysicsSolution_SW(447,15759
-static PetscErrorCode PhysicsFunctional_SW(463,16243
-static PetscErrorCode PhysicsCreate_SW(480,16856
-  PetscScalar vals[vals513,18271
-  PetscScalar r;514,18294
-  PetscScalar ru[ru515,18311
-  PetscScalar e;516,18334
-} EulerNode;517,18351
-typedef PetscErrorCode (*EquationOfState)EquationOfState518,18364
-  PetscInt        npars;520,18477
-  PetscReal       pars[pars521,18502
-  EquationOfState pressure;522,18531
-  EquationOfState sound;523,18559
-    PetscInt Density;525,18595
-    PetscInt Momentum;526,18617
-    PetscInt Energy;527,18640
-    PetscInt Pressure;528,18661
-    PetscInt Speed;529,18684
-  } monitor;530,18704
-} Physics_Euler;531,18717
-static const struct FieldDescription PhysicsFields_Euler[PhysicsFields_Euler533,18735
-static PetscErrorCode Pressure_PG(540,18885
-static PetscErrorCode SpeedOfSound_PG(552,19179
-static PetscErrorCode EulerFlux(572,19677
-static PetscErrorCode PhysicsBoundary_Euler_Wall(591,20227
-static PetscErrorCode PhysicsRiemann_Euler_Rusanov(605,20671
-static PetscErrorCode PhysicsSolution_Euler(624,21600
-static PetscErrorCode PhysicsFunctional_Euler(636,21995
-static PetscErrorCode PhysicsCreate_Euler(653,22591
-PetscErrorCode ConstructCellBoundary(689,24323
-PetscErrorCode SplitFaces(761,27769
-PetscErrorCode CreatePartitionVec(959,35981
-PetscErrorCode CreateMassMatrix(998,37522
-PetscErrorCode SetUpLocalSpace(1074,41025
-PetscErrorCode SetUpBoundaries(1116,42837
-static PetscErrorCode ModelSolutionSetDefault(1144,43787
-static PetscErrorCode ModelFunctionalRegister(1152,43988
-static PetscErrorCode ModelFunctionalSetFromOptions(1170,44567
-static PetscErrorCode FunctionalLinkDestroy(1211,46446
-PetscErrorCode SetInitialCondition(1227,46778
-static PetscErrorCode OutputVTK(1257,47808
-static PetscErrorCode MonitorVTK(1266,48135
-static PetscErrorCode OutputBIN(1373,52737
-static PetscErrorCode TestMonitor(1383,53130
-static PetscErrorCode MonitorBIN(1416,54247
-int main(1435,54914
-
-src/ts/tutorials/ex11.c,7072
-ex11.c:^?ex11.c^A,1
-static char help[help1,0
-#define DIM 42,1867
-static PetscFunctionList PhysicsList,44,1908
-static PetscFunctionList PhysicsList, PhysicsRiemannList_SW;44,1908
-typedef struct _n_Physics *Physics;Physics47,2017
-typedef struct _n_Model *Model;Model51,2244
-typedef struct _n_User *User;User54,2341
-typedef PetscErrorCode (*SolutionFunction)SolutionFunction55,2371
-typedef PetscErrorCode (*SetUpBCFunction)SetUpBCFunction56,2475
-typedef PetscErrorCode (*FunctionalFunction)FunctionalFunction57,2540
-typedef PetscErrorCode (*SetupFields)SetupFields58,2665
-struct FieldDescription 63,2982
-  const char *name;name64,3008
-  PetscInt    dof;65,3028
-typedef struct _n_FunctionalLink *FunctionalLink;FunctionalLink68,3051
-struct _n_FunctionalLink 69,3101
-  char              *name;name70,3128
-  FunctionalFunction func;71,3155
-  void              *ctx;ctx72,3182
-  PetscInt           offset;73,3208
-  FunctionalLink     next;74,3237
-struct _n_Physics 77,3268
-  PetscRiemannFunc               riemann;78,3288
-  PetscInt                       dof;79,3330
-  PetscReal                      maxspeed;80,3417
-  void                          *data;data81,3540
-  PetscInt                       nfields;82,3579
-  const struct FieldDescription *field_desc;field_desc83,3621
-struct _n_Model 86,3670
-  MPI_Comm         comm;87,3688
-  Physics          physics;88,3800
-  FunctionalLink   functionalRegistry;89,3828
-  PetscInt         maxComputed;90,3867
-  PetscInt         numMonitored;91,3899
-  FunctionalLink  *functionalMonitored;functionalMonitored92,3932
-  PetscInt         numCall;93,3972
-  FunctionalLink  *functionalCall;functionalCall94,4000
-  SolutionFunction solution;95,4035
-  SetUpBCFunction  setupbc;96,4064
-  void            *solutionctx;solutionctx97,4092
-  PetscReal        maxspeed;98,4124
-  PetscReal        bounds[bounds99,4214
-  PetscErrorCode (*errorIndicator)errorIndicator100,4250
-  void *errorCtx;errorCtx101,4380
-struct _n_User 104,4402
-  PetscInt  vtkInterval;105,4419
-  char      outputBasename[outputBasename106,4485
-  PetscInt  monitorStepOffset;107,4565
-  Model     model;108,4596
-  PetscBool vtkmon;109,4615
-static inline PetscReal DotDIMReal(112,4639
-static inline PetscReal NormDIM(120,4822
-static inline PetscReal Dot2Real(125,4935
-static inline PetscReal Norm2Real(129,5048
-static inline void Normalize2Real(133,5160
-static inline void Waxpy2Real(139,5273
-static inline void Scale2Real(144,5426
-  ADVECT_SOL_TILTED,152,5611
-  ADVECT_SOL_BUMP,153,5632
-  ADVECT_SOL_BUMP_CAVITY154,5651
-} AdvectSolType;155,5676
-static const char *const AdvectSolTypes[AdvectSolTypes156,5693
-  ADVECT_SOL_BUMP_CONE,158,5822
-  ADVECT_SOL_BUMP_COS159,5846
-} AdvectSolBumpType;160,5868
-static const char *const AdvectSolBumpTypes[AdvectSolBumpTypes161,5889
-  PetscReal wind[wind164,6016
-} Physics_Advect_Tilted;165,6039
-  PetscReal         center[center167,6081
-  PetscReal         radius;168,6114
-  AdvectSolBumpType type;169,6142
-} Physics_Advect_Bump;170,6168
-  PetscReal     inflowState;173,6209
-  AdvectSolType soltype;174,6238
-    Physics_Advect_Tilted tilted;177,6275
-    Physics_Advect_Bump   bump;178,6309
-  } sol;179,6341
-    PetscInt Solution;181,6361
-    PetscInt Error;182,6384
-  } functional;183,6404
-} Physics_Advect;184,6420
-static const struct FieldDescription PhysicsFields_Advect[PhysicsFields_Advect186,6439
-static PetscErrorCode PhysicsBoundary_Advect_Inflow(191,6532
-static PetscErrorCode PhysicsBoundary_Advect_Outflow(201,6878
-static void PhysicsRiemann_Advect(208,7112
-static PetscErrorCode PhysicsSolution_Advect(258,8557
-static PetscErrorCode PhysicsFunctional_Advect(297,9838
-static PetscErrorCode SetUpBC_Advect(310,10368
-static PetscErrorCode PhysicsCreate_Advect(323,11135
-  PetscReal gravity;376,13666
-  PetscReal boundaryHeight;377,13687
-    PetscInt Height;379,13726
-    PetscInt Speed;380,13747
-    PetscInt Energy;381,13767
-  } functional;382,13788
-} Physics_SW;383,13804
-  PetscReal h;385,13835
-  PetscReal uh[uh386,13850
-} SWNode;387,13871
-  SWNode    swnode;390,13897
-  PetscReal vals[vals391,13917
-} SWNodeUnion;392,13944
-static const struct FieldDescription PhysicsFields_SW[PhysicsFields_SW394,13960
-static PetscErrorCode SWFlux(405,14167
-static PetscErrorCode PhysicsBoundary_SW_Wall(419,14587
-static void PhysicsRiemann_SW_HLL(428,14850
-static void PhysicsRiemann_SW_Rusanov(478,16704
-static PetscErrorCode PhysicsSolution_SW(515,18190
-static PetscErrorCode PhysicsFunctional_SW(531,18676
-static PetscErrorCode SetUpBC_SW(548,19286
-static PetscErrorCode PhysicsCreate_SW(559,19730
-  EULER_PAR_GAMMA,598,21704
-  EULER_PAR_RHOR,599,21723
-  EULER_PAR_AMACH,600,21741
-  EULER_PAR_ITANA,601,21760
-  EULER_PAR_SIZE602,21779
-} EulerParamIdx;603,21796
-  EULER_IV_SHOCK,605,21828
-  EULER_SS_SHOCK,606,21846
-  EULER_SHOCK_TUBE,607,21864
-  EULER_LINEAR_WAVE608,21884
-} EulerType;609,21904
-  PetscReal r;611,21934
-  PetscReal ru[ru612,21949
-  PetscReal E;613,21970
-} EulerNode;614,21985
-  EulerNode eulernode;617,22014
-  PetscReal vals[vals618,22037
-} EulerNodeUnion;619,22064
-typedef PetscErrorCode (*EquationOfState)EquationOfState620,22082
-  EulerType       type;622,22193
-  PetscReal       pars[pars623,22217
-  EquationOfState sound;624,22257
-    PetscInt Density;626,22293
-    PetscInt Momentum;627,22315
-    PetscInt Energy;628,22338
-    PetscInt Pressure;629,22359
-    PetscInt Speed;630,22382
-  } monitor;631,22402
-} Physics_Euler;632,22415
-static const struct FieldDescription PhysicsFields_Euler[PhysicsFields_Euler634,22433
-static PetscErrorCode PhysicsSolution_Euler(643,22728
-static PetscErrorCode Pressure_PG(704,25363
-static PetscErrorCode SpeedOfSound_PG(714,25665
-static PetscErrorCode EulerFlux(733,26207
-static PetscErrorCode PhysicsBoundary_Euler_Wall(750,26895
-static void PhysicsRiemann_Euler_Godunov(775,28215
-static PetscErrorCode PhysicsFunctional_Euler(811,29657
-static PetscErrorCode SetUpBC_Euler(828,30269
-static PetscErrorCode PhysicsCreate_Euler(845,31069
-static PetscErrorCode ErrorIndicator_Simple(910,34539
-PetscErrorCode CreatePartitionVec(923,34955
-PetscErrorCode CreateMassMatrix(962,36496
-static PetscErrorCode ModelSolutionSetDefault(1039,40076
-static PetscErrorCode ModelFunctionalRegister(1047,40277
-static PetscErrorCode ModelFunctionalSetFromOptions(1065,40856
-static PetscErrorCode FunctionalLinkDestroy(1106,42739
-static PetscErrorCode SolutionFunctional(1123,43130
-PetscErrorCode SetInitialCondition(1132,43424
-static PetscErrorCode OutputVTK(1145,43836
-static PetscErrorCode MonitorVTK(1154,44163
-static PetscErrorCode initializeTS(1271,49194
-static PetscErrorCode adaptToleranceFVM(1285,49767
-int main(1388,54834
-PetscScalar cvmgp_(1777,71075
-PetscScalar cvmgm_(1790,71335
-int riem1mdt(1803,71595
-PetscScalar sign(1973,78247
-int riemannsolver(1981,78481
-int godunovflux(2073,81735
-int projecteqstate(2184,84980
-int projecttoprim(2195,85305
-int eigenvectors(2206,85621
-int initLinearWave(2237,86306
-
 src/ts/tutorials/ex10.c,3584
 ex10.c:^?ex10.c^A,1
   BC_DIRICHLET,17,496
@@ -8672,37 +8672,6 @@
 PetscErrorCode MyMatMult(555,20538
 PetscErrorCode ComputeObjHessianWithSOA(568,20860
 
-src/ts/tutorials/network/pipeInterface.c,329
-pipeInterface.c:^?pipeInterface.c^A,1
-PetscErrorCode PipeCreate(15,297
-PetscErrorCode PipeDestroy(28,552
-PetscErrorCode PipeSetParameters(50,952
-PetscErrorCode PipeSetUp(63,1256
-PetscErrorCode PipeCreateJacobian(98,2289
-PetscErrorCode PipeDestroyJacobian(160,4312
-PetscErrorCode JunctionCreateJacobian(188,4918
-PetscErrorCode JunctionDestroyJacobian(262,8098
-
-src/ts/tutorials/network/pipes.c,390
-pipes.c:^?pipes.c^A,1
-static char help[help1,0
-PetscErrorCode WashNetworkDistribute(19,585
-PetscErrorCode WASHIFunction(98,3491
-PetscErrorCode WASHSetInitialSolution(226,8631
-PetscErrorCode TSDMNetworkMonitor(288,11029
-PetscErrorCode PipesView(298,11288
-PetscErrorCode ISJunctionsView(380,14746
-PetscErrorCode WashNetworkCleanUp(407,15703
-PetscErrorCode WashNetworkCreate(419,16017
-int main(609,21558
-
-src/ts/tutorials/network/pipeImpls.c,173
-pipeImpls.c:^?pipeImpls.c^A,1
-PetscErrorCode PipeComputeSteadyState(10,205
-static inline PetscScalar dqdx(38,1144
-static inline PetscScalar dhdx(49,1421
-PetscErrorCode PipeIFunctionLocal_Lax(60,1698
-
 src/ts/tutorials/network/wash.h,1400
 wash.h:^?wash.h^A,1
 #define WASH_H2,15
@@ -8745,16 +8714,47 @@
   PetscInt *edgelist;edgelist56,1444
   Vec       localX,57,1497
   Vec       localX, localXdot;57,1497
-  PetscInt  nnodes_loc;58,1577
-  Junction  junction;61,1662
-  PetscInt *vtype;vtype62,1684
-  Pipe        pipe;65,1717
-  PetscScalar Q0,66,1737
-  PetscScalar Q0, H0,66,1737
-  PetscScalar Q0, H0, QL,66,1737
-  PetscScalar Q0, H0, QL, HL;66,1737
-  PetscInt close_valve;69,1863
-typedef struct _p_Wash *Wash;Wash71,1960
+  PetscInt  nnodes_loc;58,1576
+  Junction  junction;61,1661
+  PetscInt *vtype;vtype62,1683
+  Pipe        pipe;65,1716
+  PetscScalar Q0,66,1736
+  PetscScalar Q0, H0,66,1736
+  PetscScalar Q0, H0, QL,66,1736
+  PetscScalar Q0, H0, QL, HL;66,1736
+  PetscInt close_valve;69,1862
+typedef struct _p_Wash *Wash;Wash71,1959
+
+src/ts/tutorials/network/pipeInterface.c,329
+pipeInterface.c:^?pipeInterface.c^A,1
+PetscErrorCode PipeCreate(15,297
+PetscErrorCode PipeDestroy(28,552
+PetscErrorCode PipeSetParameters(50,952
+PetscErrorCode PipeSetUp(63,1256
+PetscErrorCode PipeCreateJacobian(98,2289
+PetscErrorCode PipeDestroyJacobian(160,4312
+PetscErrorCode JunctionCreateJacobian(188,4918
+PetscErrorCode JunctionDestroyJacobian(262,8098
+
+src/ts/tutorials/network/pipes.c,390
+pipes.c:^?pipes.c^A,1
+static char help[help1,0
+PetscErrorCode WashNetworkDistribute(19,585
+PetscErrorCode WASHIFunction(98,3491
+PetscErrorCode WASHSetInitialSolution(226,8631
+PetscErrorCode TSDMNetworkMonitor(288,11029
+PetscErrorCode PipesView(298,11288
+PetscErrorCode ISJunctionsView(380,14746
+PetscErrorCode WashNetworkCleanUp(407,15703
+PetscErrorCode WashNetworkCreate(419,16017
+int main(609,21558
+
+src/ts/tutorials/network/pipeImpls.c,173
+pipeImpls.c:^?pipeImpls.c^A,1
+PetscErrorCode PipeComputeSteadyState(10,205
+static inline PetscScalar dqdx(38,1144
+static inline PetscScalar dhdx(49,1421
+PetscErrorCode PipeIFunctionLocal_Lax(60,1698
 
 src/ts/tutorials/network/pipe.h,775
 pipe.h:^?pipe.h^A,1
@@ -8794,16 +8794,6 @@
 OBJECTS_PIPE 4,75
 pipes:pipes9,208
 
-src/ts/tutorials/multirate/makefile,108
-makefile:^?makefile^A,1
-LOCDIR 3,34
-MANSEC 4,80
-OBJECTS_FV 5,101
-ex4:ex410,226
-ex5:ex511,251
-ex6:ex612,276
-ex8:ex813,301
-
 src/ts/tutorials/multirate/finitevolume1d.h,2782
 finitevolume1d.h:^?finitevolume1d.h^A,1
 typedef struct _LimitInfo 4,43
@@ -8817,71 +8807,97 @@
   FVBC_OUTFLOW,35,2137
   FVBC_INFLOW36,2153
 } FVBCType;37,2167
-typedef PetscErrorCode (*RiemannFunction)RiemannFunction40,2367
-typedef PetscErrorCode (*ReconstructFunction)ReconstructFunction41,2531
-  PetscErrorCode (*sample)sample50,3090
-  RiemannFunction     riemann;51,3203
-  ReconstructFunction characteristic;52,3234
-  PetscErrorCode (*destroy)destroy53,3272
-  void    *user;user54,3309
-  PetscInt dof;55,3326
-  char    *fieldname[fieldname56,3342
-} PhysicsCtx;57,3368
-typedef PetscErrorCode (*RiemannFunction_2WaySplit)RiemannFunction_2WaySplit77,6199
-typedef PetscErrorCode (*ReconstructFunction_2WaySplit)ReconstructFunction_2WaySplit78,6340
-  PetscErrorCode (*sample2)sample286,6928
-  PetscErrorCode (*inflow)inflow87,7042
-  RiemannFunction_2WaySplit     riemann2;88,7113
-  ReconstructFunction_2WaySplit characteristic2;89,7155
-  PetscErrorCode (*destroy)destroy90,7204
-  void      *user;user91,7241
-  PetscInt   dof;92,7260
-  char      *fieldname[fieldname93,7278
-  PetscBool *bcinflowindex;bcinflowindex94,7306
-} PhysicsCtx2;97,7668
-  void (*limit)limit100,7701
-  PhysicsCtx physics;101,7786
-  MPI_Comm   comm;102,7808
-  char       prefix[prefix103,7827
-  PetscScalar *R,R106,7880
-  PetscScalar *R, *Rinv;Rinv106,7880
-  PetscScalar *cjmpLR;cjmpLR107,7965
-  PetscScalar *cslope;cslope108,8069
-  PetscScalar *uLR;uLR109,8147
-  PetscScalar *flux;flux110,8253
-  PetscReal   *speeds;speeds111,8306
-  PetscReal   *ub;ub112,8357
-  PetscReal cfl_idt;114,8434
-  PetscReal cfl;115,8494
-  PetscReal xmin,116,8511
-  PetscReal xmin, xmax;116,8511
-  PetscInt  initial;117,8535
-  PetscBool simulation;118,8556
-  FVBCType  bctype;119,8580
-  PetscBool exact;120,8600
-  void (*limit3)limit3123,8659
-  void (*limit2)limit2124,8819
-  PhysicsCtx2 physics2;125,8935
-  PetscInt    hratio;126,8959
-  IS          isf,127,9008
-  IS          isf, iss,127,9008
-  IS          isf, iss, isf2,127,9008
-  IS          isf, iss, isf2, iss2,127,9008
-  IS          isf, iss, isf2, iss2, ism,127,9008
-  IS          isf, iss, isf2, iss2, ism, issb,127,9008
-  IS          isf, iss, isf2, iss2, ism, issb, ismb;127,9008
-  PetscBool   recursive;128,9061
-  PetscInt    sm,129,9086
-  PetscInt    sm, mf,129,9086
-  PetscInt    sm, mf, fm,129,9086
-  PetscInt    sm, mf, fm, ms;129,9086
-  PetscInt    sf,130,9216
-  PetscInt    sf, fs;130,9216
-  PetscInt    lsbwidth,131,9291
-  PetscInt    lsbwidth, rsbwidth;131,9291
-  PetscInt    lmbwidth,132,9382
-  PetscInt    lmbwidth, rmbwidth;132,9382
-} FVCtx;133,9477
+typedef PetscErrorCode (*RiemannFunction)RiemannFunction40,2368
+typedef PetscErrorCode (*ReconstructFunction)ReconstructFunction41,2532
+  PetscErrorCode (*sample)sample50,3091
+  RiemannFunction     riemann;51,3204
+  ReconstructFunction characteristic;52,3235
+  PetscErrorCode (*destroy)destroy53,3273
+  void    *user;user54,3310
+  PetscInt dof;55,3327
+  char    *fieldname[fieldname56,3343
+} PhysicsCtx;57,3369
+typedef PetscErrorCode (*RiemannFunction_2WaySplit)RiemannFunction_2WaySplit77,6200
+typedef PetscErrorCode (*ReconstructFunction_2WaySplit)ReconstructFunction_2WaySplit78,6341
+  PetscErrorCode (*sample2)sample286,6929
+  PetscErrorCode (*inflow)inflow87,7043
+  RiemannFunction_2WaySplit     riemann2;88,7114
+  ReconstructFunction_2WaySplit characteristic2;89,7156
+  PetscErrorCode (*destroy)destroy90,7205
+  void      *user;user91,7242
+  PetscInt   dof;92,7261
+  char      *fieldname[fieldname93,7279
+  PetscBool *bcinflowindex;bcinflowindex94,7307
+} PhysicsCtx2;97,7669
+  void (*limit)limit100,7702
+  PhysicsCtx physics;101,7787
+  MPI_Comm   comm;102,7809
+  char       prefix[prefix103,7828
+  PetscScalar *R,R106,7881
+  PetscScalar *R, *Rinv;Rinv106,7881
+  PetscScalar *cjmpLR;cjmpLR107,7966
+  PetscScalar *cslope;cslope108,8070
+  PetscScalar *uLR;uLR109,8148
+  PetscScalar *flux;flux110,8254
+  PetscReal   *speeds;speeds111,8307
+  PetscReal   *ub;ub112,8358
+  PetscReal cfl_idt;114,8435
+  PetscReal cfl;115,8495
+  PetscReal xmin,116,8512
+  PetscReal xmin, xmax;116,8512
+  PetscInt  initial;117,8536
+  PetscBool simulation;118,8557
+  FVBCType  bctype;119,8581
+  PetscBool exact;120,8601
+  void (*limit3)limit3123,8660
+  void (*limit2)limit2124,8820
+  PhysicsCtx2 physics2;125,8936
+  PetscInt    hratio;126,8960
+  IS          isf,127,9009
+  IS          isf, iss,127,9009
+  IS          isf, iss, isf2,127,9009
+  IS          isf, iss, isf2, iss2,127,9009
+  IS          isf, iss, isf2, iss2, ism,127,9009
+  IS          isf, iss, isf2, iss2, ism, issb,127,9009
+  IS          isf, iss, isf2, iss2, ism, issb, ismb;127,9009
+  PetscBool   recursive;128,9062
+  PetscInt    sm,129,9087
+  PetscInt    sm, mf,129,9087
+  PetscInt    sm, mf, fm,129,9087
+  PetscInt    sm, mf, fm, ms;129,9087
+  PetscInt    sf,130,9217
+  PetscInt    sf, fs;130,9217
+  PetscInt    lsbwidth,131,9292
+  PetscInt    lsbwidth, rsbwidth;131,9292
+  PetscInt    lmbwidth,132,9383
+  PetscInt    lmbwidth, rmbwidth;132,9383
+} FVCtx;133,9478
+
+src/ts/tutorials/multirate/ex5.c,539
+ex5.c:^?ex5.c^A,1
+static const char help[help13,811
+static inline PetscReal RangeMod(34,2172
+  PetscReal a[a43,2463
+} AdvectCtx;44,2506
+static PetscErrorCode PhysicsRiemann_Advect(46,2520
+static PetscErrorCode PhysicsCharacteristic_Advect(61,3433
+static PetscErrorCode PhysicsSample_Advect(73,3821
+static PetscErrorCode PhysicsCreate_Advect(161,6141
+PetscErrorCode FVRHSFunctionslow(187,7121
+PetscErrorCode FVRHSFunctionfast(292,11456
+PetscErrorCode FVRHSFunctionslow2(393,15456
+PetscErrorCode FVRHSFunctionfast2(508,20360
+int main(610,24499
+
+src/ts/tutorials/multirate/makefile,108
+makefile:^?makefile^A,1
+LOCDIR 3,34
+MANSEC 4,80
+OBJECTS_FV 5,101
+ex4:ex410,226
+ex5:ex511,251
+ex6:ex612,276
+ex8:ex813,301
 
 src/ts/tutorials/multirate/finitevolume1d.c,2019
 finitevolume1d.c:^?finitevolume1d.c^A,1
@@ -9029,22 +9045,6 @@
 PetscErrorCode FVRHSFunctionfast_2WaySplit(631,26311
 int main(740,30570
 
-src/ts/tutorials/multirate/ex5.c,539
-ex5.c:^?ex5.c^A,1
-static const char help[help13,811
-static inline PetscReal RangeMod(34,2172
-  PetscReal a[a43,2463
-} AdvectCtx;44,2506
-static PetscErrorCode PhysicsRiemann_Advect(46,2520
-static PetscErrorCode PhysicsCharacteristic_Advect(61,3432
-static PetscErrorCode PhysicsSample_Advect(73,3820
-static PetscErrorCode PhysicsCreate_Advect(161,6140
-PetscErrorCode FVRHSFunctionslow(187,7120
-PetscErrorCode FVRHSFunctionfast(292,11455
-PetscErrorCode FVRHSFunctionslow2(393,15455
-PetscErrorCode FVRHSFunctionfast2(508,20359
-int main(610,24498
-
 src/ts/tutorials/multirate/ex4.c,1422
 ex4.c:^?ex4.c^A,1
 static const char help[help6,89
@@ -9473,18 +9473,52 @@
   PetscLogEvent event1, event2, event3, event4;39,835
 } AdolcMatCtx;40,883
 
+src/ts/tutorials/advection-diffusion-reaction/ex5opt_ic.c,407
+ex5opt_ic.c:^?ex5opt_ic.c^A,1
+static char help[help1,0
+PetscErrorCode InitializeLambda(29,1261
+PetscErrorCode OutputBIN(51,1948
+PetscErrorCode GenerateOBs(64,2399
+PetscErrorCode InitialConditions(80,2849
+PetscErrorCode PerturbedInitialConditions(112,3912
+PetscErrorCode PerturbedInitialConditions2(144,4996
+PetscErrorCode PerturbedInitialConditions3(177,6153
+int main(209,7226
+PetscErrorCode FormFunctionAndGradient(334,11649
+
+src/ts/tutorials/advection-diffusion-reaction/ex4.c,753
+ex4.c:^?ex4.c^A,1
+static char help[help2,1
+  PetscScalar rho,30,784
+  PetscScalar rho, c;30,784
+} Field;31,806
+  PetscScalar epsilon,34,833
+  PetscScalar epsilon, delta,34,833
+  PetscScalar epsilon, delta, alpha,34,833
+  PetscScalar epsilon, delta, alpha, beta,34,833
+  PetscScalar epsilon, delta, alpha, beta, gamma,34,833
+  PetscScalar epsilon, delta, alpha, beta, gamma, kappa,34,833
+  PetscScalar epsilon, delta, alpha, beta, gamma, kappa, lambda,34,833
+  PetscScalar epsilon, delta, alpha, beta, gamma, kappa, lambda, mu,34,833
+  PetscScalar epsilon, delta, alpha, beta, gamma, kappa, lambda, mu, cstar;34,833
+  PetscBool   upwind;35,909
+} AppCtx;36,931
+int main(43,1073
+PetscErrorCode IFunction(136,4557
+PetscErrorCode InitialConditions(219,7427
+
 src/ts/tutorials/advection-diffusion-reaction/ex1.c,314
 ex1.c:^?ex1.c^A,1
 static char help[help2,1
-  PetscScalar k;74,3587
-  Vec         initialsolution;75,3604
-} AppCtx;76,3635
-PetscErrorCode IFunctionView(78,3646
-PetscErrorCode IFunctionLoad(85,3822
-PetscErrorCode IFunction(96,4087
-PetscErrorCode IJacobian(118,4863
-static PetscErrorCode Solution(152,5886
-int main(171,6492
+  PetscScalar k;74,3588
+  Vec         initialsolution;75,3605
+} AppCtx;76,3636
+PetscErrorCode IFunctionView(78,3647
+PetscErrorCode IFunctionLoad(85,3823
+PetscErrorCode IFunction(96,4088
+PetscErrorCode IJacobian(118,4864
+static PetscErrorCode Solution(152,5887
+int main(171,6493
 
 src/ts/tutorials/advection-diffusion-reaction/shashi.F90,320
 shashi.F90:^?shashi.F90^A,1
@@ -9541,19 +9575,6 @@
 PetscErrorCode IFunction_LaxFriedrichs(192,6440
 PetscErrorCode IFunction_LaxWendroff(240,8072
 
-src/ts/tutorials/advection-diffusion-reaction/ex5opt_ic.c,407
-ex5opt_ic.c:^?ex5opt_ic.c^A,1
-static char help[help1,0
-PetscErrorCode InitializeLambda(29,1261
-PetscErrorCode OutputBIN(51,1948
-PetscErrorCode GenerateOBs(64,2399
-PetscErrorCode InitialConditions(80,2849
-PetscErrorCode PerturbedInitialConditions(112,3912
-PetscErrorCode PerturbedInitialConditions2(144,4996
-PetscErrorCode PerturbedInitialConditions3(177,6153
-int main(209,7226
-PetscErrorCode FormFunctionAndGradient(334,11649
-
 src/ts/tutorials/advection-diffusion-reaction/ex5adj_mf.c,539
 ex5adj_mf.c:^?ex5adj_mf.c^A,1
 static char help[help1,0
@@ -9586,27 +9607,6 @@
 PetscErrorCode InitialConditions(43,1835
 int main(87,3083
 
-src/ts/tutorials/advection-diffusion-reaction/ex4.c,753
-ex4.c:^?ex4.c^A,1
-static char help[help2,1
-  PetscScalar rho,30,783
-  PetscScalar rho, c;30,783
-} Field;31,805
-  PetscScalar epsilon,34,832
-  PetscScalar epsilon, delta,34,832
-  PetscScalar epsilon, delta, alpha,34,832
-  PetscScalar epsilon, delta, alpha, beta,34,832
-  PetscScalar epsilon, delta, alpha, beta, gamma,34,832
-  PetscScalar epsilon, delta, alpha, beta, gamma, kappa,34,832
-  PetscScalar epsilon, delta, alpha, beta, gamma, kappa, lambda,34,832
-  PetscScalar epsilon, delta, alpha, beta, gamma, kappa, lambda, mu,34,832
-  PetscScalar epsilon, delta, alpha, beta, gamma, kappa, lambda, mu, cstar;34,832
-  PetscBool   upwind;35,908
-} AppCtx;36,930
-int main(43,1072
-PetscErrorCode IFunction(136,4556
-PetscErrorCode InitialConditions(219,7426
-
 src/ts/tutorials/advection-diffusion-reaction/ex3.c,262
 ex3.c:^?ex3.c^A,1
 static char help[help2,1
@@ -10003,6 +10003,36 @@
 PetscErrorCode RhsFunc(585,26753
 PetscErrorCode Monitor(707,34503
 
+src/ts/tests/ex28.c,1001
+ex28.c:^?ex28.c^A,1
+static char help[help1,0
+  PetscInt    particlesPerCell;12,380
+  PetscReal   momentTol;13,450
+  PetscBool   monitorhg;14,531
+  PetscBool   monitorsp;15,609
+  PetscBool   monitorks;16,685
+  PetscBool   error;17,768
+  PetscInt    ostep;18,834
+  PetscDraw   draw;19,914
+  PetscDrawHG drawhg;20,993
+  PetscDrawSP drawsp;21,1073
+  PetscDrawSP drawks;22,1157
+} AppCtx;23,1232
+static PetscErrorCode ProcessOptions(25,1243
+static PetscErrorCode CreateMesh(47,2470
+static PetscErrorCode SetInitialCoordinates(58,2872
+static PetscErrorCode SetInitialConditions(120,5353
+static PetscErrorCode CreateParticles(149,6481
+static PetscReal ComputePDF(193,8325
+static PetscReal ComputeCDF(212,8949
+static PetscErrorCode CheckDistribution(224,9291
+static PetscErrorCode RHSFunctionParticles(269,11658
+static PetscErrorCode HGMonitor(347,14954
+static PetscErrorCode SPMonitor(378,16076
+static PetscErrorCode KSConv(411,17333
+static PetscErrorCode InitializeSolve(461,19231
+int main(477,19819
+
 src/ts/tests/makefile,26
 makefile:^?makefile^A,1
 LOCDIR 3,31
@@ -10151,36 +10181,6 @@
 static PetscErrorCode RHSFunction(5,71
 int main(22,581
 
-src/ts/tests/ex28.c,1001
-ex28.c:^?ex28.c^A,1
-static char help[help1,0
-  PetscInt    particlesPerCell;12,380
-  PetscReal   momentTol;13,450
-  PetscBool   monitorhg;14,531
-  PetscBool   monitorsp;15,609
-  PetscBool   monitorks;16,685
-  PetscBool   error;17,768
-  PetscInt    ostep;18,834
-  PetscDraw   draw;19,914
-  PetscDrawHG drawhg;20,993
-  PetscDrawSP drawsp;21,1073
-  PetscDrawSP drawks;22,1157
-} AppCtx;23,1232
-static PetscErrorCode ProcessOptions(25,1243
-static PetscErrorCode CreateMesh(47,2470
-static PetscErrorCode SetInitialCoordinates(58,2872
-static PetscErrorCode SetInitialConditions(120,5353
-static PetscErrorCode CreateParticles(149,6481
-static PetscReal ComputePDF(193,8325
-static PetscReal ComputeCDF(212,8949
-static PetscErrorCode CheckDistribution(224,9291
-static PetscErrorCode RHSFunctionParticles(269,11658
-static PetscErrorCode HGMonitor(347,14954
-static PetscErrorCode SPMonitor(378,16076
-static PetscErrorCode KSConv(411,17333
-static PetscErrorCode InitializeSolve(461,19231
-int main(477,19819
-
 src/ts/tests/ex27.c,898
 ex27.c:^?ex27.c^A,1
 static char help[help1,0
@@ -11298,39 +11298,39 @@
 static PetscErrorCode TSStep_Theta(182,6915
 static PetscErrorCode TSAdjointStepBEuler_Private(249,9700
 static PetscErrorCode TSAdjointStep_Theta(394,16722
-static PetscErrorCode TSInterpolate_Theta(653,30534
-static PetscErrorCode TSEvaluateWLTE_Theta(665,30854
-static PetscErrorCode TSRollBack_Theta(702,31973
-static PetscErrorCode TSForwardStep_Theta(716,32550
-static PetscErrorCode TSForwardGetStages_Theta(845,39168
-static PetscErrorCode TSReset_Theta(867,39865
-static PetscErrorCode TSAdjointReset_Theta(884,40280
-static PetscErrorCode TSDestroy_Theta(898,40792
-static PetscErrorCode SNESTSFormFunction_Theta(922,41855
-static PetscErrorCode SNESTSFormJacobian_Theta(947,42692
-static PetscErrorCode TSForwardSetUp_Theta(967,43325
-static PetscErrorCode TSForwardReset_Theta(987,44179
-static PetscErrorCode TSSetUp_Theta(1003,44660
-static PetscErrorCode TSAdjointSetUp_Theta(1040,46109
-static PetscErrorCode TSSetFromOptions_Theta(1064,47383
-static PetscErrorCode TSView_Theta(1079,48200
-static PetscErrorCode TSThetaGetTheta_Theta(1093,48665
-static PetscErrorCode TSThetaSetTheta_Theta(1102,48849
-static PetscErrorCode TSThetaGetEndpoint_Theta(1113,49218
-static PetscErrorCode TSThetaSetEndpoint_Theta(1122,49414
-static PetscErrorCode TSComputeLinearStability_Theta(1132,49630
-static PetscErrorCode TSGetStages_Theta(1146,50064
-PETSC_EXTERN PetscErrorCode TSCreate_Theta(1214,52346
-PetscErrorCode TSThetaGetTheta(1285,54793
-PetscErrorCode TSThetaSetTheta(1310,55388
-PetscErrorCode TSThetaGetEndpoint(1333,56008
-PetscErrorCode TSThetaSetEndpoint(1358,56712
-static PetscErrorCode TSSetUp_BEuler(1371,57082
-static PetscErrorCode TSView_BEuler(1382,57591
-PETSC_EXTERN PetscErrorCode TSCreate_BEuler(1399,57997
-static PetscErrorCode TSSetUp_CN(1410,58292
-static PetscErrorCode TSView_CN(1421,58798
-PETSC_EXTERN PetscErrorCode TSCreate_CN(1442,59264
+static PetscErrorCode TSInterpolate_Theta(653,30533
+static PetscErrorCode TSEvaluateWLTE_Theta(665,30853
+static PetscErrorCode TSRollBack_Theta(702,31972
+static PetscErrorCode TSForwardStep_Theta(716,32549
+static PetscErrorCode TSForwardGetStages_Theta(845,39167
+static PetscErrorCode TSReset_Theta(867,39864
+static PetscErrorCode TSAdjointReset_Theta(884,40279
+static PetscErrorCode TSDestroy_Theta(898,40791
+static PetscErrorCode SNESTSFormFunction_Theta(922,41854
+static PetscErrorCode SNESTSFormJacobian_Theta(947,42691
+static PetscErrorCode TSForwardSetUp_Theta(967,43324
+static PetscErrorCode TSForwardReset_Theta(987,44178
+static PetscErrorCode TSSetUp_Theta(1003,44659
+static PetscErrorCode TSAdjointSetUp_Theta(1040,46108
+static PetscErrorCode TSSetFromOptions_Theta(1064,47382
+static PetscErrorCode TSView_Theta(1079,48199
+static PetscErrorCode TSThetaGetTheta_Theta(1093,48664
+static PetscErrorCode TSThetaSetTheta_Theta(1102,48848
+static PetscErrorCode TSThetaGetEndpoint_Theta(1113,49217
+static PetscErrorCode TSThetaSetEndpoint_Theta(1122,49413
+static PetscErrorCode TSComputeLinearStability_Theta(1132,49629
+static PetscErrorCode TSGetStages_Theta(1146,50063
+PETSC_EXTERN PetscErrorCode TSCreate_Theta(1214,52345
+PetscErrorCode TSThetaGetTheta(1285,54792
+PetscErrorCode TSThetaSetTheta(1310,55387
+PetscErrorCode TSThetaGetEndpoint(1333,56007
+PetscErrorCode TSThetaSetEndpoint(1358,56711
+static PetscErrorCode TSSetUp_BEuler(1371,57081
+static PetscErrorCode TSView_BEuler(1382,57590
+PETSC_EXTERN PetscErrorCode TSCreate_BEuler(1399,57996
+static PetscErrorCode TSSetUp_CN(1410,58291
+static PetscErrorCode TSView_CN(1421,58797
+PETSC_EXTERN PetscErrorCode TSCreate_CN(1442,59263
 
 src/ts/impls/implicit/theta/makefile,84
 makefile:^?makefile^A,1
@@ -12056,9 +12056,26 @@
 static PetscErrorCode TSDestroy_RK(1366,68273
 static PetscErrorCode SNESTSFormFunction_RK(1392,69688
 static PetscErrorCode SNESTSFormJacobian_RK(1407,70130
-PetscErrorCode TSRKSetMultirate(1440,71156
-PetscErrorCode TSRKGetMultirate(1462,71715
-PETSC_EXTERN PetscErrorCode TSCreate_RK(1483,72458
+PetscErrorCode TSRKSetMultirate(1440,71157
+PetscErrorCode TSRKGetMultirate(1462,71716
+PETSC_EXTERN PetscErrorCode TSCreate_RK(1483,72459
+
+src/ts/impls/explicit/rk/mrk.c,812
+mrk.c:^?mrk.c^A,1
+static PetscErrorCode TSReset_RK_MultirateNonsplit(19,627
+static PetscErrorCode TSInterpolate_RK_MultirateNonsplit(30,897
+static PetscErrorCode TSStepRefine_RK_MultirateNonsplit(53,1732
+static PetscErrorCode TSStep_RK_MultirateNonsplit(118,4667
+static PetscErrorCode TSSetUp_RK_MultirateNonsplit(173,6828
+static PetscErrorCode TSCopyDM(197,8070
+static PetscErrorCode TSReset_RK_MultirateSplit(212,8467
+static PetscErrorCode TSInterpolate_RK_MultirateSplit(232,8997
+static PetscErrorCode TSEvaluateStep_RK_MultirateSplit(280,10670
+static PetscErrorCode TSStepRefine_RK_MultirateSplit(305,11654
+static PetscErrorCode TSStep_RK_MultirateSplit(364,14645
+static PetscErrorCode TSSetUp_RK_MultirateSplit(417,17052
+PetscErrorCode TSRKSetMultirate_RK(478,19899
+PetscErrorCode TSRKGetMultirate_RK(501,21095
 
 src/ts/impls/explicit/rk/rk.h,1818
 rk.h:^?rk.h^A,1
@@ -12111,23 +12128,6 @@
   Vec          VecDeltaFwdSensipCol;45,2550
 } TS_RK;46,2657
 
-src/ts/impls/explicit/rk/mrk.c,812
-mrk.c:^?mrk.c^A,1
-static PetscErrorCode TSReset_RK_MultirateNonsplit(19,627
-static PetscErrorCode TSInterpolate_RK_MultirateNonsplit(30,897
-static PetscErrorCode TSStepRefine_RK_MultirateNonsplit(53,1732
-static PetscErrorCode TSStep_RK_MultirateNonsplit(118,4667
-static PetscErrorCode TSSetUp_RK_MultirateNonsplit(173,6828
-static PetscErrorCode TSCopyDM(197,8070
-static PetscErrorCode TSReset_RK_MultirateSplit(212,8467
-static PetscErrorCode TSInterpolate_RK_MultirateSplit(232,8997
-static PetscErrorCode TSEvaluateStep_RK_MultirateSplit(280,10670
-static PetscErrorCode TSStepRefine_RK_MultirateSplit(305,11654
-static PetscErrorCode TSStep_RK_MultirateSplit(364,14645
-static PetscErrorCode TSSetUp_RK_MultirateSplit(417,17052
-PetscErrorCode TSRKSetMultirate_RK(478,19899
-PetscErrorCode TSRKGetMultirate_RK(501,21095
-
 src/ts/impls/explicit/rk/makefile,84
 makefile:^?makefile^A,1
 SOURCEC 3,37
@@ -12331,42 +12331,42 @@
   PetscBool    extrapolate;57,2489
   TSStepStatus status;58,2586
 } TS_ARKIMEX;59,2609
-PetscErrorCode TSARKIMEXRegisterAll(253,9014
-PetscErrorCode TSARKIMEXRegisterDestroy(419,25490
-PetscErrorCode TSARKIMEXInitializePackage(445,26245
-PetscErrorCode TSARKIMEXFinalizePackage(463,26784
-PetscErrorCode TSARKIMEXRegister(499,28613
-static PetscErrorCode TSEvaluateStep_ARKIMEX(567,31418
-static PetscErrorCode TSARKIMEXTestMassIdentity(629,33953
-static PetscErrorCode TSRollBack_ARKIMEX(657,35028
-static PetscErrorCode TSStep_ARKIMEX(687,35916
-static PetscErrorCode TSInterpolate_ARKIMEX(859,43610
-static PetscErrorCode TSExtrapolate_ARKIMEX(898,44971
-static PetscErrorCode TSARKIMEXTableauReset(928,46194
-static PetscErrorCode TSReset_ARKIMEX(945,46759
-static PetscErrorCode TSARKIMEXGetVecs(957,47051
-static PetscErrorCode TSARKIMEXRestoreVecs(975,47497
-static PetscErrorCode SNESTSFormFunction_ARKIMEX(991,47963
-static PetscErrorCode SNESTSFormJacobian_ARKIMEX(1012,48594
-static PetscErrorCode DMCoarsenHook_TSARKIMEX(1033,49259
-static PetscErrorCode DMRestrictHook_TSARKIMEX(1039,49389
-static PetscErrorCode DMSubDomainHook_TSARKIMEX(1054,49904
-static PetscErrorCode DMSubDomainRestrictHook_TSARKIMEX(1060,50033
-static PetscErrorCode TSARKIMEXTableauSetUp(1077,50609
-static PetscErrorCode TSSetUp_ARKIMEX(1095,51276
-static PetscErrorCode TSSetFromOptions_ARKIMEX(1114,51975
-static PetscErrorCode TSView_ARKIMEX(1142,53349
-static PetscErrorCode TSLoad_ARKIMEX(1170,54694
-PetscErrorCode TSARKIMEXSetType(1203,55817
-PetscErrorCode TSARKIMEXGetType(1227,56380
-PetscErrorCode TSARKIMEXSetFullyImplicit(1248,56992
-PetscErrorCode TSARKIMEXGetFullyImplicit(1272,57619
-static PetscErrorCode TSARKIMEXGetType_ARKIMEX(1281,57899
-static PetscErrorCode TSARKIMEXSetType_ARKIMEX(1289,58107
-static PetscErrorCode TSARKIMEXSetFullyImplicit_ARKIMEX(1313,58961
-static PetscErrorCode TSARKIMEXGetFullyImplicit_ARKIMEX(1322,59168
-static PetscErrorCode TSDestroy_ARKIMEX(1331,59377
-PETSC_EXTERN PetscErrorCode TSCreate_ARKIMEX(1370,61532
+PetscErrorCode TSARKIMEXRegisterAll(253,9015
+PetscErrorCode TSARKIMEXRegisterDestroy(419,25491
+PetscErrorCode TSARKIMEXInitializePackage(445,26246
+PetscErrorCode TSARKIMEXFinalizePackage(463,26785
+PetscErrorCode TSARKIMEXRegister(499,28614
+static PetscErrorCode TSEvaluateStep_ARKIMEX(567,31419
+static PetscErrorCode TSARKIMEXTestMassIdentity(629,33954
+static PetscErrorCode TSRollBack_ARKIMEX(657,35029
+static PetscErrorCode TSStep_ARKIMEX(687,35917
+static PetscErrorCode TSInterpolate_ARKIMEX(859,43611
+static PetscErrorCode TSExtrapolate_ARKIMEX(898,44972
+static PetscErrorCode TSARKIMEXTableauReset(928,46195
+static PetscErrorCode TSReset_ARKIMEX(945,46760
+static PetscErrorCode TSARKIMEXGetVecs(957,47052
+static PetscErrorCode TSARKIMEXRestoreVecs(975,47498
+static PetscErrorCode SNESTSFormFunction_ARKIMEX(991,47964
+static PetscErrorCode SNESTSFormJacobian_ARKIMEX(1012,48595
+static PetscErrorCode DMCoarsenHook_TSARKIMEX(1033,49260
+static PetscErrorCode DMRestrictHook_TSARKIMEX(1039,49390
+static PetscErrorCode DMSubDomainHook_TSARKIMEX(1054,49905
+static PetscErrorCode DMSubDomainRestrictHook_TSARKIMEX(1060,50034
+static PetscErrorCode TSARKIMEXTableauSetUp(1077,50610
+static PetscErrorCode TSSetUp_ARKIMEX(1095,51277
+static PetscErrorCode TSSetFromOptions_ARKIMEX(1114,51976
+static PetscErrorCode TSView_ARKIMEX(1142,53350
+static PetscErrorCode TSLoad_ARKIMEX(1170,54695
+PetscErrorCode TSARKIMEXSetType(1203,55818
+PetscErrorCode TSARKIMEXGetType(1227,56381
+PetscErrorCode TSARKIMEXSetFullyImplicit(1248,56993
+PetscErrorCode TSARKIMEXGetFullyImplicit(1272,57620
+static PetscErrorCode TSARKIMEXGetType_ARKIMEX(1281,57900
+static PetscErrorCode TSARKIMEXSetType_ARKIMEX(1289,58108
+static PetscErrorCode TSARKIMEXSetFullyImplicit_ARKIMEX(1313,58962
+static PetscErrorCode TSARKIMEXGetFullyImplicit_ARKIMEX(1322,59169
+static PetscErrorCode TSDestroy_ARKIMEX(1331,59378
+PETSC_EXTERN PetscErrorCode TSCreate_ARKIMEX(1370,61533
 
 src/ts/impls/arkimex/makefile,83
 makefile:^?makefile^A,1
@@ -12653,9 +12653,9 @@
 static inline PetscReal TSEventComputeStepSize(350,13166
 static PetscErrorCode TSEventDetection(369,14046
 static PetscErrorCode TSEventLocation(403,15723
-PetscErrorCode TSEventHandler(473,18709
-PetscErrorCode TSAdjointEventHandler(560,21969
-PetscErrorCode TSGetNumEvents(604,23058
+PetscErrorCode TSEventHandler(473,18710
+PetscErrorCode TSAdjointEventHandler(560,21970
+PetscErrorCode TSGetNumEvents(604,23059
 
 src/ts/event/makefile,83
 makefile:^?makefile^A,1
@@ -12803,10 +12803,10 @@
 PetscErrorCode TSAdaptCandidatesClear(755,28036
 PetscErrorCode TSAdaptCandidateAdd(784,29092
 PetscErrorCode TSAdaptCandidatesGet(829,30821
-PetscErrorCode TSAdaptChoose(864,32053
-PetscErrorCode TSAdaptSetTimeStepIncreaseDelay(957,36729
-PetscErrorCode TSAdaptCheckStage(982,37374
-PetscErrorCode TSAdaptCreate(1053,40764
+PetscErrorCode TSAdaptChoose(864,32054
+PetscErrorCode TSAdaptSetTimeStepIncreaseDelay(957,36730
+PetscErrorCode TSAdaptCheckStage(982,37375
+PetscErrorCode TSAdaptCreate(1053,40765
 
 src/ts/adapt/interface/makefile,83
 makefile:^?makefile^A,1
@@ -13460,6 +13460,28 @@
 MANSEC 7,109
 LOCDIR 8,124
 
+src/tao/unconstrained/impls/nls/nls.c,747
+nls.c:^?nls.c^A,1
+#define NLS_INIT_CONSTANT 6,112
+#define NLS_INIT_DIRECTION 7,145
+#define NLS_INIT_INTERPOLATION 8,178
+#define NLS_INIT_TYPES 9,211
+#define NLS_UPDATE_STEP 11,245
+#define NLS_UPDATE_REDUCTION 12,280
+#define NLS_UPDATE_INTERPOLATION 13,315
+#define NLS_UPDATE_TYPES 14,350
+static const char *NLS_INIT[NLS_INIT16,386
+static const char *NLS_UPDATE[NLS_UPDATE18,465
+#define NLS_NEWTON 34,1014
+#define NLS_BFGS 35,1037
+#define NLS_GRADIENT 36,1060
+static PetscErrorCode TaoSolve_NLS(38,1084
+static PetscErrorCode TaoSetUp_NLS(695,27769
+static PetscErrorCode TaoDestroy_NLS(712,28464
+static PetscErrorCode TaoSetFromOptions_NLS(729,28924
+static PetscErrorCode TaoView_NLS(789,34465
+PETSC_EXTERN PetscErrorCode TaoCreate_NLS(869,38126
+
 src/tao/unconstrained/impls/nls/nlsimpl.h,1768
 nlsimpl.h:^?nlsimpl.h^A,1
 #define __TAO_NLS_H6,96
@@ -13528,28 +13550,6 @@
   PetscInt ksp_othr;172,6119
 } TAO_NLS;173,6140
 
-src/tao/unconstrained/impls/nls/nls.c,747
-nls.c:^?nls.c^A,1
-#define NLS_INIT_CONSTANT 6,112
-#define NLS_INIT_DIRECTION 7,145
-#define NLS_INIT_INTERPOLATION 8,178
-#define NLS_INIT_TYPES 9,211
-#define NLS_UPDATE_STEP 11,245
-#define NLS_UPDATE_REDUCTION 12,280
-#define NLS_UPDATE_INTERPOLATION 13,315
-#define NLS_UPDATE_TYPES 14,350
-static const char *NLS_INIT[NLS_INIT16,386
-static const char *NLS_UPDATE[NLS_UPDATE18,465
-#define NLS_NEWTON 34,1014
-#define NLS_BFGS 35,1037
-#define NLS_GRADIENT 36,1060
-static PetscErrorCode TaoSolve_NLS(38,1084
-static PetscErrorCode TaoSetUp_NLS(695,27769
-static PetscErrorCode TaoDestroy_NLS(712,28464
-static PetscErrorCode TaoSetFromOptions_NLS(729,28924
-static PetscErrorCode TaoView_NLS(789,34465
-PETSC_EXTERN PetscErrorCode TaoCreate_NLS(869,38127
-
 src/tao/unconstrained/impls/nls/makefile,84
 makefile:^?makefile^A,1
 SOURCEC 3,37
@@ -13933,15 +13933,6 @@
 DIRS 3,34
 LOCDIR 4,56
 
-src/tao/quadratic/impls/gpcg/makefile,84
-makefile:^?makefile^A,1
-SOURCEC 3,37
-SOURCEF 4,55
-SOURCEH 5,66
-LIBBASE 6,84
-MANSEC 7,107
-LOCDIR 8,122
-
 src/tao/quadratic/impls/gpcg/gpcg.h,1052
 gpcg.h:^?gpcg.h^A,1
 #define __TAO_GPCG_H2,21
@@ -13983,9 +13974,18 @@
   PetscInt n_upper;53,976
   PetscInt n_lower;54,996
   PetscInt n_bind;55,1016
-  PetscInt ksp_type;56,1068
-  PetscInt subset_type;57,1089
-} TAO_GPCG;58,1113
+  PetscInt ksp_type;56,1069
+  PetscInt subset_type;57,1090
+} TAO_GPCG;58,1114
+
+src/tao/quadratic/impls/gpcg/makefile,84
+makefile:^?makefile^A,1
+SOURCEC 3,37
+SOURCEF 4,55
+SOURCEH 5,66
+LIBBASE 6,84
+MANSEC 7,107
+LOCDIR 8,122
 
 src/tao/quadratic/impls/gpcg/gpcg.c,449
 gpcg.c:^?gpcg.c^A,1
@@ -14837,6 +14837,28 @@
 DIRS 5,66
 LOCDIR 6,99
 
+src/tao/leastsquares/tutorials/cs1.c,556
+cs1.c:^?cs1.c^A,1
+static char help[help22,652
+#define M 27,1109
+#define N 28,1121
+#define K 29,1133
+  PetscReal A[A34,1262
+  PetscReal b[b35,1311
+  PetscReal xGT[xGT36,1360
+  PetscReal D[D37,1472
+  PetscReal J[J38,1559
+  PetscInt  idm[idm39,1698
+  PetscInt  idn[idn40,1780
+  PetscInt  idk[idk41,1800
+} AppCtx;42,1820
+int main(52,2187
+PetscErrorCode EvaluateFunction(128,4880
+PetscErrorCode EvaluateJacobian(152,5671
+PetscErrorCode FormDictionaryMatrix(177,6923
+PetscErrorCode FormStartingPoint(189,7392
+PetscErrorCode InitializeUserData(197,7591
+
 src/tao/leastsquares/tutorials/tomography.c,650
 tomography.c:^?tomography.c^A,1
 static char help[help23,717
@@ -14867,28 +14889,6 @@
 DIRS	6,101
 CLEANFILES 7,117
 
-src/tao/leastsquares/tutorials/cs1.c,556
-cs1.c:^?cs1.c^A,1
-static char help[help22,652
-#define M 27,1109
-#define N 28,1121
-#define K 29,1133
-  PetscReal A[A34,1262
-  PetscReal b[b35,1311
-  PetscReal xGT[xGT36,1360
-  PetscReal D[D37,1472
-  PetscReal J[J38,1559
-  PetscInt  idm[idm39,1698
-  PetscInt  idn[idn40,1780
-  PetscInt  idk[idk41,1800
-} AppCtx;42,1820
-int main(52,2187
-PetscErrorCode EvaluateFunction(128,4880
-PetscErrorCode EvaluateJacobian(152,5671
-PetscErrorCode FormDictionaryMatrix(177,6923
-PetscErrorCode FormStartingPoint(189,7392
-PetscErrorCode InitializeUserData(197,7591
-
 src/tao/leastsquares/tutorials/chwirut2f.F90,248
 chwirut2f.F90:^?chwirut2f.F90^A,1
       subroutine FormFunction(110,3268
@@ -15199,6 +15199,114 @@
 PETSC_EXTERN void taobrgnsetregularizerobjectiveandgradientroutine_(28,1121
 PETSC_EXTERN void taobrgnsetregularizerhessianroutine_(35,1588
 
+src/tao/interface/taosolver_bounds.c,711
+taosolver_bounds.c:^?taosolver_bounds.c^A,1
+PetscErrorCode TaoSetVariableBounds(17,416
+PetscErrorCode TaoSetVariableBoundsRoutine(59,1749
+PetscErrorCode TaoGetVariableBounds(85,2476
+PetscErrorCode TaoComputeVariableBounds(108,2978
+PetscErrorCode TaoSetInequalityBounds(140,3886
+PetscErrorCode TaoGetInequalityBounds(172,4829
+PetscErrorCode TaoComputeConstraints(195,5323
+PetscErrorCode TaoSetConstraintsRoutine(234,6732
+PetscErrorCode TaoComputeDualVariables(272,7836
+PetscErrorCode TaoGetDualVariables(305,8629
+PetscErrorCode TaoSetEqualityConstraintsRoutine(338,9705
+PetscErrorCode TaoSetInequalityConstraintsRoutine(376,11175
+PetscErrorCode TaoComputeEqualityConstraints(408,12265
+PetscErrorCode TaoComputeInequalityConstraints(441,13391
+
+src/tao/interface/taosolver.c,4042
+taosolver.c:^?taosolver.c^A,1
+PetscBool         TaoRegisterAllCalled 4,93
+PetscFunctionList TaoList 5,147
+PetscClassId TAO_CLASSID;7,195
+PetscLogEvent TAO_Solve;9,222
+PetscLogEvent TAO_ObjectiveEval;10,247
+PetscLogEvent TAO_GradientEval;11,280
+PetscLogEvent TAO_ObjGradEval;12,312
+PetscLogEvent TAO_HessianEval;13,343
+PetscLogEvent TAO_JacobianEval;14,374
+PetscLogEvent TAO_ConstraintsEval;15,406
+const char *TaoSubSetTypes[TaoSubSetTypes17,442
+struct _n_TaoMonitorDrawCtx 19,546
+  PetscViewer viewer;20,576
+  PetscInt    howoften;21,598
+static PetscErrorCode KSPPreSolve_TAOEW_Private(24,710
+static PetscErrorCode KSPPostSolve_TAOEW_Private(40,1254
+static PetscErrorCode TaoSetUpEW_Private(50,1534
+PetscErrorCode TaoCreate(101,3740
+PetscErrorCode TaoSolve(157,5262
+PetscErrorCode TaoSetUp(217,7870
+PetscErrorCode TaoDestroy(241,8484
+PetscErrorCode TaoKSPSetUseEW(328,11629
+PetscErrorCode TaoSetFromOptions(381,13969
+PetscErrorCode TaoViewFromOptions(562,23949
+PetscErrorCode TaoView(594,24813
+PetscErrorCode TaoSetRecycleHistory(760,32276
+PetscErrorCode TaoGetRecycleHistory(785,32920
+PetscErrorCode TaoSetTolerances(824,33895
+PetscErrorCode TaoSetConstraintTolerances(882,35659
+PetscErrorCode TaoGetConstraintTolerances(926,36982
+PetscErrorCode TaoSetFunctionLowerBound(953,37685
+PetscErrorCode TaoGetFunctionLowerBound(980,38365
+PetscErrorCode TaoSetMaximumFunctionEvaluations(1007,39012
+PetscErrorCode TaoGetMaximumFunctionEvaluations(1038,39725
+PetscErrorCode TaoGetCurrentFunctionEvaluations(1064,40395
+PetscErrorCode TaoSetMaximumIterations(1089,41043
+PetscErrorCode TaoGetMaximumIterations(1114,41670
+PetscErrorCode TaoSetInitialTrustRegionRadius(1139,42284
+PetscErrorCode TaoGetInitialTrustRegionRadius(1164,42924
+PetscErrorCode TaoGetCurrentTrustRegionRadius(1188,43492
+PetscErrorCode TaoGetTolerances(1217,44202
+PetscErrorCode TaoGetKSP(1244,44880
+PetscErrorCode TaoGetLinearSolveIterations(1272,45444
+PetscErrorCode TaoGetLineSearch(1297,46038
+PetscErrorCode TaoAddLineSearchCounts(1318,46556
+PetscErrorCode TaoGetSolution(1355,47434
+PetscErrorCode TaoResetStatistics(1378,48018
+PetscErrorCode TaoSetUpdate(1421,49157
+PetscErrorCode TaoSetConvergenceTest(1457,50201
+PetscErrorCode TaoSetMonitor(1508,51962
+PetscErrorCode TaoCancelMonitors(1548,53364
+PetscErrorCode TaoMonitorDefault(1580,54201
+PetscErrorCode TaoDefaultGMonitor(1631,56052
+PetscErrorCode TaoDefaultSMonitor(1685,58041
+PetscErrorCode TaoDefaultCMonitor(1732,59601
+PetscErrorCode TaoSolutionMonitor(1772,60880
+PetscErrorCode TaoGradientMonitor(1801,61599
+PetscErrorCode TaoStepDirectionMonitor(1828,62245
+PetscErrorCode TaoDrawSolutionMonitor(1857,63017
+PetscErrorCode TaoDrawGradientMonitor(1886,63853
+PetscErrorCode TaoDrawStepMonitor(1913,64583
+PetscErrorCode TaoResidualMonitor(1940,65254
+PetscErrorCode TaoDefaultConvergenceTest(1975,66190
+PetscErrorCode TaoSetOptionsPrefix(2056,69745
+PetscErrorCode TaoAppendOptionsPrefix(2084,70640
+PetscErrorCode TaoGetOptionsPrefix(2114,71514
+PetscErrorCode TaoSetType(2153,73173
+PetscErrorCode TaoRegister(2213,74951
+PetscErrorCode TaoRegisterDestroy(2231,75407
+PetscErrorCode TaoGetIterationNumber(2258,75998
+PetscErrorCode TaoGetResidualNorm(2287,76751
+PetscErrorCode TaoSetIterationNumber(2309,77211
+PetscErrorCode TaoGetTotalIterationNumber(2341,78085
+PetscErrorCode TaoSetTotalIterationNumber(2363,78560
+PetscErrorCode TaoSetConvergedReason(2401,79501
+PetscErrorCode TaoGetConvergedReason(2451,81043
+PetscErrorCode TaoGetSolutionStatus(2486,82174
+PetscErrorCode TaoGetType(2514,82866
+PetscErrorCode TaoMonitor(2547,84086
+PetscErrorCode TaoSetConvergenceHistory(2599,86110
+PetscErrorCode TaoGetConvergenceHistory(2657,87947
+PetscErrorCode TaoSetApplicationContext(2683,88671
+PetscErrorCode TaoGetApplicationContext(2707,89115
+PetscErrorCode TaoSetGradientNorm(2729,89634
+PetscErrorCode TaoGetGradientNorm(2757,90375
+PetscErrorCode TaoGradientNorm(2783,90949
+PetscErrorCode TaoMonitorDrawCtxCreate(2818,92145
+PetscErrorCode TaoMonitorDrawCtxDestroy(2840,92843
+
 src/tao/interface/taosolver_hj.c,836
 taosolver_hj.c:^?taosolver_hj.c^A,1
 PetscErrorCode TaoSetHessian(29,922
@@ -15239,114 +15347,6 @@
 PetscErrorCode TaoIsGradientDefined(641,22594
 PetscErrorCode TaoIsObjectiveAndGradientDefined(668,23366
 
-src/tao/interface/taosolver_bounds.c,711
-taosolver_bounds.c:^?taosolver_bounds.c^A,1
-PetscErrorCode TaoSetVariableBounds(17,416
-PetscErrorCode TaoSetVariableBoundsRoutine(59,1749
-PetscErrorCode TaoGetVariableBounds(85,2476
-PetscErrorCode TaoComputeVariableBounds(108,2978
-PetscErrorCode TaoSetInequalityBounds(140,3886
-PetscErrorCode TaoGetInequalityBounds(172,4829
-PetscErrorCode TaoComputeConstraints(195,5323
-PetscErrorCode TaoSetConstraintsRoutine(234,6732
-PetscErrorCode TaoComputeDualVariables(272,7836
-PetscErrorCode TaoGetDualVariables(305,8629
-PetscErrorCode TaoSetEqualityConstraintsRoutine(338,9705
-PetscErrorCode TaoSetInequalityConstraintsRoutine(376,11175
-PetscErrorCode TaoComputeEqualityConstraints(408,12264
-PetscErrorCode TaoComputeInequalityConstraints(441,13389
-
-src/tao/interface/taosolver.c,4042
-taosolver.c:^?taosolver.c^A,1
-PetscBool         TaoRegisterAllCalled 4,93
-PetscFunctionList TaoList 5,147
-PetscClassId TAO_CLASSID;7,195
-PetscLogEvent TAO_Solve;9,222
-PetscLogEvent TAO_ObjectiveEval;10,247
-PetscLogEvent TAO_GradientEval;11,280
-PetscLogEvent TAO_ObjGradEval;12,312
-PetscLogEvent TAO_HessianEval;13,343
-PetscLogEvent TAO_JacobianEval;14,374
-PetscLogEvent TAO_ConstraintsEval;15,406
-const char *TaoSubSetTypes[TaoSubSetTypes17,442
-struct _n_TaoMonitorDrawCtx 19,546
-  PetscViewer viewer;20,576
-  PetscInt    howoften;21,598
-static PetscErrorCode KSPPreSolve_TAOEW_Private(24,710
-static PetscErrorCode KSPPostSolve_TAOEW_Private(40,1254
-static PetscErrorCode TaoSetUpEW_Private(50,1534
-PetscErrorCode TaoCreate(101,3740
-PetscErrorCode TaoSolve(157,5260
-PetscErrorCode TaoSetUp(217,7868
-PetscErrorCode TaoDestroy(241,8482
-PetscErrorCode TaoKSPSetUseEW(328,11627
-PetscErrorCode TaoSetFromOptions(381,13968
-PetscErrorCode TaoViewFromOptions(561,23947
-PetscErrorCode TaoView(593,24811
-PetscErrorCode TaoSetRecycleHistory(759,32266
-PetscErrorCode TaoGetRecycleHistory(785,32911
-PetscErrorCode TaoSetTolerances(823,33878
-PetscErrorCode TaoSetConstraintTolerances(882,35637
-PetscErrorCode TaoGetConstraintTolerances(926,36955
-PetscErrorCode TaoSetFunctionLowerBound(953,37658
-PetscErrorCode TaoGetFunctionLowerBound(980,38338
-PetscErrorCode TaoSetMaximumFunctionEvaluations(1007,38985
-PetscErrorCode TaoGetMaximumFunctionEvaluations(1038,39698
-PetscErrorCode TaoGetCurrentFunctionEvaluations(1064,40368
-PetscErrorCode TaoSetMaximumIterations(1089,41016
-PetscErrorCode TaoGetMaximumIterations(1114,41643
-PetscErrorCode TaoSetInitialTrustRegionRadius(1139,42257
-PetscErrorCode TaoGetInitialTrustRegionRadius(1164,42897
-PetscErrorCode TaoGetCurrentTrustRegionRadius(1188,43465
-PetscErrorCode TaoGetTolerances(1217,44175
-PetscErrorCode TaoGetKSP(1244,44853
-PetscErrorCode TaoGetLinearSolveIterations(1272,45417
-PetscErrorCode TaoGetLineSearch(1297,46011
-PetscErrorCode TaoAddLineSearchCounts(1318,46529
-PetscErrorCode TaoGetSolution(1355,47407
-PetscErrorCode TaoResetStatistics(1378,47991
-PetscErrorCode TaoSetUpdate(1421,49130
-PetscErrorCode TaoSetConvergenceTest(1457,50174
-PetscErrorCode TaoSetMonitor(1508,51935
-PetscErrorCode TaoCancelMonitors(1548,53337
-PetscErrorCode TaoMonitorDefault(1580,54174
-PetscErrorCode TaoDefaultGMonitor(1631,56025
-PetscErrorCode TaoDefaultSMonitor(1685,58014
-PetscErrorCode TaoDefaultCMonitor(1732,59574
-PetscErrorCode TaoSolutionMonitor(1772,60853
-PetscErrorCode TaoGradientMonitor(1801,61572
-PetscErrorCode TaoStepDirectionMonitor(1828,62218
-PetscErrorCode TaoDrawSolutionMonitor(1857,62990
-PetscErrorCode TaoDrawGradientMonitor(1886,63826
-PetscErrorCode TaoDrawStepMonitor(1913,64556
-PetscErrorCode TaoResidualMonitor(1940,65227
-PetscErrorCode TaoDefaultConvergenceTest(1975,66163
-PetscErrorCode TaoSetOptionsPrefix(2056,69718
-PetscErrorCode TaoAppendOptionsPrefix(2084,70613
-PetscErrorCode TaoGetOptionsPrefix(2114,71487
-PetscErrorCode TaoSetType(2153,73146
-PetscErrorCode TaoRegister(2213,74924
-PetscErrorCode TaoRegisterDestroy(2231,75373
-PetscErrorCode TaoGetIterationNumber(2258,75957
-PetscErrorCode TaoGetResidualNorm(2286,76716
-PetscErrorCode TaoSetIterationNumber(2308,77169
-PetscErrorCode TaoGetTotalIterationNumber(2340,78034
-PetscErrorCode TaoSetTotalIterationNumber(2362,78502
-PetscErrorCode TaoSetConvergedReason(2397,79455
-PetscErrorCode TaoGetConvergedReason(2446,81029
-PetscErrorCode TaoGetSolutionStatus(2481,82158
-PetscErrorCode TaoGetType(2509,82850
-PetscErrorCode TaoMonitor(2542,84070
-PetscErrorCode TaoSetConvergenceHistory(2595,86081
-PetscErrorCode TaoGetConvergenceHistory(2651,87916
-PetscErrorCode TaoSetApplicationContext(2677,88640
-PetscErrorCode TaoGetApplicationContext(2701,89084
-PetscErrorCode TaoSetGradientNorm(2723,89603
-PetscErrorCode TaoGetGradientNorm(2751,90344
-PetscErrorCode TaoGradientNorm(2777,90918
-PetscErrorCode TaoMonitorDrawCtxCreate(2812,92114
-PetscErrorCode TaoMonitorDrawCtxDestroy(2834,92812
-
 src/tao/interface/fdiff.c,244
 fdiff.c:^?fdiff.c^A,1
 static PetscErrorCode Fsnes(9,233
@@ -15493,7 +15493,7 @@
       subroutine TaoLineSearchSetInitialStepLength(104,3697
       subroutine TaoLineSearchGetStepLength(109,3905
 
-src/tao/f90-mod/ftn-auto-interfaces/petsctao.h90,4542
+src/tao/f90-mod/ftn-auto-interfaces/petsctao.h90,4545
 petsctao.h90:^?petsctao.h90^A,1
       subroutine TaoLMVMRecycle(1,0
       subroutine TaoLMVMSetH0(6,150
@@ -15524,61 +15524,61 @@
       subroutine TaoALMMSetMultipliers(139,4398
       subroutine TaoALMMGetPrimalIS(145,4569
       subroutine TaoALMMGetDualIS(152,4750
-      subroutine TaoCreate(159,4927
-      subroutine TaoSolve(164,5065
-      subroutine TaoSetUp(168,5170
-      subroutine TaoKSPSetUseEW(172,5275
-      subroutine TaoSetFromOptions(177,5425
-      subroutine TaoSetRecycleHistory(181,5548
-      subroutine TaoGetRecycleHistory(186,5710
-      subroutine TaoSetTolerances(191,5872
-      subroutine TaoSetConstraintTolerances(198,6092
-      subroutine TaoGetConstraintTolerances(204,6299
-      subroutine TaoSetFunctionLowerBound(210,6506
-      subroutine TaoGetFunctionLowerBound(215,6676
-      subroutine TaoSetMaximumFunctionEvaluations(220,6846
-      subroutine TaoGetMaximumFunctionEvaluations(225,7030
-      subroutine TaoGetCurrentFunctionEvaluations(230,7214
-      subroutine TaoSetMaximumIterations(235,7398
-      subroutine TaoGetMaximumIterations(240,7564
-      subroutine TaoSetInitialTrustRegionRadius(245,7730
-      subroutine TaoGetInitialTrustRegionRadius(250,7912
-      subroutine TaoGetCurrentTrustRegionRadius(255,8094
-      subroutine TaoGetTolerances(260,8276
-      subroutine TaoGetKSP(267,8496
-      subroutine TaoGetLinearSolveIterations(273,8643
-      subroutine TaoGetLineSearch(278,8817
-      subroutine TaoAddLineSearchCounts(283,8979
-      subroutine TaoGetSolution(287,9112
-      subroutine TaoResetStatistics(293,9269
-      subroutine TaoCancelMonitors(297,9394
-      subroutine TaoGetIterationNumber(301,9517
-      subroutine TaoGetResidualNorm(306,9679
-      subroutine TaoSetIterationNumber(311,9837
-      subroutine TaoGetTotalIterationNumber(316,9999
-      subroutine TaoSetTotalIterationNumber(321,10171
-      subroutine TaoSetConvergedReason(326,10343
-      subroutine TaoGetConvergedReason(331,10525
-      subroutine TaoGetSolutionStatus(336,10707
-      subroutine TaoSetConvergenceHistory(346,11050
-      subroutine TaoSetGradientNorm(356,11397
-      subroutine TaoGetGradientNorm(362,11562
-      subroutine TaoSetVariableBounds(368,11727
-      subroutine TaoGetVariableBounds(375,11917
-      subroutine TaoSetInequalityBounds(382,12107
-      subroutine TaoGetInequalityBounds(389,12301
-      subroutine TaoComputeDualVariables(396,12495
-      subroutine TaoGetDualVariables(403,12691
-      subroutine TaoSetSolution(410,12879
-      subroutine TaoComputeGradient(416,13036
-      subroutine TaoComputeObjective(423,13222
-      subroutine TaoComputeObjectiveAndGradient(430,13422
-      subroutine TaoSetResidualWeights(438,13665
-      subroutine TaoComputeResidual(448,13962
-      subroutine TaoIsObjectiveDefined(455,14148
-      subroutine TaoIsGradientDefined(460,14312
-      subroutine TaoIsObjectiveAndGradientDefined(465,14474
-      subroutine TaoSetStateDesignIS(470,14660
+      subroutine TaoSetSolution(159,4927
+      subroutine TaoComputeGradient(165,5084
+      subroutine TaoComputeObjective(172,5270
+      subroutine TaoComputeObjectiveAndGradient(179,5470
+      subroutine TaoSetResidualWeights(187,5713
+      subroutine TaoComputeResidual(197,6010
+      subroutine TaoIsObjectiveDefined(204,6196
+      subroutine TaoIsGradientDefined(209,6360
+      subroutine TaoIsObjectiveAndGradientDefined(214,6522
+      subroutine TaoSetStateDesignIS(219,6708
+      subroutine TaoCreate(226,6891
+      subroutine TaoSolve(231,7029
+      subroutine TaoSetUp(235,7134
+      subroutine TaoKSPSetUseEW(239,7239
+      subroutine TaoSetFromOptions(244,7389
+      subroutine TaoSetRecycleHistory(248,7512
+      subroutine TaoGetRecycleHistory(253,7674
+      subroutine TaoSetTolerances(258,7836
+      subroutine TaoSetConstraintTolerances(265,8056
+      subroutine TaoGetConstraintTolerances(271,8263
+      subroutine TaoSetFunctionLowerBound(277,8470
+      subroutine TaoGetFunctionLowerBound(282,8640
+      subroutine TaoSetMaximumFunctionEvaluations(287,8810
+      subroutine TaoGetMaximumFunctionEvaluations(292,8994
+      subroutine TaoGetCurrentFunctionEvaluations(297,9178
+      subroutine TaoSetMaximumIterations(302,9362
+      subroutine TaoGetMaximumIterations(307,9528
+      subroutine TaoSetInitialTrustRegionRadius(312,9694
+      subroutine TaoGetInitialTrustRegionRadius(317,9876
+      subroutine TaoGetCurrentTrustRegionRadius(322,10058
+      subroutine TaoGetTolerances(327,10240
+      subroutine TaoGetKSP(334,10460
+      subroutine TaoGetLinearSolveIterations(340,10607
+      subroutine TaoGetLineSearch(345,10781
+      subroutine TaoAddLineSearchCounts(350,10943
+      subroutine TaoGetSolution(354,11076
+      subroutine TaoResetStatistics(360,11233
+      subroutine TaoCancelMonitors(364,11358
+      subroutine TaoGetIterationNumber(368,11481
+      subroutine TaoGetResidualNorm(373,11643
+      subroutine TaoSetIterationNumber(378,11801
+      subroutine TaoGetTotalIterationNumber(383,11963
+      subroutine TaoSetTotalIterationNumber(388,12135
+      subroutine TaoSetConvergedReason(393,12307
+      subroutine TaoGetConvergedReason(398,12489
+      subroutine TaoGetSolutionStatus(403,12671
+      subroutine TaoSetConvergenceHistory(413,13014
+      subroutine TaoSetGradientNorm(423,13361
+      subroutine TaoGetGradientNorm(429,13526
+      subroutine TaoSetVariableBounds(435,13691
+      subroutine TaoGetVariableBounds(442,13881
+      subroutine TaoSetInequalityBounds(449,14071
+      subroutine TaoGetInequalityBounds(456,14265
+      subroutine TaoComputeDualVariables(463,14459
+      subroutine TaoGetDualVariables(470,14655
       subroutine TaoBRGNGetSubsolver(477,14843
       subroutine TaoBRGNSetRegularizerWeight(482,14991
       subroutine TaoBRGNSetL1SmoothEpsilon(487,15167
@@ -15598,33 +15598,33 @@
 src/tao/constrained/tutorials/ex1.c,953
 ex1.c:^?ex1.c^A,1
 static char help[help20,510
-  PetscInt   n;35,1342
-  PetscInt   ne;36,1384
-  PetscInt   ni;37,1445
-  PetscBool  noeqflag,38,1508
-  PetscBool  noeqflag, initview;38,1508
-  Vec        x,39,1541
-  Vec        x, xl,39,1541
-  Vec        x, xl, xu;39,1541
-  Vec        ce,40,1565
-  Vec        ce, ci,40,1565
-  Vec        ce, ci, bl,40,1565
-  Vec        ce, ci, bl, bu,40,1565
-  Vec        ce, ci, bl, bu, Xseq;40,1565
-  Mat        Ae,41,1600
-  Mat        Ae, Ai,41,1600
-  Mat        Ae, Ai, H;41,1600
-  VecScatter scat;42,1624
-} AppCtx;43,1643
-PetscErrorCode main(55,2176
-PetscErrorCode InitializeProblem(155,6817
-PetscErrorCode DestroyProblem(230,9533
-PetscErrorCode FormFunctionGradient(252,10171
-PetscErrorCode FormHessian(291,11484
-PetscErrorCode FormInequalityConstraints(349,13574
-PetscErrorCode FormEqualityConstraints(382,14577
-PetscErrorCode FormInequalityJacobian(414,15509
-PetscErrorCode FormEqualityJacobian(452,16706
+  PetscInt   n;35,1343
+  PetscInt   ne;36,1385
+  PetscInt   ni;37,1446
+  PetscBool  noeqflag,38,1509
+  PetscBool  noeqflag, initview;38,1509
+  Vec        x,39,1542
+  Vec        x, xl,39,1542
+  Vec        x, xl, xu;39,1542
+  Vec        ce,40,1566
+  Vec        ce, ci,40,1566
+  Vec        ce, ci, bl,40,1566
+  Vec        ce, ci, bl, bu,40,1566
+  Vec        ce, ci, bl, bu, Xseq;40,1566
+  Mat        Ae,41,1601
+  Mat        Ae, Ai,41,1601
+  Mat        Ae, Ai, H;41,1601
+  VecScatter scat;42,1625
+} AppCtx;43,1644
+PetscErrorCode main(55,2177
+PetscErrorCode InitializeProblem(155,6818
+PetscErrorCode DestroyProblem(230,9534
+PetscErrorCode FormFunctionGradient(252,10172
+PetscErrorCode FormHessian(291,11485
+PetscErrorCode FormInequalityConstraints(349,13575
+PetscErrorCode FormEqualityConstraints(382,14578
+PetscErrorCode FormInequalityJacobian(414,15510
+PetscErrorCode FormEqualityJacobian(452,16707
 
 src/tao/constrained/tutorials/tomographyADMM.c,1554
 tomographyADMM.c:^?tomographyADMM.c^A,1
@@ -17540,11 +17540,6 @@
 boxobtainrefreshtoken.c:^?boxobtainrefreshtoken.c^A,1
 int main(11,234
 
-src/sys/utils/memc.c,85
-memc.c:^?memc.c^A,1
-PetscErrorCode PetscMemcmp(36,984
-PetscErrorCode PetscProcessPlacementView(67,1762
-
 src/sys/utils/str.c,1675
 str.c:^?str.c^A,1
 PetscErrorCode PetscStrToArray(40,1106
@@ -17586,8 +17581,74 @@
 PetscErrorCode PetscStrreplace(1155,26709
 PetscErrorCode PetscEListFind(1263,30495
 PetscErrorCode PetscEnumFind(1303,31476
-const char *PetscCIFilename(PetscCIFilename1355,33817
-int PetscCILinenumber(1376,34260
+const char *PetscCIFilename(PetscCIFilename1355,33816
+int PetscCILinenumber(1376,34259
+
+src/sys/utils/sorti.c,1728
+sorti.c:^?sorti.c^A,1
+#define MEDIAN3(9,240
+#define MEDIAN(11,383
+#define SWAP1(14,525
+#define SWAP2(20,617
+#define SWAP3(29,762
+#define SWAP2Data(43,1034
+#define TwoWayPartition1(69,1759
+#define TwoWayPartitionReverse1(102,2569
+#define TwoWayPartition2(119,2898
+#define TwoWayPartition3(136,3243
+#define QuickSort1(154,3660
+#define QuickSortReverse1(177,4287
+#define QuickSort2(199,4879
+#define QuickSort3(221,5497
+PetscErrorCode PetscSortedInt(259,6490
+PetscErrorCode PetscSortedInt64(284,7086
+PetscErrorCode PetscSortInt(311,7913
+PetscErrorCode PetscSortInt64(337,8447
+PetscErrorCode PetscSortCount(363,8987
+PetscErrorCode PetscSortReverseInt(386,9505
+PetscErrorCode PetscSortedRemoveDupsInt(412,10046
+PetscErrorCode PetscSortedCheckDupsInt(445,10796
+PetscErrorCode PetscSortRemoveDupsInt(477,11546
+PetscErrorCode PetscFindInt(503,12236
+PetscErrorCode PetscCheckDupsInt(540,13074
+PetscErrorCode PetscFindMPIInt(582,14138
+PetscErrorCode PetscSortIntWithArray(618,15108
+PetscErrorCode PetscSortIntWithArrayPair(643,15892
+PetscErrorCode PetscSortIntWithCountArray(667,16632
+PetscErrorCode PetscSortIntWithIntCountArrayPair(696,17634
+PetscErrorCode PetscSortedMPIInt(722,18382
+PetscErrorCode PetscSortMPIInt(747,19146
+PetscErrorCode PetscSortRemoveDupsMPIInt(772,19719
+PetscErrorCode PetscSortMPIIntWithArray(803,20509
+PetscErrorCode PetscSortMPIIntWithIntArray(830,21285
+PetscErrorCode PetscSortIntWithScalarArray(855,21997
+PetscErrorCode PetscSortIntWithDataArray(883,22935
+PetscErrorCode PetscMergeIntArray(940,24490
+PetscErrorCode PetscMergeIntArrayPair(1005,26380
+PetscErrorCode PetscMergeMPIIntArray(1063,27973
+PetscErrorCode PetscProcessTree(1106,29262
+PetscErrorCode PetscParallelSortedInt(1202,32351
+
+src/sys/utils/psplit.c,142
+psplit.c:^?psplit.c^A,1
+PetscErrorCode PetscSplitOwnershipBlock(27,776
+PetscErrorCode PetscSplitOwnership(68,2280
+PetscErrorCode PetscSplitOwnershipEqual(127,5165
+
+src/sys/utils/mpimesg.c,365
+mpimesg.c:^?mpimesg.c^A,1
+PetscErrorCode PetscGatherNumberOfMessages(32,1019
+PetscErrorCode PetscGatherMessageLengths(89,3104
+PetscErrorCode PetscGatherNumberOfMessages_Private(138,5196
+PetscErrorCode PetscGatherMessageLengths_Private(167,6363
+PetscErrorCode PetscGatherMessageLengths2(238,9093
+PetscErrorCode PetscPostIrecvInt(292,11239
+PetscErrorCode PetscPostIrecvScalar(315,12121
+
+src/sys/utils/memc.c,85
+memc.c:^?memc.c^A,1
+PetscErrorCode PetscMemcmp(36,984
+PetscErrorCode PetscProcessPlacementView(67,1762
 
 src/sys/utils/mpiu.c,367
 mpiu.c:^?mpiu.c^A,1
@@ -17680,51 +17741,6 @@
 static PetscErrorCode PetscSortStrWithPermutation_Private(152,3784
 PetscErrorCode PetscSortStrWithPermutation(200,5002
 
-src/sys/utils/sorti.c,1728
-sorti.c:^?sorti.c^A,1
-#define MEDIAN3(9,240
-#define MEDIAN(11,383
-#define SWAP1(14,525
-#define SWAP2(20,617
-#define SWAP3(29,762
-#define SWAP2Data(43,1034
-#define TwoWayPartition1(69,1759
-#define TwoWayPartitionReverse1(102,2569
-#define TwoWayPartition2(119,2898
-#define TwoWayPartition3(136,3243
-#define QuickSort1(154,3660
-#define QuickSortReverse1(177,4287
-#define QuickSort2(199,4879
-#define QuickSort3(221,5497
-PetscErrorCode PetscSortedInt(259,6490
-PetscErrorCode PetscSortedInt64(284,7086
-PetscErrorCode PetscSortInt(311,7913
-PetscErrorCode PetscSortInt64(337,8447
-PetscErrorCode PetscSortCount(363,8987
-PetscErrorCode PetscSortReverseInt(386,9505
-PetscErrorCode PetscSortedRemoveDupsInt(412,10046
-PetscErrorCode PetscSortedCheckDupsInt(445,10796
-PetscErrorCode PetscSortRemoveDupsInt(477,11546
-PetscErrorCode PetscFindInt(503,12236
-PetscErrorCode PetscCheckDupsInt(540,13074
-PetscErrorCode PetscFindMPIInt(582,14138
-PetscErrorCode PetscSortIntWithArray(618,15108
-PetscErrorCode PetscSortIntWithArrayPair(643,15892
-PetscErrorCode PetscSortIntWithCountArray(667,16632
-PetscErrorCode PetscSortIntWithIntCountArrayPair(696,17634
-PetscErrorCode PetscSortedMPIInt(722,18382
-PetscErrorCode PetscSortMPIInt(747,19146
-PetscErrorCode PetscSortRemoveDupsMPIInt(772,19719
-PetscErrorCode PetscSortMPIIntWithArray(803,20509
-PetscErrorCode PetscSortMPIIntWithIntArray(830,21285
-PetscErrorCode PetscSortIntWithScalarArray(855,21997
-PetscErrorCode PetscSortIntWithDataArray(883,22935
-PetscErrorCode PetscMergeIntArray(940,24490
-PetscErrorCode PetscMergeIntArrayPair(1005,26380
-PetscErrorCode PetscMergeMPIIntArray(1063,27973
-PetscErrorCode PetscProcessTree(1106,29262
-PetscErrorCode PetscParallelSortedInt(1202,32351
-
 src/sys/utils/sortd.c,465
 sortd.c:^?sortd.c^A,1
 #define SWAP(11,299
@@ -17763,12 +17779,6 @@
 PetscErrorCode PetscSegBufferGetSize(249,7091
 PetscErrorCode PetscSegBufferUnuse(269,7573
 
-src/sys/utils/psplit.c,142
-psplit.c:^?psplit.c^A,1
-PetscErrorCode PetscSplitOwnershipBlock(27,776
-PetscErrorCode PetscSplitOwnership(68,2280
-PetscErrorCode PetscSplitOwnershipEqual(127,5164
-
 src/sys/utils/psleep.c,80
 psleep.c:^?psleep.c^A,1
 #define PETSC_DESIRE_FEATURE_TEST_MACROS 1,0
@@ -17804,13 +17814,6 @@
 PetscErrorCode PetscCommBuildTwoSidedF(447,20325
 PetscErrorCode PetscCommBuildTwoSidedFReq(498,23188
 
-src/sys/utils/mpitr.c,181
-mpitr.c:^?mpitr.c^A,1
-PetscErrorCode PetscMPIDump(27,653
-PetscErrorCode PetscMPIDump(61,2148
-PetscErrorCode MPIU_Win_allocate_shared(74,2463
-PETSC_EXTERN PetscErrorCode MPIU_Win_shared_query(85,2849
-
 src/tao/f90-mod/petsctao.h90,0
 petsctao.h90:^?petsctao.h90^A,1
 
@@ -17934,6 +17937,13 @@
 src/vec/vec/tutorials/ex9f.F90,0
 ex9f.F90:^?ex9f.F90^A,1
 
+src/sys/utils/mpitr.c,181
+mpitr.c:^?mpitr.c^A,1
+PetscErrorCode PetscMPIDump(27,653
+PetscErrorCode PetscMPIDump(61,2148
+PetscErrorCode MPIU_Win_allocate_shared(74,2463
+PETSC_EXTERN PetscErrorCode MPIU_Win_shared_query(85,2849
+
 src/sys/utils/mpishm.c,1619
 mpishm.c:^?mpishm.c^A,1
 struct _n_PetscShmComm 4,83
@@ -17971,16 +17981,6 @@
 PetscErrorCode PetscOmpCtrlOmpRegionOnMasterEnd(601,25522
   #undef USE_MMAP_ALLOCATE_SHARED_MEMORY609,25753
 
-src/sys/utils/mpimesg.c,365
-mpimesg.c:^?mpimesg.c^A,1
-PetscErrorCode PetscGatherNumberOfMessages(32,1019
-PetscErrorCode PetscGatherMessageLengths(89,3103
-PetscErrorCode PetscGatherNumberOfMessages_Private(138,5195
-PetscErrorCode PetscGatherMessageLengths_Private(167,6362
-PetscErrorCode PetscGatherMessageLengths2(238,9092
-PetscErrorCode PetscPostIrecvInt(292,11238
-PetscErrorCode PetscPostIrecvScalar(315,12120
-
 src/sys/utils/mpilong.c,73
 mpilong.c:^?mpilong.c^A,1
 PetscErrorCode MPIULong_Send(8,133
@@ -18250,6 +18250,11 @@
 zptimef.c:^?zptimef.c^A,1
 PETSC_EXTERN void  petsctime_(10,249
 
+src/sys/tests/ex54.c,43
+ex54.c:^?ex54.c^A,1
+static char help[help2,1
+int main(7,106
+
 src/sys/tests/ex61.c,49
 ex61.c:^?ex61.c^A,1
 static const char help[help1,0
@@ -18353,11 +18358,6 @@
 static char help[help2,1
 int main(6,86
 
-src/sys/tests/ex54.c,43
-ex54.c:^?ex54.c^A,1
-static char help[help2,1
-int main(7,106
-
 src/sys/tests/ex53.c,69
 ex53.c:^?ex53.c^A,1
 static char help[help1,0
@@ -18713,6 +18713,169 @@
 PETSC_EXTERN void petscpythoninitialize_(11,339
 PETSC_EXTERN void petscpythonfinalize_(21,634
 
+src/sys/objects/pinit.c,3913
+pinit.c:^?pinit.c^A,1
+#define PETSC_DESIRE_FEATURE_TEST_MACROS1,0
+    #define __gcov_flush(20,516
+PETSC_INTERN PetscFPT PetscFPTData;27,653
+PetscFPT              PetscFPTData 28,689
+PETSC_INTERN FILE *petsc_history;petsc_history37,900
+MPI_Comm PETSC_COMM_WORLD 46,1342
+PetscMPIInt PETSC_MPI_THREAD_REQUIRED 48,1424
+PetscMPIInt PETSC_MPI_THREAD_REQUIRED 50,1491
+PetscMPIInt Petsc_Counter_keyval 53,1542
+PetscMPIInt Petsc_InnerComm_keyval 54,1602
+PetscMPIInt Petsc_OuterComm_keyval 55,1662
+PetscMPIInt Petsc_ShmComm_keyval 56,1722
+PetscMPIInt Petsc_CreationIdx_keyval 57,1782
+PetscMPIInt Petsc_Garbage_HMap_keyval 58,1842
+const char *const PetscBools[PetscBools63,1970
+const char *const PetscCopyModes[PetscCopyModes64,2055
+PetscBool PetscPreLoadingUsed 66,2173
+PetscBool PetscPreLoadingOn 67,2218
+PetscInt PetscHotRegionDepth;69,2264
+PetscBool PETSC_RUNNING_ON_VALGRIND 71,2295
+PetscSpinlock PetscViewerASCIISpinLockOpen;74,2384
+PetscSpinlock PetscViewerASCIISpinLockStdout;75,2428
+PetscSpinlock PetscViewerASCIISpinLockStderr;76,2474
+PetscSpinlock PetscCommSpinLock;77,2520
+PetscErrorCode PetscInitializeNoPointers(96,3230
+PetscErrorCode PetscGetPETSC_COMM_SELF(111,3625
+PetscErrorCode PetscInitializeNoArguments(129,4036
+PetscErrorCode PetscInitialized(146,4419
+PetscErrorCode PetscFinalized(161,4841
+MPI_Op MPIU_MAXSUM_OP 175,5281
+MPI_Op Petsc_Garbage_SetIntersectOp 176,5322
+PETSC_INTERN void MPIAPI MPIU_MaxSum_Local(178,5364
+PetscErrorCode PetscMaxSum(203,6229
+      PetscInt max,209,6415
+      PetscInt max, sum;209,6415
+      PetscInt max,219,6651
+      PetscInt max, sum;219,6651
+MPI_Op MPIU_SUM___FP16___FLOAT128 239,7275
+MPI_Op MPIU_SUM 241,7389
+PETSC_EXTERN void MPIAPI PetscSum_Local(244,7420
+MPI_Op MPIU_MAX 291,9305
+MPI_Op MPIU_MIN 292,9326
+PETSC_EXTERN void MPIAPI PetscMax_Local(294,9348
+PETSC_EXTERN void MPIAPI PetscMin_Local(316,10134
+PETSC_EXTERN PetscMPIInt MPIAPI Petsc_Counter_Attr_Delete_Fn(347,11281
+PETSC_EXTERN PetscMPIInt MPIAPI Petsc_InnerComm_Attr_Delete_Fn(376,12351
+    MPI_Comm comm;380,12498
+    void    *ptr;ptr381,12517
+      MPI_Comm comm;392,12887
+      void    *ptr;ptr393,12908
+PETSC_EXTERN PetscMPIInt MPIAPI Petsc_OuterComm_Attr_Delete_Fn(407,13689
+PetscMPIInt PETSC_MPI_ERROR_CLASS 422,14476
+PETSC_INTERN int    PetscGlobalArgc;424,14553
+PETSC_INTERN char **PetscGlobalArgs;PetscGlobalArgs425,14590
+int                 PetscGlobalArgc 426,14627
+char              **PetscGlobalArgs PetscGlobalArgs427,14668
+PetscSegBuffer      PetscCitationsList;428,14712
+PetscErrorCode PetscCitationsInitialize(430,14753
+static char programname[programname462,16430
+PetscErrorCode PetscSetProgramName(464,16519
+PetscErrorCode PetscGetProgramName(485,16980
+PetscErrorCode PetscGetArgs(512,17776
+PetscErrorCode PetscGetArguments(537,18564
+PetscErrorCode PetscFreeArguments(565,19383
+PETSC_INTERN PetscErrorCode PetscInitializeSAWs(580,19667
+PETSC_INTERN PetscErrorCode PetscPreMPIInit_Private(690,25055
+int64_t Petsc_adios_group;703,25381
+PetscInt PetscNumOMPThreads;707,25464
+cudaStream_t PetscDefaultCudaStream 714,25612
+hipStream_t PetscDefaultHipStream 719,25734
+PetscBool                   PetscViennaCLSynchronize 730,26015
+PetscBool PetscCIEnabled 733,26091
+PETSC_INTERN PetscErrorCode PetscInitialize_Common(744,26544
+    #define PSTRSZ 814,29447
+PetscErrorCode PetscInitialize(1230,50443
+PETSC_INTERN PetscObject *PetscObjects;PetscObjects1272,52067
+PETSC_INTERN PetscInt     PetscObjectsCounts;1273,52107
+PETSC_INTERN PetscInt     PetscObjectsMaxCounts;1274,52153
+PETSC_INTERN PetscBool    PetscObjectsLog;1275,52202
+PetscErrorCode PetscFreeMPIResources(1281,52330
+PetscErrorCode PetscFinalize(1340,54517
+      MPI_Comm comm;1361,55233
+      void    *ptr;ptr1362,55254
+      MPI_Comm comm;1722,68628
+      void    *ptr;ptr1723,68649
+PETSC_EXTERN int lsame_(1797,72030
+PETSC_EXTERN int lsame(1807,72224
+
+src/sys/objects/inherit.c,2505
+inherit.c:^?inherit.c^A,1
+PETSC_INTERN PetscObject *PetscObjects;PetscObjects8,196
+PETSC_INTERN PetscInt     PetscObjectsCounts;9,236
+PETSC_INTERN PetscInt     PetscObjectsMaxCounts;10,282
+PETSC_INTERN PetscBool    PetscObjectsLog;11,331
+PetscObject *PetscObjects PetscObjects15,409
+PetscInt     PetscObjectsCounts 16,449
+PetscBool    PetscObjectsLog 17,513
+PetscObjectId PetscObjectNewId_Internal(25,963
+PetscErrorCode PetscHeaderCreate_Private(35,1216
+PETSC_INTERN PetscBool      PetscMemoryCollectMaximumUsage;94,3553
+PETSC_INTERN PetscLogDouble PetscMemoryMaximumUsage;95,3613
+PetscErrorCode PetscHeaderDestroy_Private(101,3789
+PetscErrorCode PetscHeaderReset_Internal(202,7703
+PetscErrorCode PetscObjectCopyFortranFunctionPointers(225,8224
+PetscErrorCode PetscObjectSetFortranCallback(269,10098
+PetscErrorCode PetscObjectGetFortranCallback(314,11826
+PetscErrorCode PetscObjectsDump(344,13002
+PetscErrorCode PetscObjectsView(409,14994
+PetscErrorCode PetscObjectsGetObject(438,15752
+PetscErrorCode PetscObjectSetPrintedOptions(477,16844
+PetscErrorCode PetscObjectInheritPrintedOptions(502,17728
+PetscErrorCode PetscObjectAddOptionsHandler(530,18637
+PetscErrorCode PetscObjectProcessOptionsHandlers(554,19584
+PetscErrorCode PetscObjectDestroyOptionsHandlers(574,20250
+PetscErrorCode PetscObjectReference(600,21021
+PetscErrorCode PetscObjectGetReference(626,21643
+PetscErrorCode PetscObjectDereference(653,22477
+PetscErrorCode PetscObjectRemoveReference(668,23022
+PetscErrorCode PetscObjectCompose_Petsc(676,23245
+PetscErrorCode PetscObjectQuery_Petsc(690,23754
+PetscErrorCode PetscObjectComposeFunction_Petsc(698,23984
+PetscErrorCode PetscObjectQueryFunction_Petsc(706,24227
+PetscErrorCode PetscObjectCompose(746,25690
+PetscErrorCode PetscObjectQuery(778,26818
+PetscErrorCode PetscObjectComposeFunction_Private(820,28303
+PETSC_EXTERN PetscErrorCode PetscObjectQueryFunction_Private(850,29234
+struct _p_PetscContainer 859,29524
+  PETSCHEADER(860,29551
+  void *ptr;ptr861,29571
+  PetscErrorCode (*userdestroy)userdestroy862,29584
+PetscErrorCode PetscContainerUserDestroyDefault(878,30038
+PetscErrorCode PetscContainerGetPointer(901,30590
+PetscErrorCode PetscContainerSetPointer(924,31215
+PetscErrorCode PetscContainerDestroy(949,31919
+PetscErrorCode PetscContainerSetUserDestroy(979,32979
+PetscClassId PETSC_CONTAINER_CLASSID;987,33214
+PetscErrorCode PetscContainerCreate(1008,33925
+PetscErrorCode PetscObjectSetFromOptions(1032,34589
+PetscErrorCode PetscObjectSetUp(1054,34975
+
+src/sys/objects/destroy.c,932
+destroy.c:^?destroy.c^A,1
+PetscErrorCode PetscComposedQuantitiesDestroy(8,168
+PetscErrorCode PetscObjectDestroy(45,1520
+PetscErrorCode PetscObjectView(70,2315
+PetscErrorCode PetscObjectViewFromOptions(113,4312
+PetscErrorCode PetscObjectTypeCompare(155,5820
+PetscErrorCode PetscObjectObjectTypeCompare(187,6861
+PetscErrorCode PetscObjectBaseTypeCompare(213,7675
+PetscErrorCode PetscObjectTypeCompareAny(245,8877
+PetscErrorCode PetscObjectBaseTypeCompareAny(284,10174
+#define MAXREGDESOBJS 305,10694
+static int         PetscObjectRegisterDestroy_Count 306,10720
+static PetscObject PetscObjectRegisterDestroy_Objects[PetscObjectRegisterDestroy_Objects307,10777
+PetscErrorCode PetscObjectRegisterDestroy(328,11383
+PetscErrorCode PetscObjectRegisterDestroyAll(347,12246
+#define MAXREGFIN 355,12527
+static int PetscRegisterFinalize_Count 356,12549
+PetscErrorCode PetscRegisterFinalize(374,13009
+PetscErrorCode PetscRegisterFinalizeAll(394,13876
+
 src/sys/objects/options.c,4270
 options.c:^?options.c^A,1
 #define PETSC_DESIRE_FEATURE_TEST_MACROS 2,130
@@ -18817,27 +18980,6 @@
 PetscErrorCode PetscObjectSetTabLevel(109,3013
 PetscErrorCode PetscObjectIncrementTabLevel(137,3968
 
-src/sys/objects/destroy.c,932
-destroy.c:^?destroy.c^A,1
-PetscErrorCode PetscComposedQuantitiesDestroy(8,168
-PetscErrorCode PetscObjectDestroy(45,1520
-PetscErrorCode PetscObjectView(70,2315
-PetscErrorCode PetscObjectViewFromOptions(113,4312
-PetscErrorCode PetscObjectTypeCompare(155,5820
-PetscErrorCode PetscObjectObjectTypeCompare(187,6860
-PetscErrorCode PetscObjectBaseTypeCompare(213,7674
-PetscErrorCode PetscObjectTypeCompareAny(245,8876
-PetscErrorCode PetscObjectBaseTypeCompareAny(284,10173
-#define MAXREGDESOBJS 305,10693
-static int         PetscObjectRegisterDestroy_Count 306,10719
-static PetscObject PetscObjectRegisterDestroy_Objects[PetscObjectRegisterDestroy_Objects307,10776
-PetscErrorCode PetscObjectRegisterDestroy(328,11382
-PetscErrorCode PetscObjectRegisterDestroyAll(347,12245
-#define MAXREGFIN 355,12526
-static int PetscRegisterFinalize_Count 356,12548
-PetscErrorCode PetscRegisterFinalize(374,13008
-PetscErrorCode PetscRegisterFinalizeAll(394,13875
-
 src/sys/objects/version.c,85
 version.c:^?version.c^A,1
 PetscErrorCode PetscGetVersion(21,465
@@ -18881,148 +19023,6 @@
 PetscErrorCode PetscObjectGetOptionsPrefix(154,5224
 PetscErrorCode PetscObjectPrependOptionsPrefix(180,6083
 
-src/sys/objects/pinit.c,3913
-pinit.c:^?pinit.c^A,1
-#define PETSC_DESIRE_FEATURE_TEST_MACROS1,0
-    #define __gcov_flush(20,516
-PETSC_INTERN PetscFPT PetscFPTData;27,653
-PetscFPT              PetscFPTData 28,689
-PETSC_INTERN FILE *petsc_history;petsc_history37,900
-MPI_Comm PETSC_COMM_WORLD 46,1342
-PetscMPIInt PETSC_MPI_THREAD_REQUIRED 48,1424
-PetscMPIInt PETSC_MPI_THREAD_REQUIRED 50,1491
-PetscMPIInt Petsc_Counter_keyval 53,1542
-PetscMPIInt Petsc_InnerComm_keyval 54,1602
-PetscMPIInt Petsc_OuterComm_keyval 55,1662
-PetscMPIInt Petsc_ShmComm_keyval 56,1722
-PetscMPIInt Petsc_CreationIdx_keyval 57,1782
-PetscMPIInt Petsc_Garbage_HMap_keyval 58,1842
-const char *const PetscBools[PetscBools63,1970
-const char *const PetscCopyModes[PetscCopyModes64,2055
-PetscBool PetscPreLoadingUsed 66,2173
-PetscBool PetscPreLoadingOn 67,2218
-PetscInt PetscHotRegionDepth;69,2264
-PetscBool PETSC_RUNNING_ON_VALGRIND 71,2295
-PetscSpinlock PetscViewerASCIISpinLockOpen;74,2384
-PetscSpinlock PetscViewerASCIISpinLockStdout;75,2428
-PetscSpinlock PetscViewerASCIISpinLockStderr;76,2474
-PetscSpinlock PetscCommSpinLock;77,2520
-PetscErrorCode PetscInitializeNoPointers(96,3230
-PetscErrorCode PetscGetPETSC_COMM_SELF(111,3625
-PetscErrorCode PetscInitializeNoArguments(129,4036
-PetscErrorCode PetscInitialized(146,4419
-PetscErrorCode PetscFinalized(161,4841
-MPI_Op MPIU_MAXSUM_OP 175,5281
-MPI_Op Petsc_Garbage_SetIntersectOp 176,5322
-PETSC_INTERN void MPIAPI MPIU_MaxSum_Local(178,5364
-PetscErrorCode PetscMaxSum(203,6229
-      PetscInt max,209,6415
-      PetscInt max, sum;209,6415
-      PetscInt max,219,6651
-      PetscInt max, sum;219,6651
-MPI_Op MPIU_SUM___FP16___FLOAT128 239,7275
-MPI_Op MPIU_SUM 241,7389
-PETSC_EXTERN void MPIAPI PetscSum_Local(244,7420
-MPI_Op MPIU_MAX 291,9305
-MPI_Op MPIU_MIN 292,9326
-PETSC_EXTERN void MPIAPI PetscMax_Local(294,9348
-PETSC_EXTERN void MPIAPI PetscMin_Local(316,10134
-PETSC_EXTERN PetscMPIInt MPIAPI Petsc_Counter_Attr_Delete_Fn(347,11281
-PETSC_EXTERN PetscMPIInt MPIAPI Petsc_InnerComm_Attr_Delete_Fn(376,12351
-    MPI_Comm comm;380,12498
-    void    *ptr;ptr381,12517
-      MPI_Comm comm;392,12887
-      void    *ptr;ptr393,12908
-PETSC_EXTERN PetscMPIInt MPIAPI Petsc_OuterComm_Attr_Delete_Fn(407,13689
-PetscMPIInt PETSC_MPI_ERROR_CLASS 422,14476
-PETSC_INTERN int    PetscGlobalArgc;424,14553
-PETSC_INTERN char **PetscGlobalArgs;PetscGlobalArgs425,14590
-int                 PetscGlobalArgc 426,14627
-char              **PetscGlobalArgs PetscGlobalArgs427,14668
-PetscSegBuffer      PetscCitationsList;428,14712
-PetscErrorCode PetscCitationsInitialize(430,14753
-static char programname[programname462,16430
-PetscErrorCode PetscSetProgramName(464,16519
-PetscErrorCode PetscGetProgramName(485,16980
-PetscErrorCode PetscGetArgs(512,17776
-PetscErrorCode PetscGetArguments(537,18564
-PetscErrorCode PetscFreeArguments(565,19383
-PETSC_INTERN PetscErrorCode PetscInitializeSAWs(580,19667
-PETSC_INTERN PetscErrorCode PetscPreMPIInit_Private(690,25055
-int64_t Petsc_adios_group;703,25381
-PetscInt PetscNumOMPThreads;707,25464
-cudaStream_t PetscDefaultCudaStream 714,25612
-hipStream_t PetscDefaultHipStream 719,25734
-PetscBool                   PetscViennaCLSynchronize 730,26015
-PetscBool PetscCIEnabled 733,26091
-PETSC_INTERN PetscErrorCode PetscInitialize_Common(744,26543
-    #define PSTRSZ 814,29446
-PetscErrorCode PetscInitialize(1230,50442
-PETSC_INTERN PetscObject *PetscObjects;PetscObjects1272,52066
-PETSC_INTERN PetscInt     PetscObjectsCounts;1273,52106
-PETSC_INTERN PetscInt     PetscObjectsMaxCounts;1274,52152
-PETSC_INTERN PetscBool    PetscObjectsLog;1275,52201
-PetscErrorCode PetscFreeMPIResources(1281,52329
-PetscErrorCode PetscFinalize(1340,54516
-      MPI_Comm comm;1361,55232
-      void    *ptr;ptr1362,55253
-      MPI_Comm comm;1722,68627
-      void    *ptr;ptr1723,68648
-PETSC_EXTERN int lsame_(1797,72029
-PETSC_EXTERN int lsame(1807,72223
-
-src/sys/objects/inherit.c,2505
-inherit.c:^?inherit.c^A,1
-PETSC_INTERN PetscObject *PetscObjects;PetscObjects8,196
-PETSC_INTERN PetscInt     PetscObjectsCounts;9,236
-PETSC_INTERN PetscInt     PetscObjectsMaxCounts;10,282
-PETSC_INTERN PetscBool    PetscObjectsLog;11,331
-PetscObject *PetscObjects PetscObjects15,409
-PetscInt     PetscObjectsCounts 16,449
-PetscBool    PetscObjectsLog 17,513
-PetscObjectId PetscObjectNewId_Internal(25,963
-PetscErrorCode PetscHeaderCreate_Private(35,1216
-PETSC_INTERN PetscBool      PetscMemoryCollectMaximumUsage;94,3553
-PETSC_INTERN PetscLogDouble PetscMemoryMaximumUsage;95,3613
-PetscErrorCode PetscHeaderDestroy_Private(101,3789
-PetscErrorCode PetscHeaderReset_Internal(202,7703
-PetscErrorCode PetscObjectCopyFortranFunctionPointers(225,8224
-PetscErrorCode PetscObjectSetFortranCallback(269,10098
-PetscErrorCode PetscObjectGetFortranCallback(314,11826
-PetscErrorCode PetscObjectsDump(344,13002
-PetscErrorCode PetscObjectsView(409,14994
-PetscErrorCode PetscObjectsGetObject(438,15752
-PetscErrorCode PetscObjectSetPrintedOptions(477,16844
-PetscErrorCode PetscObjectInheritPrintedOptions(502,17728
-PetscErrorCode PetscObjectAddOptionsHandler(530,18637
-PetscErrorCode PetscObjectProcessOptionsHandlers(554,19584
-PetscErrorCode PetscObjectDestroyOptionsHandlers(574,20250
-PetscErrorCode PetscObjectReference(600,21021
-PetscErrorCode PetscObjectGetReference(626,21643
-PetscErrorCode PetscObjectDereference(653,22477
-PetscErrorCode PetscObjectRemoveReference(668,23022
-PetscErrorCode PetscObjectCompose_Petsc(676,23245
-PetscErrorCode PetscObjectQuery_Petsc(690,23754
-PetscErrorCode PetscObjectComposeFunction_Petsc(698,23984
-PetscErrorCode PetscObjectQueryFunction_Petsc(706,24227
-PetscErrorCode PetscObjectCompose(746,25690
-PetscErrorCode PetscObjectQuery(778,26818
-PetscErrorCode PetscObjectComposeFunction_Private(821,28341
-PETSC_EXTERN PetscErrorCode PetscObjectQueryFunction_Private(851,29272
-struct _p_PetscContainer 860,29562
-  PETSCHEADER(861,29589
-  void *ptr;ptr862,29609
-  PetscErrorCode (*userdestroy)userdestroy863,29622
-PetscErrorCode PetscContainerUserDestroyDefault(879,30076
-PetscErrorCode PetscContainerGetPointer(902,30628
-PetscErrorCode PetscContainerSetPointer(925,31253
-PetscErrorCode PetscContainerDestroy(950,31957
-PetscErrorCode PetscContainerSetUserDestroy(980,33017
-PetscClassId PETSC_CONTAINER_CLASSID;988,33252
-PetscErrorCode PetscContainerCreate(1009,33963
-PetscErrorCode PetscObjectSetFromOptions(1033,34627
-PetscErrorCode PetscObjectSetUp(1055,35013
-
 src/sys/objects/aoptions.c,1675
 aoptions.c:^?aoptions.c^A,1
 #define ManSection(10,283
@@ -19507,39 +19507,6 @@
 static const char help[help1,0
 int main(5,118
 
-src/sys/objects/device/interface/dcontext.cxx,1662
-dcontext.cxx:^?dcontext.cxx^A,1
-class PetscDeviceContextAllocator 12,384
-  PETSC_CXX_COMPAT_DECL(14,478
-  PETSC_CXX_COMPAT_DECL(23,901
-  PETSC_CXX_COMPAT_DECL(35,1474
-static Petsc::ObjectPool<PetscDeviceContext, PetscDeviceContextAllocator> contextPool;59,2330
-PetscErrorCode PetscDeviceContextCreate(90,3194
-PetscErrorCode PetscDeviceContextDestroy(134,4533
-PetscErrorCode PetscDeviceContextSetStreamType(172,6088
-PetscErrorCode PetscDeviceContextGetStreamType(211,7351
-static PetscErrorCode PetscDeviceContextSetDevice_Private(233,8392
-PetscErrorCode PetscDeviceContextSetDefaultDeviceForType_Internal(253,9367
-PetscErrorCode PetscDeviceContextSetDevice(288,10584
-PetscErrorCode PetscDeviceContextGetDevice(313,11222
-PetscErrorCode PetscDeviceContextGetDeviceType(342,12128
-PetscErrorCode PetscDeviceContextSetUp(371,12997
-static PetscErrorCode PetscDeviceContextDuplicate_Private(389,13836
-PetscErrorCode PetscDeviceContextDuplicate(432,15298
-PetscErrorCode PetscDeviceContextQueryIdle(464,16337
-PetscErrorCode PetscDeviceContextWaitForContext(508,17936
-PetscErrorCode PetscDeviceContextForkWithStreamType(574,20526
-PetscErrorCode PetscDeviceContextFork(665,24048
-PetscErrorCode PetscDeviceContextJoin(741,26686
-PetscErrorCode PetscDeviceContextSynchronize(828,30458
-static auto nullContexts 843,31089
-static auto nullContextsFinalizer 844,31190
-static PetscErrorCode PetscDeviceContextGetNullContextForDevice_Private(846,31234
-PetscErrorCode PetscDeviceContextGetNullContext_Internal(904,33769
-PetscErrorCode PetscDeviceContextSetFromOptions(943,35074
-PetscErrorCode PetscDeviceContextView(993,37066
-PetscErrorCode PetscDeviceContextViewFromOptions(1044,39175
-
 src/sys/objects/device/interface/memory.cxx,1242
 memory.cxx:^?memory.cxx^A,1
 const char *const PetscDeviceCopyModes[PetscDeviceCopyModes10,277
@@ -19549,24 +19516,35 @@
   PetscMemType  mtype 32,1430
   PetscObjectId id 33,1499
   std::size_t   size 34,1563
-inline constexpr PointerAttributes::PointerAttributes(49,2252
-inline bool PointerAttributes::operator==(operator==51,2417
-inline bool PointerAttributes::contains(contains66,2877
-class MemoryMap 86,3792
-  using map_type 88,3866
-  using map_type = std::unordered_map<void *, PointerAttributes,88,3866
-  map_type map{map90,3946
-PetscErrorCode MemoryMap::register_finalize_(register_finalize_104,4467
-PetscErrorCode MemoryMap::finalize_(finalize_114,4856
-MemoryMap::map_type::const_iterator MemoryMap::search_for(search_for139,5758
-static MemoryMap memory_map;157,6574
-static PetscErrorCode PetscDeviceCheckCapable_Private(163,6814
-static PetscErrorCode PetscDeviceRegisterMemory_Private(173,7471
-PetscErrorCode PetscDeviceRegisterMemory(236,10094
-PetscErrorCode PetscDeviceAllocate_Private(306,12597
-PetscErrorCode PetscDeviceDeallocate_Private(372,15040
-PetscErrorCode PetscDeviceMemcpy(450,17961
-PetscErrorCode PetscDeviceMemset(522,20667
+inline constexpr PointerAttributes::PointerAttributes(49,2253
+inline bool PointerAttributes::operator==(operator==51,2418
+inline bool PointerAttributes::contains(contains66,2878
+class MemoryMap 86,3793
+  using map_type 88,3867
+  using map_type = std::unordered_map<void *, PointerAttributes,88,3867
+  map_type map{map90,3947
+PetscErrorCode MemoryMap::register_finalize_(register_finalize_104,4468
+PetscErrorCode MemoryMap::finalize_(finalize_114,4857
+MemoryMap::map_type::const_iterator MemoryMap::search_for(search_for139,5759
+static MemoryMap memory_map;157,6575
+static PetscErrorCode PetscDeviceCheckCapable_Private(163,6815
+static PetscErrorCode PetscDeviceRegisterMemory_Private(173,7472
+PetscErrorCode PetscDeviceRegisterMemory(236,10095
+PetscErrorCode PetscDeviceAllocate_Private(306,12598
+PetscErrorCode PetscDeviceDeallocate_Private(372,15041
+PetscErrorCode PetscDeviceMemcpy(450,17962
+PetscErrorCode PetscDeviceMemset(522,20668
+
+src/sys/objects/device/interface/global_dcontext.cxx,473
+global_dcontext.cxx:^?global_dcontext.cxx^A,1
+static auto               rootDeviceType 3,71
+static auto               rootStreamType 4,156
+static PetscDeviceContext globalContext 5,241
+PetscErrorCode PetscDeviceContextSetRootDeviceType_Internal(9,437
+PetscErrorCode PetscDeviceContextSetRootStreamType_Internal(17,630
+static PetscErrorCode PetscDeviceContextSetupGlobalContext_Private(25,823
+PetscErrorCode PetscDeviceContextGetCurrentContext(80,3018
+PetscErrorCode PetscDeviceContextSetCurrentContext(115,4500
 
 src/sys/objects/device/interface/device.cxx,1521
 device.cxx:^?device.cxx^A,1
@@ -19589,15 +19567,48 @@
 PetscDeviceType PETSC_DEVICE_DEFAULT(328,9632
 PetscErrorCode PetscDeviceSetDefaultDeviceType(348,10034
 static std::array<std::pair<PetscDevice, bool>, PETSC_DEVICE_MAX> defaultDevices 360,10406
-static PetscErrorCode PetscDeviceInitializeDefaultDevice_Internal(366,10640
-PetscErrorCode PetscDeviceInitialize(399,11676
-PetscBool PetscDeviceInitialized(427,12467
-PetscErrorCode PetscDeviceGetDefaultForType_Internal(433,12731
-PetscErrorCode PetscDeviceGetAttribute(464,13657
-static PetscErrorCode PetscDeviceInitializeTypeFromOptions_Private(474,13966
-static PetscErrorCode PetscDeviceInitializeQueryOptions_Private(505,16020
-static PetscErrorCode PetscDeviceFinalize_Private(537,18355
-PetscErrorCode PetscDeviceInitializeFromOptions_Internal(595,21035
+static PetscErrorCode PetscDeviceInitializeDefaultDevice_Internal(366,10641
+PetscErrorCode PetscDeviceInitialize(399,11677
+PetscBool PetscDeviceInitialized(427,12468
+PetscErrorCode PetscDeviceGetDefaultForType_Internal(433,12732
+PetscErrorCode PetscDeviceGetAttribute(464,13659
+static PetscErrorCode PetscDeviceInitializeTypeFromOptions_Private(474,13968
+static PetscErrorCode PetscDeviceInitializeQueryOptions_Private(505,16022
+static PetscErrorCode PetscDeviceFinalize_Private(537,18358
+PetscErrorCode PetscDeviceInitializeFromOptions_Internal(595,21038
+
+src/sys/objects/device/interface/dcontext.cxx,1662
+dcontext.cxx:^?dcontext.cxx^A,1
+class PetscDeviceContextAllocator 12,384
+  PETSC_CXX_COMPAT_DECL(14,478
+  PETSC_CXX_COMPAT_DECL(23,901
+  PETSC_CXX_COMPAT_DECL(35,1474
+static Petsc::ObjectPool<PetscDeviceContext, PetscDeviceContextAllocator> contextPool;59,2330
+PetscErrorCode PetscDeviceContextCreate(90,3194
+PetscErrorCode PetscDeviceContextDestroy(134,4534
+PetscErrorCode PetscDeviceContextSetStreamType(172,6089
+PetscErrorCode PetscDeviceContextGetStreamType(211,7352
+static PetscErrorCode PetscDeviceContextSetDevice_Private(233,8393
+PetscErrorCode PetscDeviceContextSetDefaultDeviceForType_Internal(253,9368
+PetscErrorCode PetscDeviceContextSetDevice(288,10586
+PetscErrorCode PetscDeviceContextGetDevice(313,11224
+PetscErrorCode PetscDeviceContextGetDeviceType(342,12130
+PetscErrorCode PetscDeviceContextSetUp(371,12999
+static PetscErrorCode PetscDeviceContextDuplicate_Private(389,13838
+PetscErrorCode PetscDeviceContextDuplicate(432,15300
+PetscErrorCode PetscDeviceContextQueryIdle(464,16339
+PetscErrorCode PetscDeviceContextWaitForContext(508,17938
+PetscErrorCode PetscDeviceContextForkWithStreamType(574,20528
+PetscErrorCode PetscDeviceContextFork(665,24050
+PetscErrorCode PetscDeviceContextJoin(741,26688
+PetscErrorCode PetscDeviceContextSynchronize(828,30460
+static auto nullContexts 843,31091
+static auto nullContextsFinalizer 844,31192
+static PetscErrorCode PetscDeviceContextGetNullContextForDevice_Private(846,31236
+PetscErrorCode PetscDeviceContextGetNullContext_Internal(904,33771
+PetscErrorCode PetscDeviceContextSetFromOptions(943,35076
+PetscErrorCode PetscDeviceContextView(993,37068
+PetscErrorCode PetscDeviceContextViewFromOptions(1044,39177
 
 src/sys/objects/device/interface/mark_dcontext.cxx,2897
 mark_dcontext.cxx:^?mark_dcontext.cxx^A,1
@@ -19665,17 +19676,6 @@
 DIRS	8,241
 LOCDIR	9,250
 
-src/sys/objects/device/interface/global_dcontext.cxx,473
-global_dcontext.cxx:^?global_dcontext.cxx^A,1
-static auto               rootDeviceType 3,71
-static auto               rootStreamType 4,156
-static PetscDeviceContext globalContext 5,241
-PetscErrorCode PetscDeviceContextSetRootDeviceType_Internal(9,436
-PetscErrorCode PetscDeviceContextSetRootStreamType_Internal(17,629
-static PetscErrorCode PetscDeviceContextSetupGlobalContext_Private(25,822
-PetscErrorCode PetscDeviceContextGetCurrentContext(80,3017
-PetscErrorCode PetscDeviceContextSetCurrentContext(115,4498
-
 src/sys/objects/device/impls/makefile,98
 makefile:^?makefile^A,1
 SOURCEC	4,70
@@ -19869,6 +19869,12 @@
 PetscErrorCode PetscCUBLASGetHandle(17,491
 PetscErrorCode PetscCUSOLVERDnGetHandle(28,828
 
+src/sys/objects/cxx/elemental.cxx,159
+elemental.cxx:^?elemental.cxx^A,1
+PetscErrorCode PetscElementalInitializePackage(21,696
+PetscErrorCode PetscElementalInitialized(48,1895
+PetscErrorCode PetscElementalFinalizePackage(67,2437
+
 src/sys/objects/cxx/makefile,101
 makefile:^?makefile^A,1
 SOURCECXX=4,74
@@ -19879,18 +19885,6 @@
 LOCDIR 9,159
 DIRS 10,191
 
-src/sys/objects/cxx/elemental.cxx,159
-elemental.cxx:^?elemental.cxx^A,1
-PetscErrorCode PetscElementalInitializePackage(21,696
-PetscErrorCode PetscElementalInitialized(48,1895
-PetscErrorCode PetscElementalFinalizePackage(67,2437
-
-src/sys/mpiuni/mpitime.c,76
-mpitime.c:^?mpitime.c^A,1
-  #define FACTOR 14,332
-double MPI_Wtime(16,379
-double MPI_Wtime(74,2311
-
 src/sys/mpiuni/mpi.c,9754
 mpi.c:^?mpi.c^A,1
 #define MPI_SUCCESS 13,276
@@ -20085,52 +20079,58 @@
   #define petsc_mpi_wait_ 580,21181
   #define petsc_mpi_comm_group_ 581,21238
   #define petsc_mpi_exscan_ 582,21301
-PETSC_EXTERN void mpiunisetfortranbasepointers_(590,21529
-PETSC_EXTERN void petsc_mpi_init_(595,21645
-PETSC_EXTERN void petsc_mpi_finalize_(601,21765
-PETSC_EXTERN void petsc_mpi_comm_size_(606,21845
-PETSC_EXTERN void petsc_mpi_comm_rank_(612,21953
-PETSC_EXTERN void petsc_mpi_comm_split_(618,22071
-PETSC_EXTERN void petsc_mpi_abort_(624,22230
-PETSC_EXTERN void petsc_mpi_reduce_(630,22347
-PETSC_EXTERN void petsc_mpi_allreduce_(635,22565
-PETSC_EXTERN void petsc_mpi_barrier_(640,22771
-PETSC_EXTERN void petsc_mpi_bcast_(645,22863
-PETSC_EXTERN void petsc_mpi_gather_(650,22997
-PETSC_EXTERN void petsc_mpi_allgather_(655,23253
-PETSC_EXTERN void petsc_mpi_scan_(660,23497
-PETSC_EXTERN void petsc_mpi_send_(665,23701
-PETSC_EXTERN void petsc_mpi_recv_(670,23864
-PETSC_EXTERN void petsc_mpi_reduce_scatter_(675,24041
-PETSC_EXTERN void petsc_mpi_irecv_(680,24226
-PETSC_EXTERN void petsc_mpi_isend_(685,24406
-PETSC_EXTERN void petsc_mpi_sendrecv_(690,24584
-PETSC_EXTERN void petsc_mpi_test_(695,24887
-PETSC_EXTERN void petsc_mpi_waitall_(700,25018
-PETSC_EXTERN void petsc_mpi_waitany_(705,25154
-PETSC_EXTERN void petsc_mpi_allgatherv_(710,25291
-PETSC_EXTERN void petsc_mpi_alltoallv_(715,25569
-PETSC_EXTERN void petsc_mpi_comm_create_(720,25871
-PETSC_EXTERN void petsc_mpi_address_(726,26011
-PETSC_EXTERN void petsc_mpi_pack_(732,26168
-PETSC_EXTERN void petsc_mpi_unpack_(737,26357
-PETSC_EXTERN void petsc_mpi_pack_size_(742,26548
-PETSC_EXTERN void petsc_mpi_type_struct_(747,26697
-PETSC_EXTERN void petsc_mpi_type_commit_(752,26899
-double petsc_mpi_wtime_(757,26994
-PETSC_EXTERN void petsc_mpi_cancel_(762,27043
-PETSC_EXTERN void petsc_mpi_comm_dup_(767,27132
-PETSC_EXTERN void petsc_mpi_comm_free_(773,27247
-PETSC_EXTERN void petsc_mpi_get_count_(778,27336
-PETSC_EXTERN void petsc_mpi_get_processor_name_(783,27474
-PETSC_EXTERN void petsc_mpi_initialized_(790,27698
-PETSC_EXTERN void petsc_mpi_iprobe_(796,27820
-PETSC_EXTERN void petsc_mpi_probe_(801,27953
-PETSC_EXTERN void petsc_mpi_request_free_(806,28085
-PETSC_EXTERN void petsc_mpi_ssend_(811,28180
-PETSC_EXTERN void petsc_mpi_wait_(816,28344
-PETSC_EXTERN void petsc_mpi_comm_group_(821,28444
-PETSC_EXTERN void petsc_mpi_exscan_(826,28546
+PETSC_EXTERN void mpiunisetfortranbasepointers_(590,21530
+PETSC_EXTERN void petsc_mpi_init_(595,21646
+PETSC_EXTERN void petsc_mpi_finalize_(601,21766
+PETSC_EXTERN void petsc_mpi_comm_size_(606,21846
+PETSC_EXTERN void petsc_mpi_comm_rank_(612,21954
+PETSC_EXTERN void petsc_mpi_comm_split_(618,22072
+PETSC_EXTERN void petsc_mpi_abort_(624,22231
+PETSC_EXTERN void petsc_mpi_reduce_(630,22348
+PETSC_EXTERN void petsc_mpi_allreduce_(635,22566
+PETSC_EXTERN void petsc_mpi_barrier_(640,22772
+PETSC_EXTERN void petsc_mpi_bcast_(645,22864
+PETSC_EXTERN void petsc_mpi_gather_(650,22998
+PETSC_EXTERN void petsc_mpi_allgather_(655,23254
+PETSC_EXTERN void petsc_mpi_scan_(660,23498
+PETSC_EXTERN void petsc_mpi_send_(665,23702
+PETSC_EXTERN void petsc_mpi_recv_(670,23865
+PETSC_EXTERN void petsc_mpi_reduce_scatter_(675,24042
+PETSC_EXTERN void petsc_mpi_irecv_(680,24227
+PETSC_EXTERN void petsc_mpi_isend_(685,24407
+PETSC_EXTERN void petsc_mpi_sendrecv_(690,24585
+PETSC_EXTERN void petsc_mpi_test_(695,24888
+PETSC_EXTERN void petsc_mpi_waitall_(700,25019
+PETSC_EXTERN void petsc_mpi_waitany_(705,25155
+PETSC_EXTERN void petsc_mpi_allgatherv_(710,25292
+PETSC_EXTERN void petsc_mpi_alltoallv_(715,25570
+PETSC_EXTERN void petsc_mpi_comm_create_(720,25872
+PETSC_EXTERN void petsc_mpi_address_(726,26012
+PETSC_EXTERN void petsc_mpi_pack_(732,26169
+PETSC_EXTERN void petsc_mpi_unpack_(737,26358
+PETSC_EXTERN void petsc_mpi_pack_size_(742,26549
+PETSC_EXTERN void petsc_mpi_type_struct_(747,26698
+PETSC_EXTERN void petsc_mpi_type_commit_(752,26900
+double petsc_mpi_wtime_(757,26995
+PETSC_EXTERN void petsc_mpi_cancel_(762,27044
+PETSC_EXTERN void petsc_mpi_comm_dup_(767,27133
+PETSC_EXTERN void petsc_mpi_comm_free_(773,27248
+PETSC_EXTERN void petsc_mpi_get_count_(778,27337
+PETSC_EXTERN void petsc_mpi_get_processor_name_(783,27475
+PETSC_EXTERN void petsc_mpi_initialized_(790,27699
+PETSC_EXTERN void petsc_mpi_iprobe_(796,27821
+PETSC_EXTERN void petsc_mpi_probe_(801,27954
+PETSC_EXTERN void petsc_mpi_request_free_(806,28086
+PETSC_EXTERN void petsc_mpi_ssend_(811,28181
+PETSC_EXTERN void petsc_mpi_wait_(816,28345
+PETSC_EXTERN void petsc_mpi_comm_group_(821,28445
+PETSC_EXTERN void petsc_mpi_exscan_(826,28547
+
+src/sys/mpiuni/mpitime.c,76
+mpitime.c:^?mpitime.c^A,1
+  #define FACTOR 14,332
+double MPI_Wtime(16,379
+double MPI_Wtime(74,2311
 
 src/sys/mpiuni/makefile,100
 makefile:^?makefile^A,1
@@ -20210,23 +20210,23 @@
 PetscErrorCode PetscTrMallocDefault(170,6656
 PetscErrorCode PetscTrFreeDefault(266,10167
 PetscErrorCode PetscTrReallocDefault(349,13711
-PetscErrorCode PetscMemoryView(486,19318
-PetscErrorCode PetscMallocGetCurrentUsage(564,25562
-PetscErrorCode PetscMallocGetMaximumUsage(585,26189
-PetscErrorCode PetscMallocPushMaximumUsage(605,26735
-PetscErrorCode PetscMallocPopMaximumUsage(630,27508
-PetscErrorCode PetscMallocGetStack(656,28333
-PetscErrorCode PetscMallocGetStack(666,28554
-PetscErrorCode PetscMallocDump(703,29729
-PetscErrorCode PetscMallocViewSet(756,31455
-PetscErrorCode PetscMallocViewGet(781,32121
-PetscErrorCode PetscMallocTraceSet(805,32719
-PetscErrorCode PetscMallocTraceGet(835,33609
-PetscErrorCode PetscMallocView(867,34516
-PetscErrorCode PetscMallocSetDebug(955,38243
-PetscErrorCode PetscMallocGetDebug(990,39445
-PetscErrorCode PetscMallocLogRequestedSizeSet(1014,40142
-PetscErrorCode PetscMallocLogRequestedSizeGet(1033,40573
+PetscErrorCode PetscMemoryView(486,19319
+PetscErrorCode PetscMallocGetCurrentUsage(564,25563
+PetscErrorCode PetscMallocGetMaximumUsage(585,26190
+PetscErrorCode PetscMallocPushMaximumUsage(605,26736
+PetscErrorCode PetscMallocPopMaximumUsage(630,27509
+PetscErrorCode PetscMallocGetStack(656,28334
+PetscErrorCode PetscMallocGetStack(666,28555
+PetscErrorCode PetscMallocDump(703,29730
+PetscErrorCode PetscMallocViewSet(756,31456
+PetscErrorCode PetscMallocViewGet(781,32122
+PetscErrorCode PetscMallocTraceSet(805,32720
+PetscErrorCode PetscMallocTraceGet(835,33610
+PetscErrorCode PetscMallocView(867,34517
+PetscErrorCode PetscMallocSetDebug(955,38244
+PetscErrorCode PetscMallocGetDebug(990,39446
+PetscErrorCode PetscMallocLogRequestedSizeSet(1014,40143
+PetscErrorCode PetscMallocLogRequestedSizeGet(1033,40574
 
 src/sys/memory/mhbw.c,202
 mhbw.c:^?mhbw.c^A,1
@@ -20415,25 +20415,25 @@
 static PetscErrorCode PetscLogViewWarnNoGpuAwareMpi(1421,52549
 static PetscErrorCode PetscLogViewWarnGpuTime(1457,54662
 PetscErrorCode PetscLogView_Default(1481,56148
-PetscErrorCode PetscLogView(2095,93541
-PetscErrorCode PetscLogViewFromOptions(2140,95272
-PetscErrorCode PetscGetFlops(2178,96456
-PetscErrorCode PetscLogObjectState(2185,96590
-PetscBool PetscLogGpuTimeFlag 2328,100470
-static PetscErrorCode PetscLogGpuTime_Off(2334,100709
-PetscErrorCode PetscLogGpuTime(2357,101480
-PetscErrorCode PetscLogGpuTimeBegin(2391,103202
-PetscErrorCode PetscLogGpuTimeEnd(2413,103807
-PetscErrorCode PetscLogObjectState(2433,104397
-PetscClassId PETSC_LARGEST_CLASSID 2441,104555
-PetscClassId PETSC_OBJECT_CLASSID 2442,104616
-PetscErrorCode PetscClassIdRegister(2459,104972
-PetscBool PetscBeganMPE 2479,105615
-PetscErrorCode PetscLogMPEBegin(2503,106551
-PetscErrorCode PetscLogMPEDump(2528,107296
-  #define PETSC_RGB_COLORS_MAX 2547,107773
-static const char *PetscLogMPERGBColors[PetscLogMPERGBColors2548,107807
-PetscErrorCode PetscLogMPEGetRGBColor(2566,109205
+PetscErrorCode PetscLogView(2095,93542
+PetscErrorCode PetscLogViewFromOptions(2140,95273
+PetscErrorCode PetscGetFlops(2178,96457
+PetscErrorCode PetscLogObjectState(2185,96591
+PetscBool PetscLogGpuTimeFlag 2328,100471
+static PetscErrorCode PetscLogGpuTime_Off(2334,100710
+PetscErrorCode PetscLogGpuTime(2357,101481
+PetscErrorCode PetscLogGpuTimeBegin(2391,103205
+PetscErrorCode PetscLogGpuTimeEnd(2413,103810
+PetscErrorCode PetscLogObjectState(2433,104400
+PetscClassId PETSC_LARGEST_CLASSID 2441,104558
+PetscClassId PETSC_OBJECT_CLASSID 2442,104619
+PetscErrorCode PetscClassIdRegister(2459,104975
+PetscBool PetscBeganMPE 2479,105618
+PetscErrorCode PetscLogMPEBegin(2503,106554
+PetscErrorCode PetscLogMPEDump(2528,107299
+  #define PETSC_RGB_COLORS_MAX 2547,107776
+static const char *PetscLogMPERGBColors[PetscLogMPERGBColors2548,107810
+PetscErrorCode PetscLogMPEGetRGBColor(2566,109208
 
 src/sys/logging/xmllogevent.c,3394
 xmllogevent.c:^?xmllogevent.c^A,1
@@ -20764,27 +20764,45 @@
 
 src/sys/fileio/mprint.c,942
 mprint.c:^?mprint.c^A,1
-PETSC_INTERN FILE *petsc_history;petsc_history10,249
-FILE *PETSC_STDOUT PETSC_STDOUT16,505
-FILE *PETSC_STDERR PETSC_STDERR22,758
-PetscErrorCode PetscFormatConvertGetSize(39,1150
-PetscErrorCode PetscFormatConvert(95,2635
-#define PETSCDEFAULTBUFFERSIZE 143,4015
-PetscErrorCode PetscVSNPrintf(163,4746
-PetscErrorCode PetscVFPrintfDefault(289,8572
-PetscErrorCode PetscSNPrintf(333,9983
-PetscErrorCode PetscSNPrintfCount(363,10915
-PrintfQueue petsc_printfqueue 375,11259
-int         petsc_printfqueuelength 376,11327
-PetscErrorCode PetscSynchronizedPrintf(401,12266
-PetscErrorCode PetscSynchronizedFPrintf(467,14439
-PetscErrorCode PetscSynchronizedFlush(534,16820
-PetscErrorCode PetscFPrintf(600,19200
-PetscErrorCode PetscPrintf(642,20553
-PetscErrorCode PetscHelpPrintfDefault(662,21144
-PetscErrorCode PetscSynchronizedFGets(702,22348
-PetscErrorCode PetscFormatStrip(730,23019
-PetscErrorCode PetscFormatRealArray(745,23398
+PETSC_INTERN FILE *petsc_history;petsc_history10,250
+FILE *PETSC_STDOUT PETSC_STDOUT16,506
+FILE *PETSC_STDERR PETSC_STDERR22,759
+PetscErrorCode PetscFormatConvertGetSize(39,1151
+PetscErrorCode PetscFormatConvert(95,2636
+#define PETSCDEFAULTBUFFERSIZE 143,4016
+PetscErrorCode PetscVSNPrintf(163,4747
+PetscErrorCode PetscVFPrintfDefault(289,8573
+PetscErrorCode PetscSNPrintf(333,9984
+PetscErrorCode PetscSNPrintfCount(363,10916
+PrintfQueue petsc_printfqueue 375,11260
+int         petsc_printfqueuelength 376,11328
+PetscErrorCode PetscSynchronizedPrintf(401,12267
+PetscErrorCode PetscSynchronizedFPrintf(467,14440
+PetscErrorCode PetscSynchronizedFlush(534,16821
+PetscErrorCode PetscFPrintf(600,19201
+PetscErrorCode PetscPrintf(642,20554
+PetscErrorCode PetscHelpPrintfDefault(662,21145
+PetscErrorCode PetscSynchronizedFGets(702,22349
+PetscErrorCode PetscFormatStrip(730,23020
+PetscErrorCode PetscFormatRealArray(745,23399
+
+src/sys/fileio/ghome.c,86
+ghome.c:^?ghome.c^A,1
+PetscErrorCode PetscGetHomeDirectory(27,575
+PetscErrorCode PetscFixFilename(56,1241
+
+src/sys/fileio/apple_fdir.h,399
+apple_fdir.h:^?apple_fdir.h^A,1
+#define ALLOWED_MKOSTEMP_FLAGS 20,428
+  FTPP_DONE,25,544
+  FTPP_TRY_NEXT,26,557
+  FTPP_ERROR27,574
+} find_temp_path_progress_t;28,587
+typedef find_temp_path_progress_t (*find_temp_path_action_t)find_temp_path_action_t37,882
+static find_temp_path_progress_t _mkdtemp_action(41,1140
+static const char padchar[padchar47,1387
+static int find_temp_path(49,1484
+char *mkdtemp(mkdtemp145,3774
 
 src/sys/fileio/mpiuopen.c,292
 mpiuopen.c:^?mpiuopen.c^A,1
@@ -20864,11 +20882,6 @@
 #define PETSC_DESIRE_FEATURE_TEST_MACROS 1,0
 PetscErrorCode PetscGetRealPath(42,1063
 
-src/sys/fileio/ghome.c,86
-ghome.c:^?ghome.c^A,1
-PetscErrorCode PetscGetHomeDirectory(27,574
-PetscErrorCode PetscFixFilename(56,1240
-
 src/sys/fileio/fwd.c,48
 fwd.c:^?fwd.c^A,1
 PetscErrorCode PetscGetWorkingDirectory(40,836
@@ -20903,19 +20916,6 @@
 PetscErrorCode PetscRMTree(95,2869
 PetscErrorCode PetscRMTree(135,4325
 
-src/sys/fileio/apple_fdir.h,399
-apple_fdir.h:^?apple_fdir.h^A,1
-#define ALLOWED_MKOSTEMP_FLAGS 20,428
-  FTPP_DONE,25,544
-  FTPP_TRY_NEXT,26,557
-  FTPP_ERROR27,574
-} find_temp_path_progress_t;28,587
-typedef find_temp_path_progress_t (*find_temp_path_action_t)find_temp_path_action_t37,881
-static find_temp_path_progress_t _mkdtemp_action(41,1139
-static const char padchar[padchar47,1386
-static int find_temp_path(49,1483
-char *mkdtemp(mkdtemp145,3773
-
 src/sys/fileio/ftn-custom/makefile,85
 makefile:^?makefile^A,1
 SOURCEC 4,73
@@ -21462,59 +21462,59 @@
       subroutine PetscDrawSetViewPort(264,8878
       subroutine PetscDrawGetViewPort(272,9151
       subroutine PetscDrawSplitViewPort(280,9424
-      subroutine PetscDrawAxisCreate(284,9569
-      subroutine PetscDrawAxisDestroy(289,9749
-      subroutine PetscDrawAxisSetColors(293,9898
-      subroutine PetscDrawAxisSetLimits(300,10126
-      subroutine PetscDrawAxisGetLimits(308,10411
-      subroutine PetscDrawAxisSetHoldLimits(316,10696
-      subroutine PetscDrawAxisDraw(321,10890
-      subroutine PetscDrawBarDraw(325,11033
-      subroutine PetscDrawBarSave(329,11172
-      subroutine PetscDrawBarSetColor(333,11311
-      subroutine PetscDrawBarSort(338,11483
-      subroutine PetscDrawBarSetLimits(344,11688
-      subroutine PetscDrawBarSetFromOptions(350,11903
-      subroutine PetscDrawSPSetDimension(354,12062
-      subroutine PetscDrawSPGetDimension(359,12238
-      subroutine PetscDrawSPReset(364,12414
-      subroutine PetscDrawSPDestroy(368,12551
-      subroutine PetscDrawSPAddPoint(372,12692
-      subroutine PetscDrawSPAddPointColorized(378,12901
-      subroutine PetscDrawSPDraw(385,13161
-      subroutine PetscDrawSPSave(390,13329
-      subroutine PetscDrawSPSetLimits(394,13464
-      subroutine PetscDrawSPGetAxis(402,13741
-      subroutine PetscDrawSPGetDraw(407,13923
-      subroutine PetscDrawHGSetNumberBins(412,14097
-      subroutine PetscDrawHGReset(417,14275
-      subroutine PetscDrawHGAddValue(421,14412
-      subroutine PetscDrawHGDraw(426,14588
-      subroutine PetscDrawHGSave(430,14723
-      subroutine PetscDrawHGView(434,14858
-      subroutine PetscDrawHGSetColor(440,15057
-      subroutine PetscDrawHGSetLimits(445,15225
-      subroutine PetscDrawHGCalcStats(453,15486
-      subroutine PetscDrawHGIntegerBins(458,15664
-      subroutine PetscDrawLGAddCommonPoint(463,15846
-      subroutine PetscDrawLGAddPoint(469,16067
-      subroutine PetscDrawLGGetAxis(475,16276
-      subroutine PetscDrawLGGetDraw(480,16458
-      subroutine PetscDrawLGSPDraw(485,16632
-      subroutine PetscDrawLGCreate(490,16808
-      subroutine PetscDrawLGSetColors(496,17011
-      subroutine PetscDrawLGGetDimension(501,17185
-      subroutine PetscDrawLGSetDimension(506,17367
-      subroutine PetscDrawLGSetLimits(511,17549
-      subroutine PetscDrawLGReset(519,17826
-      subroutine PetscDrawLGDestroy(523,17963
-      subroutine PetscDrawLGSetUseMarkers(527,18104
-      subroutine PetscDrawLGDraw(532,18290
-      subroutine PetscDrawLGSave(536,18425
-      subroutine PetscDrawLGView(540,18560
-      subroutine PetscDrawLGSetFromOptions(546,18759
+      subroutine PetscDrawBarDraw(284,9569
+      subroutine PetscDrawBarSave(288,9708
+      subroutine PetscDrawBarSetColor(292,9847
+      subroutine PetscDrawBarSort(297,10019
+      subroutine PetscDrawBarSetLimits(303,10224
+      subroutine PetscDrawBarSetFromOptions(309,10439
+      subroutine PetscDrawSPSetDimension(313,10598
+      subroutine PetscDrawSPGetDimension(318,10774
+      subroutine PetscDrawSPReset(323,10950
+      subroutine PetscDrawSPDestroy(327,11087
+      subroutine PetscDrawSPAddPoint(331,11228
+      subroutine PetscDrawSPAddPointColorized(337,11437
+      subroutine PetscDrawSPDraw(344,11697
+      subroutine PetscDrawSPSave(349,11865
+      subroutine PetscDrawSPSetLimits(353,12000
+      subroutine PetscDrawSPGetAxis(361,12277
+      subroutine PetscDrawSPGetDraw(366,12459
+      subroutine PetscDrawHGSetNumberBins(371,12633
+      subroutine PetscDrawHGReset(376,12811
+      subroutine PetscDrawHGAddValue(380,12948
+      subroutine PetscDrawHGDraw(385,13124
+      subroutine PetscDrawHGSave(389,13259
+      subroutine PetscDrawHGView(393,13394
+      subroutine PetscDrawHGSetColor(399,13593
+      subroutine PetscDrawHGSetLimits(404,13761
+      subroutine PetscDrawHGCalcStats(412,14022
+      subroutine PetscDrawHGIntegerBins(417,14200
+      subroutine PetscDrawLGAddCommonPoint(422,14382
+      subroutine PetscDrawLGAddPoint(428,14603
+      subroutine PetscDrawLGGetAxis(434,14812
+      subroutine PetscDrawLGGetDraw(439,14994
+      subroutine PetscDrawLGSPDraw(444,15168
+      subroutine PetscDrawLGCreate(449,15344
+      subroutine PetscDrawLGSetColors(455,15547
+      subroutine PetscDrawLGGetDimension(460,15721
+      subroutine PetscDrawLGSetDimension(465,15903
+      subroutine PetscDrawLGSetLimits(470,16085
+      subroutine PetscDrawLGReset(478,16362
+      subroutine PetscDrawLGDestroy(482,16499
+      subroutine PetscDrawLGSetUseMarkers(486,16640
+      subroutine PetscDrawLGDraw(491,16826
+      subroutine PetscDrawLGSave(495,16961
+      subroutine PetscDrawLGView(499,17096
+      subroutine PetscDrawLGSetFromOptions(505,17295
+      subroutine PetscDrawAxisCreate(509,17450
+      subroutine PetscDrawAxisDestroy(514,17630
+      subroutine PetscDrawAxisSetColors(518,17779
+      subroutine PetscDrawAxisSetLimits(525,18007
+      subroutine PetscDrawAxisGetLimits(533,18292
+      subroutine PetscDrawAxisSetHoldLimits(541,18577
+      subroutine PetscDrawAxisDraw(546,18771
 
-src/sys/f90-mod/ftn-auto-interfaces/petscsys.h90,6072
+src/sys/f90-mod/ftn-auto-interfaces/petscsys.h90,6073
 petscsys.h90:^?petscsys.h90^A,1
       subroutine PetscBagSetFromOptions(1,0
       subroutine PetscMatlabEngineDestroy(5,143
@@ -21562,29 +21562,29 @@
       subroutine PetscObjectGetClassId(199,7250
       subroutine PetscObjectGetId(204,7436
       subroutine PetscObjectCompareId(209,7614
-      subroutine PetscObjectSetPrintedOptions(215,7833
-      subroutine PetscObjectInheritPrintedOptions(219,7994
-      subroutine PetscObjectSetFromOptions(224,8200
-      subroutine PetscObjectSetUp(228,8355
-      subroutine PetscInitialized(232,8492
-      subroutine PetscFinalized(236,8625
-      subroutine PetscSubcommSetFromOptions(240,8754
-      subroutine PetscSubcommSetNumber(245,8941
-      subroutine PetscSubcommSetType(251,9149
-      subroutine PetscSubcommSetTypeGeneral(257,9369
-      subroutine PetscSubcommDestroy(264,9630
-      subroutine PetscSubcommCreate(269,9803
-      subroutine PetscCommGetNewTag(275,10005
-      subroutine PetscObjectDestroy(280,10177
-      subroutine PetscObjectGetTabLevel(284,10318
-      subroutine PetscObjectSetTabLevel(289,10498
-      subroutine PetscObjectIncrementTabLevel(294,10678
-      subroutine PetscOptionsCreate(300,10907
-      subroutine PetscOptionsDestroy(305,11078
-      subroutine PetscOptionsPush(310,11251
-      subroutine PetscOptionsPop(315,11418
-      subroutine PetscOptionsAllUsed(318,11516
-      subroutine PetscOptionsLeft(324,11720
+      subroutine PetscSubcommSetFromOptions(215,7833
+      subroutine PetscSubcommSetNumber(220,8020
+      subroutine PetscSubcommSetType(226,8228
+      subroutine PetscSubcommSetTypeGeneral(232,8448
+      subroutine PetscSubcommDestroy(239,8709
+      subroutine PetscSubcommCreate(244,8882
+      subroutine PetscCommGetNewTag(250,9084
+      subroutine PetscObjectGetTabLevel(255,9256
+      subroutine PetscObjectSetTabLevel(260,9436
+      subroutine PetscObjectIncrementTabLevel(265,9616
+      subroutine PetscOptionsCreate(271,9845
+      subroutine PetscOptionsDestroy(276,10016
+      subroutine PetscOptionsPush(281,10189
+      subroutine PetscOptionsPop(286,10356
+      subroutine PetscOptionsAllUsed(289,10454
+      subroutine PetscOptionsLeft(295,10658
+      subroutine PetscObjectDestroy(300,10825
+      subroutine PetscObjectSetPrintedOptions(304,10966
+      subroutine PetscObjectInheritPrintedOptions(308,11127
+      subroutine PetscObjectSetFromOptions(313,11333
+      subroutine PetscObjectSetUp(317,11488
+      subroutine PetscInitialized(321,11625
+      subroutine PetscFinalized(325,11758
       subroutine PetscElementalInitializePackage(329,11887
       subroutine PetscElementalInitialized(332,12017
       subroutine PetscElementalFinalizePackage(336,12168
@@ -21592,52 +21592,52 @@
       subroutine PetscCommBuildTwoSidedSetType(343,12435
       subroutine PetscCommBuildTwoSidedGetType(348,12651
       subroutine PetscSleep(353,12867
-      subroutine PetscSplitOwnershipBlock(357,12988
-      subroutine PetscSplitOwnership(364,13228
-      subroutine PetscSplitOwnershipEqual(370,13427
-      subroutine PetscSortedReal(376,13636
-      subroutine PetscSortReal(382,13835
-      subroutine PetscSortRealWithArrayInt(387,13997
-      subroutine PetscFindReal(393,14218
-      subroutine PetscSortRemoveDupsReal(401,14477
-      subroutine PetscSortSplit(406,14659
-      subroutine PetscSortSplitReal(413,14893
-      subroutine PetscSortedInt(420,15131
-      subroutine PetscSortedInt64(426,15326
-      subroutine PetscSortInt(432,15529
-      subroutine PetscSortInt64(437,15687
-      subroutine PetscSortCount(442,15853
-      subroutine PetscSortReverseInt(447,16019
-      subroutine PetscSortedRemoveDupsInt(452,16191
-      subroutine PetscSortedCheckDupsInt(457,16373
-      subroutine PetscSortRemoveDupsInt(463,16586
-      subroutine PetscFindInt(468,16764
-      subroutine PetscCheckDupsInt(475,16984
-      subroutine PetscFindMPIInt(481,17185
-      subroutine PetscSortIntWithArray(488,17423
-      subroutine PetscSortIntWithArrayPair(494,17634
-      subroutine PetscSortIntWithCountArray(501,17888
-      subroutine PetscSortIntWithIntCountArrayPair(507,18117
-      subroutine PetscSortedMPIInt(514,18395
-      subroutine PetscSortMPIInt(520,18602
-      subroutine PetscSortRemoveDupsMPIInt(525,18772
-      subroutine PetscSortMPIIntWithArray(530,18962
-      subroutine PetscSortMPIIntWithIntArray(536,19197
-      subroutine PetscSortIntWithScalarArray(542,19432
-      subroutine PetscMergeIntArray(548,19661
-      subroutine PetscMergeIntArrayPair(557,19959
-      subroutine PetscMergeMPIIntArray(569,20366
-      subroutine PetscParallelSortedInt(578,20688
-      subroutine PetscSortIntWithPermutation(585,20930
-      subroutine PetscSortRealWithPermutation(591,21153
-      subroutine PetscIntSortSemiOrdered(597,21380
-      subroutine PetscIntSortSemiOrderedWithArray(602,21560
-      subroutine PetscMPIIntSortSemiOrdered(608,21793
-      subroutine PetscMPIIntSortSemiOrderedWithArray(613,21985
-      subroutine PetscRealSortSemiOrdered(619,22236
-      subroutine PetscRealSortSemiOrderedWithArrayInt(624,22420
-      subroutine PetscSequentialPhaseBegin(630,22663
-      subroutine PetscSequentialPhaseEnd(635,22837
+      subroutine PetscSortedReal(357,12988
+      subroutine PetscSortReal(363,13187
+      subroutine PetscSortRealWithArrayInt(368,13349
+      subroutine PetscFindReal(374,13570
+      subroutine PetscSortRemoveDupsReal(382,13829
+      subroutine PetscSortSplit(387,14011
+      subroutine PetscSortSplitReal(394,14245
+      subroutine PetscSortIntWithPermutation(401,14483
+      subroutine PetscSortRealWithPermutation(407,14706
+      subroutine PetscIntSortSemiOrdered(413,14933
+      subroutine PetscIntSortSemiOrderedWithArray(418,15113
+      subroutine PetscMPIIntSortSemiOrdered(424,15346
+      subroutine PetscMPIIntSortSemiOrderedWithArray(429,15538
+      subroutine PetscRealSortSemiOrdered(435,15789
+      subroutine PetscRealSortSemiOrderedWithArrayInt(440,15973
+      subroutine PetscSequentialPhaseBegin(446,16216
+      subroutine PetscSequentialPhaseEnd(451,16390
+      subroutine PetscSplitOwnershipBlock(456,16560
+      subroutine PetscSplitOwnership(463,16800
+      subroutine PetscSplitOwnershipEqual(469,16999
+      subroutine PetscSortedInt(475,17208
+      subroutine PetscSortedInt64(481,17403
+      subroutine PetscSortInt(487,17606
+      subroutine PetscSortInt64(492,17764
+      subroutine PetscSortCount(497,17930
+      subroutine PetscSortReverseInt(502,18096
+      subroutine PetscSortedRemoveDupsInt(507,18268
+      subroutine PetscSortedCheckDupsInt(512,18450
+      subroutine PetscSortRemoveDupsInt(518,18663
+      subroutine PetscFindInt(523,18841
+      subroutine PetscCheckDupsInt(530,19061
+      subroutine PetscFindMPIInt(536,19262
+      subroutine PetscSortIntWithArray(543,19500
+      subroutine PetscSortIntWithArrayPair(549,19711
+      subroutine PetscSortIntWithCountArray(556,19965
+      subroutine PetscSortIntWithIntCountArrayPair(562,20194
+      subroutine PetscSortedMPIInt(569,20472
+      subroutine PetscSortMPIInt(575,20679
+      subroutine PetscSortRemoveDupsMPIInt(580,20849
+      subroutine PetscSortMPIIntWithArray(585,21039
+      subroutine PetscSortMPIIntWithIntArray(591,21274
+      subroutine PetscSortIntWithScalarArray(597,21509
+      subroutine PetscMergeIntArray(603,21738
+      subroutine PetscMergeIntArrayPair(612,22036
+      subroutine PetscMergeMPIIntArray(624,22443
+      subroutine PetscParallelSortedInt(633,22765
 
 src/sys/error/err.c,1291
 err.c:^?err.c^A,1
@@ -21877,9 +21877,9 @@
 PetscErrorCode PetscDLLibraryOpen(123,3812
 #define PETSC_USE_NONEXECUTABLE_SO142,4631
 PetscErrorCode PetscDLLibrarySym(213,7405
-PetscErrorCode PetscDLLibraryAppend(315,10642
-PetscErrorCode PetscDLLibraryPrepend(397,13247
-PetscErrorCode PetscDLLibraryClose(479,15878
+PetscErrorCode PetscDLLibraryAppend(315,10643
+PetscErrorCode PetscDLLibraryPrepend(397,13248
+PetscErrorCode PetscDLLibraryClose(479,15879
 
 src/sys/dll/dlimpl.c,423
 dlimpl.c:^?dlimpl.c^A,1
@@ -22206,19 +22206,19 @@
 
 src/sys/classes/viewer/impls/vtk/vtkv.c,658
 vtkv.c:^?vtkv.c^A,1
-PetscErrorCode PetscViewerVTKAddField(40,1328
-PetscErrorCode PetscViewerVTKGetDM(63,2389
-static PetscErrorCode PetscViewerDestroy_VTK(71,2670
-static PetscErrorCode PetscViewerFlush_VTK(87,3488
-PetscErrorCode PetscViewerFileSetName_VTK(106,4152
-PetscErrorCode PetscViewerFileGetName_VTK(141,6403
-PetscErrorCode PetscViewerFileSetMode_VTK(149,6620
-PetscErrorCode PetscViewerFileGetMode_VTK(158,6835
-PetscErrorCode PetscViewerVTKAddField_VTK(167,7052
-PetscErrorCode PetscViewerVTKGetDM_VTK(193,8078
-PETSC_EXTERN PetscErrorCode PetscViewerCreate_VTK(213,8957
-PetscErrorCode PetscViewerVTKOpen(257,10747
-PetscErrorCode PetscViewerVTKFWrite(286,11746
+PetscErrorCode PetscViewerVTKAddField(40,1329
+PetscErrorCode PetscViewerVTKGetDM(63,2390
+static PetscErrorCode PetscViewerDestroy_VTK(71,2671
+static PetscErrorCode PetscViewerFlush_VTK(87,3489
+PetscErrorCode PetscViewerFileSetName_VTK(106,4153
+PetscErrorCode PetscViewerFileGetName_VTK(141,6404
+PetscErrorCode PetscViewerFileSetMode_VTK(149,6621
+PetscErrorCode PetscViewerFileGetMode_VTK(158,6836
+PetscErrorCode PetscViewerVTKAddField_VTK(167,7053
+PetscErrorCode PetscViewerVTKGetDM_VTK(193,8079
+PETSC_EXTERN PetscErrorCode PetscViewerCreate_VTK(213,8958
+PetscErrorCode PetscViewerVTKOpen(257,10748
+PetscErrorCode PetscViewerVTKFWrite(286,11747
 
 src/sys/classes/viewer/impls/vtk/vtkvimpl.h,956
 vtkvimpl.h:^?vtkvimpl.h^A,1
@@ -22570,35 +22570,35 @@
 PetscErrorCode PetscViewerHDF5SetDefaultTimestepping(503,19571
 PetscErrorCode PetscViewerHDF5GetDefaultTimestepping(526,20332
 PETSC_EXTERN PetscErrorCode PetscViewerCreate_HDF5(545,21300
-PetscErrorCode PetscViewerHDF5Open(622,25441
-PetscErrorCode PetscViewerHDF5GetFileId(648,26173
-PetscErrorCode PetscViewerHDF5PushGroup(689,27650
-PetscErrorCode PetscViewerHDF5PopGroup(740,29308
-PetscErrorCode PetscViewerHDF5GetGroup_Internal(755,29867
-PetscErrorCode PetscViewerHDF5OpenGroup(792,31200
-PetscErrorCode PetscViewerHDF5WriteGroup(836,33201
-PetscErrorCode PetscViewerHDF5PushTimestepping(871,34887
-PetscErrorCode PetscViewerHDF5PopTimestepping(898,35882
-PetscErrorCode PetscViewerHDF5IsTimestepping(927,36926
-PetscErrorCode PetscViewerHDF5IncrementTimestep(952,37749
-PetscErrorCode PetscViewerHDF5SetTimestep(979,38764
-PetscErrorCode PetscViewerHDF5GetTimestep(1010,40019
-PetscErrorCode PetscDataTypeToHDF5DataType(1037,40877
-PetscErrorCode PetscHDF5DataTypeToPetscDataType(1074,42163
-PetscErrorCode PetscViewerHDF5WriteAttribute(1114,43771
-PetscErrorCode PetscViewerHDF5WriteObjectAttribute(1173,46364
-PetscErrorCode PetscViewerHDF5ReadAttribute(1216,48290
-PetscErrorCode PetscViewerHDF5ReadObjectAttribute(1290,51490
-static inline PetscErrorCode PetscViewerHDF5Traverse_Inner_Internal(1302,52027
-static PetscErrorCode PetscViewerHDF5Traverse_Internal(1319,52634
-PetscErrorCode PetscViewerHDF5HasGroup(1400,55410
-PetscErrorCode PetscViewerHDF5HasDataset(1439,56753
-PetscErrorCode PetscViewerHDF5HasObject(1476,58020
-PetscErrorCode PetscViewerHDF5HasAttribute(1510,59274
-PetscErrorCode PetscViewerHDF5HasObjectAttribute(1547,60880
-static PetscErrorCode PetscViewerHDF5HasAttribute_Internal(1559,61350
-PetscMPIInt Petsc_Viewer_HDF5_keyval 1575,61908
-PetscViewer PETSC_VIEWER_HDF5_(1600,62700
+PetscErrorCode PetscViewerHDF5Open(622,25442
+PetscErrorCode PetscViewerHDF5GetFileId(648,26174
+PetscErrorCode PetscViewerHDF5PushGroup(689,27651
+PetscErrorCode PetscViewerHDF5PopGroup(740,29309
+PetscErrorCode PetscViewerHDF5GetGroup_Internal(755,29868
+PetscErrorCode PetscViewerHDF5OpenGroup(792,31201
+PetscErrorCode PetscViewerHDF5WriteGroup(836,33202
+PetscErrorCode PetscViewerHDF5PushTimestepping(871,34888
+PetscErrorCode PetscViewerHDF5PopTimestepping(898,35883
+PetscErrorCode PetscViewerHDF5IsTimestepping(927,36927
+PetscErrorCode PetscViewerHDF5IncrementTimestep(952,37750
+PetscErrorCode PetscViewerHDF5SetTimestep(979,38765
+PetscErrorCode PetscViewerHDF5GetTimestep(1010,40020
+PetscErrorCode PetscDataTypeToHDF5DataType(1037,40878
+PetscErrorCode PetscHDF5DataTypeToPetscDataType(1074,42164
+PetscErrorCode PetscViewerHDF5WriteAttribute(1114,43772
+PetscErrorCode PetscViewerHDF5WriteObjectAttribute(1173,46365
+PetscErrorCode PetscViewerHDF5ReadAttribute(1216,48291
+PetscErrorCode PetscViewerHDF5ReadObjectAttribute(1290,51491
+static inline PetscErrorCode PetscViewerHDF5Traverse_Inner_Internal(1302,52028
+static PetscErrorCode PetscViewerHDF5Traverse_Internal(1319,52635
+PetscErrorCode PetscViewerHDF5HasGroup(1400,55411
+PetscErrorCode PetscViewerHDF5HasDataset(1439,56754
+PetscErrorCode PetscViewerHDF5HasObject(1476,58021
+PetscErrorCode PetscViewerHDF5HasAttribute(1510,59275
+PetscErrorCode PetscViewerHDF5HasObjectAttribute(1547,60881
+static PetscErrorCode PetscViewerHDF5HasAttribute_Internal(1559,61351
+PetscMPIInt Petsc_Viewer_HDF5_keyval 1575,61909
+PetscViewer PETSC_VIEWER_HDF5_(1600,62701
 
 src/sys/classes/viewer/impls/hdf5/makefile,133
 makefile:^?makefile^A,1
@@ -22667,33 +22667,33 @@
 static PetscErrorCode PetscViewerGLVisInfoDestroy_Private(172,8495
 static PetscErrorCode PetscViewerGLVisAttachInfo_Private(183,8812
 static PetscErrorCode PetscViewerGLVisGetNewWindow_Private(211,10008
-PetscErrorCode PetscViewerGLVisPause_Private(230,10749
-PetscErrorCode PetscViewerGLVisSetDM_Private(240,11062
-PetscErrorCode PetscViewerGLVisGetDMWindow_Private(259,11817
-PetscErrorCode PetscViewerGLVisRestoreDMWindow_Private(291,13148
-PetscErrorCode PetscViewerGLVisGetType_Private(311,13986
-PetscErrorCode PetscViewerGLVisGetStatus_Private(322,14447
-PetscErrorCode PetscViewerGLVisGetDM_Private(344,15248
-PetscErrorCode PetscViewerGLVisGetFields_Private(353,15464
-PetscErrorCode PetscViewerGLVisGetWindow_Private(371,16288
-PetscErrorCode PetscViewerGLVisRestoreWindow_Private(427,19039
-PetscErrorCode PetscViewerGLVisInitWindow_Private(451,20301
-static PetscErrorCode PetscViewerDestroy_GLVis(512,22833
-static PetscErrorCode PetscViewerSetFromOptions_GLVis(540,24126
-static PetscErrorCode PetscViewerFileSetName_GLVis(559,25318
-PetscErrorCode PetscViewerGLVisOpen(614,27397
-PetscViewer PETSC_VIEWER_GLVIS_(656,29060
-PETSC_EXTERN PetscErrorCode PetscViewerCreate_GLVis(713,31270
-static PetscErrorCode PetscViewerDestroy_ASCII_Socket(752,32823
-static PetscErrorCode PetscViewerASCIISocketOpen(775,33745
-    #define PETSC_DEVNULL 825,35766
-    #define PETSC_DEVNULL 827,35806
-static volatile PetscBool PetscGLVisBrokenPipe 830,35854
-static void PetscGLVisSigHandler_SIGPIPE(834,35972
-PetscErrorCode PetscGLVisCollectiveBegin(842,36152
-PetscErrorCode PetscGLVisCollectiveEnd(851,36533
-PetscErrorCode PetscGLVisCollectiveBegin(873,37193
-PetscErrorCode PetscGLVisCollectiveEnd(879,37346
+PetscErrorCode PetscViewerGLVisPause_Private(230,10748
+PetscErrorCode PetscViewerGLVisSetDM_Private(240,11061
+PetscErrorCode PetscViewerGLVisGetDMWindow_Private(259,11816
+PetscErrorCode PetscViewerGLVisRestoreDMWindow_Private(291,13147
+PetscErrorCode PetscViewerGLVisGetType_Private(311,13985
+PetscErrorCode PetscViewerGLVisGetStatus_Private(322,14446
+PetscErrorCode PetscViewerGLVisGetDM_Private(344,15247
+PetscErrorCode PetscViewerGLVisGetFields_Private(353,15463
+PetscErrorCode PetscViewerGLVisGetWindow_Private(371,16287
+PetscErrorCode PetscViewerGLVisRestoreWindow_Private(427,19038
+PetscErrorCode PetscViewerGLVisInitWindow_Private(451,20300
+static PetscErrorCode PetscViewerDestroy_GLVis(512,22832
+static PetscErrorCode PetscViewerSetFromOptions_GLVis(540,24125
+static PetscErrorCode PetscViewerFileSetName_GLVis(559,25317
+PetscErrorCode PetscViewerGLVisOpen(614,27396
+PetscViewer PETSC_VIEWER_GLVIS_(656,29059
+PETSC_EXTERN PetscErrorCode PetscViewerCreate_GLVis(713,31269
+static PetscErrorCode PetscViewerDestroy_ASCII_Socket(752,32822
+static PetscErrorCode PetscViewerASCIISocketOpen(775,33744
+    #define PETSC_DEVNULL 825,35765
+    #define PETSC_DEVNULL 827,35805
+static volatile PetscBool PetscGLVisBrokenPipe 830,35853
+static void PetscGLVisSigHandler_SIGPIPE(834,35971
+PetscErrorCode PetscGLVisCollectiveBegin(842,36151
+PetscErrorCode PetscGLVisCollectiveEnd(851,36532
+PetscErrorCode PetscGLVisCollectiveBegin(873,37192
+PetscErrorCode PetscGLVisCollectiveEnd(879,37345
 
 src/sys/classes/viewer/impls/glvis/makefile,114
 makefile:^?makefile^A,1
@@ -23100,11 +23100,6 @@
 static char help[help2,1
 int main(12,301
 
-src/sys/classes/random/tests/makefile,26
-makefile:^?makefile^A,1
-LOCDIR 3,37
-MANSEC 4,85
-
 src/sys/classes/random/tests/ex3.c,134
 ex3.c:^?ex3.c^A,1
 static char help[help2,1
@@ -23112,14 +23107,10 @@
 static PetscErrorCode PoissonTailProbability(21,515
 int main(41,957
 
-src/sys/classes/random/interface/randreg.c,272
-randreg.c:^?randreg.c^A,1
-PetscFunctionList PetscRandomList 4,61
-PetscBool         PetscRandomRegisterAllCalled 5,116
-PetscErrorCode PetscRandomSetType(28,739
-PetscErrorCode PetscRandomGetType(66,1745
-PetscErrorCode PetscRandomRegister(108,2932
-PetscErrorCode PetscRandomRegisterAll(142,4007
+src/sys/classes/random/tests/makefile,26
+makefile:^?makefile^A,1
+LOCDIR 3,37
+MANSEC 4,85
 
 src/sys/classes/random/interface/randomc.c,470
 randomc.c:^?randomc.c^A,1
@@ -23131,8 +23122,17 @@
 PetscErrorCode PetscRandomSetFromOptions(162,4493
 PetscErrorCode PetscRandomViewFromOptions(216,6258
 PetscErrorCode PetscRandomView(245,7158
-PetscErrorCode PetscRandomCreate(330,10257
-PetscErrorCode PetscRandomSeed(376,11444
+PetscErrorCode PetscRandomCreate(329,10257
+PetscErrorCode PetscRandomSeed(375,11444
+
+src/sys/classes/random/interface/randreg.c,272
+randreg.c:^?randreg.c^A,1
+PetscFunctionList PetscRandomList 4,61
+PetscBool         PetscRandomRegisterAllCalled 5,116
+PetscErrorCode PetscRandomSetType(28,739
+PetscErrorCode PetscRandomGetType(66,1745
+PetscErrorCode PetscRandomRegister(108,2932
+PetscErrorCode PetscRandomRegisterAll(142,4007
 
 src/sys/classes/random/interface/random.c,284
 random.c:^?random.c^A,1
@@ -23196,7 +23196,7 @@
 PetscErrorCode PetscRandomGetValue_Sprng(17,268
 PetscErrorCode PetscRandomGetValueReal_Sprng(33,737
 static struct _PetscRandomOps PetscRandomOps_Values 46,1088
-PETSC_EXTERN PetscErrorCode PetscRandomCreate_Sprng(70,1928
+PETSC_EXTERN PetscErrorCode PetscRandomCreate_Sprng(70,1926
 
 src/sys/classes/random/impls/sprng/makefile,115
 makefile:^?makefile^A,1
@@ -23404,6 +23404,25 @@
 MANSEC 9,282
 SUBMANSEC 10,298
 
+src/sys/classes/draw/utils/axisc.c,732
+axisc.c:^?axisc.c^A,1
+#define PETSC_DRAW_AXIS_MAX_SEGMENTS 3,62
+PetscClassId PETSC_DRAWAXIS_CLASSID 4,102
+PetscErrorCode PetscDrawAxisCreate(27,1090
+PetscErrorCode PetscDrawAxisDestroy(67,2117
+PetscErrorCode PetscDrawAxisSetColors(101,3105
+PetscErrorCode PetscDrawAxisSetLabels(133,4024
+PetscErrorCode PetscDrawAxisSetLimits(163,4989
+PetscErrorCode PetscDrawAxisGetLimits(190,5870
+PetscErrorCode PetscDrawAxisSetHoldLimits(219,6871
+PetscErrorCode PetscDrawAxisDraw(246,7678
+PetscErrorCode PetscStripe0(386,13080
+PetscErrorCode PetscStripAllZeros(412,13599
+PetscErrorCode PetscStripTrailingZeros(430,13935
+PetscErrorCode PetscStripInitialZero(461,14685
+PetscErrorCode PetscStripZeros(478,15075
+PetscErrorCode PetscStripZerosPlus(498,15538
+
 src/sys/classes/draw/utils/lgc.c,816
 lgc.c:^?lgc.c^A,1
 PetscClassId PETSC_DRAWLG_CLASSID 4,87
@@ -23501,25 +23520,6 @@
 PetscErrorCode PetscDrawBarGetDraw(357,10912
 PetscErrorCode PetscDrawBarSetFromOptions(381,11571
 
-src/sys/classes/draw/utils/axisc.c,732
-axisc.c:^?axisc.c^A,1
-#define PETSC_DRAW_AXIS_MAX_SEGMENTS 3,62
-PetscClassId PETSC_DRAWAXIS_CLASSID 4,102
-PetscErrorCode PetscDrawAxisCreate(27,1090
-PetscErrorCode PetscDrawAxisDestroy(67,2117
-PetscErrorCode PetscDrawAxisSetColors(101,3105
-PetscErrorCode PetscDrawAxisSetLabels(133,4024
-PetscErrorCode PetscDrawAxisSetLimits(163,4989
-PetscErrorCode PetscDrawAxisGetLimits(190,5870
-PetscErrorCode PetscDrawAxisSetHoldLimits(219,6871
-PetscErrorCode PetscDrawAxisDraw(246,7678
-PetscErrorCode PetscStripe0(386,13081
-PetscErrorCode PetscStripAllZeros(412,13600
-PetscErrorCode PetscStripTrailingZeros(430,13936
-PetscErrorCode PetscStripInitialZero(461,14686
-PetscErrorCode PetscStripZeros(478,15076
-PetscErrorCode PetscStripZerosPlus(498,15539
-
 src/sys/classes/draw/utils/zoom.c,37
 zoom.c:^?zoom.c^A,1
 PetscErrorCode PetscDrawZoom(18,431
@@ -23928,19 +23928,6 @@
 PetscErrorCode PetscDrawInterpolatedTriangle_X(11,269
 #define SWAP(32,1031
 
-src/sys/classes/draw/impls/x/xtext.c,350
-xtext.c:^?xtext.c^A,1
-PetscErrorCode PetscDrawXiFontFixed(20,641
-#define NFONTS 36,1110
-  int w,38,1144
-  int w, h,38,1144
-  int w, h, descent;38,1144
-} nfonts[nfonts39,1165
-static int act_nfonts 40,1183
-static PetscErrorCode PetscDrawXiLoadFont(47,1321
-static PetscErrorCode PetscDrawXiInitFonts(73,2243
-static PetscErrorCode PetscDrawXiMatchFontSize(120,3707
-
 src/sys/classes/draw/impls/x/xops.c,1671
 xops.c:^?xops.c^A,1
 #define XTRANS(10,241
@@ -23977,6 +23964,36 @@
 static PetscErrorCode PetscDrawXGetDisplaySize_Private(612,23101
 PETSC_EXTERN PetscErrorCode PetscDrawCreate_X(652,24707
 
+src/sys/classes/draw/impls/x/xcolor.c,703
+xcolor.c:^?xcolor.c^A,1
+static const char *colornames[colornames12,319
+static Colormap          gColormap 34,1713
+static PetscDrawXiPixVal gCmapping[gCmapping35,1753
+static unsigned char     gCpalette[gCpalette36,1810
+PetscErrorCode PetscDrawSetUpColormap_Shared(38,1871
+static PetscBool cmap_pixvalues_used[cmap_pixvalues_used85,3792
+static int       cmap_base 86,3851
+PetscErrorCode PetscDrawSetUpColormap_Private(88,3884
+PetscErrorCode PetscDrawSetUpColormap_X(160,7064
+PetscErrorCode PetscDrawSetColormap_X(185,8196
+PetscErrorCode PetscDrawXiColormap(202,9057
+PetscErrorCode PetscDrawXiSetVisualClass(226,9711
+PetscErrorCode PetscDrawXiSetColormap(243,10303
+PetscErrorCode PetscDrawXiGetPalette(253,10527
+
+src/sys/classes/draw/impls/x/xtext.c,350
+xtext.c:^?xtext.c^A,1
+PetscErrorCode PetscDrawXiFontFixed(20,641
+#define NFONTS 36,1110
+  int w,38,1144
+  int w, h,38,1144
+  int w, h, descent;38,1144
+} nfonts[nfonts39,1165
+static int act_nfonts 40,1183
+static PetscErrorCode PetscDrawXiLoadFont(47,1321
+static PetscErrorCode PetscDrawXiInitFonts(73,2243
+static PetscErrorCode PetscDrawXiMatchFontSize(120,3707
+
 src/sys/classes/draw/impls/x/xioerr.c,133
 xioerr.c:^?xioerr.c^A,1
 jmp_buf PetscXIOErrorHandlerJumpBuf;5,108
@@ -24043,23 +24060,6 @@
 static inline int PetscDrawXiPixelToColor(44,1120
 PetscErrorCode PetscDrawGetImage_X(60,1645
 
-src/sys/classes/draw/impls/x/xcolor.c,703
-xcolor.c:^?xcolor.c^A,1
-static const char *colornames[colornames12,319
-static Colormap          gColormap 34,1713
-static PetscDrawXiPixVal gCmapping[gCmapping35,1753
-static unsigned char     gCpalette[gCpalette36,1810
-PetscErrorCode PetscDrawSetUpColormap_Shared(38,1871
-static PetscBool cmap_pixvalues_used[cmap_pixvalues_used85,3792
-static int       cmap_base 86,3851
-PetscErrorCode PetscDrawSetUpColormap_Private(88,3884
-PetscErrorCode PetscDrawSetUpColormap_X(160,7064
-PetscErrorCode PetscDrawSetColormap_X(185,8196
-PetscErrorCode PetscDrawXiColormap(202,9057
-PetscErrorCode PetscDrawXiSetVisualClass(226,9711
-PetscErrorCode PetscDrawXiSetColormap(243,10303
-PetscErrorCode PetscDrawXiGetPalette(253,10527
-
 src/sys/classes/draw/impls/x/makefile,134
 makefile:^?makefile^A,1
 CPPFLAGS 4,72
@@ -24108,39 +24108,39 @@
 unsigned char RedMap[RedMap33,1202
 unsigned char GreenMap[GreenMap34,1375
 unsigned char BlueMap[BlueMap35,1552
-static PetscErrorCode PetscDrawSetDoubleBuffer_Win32(48,2354
-static PetscErrorCode PetscDrawFlush_Win32(67,3242
-static PetscErrorCode deletemouselist_Win32(81,3783
-static PetscErrorCode PetscDrawGetMouseButton_Win32(98,4409
-static PetscErrorCode PetscDrawPause_Win32(143,6099
-static PetscErrorCode TranslateColor_Win32(150,6238
-static PetscErrorCode AverageColorRectangle_Win32(158,6533
-static PetscErrorCode AverageColorTriangle_Win32(167,7082
-static PetscErrorCode PetscDrawRectangle_Win32(176,7574
-static PetscErrorCode PetscDrawLine_Win32(204,8588
-static PetscErrorCode PetscDrawLineSetWidth_Win32(230,9488
-static PetscErrorCode PetscDrawLineGetWidth_Win32(246,10044
-static PetscErrorCode PetscDrawPoint_Win32(255,10284
-static PetscErrorCode PetscDrawPointSetSize_Win32(286,11412
-static PetscErrorCode PetscDrawString_Win32(301,11919
-static PetscErrorCode PetscDrawStringVertical_Win32(347,13390
-static PetscErrorCode PetscDrawStringSetSize_Win32(393,14943
-static PetscErrorCode PetscDrawStringGetSize_Win32(407,15488
-static PetscErrorCode PetscDrawResizeWindow_Win32(419,16047
-static PetscErrorCode PetscDrawCheckResizedWindow_Win32(437,16791
-static PetscErrorCode PetscDrawSetTitle_Win32(446,17106
-static PetscErrorCode PetscDrawClear_Win32(455,17341
-static PetscErrorCode PetscDrawTriangle_Win32(471,17913
-void PopMessageLoopThread_Win32(508,19174
-static PetscErrorCode PetscDrawDestroy_Win32(566,20877
-void MessageLoopThread_Win32(576,21125
-static struct _PetscDrawOps DvOps 622,22576
-static PetscErrorCode PetscDrawGetPopup_Win32(624,23222
-PETSC_EXTERN PetscErrorCode PetscDrawCreate_Win32(640,23827
-LRESULT CALLBACK PetscWndProc(703,26197
-static void OnPaint_Win32(736,26996
-static PetscErrorCode MouseRecord_Win32(763,27706
-static void OnDestroy_Win32(804,28909
+static PetscErrorCode PetscDrawSetDoubleBuffer_Win32(48,2355
+static PetscErrorCode PetscDrawFlush_Win32(67,3243
+static PetscErrorCode deletemouselist_Win32(81,3784
+static PetscErrorCode PetscDrawGetMouseButton_Win32(98,4410
+static PetscErrorCode PetscDrawPause_Win32(143,6100
+static PetscErrorCode TranslateColor_Win32(150,6239
+static PetscErrorCode AverageColorRectangle_Win32(158,6534
+static PetscErrorCode AverageColorTriangle_Win32(167,7083
+static PetscErrorCode PetscDrawRectangle_Win32(176,7575
+static PetscErrorCode PetscDrawLine_Win32(204,8589
+static PetscErrorCode PetscDrawLineSetWidth_Win32(230,9489
+static PetscErrorCode PetscDrawLineGetWidth_Win32(246,10045
+static PetscErrorCode PetscDrawPoint_Win32(255,10285
+static PetscErrorCode PetscDrawPointSetSize_Win32(286,11413
+static PetscErrorCode PetscDrawString_Win32(301,11920
+static PetscErrorCode PetscDrawStringVertical_Win32(347,13391
+static PetscErrorCode PetscDrawStringSetSize_Win32(393,14944
+static PetscErrorCode PetscDrawStringGetSize_Win32(407,15489
+static PetscErrorCode PetscDrawResizeWindow_Win32(419,16048
+static PetscErrorCode PetscDrawCheckResizedWindow_Win32(437,16792
+static PetscErrorCode PetscDrawSetTitle_Win32(446,17107
+static PetscErrorCode PetscDrawClear_Win32(455,17342
+static PetscErrorCode PetscDrawTriangle_Win32(471,17914
+void PopMessageLoopThread_Win32(508,19175
+static PetscErrorCode PetscDrawDestroy_Win32(566,20878
+void MessageLoopThread_Win32(576,21126
+static struct _PetscDrawOps DvOps 622,22577
+static PetscErrorCode PetscDrawGetPopup_Win32(624,23223
+PETSC_EXTERN PetscErrorCode PetscDrawCreate_Win32(640,23828
+LRESULT CALLBACK PetscWndProc(703,26198
+static void OnPaint_Win32(736,26997
+static PetscErrorCode MouseRecord_Win32(763,27707
+static void OnDestroy_Win32(804,28910
 
 src/sys/classes/draw/impls/win32/win32draw.h,1499
 win32draw.h:^?win32draw.h^A,1
@@ -24217,16 +24217,16 @@
 #define XTRANS(68,2067
 #define YTRANS(69,2223
 static PetscErrorCode PetscDrawClear_TikZ(71,2380
-static PetscErrorCode PetscDrawLine_TikZ(86,3031
-static PetscErrorCode PetscDrawRectangle_TikZ(96,3487
-static PetscErrorCode PetscDrawTriangle_TikZ(106,4024
-static PetscErrorCode PetscDrawEllipse_TikZ(116,4591
-static PetscErrorCode PetscDrawString_TikZ(129,5269
-static PetscErrorCode PetscDrawStringVertical_TikZ(139,5699
-static PetscErrorCode PetscDrawStringBoxed_TikZ(157,6425
-static PetscErrorCode PetscDrawStringGetSize_TikZ(173,7069
-static struct _PetscDrawOps DvOps 181,7395
-PETSC_EXTERN PetscErrorCode PetscDrawCreate_TikZ(183,7834
+static PetscErrorCode PetscDrawLine_TikZ(86,3032
+static PetscErrorCode PetscDrawRectangle_TikZ(96,3488
+static PetscErrorCode PetscDrawTriangle_TikZ(106,4025
+static PetscErrorCode PetscDrawEllipse_TikZ(116,4592
+static PetscErrorCode PetscDrawString_TikZ(129,5270
+static PetscErrorCode PetscDrawStringVertical_TikZ(139,5700
+static PetscErrorCode PetscDrawStringBoxed_TikZ(157,6426
+static PetscErrorCode PetscDrawStringGetSize_TikZ(173,7070
+static struct _PetscDrawOps DvOps 181,7396
+PETSC_EXTERN PetscErrorCode PetscDrawCreate_TikZ(183,7835
 
 src/sys/classes/draw/impls/tikz/makefile,113
 makefile:^?makefile^A,1
@@ -24273,17 +24273,6 @@
 PetscErrorCode PetscDrawOpenNull(190,6616
 PetscErrorCode PetscDrawIsNull(213,7200
 
-src/sys/classes/draw/impls/image/makefile,115
-makefile:^?makefile^A,1
-SOURCEC 3,40
-SOURCEF 4,64
-SOURCEH 5,76
-MANSEC 6,100
-SUBMANSEC 7,116
-LIBBASE 8,133
-DIRS 9,157
-LOCDIR 10,169
-
 src/sys/classes/draw/impls/image/drawimage.h,899
 drawimage.h:^?drawimage.h^A,1
 #define _PETSCIMAGE_H2,22
@@ -24304,10 +24293,21 @@
 static inline void PetscImageDrawTriangle(109,3423
 #define SWAP(130,4261
 #undef SWAP152,4621
-#define PetscImageFontWidth 238,7259
-#define PetscImageFontHeight 239,7290
-static const unsigned char PetscImageFontBitmap[PetscImageFontBitmap240,7322
-static inline void PetscImageDrawText(339,14311
+#define PetscImageFontWidth 238,7260
+#define PetscImageFontHeight 239,7291
+static const unsigned char PetscImageFontBitmap[PetscImageFontBitmap240,7323
+static inline void PetscImageDrawText(339,14312
+
+src/sys/classes/draw/impls/image/makefile,115
+makefile:^?makefile^A,1
+SOURCEC 3,40
+SOURCEF 4,64
+SOURCEH 5,76
+MANSEC 6,100
+SUBMANSEC 7,116
+LIBBASE 8,133
+DIRS 9,157
+LOCDIR 10,169
 
 src/sys/classes/draw/impls/image/drawimage.c,2259
 drawimage.c:^?drawimage.c^A,1
@@ -24374,14 +24374,14 @@
 PetscErrorCode PetscBagDestroy(533,21161
 PetscErrorCode PetscBagSetFromOptions(570,22274
 PetscErrorCode PetscBagView(648,25537
-PetscErrorCode PetscBagViewFromOptions(765,31892
-PetscErrorCode PetscBagLoad(809,33390
-PetscErrorCode PetscBagCreate(891,37776
-PetscErrorCode PetscBagSetName(923,38948
-PetscErrorCode PetscBagGetName(951,39859
-PetscErrorCode PetscBagGetData(978,40728
-PetscErrorCode PetscBagSetOptionsPrefix(1005,41510
-PetscErrorCode PetscBagGetNames(1035,42537
+PetscErrorCode PetscBagViewFromOptions(765,31893
+PetscErrorCode PetscBagLoad(809,33391
+PetscErrorCode PetscBagCreate(891,37777
+PetscErrorCode PetscBagSetName(923,38949
+PetscErrorCode PetscBagGetName(951,39860
+PetscErrorCode PetscBagGetData(978,40729
+PetscErrorCode PetscBagSetOptionsPrefix(1005,41511
+PetscErrorCode PetscBagGetNames(1035,42538
 
 src/sys/classes/bag/makefile,97
 makefile:^?makefile^A,1
@@ -24722,16 +24722,264 @@
 static PetscErrorCode sourlf3d(103,4593
 PETSC_EXTERN void dmdasnessetfunctionlocal_(115,5168
 
-src/snes/tutorials/ex5f90.F90,373
-ex5f90.F90:^?ex5f90.F90^A,1
-      subroutine FormFunction(68,2284
-        Subroutine SNESSetApplicationContext(123,4232
-        Subroutine SNESGetApplicationContext(132,4507
-      subroutine FormInitialGuess(326,12720
-      subroutine InitialGuessLocal(379,14252
-      subroutine FormFunctionLocal(430,15518
-      subroutine FormJacobian(515,18265
-      subroutine FormJacobianLocal(606,21521
+src/snes/tutorials/ex73f90t.F90,374
+ex73f90t.F90:^?ex73f90t.F90^A,1
+        Subroutine SNESSetApplicationContext(63,2147
+        Subroutine SNESGetApplicationContext(74,2505
+      subroutine FormInitialGuess(379,15090
+      subroutine InitialGuessLocal(428,16521
+      subroutine FormJacobian(482,18039
+      subroutine FormJacobianLocal(540,20040
+      subroutine FormFunction(624,22521
+      subroutine FormFunctionNLTerm(676,24396
+
+src/snes/tutorials/ex6.c,316
+ex6.c:^?ex6.c^A,1
+static char help[help2,1
+  PetscViewer viewer;20,585
+} ReasonViewCtx;21,607
+int main(23,625
+PetscErrorCode FormInitialGuess(158,5784
+PetscErrorCode FormFunction(183,6433
+PetscErrorCode FormJacobian(234,7803
+PetscErrorCode MySNESConvergedReasonView(296,9100
+PetscErrorCode MyKSPConvergedReasonView(316,9869
+
+src/snes/tutorials/ex30.c,4597
+ex30.c:^?ex30.c^A,1
+static const char help[help1,0
+#define VISC_CONST 58,2744
+#define VISC_DIFN 59,2767
+#define VISC_DISL 60,2790
+#define VISC_FULL 61,2813
+#define CELL_CENTER 62,2836
+#define CELL_CORNER 63,2859
+#define BC_ANALYTIC 64,2882
+#define BC_NOSTRESS 65,2905
+#define BC_EXPERMNT 66,2928
+#define ADVECT_FV 67,2951
+#define ADVECT_FROMM 68,2974
+#define PLATE_SLAB 69,2997
+#define PLATE_LID 70,3020
+#define EPS_ZERO 71,3043
+  PetscScalar u,74,3136
+  PetscScalar u, w,74,3136
+  PetscScalar u, w, p,74,3136
+  PetscScalar u, w, p, T;74,3136
+} Field;75,3162
+  PetscReal A,78,3234
+  PetscReal A, n,78,3234
+  PetscReal A, n, Estar,78,3234
+  PetscReal A, n, Estar, Vstar;78,3234
+} ViscParam;79,3266
+  PetscReal width,82,3341
+  PetscReal width, depth,82,3341
+  PetscReal width, depth, scaled_width,82,3341
+  PetscReal width, depth, scaled_width, scaled_depth,82,3341
+  PetscReal width, depth, scaled_width, scaled_depth, peclet,82,3341
+  PetscReal width, depth, scaled_width, scaled_depth, peclet, potentialT;82,3341
+  PetscReal slab_dip,83,3415
+  PetscReal slab_dip, slab_age,83,3415
+  PetscReal slab_dip, slab_age, slab_velocity,83,3415
+  PetscReal slab_dip, slab_age, slab_velocity, kappa,83,3415
+  PetscReal slab_dip, slab_age, slab_velocity, kappa, z_scale;83,3415
+  PetscReal c,84,3478
+  PetscReal c, d,84,3478
+  PetscReal c, d, sb,84,3478
+  PetscReal c, d, sb, cb,84,3478
+  PetscReal c, d, sb, cb, skt,84,3478
+  PetscReal c, d, sb, cb, skt, visc_cutoff,84,3478
+  PetscReal c, d, sb, cb, skt, visc_cutoff, lid_age,84,3478
+  PetscReal c, d, sb, cb, skt, visc_cutoff, lid_age, eta0,84,3478
+  PetscReal c, d, sb, cb, skt, visc_cutoff, lid_age, eta0, continuation;84,3478
+  PetscReal L,85,3551
+  PetscReal L, V,85,3551
+  PetscReal L, V, lid_depth,85,3551
+  PetscReal L, V, lid_depth, fault_depth;85,3551
+  ViscParam diffusion,86,3593
+  ViscParam diffusion, dislocation;86,3593
+  PetscInt  ivisc,87,3629
+  PetscInt  ivisc, adv_scheme,87,3629
+  PetscInt  ivisc, adv_scheme, ibound,87,3629
+  PetscInt  ivisc, adv_scheme, ibound, output_ivisc;87,3629
+  PetscBool quiet,88,3682
+  PetscBool quiet, param_test,88,3682
+  PetscBool quiet, param_test, output_to_file,88,3682
+  PetscBool quiet, param_test, output_to_file, pv_analytic;88,3682
+  PetscBool interrupted,89,3742
+  PetscBool interrupted, stop_solve,89,3742
+  PetscBool interrupted, stop_solve, toggle_kspmon,89,3742
+  PetscBool interrupted, stop_solve, toggle_kspmon, kspmon;89,3742
+  char      filename[filename90,3802
+} Parameter;91,3844
+  DMBoundaryType  bx,94,3897
+  DMBoundaryType  bx, by;94,3897
+  DMDAStencilType stencil;95,3923
+  PetscInt        corner,96,3950
+  PetscInt        corner, ni,96,3950
+  PetscInt        corner, ni, nj,96,3950
+  PetscInt        corner, ni, nj, jlid,96,3950
+  PetscInt        corner, ni, nj, jlid, jfault,96,3950
+  PetscInt        corner, ni, nj, jlid, jfault, inose;96,3950
+  PetscInt        dof,97,4005
+  PetscInt        dof, stencil_width,97,4005
+  PetscInt        dof, stencil_width, mglevels;97,4005
+  PetscReal       dx,98,4053
+  PetscReal       dx, dz;98,4053
+} GridInfo;99,4079
+  Vec        x,102,4135
+  Vec        x, Xguess;102,4135
+  Parameter *param;param103,4159
+  GridInfo  *grid;grid104,4179
+} AppCtx;105,4198
+int main(123,4937
+PetscErrorCode UpdateSolution(209,8608
+static inline PetscScalar UInterp(285,11478
+static inline PetscScalar WInterp(290,11633
+static inline PetscScalar PInterp(295,11788
+static inline PetscScalar TInterp(300,11943
+static inline PetscScalar HorizVelocity(306,12141
+static inline PetscScalar VertVelocity(323,12678
+static inline PetscScalar Pressure(341,13215
+static inline PetscScalar CalcSecInv(356,13675
+static inline PetscScalar Viscosity(421,15239
+static inline PetscScalar XMomentumResidual(463,16990
+static inline PetscScalar ZMomentumResidual(514,19180
+static inline PetscScalar ContinuityResidual(569,21473
+static inline PetscScalar EnergyResidual(585,21867
+static inline PetscScalar ShearStress(644,24260
+static inline PetscScalar XNormalStress(678,25151
+static inline PetscScalar ZNormalStress(717,26444
+PetscErrorCode SetParams(760,27970
+PetscErrorCode ReportParams(894,34478
+PetscErrorCode Initialize(960,38625
+PetscErrorCode DoOutput(1003,39816
+PetscErrorCode ViscosityField(1091,43668
+PetscErrorCode StressField(1150,45709
+static inline PetscScalar SlabVel(1191,47215
+static inline PetscScalar PlateModel(1209,47687
+PetscErrorCode SNESConverged_Interactive(1228,48421
+PetscErrorCode InteractiveHandler(1266,49987
+PetscErrorCode FormFunctionLocal(1287,50587
+
+src/snes/tutorials/ex3.c,785
+ex3.c:^?ex3.c^A,1
+static char help[help1,0
+  DM          da;45,1740
+  Vec         F;46,1785
+  PetscMPIInt rank;47,1835
+  PetscMPIInt size;48,1880
+  PetscReal   h;49,1928
+  PetscBool   sjerr;50,1968
+} ApplicationCtx;51,2035
+  PetscViewer viewer;57,2116
+} MonitorCtx;58,2138
+  Vec             last_step;65,2278
+  PetscReal       tolerance;66,2330
+  ApplicationCtx *user;user67,2415
+} StepCheckCtx;68,2439
+  PetscInt its0;71,2473
+} SetSubKSPCtx;72,2533
+int main(74,2550
+PetscErrorCode FormInitialGuess(322,11819
+PetscErrorCode FormFunction(347,12409
+PetscErrorCode FormJacobian(429,15116
+PetscErrorCode Monitor(519,17637
+PetscErrorCode PreCheck(545,18525
+PetscErrorCode PostCheck(570,19376
+PetscErrorCode PostSetSubKSP(640,22202
+PetscErrorCode MatrixFreePreconditioner(685,24097
+
+src/snes/tutorials/ex28.c,691
+ex28.c:^?ex28.c^A,1
+static const char help[help1,0
+typedef struct _UserCtx *User;User31,1404
+struct _UserCtx 32,1435
+  PetscInt ptype;33,1453
+  DM       pack;34,1471
+  Vec      Uloc,35,1488
+  Vec      Uloc, Kloc;35,1488
+static PetscErrorCode FormFunctionLocal_U(38,1515
+static PetscErrorCode FormFunctionLocal_K(52,2016
+static PetscErrorCode FormFunction_All(65,2518
+static PetscErrorCode FormJacobianLocal_U(122,4885
+static PetscErrorCode FormJacobianLocal_K(143,5672
+static PetscErrorCode FormJacobianLocal_UK(157,6160
+static PetscErrorCode FormJacobianLocal_KU(178,6891
+static PetscErrorCode FormJacobian_All(198,8001
+static PetscErrorCode FormInitial_Coupled(277,11502
+int main(302,12511
+
+src/snes/tutorials/ex19.c,495
+ex19.c:^?ex19.c^A,1
+static char help[help4,111
+  PetscScalar u,77,3154
+  PetscScalar u, v,77,3154
+  PetscScalar u, v, omega,77,3154
+  PetscScalar u, v, omega, temp;77,3154
+} Field;78,3187
+  PetscReal lidvelocity,83,3294
+  PetscReal lidvelocity, prandtl,83,3294
+  PetscReal lidvelocity, prandtl, grashof;83,3294
+  PetscBool draw_contours;84,3363
+} AppCtx;85,3448
+int main(90,3578
+PetscErrorCode FormInitialGuess(185,7273
+PetscErrorCode FormFunctionLocal(233,8614
+PetscErrorCode NonlinearGS(368,13233
+
+src/snes/tutorials/ex16.c,1591
+ex16.c:^?ex16.c^A,1
+static char help[help2,1
+#define QP0 48,2082
+#define QP1 49,2113
+#define NQ 50,2144
+#define NB 51,2158
+#define NEB 52,2172
+#define NEQ 53,2186
+#define NPB 54,2200
+#define NVALS 56,2216
+const PetscReal pts[pts57,2239
+const PetscReal wts[wts58,2277
+PetscScalar vals[vals60,2316
+PetscScalar grad[grad61,2341
+typedef PetscScalar Field[Field63,2371
+typedef PetscScalar CoordField[CoordField64,2401
+typedef PetscScalar JacField[JacField66,2437
+  PetscReal loading;74,2724
+  PetscReal mu;75,2745
+  PetscReal lambda;76,2761
+  PetscReal rad;77,2781
+  PetscReal height;78,2798
+  PetscReal width;79,2818
+  PetscReal arc;80,2837
+  PetscReal ploading;81,2854
+} AppCtx;82,2876
+int main(89,3105
+PetscInt OnBoundary(192,7509
+void BoundaryValue(198,7677
+void InvertTensor(212,8174
+void TensorTensor(248,9434
+void TensorTransposeTensor(259,9692
+void TensorVector(270,9959
+void DeformationGradient(277,10232
+void DeformationGradientJacobian(306,11217
+void LagrangeGreenStrain(320,11801
+void SaintVenantKirchoff(332,12103
+void SaintVenantKirchoffJacobian(347,12497
+PetscErrorCode FormElements(365,13064
+void GatherElementData(411,14407
+void QuadraturePointGeometricJacobian(432,15233
+void FormElementJacobian(456,16165
+void FormPBJacobian(537,19425
+void ApplyBCsElement(589,21346
+PetscErrorCode FormJacobianLocal(619,22406
+PetscErrorCode FormFunctionLocal(728,25748
+PetscErrorCode NonlinearGS(802,28232
+PetscErrorCode FormCoordinates(910,32441
+PetscErrorCode InitialGuess(944,33736
+PetscErrorCode FormRHS(975,34707
+PetscErrorCode DisplayLine(1000,35422
 
 src/snes/tutorials/ex13.c,985
 ex13.c:^?ex13.c^A,1
@@ -24762,17 +25010,100 @@
 static PetscErrorCode ComputeSpectral(236,10960
 int main(343,15403
 
-src/snes/tutorials/ex6.c,316
-ex6.c:^?ex6.c^A,1
-static char help[help2,1
-  PetscViewer viewer;20,585
-} ReasonViewCtx;21,607
-int main(23,625
-PetscErrorCode FormInitialGuess(158,5782
-PetscErrorCode FormFunction(183,6431
-PetscErrorCode FormJacobian(234,7801
-PetscErrorCode MySNESConvergedReasonView(296,9098
-PetscErrorCode MyKSPConvergedReasonView(316,9867
+src/snes/tutorials/ex12.c,2773
+ex12.c:^?ex12.c^A,1
+static char help[help1,0
+  NEUMANN,24,768
+  DIRICHLET,25,779
+  NONE26,792
+} BCType;27,799
+  RUN_FULL,29,824
+  RUN_EXACT,30,836
+  RUN_TEST,31,849
+  RUN_PERF32,861
+} RunType;33,872
+  COEFF_NONE,35,898
+  COEFF_ANALYTIC,36,912
+  COEFF_FIELD,37,930
+  COEFF_NONLINEAR,38,945
+  COEFF_BALL,39,964
+  COEFF_CROSS,40,978
+  COEFF_CHECKERBOARD_0,41,993
+  COEFF_CHECKERBOARD_142,1017
+} CoeffType;43,1040
+  RunType   runType;46,1071
+  PetscBool jacobianMF;47,1149
+  PetscBool showInitial,48,1231
+  PetscBool showInitial, showSolution,48,1231
+  PetscBool showInitial, showSolution, restart,48,1231
+  PetscBool showInitial, showSolution, restart, quiet,48,1231
+  PetscBool showInitial, showSolution, restart, quiet, nonzInit;48,1231
+  BCType    bcType;50,1323
+  CoeffType variableCoefficient;51,1343
+  PetscErrorCode (**exactFuncs)exactFuncs52,1376
+  PetscBool fieldBC;53,1500
+  void (**exactFields)exactFields54,1521
+  PetscBool bdIntegral;55,1849
+  PetscInt  div;57,1997
+  PetscInt  k;58,2042
+  PetscInt *kgrid;kgrid59,2106
+  PetscBool rand;60,2153
+  PC        pcmg;62,2217
+  PetscBool checkksp;63,2281
+} AppCtx;64,2363
+static PetscErrorCode zero(66,2374
+static PetscErrorCode ecks(72,2523
+static PetscErrorCode quadratic_u_2d(103,3405
+static void quadratic_u_field_2d(109,3584
+static PetscErrorCode ball_u_2d(114,4037
+static PetscErrorCode cross_u_2d(125,4415
+static void f0_u(134,4734
+static void f0_ball_u(139,5162
+static void f0_cross_u_2d(150,5903
+static void f0_checkerboard_0_u(158,6506
+static void f0_bd_u(163,7014
+static void f1_u(170,7591
+static void g3_uu(178,8174
+static PetscErrorCode xtrig_u_2d(194,8881
+static void f0_xtrig_u(200,9066
+static PetscErrorCode xytrig_u_2d(215,9800
+static void f0_xytrig_u(221,10024
+static PetscErrorCode nu_2d(237,10733
+static PetscErrorCode checkerboardCoeff(243,10889
+void f0_analytic_u(263,11476
+void f1_analytic_u(269,11978
+void f1_field_u(275,12467
+void g3_analytic_uu(283,13056
+void g3_field_uu(289,13565
+void f0_analytic_nonlinear_u(306,14326
+void f1_analytic_nonlinear_u(312,14853
+void g3_analytic_nonlinear_uu(328,15746
+static PetscErrorCode quadratic_u_3d(362,17097
+static PetscErrorCode ball_u_3d(368,17304
+static void quadratic_u_field_3d(379,17705
+static PetscErrorCode cross_u_3d(384,18158
+static void f0_cross_u_3d(393,18549
+static void bd_integral_2d(401,19224
+static PetscErrorCode ProcessOptions(406,19687
+static PetscErrorCode CreateBCLabel(458,23277
+static PetscErrorCode CreateMesh(472,23639
+static PetscErrorCode SetupProblem(520,25083
+static PetscErrorCode SetupMaterial(663,30434
+static PetscErrorCode SetupBC(680,31105
+static PetscErrorCode SetupAuxDM(697,31730
+static PetscErrorCode SetupDiscretization(715,32350
+int main(759,34020
+
+src/snes/tutorials/ex5f90.F90,373
+ex5f90.F90:^?ex5f90.F90^A,1
+      subroutine FormFunction(68,2284
+        Subroutine SNESSetApplicationContext(123,4232
+        Subroutine SNESGetApplicationContext(132,4507
+      subroutine FormInitialGuess(326,12720
+      subroutine InitialGuessLocal(379,14252
+      subroutine FormFunctionLocal(430,15518
+      subroutine FormJacobian(515,18265
+      subroutine FormJacobianLocal(606,21521
 
 src/snes/tutorials/ex22.c,562
 ex22.c:^?ex22.c^A,1
@@ -24809,59 +25140,6 @@
 PetscErrorCode FormFunction(110,3920
 PetscErrorCode Monitor(167,6403
 
-src/snes/tutorials/ex16.c,1591
-ex16.c:^?ex16.c^A,1
-static char help[help2,1
-#define QP0 48,2081
-#define QP1 49,2112
-#define NQ 50,2143
-#define NB 51,2157
-#define NEB 52,2171
-#define NEQ 53,2185
-#define NPB 54,2199
-#define NVALS 56,2215
-const PetscReal pts[pts57,2238
-const PetscReal wts[wts58,2276
-PetscScalar vals[vals60,2315
-PetscScalar grad[grad61,2340
-typedef PetscScalar Field[Field63,2370
-typedef PetscScalar CoordField[CoordField64,2400
-typedef PetscScalar JacField[JacField66,2436
-  PetscReal loading;74,2723
-  PetscReal mu;75,2744
-  PetscReal lambda;76,2760
-  PetscReal rad;77,2780
-  PetscReal height;78,2797
-  PetscReal width;79,2817
-  PetscReal arc;80,2836
-  PetscReal ploading;81,2853
-} AppCtx;82,2875
-int main(89,3104
-PetscInt OnBoundary(192,7508
-void BoundaryValue(198,7676
-void InvertTensor(212,8173
-void TensorTensor(248,9433
-void TensorTransposeTensor(259,9691
-void TensorVector(270,9958
-void DeformationGradient(277,10231
-void DeformationGradientJacobian(306,11216
-void LagrangeGreenStrain(320,11800
-void SaintVenantKirchoff(332,12102
-void SaintVenantKirchoffJacobian(347,12496
-PetscErrorCode FormElements(365,13063
-void GatherElementData(411,14406
-void QuadraturePointGeometricJacobian(432,15232
-void FormElementJacobian(456,16164
-void FormPBJacobian(537,19424
-void ApplyBCsElement(589,21345
-PetscErrorCode FormJacobianLocal(619,22405
-PetscErrorCode FormFunctionLocal(728,25747
-PetscErrorCode NonlinearGS(802,28231
-PetscErrorCode FormCoordinates(910,32440
-PetscErrorCode InitialGuess(944,33735
-PetscErrorCode FormRHS(975,34706
-PetscErrorCode DisplayLine(1000,35421
-
 src/snes/tutorials/ex5f.F90,225
 ex5f.F90:^?ex5f.F90^A,1
       subroutine FormInitialGuess(240,8553
@@ -25098,17 +25376,6 @@
 integer probnum, ihod, mx, my, neq, ientro,1,0
 integer probnum, ihod, mx, my, neq, ientro, gorder parameter(1,0
 
-src/snes/tutorials/ex73f90t.F90,374
-ex73f90t.F90:^?ex73f90t.F90^A,1
-        Subroutine SNESSetApplicationContext(63,2147
-        Subroutine SNESGetApplicationContext(74,2505
-      subroutine FormInitialGuess(379,15091
-      subroutine InitialGuessLocal(428,16522
-      subroutine FormJacobian(482,18040
-      subroutine FormJacobianLocal(540,20041
-      subroutine FormFunction(624,22522
-      subroutine FormFunctionNLTerm(676,24397
-
 src/snes/tutorials/ex71.c,621
 ex71.c:^?ex71.c^A,1
 static char help[help1,0
@@ -25713,171 +25980,6 @@
 static void ChebyshevEval(130,5053
 PetscErrorCode FormFunction(161,6332
 
-src/snes/tutorials/ex30.c,4597
-ex30.c:^?ex30.c^A,1
-static const char help[help1,0
-#define VISC_CONST 58,2744
-#define VISC_DIFN 59,2767
-#define VISC_DISL 60,2790
-#define VISC_FULL 61,2813
-#define CELL_CENTER 62,2836
-#define CELL_CORNER 63,2859
-#define BC_ANALYTIC 64,2882
-#define BC_NOSTRESS 65,2905
-#define BC_EXPERMNT 66,2928
-#define ADVECT_FV 67,2951
-#define ADVECT_FROMM 68,2974
-#define PLATE_SLAB 69,2997
-#define PLATE_LID 70,3020
-#define EPS_ZERO 71,3043
-  PetscScalar u,74,3136
-  PetscScalar u, w,74,3136
-  PetscScalar u, w, p,74,3136
-  PetscScalar u, w, p, T;74,3136
-} Field;75,3162
-  PetscReal A,78,3234
-  PetscReal A, n,78,3234
-  PetscReal A, n, Estar,78,3234
-  PetscReal A, n, Estar, Vstar;78,3234
-} ViscParam;79,3266
-  PetscReal width,82,3340
-  PetscReal width, depth,82,3340
-  PetscReal width, depth, scaled_width,82,3340
-  PetscReal width, depth, scaled_width, scaled_depth,82,3340
-  PetscReal width, depth, scaled_width, scaled_depth, peclet,82,3340
-  PetscReal width, depth, scaled_width, scaled_depth, peclet, potentialT;82,3340
-  PetscReal slab_dip,83,3414
-  PetscReal slab_dip, slab_age,83,3414
-  PetscReal slab_dip, slab_age, slab_velocity,83,3414
-  PetscReal slab_dip, slab_age, slab_velocity, kappa,83,3414
-  PetscReal slab_dip, slab_age, slab_velocity, kappa, z_scale;83,3414
-  PetscReal c,84,3477
-  PetscReal c, d,84,3477
-  PetscReal c, d, sb,84,3477
-  PetscReal c, d, sb, cb,84,3477
-  PetscReal c, d, sb, cb, skt,84,3477
-  PetscReal c, d, sb, cb, skt, visc_cutoff,84,3477
-  PetscReal c, d, sb, cb, skt, visc_cutoff, lid_age,84,3477
-  PetscReal c, d, sb, cb, skt, visc_cutoff, lid_age, eta0,84,3477
-  PetscReal c, d, sb, cb, skt, visc_cutoff, lid_age, eta0, continuation;84,3477
-  PetscReal L,85,3550
-  PetscReal L, V,85,3550
-  PetscReal L, V, lid_depth,85,3550
-  PetscReal L, V, lid_depth, fault_depth;85,3550
-  ViscParam diffusion,86,3592
-  ViscParam diffusion, dislocation;86,3592
-  PetscInt  ivisc,87,3628
-  PetscInt  ivisc, adv_scheme,87,3628
-  PetscInt  ivisc, adv_scheme, ibound,87,3628
-  PetscInt  ivisc, adv_scheme, ibound, output_ivisc;87,3628
-  PetscBool quiet,88,3681
-  PetscBool quiet, param_test,88,3681
-  PetscBool quiet, param_test, output_to_file,88,3681
-  PetscBool quiet, param_test, output_to_file, pv_analytic;88,3681
-  PetscBool interrupted,89,3741
-  PetscBool interrupted, stop_solve,89,3741
-  PetscBool interrupted, stop_solve, toggle_kspmon,89,3741
-  PetscBool interrupted, stop_solve, toggle_kspmon, kspmon;89,3741
-  char      filename[filename90,3801
-} Parameter;91,3843
-  DMBoundaryType  bx,94,3896
-  DMBoundaryType  bx, by;94,3896
-  DMDAStencilType stencil;95,3922
-  PetscInt        corner,96,3949
-  PetscInt        corner, ni,96,3949
-  PetscInt        corner, ni, nj,96,3949
-  PetscInt        corner, ni, nj, jlid,96,3949
-  PetscInt        corner, ni, nj, jlid, jfault,96,3949
-  PetscInt        corner, ni, nj, jlid, jfault, inose;96,3949
-  PetscInt        dof,97,4004
-  PetscInt        dof, stencil_width,97,4004
-  PetscInt        dof, stencil_width, mglevels;97,4004
-  PetscReal       dx,98,4052
-  PetscReal       dx, dz;98,4052
-} GridInfo;99,4078
-  Vec        x,102,4134
-  Vec        x, Xguess;102,4134
-  Parameter *param;param103,4158
-  GridInfo  *grid;grid104,4178
-} AppCtx;105,4197
-int main(123,4936
-PetscErrorCode UpdateSolution(209,8607
-static inline PetscScalar UInterp(285,11477
-static inline PetscScalar WInterp(290,11632
-static inline PetscScalar PInterp(295,11787
-static inline PetscScalar TInterp(300,11942
-static inline PetscScalar HorizVelocity(306,12140
-static inline PetscScalar VertVelocity(323,12677
-static inline PetscScalar Pressure(341,13214
-static inline PetscScalar CalcSecInv(356,13674
-static inline PetscScalar Viscosity(421,15238
-static inline PetscScalar XMomentumResidual(463,16989
-static inline PetscScalar ZMomentumResidual(514,19179
-static inline PetscScalar ContinuityResidual(569,21472
-static inline PetscScalar EnergyResidual(585,21866
-static inline PetscScalar ShearStress(644,24259
-static inline PetscScalar XNormalStress(678,25150
-static inline PetscScalar ZNormalStress(717,26443
-PetscErrorCode SetParams(760,27969
-PetscErrorCode ReportParams(894,34477
-PetscErrorCode Initialize(960,38624
-PetscErrorCode DoOutput(1003,39815
-PetscErrorCode ViscosityField(1091,43667
-PetscErrorCode StressField(1150,45708
-static inline PetscScalar SlabVel(1191,47214
-static inline PetscScalar PlateModel(1209,47686
-PetscErrorCode SNESConverged_Interactive(1228,48420
-PetscErrorCode InteractiveHandler(1266,49986
-PetscErrorCode FormFunctionLocal(1287,50586
-
-src/snes/tutorials/ex3.c,785
-ex3.c:^?ex3.c^A,1
-static char help[help1,0
-  DM          da;45,1740
-  Vec         F;46,1785
-  PetscMPIInt rank;47,1835
-  PetscMPIInt size;48,1880
-  PetscReal   h;49,1928
-  PetscBool   sjerr;50,1968
-} ApplicationCtx;51,2035
-  PetscViewer viewer;57,2116
-} MonitorCtx;58,2138
-  Vec             last_step;65,2278
-  PetscReal       tolerance;66,2330
-  ApplicationCtx *user;user67,2415
-} StepCheckCtx;68,2439
-  PetscInt its0;71,2473
-} SetSubKSPCtx;72,2532
-int main(74,2549
-PetscErrorCode FormInitialGuess(322,11818
-PetscErrorCode FormFunction(347,12408
-PetscErrorCode FormJacobian(429,15115
-PetscErrorCode Monitor(519,17636
-PetscErrorCode PreCheck(545,18524
-PetscErrorCode PostCheck(570,19375
-PetscErrorCode PostSetSubKSP(640,22201
-PetscErrorCode MatrixFreePreconditioner(685,24096
-
-src/snes/tutorials/ex28.c,691
-ex28.c:^?ex28.c^A,1
-static const char help[help1,0
-typedef struct _UserCtx *User;User31,1404
-struct _UserCtx 32,1435
-  PetscInt ptype;33,1453
-  DM       pack;34,1471
-  Vec      Uloc,35,1488
-  Vec      Uloc, Kloc;35,1488
-static PetscErrorCode FormFunctionLocal_U(38,1515
-static PetscErrorCode FormFunctionLocal_K(52,2016
-static PetscErrorCode FormFunction_All(65,2518
-static PetscErrorCode FormJacobianLocal_U(122,4885
-static PetscErrorCode FormJacobianLocal_K(143,5672
-static PetscErrorCode FormJacobianLocal_UK(157,6160
-static PetscErrorCode FormJacobianLocal_KU(178,6891
-static PetscErrorCode FormJacobian_All(198,8001
-static PetscErrorCode FormInitial_Coupled(277,11502
-int main(302,12511
-
 src/snes/tutorials/ex26.c,497
 ex26.c:^?ex26.c^A,1
 static char help[help1,0
@@ -25988,24 +26090,6 @@
       subroutine FormJacobian(239,8237
       subroutine MyLineSearch(291,9589
 
-src/snes/tutorials/ex19.c,495
-ex19.c:^?ex19.c^A,1
-static char help[help4,111
-  PetscScalar u,77,3154
-  PetscScalar u, v,77,3154
-  PetscScalar u, v, omega,77,3154
-  PetscScalar u, v, omega, temp;77,3154
-} Field;78,3187
-  PetscReal lidvelocity,83,3294
-  PetscReal lidvelocity, prandtl,83,3294
-  PetscReal lidvelocity, prandtl, grashof;83,3294
-  PetscBool draw_contours;84,3363
-} AppCtx;85,3448
-int main(90,3578
-PetscErrorCode FormInitialGuess(185,7273
-PetscErrorCode FormFunctionLocal(233,8614
-PetscErrorCode NonlinearGS(368,13233
-
 src/snes/tutorials/ex18.c,362
 ex18.c:^?ex18.c^A,1
 static char help[help2,1
@@ -26131,90 +26215,6 @@
 PetscErrorCode FormFunction(348,14138
 PetscErrorCode FormJacobian(384,15199
 
-src/snes/tutorials/ex12.c,2773
-ex12.c:^?ex12.c^A,1
-static char help[help1,0
-  NEUMANN,24,768
-  DIRICHLET,25,779
-  NONE26,792
-} BCType;27,799
-  RUN_FULL,29,824
-  RUN_EXACT,30,836
-  RUN_TEST,31,849
-  RUN_PERF32,861
-} RunType;33,872
-  COEFF_NONE,35,898
-  COEFF_ANALYTIC,36,912
-  COEFF_FIELD,37,930
-  COEFF_NONLINEAR,38,945
-  COEFF_BALL,39,964
-  COEFF_CROSS,40,978
-  COEFF_CHECKERBOARD_0,41,993
-  COEFF_CHECKERBOARD_142,1017
-} CoeffType;43,1040
-  RunType   runType;46,1071
-  PetscBool jacobianMF;47,1149
-  PetscBool showInitial,48,1231
-  PetscBool showInitial, showSolution,48,1231
-  PetscBool showInitial, showSolution, restart,48,1231
-  PetscBool showInitial, showSolution, restart, quiet,48,1231
-  PetscBool showInitial, showSolution, restart, quiet, nonzInit;48,1231
-  BCType    bcType;50,1323
-  CoeffType variableCoefficient;51,1343
-  PetscErrorCode (**exactFuncs)exactFuncs52,1376
-  PetscBool fieldBC;53,1500
-  void (**exactFields)exactFields54,1521
-  PetscBool bdIntegral;55,1849
-  PetscInt  div;57,1997
-  PetscInt  k;58,2042
-  PetscInt *kgrid;kgrid59,2106
-  PetscBool rand;60,2153
-  PC        pcmg;62,2217
-  PetscBool checkksp;63,2281
-} AppCtx;64,2363
-static PetscErrorCode zero(66,2374
-static PetscErrorCode ecks(72,2523
-static PetscErrorCode quadratic_u_2d(103,3405
-static void quadratic_u_field_2d(109,3584
-static PetscErrorCode ball_u_2d(114,4037
-static PetscErrorCode cross_u_2d(125,4415
-static void f0_u(134,4734
-static void f0_ball_u(139,5162
-static void f0_cross_u_2d(150,5903
-static void f0_checkerboard_0_u(158,6506
-static void f0_bd_u(163,7014
-static void f1_u(170,7591
-static void g3_uu(178,8174
-static PetscErrorCode xtrig_u_2d(194,8881
-static void f0_xtrig_u(200,9066
-static PetscErrorCode xytrig_u_2d(215,9800
-static void f0_xytrig_u(221,10024
-static PetscErrorCode nu_2d(237,10733
-static PetscErrorCode checkerboardCoeff(243,10889
-void f0_analytic_u(263,11476
-void f1_analytic_u(269,11978
-void f1_field_u(275,12467
-void g3_analytic_uu(283,13056
-void g3_field_uu(289,13565
-void f0_analytic_nonlinear_u(306,14326
-void f1_analytic_nonlinear_u(312,14853
-void g3_analytic_nonlinear_uu(328,15746
-static PetscErrorCode quadratic_u_3d(362,17097
-static PetscErrorCode ball_u_3d(368,17304
-static void quadratic_u_field_3d(379,17705
-static PetscErrorCode cross_u_3d(384,18158
-static void f0_cross_u_3d(393,18549
-static void bd_integral_2d(401,19224
-static PetscErrorCode ProcessOptions(406,19687
-static PetscErrorCode CreateBCLabel(458,23276
-static PetscErrorCode CreateMesh(472,23638
-static PetscErrorCode SetupProblem(520,25082
-static PetscErrorCode SetupMaterial(663,30433
-static PetscErrorCode SetupBC(680,31104
-static PetscErrorCode SetupAuxDM(697,31729
-static PetscErrorCode SetupDiscretization(715,32349
-int main(759,34019
-
 src/snes/tutorials/ex1.c,201
 ex1.c:^?ex1.c^A,1
 static char help[help2,1
@@ -26520,11 +26520,6 @@
 PFReadData.c:^?PFReadData.c^A,1
 PetscErrorCode PFReadMatPowerData(6,81
 
-src/snes/tutorials/ex10d/makefile,26
-makefile:^?makefile^A,1
-LOCDIR	3,34
-MANSEC 4,71
-
 src/snes/tutorials/ex10d/ex10.c,781
 ex10.c:^?ex10.c^A,1
 static char help[help14,439
@@ -26550,7 +26545,27 @@
 int main(72,3499
 PetscErrorCode FormInitialGuess(497,21761
 PetscErrorCode FormFunction(548,23076
-PetscErrorCode FormJacobian(627,25529
+PetscErrorCode FormJacobian(627,25530
+
+src/snes/tutorials/ex10d/makefile,26
+makefile:^?makefile^A,1
+LOCDIR	3,34
+MANSEC 4,71
+
+src/snes/tests/ex1.c,382
+ex1.c:^?ex1.c^A,1
+static char help[help2,1
+  PetscReal param;46,1588
+  PetscInt  mx;47,1636
+  PetscInt  my;48,1691
+} AppCtx;49,1746
+int main(61,2202
+PetscErrorCode FormInitialGuess(276,11379
+PetscErrorCode FormFunction(328,12703
+PetscErrorCode FormJacobian(393,14298
+PetscErrorCode ConvergenceTest(458,15940
+PetscErrorCode ConvergenceDestroy(469,16287
+PetscErrorCode postcheck(477,16490
 
 src/snes/tests/ex241.cxx,195
 ex241.cxx:^?ex241.cxx^A,1
@@ -26774,21 +26789,6 @@
       subroutine FormInitialGuess(238,7909
       subroutine FormJacobian(254,8250
 
-src/snes/tests/ex1.c,382
-ex1.c:^?ex1.c^A,1
-static char help[help2,1
-  PetscReal param;46,1588
-  PetscInt  mx;47,1636
-  PetscInt  my;48,1691
-} AppCtx;49,1746
-int main(61,2202
-PetscErrorCode FormInitialGuess(276,11379
-PetscErrorCode FormFunction(328,12703
-PetscErrorCode FormJacobian(393,14298
-PetscErrorCode ConvergenceTest(458,15939
-PetscErrorCode ConvergenceDestroy(469,16286
-PetscErrorCode postcheck(477,16489
-
 src/snes/mf/snesmfj.c,514
 snesmfj.c:^?snesmfj.c^A,1
 PetscErrorCode MatMFFDComputeJacobian(41,1814
@@ -27541,6 +27541,26 @@
 MANSEC 7,112
 LOCDIR 8,128
 
+src/snes/impls/tr/trimpl.h,521
+trimpl.h:^?trimpl.h^A,1
+#define __SNES_TR_H8,120
+  PetscReal mu;13,256
+  PetscReal eta;14,327
+  PetscReal delta;15,398
+  PetscReal delta0;16,453
+  PetscReal delta1;17,527
+  PetscReal delta2;18,598
+  PetscReal delta3;19,669
+  PetscReal sigma;20,740
+  PetscBool itflag;21,802
+  PetscReal rnorm0,22,863
+  PetscReal rnorm0, ttol;22,863
+  PetscErrorCode (*precheck)precheck23,925
+  void *precheckctx;precheckctx24,992
+  PetscErrorCode (*postcheck)postcheck25,1013
+  void *postcheckctx;postcheckctx26,1099
+} SNES_NEWTONTR;27,1121
+
 src/snes/impls/tr/tr.c,1027
 tr.c:^?tr.c^A,1
   SNES snes;4,85
@@ -27565,26 +27585,6 @@
 static PetscErrorCode SNESView_NEWTONTR(467,17813
 PETSC_EXTERN PetscErrorCode SNESCreate_NEWTONTR(505,19462
 
-src/snes/impls/tr/trimpl.h,521
-trimpl.h:^?trimpl.h^A,1
-#define __SNES_TR_H8,120
-  PetscReal mu;13,256
-  PetscReal eta;14,327
-  PetscReal delta;15,398
-  PetscReal delta0;16,453
-  PetscReal delta1;17,527
-  PetscReal delta2;18,598
-  PetscReal delta3;19,669
-  PetscReal sigma;20,740
-  PetscBool itflag;21,801
-  PetscReal rnorm0,22,862
-  PetscReal rnorm0, ttol;22,862
-  PetscErrorCode (*precheck)precheck23,924
-  void *precheckctx;precheckctx24,991
-  PetscErrorCode (*postcheck)postcheck25,1012
-  void *postcheckctx;postcheckctx26,1098
-} SNES_NEWTONTR;27,1120
-
 src/snes/impls/tr/makefile,84
 makefile:^?makefile^A,1
 SOURCEC 3,34
@@ -27760,31 +27760,6 @@
 MANSEC 7,103
 LOCDIR 8,119
 
-src/snes/impls/ntrdc/ntrdc.c,1115
-ntrdc.c:^?ntrdc.c^A,1
-  SNES snes;5,92
-  PetscErrorCode (*convtest)convtest11,391
-  PetscErrorCode (*convdestroy)convdestroy12,477
-  void *convctx;convctx13,518
-} SNES_TRDC_KSPConverged_Ctx;14,535
-static PetscErrorCode SNESTRDC_KSPConverged_Private(16,566
-static PetscErrorCode SNESTRDC_KSPConverged_Destroy(37,1539
-static PetscErrorCode SNESTRDC_Converged_Private(53,1902
-PetscErrorCode SNESNewtonTRDCGetRhoFlag(83,3180
-PetscErrorCode SNESNewtonTRDCSetPreCheck(113,4304
-PetscErrorCode SNESNewtonTRDCGetPreCheck(140,5151
-PetscErrorCode SNESNewtonTRDCSetPostCheck(170,6441
-PetscErrorCode SNESNewtonTRDCGetPostCheck(197,7312
-static PetscErrorCode SNESNewtonTRDCPreCheck(225,8139
-static PetscErrorCode SNESNewtonTRDCPostCheck(260,9202
-static PetscErrorCode SNESSolve_NEWTONTRDC(281,9965
-static PetscErrorCode SNESSetUp_NEWTONTRDC(568,23723
-PetscErrorCode SNESReset_NEWTONTRDC(576,23907
-static PetscErrorCode SNESDestroy_NEWTONTRDC(582,24007
-static PetscErrorCode SNESSetFromOptions_NEWTONTRDC(590,24193
-static PetscErrorCode SNESView_NEWTONTRDC(611,25815
-PETSC_EXTERN PetscErrorCode SNESCreate_NEWTONTRDC(653,28512
-
 src/snes/impls/ntrdc/ntrdcimpl.h,823
 ntrdcimpl.h:^?ntrdcimpl.h^A,1
 #define __SNES_TR_H8,120
@@ -27802,10 +27777,10 @@
   PetscReal t2;25,891
   PetscReal deltaM;26,939
   PetscReal sigma;31,1243
-  PetscBool itflag;32,1313
-  PetscBool use_cauchy;33,1383
-  PetscBool auto_scale_multiphase;34,1476
-  PetscReal auto_scale_max;35,1578
+  PetscBool itflag;32,1314
+  PetscBool use_cauchy;33,1384
+  PetscBool auto_scale_multiphase;34,1477
+  PetscReal auto_scale_max;35,1579
   PetscBool rho_satisfied;36,1663
   PetscReal rnorm0,37,1751
   PetscReal rnorm0, ttol;37,1751
@@ -27815,6 +27790,31 @@
   void *postcheckctx;postcheckctx41,1996
 } SNES_NEWTONTRDC;42,2018
 
+src/snes/impls/ntrdc/ntrdc.c,1115
+ntrdc.c:^?ntrdc.c^A,1
+  SNES snes;5,92
+  PetscErrorCode (*convtest)convtest11,391
+  PetscErrorCode (*convdestroy)convdestroy12,477
+  void *convctx;convctx13,518
+} SNES_TRDC_KSPConverged_Ctx;14,535
+static PetscErrorCode SNESTRDC_KSPConverged_Private(16,566
+static PetscErrorCode SNESTRDC_KSPConverged_Destroy(37,1539
+static PetscErrorCode SNESTRDC_Converged_Private(53,1902
+PetscErrorCode SNESNewtonTRDCGetRhoFlag(83,3180
+PetscErrorCode SNESNewtonTRDCSetPreCheck(113,4304
+PetscErrorCode SNESNewtonTRDCGetPreCheck(140,5151
+PetscErrorCode SNESNewtonTRDCSetPostCheck(170,6441
+PetscErrorCode SNESNewtonTRDCGetPostCheck(197,7312
+static PetscErrorCode SNESNewtonTRDCPreCheck(225,8139
+static PetscErrorCode SNESNewtonTRDCPostCheck(260,9202
+static PetscErrorCode SNESSolve_NEWTONTRDC(281,9965
+static PetscErrorCode SNESSetUp_NEWTONTRDC(568,23723
+PetscErrorCode SNESReset_NEWTONTRDC(576,23907
+static PetscErrorCode SNESDestroy_NEWTONTRDC(582,24007
+static PetscErrorCode SNESSetFromOptions_NEWTONTRDC(590,24193
+static PetscErrorCode SNESView_NEWTONTRDC(611,25815
+PETSC_EXTERN PetscErrorCode SNESCreate_NEWTONTRDC(653,28512
+
 src/snes/impls/ntrdc/makefile,84
 makefile:^?makefile^A,1
 SOURCEC 3,34
@@ -27838,11 +27838,11 @@
 PetscErrorCode SNESNGMRESSetRestartFmRise_NGMRES(350,15981
 PetscErrorCode SNESNGMRESGetRestartFmRise(359,16194
 PetscErrorCode SNESNGMRESGetRestartFmRise_NGMRES(369,16489
-PetscErrorCode SNESNGMRESSetRestartType(400,17461
-PetscErrorCode SNESNGMRESSetSelectType(433,18691
-PetscErrorCode SNESNGMRESSetSelectType_NGMRES(441,18971
-PetscErrorCode SNESNGMRESSetRestartType_NGMRES(450,19192
-PETSC_EXTERN PetscErrorCode SNESCreate_NGMRES(495,21567
+PetscErrorCode SNESNGMRESSetRestartType(400,17462
+PetscErrorCode SNESNGMRESSetSelectType(433,18692
+PetscErrorCode SNESNGMRESSetSelectType_NGMRES(441,18972
+PetscErrorCode SNESNGMRESSetRestartType_NGMRES(450,19193
+PETSC_EXTERN PetscErrorCode SNESCreate_NGMRES(495,21568
 
 src/snes/impls/ngmres/snesngmres.h,1274
 snesngmres.h:^?snesngmres.h^A,1
@@ -28210,7 +28210,7 @@
 fasgalerkin.c:^?fasgalerkin.c^A,1
 PetscErrorCode SNESFASGetGalerkin(18,490
 PetscErrorCode SNESFASSetGalerkin(42,1065
-PetscErrorCode SNESFASGalerkinFunctionDefault(75,1841
+PetscErrorCode SNESFASGalerkinFunctionDefault(75,1840
 
 src/snes/impls/fas/fasfunc.c,1718
 fasfunc.c:^?fasfunc.c^A,1
@@ -28649,6 +28649,41 @@
 LOCDIR 8,440
 MANSEC 9,460
 
+src/mat/utils/matstash.c,1575
+matstash.c:^?matstash.c^A,1
+#define DEFAULT_STASH_SIZE 4,37
+PetscErrorCode MatStashCreate_Private(29,1156
+PetscErrorCode MatStashDestroy_Private(104,3534
+PetscErrorCode MatStashScatterEnd_Private(124,4236
+PETSC_INTERN PetscErrorCode MatStashScatterEnd_Ref(131,4390
+PetscErrorCode MatStashGetInfo_Private(182,5986
+PetscErrorCode MatStashSetInitialSize_Private(203,6560
+static PetscErrorCode MatStashExpand_Private(221,7036
+PetscErrorCode MatStashValuesRow_Private(258,8426
+PetscErrorCode MatStashValuesCol_Private(296,9857
+PetscErrorCode MatStashValuesRowBlocked_Private(338,11614
+PetscErrorCode MatStashValuesColBlocked_Private(389,13672
+PetscErrorCode MatStashScatterBegin_Private(437,15344
+static PetscErrorCode MatStashScatterBegin_Ref(444,15542
+PetscErrorCode MatStashScatterGetMesg_Private(619,22125
+PETSC_INTERN PetscErrorCode MatStashScatterGetMesg_Ref(626,22406
+  PetscInt    row;678,24423
+  PetscInt    col;679,24442
+  PetscScalar vals[vals680,24461
+} MatStashBlock;681,24522
+static PetscErrorCode MatStashSortCompress_Private(683,24540
+static PetscErrorCode MatStashBlockTypeSetUp(730,26639
+    struct DummyBlock 755,27800
+      PetscInt    row,756,27824
+      PetscInt    row, col;756,27824
+      PetscScalar vals;757,27852
+static PetscErrorCode MatStashBTSSend_Private(785,29145
+static PetscErrorCode MatStashBTSRecv_Private(802,29940
+static PetscErrorCode MatStashScatterBegin_BTS(820,30653
+static PetscErrorCode MatStashScatterGetMesg_BTS(924,36421
+static PetscErrorCode MatStashScatterEnd_BTS(962,38593
+PetscErrorCode MatStashScatterDestroy_BTS(993,39655
+
 src/mat/utils/zerodiag.c,146
 zerodiag.c:^?zerodiag.c^A,1
 #define SWAP(9,167
@@ -28753,41 +28788,6 @@
 PetscErrorCode PetscMatStashSpaceContiguous(31,813
 PetscErrorCode PetscMatStashSpaceDestroy(52,1530
 
-src/mat/utils/matstash.c,1575
-matstash.c:^?matstash.c^A,1
-#define DEFAULT_STASH_SIZE 4,37
-PetscErrorCode MatStashCreate_Private(29,1156
-PetscErrorCode MatStashDestroy_Private(104,3534
-PetscErrorCode MatStashScatterEnd_Private(124,4236
-PETSC_INTERN PetscErrorCode MatStashScatterEnd_Ref(131,4390
-PetscErrorCode MatStashGetInfo_Private(182,5986
-PetscErrorCode MatStashSetInitialSize_Private(203,6560
-static PetscErrorCode MatStashExpand_Private(221,7036
-PetscErrorCode MatStashValuesRow_Private(258,8426
-PetscErrorCode MatStashValuesCol_Private(296,9857
-PetscErrorCode MatStashValuesRowBlocked_Private(338,11614
-PetscErrorCode MatStashValuesColBlocked_Private(389,13671
-PetscErrorCode MatStashScatterBegin_Private(437,15342
-static PetscErrorCode MatStashScatterBegin_Ref(444,15540
-PetscErrorCode MatStashScatterGetMesg_Private(619,22123
-PETSC_INTERN PetscErrorCode MatStashScatterGetMesg_Ref(626,22404
-  PetscInt    row;678,24421
-  PetscInt    col;679,24440
-  PetscScalar vals[vals680,24459
-} MatStashBlock;681,24520
-static PetscErrorCode MatStashSortCompress_Private(683,24538
-static PetscErrorCode MatStashBlockTypeSetUp(730,26637
-    struct DummyBlock 755,27798
-      PetscInt    row,756,27822
-      PetscInt    row, col;756,27822
-      PetscScalar vals;757,27850
-static PetscErrorCode MatStashBTSSend_Private(785,29144
-static PetscErrorCode MatStashBTSRecv_Private(802,29939
-static PetscErrorCode MatStashScatterBegin_BTS(820,30652
-static PetscErrorCode MatStashScatterGetMesg_BTS(924,36420
-static PetscErrorCode MatStashScatterEnd_BTS(962,38592
-PetscErrorCode MatStashScatterDestroy_BTS(993,39654
-
 src/mat/utils/matio.c,96
 matio.c:^?matio.c^A,1
 PetscErrorCode MatView_Binary_BlockSizes(4,61
@@ -28850,16 +28850,23 @@
 compressedrow.c:^?compressedrow.c^A,1
 PETSC_EXTERN PetscErrorCode MatCheckCompressedRow(26,1319
 
+src/mat/tutorials/ex5cu.cu,125
+ex5cu.cu:^?ex5cu.cu^A,1
+static char help[help1,0
+__global__ void assemble_on_gpu(18,774
+PetscErrorCode assemble_on_cpu(32,1332
+int main(43,1705
+
 src/mat/tutorials/ex18.c,327
 ex18.c:^?ex18.c^A,1
 static char help[help1,0
 static PetscErrorCode CreateFEStruct(19,1016
 static PetscErrorCode DestroyFEStruct(39,1552
 static PetscErrorCode CreateMatrix(47,1732
-static PetscErrorCode FillMatrixCPU(78,3105
-static PetscErrorCode FillMatrixCPUCOO(99,3855
-static PetscErrorCode FillMatrixCPUCOO3d(121,4571
-int main(138,5077
+static PetscErrorCode FillMatrixCPU(78,3106
+static PetscErrorCode FillMatrixCPUCOO(99,3856
+static PetscErrorCode FillMatrixCPUCOO3d(121,4572
+int main(138,5078
 
 src/mat/tutorials/makefile,120
 makefile:^?makefile^A,1
@@ -28901,13 +28908,6 @@
 static char help[help1,0
 int main(14,271
 
-src/mat/tutorials/ex5cu.cu,125
-ex5cu.cu:^?ex5cu.cu^A,1
-static char help[help1,0
-__global__ void assemble_on_gpu(18,774
-PetscErrorCode assemble_on_cpu(32,1331
-int main(43,1704
-
 src/mat/tutorials/ex4.c,45
 ex4.c:^?ex4.c^A,1
 static char help[help7,67
@@ -28979,6 +28979,84 @@
 static char help[help2,1
 int main(15,483
 
+src/mat/tests/ex72mmio.h,1701
+ex72mmio.h:^?ex72mmio.h^A,1
+#define MM_IO_H9,121
+#define MM_MAX_LINE_LENGTH 13,158
+#define MatrixMarketBanner 14,191
+#define MM_MAX_TOKEN_LENGTH 15,236
+typedef char MM_typecode[MM_typecode17,268
+#define mm_is_matrix(31,754
+#define mm_is_sparse(33,809
+#define mm_is_coordinate(34,867
+#define mm_is_dense(35,925
+#define mm_is_array(36,983
+#define mm_is_complex(38,1042
+#define mm_is_real(39,1097
+#define mm_is_pattern(40,1152
+#define mm_is_integer(41,1207
+#define mm_is_symmetric(43,1263
+#define mm_is_general(44,1320
+#define mm_is_skew(45,1377
+#define mm_is_hermitian(46,1434
+#define mm_set_matrix(52,1643
+#define mm_set_coordinate(53,1702
+#define mm_set_array(54,1761
+#define mm_set_dense(55,1820
+#define mm_set_sparse(56,1879
+#define mm_set_complex(58,1944
+#define mm_set_real(59,2000
+#define mm_set_pattern(60,2056
+#define mm_set_integer(61,2112
+#define mm_set_symmetric(63,2169
+#define mm_set_general(64,2227
+#define mm_set_skew(65,2285
+#define mm_set_hermitian(66,2343
+#define mm_clear_typecode(68,2402
+#define mm_initialize_typecode(70,2518
+#define MM_COULD_NOT_READ_FILE 74,2667
+#define MM_PREMATURE_EOF 75,2702
+#define MM_NOT_MTX 76,2737
+#define MM_NO_HEADER 77,2772
+#define MM_UNSUPPORTED_TYPE 78,2807
+#define MM_LINE_TOO_LONG 79,2842
+#define MM_COULD_NOT_WRITE_FILE 80,2877
+#define MM_MTX_STR 98,3567
+#define MM_ARRAY_STR 99,3602
+#define MM_DENSE_STR 100,3636
+#define MM_COORDINATE_STR 101,3670
+#define MM_SPARSE_STR 102,3709
+#define MM_COMPLEX_STR 103,3748
+#define MM_REAL_STR 104,3784
+#define MM_INT_STR 105,3817
+#define MM_GENERAL_STR 106,3853
+#define MM_SYMM_STR 107,3889
+#define MM_HERM_STR 108,3927
+#define MM_SKEW_STR 109,3965
+#define MM_PATTERN_STR 110,4008
+
+src/mat/tests/ex42.c,44
+ex42.c:^?ex42.c^A,1
+static char help[help2,1
+int main(11,444
+
+src/mat/tests/ex24.c,79
+ex24.c:^?ex24.c^A,1
+static char help[help2,1
+PetscErrorCode FormJacobian(6,210
+int main(25,754
+
+src/mat/tests/ex199.c,43
+ex199.c:^?ex199.c^A,1
+static char help[help2,1
+int main(6,102
+
+src/mat/tests/ex1.c,92
+ex1.c:^?ex1.c^A,1
+static char help[help2,1
+static PetscErrorCode createMatsAndVecs(8,327
+int main(87,2925
+
 src/mat/tests/ex59.c,42
 ex59.c:^?ex59.c^A,1
 static char help[help2,1
@@ -29191,62 +29269,6 @@
 static char help[help2,1
 int main(17,485
 
-src/mat/tests/ex72mmio.h,1701
-ex72mmio.h:^?ex72mmio.h^A,1
-#define MM_IO_H9,121
-#define MM_MAX_LINE_LENGTH 13,158
-#define MatrixMarketBanner 14,191
-#define MM_MAX_TOKEN_LENGTH 15,236
-typedef char MM_typecode[MM_typecode17,268
-#define mm_is_matrix(31,754
-#define mm_is_sparse(33,809
-#define mm_is_coordinate(34,867
-#define mm_is_dense(35,925
-#define mm_is_array(36,983
-#define mm_is_complex(38,1042
-#define mm_is_real(39,1097
-#define mm_is_pattern(40,1152
-#define mm_is_integer(41,1207
-#define mm_is_symmetric(43,1263
-#define mm_is_general(44,1320
-#define mm_is_skew(45,1377
-#define mm_is_hermitian(46,1434
-#define mm_set_matrix(52,1643
-#define mm_set_coordinate(53,1702
-#define mm_set_array(54,1761
-#define mm_set_dense(55,1820
-#define mm_set_sparse(56,1879
-#define mm_set_complex(58,1944
-#define mm_set_real(59,2000
-#define mm_set_pattern(60,2056
-#define mm_set_integer(61,2112
-#define mm_set_symmetric(63,2169
-#define mm_set_general(64,2227
-#define mm_set_skew(65,2285
-#define mm_set_hermitian(66,2343
-#define mm_clear_typecode(68,2402
-#define mm_initialize_typecode(70,2518
-#define MM_COULD_NOT_READ_FILE 74,2667
-#define MM_PREMATURE_EOF 75,2702
-#define MM_NOT_MTX 76,2737
-#define MM_NO_HEADER 77,2772
-#define MM_UNSUPPORTED_TYPE 78,2807
-#define MM_LINE_TOO_LONG 79,2842
-#define MM_COULD_NOT_WRITE_FILE 80,2877
-#define MM_MTX_STR 98,3567
-#define MM_ARRAY_STR 99,3602
-#define MM_DENSE_STR 100,3636
-#define MM_COORDINATE_STR 101,3670
-#define MM_SPARSE_STR 102,3709
-#define MM_COMPLEX_STR 103,3748
-#define MM_REAL_STR 104,3784
-#define MM_INT_STR 105,3817
-#define MM_GENERAL_STR 106,3853
-#define MM_SYMM_STR 107,3889
-#define MM_HERM_STR 108,3927
-#define MM_SKEW_STR 109,3965
-#define MM_PATTERN_STR 110,4008
-
 src/mat/tests/ex72mmio.c,495
 ex72mmio.c:^?ex72mmio.c^A,1
 static char mm_buffer[mm_buffer14,206
@@ -29425,11 +29447,6 @@
 static char help[help2,1
 int main(6,102
 
-src/mat/tests/ex42.c,44
-ex42.c:^?ex42.c^A,1
-static char help[help2,1
-int main(11,444
-
 src/mat/tests/ex41.c,44
 ex41.c:^?ex41.c^A,1
 static char help[help2,1
@@ -29647,12 +29664,6 @@
 static char help[help1,0
 int main(6,105
 
-src/mat/tests/ex24.c,79
-ex24.c:^?ex24.c^A,1
-static char help[help2,1
-PetscErrorCode FormJacobian(6,208
-int main(25,752
-
 src/mat/tests/ex239.c,43
 ex239.c:^?ex239.c^A,1
 static char help[help1,0
@@ -29912,11 +29923,6 @@
   #define SyncDevice(43,1592
 int main(46,1623
 
-src/mat/tests/ex199.c,43
-ex199.c:^?ex199.c^A,1
-static char help[help2,1
-int main(6,101
-
 src/mat/tests/ex198.c,43
 ex198.c:^?ex198.c^A,1
 static char help[help1,0
@@ -30268,11 +30274,6 @@
 static char help[help2,1
 int main(6,68
 
-src/mat/tests/ex131.c,42
-ex131.c:^?ex131.c^A,1
-static char help[help2,1
-int main(6,90
-
 src/mat/tests/ex16f90.F90,0
 ex16f90.F90:^?ex16f90.F90^A,1
 
@@ -30387,9 +30388,6 @@
 src/sys/tutorials/ex2f.F90,0
 ex2f.F90:^?ex2f.F90^A,1
 
-src/sys/tutorials/ex3f.F90,0
-ex3f.F90:^?ex3f.F90^A,1
-
 src/sys/tutorials/ex3f90.F90,0
 ex3f90.F90:^?ex3f90.F90^A,1
 
@@ -30402,6 +30400,14 @@
 src/sys/tutorials/ex8f90.F90,0
 ex8f90.F90:^?ex8f90.F90^A,1
 
+src/sys/tutorials/ex3f.F90,0
+ex3f.F90:^?ex3f.F90^A,1
+
+src/mat/tests/ex131.c,42
+ex131.c:^?ex131.c^A,1
+static char help[help2,1
+int main(6,90
+
 src/mat/tests/ex130.c,43
 ex130.c:^?ex130.c^A,1
 static char help[help2,1
@@ -30611,12 +30617,6 @@
 static char help[help2,1
 int main(6,98
 
-src/mat/tests/ex1.c,92
-ex1.c:^?ex1.c^A,1
-static char help[help2,1
-static PetscErrorCode createMatsAndVecs(8,327
-int main(87,2925
-
 src/mat/tests/ex140.py,118
 ex140.py:^?ex140.py^A,1
 class Matrix(3,28
@@ -30893,6 +30893,18 @@
 PETSC_EXTERN void matpartitioningsettype_(33,1349
 PETSC_EXTERN void matpartitioningviewfromoptions_(40,1593
 
+src/mat/order/wbm.c,184
+wbm.c:^?wbm.c^A,1
+    #define mc64id_dist 15,441
+    #define mc64ad_dist 16,477
+    #define mc64id_dist 19,560
+    #define mc64ad_dist 20,596
+PETSC_INTERN PetscErrorCode MatGetOrdering_WBM(32,1139
+
+src/mat/order/degree.c,41
+degree.c:^?degree.c^A,1
+PetscErrorCode SPARSEPACKdegree(27,1075
+
 src/mat/order/sorder.c,389
 sorder.c:^?sorder.c^A,1
 PetscFunctionList MatOrderingList 9,194
@@ -30904,14 +30916,6 @@
 PetscErrorCode MatGetOrdering(161,5759
 PetscErrorCode MatGetOrderingList(247,9612
 
-src/mat/order/wbm.c,184
-wbm.c:^?wbm.c^A,1
-    #define mc64id_dist 15,440
-    #define mc64ad_dist 16,476
-    #define mc64id_dist 19,559
-    #define mc64ad_dist 20,595
-PETSC_INTERN PetscErrorCode MatGetOrdering_WBM(32,1138
-
 src/mat/order/sregis.c,47
 sregis.c:^?sregis.c^A,1
 PetscErrorCode MatOrderingRegisterAll(40,1702
@@ -31000,10 +31004,6 @@
 fn1wd.c:^?fn1wd.c^A,1
 PetscErrorCode SPARSEPACKfn1wd(31,1797
 
-src/mat/order/degree.c,41
-degree.c:^?degree.c^A,1
-PetscErrorCode SPARSEPACKdegree(27,1074
-
 src/mat/order/metisnd/metisnd.c,58
 metisnd.c:^?metisnd.c^A,1
 PETSC_INTERN PetscErrorCode MatGetOrdering_METISND(9,173
@@ -31058,19 +31058,19 @@
 PetscErrorCode MatFDColoringSetF(10,239
 static PetscErrorCode MatFDColoringView_Draw_Zoom(23,489
 static PetscErrorCode MatFDColoringView_Draw(44,1074
-PetscErrorCode MatFDColoringView(97,2749
-PetscErrorCode MatFDColoringSetParameters(169,5620
-PetscErrorCode MatFDColoringSetBlockSize(194,6418
-PetscErrorCode MatFDColoringSetUp(222,7415
-PetscErrorCode MatFDColoringGetFunction(257,8601
-PetscErrorCode MatFDColoringSetFunction(293,9884
-PetscErrorCode MatFDColoringSetFromOptions(331,11211
-PetscErrorCode MatFDColoringSetType(382,13555
-PetscErrorCode MatFDColoringViewFromOptions(396,14213
-PetscErrorCode MatFDColoringCreate(436,15768
-PetscErrorCode MatFDColoringDestroy(489,17873
-PetscErrorCode MatFDColoringGetPerturbedColumns(551,19850
-PetscErrorCode MatFDColoringApply(585,21171
+PetscErrorCode MatFDColoringView(97,2756
+PetscErrorCode MatFDColoringSetParameters(169,5627
+PetscErrorCode MatFDColoringSetBlockSize(194,6432
+PetscErrorCode MatFDColoringSetUp(222,7436
+PetscErrorCode MatFDColoringGetFunction(257,8629
+PetscErrorCode MatFDColoringSetFunction(293,9919
+PetscErrorCode MatFDColoringSetFromOptions(331,11253
+PetscErrorCode MatFDColoringSetType(382,13604
+PetscErrorCode MatFDColoringViewFromOptions(396,14263
+PetscErrorCode MatFDColoringCreate(436,15825
+PetscErrorCode MatFDColoringDestroy(489,17937
+PetscErrorCode MatFDColoringGetPerturbedColumns(553,19921
+PetscErrorCode MatFDColoringApply(587,21249
 
 src/mat/matfd/makefile,101
 makefile:^?makefile^A,1
@@ -31104,7 +31104,7 @@
 PETSC_EXTERN void matfdcoloringview_(76,3597
 PETSC_EXTERN void matfdcoloringsettype_(84,3791
 
-src/mat/interface/matrix.c,21063
+src/mat/interface/matrix.c,21064
 matrix.c:^?matrix.c^A,1
 PetscClassId MAT_CLASSID;12,323
 PetscClassId MAT_COLORING_CLASSID;13,349
@@ -31229,251 +31229,251 @@
 PetscLogEvent MAT_H2Opus_Build, MAT_H2Opus_Compress, MAT_H2Opus_Orthog,46,3080
 PetscLogEvent MAT_H2Opus_Build, MAT_H2Opus_Compress, MAT_H2Opus_Orthog, MAT_H2Opus_LR;46,3080
 const char *const MatFactorTypes[MatFactorTypes48,3168
-PetscErrorCode MatSetRandom(75,4123
-PetscErrorCode MatFactorGetErrorZeroPivot(128,5996
-PetscErrorCode MatFactorGetError(158,6870
-PetscErrorCode MatFactorClearError(183,7602
-PETSC_INTERN PetscErrorCode MatFindNonzeroRowsOrCols_Basic(193,7887
-PetscErrorCode MatFindNonzeroRows(264,9990
-PetscErrorCode MatFindZeroRows(293,10940
-PetscErrorCode MatGetDiagonalBlock(336,12209
-PetscErrorCode MatGetTrace(369,13108
-PetscErrorCode MatRealPart(395,13655
-PetscErrorCode MatGetGhosts(426,14607
-PetscErrorCode MatImaginaryPart(453,15443
-PetscErrorCode MatMissingDiagonal(481,16298
-PetscErrorCode MatGetRow(555,19215
-PetscErrorCode MatConjugate(585,20447
-PetscErrorCode MatRestoreRow(634,22013
-PetscErrorCode MatGetRowUpperTriangular(664,23150
-PetscErrorCode MatRestoreRowUpperTriangular(692,24030
-PetscErrorCode MatSetOptionsPrefix(727,25262
-PetscErrorCode MatSetOptionsPrefixFactor(756,26314
-PetscErrorCode MatAppendOptionsPrefixFactor(794,27932
-PetscErrorCode MatAppendOptionsPrefix(835,29202
-PetscErrorCode MatGetOptionsPrefix(863,29952
-PetscErrorCode MatResetPreallocation(891,30774
-PetscErrorCode MatSetUp(921,31662
-PetscErrorCode MatViewFromOptions(974,33646
-PetscErrorCode MatView(1062,37849
-PETSC_UNUSED static int TV_display_type(1160,42895
-PetscErrorCode MatLoad(1289,48852
-static PetscErrorCode MatDestroy_Redundant(1315,49819
-PetscErrorCode MatDestroy(1360,51297
-PetscErrorCode MatSetValues(1438,54471
-PetscErrorCode MatSetValuesIS(1526,58576
-PetscErrorCode MatSetValuesRowLocal(1568,59905
-PetscErrorCode MatSetValuesRow(1606,61202
-PetscErrorCode MatSetValuesStencil(1697,65261
-PetscErrorCode MatSetValuesBlockedStencil(1807,69650
-PetscErrorCode MatSetStencil(1879,72216
-PetscErrorCode MatSetValuesBlocked(1964,75479
-PetscErrorCode MatGetValues(2056,79636
-PetscErrorCode MatGetValuesLocal(2106,81961
-PetscErrorCode MatSetValuesBatch(2166,84998
-PetscErrorCode MatSetLocalToGlobalMapping(2203,86498
-PetscErrorCode MatGetLocalToGlobalMapping(2234,87486
-PetscErrorCode MatSetLayouts(2267,88361
-PetscErrorCode MatGetLayouts(2292,88986
-PetscErrorCode MatSetValuesLocal(2343,90877
-PetscErrorCode MatSetValuesBlockedLocal(2429,94798
-PetscErrorCode MatMultDiagonalBlock(2511,98468
-PetscErrorCode MatMult(2550,99724
-PetscErrorCode MatMultTranspose(2600,102112
-PetscErrorCode MatMultHermitianTranspose(2658,104988
-PetscErrorCode MatMultAdd(2719,107595
-PetscErrorCode MatMultTransposeAdd(2767,109865
-PetscErrorCode MatMultHermitianTransposeAdd(2816,112164
-PetscErrorCode MatGetFactorType(2874,114845
-PetscErrorCode MatSetFactorType(2898,115639
-PetscErrorCode MatGetInfo(2969,117865
-PetscErrorCode MatGetInfo_External(2984,118292
-PetscErrorCode MatLUFactor(3027,119906
-PetscErrorCode MatILUFactor(3084,122091
-PetscErrorCode MatLUFactorSymbolic(3135,124299
-PetscErrorCode MatLUFactorNumeric(3193,126663
-PetscErrorCode MatCholeskyFactor(3251,129166
-PetscErrorCode MatCholeskyFactorSymbolic(3310,131437
-PetscErrorCode MatCholeskyFactorNumeric(3367,133851
-PetscErrorCode MatQRFactor(3428,136607
-PetscErrorCode MatQRFactorSymbolic(3475,138573
-PetscErrorCode MatQRFactorNumeric(3526,140549
-PetscErrorCode MatSolve(3580,142741
-static PetscErrorCode MatMatSolve_Basic(3606,144168
-PetscErrorCode MatMatSolve(3666,146536
-PetscErrorCode MatMatSolveTranspose(3712,148535
-PetscErrorCode MatMatTransposeSolve(3760,150991
-PetscErrorCode MatForwardSolve(3815,153363
-PetscErrorCode MatBackwardSolve(3868,155626
-PetscErrorCode MatSolveAdd(3912,157468
-PetscErrorCode MatSolveTranspose(3983,160396
-PetscErrorCode MatSolveTransposeAdd(4034,162464
-PetscErrorCode MatSOR(4140,166913
-PetscErrorCode MatCopy_Basic(4169,168758
-PetscErrorCode MatCopy(4215,170177
-PetscErrorCode MatConvert(4279,172866
-PetscErrorCode MatFactorGetSolverType(4447,181150
-typedef struct _MatSolverTypeForSpecifcType *MatSolverTypeForSpecifcType;MatSolverTypeForSpecifcType4462,181711
-struct _MatSolverTypeForSpecifcType 4463,181785
-  MatType mtype;4464,181823
-  PetscErrorCode (*createfactor[createfactor4466,181877
-  MatSolverTypeForSpecifcType next;4467,181964
-typedef struct _MatSolverTypeHolder *MatSolverTypeHolder;MatSolverTypeHolder4470,182004
-struct _MatSolverTypeHolder 4471,182062
-  char                       *name;name4472,182092
-  MatSolverTypeForSpecifcType handlers;4473,182128
-  MatSolverTypeHolder         next;4474,182168
-static MatSolverTypeHolder MatSolverTypeHolders 4477,182208
-PetscErrorCode MatSolverTypeRegister(4492,182835
-PetscErrorCode MatSolverTypeGet(4555,185380
-PetscErrorCode MatSolverTypeDestroy(4619,187521
-PetscErrorCode MatFactorGetCanUseOrdering(4661,188772
-PetscErrorCode MatFactorGetPreferredOrdering(4683,189416
-PetscErrorCode MatGetFactor(4728,191604
-PetscErrorCode MatGetFactorAvailable(4784,194381
-PetscErrorCode MatDuplicate(4827,196138
-PetscErrorCode MatGetDiagonal(4889,198123
-PetscErrorCode MatGetRowMin(4927,199329
-PetscErrorCode MatGetRowMinAbs(4972,200676
-PetscErrorCode MatGetRowMax(5019,202230
-PetscErrorCode MatGetRowMaxAbs(5064,203579
-PetscErrorCode MatGetRowSum(5105,204798
-PetscErrorCode MatTransposeSetPrecursor(5142,206256
-PetscErrorCode MatTranspose(5191,208287
-PetscErrorCode MatTransposeSymbolic(5248,211078
-PetscErrorCode MatTransposeCheckNonzeroState_Private(5264,211833
-PetscErrorCode MatIsTranspose(5305,213536
-PetscErrorCode MatHermitianTranspose(5344,214954
-PetscErrorCode MatIsHermitianTranspose(5377,215813
-PetscErrorCode MatPermute(5421,217465
-PetscErrorCode MatEqual(5461,218807
-PetscErrorCode MatDiagonalScale(5505,220494
-PetscErrorCode MatScale(5547,221763
-PetscErrorCode MatNorm(5583,222921
-static PetscInt MatAssemblyEnd_InUse 5602,223590
-PetscErrorCode MatAssemblyBegin(5633,225067
-PetscErrorCode MatAssembled(5669,226186
-PetscErrorCode MatAssemblyEnd(5705,227683
-PetscErrorCode MatSetOption(5875,236763
-PetscErrorCode MatGetOption(5984,240925
-PetscErrorCode MatZeroEntries(6041,242983
-PetscErrorCode MatZeroRowsColumns(6097,245725
-PetscErrorCode MatZeroRowsColumnsIS(6134,247348
-PetscErrorCode MatZeroRows(6204,250727
-PetscErrorCode MatZeroRowsIS(6241,252327
-PetscErrorCode MatZeroRowsStencil(6303,254754
-PetscErrorCode MatZeroRowsColumnsStencil(6384,258012
-PetscErrorCode MatZeroRowsLocal(6446,260480
-PetscErrorCode MatZeroRowsLocalIS(6499,262902
-PetscErrorCode MatZeroRowsColumnsLocal(6544,264805
-PetscErrorCode MatZeroRowsColumnsLocalIS(6593,267135
-PetscErrorCode MatGetSize(6631,268278
-PetscErrorCode MatGetLocalSize(6657,269062
-PetscErrorCode MatGetOwnershipRangeColumn(6685,270129
-PetscErrorCode MatGetOwnershipRange(6722,271621
-PetscErrorCode MatGetOwnershipRanges(6752,272763
-PetscErrorCode MatGetOwnershipRangesColumn(6778,273717
-PetscErrorCode MatGetOwnershipIS(6806,274808
-PetscErrorCode MatILUFactorSymbolic(6864,276976
-PetscErrorCode MatICCFactorSymbolic(6926,279704
-PetscErrorCode MatCreateSubMatrices(7003,283255
-PetscErrorCode MatCreateSubMatricesMPI(7063,285604
-PetscErrorCode MatDestroyMatrices(7113,287320
-PetscErrorCode MatDestroySubMatrices(7147,288334
-PetscErrorCode MatGetSeqNonzeroStructure(7181,289318
-PetscErrorCode MatDestroySeqNonzeroStructure(7213,290385
-PetscErrorCode MatIncreaseOverlap(7246,291522
-PetscErrorCode MatIncreaseOverlapSplit(7296,293399
-PetscErrorCode MatGetBlockSize(7338,294831
-PetscErrorCode MatGetBlockSizes(7369,295725
-PetscErrorCode MatSetBlockSize(7400,296805
-  PetscInt         n;7410,297067
-  IS              *is;is7411,297089
-  Mat             *mat;mat7412,297112
-  PetscObjectState nonzerostate;7413,297136
-  Mat              C;7414,297169
-} EnvelopeData;7415,297191
-static PetscErrorCode EnvelopeDataDestroy(7417,297208
-static PetscErrorCode MatComputeVariableBlockEnvelope(7441,297950
-PetscErrorCode MatInvertVariableBlockEnvelope(7600,304087
-PetscErrorCode MatSetVariableBlockSizes(7657,306467
-PetscErrorCode MatGetVariableBlockSizes(7690,307766
-PetscErrorCode MatSetBlockSizes(7723,309019
-PetscErrorCode MatSetBlockSizesFromMats(7769,310617
-PetscErrorCode MatResidual(7797,311436
-PetscErrorCode MatGetRowIJ(7861,313884
-PetscErrorCode MatGetColumnIJ(7905,315674
-PetscErrorCode MatRestoreRowIJ(7951,317435
-PetscErrorCode MatRestoreColumnIJ(7995,319038
-PetscErrorCode MatColoringPatch(8034,320209
-PetscErrorCode MatSetUnfactored(8086,322056
-PetscErrorCode MatCreateSubMatrix(8290,327892
-PetscErrorCode MatPropagateSymmetryOptions(8396,332206
-PetscErrorCode MatStashSetInitialSize(8440,333804
-PetscErrorCode MatInterpolateAdd(8471,334626
-PetscErrorCode MatInterpolate(8508,335546
-PetscErrorCode MatRestrict(8543,336360
-PetscErrorCode MatMatInterpolateAdd(8582,337412
-PetscErrorCode MatMatInterpolate(8659,340178
-PetscErrorCode MatMatRestrict(8687,340921
-PetscErrorCode MatGetNullSpace(8707,341376
-PetscErrorCode MatSetNullSpace(8751,343756
-PetscErrorCode MatGetTransposeNullSpace(8776,344602
-PetscErrorCode MatSetTransposeNullSpace(8804,345537
-PetscErrorCode MatSetNearNullSpace(8834,346648
-PetscErrorCode MatGetNearNullSpace(8862,347430
-PetscErrorCode MatICCFactor(8900,348575
-PetscErrorCode MatDiagonalScaleLocal(8935,349842
-PetscErrorCode MatGetInertia(8982,351293
-PetscErrorCode MatSolves(9014,352384
-PetscErrorCode MatIsSymmetric(9055,354053
-PetscErrorCode MatIsHermitian(9100,355771
-PetscErrorCode MatIsSymmetricKnown(9143,357427
-PetscErrorCode MatIsSPDKnown(9180,358770
-PetscErrorCode MatIsHermitianKnown(9218,360116
-PetscErrorCode MatIsStructurallySymmetric(9254,361395
-PetscErrorCode MatIsStructurallySymmetricKnown(9290,362903
-PetscErrorCode MatStashGetInfo(9324,363939
-PetscErrorCode MatCreateVecs(9354,365046
-PetscErrorCode MatFactorInfoInitialize(9419,367577
-PetscErrorCode MatFactorSetSchurIS(9448,368646
-PetscErrorCode MatFactorCreateSchurComplement(9498,371125
-PetscErrorCode MatFactorGetSchurComplement(9547,373080
-PetscErrorCode MatFactorRestoreSchurComplement(9572,373972
-PetscErrorCode MatFactorSolveSchurComplementTranspose(9604,374989
-PetscErrorCode MatFactorSolveSchurComplement(9648,376470
-PetscErrorCode MatFactorInvertSchurComplement(9690,377861
-PetscErrorCode MatFactorFactorizeSchurComplement(9717,378670
-PetscErrorCode MatPtAP(9755,379991
-PetscErrorCode MatRARt(9810,382172
-static PetscErrorCode MatProduct_Private(9835,383319
-PetscErrorCode MatMatMult(9923,387365
-PetscErrorCode MatMatTransposeMult(9966,389192
-PetscErrorCode MatTransposeMatMult(10005,390667
-PetscErrorCode MatMatMatMult(10045,392103
-PetscErrorCode MatCreateRedundantMatrix(10096,394207
-PetscErrorCode MatGetMultiProcBlock(10232,400052
-PetscErrorCode MatGetLocalSubMatrix(10277,402013
-PetscErrorCode MatRestoreLocalSubMatrix(10310,403122
-PetscErrorCode MatFindZeroDiagonals(10345,404150
-PetscErrorCode MatFindOffBlockDiagonalEntries(10393,405803
-PetscErrorCode MatInvertBlockDiagonal(10427,406925
-PetscErrorCode MatInvertVariableBlockDiagonal(10459,408090
-PetscErrorCode MatInvertBlockDiagonalMat(10485,409021
-PetscErrorCode MatTransposeColoringDestroy(10522,410309
-PetscErrorCode MatTransColoringApplySpToDen(10566,411650
-PetscErrorCode MatTransColoringApplyDenToSp(10600,412786
-PetscErrorCode MatTransposeColoringCreate(10630,413789
-PetscErrorCode MatGetNonzeroState(10675,415577
-PetscErrorCode MatCreateMPIMatConcatenateSeqMat(10705,416388
-PetscErrorCode MatSubdomainsCreateCoalesce(10748,417789
-PetscErrorCode MatGalerkin(10797,419649
-PetscErrorCode MatSetOperation(10865,422155
-PetscErrorCode MatGetOperation(10902,423367
-PetscErrorCode MatHasOperation(10932,424222
-PetscErrorCode MatHasCongruentLayouts(10969,425183
-PetscErrorCode MatSetInf(10989,425931
-PETSC_EXTERN PetscErrorCode MatCreateGraph(11015,426752
+PetscErrorCode MatSetRandom(79,4216
+PetscErrorCode MatFactorGetErrorZeroPivot(132,6096
+PetscErrorCode MatFactorGetError(162,6977
+PetscErrorCode MatFactorClearError(187,7716
+PETSC_INTERN PetscErrorCode MatFindNonzeroRowsOrCols_Basic(197,8001
+PetscErrorCode MatFindNonzeroRows(268,10108
+PetscErrorCode MatFindZeroRows(297,11062
+PetscErrorCode MatGetDiagonalBlock(340,12319
+PetscErrorCode MatGetTrace(373,13218
+PetscErrorCode MatRealPart(399,13772
+PetscErrorCode MatGetGhosts(430,14723
+PetscErrorCode MatImaginaryPart(457,15566
+PetscErrorCode MatMissingDiagonal(485,16421
+PetscErrorCode MatGetRow(559,19340
+PetscErrorCode MatConjugate(589,20579
+PetscErrorCode MatRestoreRow(638,22151
+PetscErrorCode MatGetRowUpperTriangular(668,23295
+PetscErrorCode MatRestoreRowUpperTriangular(696,24182
+PetscErrorCode MatSetOptionsPrefix(731,25416
+PetscErrorCode MatSetOptionsPrefixFactor(760,26470
+PetscErrorCode MatAppendOptionsPrefixFactor(798,28090
+PetscErrorCode MatAppendOptionsPrefix(839,29355
+PetscErrorCode MatGetOptionsPrefix(867,30112
+PetscErrorCode MatResetPreallocation(895,30936
+PetscErrorCode MatSetUp(925,31819
+PetscErrorCode MatViewFromOptions(978,33798
+PetscErrorCode MatView(1066,38001
+PETSC_UNUSED static int TV_display_type(1164,43047
+PetscErrorCode MatLoad(1293,49011
+static PetscErrorCode MatDestroy_Redundant(1319,49978
+PetscErrorCode MatDestroy(1364,51451
+PetscErrorCode MatSetValues(1442,54625
+PetscErrorCode MatSetValuesIS(1530,58737
+PetscErrorCode MatSetValuesRowLocal(1572,60072
+PetscErrorCode MatSetValuesRow(1610,61378
+PetscErrorCode MatSetValuesStencil(1701,65439
+PetscErrorCode MatSetValuesBlockedStencil(1811,69830
+PetscErrorCode MatSetStencil(1883,72396
+PetscErrorCode MatSetValuesBlocked(1970,75668
+PetscErrorCode MatGetValues(2064,79854
+PetscErrorCode MatGetValuesLocal(2116,82186
+PetscErrorCode MatSetValuesBatch(2176,85223
+PetscErrorCode MatSetLocalToGlobalMapping(2213,86723
+PetscErrorCode MatGetLocalToGlobalMapping(2244,87711
+PetscErrorCode MatSetLayouts(2277,88588
+PetscErrorCode MatGetLayouts(2302,89220
+PetscErrorCode MatSetValuesLocal(2355,91125
+PetscErrorCode MatSetValuesBlockedLocal(2443,95053
+PetscErrorCode MatMultDiagonalBlock(2525,98727
+PetscErrorCode MatMult(2563,99925
+PetscErrorCode MatMultTranspose(2613,102317
+PetscErrorCode MatMultHermitianTranspose(2671,105197
+PetscErrorCode MatMultAdd(2732,107808
+PetscErrorCode MatMultTransposeAdd(2780,110082
+PetscErrorCode MatMultHermitianTransposeAdd(2829,112385
+PetscErrorCode MatGetFactorType(2887,115073
+PetscErrorCode MatSetFactorType(2911,115874
+PetscErrorCode MatGetInfo(2979,118038
+PetscErrorCode MatGetInfo_External(2994,118465
+PetscErrorCode MatLUFactor(3036,120019
+PetscErrorCode MatILUFactor(3095,122217
+PetscErrorCode MatLUFactorSymbolic(3146,124432
+PetscErrorCode MatLUFactorNumeric(3204,126803
+PetscErrorCode MatCholeskyFactor(3262,129313
+PetscErrorCode MatCholeskyFactorSymbolic(3321,131591
+PetscErrorCode MatCholeskyFactorNumeric(3378,134012
+PetscErrorCode MatQRFactor(3439,136775
+PetscErrorCode MatQRFactorSymbolic(3486,138748
+PetscErrorCode MatQRFactorNumeric(3537,140731
+PetscErrorCode MatSolve(3590,142864
+static PetscErrorCode MatMatSolve_Basic(3616,144291
+PetscErrorCode MatMatSolve(3676,146678
+PetscErrorCode MatMatSolveTranspose(3722,148683
+PetscErrorCode MatMatTransposeSolve(3770,151141
+PetscErrorCode MatForwardSolve(3825,153524
+PetscErrorCode MatBackwardSolve(3878,155798
+PetscErrorCode MatSolveAdd(3922,157651
+PetscErrorCode MatSolveTranspose(3993,160590
+PetscErrorCode MatSolveTransposeAdd(4044,162669
+PetscErrorCode MatSOR(4149,167052
+PetscErrorCode MatCopy_Basic(4178,168897
+PetscErrorCode MatCopy(4224,170311
+PetscErrorCode MatConvert(4288,173000
+PetscErrorCode MatFactorGetSolverType(4455,181277
+typedef struct _MatSolverTypeForSpecifcType *MatSolverTypeForSpecifcType;MatSolverTypeForSpecifcType4470,181838
+struct _MatSolverTypeForSpecifcType 4471,181912
+  MatType mtype;4472,181950
+  PetscErrorCode (*createfactor[createfactor4474,182004
+  MatSolverTypeForSpecifcType next;4475,182091
+typedef struct _MatSolverTypeHolder *MatSolverTypeHolder;MatSolverTypeHolder4478,182131
+struct _MatSolverTypeHolder 4479,182189
+  char                       *name;name4480,182219
+  MatSolverTypeForSpecifcType handlers;4481,182255
+  MatSolverTypeHolder         next;4482,182295
+static MatSolverTypeHolder MatSolverTypeHolders 4485,182335
+PetscErrorCode MatSolverTypeRegister(4500,182969
+PetscErrorCode MatSolverTypeGet(4563,185523
+PetscErrorCode MatSolverTypeDestroy(4627,187664
+PetscErrorCode MatFactorGetCanUseOrdering(4669,188922
+PetscErrorCode MatFactorGetPreferredOrdering(4691,189573
+PetscErrorCode MatGetFactor(4736,191768
+PetscErrorCode MatGetFactorAvailable(4792,194552
+PetscErrorCode MatDuplicate(4835,196316
+PetscErrorCode MatGetDiagonal(4897,198301
+PetscErrorCode MatGetRowMin(4935,199514
+PetscErrorCode MatGetRowMinAbs(4980,200870
+PetscErrorCode MatGetRowMax(5027,202431
+PetscErrorCode MatGetRowMaxAbs(5072,203789
+PetscErrorCode MatGetRowSum(5113,205015
+PetscErrorCode MatTransposeSetPrecursor(5150,206480
+PetscErrorCode MatTranspose(5199,208518
+PetscErrorCode MatTransposeSymbolic(5256,211311
+PetscErrorCode MatTransposeCheckNonzeroState_Private(5272,212066
+PetscErrorCode MatIsTranspose(5313,213771
+PetscErrorCode MatHermitianTranspose(5352,215196
+PetscErrorCode MatIsHermitianTranspose(5385,216057
+PetscErrorCode MatPermute(5429,217716
+PetscErrorCode MatEqual(5469,219053
+PetscErrorCode MatDiagonalScale(5513,220746
+PetscErrorCode MatScale(5555,222015
+PetscErrorCode MatNorm(5591,223173
+static PetscInt MatAssemblyEnd_InUse 5610,223842
+PetscErrorCode MatAssemblyBegin(5641,225319
+PetscErrorCode MatAssembled(5677,226438
+PetscErrorCode MatAssemblyEnd(5713,227935
+PetscErrorCode MatSetOption(5883,237016
+PetscErrorCode MatGetOption(5992,241185
+PetscErrorCode MatZeroEntries(6049,243243
+PetscErrorCode MatZeroRowsColumns(6105,246021
+PetscErrorCode MatZeroRowsColumnsIS(6142,247651
+PetscErrorCode MatZeroRows(6212,251045
+PetscErrorCode MatZeroRowsIS(6249,252654
+PetscErrorCode MatZeroRowsStencil(6311,255088
+PetscErrorCode MatZeroRowsColumnsStencil(6392,258353
+PetscErrorCode MatZeroRowsLocal(6454,260828
+PetscErrorCode MatZeroRowsLocalIS(6507,263257
+PetscErrorCode MatZeroRowsColumnsLocal(6552,265167
+PetscErrorCode MatZeroRowsColumnsLocalIS(6601,267504
+PetscErrorCode MatGetSize(6640,268652
+PetscErrorCode MatGetLocalSize(6666,269436
+PetscErrorCode MatGetOwnershipRangeColumn(6694,270503
+PetscErrorCode MatGetOwnershipRange(6731,272002
+PetscErrorCode MatGetOwnershipRanges(6761,273144
+PetscErrorCode MatGetOwnershipRangesColumn(6787,274098
+PetscErrorCode MatGetOwnershipIS(6815,275196
+PetscErrorCode MatILUFactorSymbolic(6875,277376
+PetscErrorCode MatICCFactorSymbolic(6939,280117
+PetscErrorCode MatCreateSubMatrices(7016,283668
+PetscErrorCode MatCreateSubMatricesMPI(7076,286024
+PetscErrorCode MatDestroyMatrices(7128,287741
+PetscErrorCode MatDestroySubMatrices(7164,288763
+PetscErrorCode MatGetSeqNonzeroStructure(7198,289747
+PetscErrorCode MatDestroySeqNonzeroStructure(7230,290814
+PetscErrorCode MatIncreaseOverlap(7263,291951
+PetscErrorCode MatIncreaseOverlapSplit(7313,293835
+PetscErrorCode MatGetBlockSize(7355,295274
+PetscErrorCode MatGetBlockSizes(7386,296175
+PetscErrorCode MatSetBlockSize(7417,297262
+  PetscInt         n;7427,297524
+  IS              *is;is7428,297546
+  Mat             *mat;mat7429,297569
+  PetscObjectState nonzerostate;7430,297593
+  Mat              C;7431,297626
+} EnvelopeData;7432,297648
+static PetscErrorCode EnvelopeDataDestroy(7434,297665
+static PetscErrorCode MatComputeVariableBlockEnvelope(7458,298407
+PetscErrorCode MatInvertVariableBlockEnvelope(7617,304546
+PetscErrorCode MatSetVariableBlockSizes(7674,306933
+PetscErrorCode MatGetVariableBlockSizes(7707,308239
+PetscErrorCode MatSetBlockSizes(7740,309499
+PetscErrorCode MatSetBlockSizesFromMats(7786,311104
+PetscErrorCode MatResidual(7814,311923
+PetscErrorCode MatGetRowIJ(7878,314377
+PetscErrorCode MatGetColumnIJ(7922,316174
+PetscErrorCode MatRestoreRowIJ(7968,317950
+PetscErrorCode MatRestoreColumnIJ(8012,319560
+PetscErrorCode MatColoringPatch(8051,320738
+PetscErrorCode MatSetUnfactored(8103,322592
+PetscErrorCode MatCreateSubMatrix(8303,328454
+PetscErrorCode MatPropagateSymmetryOptions(8409,332775
+PetscErrorCode MatStashSetInitialSize(8453,334373
+PetscErrorCode MatInterpolateAdd(8484,335206
+PetscErrorCode MatInterpolate(8521,336133
+PetscErrorCode MatRestrict(8556,336954
+PetscErrorCode MatMatInterpolateAdd(8595,338015
+PetscErrorCode MatMatInterpolate(8672,340790
+PetscErrorCode MatMatRestrict(8700,341542
+PetscErrorCode MatGetNullSpace(8720,342004
+PetscErrorCode MatSetNullSpace(8764,344393
+PetscErrorCode MatGetTransposeNullSpace(8789,345246
+PetscErrorCode MatSetTransposeNullSpace(8817,346188
+PetscErrorCode MatSetNearNullSpace(8847,347308
+PetscErrorCode MatGetNearNullSpace(8875,348099
+PetscErrorCode MatICCFactor(8913,349251
+PetscErrorCode MatDiagonalScaleLocal(8948,350525
+PetscErrorCode MatGetInertia(8995,351983
+PetscErrorCode MatSolves(9026,353015
+PetscErrorCode MatIsSymmetric(9067,354691
+PetscErrorCode MatIsHermitian(9112,356416
+PetscErrorCode MatIsSymmetricKnown(9155,358079
+PetscErrorCode MatIsSPDKnown(9192,359429
+PetscErrorCode MatIsHermitianKnown(9230,360782
+PetscErrorCode MatIsStructurallySymmetric(9266,362068
+PetscErrorCode MatIsStructurallySymmetricKnown(9302,363583
+PetscErrorCode MatStashGetInfo(9336,364619
+PetscErrorCode MatCreateVecs(9366,365726
+PetscErrorCode MatFactorInfoInitialize(9431,368264
+PetscErrorCode MatFactorSetSchurIS(9459,369339
+PetscErrorCode MatFactorCreateSchurComplement(9509,371829
+PetscErrorCode MatFactorGetSchurComplement(9558,373796
+PetscErrorCode MatFactorRestoreSchurComplement(9583,374695
+PetscErrorCode MatFactorSolveSchurComplementTranspose(9615,375719
+PetscErrorCode MatFactorSolveSchurComplement(9659,377207
+PetscErrorCode MatFactorInvertSchurComplement(9701,378605
+PetscErrorCode MatFactorFactorizeSchurComplement(9728,379421
+PetscErrorCode MatPtAP(9766,380744
+PetscErrorCode MatRARt(9821,382927
+static PetscErrorCode MatProduct_Private(9846,384074
+PetscErrorCode MatMatMult(9934,388122
+PetscErrorCode MatMatTransposeMult(9977,389951
+PetscErrorCode MatTransposeMatMult(10016,391428
+PetscErrorCode MatMatMatMult(10056,392866
+PetscErrorCode MatCreateRedundantMatrix(10107,394977
+PetscErrorCode MatGetMultiProcBlock(10243,400884
+PetscErrorCode MatGetLocalSubMatrix(10288,402859
+PetscErrorCode MatRestoreLocalSubMatrix(10321,403975
+PetscErrorCode MatFindZeroDiagonals(10355,404948
+PetscErrorCode MatFindOffBlockDiagonalEntries(10403,406608
+PetscErrorCode MatInvertBlockDiagonal(10437,407730
+PetscErrorCode MatInvertVariableBlockDiagonal(10469,408902
+PetscErrorCode MatInvertBlockDiagonalMat(10495,409844
+PetscErrorCode MatTransposeColoringDestroy(10532,411139
+PetscErrorCode MatTransColoringApplySpToDen(10575,412486
+PetscErrorCode MatTransColoringApplyDenToSp(10608,413628
+PetscErrorCode MatTransposeColoringCreate(10638,414638
+PetscErrorCode MatGetNonzeroState(10683,416433
+PetscErrorCode MatCreateMPIMatConcatenateSeqMat(10713,417244
+PetscErrorCode MatSubdomainsCreateCoalesce(10756,418640
+PetscErrorCode MatGalerkin(10805,420507
+PetscErrorCode MatSetOperation(10878,423036
+PetscErrorCode MatGetOperation(10915,424255
+PetscErrorCode MatHasOperation(10942,424963
+PetscErrorCode MatHasCongruentLayouts(10979,425931
+PetscErrorCode MatSetInf(10999,426679
+PETSC_EXTERN PetscErrorCode MatCreateGraph(11025,427507
 
 src/mat/interface/matreg.c,437
 matreg.c:^?matreg.c^A,1
@@ -31485,9 +31485,9 @@
 PetscErrorCode MatGetType(193,6223
 PetscErrorCode MatGetVecType(217,6735
 PetscErrorCode MatSetVecType(242,7330
-PetscErrorCode MatRegister(277,8182
-MatRootName MatRootNameList 285,8414
-PetscErrorCode MatRegisterRootName(310,9639
+PetscErrorCode MatRegister(277,8177
+MatRootName MatRootNameList 285,8409
+PetscErrorCode MatRegisterRootName(310,9634
 
 src/mat/interface/matproduct.c,2052
 matproduct.c:^?matproduct.c^A,1
@@ -31499,39 +31499,39 @@
 static PetscErrorCode MatProductNumeric_ABC_Unsafe(136,5218
 static PetscErrorCode MatProductSymbolic_ABC_Unsafe(149,5565
 static PetscErrorCode MatProductSymbolic_Unsafe(179,6742
-PetscErrorCode MatProductReplaceMats(221,8214
-static PetscErrorCode MatProductNumeric_X_Dense(279,10706
-static PetscErrorCode MatProductSymbolic_X_Dense(351,13410
-static PetscErrorCode MatProductSetFromOptions_Private(380,14564
-PetscErrorCode MatProductSetFromOptions(521,21318
-PetscErrorCode MatProductView(548,22598
-PetscErrorCode MatProductNumeric_AB(563,23263
-PetscErrorCode MatProductNumeric_AtB(573,23501
-PetscErrorCode MatProductNumeric_ABt(583,23749
-PetscErrorCode MatProductNumeric_PtAP(593,23997
-PetscErrorCode MatProductNumeric_RARt(603,24234
-PetscErrorCode MatProductNumeric_ABC(613,24471
-PetscErrorCode MatProductNumeric(640,25190
-PetscErrorCode MatProductSymbolic_AB(697,27417
-PetscErrorCode MatProductSymbolic_AtB(708,27723
-PetscErrorCode MatProductSymbolic_ABt(719,28040
-PetscErrorCode MatProductSymbolic_ABC(730,28357
-PetscErrorCode MatProductSymbolic(759,29293
-PetscErrorCode MatProductSetFill(824,31952
-PetscErrorCode MatProductSetAlgorithm(851,32891
-PetscErrorCode MatProductSetType(878,33776
-PetscErrorCode MatProductClear(912,34763
-PetscErrorCode MatProductCreate_Private(933,35422
-PetscErrorCode MatProductCreateWithMat(984,36939
-PetscErrorCode MatProductCreate(1058,39876
-  Mat BC;1088,41066
-  Mat ABC;1089,41076
-} MatMatMatPrivate;1090,41087
-static PetscErrorCode MatDestroy_MatMatMatPrivate(1092,41108
-static PetscErrorCode MatProductNumeric_ABC_Basic(1103,41386
-PetscErrorCode MatProductSymbolic_ABC_Basic(1125,42377
-PetscErrorCode MatProductGetType(1213,45940
-PetscErrorCode MatProductGetMats(1240,46651
+PetscErrorCode MatProductReplaceMats(221,8221
+static PetscErrorCode MatProductNumeric_X_Dense(279,10713
+static PetscErrorCode MatProductSymbolic_X_Dense(351,13417
+static PetscErrorCode MatProductSetFromOptions_Private(380,14571
+PetscErrorCode MatProductSetFromOptions(521,21332
+PetscErrorCode MatProductView(549,22663
+PetscErrorCode MatProductNumeric_AB(564,23328
+PetscErrorCode MatProductNumeric_AtB(574,23566
+PetscErrorCode MatProductNumeric_ABt(584,23814
+PetscErrorCode MatProductNumeric_PtAP(594,24062
+PetscErrorCode MatProductNumeric_RARt(604,24299
+PetscErrorCode MatProductNumeric_ABC(614,24536
+PetscErrorCode MatProductNumeric(641,25262
+PetscErrorCode MatProductSymbolic_AB(698,27489
+PetscErrorCode MatProductSymbolic_AtB(709,27795
+PetscErrorCode MatProductSymbolic_ABt(720,28112
+PetscErrorCode MatProductSymbolic_ABC(731,28429
+PetscErrorCode MatProductSymbolic(760,29372
+PetscErrorCode MatProductSetFill(825,32038
+PetscErrorCode MatProductSetAlgorithm(852,32984
+PetscErrorCode MatProductSetType(879,33876
+PetscErrorCode MatProductClear(913,34870
+PetscErrorCode MatProductCreate_Private(934,35529
+PetscErrorCode MatProductCreateWithMat(982,37032
+PetscErrorCode MatProductCreate(1056,39976
+  Mat BC;1086,41166
+  Mat ABC;1087,41176
+} MatMatMatPrivate;1088,41187
+static PetscErrorCode MatDestroy_MatMatMatPrivate(1090,41208
+static PetscErrorCode MatProductNumeric_ABC_Basic(1101,41486
+PetscErrorCode MatProductSymbolic_ABC_Basic(1123,42477
+PetscErrorCode MatProductGetType(1211,46047
+PetscErrorCode MatProductGetMats(1238,46765
 
 src/mat/interface/matnull.c,405
 matnull.c:^?matnull.c^A,1
@@ -31899,16 +31899,16 @@
 static PetscErrorCode MatShellSetOperation_Shell(1510,60811
 static PetscErrorCode MatShellGetOperation_Shell(1570,62780
 PETSC_EXTERN PetscErrorCode MatCreate_Shell(1620,64159
-PetscErrorCode MatCreateShell(1740,69574
-PetscErrorCode MatShellSetContext(1768,70431
-PetscErrorCode MatShellSetContextDestroy(1795,71280
-PetscErrorCode MatShellSetVecType(1816,71833
-PetscErrorCode MatShellSetManageScalingShifts(1836,72458
-PetscErrorCode MatShellTestMult(1865,73499
-PetscErrorCode MatShellTestMultTranspose(1927,76279
-PetscErrorCode MatShellSetOperation(2021,80443
-PetscErrorCode MatShellGetOperation(2061,81824
-PetscErrorCode MatIsShell(2085,82601
+PetscErrorCode MatCreateShell(1740,69578
+PetscErrorCode MatShellSetContext(1768,70435
+PetscErrorCode MatShellSetContextDestroy(1795,71284
+PetscErrorCode MatShellSetVecType(1816,71837
+PetscErrorCode MatShellSetManageScalingShifts(1836,72462
+PetscErrorCode MatShellTestMult(1865,73503
+PetscErrorCode MatShellTestMultTranspose(1927,76283
+PetscErrorCode MatShellSetOperation(2021,80447
+PetscErrorCode MatShellGetOperation(2061,81828
+PetscErrorCode MatIsShell(2085,82605
 
 src/mat/impls/shell/shellcnv.c,723
 shellcnv.c:^?shellcnv.c^A,1
@@ -32017,61 +32017,61 @@
 } Mat_SeqSELL;50,3008
 static inline PetscErrorCode MatSeqXSELLFreeSELL(55,3080
 #define MatSeqXSELLReallocateSELL(67,3420
-#define MatSetValue_SeqSELL_Private(99,5347
+#define MatSetValue_SeqSELL_Private(99,5348
 
-src/mat/impls/sell/seq/sell.c,2446
+src/mat/impls/sell/seq/sell.c,2447
 sell.c:^?sell.c^A,1
 static PetscBool  cited 9,229
 static const char citation[citation10,273
     #define _MM_SCALE_8 22,1076
     #define AVX512_Mult_Private(30,1280
     #define AVX2_Mult_Private(37,1702
-PetscErrorCode MatSeqSELLSetPreallocation(83,3627
-PetscErrorCode MatSeqSELLSetPreallocation_SeqSELL(92,3949
-PetscErrorCode MatGetRow_SeqSELL(175,7849
-PetscErrorCode MatRestoreRow_SeqSELL(198,8657
-PetscErrorCode MatConvert_SeqSELL_SeqAIJ(204,8815
-PetscErrorCode MatConvert_SeqAIJ_SeqSELL(244,9976
-PetscErrorCode MatMult_SeqSELL(292,11749
-PetscErrorCode MatMultAdd_SeqSELL(508,20243
-PetscErrorCode MatMultTransposeAdd_SeqSELL(684,27098
-PetscErrorCode MatMultTranspose_SeqSELL(731,28796
-PetscErrorCode MatMissingDiagonal_SeqSELL(746,29143
-PetscErrorCode MatMarkDiagonal_SeqSELL(771,29821
-PetscErrorCode MatInvertDiagonal_SeqSELL(797,30538
-PetscErrorCode MatZeroEntries_SeqSELL(840,31933
-PetscErrorCode MatDestroy_SeqSELL(850,32185
-PetscErrorCode MatSetOption_SeqSELL(882,33582
-PetscErrorCode MatGetDiagonal_SeqSELL(927,34774
-PetscErrorCode MatDiagonalScale_SeqSELL(961,35805
-PetscErrorCode MatGetValues_SeqSELL(1006,37740
-PetscErrorCode MatView_SeqSELL_ASCII(1046,39264
-PetscErrorCode MatView_SeqSELL_Draw_Zoom(1269,51142
-PetscErrorCode MatView_SeqSELL_Draw(1358,54329
-PetscErrorCode MatView_SeqSELL(1385,55086
-PetscErrorCode MatAssemblyEnd_SeqSELL(1401,55703
-PetscErrorCode MatGetInfo_SeqSELL(1454,58425
-PetscErrorCode MatSetValues_SeqSELL(1478,59231
-PetscErrorCode MatCopy_SeqSELL(1551,62207
-PetscErrorCode MatSetUp_SeqSELL(1567,62855
-PetscErrorCode MatSeqSELLGetArray_SeqSELL(1574,63012
-PetscErrorCode MatSeqSELLRestoreArray_SeqSELL(1583,63199
-PetscErrorCode MatRealPart_SeqSELL(1589,63327
-PetscErrorCode MatImaginaryPart_SeqSELL(1600,63598
-PetscErrorCode MatScale_SeqSELL(1612,63925
-PetscErrorCode MatShift_SeqSELL(1627,64401
-PetscErrorCode MatSOR_SeqSELL(1637,64672
-static struct _MatOps MatOps_Values 1740,69008
-PetscErrorCode MatStoreValues_SeqSELL(1892,76533
-PetscErrorCode MatRetrieveValues_SeqSELL(1907,77074
-PetscErrorCode MatSeqSELLRestoreArray(1931,77889
-PETSC_EXTERN PetscErrorCode MatCreate_SeqSELL(1938,78092
-PetscErrorCode MatDuplicateNoCreate_SeqSELL(1986,80020
-PetscErrorCode MatDuplicate_SeqSELL(2054,82174
-PetscErrorCode MatCreateSeqSELL(2164,87036
-PetscErrorCode MatEqual_SeqSELL(2174,87401
-PetscErrorCode MatSeqSELLInvalidateDiagonal(2193,88130
-PetscErrorCode MatConjugate_SeqSELL(2202,88309
+PetscErrorCode MatSeqSELLSetPreallocation(84,3693
+PetscErrorCode MatSeqSELLSetPreallocation_SeqSELL(93,4015
+PetscErrorCode MatGetRow_SeqSELL(176,7915
+PetscErrorCode MatRestoreRow_SeqSELL(199,8723
+PetscErrorCode MatConvert_SeqSELL_SeqAIJ(205,8881
+PetscErrorCode MatConvert_SeqAIJ_SeqSELL(245,10042
+PetscErrorCode MatMult_SeqSELL(293,11815
+PetscErrorCode MatMultAdd_SeqSELL(509,20308
+PetscErrorCode MatMultTransposeAdd_SeqSELL(685,27162
+PetscErrorCode MatMultTranspose_SeqSELL(732,28860
+PetscErrorCode MatMissingDiagonal_SeqSELL(747,29207
+PetscErrorCode MatMarkDiagonal_SeqSELL(772,29885
+PetscErrorCode MatInvertDiagonal_SeqSELL(798,30602
+PetscErrorCode MatZeroEntries_SeqSELL(841,31997
+PetscErrorCode MatDestroy_SeqSELL(851,32249
+PetscErrorCode MatSetOption_SeqSELL(883,33646
+PetscErrorCode MatGetDiagonal_SeqSELL(928,34838
+PetscErrorCode MatDiagonalScale_SeqSELL(962,35869
+PetscErrorCode MatGetValues_SeqSELL(1007,37804
+PetscErrorCode MatView_SeqSELL_ASCII(1047,39328
+PetscErrorCode MatView_SeqSELL_Draw_Zoom(1270,51206
+PetscErrorCode MatView_SeqSELL_Draw(1359,54393
+PetscErrorCode MatView_SeqSELL(1386,55150
+PetscErrorCode MatAssemblyEnd_SeqSELL(1402,55767
+PetscErrorCode MatGetInfo_SeqSELL(1455,58489
+PetscErrorCode MatSetValues_SeqSELL(1479,59295
+PetscErrorCode MatCopy_SeqSELL(1552,62271
+PetscErrorCode MatSetUp_SeqSELL(1568,62919
+PetscErrorCode MatSeqSELLGetArray_SeqSELL(1575,63076
+PetscErrorCode MatSeqSELLRestoreArray_SeqSELL(1584,63263
+PetscErrorCode MatRealPart_SeqSELL(1590,63391
+PetscErrorCode MatImaginaryPart_SeqSELL(1601,63662
+PetscErrorCode MatScale_SeqSELL(1613,63989
+PetscErrorCode MatShift_SeqSELL(1628,64465
+PetscErrorCode MatSOR_SeqSELL(1638,64736
+static struct _MatOps MatOps_Values 1741,69072
+PetscErrorCode MatStoreValues_SeqSELL(1893,76597
+PetscErrorCode MatRetrieveValues_SeqSELL(1908,77138
+PetscErrorCode MatSeqSELLRestoreArray(1932,77960
+PETSC_EXTERN PetscErrorCode MatCreate_SeqSELL(1939,78163
+PetscErrorCode MatDuplicateNoCreate_SeqSELL(1987,80091
+PetscErrorCode MatDuplicate_SeqSELL(2055,82245
+PetscErrorCode MatCreateSeqSELL(2165,87128
+PetscErrorCode MatEqual_SeqSELL(2175,87493
+PetscErrorCode MatSeqSELLInvalidateDiagonal(2194,88222
+PetscErrorCode MatConjugate_SeqSELL(2203,88401
 
 src/mat/impls/sell/seq/makefile,96
 makefile:^?makefile^A,1
@@ -32102,6 +32102,59 @@
 PETSC_EXTERN void matcreateseqsell_(12,409
 PETSC_EXTERN void matseqsellsetpreallocation_(18,682
 
+src/mat/impls/sell/mpi/mpisell.c,2471
+mpisell.c:^?mpisell.c^A,1
+PetscErrorCode MatDiagonalSet_MPISELL(25,1027
+PetscErrorCode MatCreateColmap_MPISELL_Private(45,1747
+#define MatSetValues_SeqSELL_A_Private(62,2407
+#define MatSetValues_SeqSELL_B_Private(106,3886
+PetscErrorCode MatSetValues_MPISELL(150,5365
+PetscErrorCode MatGetValues_MPISELL(241,9672
+PetscErrorCode MatAssemblyBegin_MPISELL(278,11423
+PetscErrorCode MatAssemblyEnd_MPISELL(292,11978
+PetscErrorCode MatZeroEntries_MPISELL(346,14255
+PetscErrorCode MatMult_MPISELL(356,14467
+PetscErrorCode MatMultDiagonalBlock_MPISELL(371,15112
+PetscErrorCode MatMultAdd_MPISELL(380,15325
+PetscErrorCode MatMultTranspose_MPISELL(392,15768
+PetscErrorCode MatIsTranspose_MPISELL(407,16294
+PetscErrorCode MatMultTransposeAdd_MPISELL(447,17932
+PetscErrorCode MatGetDiagonal_MPISELL(466,18579
+PetscErrorCode MatScale_MPISELL(477,19072
+PetscErrorCode MatDestroy_MPISELL(487,19290
+PetscErrorCode MatView_MPISELL_ASCIIorDraworSocket(522,20754
+PetscErrorCode MatView_MPISELL(659,27082
+PetscErrorCode MatGetGhosts_MPISELL(672,27698
+PetscErrorCode MatGetInfo_MPISELL(682,27977
+PetscErrorCode MatSetOption_MPISELL(734,29651
+PetscErrorCode MatDiagonalScale_MPISELL(794,31317
+PetscErrorCode MatSetUnfactored_MPISELL(824,32434
+PetscErrorCode MatEqual_MPISELL(833,32615
+PetscErrorCode MatCopy_MPISELL(851,33095
+PetscErrorCode MatSetUp_MPISELL(872,33997
+PetscErrorCode MatConjugate_MPISELL(881,34225
+PetscErrorCode MatRealPart_MPISELL(893,34505
+PetscErrorCode MatImaginaryPart_MPISELL(903,34708
+PetscErrorCode MatInvertBlockDiagonal_MPISELL(913,34926
+static PetscErrorCode MatSetRandom_MPISELL(923,35201
+PetscErrorCode MatSetFromOptions_MPISELL(935,35559
+PetscErrorCode MatShift_MPISELL(943,35787
+PetscErrorCode MatMissingDiagonal_MPISELL(960,36272
+PetscErrorCode MatGetDiagonalBlock_MPISELL(975,36717
+static struct _MatOps MatOps_Values 983,36937
+PetscErrorCode MatStoreValues_MPISELL(1137,44684
+PetscErrorCode MatRetrieveValues_MPISELL(1147,44909
+PetscErrorCode MatMPISELLSetPreallocation_MPISELL(1157,45143
+PetscErrorCode MatDuplicate_MPISELL(1191,46431
+PetscErrorCode MatMPISELLSetPreallocation(1368,54148
+PetscErrorCode MatCreateSELL(1548,62399
+PetscErrorCode MatMPISELLGetSeqSELL(1566,63052
+PetscErrorCode MatMPISELLGetLocalMatCondensed(1598,64110
+PetscErrorCode MatConvert_MPISELL_MPIAIJ(1650,65849
+PetscErrorCode MatConvert_MPIAIJ_MPISELL(1694,67470
+PetscErrorCode MatSOR_MPISELL(1738,69095
+PETSC_EXTERN PetscErrorCode MatCreate_MPISELL(1818,72179
+
 src/mat/impls/sell/mpi/mpisell.h,827
 mpisell.h:^?mpisell.h^A,1
   #define __MPISELL_H3,21
@@ -32130,59 +32183,6 @@
   PetscInt *ld;ld38,1500
 } Mat_MPISELL;39,1570
 
-src/mat/impls/sell/mpi/mpisell.c,2471
-mpisell.c:^?mpisell.c^A,1
-PetscErrorCode MatDiagonalSet_MPISELL(25,1020
-PetscErrorCode MatCreateColmap_MPISELL_Private(45,1739
-#define MatSetValues_SeqSELL_A_Private(62,2399
-#define MatSetValues_SeqSELL_B_Private(106,3878
-PetscErrorCode MatSetValues_MPISELL(150,5357
-PetscErrorCode MatGetValues_MPISELL(241,9664
-PetscErrorCode MatAssemblyBegin_MPISELL(278,11415
-PetscErrorCode MatAssemblyEnd_MPISELL(292,11970
-PetscErrorCode MatZeroEntries_MPISELL(346,14247
-PetscErrorCode MatMult_MPISELL(356,14459
-PetscErrorCode MatMultDiagonalBlock_MPISELL(371,15104
-PetscErrorCode MatMultAdd_MPISELL(380,15317
-PetscErrorCode MatMultTranspose_MPISELL(392,15760
-PetscErrorCode MatIsTranspose_MPISELL(407,16286
-PetscErrorCode MatMultTransposeAdd_MPISELL(447,17924
-PetscErrorCode MatGetDiagonal_MPISELL(466,18571
-PetscErrorCode MatScale_MPISELL(477,19064
-PetscErrorCode MatDestroy_MPISELL(487,19282
-PetscErrorCode MatView_MPISELL_ASCIIorDraworSocket(522,20746
-PetscErrorCode MatView_MPISELL(659,27074
-PetscErrorCode MatGetGhosts_MPISELL(672,27690
-PetscErrorCode MatGetInfo_MPISELL(682,27969
-PetscErrorCode MatSetOption_MPISELL(734,29643
-PetscErrorCode MatDiagonalScale_MPISELL(794,31309
-PetscErrorCode MatSetUnfactored_MPISELL(824,32426
-PetscErrorCode MatEqual_MPISELL(833,32607
-PetscErrorCode MatCopy_MPISELL(851,33087
-PetscErrorCode MatSetUp_MPISELL(872,33989
-PetscErrorCode MatConjugate_MPISELL(881,34217
-PetscErrorCode MatRealPart_MPISELL(893,34497
-PetscErrorCode MatImaginaryPart_MPISELL(903,34700
-PetscErrorCode MatInvertBlockDiagonal_MPISELL(913,34918
-static PetscErrorCode MatSetRandom_MPISELL(923,35193
-PetscErrorCode MatSetFromOptions_MPISELL(935,35551
-PetscErrorCode MatShift_MPISELL(943,35779
-PetscErrorCode MatMissingDiagonal_MPISELL(960,36264
-PetscErrorCode MatGetDiagonalBlock_MPISELL(975,36709
-static struct _MatOps MatOps_Values 983,36929
-PetscErrorCode MatStoreValues_MPISELL(1137,44676
-PetscErrorCode MatRetrieveValues_MPISELL(1147,44901
-PetscErrorCode MatMPISELLSetPreallocation_MPISELL(1157,45135
-PetscErrorCode MatDuplicate_MPISELL(1191,46423
-PetscErrorCode MatMPISELLSetPreallocation(1368,54091
-PetscErrorCode MatCreateSELL(1548,62329
-PetscErrorCode MatMPISELLGetSeqSELL(1566,62982
-PetscErrorCode MatMPISELLGetLocalMatCondensed(1597,63992
-PetscErrorCode MatConvert_MPISELL_MPIAIJ(1649,65731
-PetscErrorCode MatConvert_MPIAIJ_MPISELL(1693,67352
-PetscErrorCode MatSOR_MPISELL(1737,68977
-PETSC_EXTERN PetscErrorCode MatCreate_MPISELL(1817,72054
-
 src/mat/impls/sell/mpi/mmsell.c,293
 mmsell.c:^?mmsell.c^A,1
 PetscErrorCode MatDisAssemble_MPISELL(16,565
@@ -32310,43 +32310,58 @@
 DIRS 3,34
 LOCDIR 4,53
 
+src/mat/impls/sbaij/seq/sbaijfact.c,809
+sbaijfact.c:^?sbaijfact.c^A,1
+PetscErrorCode MatGetInertia_SeqSBAIJ(7,160
+PetscErrorCode MatCholeskyFactorSymbolic_SeqSBAIJ_MSR(33,1061
+PetscErrorCode MatCholeskyFactorSymbolic_SeqSBAIJ(216,6698
+PetscErrorCode MatCholeskyFactorSymbolic_SeqSBAIJ_inplace(384,12944
+PetscErrorCode MatCholeskyFactorNumeric_SeqSBAIJ_N(559,19408
+PetscErrorCode MatCholeskyFactorNumeric_SeqSBAIJ_N_NaturalOrdering(734,25132
+PetscErrorCode MatCholeskyFactorNumeric_SeqSBAIJ_2(866,29509
+PetscErrorCode MatCholeskyFactorNumeric_SeqSBAIJ_2_NaturalOrdering(1047,35621
+PetscErrorCode MatCholeskyFactorNumeric_SeqSBAIJ_1_inplace(1190,40611
+PetscErrorCode MatCholeskyFactorNumeric_SeqSBAIJ_1_NaturalOrdering(1347,45732
+PetscErrorCode MatCholeskyFactorNumeric_SeqSBAIJ_1_NaturalOrdering_inplace(1498,51185
+PetscErrorCode MatCholeskyFactor_SeqSBAIJ(1637,55873
+
 src/mat/impls/sbaij/seq/sbaij2.c,1771
 sbaij2.c:^?sbaij2.c^A,1
 PetscErrorCode MatIncreaseOverlap_SeqSBAIJ(9,235
 PetscErrorCode MatSeqSBAIJZeroOps_Private(89,3356
 PetscErrorCode MatCreateSubMatrix_SeqSBAIJ_Private(106,3989
 PetscErrorCode MatCreateSubMatrix_SeqSBAIJ(199,7027
-PetscErrorCode MatCreateSubMatrices_SeqSBAIJ(251,9050
-PetscErrorCode MatMult_SeqSBAIJ_2(266,9601
-PetscErrorCode MatMult_SeqSBAIJ_3(320,11311
-PetscErrorCode MatMult_SeqSBAIJ_4(378,13327
-PetscErrorCode MatMult_SeqSBAIJ_5(440,15764
-PetscErrorCode MatMult_SeqSBAIJ_6(506,18717
-PetscErrorCode MatMult_SeqSBAIJ_7(576,22278
-PetscErrorCode MatMult_SeqSBAIJ_N(652,26621
-PetscErrorCode MatMultAdd_SeqSBAIJ_1(725,28490
-PetscErrorCode MatMultAdd_SeqSBAIJ_2(782,30086
-PetscErrorCode MatMultAdd_SeqSBAIJ_3(836,31786
-PetscErrorCode MatMultAdd_SeqSBAIJ_4(895,33793
-PetscErrorCode MatMultAdd_SeqSBAIJ_5(958,36221
-PetscErrorCode MatMultAdd_SeqSBAIJ_6(1025,39165
-PetscErrorCode MatMultAdd_SeqSBAIJ_7(1096,42717
-PetscErrorCode MatMultAdd_SeqSBAIJ_N(1171,46973
-PetscErrorCode MatScale_SeqSBAIJ(1244,48828
-PetscErrorCode MatNorm_SeqSBAIJ(1257,49229
-PetscErrorCode MatEqual_SeqSBAIJ(1355,52343
-PetscErrorCode MatGetDiagonal_SeqSBAIJ(1379,53154
-PetscErrorCode MatDiagonalScale_SeqSBAIJ(1422,54366
-PetscErrorCode MatGetInfo_SeqSBAIJ(1466,55685
-PetscErrorCode MatZeroEntries_SeqSBAIJ(1490,56548
-PetscErrorCode MatGetRowMaxAbs_SeqSBAIJ(1499,56751
-PetscErrorCode MatMatMultSymbolic_SeqSBAIJ_SeqDense(1545,58171
-PetscErrorCode MatMatMult_SeqSBAIJ_1_Private(1553,58442
-PetscErrorCode MatMatMult_SeqSBAIJ_2_Private(1592,59635
-PetscErrorCode MatMatMult_SeqSBAIJ_3_Private(1631,60950
-PetscErrorCode MatMatMult_SeqSBAIJ_4_Private(1673,62572
-PetscErrorCode MatMatMult_SeqSBAIJ_5_Private(1718,64604
-PetscErrorCode MatMatMultNumeric_SeqSBAIJ_SeqDense(1766,67133
+PetscErrorCode MatCreateSubMatrices_SeqSBAIJ(251,9051
+PetscErrorCode MatMult_SeqSBAIJ_2(266,9602
+PetscErrorCode MatMult_SeqSBAIJ_3(320,11312
+PetscErrorCode MatMult_SeqSBAIJ_4(378,13328
+PetscErrorCode MatMult_SeqSBAIJ_5(440,15765
+PetscErrorCode MatMult_SeqSBAIJ_6(506,18718
+PetscErrorCode MatMult_SeqSBAIJ_7(576,22279
+PetscErrorCode MatMult_SeqSBAIJ_N(652,26622
+PetscErrorCode MatMultAdd_SeqSBAIJ_1(725,28491
+PetscErrorCode MatMultAdd_SeqSBAIJ_2(782,30087
+PetscErrorCode MatMultAdd_SeqSBAIJ_3(836,31787
+PetscErrorCode MatMultAdd_SeqSBAIJ_4(895,33794
+PetscErrorCode MatMultAdd_SeqSBAIJ_5(958,36222
+PetscErrorCode MatMultAdd_SeqSBAIJ_6(1025,39166
+PetscErrorCode MatMultAdd_SeqSBAIJ_7(1096,42718
+PetscErrorCode MatMultAdd_SeqSBAIJ_N(1171,46974
+PetscErrorCode MatScale_SeqSBAIJ(1244,48829
+PetscErrorCode MatNorm_SeqSBAIJ(1257,49230
+PetscErrorCode MatEqual_SeqSBAIJ(1355,52344
+PetscErrorCode MatGetDiagonal_SeqSBAIJ(1379,53155
+PetscErrorCode MatDiagonalScale_SeqSBAIJ(1422,54367
+PetscErrorCode MatGetInfo_SeqSBAIJ(1466,55686
+PetscErrorCode MatZeroEntries_SeqSBAIJ(1490,56549
+PetscErrorCode MatGetRowMaxAbs_SeqSBAIJ(1499,56752
+PetscErrorCode MatMatMultSymbolic_SeqSBAIJ_SeqDense(1545,58172
+PetscErrorCode MatMatMult_SeqSBAIJ_1_Private(1553,58443
+PetscErrorCode MatMatMult_SeqSBAIJ_2_Private(1592,59636
+PetscErrorCode MatMatMult_SeqSBAIJ_3_Private(1631,60951
+PetscErrorCode MatMatMult_SeqSBAIJ_4_Private(1673,62573
+PetscErrorCode MatMatMult_SeqSBAIJ_5_Private(1718,64605
+PetscErrorCode MatMatMultNumeric_SeqSBAIJ_SeqDense(1766,67134
 
 src/mat/impls/sbaij/seq/sbaij.c,3189
 sbaij.c:^?sbaij.c^A,1
@@ -32528,21 +32543,6 @@
 sbaijfact10.c:^?sbaijfact10.c^A,1
 PetscErrorCode MatCholeskyFactorNumeric_SeqSBAIJ_6_NaturalOrdering(8,165
 
-src/mat/impls/sbaij/seq/sbaijfact.c,809
-sbaijfact.c:^?sbaijfact.c^A,1
-PetscErrorCode MatGetInertia_SeqSBAIJ(7,160
-PetscErrorCode MatCholeskyFactorSymbolic_SeqSBAIJ_MSR(33,1061
-PetscErrorCode MatCholeskyFactorSymbolic_SeqSBAIJ(216,6698
-PetscErrorCode MatCholeskyFactorSymbolic_SeqSBAIJ_inplace(384,12944
-PetscErrorCode MatCholeskyFactorNumeric_SeqSBAIJ_N(559,19408
-PetscErrorCode MatCholeskyFactorNumeric_SeqSBAIJ_N_NaturalOrdering(734,25132
-PetscErrorCode MatCholeskyFactorNumeric_SeqSBAIJ_2(866,29509
-PetscErrorCode MatCholeskyFactorNumeric_SeqSBAIJ_2_NaturalOrdering(1047,35621
-PetscErrorCode MatCholeskyFactorNumeric_SeqSBAIJ_1_inplace(1190,40611
-PetscErrorCode MatCholeskyFactorNumeric_SeqSBAIJ_1_NaturalOrdering(1347,45732
-PetscErrorCode MatCholeskyFactorNumeric_SeqSBAIJ_1_NaturalOrdering_inplace(1498,51185
-PetscErrorCode MatCholeskyFactor_SeqSBAIJ(1637,55873
-
 src/mat/impls/sbaij/seq/sbaij.h,581
 sbaij.h:^?sbaij.h^A,1
 #define __SBAIJ_H3,19
@@ -32735,16 +32735,16 @@
 PetscErrorCode MatMPISBAIJSetPreallocation_MPISBAIJ(1914,72774
 PetscErrorCode MatMPISBAIJSetPreallocationCSR_MPISBAIJ(1984,75640
 PETSC_EXTERN PetscErrorCode MatCreate_MPISBAIJ(2080,79728
-PetscErrorCode MatMPISBAIJSetPreallocation(2278,88140
-PetscErrorCode MatCreateSBAIJ(2390,93785
-static PetscErrorCode MatDuplicate_MPISBAIJ(2408,94434
-#define MatLoad_MPISBAIJ_Binary 2501,97938
-PetscErrorCode MatLoad_MPISBAIJ(2503,97994
-PetscErrorCode MatGetRowMaxAbs_MPISBAIJ(2514,98472
-PetscErrorCode MatSOR_MPISBAIJ(2597,101040
-PetscErrorCode MatCreateMPISBAIJWithArrays(2761,108237
-PetscErrorCode MatMPISBAIJSetPreallocationCSR(2795,109736
-PetscErrorCode MatCreateMPIMatConcatenateSeqMat_MPISBAIJ(2802,110067
+PetscErrorCode MatMPISBAIJSetPreallocation(2278,88146
+PetscErrorCode MatCreateSBAIJ(2390,93784
+static PetscErrorCode MatDuplicate_MPISBAIJ(2408,94433
+#define MatLoad_MPISBAIJ_Binary 2501,97937
+PetscErrorCode MatLoad_MPISBAIJ(2503,97993
+PetscErrorCode MatGetRowMaxAbs_MPISBAIJ(2514,98471
+PetscErrorCode MatSOR_MPISBAIJ(2597,101039
+PetscErrorCode MatCreateMPISBAIJWithArrays(2761,108236
+PetscErrorCode MatMPISBAIJSetPreallocationCSR(2795,109735
+PetscErrorCode MatCreateMPIMatConcatenateSeqMat_MPISBAIJ(2802,110066
 
 src/mat/impls/sbaij/mpi/mpiaijsbaij.c,128
 mpiaijsbaij.c:^?mpiaijsbaij.c^A,1
@@ -33060,41 +33060,41 @@
 PetscErrorCode MatMFFDFinalizePackage(20,567
 PetscErrorCode MatMFFDInitializePackage(37,1011
 static PetscErrorCode MatMFFDSetType_MFFD(69,2048
-PetscErrorCode MatMFFDSetType(115,3586
-typedef PetscErrorCode (*FCN1)FCN1126,3912
-static PetscErrorCode MatMFFDSetFunctioniBase_MFFD(127,4013
-typedef PetscErrorCode (*FCN2)FCN2137,4225
-static PetscErrorCode MatMFFDSetFunctioni_MFFD(138,4351
-static PetscErrorCode MatMFFDGetH_MFFD(149,4651
-static PetscErrorCode MatMFFDResetHHistory_MFFD(159,4850
-PetscErrorCode MatMFFDRegister(195,5686
-static PetscErrorCode MatDestroy_MFFD(204,6024
-static PetscErrorCode MatView_MFFD(236,7624
-PETSC_EXTERN PetscErrorCode MatAssemblyEnd_MFFD(285,9825
-static PetscErrorCode MatMult_MFFD(303,10291
-PetscErrorCode MatGetDiagonal_MFFD(385,13249
-PETSC_EXTERN PetscErrorCode MatMFFDSetBase_MFFD(426,14699
-typedef PetscErrorCode (*FCN3)FCN3453,15577
-static PetscErrorCode MatMFFDSetCheckh_MFFD(455,15699
-PetscErrorCode MatMFFDSetOptionsPrefix(484,16430
-static PetscErrorCode MatSetFromOptions_MFFD(496,16790
-static PetscErrorCode MatMFFDSetPeriod_MFFD(523,18192
-static PetscErrorCode MatMFFDSetFunction_MFFD(533,18408
-static PetscErrorCode MatMFFDSetFunctionError_MFFD(544,18682
-PetscErrorCode MatMFFDSetHHistory_MFFD(554,18926
-PETSC_EXTERN PetscErrorCode MatCreate_MFFD(578,19718
-PetscErrorCode MatCreateMFFD(695,25408
-PetscErrorCode MatMFFDGetH(721,26086
-PetscErrorCode MatMFFDSetFunction(758,27297
-PetscErrorCode MatMFFDSetFunctioni(786,28341
-PetscErrorCode MatMFFDSetFunctioniBase(814,29389
-PetscErrorCode MatMFFDSetPeriod(839,30163
-PetscErrorCode MatMFFDSetFunctionError(873,31315
-PetscErrorCode MatMFFDSetHHistory(903,32307
-PetscErrorCode MatMFFDResetHHistory(930,33145
-PetscErrorCode MatMFFDSetBase(959,33957
-PetscErrorCode MatMFFDSetCheckh(994,34989
-PetscErrorCode MatMFFDCheckPositivity(1025,35944
+PetscErrorCode MatMFFDSetType(115,3587
+typedef PetscErrorCode (*FCN1)FCN1126,3913
+static PetscErrorCode MatMFFDSetFunctioniBase_MFFD(127,4014
+typedef PetscErrorCode (*FCN2)FCN2137,4226
+static PetscErrorCode MatMFFDSetFunctioni_MFFD(138,4352
+static PetscErrorCode MatMFFDGetH_MFFD(149,4652
+static PetscErrorCode MatMFFDResetHHistory_MFFD(159,4851
+PetscErrorCode MatMFFDRegister(195,5687
+static PetscErrorCode MatDestroy_MFFD(204,6025
+static PetscErrorCode MatView_MFFD(236,7625
+PETSC_EXTERN PetscErrorCode MatAssemblyEnd_MFFD(285,9826
+static PetscErrorCode MatMult_MFFD(303,10292
+PetscErrorCode MatGetDiagonal_MFFD(385,13250
+PETSC_EXTERN PetscErrorCode MatMFFDSetBase_MFFD(426,14700
+typedef PetscErrorCode (*FCN3)FCN3453,15578
+static PetscErrorCode MatMFFDSetCheckh_MFFD(455,15700
+PetscErrorCode MatMFFDSetOptionsPrefix(484,16431
+static PetscErrorCode MatSetFromOptions_MFFD(496,16791
+static PetscErrorCode MatMFFDSetPeriod_MFFD(523,18193
+static PetscErrorCode MatMFFDSetFunction_MFFD(533,18409
+static PetscErrorCode MatMFFDSetFunctionError_MFFD(544,18683
+PetscErrorCode MatMFFDSetHHistory_MFFD(554,18927
+PETSC_EXTERN PetscErrorCode MatCreate_MFFD(578,19719
+PetscErrorCode MatCreateMFFD(695,25409
+PetscErrorCode MatMFFDGetH(721,26087
+PetscErrorCode MatMFFDSetFunction(758,27298
+PetscErrorCode MatMFFDSetFunctioni(786,28342
+PetscErrorCode MatMFFDSetFunctioniBase(814,29390
+PetscErrorCode MatMFFDSetPeriod(839,30164
+PetscErrorCode MatMFFDSetFunctionError(873,31316
+PetscErrorCode MatMFFDSetHHistory(903,32308
+PetscErrorCode MatMFFDResetHHistory(930,33146
+PetscErrorCode MatMFFDSetBase(959,33958
+PetscErrorCode MatMFFDSetCheckh(994,34990
+PetscErrorCode MatMFFDCheckPositivity(1025,35945
 
 src/mat/impls/mffd/wp.c,446
 wp.c:^?wp.c^A,1
@@ -33430,79 +33430,79 @@
 static PetscErrorCode MatMPIXAIJComputeLocalToGlobalMapping_Private(393,14298
 PETSC_INTERN PetscErrorCode MatConvert_XAIJ_IS(604,24619
 PETSC_INTERN PetscErrorCode MatConvert_Nest_IS(810,32866
-static PetscErrorCode MatDiagonalScale_IS(1137,46520
-static PetscErrorCode MatGetInfo_IS(1175,47593
-static PetscErrorCode MatTranspose_IS(1232,49381
-static PetscErrorCode MatDiagonalSet_IS(1265,50637
-static PetscErrorCode MatShift_IS(1279,51124
-static PetscErrorCode MatSetValuesLocal_SubMat_IS(1289,51352
-static PetscErrorCode MatSetValuesBlockedLocal_SubMat_IS(1301,52128
-static PetscErrorCode MatCreateSubMatrix_IS(1313,52934
-static PetscErrorCode MatCopy_IS(1460,60397
-static PetscErrorCode MatMissingDiagonal_IS(1474,60862
-static PetscErrorCode MatISSetUpSF_IS(1502,61584
-PetscErrorCode MatISStoreL2L(1544,63343
-static PetscErrorCode MatISStoreL2L_IS(1554,63638
-PetscErrorCode MatISFixLocalEmpty(1580,64327
-static PetscErrorCode MatISFixLocalEmpty_IS(1590,64626
-PetscErrorCode MatISSetPreallocation(1633,66532
-PETSC_EXTERN PetscErrorCode MatISSetPreallocation_IS(1643,66947
-PETSC_EXTERN PetscErrorCode MatISSetMPIXAIJPreallocation_Private(1688,68818
-PETSC_INTERN PetscErrorCode MatConvert_IS_XAIJ(1846,75803
-PetscErrorCode MatISGetMPIXAIJ(2069,86568
-static PetscErrorCode MatDuplicate_IS(2084,87180
-static PetscErrorCode MatIsHermitian_IS(2111,88334
-static PetscErrorCode MatIsSymmetric_IS(2122,88687
-static PetscErrorCode MatIsStructurallySymmetric_IS(2137,89140
-static PetscErrorCode MatDestroy_IS(2152,89597
-static PetscErrorCode MatMult_IS(2201,92310
-static PetscErrorCode MatMultAdd_IS(2221,93023
-static PetscErrorCode MatMultTranspose_IS(2239,93493
-static PetscErrorCode MatMultTransposeAdd_IS(2258,94189
-static PetscErrorCode MatView_IS(2276,94687
-static PetscErrorCode MatInvertBlockDiagonal_IS(2298,95421
-static PetscErrorCode MatISSetUpScatters_Private(2319,96234
-static PetscErrorCode MatISFilterL2GMap(2385,99340
-static PetscErrorCode MatSetLocalToGlobalMapping_IS(2439,101495
-static PetscErrorCode MatSetUp_IS(2556,106757
-static PetscErrorCode MatSetValues_IS(2566,107023
-static PetscErrorCode MatSetValuesBlocked_IS(2582,107767
-static PetscErrorCode MatSetValuesLocal_IS(2598,108537
-static PetscErrorCode MatSetValuesBlockedLocal_IS(2611,108997
-static PetscErrorCode MatISZeroRowsColumnsLocal_Private(2624,109478
-static PetscErrorCode MatZeroRowsColumns_Private_IS(2652,110400
-static PetscErrorCode MatZeroRows_IS(2699,112742
-static PetscErrorCode MatZeroRowsColumns_IS(2706,112987
-static PetscErrorCode MatAssemblyBegin_IS(2713,113238
-static PetscErrorCode MatAssemblyEnd_IS(2722,113441
-static PetscErrorCode MatISGetLocalMat_IS(2806,117157
-static PetscErrorCode MatISRestoreLocalMat_IS(2815,117328
-PetscErrorCode MatISGetLocalMat(2842,117982
-PetscErrorCode MatISRestoreLocalMat(2864,118486
-static PetscErrorCode MatISSetLocalMatType_IS(2873,118753
-PetscErrorCode MatISSetLocalMatType(2895,119281
-static PetscErrorCode MatISSetLocalMat_IS(2903,119522
-PetscErrorCode MatISSetLocalMat(2947,121038
-static PetscErrorCode MatZeroEntries_IS(2956,121314
-static PetscErrorCode MatScale_IS(2965,121483
-static PetscErrorCode MatGetDiagonal_IS(2974,121660
-static PetscErrorCode MatSetOption_IS(2989,122119
-static PetscErrorCode MatAXPY_IS(2998,122322
-static PetscErrorCode MatGetLocalSubMatrix_IS(3014,122833
-static PetscErrorCode MatSetFromOptions_IS(3093,126582
-PetscErrorCode MatCreateIS(3135,128505
-static PetscErrorCode MatHasOperation_IS(3146,128945
-static PetscErrorCode MatSetValuesCOO_IS(3161,129546
-static PetscErrorCode MatSetPreallocationCOOLocal_IS(3172,129874
-static PetscErrorCode MatSetPreallocationCOO_IS(3188,130540
-static PetscErrorCode MatISGetAssembled_Private(3203,131440
-static PetscErrorCode MatISRestoreAssembled_Private(3242,133109
-static PetscErrorCode MatGetDiagonalBlock_IS(3250,133273
-static PetscErrorCode MatCreateSubMatrices_IS(3276,134171
-static PetscErrorCode MatIncreaseOverlap_IS(3310,135153
-PetscErrorCode MatISGetLocalToGlobalMapping(3340,135910
-static PetscErrorCode MatISGetLocalToGlobalMapping_IS(3351,136388
-PETSC_EXTERN PetscErrorCode MatCreate_IS(3383,137746
+static PetscErrorCode MatDiagonalScale_IS(1137,46521
+static PetscErrorCode MatGetInfo_IS(1175,47594
+static PetscErrorCode MatTranspose_IS(1232,49382
+static PetscErrorCode MatDiagonalSet_IS(1265,50638
+static PetscErrorCode MatShift_IS(1279,51125
+static PetscErrorCode MatSetValuesLocal_SubMat_IS(1289,51353
+static PetscErrorCode MatSetValuesBlockedLocal_SubMat_IS(1301,52129
+static PetscErrorCode MatCreateSubMatrix_IS(1313,52935
+static PetscErrorCode MatCopy_IS(1460,60398
+static PetscErrorCode MatMissingDiagonal_IS(1474,60863
+static PetscErrorCode MatISSetUpSF_IS(1502,61585
+PetscErrorCode MatISStoreL2L(1544,63344
+static PetscErrorCode MatISStoreL2L_IS(1554,63639
+PetscErrorCode MatISFixLocalEmpty(1580,64328
+static PetscErrorCode MatISFixLocalEmpty_IS(1590,64627
+PetscErrorCode MatISSetPreallocation(1633,66533
+PETSC_EXTERN PetscErrorCode MatISSetPreallocation_IS(1643,66948
+PETSC_EXTERN PetscErrorCode MatISSetMPIXAIJPreallocation_Private(1688,68819
+PETSC_INTERN PetscErrorCode MatConvert_IS_XAIJ(1846,75804
+PetscErrorCode MatISGetMPIXAIJ(2069,86569
+static PetscErrorCode MatDuplicate_IS(2084,87181
+static PetscErrorCode MatIsHermitian_IS(2111,88335
+static PetscErrorCode MatIsSymmetric_IS(2122,88688
+static PetscErrorCode MatIsStructurallySymmetric_IS(2137,89141
+static PetscErrorCode MatDestroy_IS(2152,89598
+static PetscErrorCode MatMult_IS(2201,92311
+static PetscErrorCode MatMultAdd_IS(2221,93024
+static PetscErrorCode MatMultTranspose_IS(2239,93494
+static PetscErrorCode MatMultTransposeAdd_IS(2258,94190
+static PetscErrorCode MatView_IS(2276,94688
+static PetscErrorCode MatInvertBlockDiagonal_IS(2298,95422
+static PetscErrorCode MatISSetUpScatters_Private(2319,96235
+static PetscErrorCode MatISFilterL2GMap(2385,99341
+static PetscErrorCode MatSetLocalToGlobalMapping_IS(2439,101496
+static PetscErrorCode MatSetUp_IS(2556,106758
+static PetscErrorCode MatSetValues_IS(2566,107024
+static PetscErrorCode MatSetValuesBlocked_IS(2582,107768
+static PetscErrorCode MatSetValuesLocal_IS(2598,108538
+static PetscErrorCode MatSetValuesBlockedLocal_IS(2611,108998
+static PetscErrorCode MatISZeroRowsColumnsLocal_Private(2624,109479
+static PetscErrorCode MatZeroRowsColumns_Private_IS(2652,110401
+static PetscErrorCode MatZeroRows_IS(2699,112743
+static PetscErrorCode MatZeroRowsColumns_IS(2706,112988
+static PetscErrorCode MatAssemblyBegin_IS(2713,113239
+static PetscErrorCode MatAssemblyEnd_IS(2722,113442
+static PetscErrorCode MatISGetLocalMat_IS(2806,117158
+static PetscErrorCode MatISRestoreLocalMat_IS(2815,117329
+PetscErrorCode MatISGetLocalMat(2842,117983
+PetscErrorCode MatISRestoreLocalMat(2864,118487
+static PetscErrorCode MatISSetLocalMatType_IS(2873,118754
+PetscErrorCode MatISSetLocalMatType(2895,119282
+static PetscErrorCode MatISSetLocalMat_IS(2903,119523
+PetscErrorCode MatISSetLocalMat(2947,121039
+static PetscErrorCode MatZeroEntries_IS(2956,121315
+static PetscErrorCode MatScale_IS(2965,121484
+static PetscErrorCode MatGetDiagonal_IS(2974,121661
+static PetscErrorCode MatSetOption_IS(2989,122120
+static PetscErrorCode MatAXPY_IS(2998,122323
+static PetscErrorCode MatGetLocalSubMatrix_IS(3014,122834
+static PetscErrorCode MatSetFromOptions_IS(3093,126583
+PetscErrorCode MatCreateIS(3135,128506
+static PetscErrorCode MatHasOperation_IS(3146,128946
+static PetscErrorCode MatSetValuesCOO_IS(3161,129547
+static PetscErrorCode MatSetPreallocationCOOLocal_IS(3172,129875
+static PetscErrorCode MatSetPreallocationCOO_IS(3188,130541
+static PetscErrorCode MatISGetAssembled_Private(3203,131441
+static PetscErrorCode MatISRestoreAssembled_Private(3242,133110
+static PetscErrorCode MatGetDiagonalBlock_IS(3250,133274
+static PetscErrorCode MatCreateSubMatrices_IS(3276,134172
+static PetscErrorCode MatIncreaseOverlap_IS(3310,135154
+PetscErrorCode MatISGetLocalToGlobalMapping(3340,135911
+static PetscErrorCode MatISGetLocalToGlobalMapping_IS(3351,136389
+PETSC_EXTERN PetscErrorCode MatCreate_IS(3383,137747
 
 src/mat/impls/is/makefile,96
 makefile:^?makefile^A,1
@@ -33522,65 +33522,65 @@
 static PetscErrorCode MatHYPRE_IJMatrixCopy(124,4796
 static PetscErrorCode MatHYPRE_IJMatrixFastCopy_SeqAIJ(166,6387
 static PetscErrorCode MatHYPRE_IJMatrixFastCopy_MPIAIJ(203,7849
-static PetscErrorCode MatConvert_HYPRE_IS(272,10636
-PETSC_INTERN PetscErrorCode MatConvert_AIJ_HYPRE(383,15275
-static PetscErrorCode MatConvert_HYPRE_AIJ(416,16692
-static PetscErrorCode MatAIJGetParCSR_Private(647,26148
-static PetscErrorCode MatAIJRestoreParCSR_Private(784,31161
-static PetscErrorCode MatHYPRE_ParCSR_RAP(831,32736
-static PetscErrorCode MatPtAPNumeric_AIJ_AIJ_wHYPRE(861,33935
-PETSC_INTERN PetscErrorCode MatPtAPSymbolic_AIJ_AIJ_wHYPRE(881,34557
-static PetscErrorCode MatPtAPNumeric_AIJ_HYPRE(890,34851
-static PetscErrorCode MatPtAPNumeric_HYPRE_HYPRE(917,35968
-static PetscErrorCode MatHYPRE_ParCSR_MatMatMult(948,37626
-static PetscErrorCode MatMatMultNumeric_AIJ_AIJ_wHYPRE(963,38079
-PETSC_INTERN PetscErrorCode MatMatMultSymbolic_AIJ_AIJ_wHYPRE(983,38701
-static PetscErrorCode MatMatMultNumeric_HYPRE_HYPRE(992,38999
-PETSC_INTERN PetscErrorCode MatTransposeMatMatMultNumeric_AIJ_AIJ_AIJ_wHYPRE(1027,40764
-PETSC_INTERN PetscErrorCode MatTransposeMatMatMultSymbolic_AIJ_AIJ_AIJ_wHYPRE(1045,41446
-static PetscErrorCode MatProductSymbolic_AB_HYPRE(1053,41716
-static PetscErrorCode MatProductSetFromOptions_HYPRE_AB(1060,41875
-static PetscErrorCode MatProductSymbolic_PtAP_HYPRE(1076,42367
-static PetscErrorCode MatProductSetFromOptions_HYPRE_PtAP(1083,42530
-static PetscErrorCode MatProductSetFromOptions_HYPRE(1124,44290
-static PetscErrorCode MatMultTranspose_HYPRE(1144,44734
-static PetscErrorCode MatMult_HYPRE(1151,44926
-static PetscErrorCode MatMultAdd_HYPRE(1158,45110
-static PetscErrorCode MatMultTransposeAdd_HYPRE(1166,45344
-static PetscErrorCode MatHYPRE_MultKernel_Private(1175,45660
-static PetscErrorCode MatDestroy_HYPRE(1206,46965
-static PetscErrorCode MatSetUp_HYPRE(1241,48606
-static PetscErrorCode MatBindToCPU_HYPRE(1250,48867
-static PetscErrorCode MatAssemblyEnd_HYPRE(1268,49540
-static PetscErrorCode MatGetArray_HYPRE(1337,52272
-static PetscErrorCode MatRestoreArray_HYPRE(1357,52767
-static PetscErrorCode MatSetValues_HYPRE(1367,52980
-static PetscErrorCode MatHYPRESetPreallocation_HYPRE(1437,55629
-PetscErrorCode MatHYPRESetPreallocation(1540,60485
-PETSC_EXTERN PetscErrorCode MatCreateFromParCSR(1566,61267
-static PetscErrorCode MatHYPREGetParCSR_HYPRE(1688,65971
-PetscErrorCode MatHYPREGetParCSR(1716,66805
-static PetscErrorCode MatMissingDiagonal_HYPRE(1725,67085
-static PetscErrorCode MatScale_HYPRE(1771,68555
-static PetscErrorCode MatZeroRowsColumns_HYPRE(1812,69577
-static PetscErrorCode MatZeroEntries_HYPRE_CSRMatrix(1832,70387
-PetscErrorCode MatZeroEntries_HYPRE(1848,70742
-static PetscErrorCode MatZeroRows_HYPRE_CSRMatrix(1865,71275
-static PetscErrorCode MatZeroRows_HYPRE(1891,71881
-static PetscErrorCode MatAssemblyBegin_HYPRE(1913,72780
-static PetscErrorCode MatGetRow_HYPRE(1922,73042
-static PetscErrorCode MatRestoreRow_HYPRE(1936,73509
-static PetscErrorCode MatGetValues_HYPRE(1950,73988
-static PetscErrorCode MatSetOption_HYPRE(1969,74629
-static PetscErrorCode MatView_HYPRE(1987,75024
-static PetscErrorCode MatDuplicate_HYPRE(2026,76728
-static PetscErrorCode MatCopy_HYPRE(2043,77242
-static PetscErrorCode MatGetDiagonal_HYPRE(2061,77932
-static PetscErrorCode MatAXPY_HYPRE(2094,79194
-static PetscErrorCode MatSetPreallocationCOO_HYPRE(2169,81663
-static PetscErrorCode MatSetValuesCOO_HYPRE(2261,86194
-PETSC_EXTERN PetscErrorCode MatCreate_HYPRE(2304,87683
-static PetscErrorCode hypre_array_destroy(2376,91089
+static PetscErrorCode MatConvert_HYPRE_IS(272,10635
+PETSC_INTERN PetscErrorCode MatConvert_AIJ_HYPRE(383,15274
+static PetscErrorCode MatConvert_HYPRE_AIJ(416,16691
+static PetscErrorCode MatAIJGetParCSR_Private(647,26147
+static PetscErrorCode MatAIJRestoreParCSR_Private(784,31160
+static PetscErrorCode MatHYPRE_ParCSR_RAP(831,32735
+static PetscErrorCode MatPtAPNumeric_AIJ_AIJ_wHYPRE(861,33934
+PETSC_INTERN PetscErrorCode MatPtAPSymbolic_AIJ_AIJ_wHYPRE(881,34556
+static PetscErrorCode MatPtAPNumeric_AIJ_HYPRE(890,34850
+static PetscErrorCode MatPtAPNumeric_HYPRE_HYPRE(917,35967
+static PetscErrorCode MatHYPRE_ParCSR_MatMatMult(948,37625
+static PetscErrorCode MatMatMultNumeric_AIJ_AIJ_wHYPRE(963,38078
+PETSC_INTERN PetscErrorCode MatMatMultSymbolic_AIJ_AIJ_wHYPRE(983,38700
+static PetscErrorCode MatMatMultNumeric_HYPRE_HYPRE(992,38998
+PETSC_INTERN PetscErrorCode MatTransposeMatMatMultNumeric_AIJ_AIJ_AIJ_wHYPRE(1027,40763
+PETSC_INTERN PetscErrorCode MatTransposeMatMatMultSymbolic_AIJ_AIJ_AIJ_wHYPRE(1045,41445
+static PetscErrorCode MatProductSymbolic_AB_HYPRE(1053,41715
+static PetscErrorCode MatProductSetFromOptions_HYPRE_AB(1060,41874
+static PetscErrorCode MatProductSymbolic_PtAP_HYPRE(1076,42366
+static PetscErrorCode MatProductSetFromOptions_HYPRE_PtAP(1083,42529
+static PetscErrorCode MatProductSetFromOptions_HYPRE(1124,44289
+static PetscErrorCode MatMultTranspose_HYPRE(1144,44733
+static PetscErrorCode MatMult_HYPRE(1151,44925
+static PetscErrorCode MatMultAdd_HYPRE(1158,45109
+static PetscErrorCode MatMultTransposeAdd_HYPRE(1166,45343
+static PetscErrorCode MatHYPRE_MultKernel_Private(1175,45659
+static PetscErrorCode MatDestroy_HYPRE(1206,46964
+static PetscErrorCode MatSetUp_HYPRE(1241,48605
+static PetscErrorCode MatBindToCPU_HYPRE(1250,48866
+static PetscErrorCode MatAssemblyEnd_HYPRE(1268,49539
+static PetscErrorCode MatGetArray_HYPRE(1337,52271
+static PetscErrorCode MatRestoreArray_HYPRE(1357,52766
+static PetscErrorCode MatSetValues_HYPRE(1367,52979
+static PetscErrorCode MatHYPRESetPreallocation_HYPRE(1437,55628
+PetscErrorCode MatHYPRESetPreallocation(1540,60484
+PETSC_EXTERN PetscErrorCode MatCreateFromParCSR(1566,61266
+static PetscErrorCode MatHYPREGetParCSR_HYPRE(1688,65970
+PetscErrorCode MatHYPREGetParCSR(1716,66804
+static PetscErrorCode MatMissingDiagonal_HYPRE(1725,67084
+static PetscErrorCode MatScale_HYPRE(1771,68554
+static PetscErrorCode MatZeroRowsColumns_HYPRE(1812,69576
+static PetscErrorCode MatZeroEntries_HYPRE_CSRMatrix(1832,70386
+PetscErrorCode MatZeroEntries_HYPRE(1848,70741
+static PetscErrorCode MatZeroRows_HYPRE_CSRMatrix(1865,71274
+static PetscErrorCode MatZeroRows_HYPRE(1891,71880
+static PetscErrorCode MatAssemblyBegin_HYPRE(1913,72779
+static PetscErrorCode MatGetRow_HYPRE(1922,73041
+static PetscErrorCode MatRestoreRow_HYPRE(1936,73508
+static PetscErrorCode MatGetValues_HYPRE(1950,73987
+static PetscErrorCode MatSetOption_HYPRE(1969,74628
+static PetscErrorCode MatView_HYPRE(1987,75023
+static PetscErrorCode MatDuplicate_HYPRE(2026,76727
+static PetscErrorCode MatCopy_HYPRE(2043,77241
+static PetscErrorCode MatGetDiagonal_HYPRE(2061,77931
+static PetscErrorCode MatAXPY_HYPRE(2094,79193
+static PetscErrorCode MatSetPreallocationCOO_HYPRE(2169,81662
+static PetscErrorCode MatSetValuesCOO_HYPRE(2261,86193
+PETSC_EXTERN PetscErrorCode MatCreate_HYPRE(2304,87682
+static PetscErrorCode hypre_array_destroy(2376,91088
 
 src/mat/impls/hypre/mhypre.h,568
 mhypre.h:^?mhypre.h^A,1
@@ -33849,23 +33849,23 @@
   PetscScalar *finarray, *foutarray,foutarray26,637
   PetscScalar *finarray, *foutarray, *binarray,binarray26,637
   PetscScalar *finarray, *foutarray, *binarray, *boutarray;boutarray26,637
-} Mat_FFTW;28,867
-PetscErrorCode MatMult_SeqFFTW(49,1519
-PetscErrorCode MatMultTranspose_SeqFFTW(151,5438
-PetscErrorCode MatMult_MPIFFTW(232,8596
-PetscErrorCode MatMultTranspose_MPIFFTW(302,11623
-PetscErrorCode MatDestroy_FFTW(362,14288
-PetscErrorCode VecDestroy_MPIFFTW(384,15083
-static PetscErrorCode VecDuplicate_FFTW_fin(398,15384
-static PetscErrorCode VecDuplicate_FFTW_fout(408,15656
-static PetscErrorCode VecDuplicate_FFTW_bout(418,15933
-PetscErrorCode MatCreateVecsFFTW(466,17685
-PetscErrorCode MatCreateVecsFFTW_FFTW(473,17888
-PetscErrorCode VecScatterPetscToFFTW(733,31065
-PetscErrorCode VecScatterPetscToFFTW_FFTW(740,31252
-PetscErrorCode VecScatterFFTWToPetsc(967,40309
-PetscErrorCode VecScatterFFTWToPetsc_FFTW(974,40496
-PETSC_EXTERN PetscErrorCode MatCreate_FFTW(1181,48801
+} Mat_FFTW;28,868
+PetscErrorCode MatMult_SeqFFTW(49,1520
+PetscErrorCode MatMultTranspose_SeqFFTW(151,5439
+PetscErrorCode MatMult_MPIFFTW(232,8597
+PetscErrorCode MatMultTranspose_MPIFFTW(302,11624
+PetscErrorCode MatDestroy_FFTW(362,14289
+PetscErrorCode VecDestroy_MPIFFTW(384,15084
+static PetscErrorCode VecDuplicate_FFTW_fin(398,15385
+static PetscErrorCode VecDuplicate_FFTW_fout(408,15657
+static PetscErrorCode VecDuplicate_FFTW_bout(418,15934
+PetscErrorCode MatCreateVecsFFTW(466,17686
+PetscErrorCode MatCreateVecsFFTW_FFTW(473,17889
+PetscErrorCode VecScatterPetscToFFTW(733,31067
+PetscErrorCode VecScatterPetscToFFTW_FFTW(740,31254
+PetscErrorCode VecScatterFFTWToPetsc(967,40311
+PetscErrorCode VecScatterFFTWToPetsc_FFTW(974,40498
+PETSC_EXTERN PetscErrorCode MatCreate_FFTW(1181,48803
 
 src/mat/impls/fft/fftw/makefile,102
 makefile:^?makefile^A,1
@@ -34358,39 +34358,39 @@
 
 src/mat/impls/dense/mpi/mpidense.h,1098
 mpidense.h:^?mpidense.h^A,1
-  Mat Ae,8,191
-  Mat Ae, Be,8,191
-  Mat Ae, Be, Ce;8,191
-} Mat_MatMultDense;9,242
-  PetscScalar *sendbuf;sendbuf12,337
-  Mat          atb;13,361
-  PetscMPIInt *recvcounts;recvcounts14,381
-  PetscMPIInt  tag;15,408
-} Mat_TransMatMultDense;16,428
-  PetscScalar *buf[buf19,528
-  PetscMPIInt  tag;20,551
-  PetscMPIInt *recvcounts;recvcounts21,571
-  PetscMPIInt *recvdispls;recvdispls22,598
-  PetscInt     alg;23,625
-} Mat_MatTransMultDense;24,666
-  Mat A;27,709
-  PetscBool    donotstash;30,802
-  MPI_Request *send_waits;send_waits31,887
-  MPI_Request *recv_waits;recv_waits32,950
-  PetscInt     nsends,33,1016
-  PetscInt     nsends, nrecvs;33,1016
-  PetscScalar *svalues,svalues34,1086
-  PetscScalar *svalues, *rvalues;rvalues34,1086
-  PetscInt     rmax;35,1153
-  Vec       lvec;38,1285
-  PetscSF   Mvctx;39,1329
-  PetscBool roworiented;40,1388
-  Mat                cmat;43,1524
-  Vec                cvec;44,1612
-  const PetscScalar *ptrinuse;ptrinuse45,1689
-  PetscInt           vecinuse;46,1774
-  PetscInt           matinuse;47,1848
-} Mat_MPIDense;48,1925
+  Mat Ae,8,192
+  Mat Ae, Be,8,192
+  Mat Ae, Be, Ce;8,192
+} Mat_MatMultDense;9,243
+  PetscScalar *sendbuf;sendbuf12,338
+  Mat          atb;13,362
+  PetscMPIInt *recvcounts;recvcounts14,382
+  PetscMPIInt  tag;15,409
+} Mat_TransMatMultDense;16,429
+  PetscScalar *buf[buf19,529
+  PetscMPIInt  tag;20,552
+  PetscMPIInt *recvcounts;recvcounts21,572
+  PetscMPIInt *recvdispls;recvdispls22,599
+  PetscInt     alg;23,626
+} Mat_MatTransMultDense;24,667
+  Mat A;27,710
+  PetscBool    donotstash;30,803
+  MPI_Request *send_waits;send_waits31,888
+  MPI_Request *recv_waits;recv_waits32,951
+  PetscInt     nsends,33,1017
+  PetscInt     nsends, nrecvs;33,1017
+  PetscScalar *svalues,svalues34,1087
+  PetscScalar *svalues, *rvalues;rvalues34,1087
+  PetscInt     rmax;35,1154
+  Vec       lvec;38,1286
+  PetscSF   Mvctx;39,1330
+  PetscBool roworiented;40,1389
+  Mat                cmat;43,1525
+  Vec                cvec;44,1613
+  const PetscScalar *ptrinuse;ptrinuse45,1690
+  PetscInt           vecinuse;46,1775
+  PetscInt           matinuse;47,1849
+} Mat_MPIDense;48,1926
 
 src/mat/impls/dense/mpi/mpidense.c,8879
 mpidense.c:^?mpidense.c^A,1
@@ -34654,17 +34654,17 @@
 static PetscErrorCode MatCompositeGetMatStructure_Composite(662,23791
 PetscErrorCode MatCompositeGetMatStructure(686,24335
 static PetscErrorCode MatCompositeSetMergeType_Composite(695,24628
-PetscErrorCode MatCompositeSetMergeType(723,25642
-static PetscErrorCode MatCompositeMerge_Composite(732,25966
-PetscErrorCode MatCompositeMerge(809,28956
-static PetscErrorCode MatCompositeGetNumberMat_Composite(817,29160
-PetscErrorCode MatCompositeGetNumberMat(841,29705
-static PetscErrorCode MatCompositeGetMat_Composite(850,29990
-PetscErrorCode MatCompositeGetMat(880,30863
-PetscErrorCode MatCompositeSetScalings_Composite(890,31187
-PetscErrorCode MatCompositeSetScalings(915,31948
-static struct _MatOps MatOps_Values 925,32320
-PETSC_EXTERN PetscErrorCode MatCreate_Composite(1090,40219
+PetscErrorCode MatCompositeSetMergeType(723,25643
+static PetscErrorCode MatCompositeMerge_Composite(732,25967
+PetscErrorCode MatCompositeMerge(809,28957
+static PetscErrorCode MatCompositeGetNumberMat_Composite(817,29161
+PetscErrorCode MatCompositeGetNumberMat(841,29706
+static PetscErrorCode MatCompositeGetMat_Composite(850,29991
+PetscErrorCode MatCompositeGetMat(880,30864
+PetscErrorCode MatCompositeSetScalings_Composite(890,31188
+PetscErrorCode MatCompositeSetScalings(915,31949
+static struct _MatOps MatOps_Values 925,32321
+PETSC_EXTERN PetscErrorCode MatCreate_Composite(1090,40220
 
 src/mat/impls/composite/makefile,84
 makefile:^?makefile^A,1
@@ -34786,61 +34786,81 @@
 DIRS 3,34
 LOCDIR 4,53
 
+src/mat/impls/baij/seq/baijfact.c,1020
+baijfact.c:^?baijfact.c^A,1
+PetscErrorCode MatLUFactorNumeric_SeqBAIJ_2(8,139
+PetscErrorCode MatLUFactorNumeric_SeqBAIJ_2_NaturalOrdering(114,4076
+PetscErrorCode MatLUFactorNumeric_SeqBAIJ_2_inplace(220,8053
+PetscErrorCode MatLUFactorNumeric_SeqBAIJ_2_NaturalOrdering_inplace(329,11559
+PetscErrorCode MatLUFactorNumeric_SeqBAIJ_1(437,14967
+PetscErrorCode MatLUFactorNumeric_SeqBAIJ_1_inplace(601,20986
+static PetscErrorCode MatFactorGetSolverType_petsc(671,23589
+PETSC_INTERN PetscErrorCode MatGetFactor_seqbaij_petsc(678,23747
+PetscErrorCode MatLUFactor_SeqBAIJ(716,25968
+PetscErrorCode MatCholeskyFactorNumeric_SeqBAIJ_N(733,26459
+PetscErrorCode MatCholeskyFactorNumeric_SeqBAIJ_N_NaturalOrdering(868,30761
+PetscErrorCode MatICCFactorSymbolic_SeqBAIJ(998,34852
+PetscErrorCode MatCholeskyFactorSymbolic_SeqBAIJ(1222,43208
+PetscErrorCode MatSolve_SeqBAIJ_N_NaturalOrdering(1397,49722
+PetscErrorCode MatSolve_SeqBAIJ_N(1448,51441
+static PetscErrorCode MatBlockAbs_private(1508,53440
+PetscErrorCode MatILUDTFactor_SeqBAIJ(1525,53978
+
 src/mat/impls/baij/seq/baij2.c,2699
 baij2.c:^?baij2.c^A,1
 PetscErrorCode MatIncreaseOverlap_SeqBAIJ(11,400
 PetscErrorCode MatCreateSubMatrix_SeqBAIJ_Private(68,2264
 PetscErrorCode MatCreateSubMatrix_SeqBAIJ(159,5423
-PetscErrorCode MatDestroySubMatrix_SeqBAIJ(205,7267
-PetscErrorCode MatDestroySubMatrices_SeqBAIJ(217,7620
-PetscErrorCode MatCreateSubMatrices_SeqBAIJ(252,8588
-PetscErrorCode MatMult_SeqBAIJ_1(267,9137
-PetscErrorCode MatMult_SeqBAIJ_2(312,10434
-PetscErrorCode MatMult_SeqBAIJ_3(365,11974
-PetscErrorCode MatMult_SeqBAIJ_4(426,13709
-PetscErrorCode MatMult_SeqBAIJ_5(487,15533
-PetscErrorCode MatMult_SeqBAIJ_6(552,17567
-PetscErrorCode MatMult_SeqBAIJ_7(623,19821
-PetscErrorCode MatMult_SeqBAIJ_9_AVX2(699,22497
-PetscErrorCode MatMult_SeqBAIJ_11(850,27289
-PetscErrorCode MatMult_SeqBAIJ_12_ver1(934,29358
-PetscErrorCode MatMultAdd_SeqBAIJ_12_ver1(1018,31418
-PetscErrorCode MatMult_SeqBAIJ_12_ver2(1111,33728
-PetscErrorCode MatMultAdd_SeqBAIJ_12_ver2(1223,37948
-PetscErrorCode MatMult_SeqBAIJ_12_AVX2(1353,42546
-PetscErrorCode MatMult_SeqBAIJ_15_ver1(1518,47669
-PetscErrorCode MatMult_SeqBAIJ_15_ver2(1614,50032
-PetscErrorCode MatMult_SeqBAIJ_15_ver3(1775,55936
-PetscErrorCode MatMult_SeqBAIJ_15_ver4(1901,61465
-PetscErrorCode MatMult_SeqBAIJ_N(2011,67026
-PetscErrorCode MatMultAdd_SeqBAIJ_1(2065,68533
-PetscErrorCode MatMultAdd_SeqBAIJ_2(2115,69902
-PetscErrorCode MatMultAdd_SeqBAIJ_3(2176,71593
-PetscErrorCode MatMultAdd_SeqBAIJ_4(2239,73398
-PetscErrorCode MatMultAdd_SeqBAIJ_5(2306,75373
-PetscErrorCode MatMultAdd_SeqBAIJ_6(2378,77560
-PetscErrorCode MatMultAdd_SeqBAIJ_7(2454,79966
-PetscErrorCode MatMultAdd_SeqBAIJ_9_AVX2(2535,82795
-PetscErrorCode MatMultAdd_SeqBAIJ_11(2686,87531
-PetscErrorCode MatMultAdd_SeqBAIJ_N(2782,92352
-PetscErrorCode MatMultHermitianTranspose_SeqBAIJ(2836,93825
-PetscErrorCode MatMultTranspose_SeqBAIJ(2846,94074
-PetscErrorCode MatMultHermitianTransposeAdd_SeqBAIJ(2856,94305
-PetscErrorCode MatMultTransposeAdd_SeqBAIJ(3017,99428
-PetscErrorCode MatScale_SeqBAIJ(3175,103807
-PetscErrorCode MatNorm_SeqBAIJ(3189,104228
-PetscErrorCode MatEqual_SeqBAIJ(3249,106052
-PetscErrorCode MatGetDiagonal_SeqBAIJ(3273,106859
-PetscErrorCode MatDiagonalScale_SeqBAIJ(3307,107813
-PetscErrorCode MatGetInfo_SeqBAIJ(3364,109494
-PetscErrorCode MatZeroEntries_SeqBAIJ(3388,110257
-PetscErrorCode MatMatMultSymbolic_SeqBAIJ_SeqDense(3397,110457
-PetscErrorCode MatMatMult_SeqBAIJ_1_Private(3405,110726
-PetscErrorCode MatMatMult_SeqBAIJ_2_Private(3453,112033
-PetscErrorCode MatMatMult_SeqBAIJ_3_Private(3505,113496
-PetscErrorCode MatMatMult_SeqBAIJ_4_Private(3561,115119
-PetscErrorCode MatMatMult_SeqBAIJ_5_Private(3621,116937
-PetscErrorCode MatMatMultNumeric_SeqBAIJ_SeqDense(3685,118972
+PetscErrorCode MatDestroySubMatrix_SeqBAIJ(205,7268
+PetscErrorCode MatDestroySubMatrices_SeqBAIJ(217,7621
+PetscErrorCode MatCreateSubMatrices_SeqBAIJ(252,8589
+PetscErrorCode MatMult_SeqBAIJ_1(267,9138
+PetscErrorCode MatMult_SeqBAIJ_2(312,10435
+PetscErrorCode MatMult_SeqBAIJ_3(365,11975
+PetscErrorCode MatMult_SeqBAIJ_4(426,13710
+PetscErrorCode MatMult_SeqBAIJ_5(487,15534
+PetscErrorCode MatMult_SeqBAIJ_6(552,17568
+PetscErrorCode MatMult_SeqBAIJ_7(623,19822
+PetscErrorCode MatMult_SeqBAIJ_9_AVX2(699,22498
+PetscErrorCode MatMult_SeqBAIJ_11(850,27290
+PetscErrorCode MatMult_SeqBAIJ_12_ver1(934,29359
+PetscErrorCode MatMultAdd_SeqBAIJ_12_ver1(1018,31419
+PetscErrorCode MatMult_SeqBAIJ_12_ver2(1111,33729
+PetscErrorCode MatMultAdd_SeqBAIJ_12_ver2(1223,37949
+PetscErrorCode MatMult_SeqBAIJ_12_AVX2(1353,42547
+PetscErrorCode MatMult_SeqBAIJ_15_ver1(1518,47670
+PetscErrorCode MatMult_SeqBAIJ_15_ver2(1614,50033
+PetscErrorCode MatMult_SeqBAIJ_15_ver3(1775,55937
+PetscErrorCode MatMult_SeqBAIJ_15_ver4(1901,61466
+PetscErrorCode MatMult_SeqBAIJ_N(2011,67027
+PetscErrorCode MatMultAdd_SeqBAIJ_1(2065,68534
+PetscErrorCode MatMultAdd_SeqBAIJ_2(2115,69903
+PetscErrorCode MatMultAdd_SeqBAIJ_3(2176,71594
+PetscErrorCode MatMultAdd_SeqBAIJ_4(2239,73399
+PetscErrorCode MatMultAdd_SeqBAIJ_5(2306,75374
+PetscErrorCode MatMultAdd_SeqBAIJ_6(2378,77561
+PetscErrorCode MatMultAdd_SeqBAIJ_7(2454,79967
+PetscErrorCode MatMultAdd_SeqBAIJ_9_AVX2(2535,82796
+PetscErrorCode MatMultAdd_SeqBAIJ_11(2686,87532
+PetscErrorCode MatMultAdd_SeqBAIJ_N(2782,92353
+PetscErrorCode MatMultHermitianTranspose_SeqBAIJ(2836,93826
+PetscErrorCode MatMultTranspose_SeqBAIJ(2846,94075
+PetscErrorCode MatMultHermitianTransposeAdd_SeqBAIJ(2856,94306
+PetscErrorCode MatMultTransposeAdd_SeqBAIJ(3017,99429
+PetscErrorCode MatScale_SeqBAIJ(3175,103808
+PetscErrorCode MatNorm_SeqBAIJ(3189,104229
+PetscErrorCode MatEqual_SeqBAIJ(3249,106053
+PetscErrorCode MatGetDiagonal_SeqBAIJ(3273,106860
+PetscErrorCode MatDiagonalScale_SeqBAIJ(3307,107814
+PetscErrorCode MatGetInfo_SeqBAIJ(3364,109495
+PetscErrorCode MatZeroEntries_SeqBAIJ(3388,110258
+PetscErrorCode MatMatMultSymbolic_SeqBAIJ_SeqDense(3397,110458
+PetscErrorCode MatMatMult_SeqBAIJ_1_Private(3405,110727
+PetscErrorCode MatMatMult_SeqBAIJ_2_Private(3453,112034
+PetscErrorCode MatMatMult_SeqBAIJ_3_Private(3505,113497
+PetscErrorCode MatMatMult_SeqBAIJ_4_Private(3561,115120
+PetscErrorCode MatMatMult_SeqBAIJ_5_Private(3621,116938
+PetscErrorCode MatMatMultNumeric_SeqBAIJ_SeqDense(3685,118973
 
 src/mat/impls/baij/seq/aijbaij.c,198
 aijbaij.c:^?aijbaij.c^A,1
@@ -35113,26 +35133,6 @@
 PetscErrorCode MatLUFactorNumeric_SeqBAIJ_4_NaturalOrdering_SSE_usj_Inplace(1092,37414
 PetscErrorCode MatLUFactorNumeric_SeqBAIJ_4_NaturalOrdering_SSE_usj(1535,52400
 
-src/mat/impls/baij/seq/baijfact.c,1020
-baijfact.c:^?baijfact.c^A,1
-PetscErrorCode MatLUFactorNumeric_SeqBAIJ_2(8,139
-PetscErrorCode MatLUFactorNumeric_SeqBAIJ_2_NaturalOrdering(114,4076
-PetscErrorCode MatLUFactorNumeric_SeqBAIJ_2_inplace(220,8053
-PetscErrorCode MatLUFactorNumeric_SeqBAIJ_2_NaturalOrdering_inplace(329,11559
-PetscErrorCode MatLUFactorNumeric_SeqBAIJ_1(437,14967
-PetscErrorCode MatLUFactorNumeric_SeqBAIJ_1_inplace(601,20986
-static PetscErrorCode MatFactorGetSolverType_petsc(671,23589
-PETSC_INTERN PetscErrorCode MatGetFactor_seqbaij_petsc(678,23747
-PetscErrorCode MatLUFactor_SeqBAIJ(716,25968
-PetscErrorCode MatCholeskyFactorNumeric_SeqBAIJ_N(733,26459
-PetscErrorCode MatCholeskyFactorNumeric_SeqBAIJ_N_NaturalOrdering(868,30761
-PetscErrorCode MatICCFactorSymbolic_SeqBAIJ(998,34852
-PetscErrorCode MatCholeskyFactorSymbolic_SeqBAIJ(1222,43208
-PetscErrorCode MatSolve_SeqBAIJ_N_NaturalOrdering(1397,49722
-PetscErrorCode MatSolve_SeqBAIJ_N(1448,51441
-static PetscErrorCode MatBlockAbs_private(1508,53440
-PetscErrorCode MatILUDTFactor_SeqBAIJ(1525,53978
-
 src/mat/impls/baij/seq/baij.h,1633
 baij.h:^?baij.h^A,1
 #define __BAIJ_H3,18
@@ -35270,29 +35270,29 @@
 
 src/mat/impls/baij/seq/baijmkl/baijmkl.c,1202
 baijmkl.c:^?baijmkl.c^A,1
-  #define MKL_ILP6411,398
-static PetscBool PetscSeqBAIJSupportsZeroBased(15,450
-  PetscBool           sparse_optimized;33,1035
-  sparse_matrix_t     bsrA;34,1140
-  struct matrix_descr descr;35,1238
-  PetscInt           *ai1;ai136,1267
-  PetscInt           *aj1;aj137,1294
-} Mat_SeqBAIJMKL;38,1321
-PETSC_INTERN PetscErrorCode MatConvert_SeqBAIJMKL_SeqBAIJ(43,1487
-static PetscErrorCode MatDestroy_SeqBAIJMKL(123,4170
-static PetscErrorCode MatSeqBAIJMKL_create_mkl_handle(142,4840
-static PetscErrorCode MatDuplicate_SeqBAIJMKL(194,7147
-static PetscErrorCode MatMult_SeqBAIJMKL_SpMV2(210,7675
-static PetscErrorCode MatMultTranspose_SeqBAIJMKL_SpMV2(241,8958
-static PetscErrorCode MatMultAdd_SeqBAIJMKL_SpMV2(272,10255
-static PetscErrorCode MatMultTransposeAdd_SeqBAIJMKL_SpMV2(314,12182
-static PetscErrorCode MatScale_SeqBAIJMKL(357,14164
-static PetscErrorCode MatDiagonalScale_SeqBAIJMKL(365,14381
-static PetscErrorCode MatAXPY_SeqBAIJMKL(373,14606
-PETSC_INTERN PetscErrorCode MatConvert_SeqBAIJ_SeqBAIJMKL(387,15244
-static PetscErrorCode MatAssemblyEnd_SeqBAIJMKL(416,16350
-PetscErrorCode MatCreateSeqBAIJMKL(485,19525
-PETSC_EXTERN PetscErrorCode MatCreate_SeqBAIJMKL(495,19905
+  #define MKL_ILP6411,399
+static PetscBool PetscSeqBAIJSupportsZeroBased(15,451
+  PetscBool           sparse_optimized;33,1036
+  sparse_matrix_t     bsrA;34,1141
+  struct matrix_descr descr;35,1239
+  PetscInt           *ai1;ai136,1268
+  PetscInt           *aj1;aj137,1295
+} Mat_SeqBAIJMKL;38,1322
+PETSC_INTERN PetscErrorCode MatConvert_SeqBAIJMKL_SeqBAIJ(43,1488
+static PetscErrorCode MatDestroy_SeqBAIJMKL(123,4171
+static PetscErrorCode MatSeqBAIJMKL_create_mkl_handle(142,4841
+static PetscErrorCode MatDuplicate_SeqBAIJMKL(194,7148
+static PetscErrorCode MatMult_SeqBAIJMKL_SpMV2(210,7676
+static PetscErrorCode MatMultTranspose_SeqBAIJMKL_SpMV2(241,8959
+static PetscErrorCode MatMultAdd_SeqBAIJMKL_SpMV2(272,10256
+static PetscErrorCode MatMultTransposeAdd_SeqBAIJMKL_SpMV2(314,12183
+static PetscErrorCode MatScale_SeqBAIJMKL(357,14165
+static PetscErrorCode MatDiagonalScale_SeqBAIJMKL(365,14382
+static PetscErrorCode MatAXPY_SeqBAIJMKL(373,14607
+PETSC_INTERN PetscErrorCode MatConvert_SeqBAIJ_SeqBAIJMKL(387,15245
+static PetscErrorCode MatAssemblyEnd_SeqBAIJMKL(416,16351
+PetscErrorCode MatCreateSeqBAIJMKL(485,19526
+PETSC_EXTERN PetscErrorCode MatCreate_SeqBAIJMKL(495,19906
 
 src/mat/impls/baij/seq/baijmkl/makefile,100
 makefile:^?makefile^A,1
@@ -35356,60 +35356,60 @@
 PetscErrorCode MatView_MPIBAIJ(1164,44650
 PetscErrorCode MatDestroy_MPIBAIJ(1179,45331
 PetscErrorCode MatMult_MPIBAIJ(1222,47398
-PetscErrorCode MatMultAdd_MPIBAIJ(1239,48131
-PetscErrorCode MatMultTranspose_MPIBAIJ(1251,48574
-PetscErrorCode MatMultTransposeAdd_MPIBAIJ(1266,49100
-PetscErrorCode MatGetDiagonal_MPIBAIJ(1285,49747
-PetscErrorCode MatScale_MPIBAIJ(1293,50041
-PetscErrorCode MatGetRow_MPIBAIJ(1303,50259
-PetscErrorCode MatRestoreRow_MPIBAIJ(1386,53134
-PetscErrorCode MatZeroEntries_MPIBAIJ(1396,53480
-PetscErrorCode MatGetInfo_MPIBAIJ(1406,53692
-PetscErrorCode MatSetOption_MPIBAIJ(1460,55503
-PetscErrorCode MatTranspose_MPIBAIJ(1508,56874
-PetscErrorCode MatDiagonalScale_MPIBAIJ(1575,59079
-PetscErrorCode MatZeroRows_MPIBAIJ(1605,60196
-PetscErrorCode MatZeroRowsColumns_MPIBAIJ(1663,62629
-PetscErrorCode MatSetUnfactored_MPIBAIJ(1759,66645
-PetscErrorCode MatEqual_MPIBAIJ(1770,66903
-PetscErrorCode MatCopy_MPIBAIJ(1788,67383
-PetscErrorCode MatSetUp_MPIBAIJ(1805,67959
-PetscErrorCode MatAXPYGetPreallocation_MPIBAIJ(1812,68150
-PetscErrorCode MatAXPY_MPIBAIJ(1823,68563
-PetscErrorCode MatConjugate_MPIBAIJ(1866,70576
-PetscErrorCode MatRealPart_MPIBAIJ(1878,70847
-PetscErrorCode MatImaginaryPart_MPIBAIJ(1888,71050
-PetscErrorCode MatCreateSubMatrix_MPIBAIJ(1898,71268
-PetscErrorCode MatCreateSubMatrix_MPIBAIJ_Private(1925,72407
-PetscErrorCode MatPermute_MPIBAIJ(2051,77082
-PetscErrorCode MatGetGhosts_MPIBAIJ(2090,78395
-PetscErrorCode MatGetSeqNonzeroStructure_MPIBAIJ(2101,78711
-PetscErrorCode MatSOR_MPIBAIJ(2191,82734
-PetscErrorCode MatGetColumnReductions_MPIBAIJ(2259,85453
-PetscErrorCode MatInvertBlockDiagonal_MPIBAIJ(2375,89644
-PetscErrorCode MatShift_MPIBAIJ(2387,90069
-PetscErrorCode MatMissingDiagonal_MPIBAIJ(2404,90573
-PetscErrorCode MatGetDiagonalBlock_MPIBAIJ(2419,91032
-static struct _MatOps MatOps_Values 2427,91252
-PetscErrorCode MatMPIBAIJSetPreallocationCSR_MPIBAIJ(2582,99368
-PetscErrorCode MatMPIBAIJSetPreallocationCSR(2676,103569
-PetscErrorCode MatMPIBAIJSetPreallocation_MPIBAIJ(2686,104013
-PETSC_INTERN PetscErrorCode MatConvert_MPIBAIJ_MPIAdj(2752,106589
-PETSC_INTERN PetscErrorCode MatConvert_MPIBAIJ_MPIAIJ(2794,108322
-PETSC_EXTERN PetscErrorCode MatCreate_MPIBAIJ(2863,111113
-PetscErrorCode MatMPIBAIJSetPreallocation(3037,119134
-PetscErrorCode MatCreateBAIJ(3142,124443
-static PetscErrorCode MatDuplicate_MPIBAIJ(3160,125087
-PetscErrorCode MatLoad_MPIBAIJ_Binary(3237,127757
-PetscErrorCode MatLoad_MPIBAIJ(3338,132499
-PetscErrorCode MatMPIBAIJSetHashTableFactor(3363,133288
-PetscErrorCode MatSetHashTableFactor_MPIBAIJ(3370,133491
-PetscErrorCode MatMPIBAIJGetSeqBAIJ(3380,133704
-  #define matmpibaijsetvaluesblocked_ 3398,134315
-  #define matmpibaijsetvaluesblocked_ 3400,134426
-PetscErrorCode matmpibaijsetvaluesblocked_(3424,134998
-PetscErrorCode MatCreateMPIBAIJWithArrays(3571,141265
-PetscErrorCode MatCreateMPIMatConcatenateSeqMat_MPIBAIJ(3587,142120
+PetscErrorCode MatMultAdd_MPIBAIJ(1239,48132
+PetscErrorCode MatMultTranspose_MPIBAIJ(1251,48575
+PetscErrorCode MatMultTransposeAdd_MPIBAIJ(1266,49101
+PetscErrorCode MatGetDiagonal_MPIBAIJ(1285,49748
+PetscErrorCode MatScale_MPIBAIJ(1293,50042
+PetscErrorCode MatGetRow_MPIBAIJ(1303,50260
+PetscErrorCode MatRestoreRow_MPIBAIJ(1386,53135
+PetscErrorCode MatZeroEntries_MPIBAIJ(1396,53481
+PetscErrorCode MatGetInfo_MPIBAIJ(1406,53693
+PetscErrorCode MatSetOption_MPIBAIJ(1460,55504
+PetscErrorCode MatTranspose_MPIBAIJ(1508,56875
+PetscErrorCode MatDiagonalScale_MPIBAIJ(1575,59080
+PetscErrorCode MatZeroRows_MPIBAIJ(1605,60197
+PetscErrorCode MatZeroRowsColumns_MPIBAIJ(1663,62630
+PetscErrorCode MatSetUnfactored_MPIBAIJ(1759,66646
+PetscErrorCode MatEqual_MPIBAIJ(1770,66904
+PetscErrorCode MatCopy_MPIBAIJ(1788,67384
+PetscErrorCode MatSetUp_MPIBAIJ(1805,67960
+PetscErrorCode MatAXPYGetPreallocation_MPIBAIJ(1812,68151
+PetscErrorCode MatAXPY_MPIBAIJ(1823,68564
+PetscErrorCode MatConjugate_MPIBAIJ(1866,70577
+PetscErrorCode MatRealPart_MPIBAIJ(1878,70848
+PetscErrorCode MatImaginaryPart_MPIBAIJ(1888,71051
+PetscErrorCode MatCreateSubMatrix_MPIBAIJ(1898,71269
+PetscErrorCode MatCreateSubMatrix_MPIBAIJ_Private(1925,72408
+PetscErrorCode MatPermute_MPIBAIJ(2051,77083
+PetscErrorCode MatGetGhosts_MPIBAIJ(2090,78396
+PetscErrorCode MatGetSeqNonzeroStructure_MPIBAIJ(2101,78712
+PetscErrorCode MatSOR_MPIBAIJ(2191,82735
+PetscErrorCode MatGetColumnReductions_MPIBAIJ(2259,85454
+PetscErrorCode MatInvertBlockDiagonal_MPIBAIJ(2375,89645
+PetscErrorCode MatShift_MPIBAIJ(2387,90070
+PetscErrorCode MatMissingDiagonal_MPIBAIJ(2404,90574
+PetscErrorCode MatGetDiagonalBlock_MPIBAIJ(2419,91033
+static struct _MatOps MatOps_Values 2427,91253
+PetscErrorCode MatMPIBAIJSetPreallocationCSR_MPIBAIJ(2582,99369
+PetscErrorCode MatMPIBAIJSetPreallocationCSR(2676,103577
+PetscErrorCode MatMPIBAIJSetPreallocation_MPIBAIJ(2686,104021
+PETSC_INTERN PetscErrorCode MatConvert_MPIBAIJ_MPIAdj(2752,106597
+PETSC_INTERN PetscErrorCode MatConvert_MPIBAIJ_MPIAIJ(2794,108330
+PETSC_EXTERN PetscErrorCode MatCreate_MPIBAIJ(2863,111128
+PetscErrorCode MatMPIBAIJSetPreallocation(3039,119210
+PetscErrorCode MatCreateBAIJ(3146,124561
+static PetscErrorCode MatDuplicate_MPIBAIJ(3164,125205
+PetscErrorCode MatLoad_MPIBAIJ_Binary(3241,127875
+PetscErrorCode MatLoad_MPIBAIJ(3342,132617
+PetscErrorCode MatMPIBAIJSetHashTableFactor(3367,133413
+PetscErrorCode MatSetHashTableFactor_MPIBAIJ(3374,133616
+PetscErrorCode MatMPIBAIJGetSeqBAIJ(3384,133829
+  #define matmpibaijsetvaluesblocked_ 3402,134440
+  #define matmpibaijsetvaluesblocked_ 3404,134551
+PetscErrorCode matmpibaijsetvaluesblocked_(3428,135130
+PetscErrorCode MatCreateMPIBAIJWithArrays(3575,141416
+PetscErrorCode MatCreateMPIMatConcatenateSeqMat_MPIBAIJ(3591,142271
 
 src/mat/impls/baij/mpi/mpiaijbaij.c,61
 mpiaijbaij.c:^?mpiaijbaij.c^A,1
@@ -35477,8 +35477,8 @@
 mpibaijmkl.c:^?mpibaijmkl.c^A,1
 static PetscErrorCode MatMPIBAIJSetPreallocation_MPIBAIJMKL(5,139
 static PetscErrorCode MatConvert_MPIBAIJ_MPIBAIJMKL(16,658
-PetscErrorCode MatCreateBAIJMKL(133,6442
-PETSC_EXTERN PetscErrorCode MatCreate_MPIBAIJMKL(151,7095
+PetscErrorCode MatCreateBAIJMKL(133,6470
+PETSC_EXTERN PetscErrorCode MatCreate_MPIBAIJMKL(151,7123
 
 src/mat/impls/baij/mpi/baijmkl/makefile,100
 makefile:^?makefile^A,1
@@ -35508,35 +35508,43 @@
 DIRS 3,34
 LOCDIR 4,53
 
-src/mat/impls/aij/seq/inode.c,1576
-inode.c:^?inode.c^A,1
-static PetscErrorCode MatCreateColInode_Private(8,216
-static PetscErrorCode MatGetRowIJ_SeqAIJ_Inode_Symmetric(52,1465
-static PetscErrorCode MatGetRowIJ_SeqAIJ_Inode_Nonsymmetric(137,4418
-static PetscErrorCode MatGetRowIJ_SeqAIJ_Inode(213,6935
-static PetscErrorCode MatRestoreRowIJ_SeqAIJ_Inode(230,7600
-static PetscErrorCode MatGetColumnIJ_SeqAIJ_Inode_Nonsymmetric(246,8151
-static PetscErrorCode MatGetColumnIJ_SeqAIJ_Inode(321,10608
-static PetscErrorCode MatRestoreColumnIJ_SeqAIJ_Inode(338,11318
-PetscErrorCode MatMult_SeqAIJ_Inode(353,11874
-PetscErrorCode MatMultAdd_SeqAIJ_Inode(557,17661
-PetscErrorCode MatSolve_SeqAIJ_Inode_inplace(757,22883
-PetscErrorCode MatLUFactorNumeric_SeqAIJ_Inode(1190,34547
-PetscErrorCode MatLUFactorNumeric_SeqAIJ_Inode_inplace(1975,60916
-PetscErrorCode MatSolve_SeqAIJ_Inode(2395,74709
-PetscErrorCode MatColoringPatch_SeqAIJ_Inode(2797,86290
-PetscErrorCode MatSOR_SeqAIJ_Inode(2828,87549
-PetscErrorCode MatMultDiagonalBlock_SeqAIJ_Inode(4193,135371
-static PetscErrorCode MatSeqAIJ_Inode_ResetOps(4277,138643
-PetscErrorCode MatSeqAIJCheckInode(4300,139427
-PetscErrorCode MatDuplicate_SeqAIJ_Inode(4364,141859
-static inline PetscErrorCode MatGetRow_FactoredLU(4405,143449
-PetscErrorCode MatSeqAIJCheckInode_FactorLU(4427,144119
-PetscErrorCode MatSeqAIJInvalidateDiagonal_Inode(4494,146653
-PetscErrorCode MatInodeAdjustForInodes(4508,147006
-PetscErrorCode MatInodeAdjustForInodes_SeqAIJ_Inode(4515,147215
-PetscErrorCode MatInodeGetInodeSizes(4597,150208
-PetscErrorCode MatInodeGetInodeSizes_SeqAIJ_Inode(4608,150671
+src/mat/impls/aij/seq/aijfact.c,1983
+aijfact.c:^?aijfact.c^A,1
+PetscErrorCode MatGetOrdering_Flow_SeqAIJ(12,381
+static PetscErrorCode MatFactorGetSolverType_petsc(91,3191
+PETSC_INTERN PetscErrorCode MatGetFactor_seqaij_petsc(98,3349
+PetscErrorCode MatLUFactorSymbolic_SeqAIJ_inplace(136,5417
+PetscErrorCode MatLUFactorSymbolic_SeqAIJ(283,10518
+PetscErrorCode MatFactorDumpMatrix(433,15882
+PetscErrorCode MatLUFactorNumeric_SeqAIJ(451,16494
+PetscErrorCode MatLUFactorNumeric_SeqAIJ_inplace(619,22533
+PetscErrorCode MatLUFactorNumeric_SeqAIJ_InplaceWithPerm(768,28115
+PetscErrorCode MatLUFactor_SeqAIJ(933,34054
+PetscErrorCode MatSolve_SeqAIJ_inplace(950,34564
+PetscErrorCode MatMatSolve_SeqAIJ_inplace(1003,36077
+PetscErrorCode MatMatSolve_SeqAIJ(1062,38174
+PetscErrorCode MatSolve_SeqAIJ_InplaceWithPerm(1122,40293
+PetscErrorCode MatSolve_SeqAIJ_NaturalOrdering_inplace(1179,42040
+PetscErrorCode MatSolveAdd_SeqAIJ_inplace(1232,43497
+PetscErrorCode MatSolveAdd_SeqAIJ(1285,45024
+PetscErrorCode MatSolveTranspose_SeqAIJ_inplace(1342,46580
+PetscErrorCode MatSolveTranspose_SeqAIJ(1398,48220
+PetscErrorCode MatSolveTransposeAdd_SeqAIJ_inplace(1454,49859
+PetscErrorCode MatSolveTransposeAdd_SeqAIJ(1511,51545
+PetscErrorCode MatILUFactorSymbolic_SeqAIJ_ilu0(1586,53863
+PetscErrorCode MatILUFactorSymbolic_SeqAIJ(1648,55791
+PetscErrorCode MatILUFactorSymbolic_SeqAIJ_inplace(1816,62957
+PetscErrorCode MatCholeskyFactorNumeric_SeqAIJ(2002,70651
+PetscErrorCode MatCholeskyFactorNumeric_SeqAIJ_inplace(2164,76452
+PetscErrorCode MatICCFactorSymbolic_SeqAIJ(2340,82309
+PetscErrorCode MatICCFactorSymbolic_SeqAIJ_inplace(2544,90653
+PetscErrorCode MatCholeskyFactorSymbolic_SeqAIJ(2747,98645
+PetscErrorCode MatCholeskyFactorSymbolic_SeqAIJ_inplace(2918,105028
+PetscErrorCode MatSolve_SeqAIJ_NaturalOrdering(3086,111124
+PetscErrorCode MatSolve_SeqAIJ(3131,112335
+PetscErrorCode MatILUDTFactor_SeqAIJ(3187,114000
+PetscErrorCode MatILUDTFactorSymbolic_SeqAIJ(3420,122332
+PetscErrorCode MatILUDTFactorNumeric_SeqAIJ(3435,122867
 
 src/mat/impls/aij/seq/aij.h,3130
 aij.h:^?aij.h^A,1
@@ -35618,9 +35626,9 @@
   #define PetscSparseDensePlusDot(540,28884
     #define _MM_SCALE_8 550,29357
 static inline void PetscSparseDensePlusDot_AVX512_Private(553,29393
-#define PetscSparseDenseMaxDot(600,30963
-#define MatRowMergeMax_SeqAIJ(609,31242
-#define MatMergeRows_SeqAIJ(626,31708
+#define PetscSparseDenseMaxDot(600,30965
+#define MatRowMergeMax_SeqAIJ(609,31244
+#define MatMergeRows_SeqAIJ(626,31710
 
 src/mat/impls/aij/seq/aij.c,6870
 aij.c:^?aij.c^A,1
@@ -35682,83 +35690,113 @@
 PetscErrorCode MatIsHermitian_SeqAIJ(2422,86301
 PetscErrorCode MatDiagonalScale_SeqAIJ(2429,86486
 PetscErrorCode MatCreateSubMatrix_SeqAIJ(2470,87905
-PetscErrorCode MatGetMultiProcBlock_SeqAIJ(2634,93669
-PetscErrorCode MatILUFactor_SeqAIJ(2652,94269
-PetscErrorCode MatScale_SeqAIJ(2696,95653
-PetscErrorCode MatDestroySubMatrix_Private(2712,96132
-PetscErrorCode MatDestroySubMatrix_SeqAIJ(2754,97438
-PetscErrorCode MatDestroySubMatrices_SeqAIJ(2766,97790
-PetscErrorCode MatCreateSubMatrices_SeqAIJ(2801,98756
-PetscErrorCode MatIncreaseOverlap_SeqAIJ(2812,99133
-PetscErrorCode MatPermute_SeqAIJ(2893,101935
-PetscErrorCode MatCopy_SeqAIJ(2943,103780
-PetscErrorCode MatSetUp_SeqAIJ(2963,104656
-PETSC_INTERN PetscErrorCode MatSeqAIJGetArray_SeqAIJ(2970,104818
-PETSC_INTERN PetscErrorCode MatSeqAIJRestoreArray_SeqAIJ(2979,105012
-PetscErrorCode MatAXPYGetPreallocation_SeqX_private(2990,105292
-PetscErrorCode MatAXPYGetPreallocation_SeqAIJ(3011,106040
-PetscErrorCode MatAXPY_SeqAIJ(3023,106417
-PETSC_INTERN PetscErrorCode MatConjugate_SeqAIJ(3073,108472
-PetscErrorCode MatGetRowMaxAbs_SeqAIJ(3091,108888
-PetscErrorCode MatGetRowMax_SeqAIJ(3128,109938
-PetscErrorCode MatGetRowMinAbs_SeqAIJ(3179,111459
-PetscErrorCode MatGetRowMin_SeqAIJ(3229,112928
-PetscErrorCode MatInvertBlockDiagonal_SeqAIJ(3281,114457
-static PetscErrorCode MatSetRandom_SeqAIJ(3412,119511
-PetscErrorCode MatSetRandomSkipColumnRange_SeqAIJ_Private(3439,120430
-static struct _MatOps MatOps_Values 3463,121320
-PetscErrorCode MatSeqAIJSetColumnIndices_SeqAIJ(3615,129809
-PetscErrorCode MatSeqAIJCompactOutExtraColumns_SeqAIJ(3633,130383
-PetscErrorCode MatSeqAIJSetColumnIndices(3705,132889
-PetscErrorCode MatStoreValues_SeqAIJ(3716,133280
-PetscErrorCode MatStoreValues(3778,135564
-PetscErrorCode MatRetrieveValues_SeqAIJ(3788,135967
-PetscErrorCode MatRetrieveValues(3815,136839
-PetscErrorCode MatCreateSeqAIJ(3876,139524
-PetscErrorCode MatSeqAIJSetPreallocation(3936,142056
-PetscErrorCode MatSeqAIJSetPreallocation_SeqAIJ(3945,142364
-PetscErrorCode MatResetPreallocation_SeqAIJ(4039,145709
-PetscErrorCode MatSeqAIJSetPreallocationCSR(4094,147918
-PetscErrorCode MatSeqAIJSetPreallocationCSR_SeqAIJ(4103,148289
-PetscErrorCode MatSeqAIJKron(4153,149955
-PetscErrorCode MatSeqAIJKron_SeqAIJ(4169,150447
-PetscErrorCode MatMatMultNumeric_SeqDense_SeqAIJ(4234,153255
-PetscErrorCode MatMatMultSymbolic_SeqDense_SeqAIJ(4274,154255
-PetscErrorCode MatSeqAIJGetArray(4383,158724
-PetscErrorCode MatSeqAIJRestoreArray(4409,159331
-PetscErrorCode MatSeqAIJGetArrayRead(4439,160045
-PetscErrorCode MatSeqAIJRestoreArrayRead(4467,160656
-PetscErrorCode MatSeqAIJGetArrayWrite(4495,161290
-PetscErrorCode MatSeqAIJRestoreArrayWrite(4525,161993
-PetscErrorCode MatSeqAIJGetCSRAndMemType(4563,163177
-PetscErrorCode MatSeqAIJGetMaxRowNonzeros(4595,164065
-PetscErrorCode MatSetPreallocationCOO_SeqAIJ(4604,164244
-static PetscErrorCode MatSetValuesCOO_SeqAIJ(4714,168465
-PETSC_EXTERN PetscErrorCode MatCreate_SeqAIJ(4739,169302
-PetscErrorCode MatDuplicateNoCreate_SeqAIJ(4833,175163
-PetscErrorCode MatDuplicate_SeqAIJ(4921,178249
-PetscErrorCode MatLoad_SeqAIJ(4932,178761
-PetscErrorCode MatLoad_SeqAIJ_Binary(4957,179844
-PetscErrorCode MatEqual_SeqAIJ(5017,182910
-PetscErrorCode MatCreateSeqAIJWithArrays(5099,185472
-PetscErrorCode MatCreateSeqAIJFromTriple(5184,189115
-PetscErrorCode MatSeqAIJInvalidateDiagonal(5211,190017
-PetscErrorCode MatCreateMPIMatConcatenateSeqMat_SeqAIJ(5223,190278
-PetscErrorCode MatSetSeqMat_SeqAIJ(5236,190817
-PetscFunctionList MatSeqAIJList 5297,193382
-PetscErrorCode MatSeqAIJSetType(5315,193768
-PetscErrorCode MatSeqAIJRegister(5350,194879
-PetscBool MatSeqAIJRegisterAllCalled 5358,195149
-PetscErrorCode MatSeqAIJRegisterAll(5369,195379
-  #define matsetvaluesseqaij_ 5398,196467
-  #define matsetvaluesseqaij_ 5400,196562
-#undef PetscCall5407,196798
-#define PetscCall(5408,196815
-#undef SETERRQ5417,197113
-#define SETERRQ(5418,197128
-PETSC_EXTERN void matsetvaluesseqaij_(5424,197315
-#undef PetscCall5505,200121
-#undef SETERRQ5506,200138
+PetscErrorCode MatGetMultiProcBlock_SeqAIJ(2638,94032
+PetscErrorCode MatILUFactor_SeqAIJ(2656,94632
+PetscErrorCode MatScale_SeqAIJ(2700,96016
+PetscErrorCode MatDestroySubMatrix_Private(2716,96495
+PetscErrorCode MatDestroySubMatrix_SeqAIJ(2758,97801
+PetscErrorCode MatDestroySubMatrices_SeqAIJ(2770,98153
+PetscErrorCode MatCreateSubMatrices_SeqAIJ(2805,99119
+PetscErrorCode MatIncreaseOverlap_SeqAIJ(2816,99496
+PetscErrorCode MatPermute_SeqAIJ(2897,102298
+PetscErrorCode MatCopy_SeqAIJ(2947,104143
+PetscErrorCode MatSetUp_SeqAIJ(2967,105019
+PETSC_INTERN PetscErrorCode MatSeqAIJGetArray_SeqAIJ(2974,105181
+PETSC_INTERN PetscErrorCode MatSeqAIJRestoreArray_SeqAIJ(2983,105375
+PetscErrorCode MatAXPYGetPreallocation_SeqX_private(2994,105655
+PetscErrorCode MatAXPYGetPreallocation_SeqAIJ(3015,106403
+PetscErrorCode MatAXPY_SeqAIJ(3027,106780
+PETSC_INTERN PetscErrorCode MatConjugate_SeqAIJ(3077,108835
+PetscErrorCode MatGetRowMaxAbs_SeqAIJ(3095,109251
+PetscErrorCode MatGetRowMax_SeqAIJ(3132,110301
+PetscErrorCode MatGetRowMinAbs_SeqAIJ(3183,111822
+PetscErrorCode MatGetRowMin_SeqAIJ(3233,113291
+PetscErrorCode MatInvertBlockDiagonal_SeqAIJ(3285,114820
+static PetscErrorCode MatSetRandom_SeqAIJ(3416,119874
+PetscErrorCode MatSetRandomSkipColumnRange_SeqAIJ_Private(3443,120793
+static struct _MatOps MatOps_Values 3467,121683
+PetscErrorCode MatSeqAIJSetColumnIndices_SeqAIJ(3619,130172
+PetscErrorCode MatSeqAIJCompactOutExtraColumns_SeqAIJ(3637,130746
+PetscErrorCode MatSeqAIJSetColumnIndices(3709,133252
+PetscErrorCode MatStoreValues_SeqAIJ(3720,133643
+PetscErrorCode MatStoreValues(3782,135926
+PetscErrorCode MatRetrieveValues_SeqAIJ(3792,136329
+PetscErrorCode MatRetrieveValues(3819,137201
+PetscErrorCode MatCreateSeqAIJ(3880,139886
+PetscErrorCode MatSeqAIJSetPreallocation(3940,142418
+PetscErrorCode MatSeqAIJSetPreallocation_SeqAIJ(3949,142726
+PetscErrorCode MatResetPreallocation_SeqAIJ(4043,146071
+PetscErrorCode MatSeqAIJSetPreallocationCSR(4098,148280
+PetscErrorCode MatSeqAIJSetPreallocationCSR_SeqAIJ(4107,148651
+PetscErrorCode MatSeqAIJKron(4157,150317
+PetscErrorCode MatSeqAIJKron_SeqAIJ(4173,150809
+PetscErrorCode MatMatMultNumeric_SeqDense_SeqAIJ(4238,153617
+PetscErrorCode MatMatMultSymbolic_SeqDense_SeqAIJ(4278,154617
+PetscErrorCode MatSeqAIJGetArray(4387,159086
+PetscErrorCode MatSeqAIJRestoreArray(4413,159693
+PetscErrorCode MatSeqAIJGetArrayRead(4443,160407
+PetscErrorCode MatSeqAIJRestoreArrayRead(4471,161018
+PetscErrorCode MatSeqAIJGetArrayWrite(4499,161652
+PetscErrorCode MatSeqAIJRestoreArrayWrite(4529,162355
+PetscErrorCode MatSeqAIJGetCSRAndMemType(4567,163539
+PetscErrorCode MatSeqAIJGetMaxRowNonzeros(4599,164427
+PetscErrorCode MatSetPreallocationCOO_SeqAIJ(4608,164606
+static PetscErrorCode MatSetValuesCOO_SeqAIJ(4718,168827
+PETSC_EXTERN PetscErrorCode MatCreate_SeqAIJ(4743,169664
+PetscErrorCode MatDuplicateNoCreate_SeqAIJ(4837,175525
+PetscErrorCode MatDuplicate_SeqAIJ(4925,178611
+PetscErrorCode MatLoad_SeqAIJ(4936,179123
+PetscErrorCode MatLoad_SeqAIJ_Binary(4961,180206
+PetscErrorCode MatEqual_SeqAIJ(5021,183272
+PetscErrorCode MatCreateSeqAIJWithArrays(5103,185834
+PetscErrorCode MatCreateSeqAIJFromTriple(5188,189477
+PetscErrorCode MatSeqAIJInvalidateDiagonal(5215,190379
+PetscErrorCode MatCreateMPIMatConcatenateSeqMat_SeqAIJ(5227,190640
+PetscErrorCode MatSetSeqMat_SeqAIJ(5240,191179
+PetscFunctionList MatSeqAIJList 5301,193744
+PetscErrorCode MatSeqAIJSetType(5319,194131
+PetscErrorCode MatSeqAIJRegister(5354,195242
+PetscBool MatSeqAIJRegisterAllCalled 5362,195512
+PetscErrorCode MatSeqAIJRegisterAll(5373,195742
+  #define matsetvaluesseqaij_ 5402,196830
+  #define matsetvaluesseqaij_ 5404,196925
+#undef PetscCall5411,197161
+#define PetscCall(5412,197178
+#undef SETERRQ5421,197476
+#define SETERRQ(5422,197491
+PETSC_EXTERN void matsetvaluesseqaij_(5428,197678
+#undef PetscCall5509,200484
+#undef SETERRQ5510,200501
+
+src/mat/impls/aij/seq/inode.c,1576
+inode.c:^?inode.c^A,1
+static PetscErrorCode MatCreateColInode_Private(8,216
+static PetscErrorCode MatGetRowIJ_SeqAIJ_Inode_Symmetric(52,1465
+static PetscErrorCode MatGetRowIJ_SeqAIJ_Inode_Nonsymmetric(137,4418
+static PetscErrorCode MatGetRowIJ_SeqAIJ_Inode(213,6935
+static PetscErrorCode MatRestoreRowIJ_SeqAIJ_Inode(230,7600
+static PetscErrorCode MatGetColumnIJ_SeqAIJ_Inode_Nonsymmetric(246,8151
+static PetscErrorCode MatGetColumnIJ_SeqAIJ_Inode(321,10608
+static PetscErrorCode MatRestoreColumnIJ_SeqAIJ_Inode(338,11318
+PetscErrorCode MatMult_SeqAIJ_Inode(353,11874
+PetscErrorCode MatMultAdd_SeqAIJ_Inode(557,17661
+PetscErrorCode MatSolve_SeqAIJ_Inode_inplace(757,22883
+PetscErrorCode MatLUFactorNumeric_SeqAIJ_Inode(1190,34547
+PetscErrorCode MatLUFactorNumeric_SeqAIJ_Inode_inplace(1975,60916
+PetscErrorCode MatSolve_SeqAIJ_Inode(2395,74709
+PetscErrorCode MatColoringPatch_SeqAIJ_Inode(2797,86290
+PetscErrorCode MatSOR_SeqAIJ_Inode(2828,87549
+PetscErrorCode MatMultDiagonalBlock_SeqAIJ_Inode(4193,135371
+static PetscErrorCode MatSeqAIJ_Inode_ResetOps(4277,138643
+PetscErrorCode MatSeqAIJCheckInode(4300,139427
+PetscErrorCode MatDuplicate_SeqAIJ_Inode(4364,141859
+static inline PetscErrorCode MatGetRow_FactoredLU(4405,143449
+PetscErrorCode MatSeqAIJCheckInode_FactorLU(4427,144119
+PetscErrorCode MatSeqAIJInvalidateDiagonal_Inode(4494,146653
+PetscErrorCode MatInodeAdjustForInodes(4508,147006
+PetscErrorCode MatInodeAdjustForInodes_SeqAIJ_Inode(4515,147215
+PetscErrorCode MatInodeGetInodeSizes(4597,150208
+PetscErrorCode MatInodeGetInodeSizes_SeqAIJ_Inode(4608,150671
 
 src/mat/impls/aij/seq/fdaij.c,165
 fdaij.c:^?fdaij.c^A,1
@@ -35878,44 +35916,6 @@
 aijhdf5.c:^?aijhdf5.c^A,1
 PetscErrorCode MatLoad_AIJ_HDF5(8,171
 
-src/mat/impls/aij/seq/aijfact.c,1983
-aijfact.c:^?aijfact.c^A,1
-PetscErrorCode MatGetOrdering_Flow_SeqAIJ(12,381
-static PetscErrorCode MatFactorGetSolverType_petsc(91,3191
-PETSC_INTERN PetscErrorCode MatGetFactor_seqaij_petsc(98,3349
-PetscErrorCode MatLUFactorSymbolic_SeqAIJ_inplace(136,5417
-PetscErrorCode MatLUFactorSymbolic_SeqAIJ(283,10518
-PetscErrorCode MatFactorDumpMatrix(433,15882
-PetscErrorCode MatLUFactorNumeric_SeqAIJ(451,16494
-PetscErrorCode MatLUFactorNumeric_SeqAIJ_inplace(619,22533
-PetscErrorCode MatLUFactorNumeric_SeqAIJ_InplaceWithPerm(768,28115
-PetscErrorCode MatLUFactor_SeqAIJ(933,34054
-PetscErrorCode MatSolve_SeqAIJ_inplace(950,34564
-PetscErrorCode MatMatSolve_SeqAIJ_inplace(1003,36077
-PetscErrorCode MatMatSolve_SeqAIJ(1062,38174
-PetscErrorCode MatSolve_SeqAIJ_InplaceWithPerm(1122,40293
-PetscErrorCode MatSolve_SeqAIJ_NaturalOrdering_inplace(1179,42040
-PetscErrorCode MatSolveAdd_SeqAIJ_inplace(1232,43497
-PetscErrorCode MatSolveAdd_SeqAIJ(1285,45024
-PetscErrorCode MatSolveTranspose_SeqAIJ_inplace(1342,46580
-PetscErrorCode MatSolveTranspose_SeqAIJ(1398,48220
-PetscErrorCode MatSolveTransposeAdd_SeqAIJ_inplace(1454,49859
-PetscErrorCode MatSolveTransposeAdd_SeqAIJ(1511,51545
-PetscErrorCode MatILUFactorSymbolic_SeqAIJ_ilu0(1586,53863
-PetscErrorCode MatILUFactorSymbolic_SeqAIJ(1648,55791
-PetscErrorCode MatILUFactorSymbolic_SeqAIJ_inplace(1816,62957
-PetscErrorCode MatCholeskyFactorNumeric_SeqAIJ(2002,70651
-PetscErrorCode MatCholeskyFactorNumeric_SeqAIJ_inplace(2164,76452
-PetscErrorCode MatICCFactorSymbolic_SeqAIJ(2340,82309
-PetscErrorCode MatICCFactorSymbolic_SeqAIJ_inplace(2544,90653
-PetscErrorCode MatCholeskyFactorSymbolic_SeqAIJ(2747,98645
-PetscErrorCode MatCholeskyFactorSymbolic_SeqAIJ_inplace(2918,105028
-PetscErrorCode MatSolve_SeqAIJ_NaturalOrdering(3086,111124
-PetscErrorCode MatSolve_SeqAIJ(3131,112335
-PetscErrorCode MatILUDTFactor_SeqAIJ(3187,114000
-PetscErrorCode MatILUDTFactorSymbolic_SeqAIJ(3420,122331
-PetscErrorCode MatILUDTFactorNumeric_SeqAIJ(3435,122866
-
 src/mat/impls/aij/seq/seqhipsparse/hipsparsematimpl.h,10063
 hipsparsematimpl.h:^?hipsparsematimpl.h^A,1
 #define PETSC_HIPSPARSEMATIMPL_H5,144
@@ -36349,6 +36349,10 @@
 PETSC_INTERN PetscErrorCode MatConvert_SeqAIJ_SeqAIJViennaCL(453,18535
 PETSC_EXTERN PetscErrorCode MatSolverTypeRegister_ViennaCL(504,20911
 
+src/mat/impls/aij/seq/seqcusparse/aijcusparse.cu,34
+aijcusparse.cu:^?aijcusparse.cu^A,1
+     Function csric02(1701,94983
+
 src/mat/impls/aij/seq/seqcusparse/aijcusparseband.cu,850
 aijcusparseband.cu:^?aijcusparseband.cu^A,1
 #define PETSC_SKIP_SPINLOCK4,102
@@ -36370,10 +36374,6 @@
 __global__ void __launch_bounds__(407,17984
 static PetscErrorCode MatSolve_SeqAIJCUSPARSEBAND(463,20747
 
-src/mat/impls/aij/seq/seqcusparse/aijcusparse.cu,34
-aijcusparse.cu:^?aijcusparse.cu^A,1
-     Function csric02(1701,94983
-
 src/mat/impls/aij/seq/seqcusparse/makefile,101
 makefile:^?makefile^A,1
 SOURCECU 4,75
@@ -36665,17 +36665,17 @@
 PetscErrorCode MatFactorNumeric_MKL_PARDISO(529,22153
 PetscErrorCode MatSetFromOptions_MKL_PARDISO(557,23786
 PetscErrorCode MatFactorMKL_PARDISOInitialize_Private(654,29175
-PetscErrorCode MatFactorSymbolic_AIJMKL_PARDISO_Private(717,32100
-PetscErrorCode MatLUFactorSymbolic_AIJMKL_PARDISO(753,34054
-PetscErrorCode MatGetInertia_MKL_PARDISO(761,34309
-PetscErrorCode MatCholeskyFactorSymbolic_AIJMKL_PARDISO(773,34722
-PetscErrorCode MatView_MKL_PARDISO(785,35068
-PetscErrorCode MatGetInfo_MKL_PARDISO(813,36571
-PetscErrorCode MatMkl_PardisoSetCntl_MKL_PARDISO(831,37138
-PetscErrorCode MatMkl_PardisoSetCntl(882,38749
-static PetscErrorCode MatFactorGetSolverType_mkl_pardiso(931,41229
-PETSC_EXTERN PetscErrorCode MatGetFactor_aij_mkl_pardiso(938,41399
-PETSC_EXTERN PetscErrorCode MatSolverTypeRegister_MKL_Pardiso(1006,44668
+PetscErrorCode MatFactorSymbolic_AIJMKL_PARDISO_Private(717,32101
+PetscErrorCode MatLUFactorSymbolic_AIJMKL_PARDISO(753,34055
+PetscErrorCode MatGetInertia_MKL_PARDISO(761,34310
+PetscErrorCode MatCholeskyFactorSymbolic_AIJMKL_PARDISO(773,34723
+PetscErrorCode MatView_MKL_PARDISO(785,35069
+PetscErrorCode MatGetInfo_MKL_PARDISO(813,36572
+PetscErrorCode MatMkl_PardisoSetCntl_MKL_PARDISO(831,37139
+PetscErrorCode MatMkl_PardisoSetCntl(882,38750
+static PetscErrorCode MatFactorGetSolverType_mkl_pardiso(931,41230
+PETSC_EXTERN PetscErrorCode MatGetFactor_aij_mkl_pardiso(938,41400
+PETSC_EXTERN PetscErrorCode MatSolverTypeRegister_MKL_Pardiso(1006,44669
 
 src/mat/impls/aij/seq/mkl_pardiso/mkl_utils.c,52
 mkl_utils.c:^?mkl_utils.c^A,1
@@ -36838,20 +36838,20 @@
 typedef Kokkos::TeamPolicy<>::member_type team_member;1348,54271
 static PetscErrorCode MatLUFactorNumeric_SeqAIJKOKKOSDEVICE(1353,54509
 #define KOKKOS_SHARED_LEVEL 1375,55976
-static PetscErrorCode MatLUFactorSymbolic_SeqAIJKokkos(1574,67539
-static PetscErrorCode MatSeqAIJKokkosSymbolicSolveCheck(1582,67836
-static PetscErrorCode MatSeqAIJKokkosTransposeSolveCheck(1596,68418
-static PetscErrorCode MatSolve_SeqAIJKokkos(1638,71343
-static PetscErrorCode MatSolveTranspose_SeqAIJKokkos(1660,72285
-static PetscErrorCode MatILUFactorNumeric_SeqAIJKokkos(1682,73180
-static PetscErrorCode MatILUFactorSymbolic_SeqAIJKokkos(1714,74524
-static PetscErrorCode MatLUFactorSymbolic_SeqAIJKOKKOSDEVICE(1780,77612
-static PetscErrorCode MatFactorGetSolverType_SeqAIJKokkos(1802,78561
-static PetscErrorCode MatFactorGetSolverType_seqaij_kokkos_device(1809,78727
-PETSC_EXTERN PetscErrorCode MatGetFactor_SeqAIJKokkos_Kokkos(1824,79280
-PETSC_EXTERN PetscErrorCode MatGetFactor_seqaijkokkos_kokkos_device(1850,80512
-PETSC_EXTERN PetscErrorCode MatSolverTypeRegister_KOKKOS(1872,81475
-PETSC_INTERN PetscErrorCode PrintCsrMatrix(1882,82021
+static PetscErrorCode MatLUFactorSymbolic_SeqAIJKokkos(1574,67540
+static PetscErrorCode MatSeqAIJKokkosSymbolicSolveCheck(1582,67837
+static PetscErrorCode MatSeqAIJKokkosTransposeSolveCheck(1596,68419
+static PetscErrorCode MatSolve_SeqAIJKokkos(1638,71344
+static PetscErrorCode MatSolveTranspose_SeqAIJKokkos(1660,72286
+static PetscErrorCode MatILUFactorNumeric_SeqAIJKokkos(1682,73181
+static PetscErrorCode MatILUFactorSymbolic_SeqAIJKokkos(1714,74525
+static PetscErrorCode MatLUFactorSymbolic_SeqAIJKOKKOSDEVICE(1780,77613
+static PetscErrorCode MatFactorGetSolverType_SeqAIJKokkos(1802,78562
+static PetscErrorCode MatFactorGetSolverType_seqaij_kokkos_device(1809,78728
+PETSC_EXTERN PetscErrorCode MatGetFactor_SeqAIJKokkos_Kokkos(1824,79281
+PETSC_EXTERN PetscErrorCode MatGetFactor_seqaijkokkos_kokkos_device(1850,80513
+PETSC_EXTERN PetscErrorCode MatSolverTypeRegister_KOKKOS(1872,81476
+PETSC_INTERN PetscErrorCode PrintCsrMatrix(1882,82022
 
 src/mat/impls/aij/seq/kokkos/makefile,122
 makefile:^?makefile^A,1
@@ -37026,16 +37026,6 @@
 PETSC_EXTERN void matcreateseqaij_(12,401
 PETSC_EXTERN void matseqaijsetpreallocation_(18,653
 
-src/mat/impls/aij/seq/essl/makefile,103
-makefile:^?makefile^A,1
-SOURCEC 6,126
-SOURCEF 7,144
-SOURCEH 8,155
-LIBBASE 9,166
-DIRS 10,189
-MANSEC 11,200
-LOCDIR 12,215
-
 src/mat/impls/aij/seq/essl/essl.c,735
 essl.c:^?essl.c^A,1
   int          n,14,397
@@ -37059,6 +37049,16 @@
 PETSC_EXTERN PetscErrorCode MatGetFactor_seqaij_essl(130,3748
 PETSC_EXTERN PetscErrorCode MatSolverTypeRegister_Essl(160,4837
 
+src/mat/impls/aij/seq/essl/makefile,103
+makefile:^?makefile^A,1
+SOURCEC 6,126
+SOURCEF 7,144
+SOURCEH 8,155
+LIBBASE 9,166
+DIRS 10,189
+MANSEC 11,200
+LOCDIR 12,215
+
 src/mat/impls/aij/seq/crl/makefile,96
 makefile:^?makefile^A,1
 SOURCEC 3,40
@@ -37130,33 +37130,33 @@
 static PetscErrorCode MatFactorGetSolverType_seqaij_cholmod(53,1523
 PETSC_INTERN PetscErrorCode MatGetFactor_seqaij_cholmod(61,1751
 
+src/mat/impls/aij/seq/bas/spbas.h,634
+spbas.h:^?spbas.h^A,1
+#define SPBAS_COLUMN_NUMBERS 38,1585
+#define SPBAS_DIAGONAL_OFFSETS 39,1620
+#define SPBAS_OFFSET_ARRAY 40,1655
+#define NEGATIVE_DIAGONAL 42,1691
+  PetscInt nrows;45,1741
+  PetscInt ncols;46,1759
+  PetscInt nnz;47,1777
+  PetscInt col_idx_type;48,1793
+  PetscInt     *row_nnz;row_nnz50,1819
+  PetscInt     *icol0;icol051,1844
+  PetscInt    **icols;icols52,1867
+  PetscScalar **values;values53,1890
+  PetscBool    block_data;55,1915
+  PetscInt     n_alloc_icol;56,1942
+  PetscInt     n_alloc_val;57,1971
+  PetscInt    *alloc_icol;alloc_icol58,1999
+  PetscScalar *alloc_val;alloc_val59,2026
+} spbas_matrix;60,2052
+
 src/mat/impls/aij/seq/bas/spbas_cholesky.h,147
 spbas_cholesky.h:^?spbas_cholesky.h^A,1
 PetscBool spbas_cholesky_row_alloc(8,246
 PetscErrorCode spbas_cholesky_garbage_collect(28,992
 PetscErrorCode spbas_incomplete_cholesky(239,9427
 
-src/mat/impls/aij/seq/bas/spbas.h,634
-spbas.h:^?spbas.h^A,1
-#define SPBAS_COLUMN_NUMBERS 38,1584
-#define SPBAS_DIAGONAL_OFFSETS 39,1619
-#define SPBAS_OFFSET_ARRAY 40,1654
-#define NEGATIVE_DIAGONAL 42,1690
-  PetscInt nrows;45,1740
-  PetscInt ncols;46,1758
-  PetscInt nnz;47,1776
-  PetscInt col_idx_type;48,1792
-  PetscInt     *row_nnz;row_nnz50,1818
-  PetscInt     *icol0;icol051,1843
-  PetscInt    **icols;icols52,1866
-  PetscScalar **values;values53,1889
-  PetscBool    block_data;55,1914
-  PetscInt     n_alloc_icol;56,1941
-  PetscInt     n_alloc_val;57,1970
-  PetscInt    *alloc_icol;alloc_icol58,1998
-  PetscScalar *alloc_val;alloc_val59,2025
-} spbas_matrix;60,2051
-
 src/mat/impls/aij/seq/bas/spbas.c,760
 spbas.c:^?spbas.c^A,1
 size_t spbas_memory_requirement(29,950
@@ -37350,6 +37350,28 @@
 PetscErrorCode MatCreateSeqAIJMKL(1119,48820
 PETSC_EXTERN PetscErrorCode MatCreate_SeqAIJMKL(1129,49167
 
+src/mat/impls/aij/mpi/mpiov.c,1175
+mpiov.c:^?mpiov.c^A,1
+static PetscErrorCode ISAdjustForBlockSize(29,1608
+PetscErrorCode MatIncreaseOverlap_MPIAIJ(66,2862
+PetscErrorCode MatIncreaseOverlap_MPIAIJ_Scalable(77,3319
+static PetscErrorCode MatIncreaseOverlap_MPIAIJ_Once_Scalable(88,3794
+static PetscErrorCode MatIncreaseOverlap_MPIAIJ_Receive_Scalable(231,10200
+static PetscErrorCode MatIncreaseOverlap_MPIAIJ_Send_Scalable(279,12044
+static PetscErrorCode MatIncreaseOverlap_MPIAIJ_Local_Scalable(401,17339
+static PetscErrorCode MatIncreaseOverlap_MPIAIJ_Once(491,20660
+static PetscErrorCode MatIncreaseOverlap_MPIAIJ_Local(851,32150
+static PetscErrorCode MatIncreaseOverlap_MPIAIJ_Receive(958,35376
+PetscErrorCode MatCreateSubMatrix_MPIAIJ_All(1082,39951
+PetscErrorCode MatCreateSubMatrices_MPIAIJ_SingleIS_Local(1228,46274
+PetscErrorCode MatCreateSubMatrices_MPIAIJ_SingleIS(1946,71873
+PetscErrorCode MatCreateSubMatrices_MPIAIJ(1964,72595
+PetscErrorCode MatCreateSubMatrices_MPIAIJ_Local(2062,76505
+PetscErrorCode MatSetSeqMats_MPIAIJ(2869,104233
+PetscErrorCode MatGetSeqMats_MPIAIJ(3011,110668
+PetscErrorCode MatCreateSubMatricesMPI_MPIXAIJ(3029,111159
+PetscErrorCode MatCreateSubMatricesMPI_MPIAIJ(3216,121274
+
 src/mat/impls/aij/mpi/mpiaij.c,7899
 mpiaij.c:^?mpiaij.c^A,1
 PetscErrorCode MatGetRowIJ_MPIAIJ(9,256
@@ -37468,68 +37490,46 @@
 static PetscErrorCode ExpandJmap_Internal(6332,252852
 PetscErrorCode MatSetPreallocationCOO_MPIAIJ(6346,253335
 static PetscErrorCode MatSetValuesCOO_MPIAIJ(6665,267937
-PETSC_EXTERN PetscErrorCode MatCreate_MPIAIJ(6733,271206
-PetscErrorCode MatCreateMPIAIJWithSplitArrays(6859,278328
-  Mat       *mp;mp6889,279770
-  PetscBool *mptmp;mptmp6890,279818
-  PetscInt   cp;6891,279884
-  PetscInt    *startsj_s,startsj_s6894,280000
-  PetscInt    *startsj_s, *startsj_r;startsj_r6894,280000
-  PetscScalar *bufa;bufa6895,280038
-  Mat          P_oth;6896,280059
-  Mat Bloc;6899,280131
-  PetscBool reusesym;6904,280375
-  PetscScalar *coo_v,coo_v6907,280439
-  PetscScalar *coo_v, *coo_w;coo_w6907,280439
-  PetscInt   **own;own6908,280568
-  PetscInt   **off;off6909,280669
-  PetscBool    hasoffproc;6910,280771
-  PetscSF      sf;6911,280869
-  PetscMemType mtype;6912,280959
-  PetscBool abmerge;6915,281004
-  PetscBool P_oth_bind;6916,281025
-} MatMatMPIAIJBACKEND;6917,281049
-PetscErrorCode MatDestroy_MatMatMPIAIJBACKEND(6919,281073
-static PetscErrorCode MatSeqAIJCopySubArray(6945,282067
-static PetscErrorCode MatProductNumeric_MPIAIJBACKEND(6971,282782
-#define MAX_NUMBER_INTERMEDIATE 7017,284847
-PetscErrorCode MatProductSymbolic_MPIAIJBACKEND(7018,284881
-PetscErrorCode MatProductSetFromOptions_MPIAIJBACKEND(7511,308031
-static inline PetscErrorCode MatCollapseRow(7588,311184
-static inline PetscErrorCode MatCollapseRows(7613,311952
-static PetscErrorCode MatFilter_AIJ(7634,312722
-PETSC_INTERN PetscErrorCode MatCreateGraph_Simple_AIJ(7738,316740
-#undef PetscCall7988,327467
-#define PetscCall(7989,327484
-#undef SETERRQ7998,327782
-#define SETERRQ(7999,327797
-  #define matsetvaluesmpiaij_ 8006,328021
-  #define matsetvaluesmpiaij_ 8008,328116
-PETSC_EXTERN void matsetvaluesmpiaij_(8011,328178
-#undef PetscCall8129,333509
-#undef SETERRQ8130,333526
-
-src/mat/impls/aij/mpi/mpiov.c,1175
-mpiov.c:^?mpiov.c^A,1
-static PetscErrorCode ISAdjustForBlockSize(29,1608
-PetscErrorCode MatIncreaseOverlap_MPIAIJ(66,2862
-PetscErrorCode MatIncreaseOverlap_MPIAIJ_Scalable(77,3319
-static PetscErrorCode MatIncreaseOverlap_MPIAIJ_Once_Scalable(88,3794
-static PetscErrorCode MatIncreaseOverlap_MPIAIJ_Receive_Scalable(231,10199
-static PetscErrorCode MatIncreaseOverlap_MPIAIJ_Send_Scalable(279,12043
-static PetscErrorCode MatIncreaseOverlap_MPIAIJ_Local_Scalable(401,17338
-static PetscErrorCode MatIncreaseOverlap_MPIAIJ_Once(491,20659
-static PetscErrorCode MatIncreaseOverlap_MPIAIJ_Local(851,32149
-static PetscErrorCode MatIncreaseOverlap_MPIAIJ_Receive(958,35375
-PetscErrorCode MatCreateSubMatrix_MPIAIJ_All(1082,39950
-PetscErrorCode MatCreateSubMatrices_MPIAIJ_SingleIS_Local(1228,46273
-PetscErrorCode MatCreateSubMatrices_MPIAIJ_SingleIS(1946,71872
-PetscErrorCode MatCreateSubMatrices_MPIAIJ(1964,72594
-PetscErrorCode MatCreateSubMatrices_MPIAIJ_Local(2062,76504
-PetscErrorCode MatSetSeqMats_MPIAIJ(2869,104232
-PetscErrorCode MatGetSeqMats_MPIAIJ(3011,110667
-PetscErrorCode MatCreateSubMatricesMPI_MPIXAIJ(3029,111158
-PetscErrorCode MatCreateSubMatricesMPI_MPIAIJ(3216,121273
+PETSC_EXTERN PetscErrorCode MatCreate_MPIAIJ(6733,271205
+PetscErrorCode MatCreateMPIAIJWithSplitArrays(6859,278327
+  Mat       *mp;mp6889,279769
+  PetscBool *mptmp;mptmp6890,279817
+  PetscInt   cp;6891,279883
+  PetscInt    *startsj_s,startsj_s6894,279999
+  PetscInt    *startsj_s, *startsj_r;startsj_r6894,279999
+  PetscScalar *bufa;bufa6895,280037
+  Mat          P_oth;6896,280058
+  Mat Bloc;6899,280130
+  PetscBool reusesym;6904,280374
+  PetscScalar *coo_v,coo_v6907,280438
+  PetscScalar *coo_v, *coo_w;coo_w6907,280438
+  PetscInt   **own;own6908,280567
+  PetscInt   **off;off6909,280668
+  PetscBool    hasoffproc;6910,280770
+  PetscSF      sf;6911,280868
+  PetscMemType mtype;6912,280958
+  PetscBool abmerge;6915,281003
+  PetscBool P_oth_bind;6916,281024
+} MatMatMPIAIJBACKEND;6917,281048
+PetscErrorCode MatDestroy_MatMatMPIAIJBACKEND(6919,281072
+static PetscErrorCode MatSeqAIJCopySubArray(6945,282066
+static PetscErrorCode MatProductNumeric_MPIAIJBACKEND(6971,282781
+#define MAX_NUMBER_INTERMEDIATE 7017,284846
+PetscErrorCode MatProductSymbolic_MPIAIJBACKEND(7018,284880
+PetscErrorCode MatProductSetFromOptions_MPIAIJBACKEND(7511,308032
+static inline PetscErrorCode MatCollapseRow(7588,311185
+static inline PetscErrorCode MatCollapseRows(7613,311953
+static PetscErrorCode MatFilter_AIJ(7634,312723
+PETSC_INTERN PetscErrorCode MatCreateGraph_Simple_AIJ(7738,316741
+#undef PetscCall7988,327468
+#define PetscCall(7989,327485
+#undef SETERRQ7998,327783
+#define SETERRQ(7999,327798
+  #define matsetvaluesmpiaij_ 8006,328022
+  #define matsetvaluesmpiaij_ 8008,328117
+PETSC_EXTERN void matsetvaluesmpiaij_(8011,328179
+#undef PetscCall8129,333510
+#undef SETERRQ8130,333527
 
 src/mat/impls/aij/mpi/mmaij.c,342
 mmaij.c:^?mmaij.c^A,1
@@ -38064,31 +38064,31 @@
   PetscErrorCode (*ConvertToTriples)ConvertToTriples182,6841
   PetscBool    use_petsc_omp_support;185,6966
   PetscOmpCtrl omp_ctrl;186,7004
-  MPI_Comm     petsc_comm,187,7156
-  MPI_Comm     petsc_comm, omp_comm;187,7156
-  PetscInt64  *recvcount;recvcount188,7233
-  PetscMPIInt  tag,189,7310
-  PetscMPIInt  tag, omp_comm_size;189,7310
-  PetscBool    is_omp_master;190,7345
-  MPI_Request *reqs;reqs191,7417
-static PetscErrorCode PetscMUMPSIntCSRCast(197,7628
-static PetscErrorCode MatMumpsResetSchur_Private(228,8830
-static PetscErrorCode MatMumpsSolveSchur_Private(241,9240
-static PetscErrorCode MatMumpsHandleSchur_Private(302,11697
-PetscErrorCode MatConvertToTriples_seqaij_seqaij(356,14145
-PetscErrorCode MatConvertToTriples_seqsell_seqaij(389,15103
-PetscErrorCode MatConvertToTriples_seqbaij_seqaij(411,15872
-PetscErrorCode MatConvertToTriples_seqsbaij_seqsbaij(448,16929
-PetscErrorCode MatConvertToTriples_seqaij_seqsbaij(522,19267
-PetscErrorCode MatConvertToTriples_mpisbaij_mpisbaij(631,22585
-PetscErrorCode MatConvertToTriples_mpiaij_mpiaij(738,25983
-PetscErrorCode MatConvertToTriples_mpibaij_mpiaij(809,28024
-PetscErrorCode MatConvertToTriples_mpiaij_mpisbaij(879,30168
-PetscErrorCode MatDestroy_MUMPS(971,33010
-static PetscErrorCode MatMumpsSetUpDistRHSInfo(1029,36129
-PetscErrorCode MatSolve_MUMPS(1126,40597
-PetscErrorCode MatSolveTranspose_MUMPS(1226,45814
-PetscErrorCode MatMatSolve_MUMPS(1237,46061
+  MPI_Comm     petsc_comm,187,7157
+  MPI_Comm     petsc_comm, omp_comm;187,7157
+  PetscInt64  *recvcount;recvcount188,7234
+  PetscMPIInt  tag,189,7311
+  PetscMPIInt  tag, omp_comm_size;189,7311
+  PetscBool    is_omp_master;190,7346
+  MPI_Request *reqs;reqs191,7418
+static PetscErrorCode PetscMUMPSIntCSRCast(197,7629
+static PetscErrorCode MatMumpsResetSchur_Private(228,8831
+static PetscErrorCode MatMumpsSolveSchur_Private(241,9241
+static PetscErrorCode MatMumpsHandleSchur_Private(302,11698
+PetscErrorCode MatConvertToTriples_seqaij_seqaij(356,14146
+PetscErrorCode MatConvertToTriples_seqsell_seqaij(389,15104
+PetscErrorCode MatConvertToTriples_seqbaij_seqaij(411,15873
+PetscErrorCode MatConvertToTriples_seqsbaij_seqsbaij(448,16930
+PetscErrorCode MatConvertToTriples_seqaij_seqsbaij(522,19268
+PetscErrorCode MatConvertToTriples_mpisbaij_mpisbaij(631,22586
+PetscErrorCode MatConvertToTriples_mpiaij_mpiaij(738,25984
+PetscErrorCode MatConvertToTriples_mpibaij_mpiaij(809,28025
+PetscErrorCode MatConvertToTriples_mpiaij_mpisbaij(879,30169
+PetscErrorCode MatDestroy_MUMPS(971,33011
+static PetscErrorCode MatMumpsSetUpDistRHSInfo(1029,36130
+PetscErrorCode MatSolve_MUMPS(1126,40598
+PetscErrorCode MatSolveTranspose_MUMPS(1226,45815
+PetscErrorCode MatMatSolve_MUMPS(1237,46062
 PetscErrorCode MatMatSolveTranspose_MUMPS(1482,57317
 PetscErrorCode MatMatTransposeSolve_MUMPS(1494,57630
 PetscErrorCode MatGetInertia_SBAIJMUMPS(1520,58368
@@ -38298,15 +38298,15 @@
 PetscErrorCode MatFactorNumeric_MKL_CPARDISO(450,14119
 PetscErrorCode MatSetFromOptions_MKL_CPARDISO(469,15411
 PetscErrorCode PetscInitialize_MKL_CPARDISO(553,20479
-PetscErrorCode MatLUFactorSymbolic_AIJMKL_CPARDISO(624,23076
-PetscErrorCode MatCholeskyFactorSymbolic_AIJMKL_CPARDISO(655,24783
-PetscErrorCode MatView_MKL_CPARDISO(689,26786
-PetscErrorCode MatGetInfo_MKL_CPARDISO(718,28355
-PetscErrorCode MatMkl_CPardisoSetCntl_MKL_CPARDISO(735,28870
-PetscErrorCode MatMkl_CPardisoSetCntl(776,30186
-static PetscErrorCode MatFactorGetSolverType_mkl_cpardiso(827,32763
-static PetscErrorCode MatGetFactor_mpiaij_mkl_cpardiso(835,32975
-PETSC_EXTERN PetscErrorCode MatSolverTypeRegister_MKL_CPardiso(883,35070
+PetscErrorCode MatLUFactorSymbolic_AIJMKL_CPARDISO(624,23077
+PetscErrorCode MatCholeskyFactorSymbolic_AIJMKL_CPARDISO(655,24784
+PetscErrorCode MatView_MKL_CPARDISO(689,26787
+PetscErrorCode MatGetInfo_MKL_CPARDISO(718,28356
+PetscErrorCode MatMkl_CPardisoSetCntl_MKL_CPARDISO(735,28871
+PetscErrorCode MatMkl_CPardisoSetCntl(776,30187
+static PetscErrorCode MatFactorGetSolverType_mkl_cpardiso(827,32764
+static PetscErrorCode MatGetFactor_mpiaij_mkl_cpardiso(835,32976
+PETSC_EXTERN PetscErrorCode MatSolverTypeRegister_MKL_CPardiso(883,35071
 
 src/mat/impls/aij/mpi/mkl_cpardiso/makefile,115
 makefile:^?makefile^A,1
@@ -38375,8 +38375,8 @@
 PETSC_EXTERN PetscErrorCode MatCreate_MPIAIJKokkos(1397,70716
 PetscErrorCode MatCreateAIJKokkos(1452,73194
 PetscErrorCode MatKokkosGetDeviceMatWrite(1471,73897
-PETSC_INTERN PetscErrorCode MatSeqAIJKokkosGetOffloadMask(1581,79412
-PETSC_INTERN PetscErrorCode MatAIJKokkosPrintOffloadMask(1593,79852
+PETSC_INTERN PetscErrorCode MatSeqAIJKokkosGetOffloadMask(1581,79413
+PETSC_INTERN PetscErrorCode MatAIJKokkosPrintOffloadMask(1593,79853
 
 src/mat/impls/aij/mpi/kokkos/makefile,122
 makefile:^?makefile^A,1
@@ -39430,9 +39430,9 @@
 #define MIS_REMOVED 8,225
 #define MIS_IS_SELECTED(9,255
 PetscErrorCode MatCoarsenApply_MIS_private(24,971
-static PetscErrorCode MatCoarsenApply_MIS(251,10576
-PetscErrorCode MatCoarsenView_MIS(272,11205
-PETSC_EXTERN PetscErrorCode MatCoarsenCreate_MIS(316,12739
+static PetscErrorCode MatCoarsenApply_MIS(251,10577
+PetscErrorCode MatCoarsenView_MIS(272,11206
+PETSC_EXTERN PetscErrorCode MatCoarsenCreate_MIS(316,12740
 
 src/mat/coarsen/impls/mis/makefile,86
 makefile:^?makefile^A,1
@@ -39446,39 +39446,39 @@
 src/mat/coarsen/impls/hem/hem.c,1370
 hem.c:^?hem.c^A,1
 PetscErrorCode PetscCDCreate(10,193
-PetscErrorCode PetscCDDestroy(31,689
-PetscErrorCode PetscCDSetChuckSize(52,1212
-PetscErrorCode PetscCDGetNewNode(61,1386
-PetscErrorCode PetscCDIntNdSetID(97,2638
-PetscErrorCode PetscCDIntNdGetID(106,2808
-PetscErrorCode PetscCDGetHeadPos(115,2988
-PetscErrorCode PetscCDGetNextPos(125,3313
-PetscErrorCode PetscCDAppendID(135,3589
-PetscErrorCode PetscCDAppendNode(159,4292
-PetscErrorCode PetscCDRemoveNextNode(182,4958
-PetscErrorCode PetscCDPrint(198,5600
-PetscErrorCode PetscCDAppendRemove(220,6199
-PetscErrorCode PetscCDRemoveAll(245,7017
-PetscErrorCode PetscCDSizeAt(263,7497
-PetscErrorCode PetscCDEmptyAt(281,7909
-PetscErrorCode PetscCDGetMIS(291,8260
-PetscErrorCode PetscCDGetMat(313,8785
-PetscErrorCode PetscCDSetMat(323,8979
-PetscErrorCode PetscCDGetASMBlocks(335,9263
-typedef struct edge_tag 390,11201
-  PetscReal weight;391,11227
-  PetscInt  lid0,392,11247
-  PetscInt  lid0, gid1,392,11247
-  PetscInt  lid0, gid1, cpid1;392,11247
-} Edge;393,11278
-static int gamg_hem_compare(395,11287
-static PetscErrorCode MatCoarsenApply_HEM_private(412,11798
-#define REQ_BF_SIZE 720,24922
-#define CHUNCK_SIZE 737,25568
-#define BF_SZ 777,27347
-static PetscErrorCode MatCoarsenApply_HEM(1056,39468
-static PetscErrorCode MatCoarsenView_HEM(1075,40005
-PETSC_EXTERN PetscErrorCode MatCoarsenCreate_HEM(1100,40819
+PetscErrorCode PetscCDDestroy(31,690
+PetscErrorCode PetscCDSetChuckSize(52,1213
+PetscErrorCode PetscCDGetNewNode(61,1387
+PetscErrorCode PetscCDIntNdSetID(97,2639
+PetscErrorCode PetscCDIntNdGetID(106,2809
+PetscErrorCode PetscCDGetHeadPos(115,2989
+PetscErrorCode PetscCDGetNextPos(125,3314
+PetscErrorCode PetscCDAppendID(135,3590
+PetscErrorCode PetscCDAppendNode(159,4293
+PetscErrorCode PetscCDRemoveNextNode(182,4959
+PetscErrorCode PetscCDPrint(198,5601
+PetscErrorCode PetscCDAppendRemove(220,6200
+PetscErrorCode PetscCDRemoveAll(245,7018
+PetscErrorCode PetscCDSizeAt(263,7498
+PetscErrorCode PetscCDEmptyAt(281,7910
+PetscErrorCode PetscCDGetMIS(291,8261
+PetscErrorCode PetscCDGetMat(313,8786
+PetscErrorCode PetscCDSetMat(323,8980
+PetscErrorCode PetscCDGetASMBlocks(335,9264
+typedef struct edge_tag 390,11202
+  PetscReal weight;391,11228
+  PetscInt  lid0,392,11248
+  PetscInt  lid0, gid1,392,11248
+  PetscInt  lid0, gid1, cpid1;392,11248
+} Edge;393,11279
+static int gamg_hem_compare(395,11288
+static PetscErrorCode MatCoarsenApply_HEM_private(412,11799
+#define REQ_BF_SIZE 720,24923
+#define CHUNCK_SIZE 737,25569
+#define BF_SZ 777,27349
+static PetscErrorCode MatCoarsenApply_HEM(1056,39470
+static PetscErrorCode MatCoarsenView_HEM(1075,40007
+PETSC_EXTERN PetscErrorCode MatCoarsenCreate_HEM(1100,40821
 
 src/mat/coarsen/impls/hem/makefile,86
 makefile:^?makefile^A,1
@@ -39537,6 +39537,13 @@
 static char help[help1,0
 int main(20,796
 
+src/ksp/pc/tests/ex6.c,125
+ex6.c:^?ex6.c^A,1
+static char help[help2,1
+PetscErrorCode FormElementStiffness(8,274
+PetscErrorCode FormElementRhs(28,696
+int main(37,851
+
 src/ksp/pc/tests/makefile,26
 makefile:^?makefile^A,1
 LOCDIR 3,34
@@ -39556,13 +39563,6 @@
 static char help[help2,1
 int main(7,136
 
-src/ksp/pc/tests/ex6.c,125
-ex6.c:^?ex6.c^A,1
-static char help[help2,1
-PetscErrorCode FormElementStiffness(8,274
-PetscErrorCode FormElementRhs(28,696
-int main(37,851
-
 src/ksp/pc/tests/ex5.c,463
 ex5.c:^?ex5.c^A,1
 static char help[help2,1
@@ -39756,19 +39756,19 @@
 static PetscErrorCode PCMPISetMat(133,5282
 static PetscErrorCode PCMPIUpdateMatValues(248,10329
 static PetscErrorCode PCMPISolve(299,12794
-static PetscErrorCode PCMPIDestroy(348,14535
-PetscErrorCode PCMPIServerBegin(385,16008
-PetscErrorCode PCMPIServerEnd(454,17940
-static PetscErrorCode PCSetUp_Seq(499,20242
-static PetscErrorCode PCApply_Seq(519,20955
-static PetscErrorCode PCView_Seq(536,21397
-static PetscErrorCode PCDestroy_Seq(551,22250
-static PetscErrorCode PCSetUp_MPI(565,22597
-static PetscErrorCode PCApply_MPI(615,24337
-PetscErrorCode PCDestroy_MPI(625,24589
-PetscErrorCode PCView_MPI(639,24972
-PetscErrorCode PCSetFromOptions_MPI(658,25960
-PETSC_EXTERN PetscErrorCode PCCreate_MPI(700,28698
+static PetscErrorCode PCMPIDestroy(348,14536
+PetscErrorCode PCMPIServerBegin(385,16009
+PetscErrorCode PCMPIServerEnd(454,17941
+static PetscErrorCode PCSetUp_Seq(499,20243
+static PetscErrorCode PCApply_Seq(519,20956
+static PetscErrorCode PCView_Seq(536,21398
+static PetscErrorCode PCDestroy_Seq(551,22251
+static PetscErrorCode PCSetUp_MPI(565,22598
+static PetscErrorCode PCApply_MPI(615,24338
+PetscErrorCode PCDestroy_MPI(625,24590
+PetscErrorCode PCView_MPI(639,24973
+PetscErrorCode PCSetFromOptions_MPI(658,25961
+PETSC_EXTERN PetscErrorCode PCCreate_MPI(700,28699
 
 src/ksp/pc/impls/mpi/makefile,114
 makefile:^?makefile^A,1
@@ -39938,20 +39938,20 @@
 SUBMANSEC 9,130
 LOCDIR 10,145
 
-src/ksp/pc/impls/vpbjacobi/vpbjacobi.h,112
-vpbjacobi.h:^?vpbjacobi.h^A,1
-#define VPBJACOBI_H2,20
-  MatScalar *diag;diag10,169
-  void      *spptr;spptr11,203
-} PC_VPBJacobi;12,248
-
 src/ksp/pc/impls/vpbjacobi/vpbjacobi.c,272
 vpbjacobi.c:^?vpbjacobi.c^A,1
 static PetscErrorCode PCApply_VPBJacobi(3,54
 PETSC_INTERN PetscErrorCode PCSetUp_VPBJacobi_Host(105,4870
 static PetscErrorCode PCSetUp_VPBJacobi(129,5791
 PETSC_INTERN PetscErrorCode PCDestroy_VPBJacobi(157,6607
-PETSC_EXTERN PetscErrorCode PCCreate_VPBJacobi(197,8041
+PETSC_EXTERN PetscErrorCode PCCreate_VPBJacobi(197,8042
+
+src/ksp/pc/impls/vpbjacobi/vpbjacobi.h,112
+vpbjacobi.h:^?vpbjacobi.h^A,1
+#define VPBJACOBI_H2,20
+  MatScalar *diag;diag10,169
+  void      *spptr;spptr11,203
+} PC_VPBJacobi;12,248
 
 src/ksp/pc/impls/vpbjacobi/makefile,114
 makefile:^?makefile^A,1
@@ -40439,6 +40439,49 @@
 PetscErrorCode PCTFS_set_bit_mask(107,2741
 PetscInt PCTFS_len_buf(133,3373
 
+src/ksp/pc/impls/telescope/telescope.c,2334
+telescope.c:^?telescope.c^A,1
+static PetscBool  cited 8,245
+static const char citation[citation9,289
+PetscErrorCode PCTelescopeTestValidSubcomm(51,2324
+DM private_PCTelescopeGetSubDM(105,4441
+PetscErrorCode PCTelescopeSetUp_default(130,4958
+PetscErrorCode PCTelescopeMatCreate_default(190,6786
+static PetscErrorCode PCTelescopeSubNullSpaceCreate_Telescope(228,8090
+static PetscErrorCode PCTelescopeMatNullSpaceCreate_default(276,10107
+static PetscErrorCode PCView_Telescope(311,11390
+static PetscErrorCode PCSetUp_Telescope(415,16261
+static PetscErrorCode PCApply_Telescope(565,22677
+static PetscErrorCode PCApplyRichardson_Telescope(616,24412
+static PetscErrorCode PCReset_Telescope(665,26301
+static PetscErrorCode PCDestroy_Telescope(681,26800
+static PetscErrorCode PCSetFromOptions_Telescope(706,28298
+static PetscErrorCode PCTelescopeGetKSP_Telescope(731,29975
+static PetscErrorCode PCTelescopeGetSubcommType_Telescope(739,30168
+static PetscErrorCode PCTelescopeSetSubcommType_Telescope(747,30414
+static PetscErrorCode PCTelescopeGetReductionFactor_Telescope(757,30822
+static PetscErrorCode PCTelescopeSetReductionFactor_Telescope(765,31041
+static PetscErrorCode PCTelescopeGetIgnoreDM_Telescope(778,31666
+static PetscErrorCode PCTelescopeSetIgnoreDM_Telescope(786,31870
+static PetscErrorCode PCTelescopeGetUseCoarseDM_Telescope(794,32065
+static PetscErrorCode PCTelescopeSetUseCoarseDM_Telescope(802,32276
+static PetscErrorCode PCTelescopeGetIgnoreKSPComputeOperators_Telescope(810,32478
+static PetscErrorCode PCTelescopeSetIgnoreKSPComputeOperators_Telescope(818,32716
+static PetscErrorCode PCTelescopeGetDM_Telescope(826,32945
+PetscErrorCode PCTelescopeGetKSP(849,33419
+PetscErrorCode PCTelescopeGetReductionFactor(871,33918
+PetscErrorCode PCTelescopeSetReductionFactor(893,34447
+PetscErrorCode PCTelescopeGetIgnoreDM(915,34935
+PetscErrorCode PCTelescopeSetIgnoreDM(937,35408
+PetscErrorCode PCTelescopeGetUseCoarseDM(959,35940
+PetscErrorCode PCTelescopeSetUseCoarseDM(1079,41342
+PetscErrorCode PCTelescopeGetIgnoreKSPComputeOperators(1101,41905
+PetscErrorCode PCTelescopeSetIgnoreKSPComputeOperators(1123,42563
+PetscErrorCode PCTelescopeGetDM(1145,43138
+PetscErrorCode PCTelescopeSetSubcommType(1165,43623
+PetscErrorCode PCTelescopeGetSubcommType(1187,44180
+PETSC_EXTERN PetscErrorCode PCCreate_Telescope(1333,54413
+
 src/ksp/pc/impls/telescope/telescope_dmda.c,1227
 telescope_dmda.c:^?telescope_dmda.c^A,1
 static PetscBool  cited 11,246
@@ -40531,49 +40574,6 @@
 static inline PetscBool PetscSubcomm_isActiveRank(43,1208
 static inline PetscBool PCTelescope_isActiveRank(49,1358
 
-src/ksp/pc/impls/telescope/telescope.c,2334
-telescope.c:^?telescope.c^A,1
-static PetscBool  cited 8,245
-static const char citation[citation9,289
-PetscErrorCode PCTelescopeTestValidSubcomm(51,2324
-DM private_PCTelescopeGetSubDM(105,4441
-PetscErrorCode PCTelescopeSetUp_default(130,4958
-PetscErrorCode PCTelescopeMatCreate_default(190,6786
-static PetscErrorCode PCTelescopeSubNullSpaceCreate_Telescope(228,8090
-static PetscErrorCode PCTelescopeMatNullSpaceCreate_default(276,10107
-static PetscErrorCode PCView_Telescope(311,11390
-static PetscErrorCode PCSetUp_Telescope(415,16261
-static PetscErrorCode PCApply_Telescope(565,22677
-static PetscErrorCode PCApplyRichardson_Telescope(616,24412
-static PetscErrorCode PCReset_Telescope(665,26301
-static PetscErrorCode PCDestroy_Telescope(681,26800
-static PetscErrorCode PCSetFromOptions_Telescope(706,28298
-static PetscErrorCode PCTelescopeGetKSP_Telescope(731,29975
-static PetscErrorCode PCTelescopeGetSubcommType_Telescope(739,30168
-static PetscErrorCode PCTelescopeSetSubcommType_Telescope(747,30414
-static PetscErrorCode PCTelescopeGetReductionFactor_Telescope(757,30822
-static PetscErrorCode PCTelescopeSetReductionFactor_Telescope(765,31041
-static PetscErrorCode PCTelescopeGetIgnoreDM_Telescope(778,31666
-static PetscErrorCode PCTelescopeSetIgnoreDM_Telescope(786,31870
-static PetscErrorCode PCTelescopeGetUseCoarseDM_Telescope(794,32065
-static PetscErrorCode PCTelescopeSetUseCoarseDM_Telescope(802,32276
-static PetscErrorCode PCTelescopeGetIgnoreKSPComputeOperators_Telescope(810,32478
-static PetscErrorCode PCTelescopeSetIgnoreKSPComputeOperators_Telescope(818,32716
-static PetscErrorCode PCTelescopeGetDM_Telescope(826,32945
-PetscErrorCode PCTelescopeGetKSP(849,33419
-PetscErrorCode PCTelescopeGetReductionFactor(871,33918
-PetscErrorCode PCTelescopeSetReductionFactor(893,34447
-PetscErrorCode PCTelescopeGetIgnoreDM(915,34935
-PetscErrorCode PCTelescopeSetIgnoreDM(937,35408
-PetscErrorCode PCTelescopeGetUseCoarseDM(959,35940
-PetscErrorCode PCTelescopeSetUseCoarseDM(1079,41342
-PetscErrorCode PCTelescopeGetIgnoreKSPComputeOperators(1101,41905
-PetscErrorCode PCTelescopeSetIgnoreKSPComputeOperators(1123,42563
-PetscErrorCode PCTelescopeGetDM(1145,43138
-PetscErrorCode PCTelescopeSetSubcommType(1165,43623
-PetscErrorCode PCTelescopeGetSubcommType(1187,44180
-PETSC_EXTERN PetscErrorCode PCCreate_Telescope(1333,54413
-
 src/ksp/pc/impls/telescope/makefile,116
 makefile:^?makefile^A,1
 SOURCEC 3,37
@@ -40721,7 +40721,7 @@
 PetscErrorCode PCSORSetSymmetric(315,11516
 PetscErrorCode PCSORSetOmega(344,12340
 PetscErrorCode PCSORSetIterations(375,13296
-PETSC_EXTERN PetscErrorCode PCCreate_SOR(426,15796
+PETSC_EXTERN PetscErrorCode PCCreate_SOR(426,15797
 
 src/ksp/pc/impls/sor/makefile,114
 makefile:^?makefile^A,1
@@ -40985,7 +40985,7 @@
 static PetscErrorCode PCDestroy_Redistribute(285,11501
 static PetscErrorCode PCSetFromOptions_Redistribute(302,11988
 PetscErrorCode PCRedistributeGetKSP(326,12498
-PETSC_EXTERN PetscErrorCode PCCreate_Redistribute(359,13879
+PETSC_EXTERN PetscErrorCode PCCreate_Redistribute(360,14000
 
 src/ksp/pc/impls/redistribute/makefile,114
 makefile:^?makefile^A,1
@@ -41045,7 +41045,7 @@
 static PetscErrorCode PCSetUp_PBJacobi(259,9117
 static PetscErrorCode PCDestroy_PBJacobi(304,10191
 static PetscErrorCode PCView_PBJacobi(314,10402
-PETSC_EXTERN PetscErrorCode PCCreate_PBJacobi(350,11839
+PETSC_EXTERN PetscErrorCode PCCreate_PBJacobi(350,11840
 
 src/ksp/pc/impls/pbjacobi/makefile,114
 makefile:^?makefile^A,1
@@ -41286,7 +41286,7 @@
 PetscErrorCode PCSetUp_ML(503,18760
 PetscErrorCode PCDestroy_ML(947,39012
 PetscErrorCode PCSetFromOptions_ML(960,39354
-PETSC_EXTERN PetscErrorCode PCCreate_ML(1108,49904
+PETSC_EXTERN PetscErrorCode PCCreate_ML(1108,49903
 
 src/ksp/pc/impls/ml/makefile,119
 makefile:^?makefile^A,1
@@ -41543,7 +41543,7 @@
 static PetscErrorCode PCKSPGetKSP_KSP(183,5131
 PetscErrorCode PCKSPGetKSP(211,5705
 static PetscErrorCode PCSetFromOptions_KSP(220,5941
-PETSC_EXTERN PetscErrorCode PCCreate_KSP(261,8412
+PETSC_EXTERN PetscErrorCode PCCreate_KSP(261,8411
 
 src/ksp/pc/impls/ksp/makefile,114
 makefile:^?makefile^A,1
@@ -41631,11 +41631,11 @@
 static PetscErrorCode PCISSetSubdomainScalingFactor_IS(90,2725
 PetscErrorCode PCISSetSubdomainScalingFactor(119,3383
 PetscErrorCode PCISSetUp(127,3641
-PetscErrorCode PCISDestroy(401,17215
-PetscErrorCode PCISCreate(447,19097
-PetscErrorCode PCISApplySchur(480,20248
-PetscErrorCode PCISScatterArrayNToVecB(513,21493
-PetscErrorCode PCISApplyInvSchur(560,23321
+PetscErrorCode PCISDestroy(401,17216
+PetscErrorCode PCISCreate(447,19098
+PetscErrorCode PCISApplySchur(480,20249
+PetscErrorCode PCISScatterArrayNToVecB(513,21494
+PetscErrorCode PCISApplyInvSchur(560,23322
 
 src/ksp/pc/impls/is/makefile,99
 makefile:^?makefile^A,1
@@ -42153,10 +42153,10 @@
 PetscErrorCode PCGASMDestroySubdomains(1523,66457
 #define PCGASMLocalSubdomainBounds2D(1548,67042
 PetscErrorCode PCGASMCreateSubdomains2D(1600,69867
-PetscErrorCode PCGASMGetSubdomains(1775,77910
-PetscErrorCode PCGASMGetSubmatrices(1820,79347
-PetscErrorCode PCGASMSetUseDMSubdomains(1860,80931
-PetscErrorCode PCGASMGetUseDMSubdomains(1892,81973
+PetscErrorCode PCGASMGetSubdomains(1775,77912
+PetscErrorCode PCGASMGetSubmatrices(1820,79349
+PetscErrorCode PCGASMSetUseDMSubdomains(1860,80933
+PetscErrorCode PCGASMGetUseDMSubdomains(1892,81975
 
 src/ksp/pc/impls/gasm/makefile,114
 makefile:^?makefile^A,1
@@ -42198,48 +42198,48 @@
 static PetscBool         PCGAMGPackageInitialized;25,655
 PetscErrorCode PCReset_GAMG(27,707
 static PetscErrorCode PCGAMGCreateLevel_GAMG(60,1746
-PetscErrorCode PCGAMGSquareGraph_GAMG(466,21955
-PetscErrorCode PCSetUp_GAMG(504,23583
-PetscErrorCode PCDestroy_GAMG(832,38128
-PetscErrorCode PCGAMGSetProcEqLim(883,40667
-static PetscErrorCode PCGAMGSetProcEqLim_GAMG(891,40891
-PetscErrorCode PCGAMGSetCoarseEqLim(921,41688
-static PetscErrorCode PCGAMGSetCoarseEqLim_GAMG(929,41916
-PetscErrorCode PCGAMGSetRepartition(958,42716
-static PetscErrorCode PCGAMGSetRepartition_GAMG(966,42946
-PetscErrorCode PCGAMGSetUseSAEstEig(999,44228
-static PetscErrorCode PCGAMGSetUseSAEstEig_GAMG(1007,44458
-PetscErrorCode PCGAMGSetEigenvalues(1034,45041
-static PetscErrorCode PCGAMGSetEigenvalues_GAMG(1042,45310
-PetscErrorCode PCGAMGSetReuseInterpolation(1075,46501
-static PetscErrorCode PCGAMGSetReuseInterpolation_GAMG(1083,46745
-PetscErrorCode PCGAMGASMSetUseAggs(1110,47518
-static PetscErrorCode PCGAMGASMSetUseAggs_GAMG(1118,47750
-PetscErrorCode PCGAMGSetUseParallelCoarseGridSolve(1144,48440
-static PetscErrorCode PCGAMGSetUseParallelCoarseGridSolve_GAMG(1152,48704
-PetscErrorCode PCGAMGSetCpuPinCoarseGrids(1178,49488
-static PetscErrorCode PCGAMGSetCpuPinCoarseGrids_GAMG(1186,49734
-PetscErrorCode PCGAMGSetCoarseGridLayoutType(1212,50557
-static PetscErrorCode PCGAMGSetCoarseGridLayoutType_GAMG(1220,50823
-PetscErrorCode PCGAMGSetNlevels(1249,51516
-static PetscErrorCode PCGAMGSetNlevels_GAMG(1257,51736
-PetscErrorCode PCGAMGSetThreshold(1292,53531
-static PetscErrorCode PCGAMGSetThreshold_GAMG(1301,53824
-PetscErrorCode PCGAMGSetRankReductionFactors(1329,54782
-static PetscErrorCode PCGAMGSetRankReductionFactors_GAMG(1338,55094
-PetscErrorCode PCGAMGSetThresholdScale(1369,56201
-static PetscErrorCode PCGAMGSetThresholdScale_GAMG(1377,56437
-PetscErrorCode PCGAMGSetType(1402,57061
-PetscErrorCode PCGAMGGetType(1425,57564
-static PetscErrorCode PCGAMGGetType_GAMG(1433,57791
-static PetscErrorCode PCGAMGSetType_GAMG(1443,58022
-static PetscErrorCode PCView_GAMG(1471,59067
-PetscErrorCode PCSetFromOptions_GAMG(1491,60404
-PETSC_EXTERN PetscErrorCode PCCreate_GAMG(1590,68050
-PetscErrorCode PCGAMGInitializePackage(1669,72084
-PetscErrorCode PCGAMGFinalizePackage(1726,75270
-PetscErrorCode PCGAMGRegister(1745,75736
-PetscErrorCode PCGAMGCreateGraph(1767,76264
+PetscErrorCode PCGAMGSquareGraph_GAMG(466,21956
+PetscErrorCode PCSetUp_GAMG(504,23584
+PetscErrorCode PCDestroy_GAMG(832,38129
+PetscErrorCode PCGAMGSetProcEqLim(883,40668
+static PetscErrorCode PCGAMGSetProcEqLim_GAMG(891,40892
+PetscErrorCode PCGAMGSetCoarseEqLim(921,41689
+static PetscErrorCode PCGAMGSetCoarseEqLim_GAMG(929,41917
+PetscErrorCode PCGAMGSetRepartition(958,42717
+static PetscErrorCode PCGAMGSetRepartition_GAMG(966,42947
+PetscErrorCode PCGAMGSetUseSAEstEig(999,44229
+static PetscErrorCode PCGAMGSetUseSAEstEig_GAMG(1007,44459
+PetscErrorCode PCGAMGSetEigenvalues(1034,45042
+static PetscErrorCode PCGAMGSetEigenvalues_GAMG(1042,45311
+PetscErrorCode PCGAMGSetReuseInterpolation(1075,46502
+static PetscErrorCode PCGAMGSetReuseInterpolation_GAMG(1083,46746
+PetscErrorCode PCGAMGASMSetUseAggs(1110,47519
+static PetscErrorCode PCGAMGASMSetUseAggs_GAMG(1118,47751
+PetscErrorCode PCGAMGSetUseParallelCoarseGridSolve(1144,48441
+static PetscErrorCode PCGAMGSetUseParallelCoarseGridSolve_GAMG(1152,48705
+PetscErrorCode PCGAMGSetCpuPinCoarseGrids(1178,49489
+static PetscErrorCode PCGAMGSetCpuPinCoarseGrids_GAMG(1186,49735
+PetscErrorCode PCGAMGSetCoarseGridLayoutType(1212,50558
+static PetscErrorCode PCGAMGSetCoarseGridLayoutType_GAMG(1220,50824
+PetscErrorCode PCGAMGSetNlevels(1249,51517
+static PetscErrorCode PCGAMGSetNlevels_GAMG(1257,51737
+PetscErrorCode PCGAMGSetThreshold(1292,53532
+static PetscErrorCode PCGAMGSetThreshold_GAMG(1301,53825
+PetscErrorCode PCGAMGSetRankReductionFactors(1329,54783
+static PetscErrorCode PCGAMGSetRankReductionFactors_GAMG(1338,55095
+PetscErrorCode PCGAMGSetThresholdScale(1369,56202
+static PetscErrorCode PCGAMGSetThresholdScale_GAMG(1377,56438
+PetscErrorCode PCGAMGSetType(1402,57062
+PetscErrorCode PCGAMGGetType(1425,57565
+static PetscErrorCode PCGAMGGetType_GAMG(1433,57792
+static PetscErrorCode PCGAMGSetType_GAMG(1443,58023
+static PetscErrorCode PCView_GAMG(1471,59069
+PetscErrorCode PCSetFromOptions_GAMG(1491,60406
+PETSC_EXTERN PetscErrorCode PCCreate_GAMG(1590,68047
+PetscErrorCode PCGAMGInitializePackage(1669,72081
+PetscErrorCode PCGAMGFinalizePackage(1726,75267
+PetscErrorCode PCGAMGRegister(1745,75733
+PetscErrorCode PCGAMGCreateGraph(1767,76261
 
 src/ksp/pc/impls/gamg/classical.c,1206
 classical.c:^?classical.c^A,1
@@ -42491,36 +42491,36 @@
 PetscErrorCode PCFieldSplitSetBlockSize(2165,104117
 PetscErrorCode PCFieldSplitGetSubKSP(2213,105909
 PetscErrorCode PCFieldSplitSchurGetSubKSP(2263,107917
-PetscErrorCode PCFieldSplitSetSchurPre(2315,111087
-PetscErrorCode PCFieldSplitSchurPrecondition(2323,111380
-PetscErrorCode PCFieldSplitGetSchurPre(2346,112331
-PetscErrorCode PCFieldSplitSchurGetS(2373,113402
-PetscErrorCode PCFieldSplitSchurRestoreS(2403,114484
-static PetscErrorCode PCFieldSplitSetSchurPre_FieldSplit(2420,115243
-static PetscErrorCode PCFieldSplitGetSchurPre_FieldSplit(2434,115674
-PetscErrorCode PCFieldSplitSetSchurFactType(2488,118353
-static PetscErrorCode PCFieldSplitSetSchurFactType_FieldSplit(2496,118639
-PetscErrorCode PCFieldSplitSetSchurScale(2521,119394
-static PetscErrorCode PCFieldSplitSetSchurScale_FieldSplit(2530,119697
-PetscErrorCode PCFieldSplitGetSchurBlocks(2557,120348
-PetscErrorCode PCFieldSplitSetGKBTol(2595,121861
-static PetscErrorCode PCFieldSplitSetGKBTol_FieldSplit(2604,122162
-PetscErrorCode PCFieldSplitSetGKBMaxit(2629,122897
-static PetscErrorCode PCFieldSplitSetGKBMaxit_FieldSplit(2638,123187
-PetscErrorCode PCFieldSplitSetGKBDelay(2672,124559
-static PetscErrorCode PCFieldSplitSetGKBDelay_FieldSplit(2681,124849
-PetscErrorCode PCFieldSplitSetGKBNu(2717,126340
-static PetscErrorCode PCFieldSplitSetGKBNu_FieldSplit(2726,126618
-static PetscErrorCode PCFieldSplitSetType_FieldSplit(2735,126816
-static PetscErrorCode PCFieldSplitSetBlockSize_FieldSplit(2778,129591
-static PetscErrorCode PCSetCoordinates_FieldSplit(2789,130153
-PetscErrorCode PCFieldSplitSetType(2842,132431
-PetscErrorCode PCFieldSplitGetType(2866,133292
-PetscErrorCode PCFieldSplitSetDMSplits(2893,134144
-PetscErrorCode PCFieldSplitGetDMSplits(2921,135052
-PetscErrorCode PCFieldSplitGetDetectSaddlePoint(2951,135906
-PetscErrorCode PCFieldSplitSetDetectSaddlePoint(2981,136940
-PETSC_EXTERN PetscErrorCode PCCreate_FieldSplit(3102,144565
+PetscErrorCode PCFieldSplitSetSchurPre(2315,111086
+PetscErrorCode PCFieldSplitSchurPrecondition(2323,111379
+PetscErrorCode PCFieldSplitGetSchurPre(2346,112330
+PetscErrorCode PCFieldSplitSchurGetS(2373,113401
+PetscErrorCode PCFieldSplitSchurRestoreS(2403,114483
+static PetscErrorCode PCFieldSplitSetSchurPre_FieldSplit(2420,115242
+static PetscErrorCode PCFieldSplitGetSchurPre_FieldSplit(2434,115673
+PetscErrorCode PCFieldSplitSetSchurFactType(2488,118352
+static PetscErrorCode PCFieldSplitSetSchurFactType_FieldSplit(2496,118638
+PetscErrorCode PCFieldSplitSetSchurScale(2521,119393
+static PetscErrorCode PCFieldSplitSetSchurScale_FieldSplit(2530,119696
+PetscErrorCode PCFieldSplitGetSchurBlocks(2557,120347
+PetscErrorCode PCFieldSplitSetGKBTol(2595,121860
+static PetscErrorCode PCFieldSplitSetGKBTol_FieldSplit(2604,122161
+PetscErrorCode PCFieldSplitSetGKBMaxit(2629,122896
+static PetscErrorCode PCFieldSplitSetGKBMaxit_FieldSplit(2638,123186
+PetscErrorCode PCFieldSplitSetGKBDelay(2672,124558
+static PetscErrorCode PCFieldSplitSetGKBDelay_FieldSplit(2681,124848
+PetscErrorCode PCFieldSplitSetGKBNu(2717,126343
+static PetscErrorCode PCFieldSplitSetGKBNu_FieldSplit(2726,126621
+static PetscErrorCode PCFieldSplitSetType_FieldSplit(2735,126819
+static PetscErrorCode PCFieldSplitSetBlockSize_FieldSplit(2778,129594
+static PetscErrorCode PCSetCoordinates_FieldSplit(2789,130156
+PetscErrorCode PCFieldSplitSetType(2842,132434
+PetscErrorCode PCFieldSplitGetType(2866,133295
+PetscErrorCode PCFieldSplitSetDMSplits(2893,134147
+PetscErrorCode PCFieldSplitGetDMSplits(2921,135055
+PetscErrorCode PCFieldSplitGetDetectSaddlePoint(2951,135909
+PetscErrorCode PCFieldSplitSetDetectSaddlePoint(2981,136943
+PETSC_EXTERN PetscErrorCode PCCreate_FieldSplit(3102,144568
 
 src/ksp/pc/impls/fieldsplit/makefile,114
 makefile:^?makefile^A,1
@@ -42844,6 +42844,38 @@
 SUBMANSEC 9,133
 LOCDIR 10,148
 
+src/ksp/pc/impls/deflation/deflation.c,1673
+deflation.c:^?deflation.c^A,1
+const char *const PCDeflationSpaceTypes[PCDeflationSpaceTypes3,111
+static PetscErrorCode PCDeflationSetInitOnly_Deflation(5,292
+PetscErrorCode PCDeflationSetInitOnly(32,986
+static PetscErrorCode PCDeflationSetLevels_Deflation(41,1271
+PetscErrorCode PCDeflationSetLevels(67,1932
+static PetscErrorCode PCDeflationSetReductionFactor_Deflation(76,2223
+PetscErrorCode PCDeflationSetReductionFactor(104,2954
+static PetscErrorCode PCDeflationSetCorrectionFactor_Deflation(113,3250
+PetscErrorCode PCDeflationSetCorrectionFactor(146,4252
+static PetscErrorCode PCDeflationSetSpaceToCompute_Deflation(155,4562
+PetscErrorCode PCDeflationSetSpaceToCompute(188,5544
+static PetscErrorCode PCDeflationSetSpace_Deflation(198,5968
+PetscErrorCode PCDeflationSetSpace(238,7364
+static PetscErrorCode PCDeflationSetProjectionNullSpaceMat_Deflation(248,7723
+PetscErrorCode PCDeflationSetProjectionNullSpaceMat(272,8290
+static PetscErrorCode PCDeflationSetCoarseMat_Deflation(281,8593
+PetscErrorCode PCDeflationSetCoarseMat(305,9115
+static PetscErrorCode PCDeflationGetCoarseKSP_Deflation(314,9392
+PetscErrorCode PCDeflationGetCoarseKSP(338,9866
+static PetscErrorCode PCDeflationGetPC_Deflation(347,10126
+PetscErrorCode PCDeflationGetPC(371,10594
+static PetscErrorCode PCPreSolve_Deflation(383,10886
+static PetscErrorCode PCApply_Deflation(423,12139
+static PetscErrorCode PCSetUp_Deflation(453,13225
+static PetscErrorCode PCReset_Deflation(673,22387
+static PetscErrorCode PCDestroy_Deflation(689,22839
+static PetscErrorCode PCView_Deflation(707,23957
+static PetscErrorCode PCSetFromOptions_Deflation(734,25189
+PETSC_EXTERN PetscErrorCode PCCreate_Deflation(832,33106
+
 src/ksp/pc/impls/deflation/makefile,115
 makefile:^?makefile^A,1
 SOURCEC 3,37
@@ -42893,49 +42925,6 @@
   PetscBool            extendsp;24,765
 } PC_Deflation;25,798
 
-src/ksp/pc/impls/deflation/deflation.c,1673
-deflation.c:^?deflation.c^A,1
-const char *const PCDeflationSpaceTypes[PCDeflationSpaceTypes3,111
-static PetscErrorCode PCDeflationSetInitOnly_Deflation(5,292
-PetscErrorCode PCDeflationSetInitOnly(32,986
-static PetscErrorCode PCDeflationSetLevels_Deflation(41,1271
-PetscErrorCode PCDeflationSetLevels(67,1932
-static PetscErrorCode PCDeflationSetReductionFactor_Deflation(76,2223
-PetscErrorCode PCDeflationSetReductionFactor(104,2954
-static PetscErrorCode PCDeflationSetCorrectionFactor_Deflation(113,3250
-PetscErrorCode PCDeflationSetCorrectionFactor(146,4252
-static PetscErrorCode PCDeflationSetSpaceToCompute_Deflation(155,4562
-PetscErrorCode PCDeflationSetSpaceToCompute(188,5544
-static PetscErrorCode PCDeflationSetSpace_Deflation(198,5968
-PetscErrorCode PCDeflationSetSpace(238,7364
-static PetscErrorCode PCDeflationSetProjectionNullSpaceMat_Deflation(248,7723
-PetscErrorCode PCDeflationSetProjectionNullSpaceMat(272,8290
-static PetscErrorCode PCDeflationSetCoarseMat_Deflation(281,8593
-PetscErrorCode PCDeflationSetCoarseMat(305,9115
-static PetscErrorCode PCDeflationGetCoarseKSP_Deflation(314,9392
-PetscErrorCode PCDeflationGetCoarseKSP(338,9866
-static PetscErrorCode PCDeflationGetPC_Deflation(347,10126
-PetscErrorCode PCDeflationGetPC(371,10594
-static PetscErrorCode PCPreSolve_Deflation(383,10886
-static PetscErrorCode PCApply_Deflation(423,12139
-static PetscErrorCode PCSetUp_Deflation(453,13225
-static PetscErrorCode PCReset_Deflation(673,22387
-static PetscErrorCode PCDestroy_Deflation(689,22839
-static PetscErrorCode PCView_Deflation(707,23957
-static PetscErrorCode PCSetFromOptions_Deflation(734,25189
-PETSC_EXTERN PetscErrorCode PCCreate_Deflation(832,33106
-
-src/ksp/pc/impls/cp/makefile,114
-makefile:^?makefile^A,1
-SOURCEC 3,37
-SOURCEF 4,54
-SOURCEH 5,66
-LIBBASE 6,78
-DIRS 7,102
-MANSEC 8,114
-SUBMANSEC 9,130
-LOCDIR 10,145
-
 src/ksp/pc/impls/cp/cp.c,479
 cp.c:^?cp.c^A,1
   PetscInt     n,9,184
@@ -42951,7 +42940,18 @@
 static PetscErrorCode PCReset_CP(93,3194
 static PetscErrorCode PCDestroy_CP(104,3434
 static PetscErrorCode PCSetFromOptions_CP(116,3703
-PETSC_EXTERN PetscErrorCode PCCreate_CP(163,5079
+PETSC_EXTERN PetscErrorCode PCCreate_CP(163,5078
+
+src/ksp/pc/impls/cp/makefile,114
+makefile:^?makefile^A,1
+SOURCEC 3,37
+SOURCEF 4,54
+SOURCEH 5,66
+LIBBASE 6,78
+DIRS 7,102
+MANSEC 8,114
+SUBMANSEC 9,130
+LOCDIR 10,145
 
 src/ksp/pc/impls/composite/composite.c,1797
 composite.c:^?composite.c^A,1
@@ -43248,6 +43248,85 @@
 SUBMANSEC 11,208
 LOCDIR 12,223
 
+src/ksp/pc/impls/bddc/bddcprivate.c,2875
+bddcprivate.c:^?bddcprivate.c^A,1
+PetscErrorCode MatDenseOrthogonalRangeOrComplement(15,509
+static int inc 82,2779
+static int lev 83,2799
+PetscErrorCode PCBDDCComputeNedelecChangeEdge(86,2827
+PetscErrorCode PCBDDCNedelecSupport(151,5288
+PetscErrorCode PCBDDCNullSpaceCreate(1364,57025
+PetscErrorCode PCBDDCComputeNoNetFlux(1409,58594
+PetscErrorCode PCBDDCAddPrimalVerticesLocalIS(1505,62529
+static PetscErrorCode func_coords_private(1527,63149
+PetscErrorCode PCBDDCComputeLocalTopologyInfo(1536,63420
+PetscErrorCode PCBDDCConsistencyCheckIS(1797,74930
+PetscErrorCode PCBDDCBenignRemoveInterior(1835,76592
+PetscErrorCode PCBDDCBenignMatMult_Private_Private(1867,78012
+PetscErrorCode PCBDDCBenignMatMultTranspose_Private(1948,80473
+PetscErrorCode PCBDDCBenignMatMult_Private(1955,80670
+PetscErrorCode PCBDDCBenignShellMat(1962,80859
+PetscErrorCode PCBDDCBenignProject(2033,83925
+PetscErrorCode MatSeqAIJCompress(2052,84500
+PetscErrorCode PCBDDCDetectDisconnectedComponents(2098,85883
+PetscErrorCode PCBDDCBenignCheck(2345,95729
+PetscErrorCode PCBDDCBenignDetectSaddlePoint(2424,99317
+PetscErrorCode PCBDDCBenignGetOrSetP0(2867,118178
+PetscErrorCode PCBDDCBenignPopOrPushB0(2891,119284
+PetscErrorCode PCBDDCAdaptiveSelection(2990,123828
+PetscErrorCode PCBDDCSetUpSolvers(3596,156734
+PetscErrorCode PCBDDCResetCustomization(3623,157598
+PetscErrorCode PCBDDCResetTopography(3641,158295
+PetscErrorCode PCBDDCResetSolvers(3668,159358
+PetscErrorCode PCBDDCSetUpLocalWorkVectors(3715,161321
+PetscErrorCode PCBDDCSetUpCorrection(3759,163174
+PetscErrorCode MatCreateSubMatrixUnsorted(4778,212276
+PetscErrorCode PCBDDCComputeLocalMatrix(4879,215903
+PetscErrorCode PCBDDCSetUpLocalScatters(4979,220477
+static PetscErrorCode MatNullSpacePropagateAny_Private(5140,228123
+PetscErrorCode PCBDDCSetUpLocalSolvers(5209,231110
+static PetscErrorCode PCBDDCSolveSubstructureCorrection(5524,246450
+PetscErrorCode PCBDDCApplyInterfacePreconditioner(5609,251536
+PetscErrorCode PCBDDCScatterCoarseDataBegin(5738,257692
+PetscErrorCode PCBDDCScatterCoarseDataEnd(5766,258707
+PetscErrorCode PCBDDCConstraintsSetUp(5798,259781
+PetscErrorCode PCBDDCAnalyzeInterface(6835,318020
+PetscErrorCode PCBDDCOrthonormalizeVecs(6934,323170
+PetscErrorCode PCBDDCMatISGetSubassemblingPattern(6980,324392
+  MATDENSE_PRIVATE 7241,335671
+  MATAIJ_PRIVATE,7242,335695
+  MATBAIJ_PRIVATE,7243,335713
+  MATSBAIJ_PRIVATE7244,335732
+} MatTypePrivate;7245,335751
+PetscErrorCode PCBDDCMatISSubassemble(7247,335770
+PetscErrorCode PCBDDCSetUpCoarseSolver(7772,359327
+PetscErrorCode PCBDDCComputePrimalNumbering(8522,397319
+PetscErrorCode PCBDDCGlobalToLocal(8624,403882
+PetscErrorCode PCBDDCComputeFakeChange(8664,405559
+PetscErrorCode PCBDDCSetUpSubSchurs(8720,408013
+PetscErrorCode PCBDDCInitSubSchurs(8833,413737
+PetscErrorCode PCBDDCCheckOperator(8885,416889
+PetscErrorCode MatMPIAIJRestrict(8997,423321
+
+src/ksp/pc/impls/bddc/bddcgraph.c,830
+bddcgraph.c:^?bddcgraph.c^A,1
+PetscErrorCode PCBDDCDestroyGraphCandidatesIS(5,128
+PetscErrorCode PCBDDCGraphGetDirichletDofsB(19,607
+PetscErrorCode PCBDDCGraphGetDirichletDofs(45,1495
+PetscErrorCode PCBDDCGraphASCIIView(71,2367
+PetscErrorCode PCBDDCGraphRestoreCandidatesIS(156,8309
+PetscErrorCode PCBDDCGraphGetCandidatesIS(188,9265
+PetscErrorCode PCBDDCGraphComputeConnectedComponents(282,12698
+static inline PetscErrorCode PCBDDCGraphComputeCC_Private(687,29527
+PetscErrorCode PCBDDCGraphComputeConnectedComponentsLocal(770,32912
+PetscErrorCode PCBDDCGraphSetUp(828,35056
+PetscErrorCode PCBDDCGraphResetCoords(1175,50356
+PetscErrorCode PCBDDCGraphResetCSR(1186,50613
+PetscErrorCode PCBDDCGraphReset(1202,50987
+PetscErrorCode PCBDDCGraphInit(1233,52368
+PetscErrorCode PCBDDCGraphDestroy(1269,53987
+PetscErrorCode PCBDDCGraphCreate(1279,54252
+
 src/ksp/pc/impls/bddc/bddc.c,4841
 bddc.c:^?bddc.c^A,1
 static PetscBool PCBDDCPackageInitialized 26,694
@@ -43383,66 +43462,6 @@
 static PetscErrorCode PCBDDCScalingSetUp_Deluxe(392,19147
 static PetscErrorCode PCBDDCScalingSetUp_Deluxe_Private(445,21745
 
-src/ksp/pc/impls/bddc/bddcprivate.c,2875
-bddcprivate.c:^?bddcprivate.c^A,1
-PetscErrorCode MatDenseOrthogonalRangeOrComplement(15,509
-static int inc 82,2779
-static int lev 83,2799
-PetscErrorCode PCBDDCComputeNedelecChangeEdge(86,2827
-PetscErrorCode PCBDDCNedelecSupport(151,5288
-PetscErrorCode PCBDDCNullSpaceCreate(1364,57025
-PetscErrorCode PCBDDCComputeNoNetFlux(1409,58594
-PetscErrorCode PCBDDCAddPrimalVerticesLocalIS(1505,62529
-static PetscErrorCode func_coords_private(1527,63149
-PetscErrorCode PCBDDCComputeLocalTopologyInfo(1536,63420
-PetscErrorCode PCBDDCConsistencyCheckIS(1797,74930
-PetscErrorCode PCBDDCBenignRemoveInterior(1835,76592
-PetscErrorCode PCBDDCBenignMatMult_Private_Private(1867,78012
-PetscErrorCode PCBDDCBenignMatMultTranspose_Private(1948,80473
-PetscErrorCode PCBDDCBenignMatMult_Private(1955,80670
-PetscErrorCode PCBDDCBenignShellMat(1962,80859
-PetscErrorCode PCBDDCBenignProject(2033,83925
-PetscErrorCode MatSeqAIJCompress(2052,84500
-PetscErrorCode PCBDDCDetectDisconnectedComponents(2098,85883
-PetscErrorCode PCBDDCBenignCheck(2345,95729
-PetscErrorCode PCBDDCBenignDetectSaddlePoint(2424,99317
-PetscErrorCode PCBDDCBenignGetOrSetP0(2867,118178
-PetscErrorCode PCBDDCBenignPopOrPushB0(2891,119284
-PetscErrorCode PCBDDCAdaptiveSelection(2990,123828
-PetscErrorCode PCBDDCSetUpSolvers(3596,156734
-PetscErrorCode PCBDDCResetCustomization(3623,157598
-PetscErrorCode PCBDDCResetTopography(3641,158295
-PetscErrorCode PCBDDCResetSolvers(3668,159358
-PetscErrorCode PCBDDCSetUpLocalWorkVectors(3715,161321
-PetscErrorCode PCBDDCSetUpCorrection(3759,163174
-PetscErrorCode MatCreateSubMatrixUnsorted(4778,212275
-PetscErrorCode PCBDDCComputeLocalMatrix(4879,215902
-PetscErrorCode PCBDDCSetUpLocalScatters(4979,220476
-static PetscErrorCode MatNullSpacePropagateAny_Private(5140,228122
-PetscErrorCode PCBDDCSetUpLocalSolvers(5209,231109
-static PetscErrorCode PCBDDCSolveSubstructureCorrection(5524,246449
-PetscErrorCode PCBDDCApplyInterfacePreconditioner(5609,251535
-PetscErrorCode PCBDDCScatterCoarseDataBegin(5738,257691
-PetscErrorCode PCBDDCScatterCoarseDataEnd(5766,258706
-PetscErrorCode PCBDDCConstraintsSetUp(5798,259780
-PetscErrorCode PCBDDCAnalyzeInterface(6835,318019
-PetscErrorCode PCBDDCOrthonormalizeVecs(6934,323169
-PetscErrorCode PCBDDCMatISGetSubassemblingPattern(6980,324391
-  MATDENSE_PRIVATE 7241,335670
-  MATAIJ_PRIVATE,7242,335694
-  MATBAIJ_PRIVATE,7243,335712
-  MATSBAIJ_PRIVATE7244,335731
-} MatTypePrivate;7245,335750
-PetscErrorCode PCBDDCMatISSubassemble(7247,335769
-PetscErrorCode PCBDDCSetUpCoarseSolver(7772,359326
-PetscErrorCode PCBDDCComputePrimalNumbering(8522,397318
-PetscErrorCode PCBDDCGlobalToLocal(8624,403881
-PetscErrorCode PCBDDCComputeFakeChange(8664,405558
-PetscErrorCode PCBDDCSetUpSubSchurs(8720,408012
-PetscErrorCode PCBDDCInitSubSchurs(8833,413736
-PetscErrorCode PCBDDCCheckOperator(8885,416888
-PetscErrorCode MatMPIAIJRestrict(8997,423320
-
 src/ksp/pc/impls/bddc/bddcnullspace.c,233
 bddcnullspace.c:^?bddcnullspace.c^A,1
 static PetscErrorCode PCBDDCNullSpaceCorrPreSolve(6,152
@@ -43450,25 +43469,6 @@
 static PetscErrorCode PCBDDCNullSpaceCorrDestroy(53,2129
 PetscErrorCode PCBDDCNullSpaceAssembleCorrection(66,2531
 
-src/ksp/pc/impls/bddc/bddcgraph.c,830
-bddcgraph.c:^?bddcgraph.c^A,1
-PetscErrorCode PCBDDCDestroyGraphCandidatesIS(5,128
-PetscErrorCode PCBDDCGraphGetDirichletDofsB(19,607
-PetscErrorCode PCBDDCGraphGetDirichletDofs(45,1495
-PetscErrorCode PCBDDCGraphASCIIView(71,2367
-PetscErrorCode PCBDDCGraphRestoreCandidatesIS(156,8309
-PetscErrorCode PCBDDCGraphGetCandidatesIS(188,9265
-PetscErrorCode PCBDDCGraphComputeConnectedComponents(282,12697
-static inline PetscErrorCode PCBDDCGraphComputeCC_Private(687,29526
-PetscErrorCode PCBDDCGraphComputeConnectedComponentsLocal(770,32911
-PetscErrorCode PCBDDCGraphSetUp(828,35055
-PetscErrorCode PCBDDCGraphResetCoords(1175,50355
-PetscErrorCode PCBDDCGraphResetCSR(1186,50612
-PetscErrorCode PCBDDCGraphReset(1202,50986
-PetscErrorCode PCBDDCGraphInit(1233,52367
-PetscErrorCode PCBDDCGraphDestroy(1269,53986
-PetscErrorCode PCBDDCGraphCreate(1279,54251
-
 src/ksp/pc/impls/bddc/bddcfetidp.c,806
 bddcfetidp.c:^?bddcfetidp.c^A,1
 static PetscErrorCode MatMult_BDdelta_deluxe_nonred(5,113
@@ -44009,6 +44009,61 @@
 MANSEC 8,114
 LOCDIR 9,129
 
+src/ksp/ksp/tutorials/ex9.c,120
+ex9.c:^?ex9.c^A,1
+static char help[help2,1
+int main(23,881
+PetscErrorCode CheckError(410,14136
+PetscErrorCode MyKSPMonitor(438,15110
+
+src/ksp/ksp/tutorials/ex70.c,1408
+ex70.c:^?ex70.c^A,1
+static char help[help1,0
+#define NSD 38,2455
+#define NODES_PER_EL 39,2513
+#define U_DOFS 40,2560
+#define P_DOFS 41,2626
+#define GAUSS_POINTS 42,2692
+static void EvaluateBasis_Q1(44,2716
+static void EvaluateBasisDerivatives_Q1(55,3011
+static void EvaluateDerivatives(71,3429
+static void CreateGaussQuadrature(102,4283
+static PetscErrorCode DMDAGetElementEqnums_up(119,4754
+static PetscInt map_wIwDI_uJuDJ(133,5125
+static void BForm_DivT(144,5408
+static void BForm_Grad(192,6793
+static void BForm_Div(222,7753
+static void BForm_Stabilisation(238,8145
+static void BForm_ScaledMassMatrix(270,9221
+static void LForm_MomentumRHS(302,10263
+static PetscErrorCode GetElementCoords(326,11011
+static PetscErrorCode AssembleStokes_A(337,11349
+static PetscErrorCode AssembleStokes_PC(400,14083
+static PetscErrorCode AssembleStokes_RHS(463,16792
+PetscErrorCode DMSwarmPICInsertPointsCellwise(527,19128
+PetscErrorCode MaterialPoint_PopulateCell(660,25063
+PetscErrorCode MaterialPoint_AdvectRK1(699,26405
+PetscErrorCode MaterialPoint_Interpolate(781,29919
+static PetscErrorCode SolveTimeDepStokes(848,32285
+int main(1258,49196
+static PetscErrorCode BCApplyZero_EAST(1276,49779
+static PetscErrorCode BCApplyZero_WEST(1334,51584
+static PetscErrorCode BCApplyZero_NORTH(1393,53376
+static PetscErrorCode BCApplyZero_SOUTH(1451,55161
+static PetscErrorCode DMDAApplyBoundaryConditions(1513,57113
+
+src/ksp/ksp/tutorials/ex10.c,237
+ex10.c:^?ex10.c^A,1
+static char help[help2,1
+  RHS_FILE,18,630
+  RHS_ONE,19,642
+  RHS_RANDOM20,653
+} RHSType;21,666
+const char *const RHSTypes[RHSTypes22,677
+PetscErrorCode CheckResult(24,761
+PetscErrorCode CreateSystem(47,1484
+int main(133,4676
+
 src/ksp/ksp/tutorials/ex73.c,1592
 ex73.c:^?ex73.c^A,1
 static char help[help20,361
@@ -44254,13 +44309,6 @@
 testex100:testex10012,297
            echo "See https:echo "See https18,697
 
-src/ksp/ksp/tutorials/ex9.c,120
-ex9.c:^?ex9.c^A,1
-static char help[help2,1
-int main(23,881
-PetscErrorCode CheckError(410,14135
-PetscErrorCode MyKSPMonitor(438,15109
-
 src/ksp/ksp/tutorials/ex82.c,85
 ex82.c:^?ex82.c^A,1
 static char help[help3,23
@@ -44326,42 +44374,6 @@
 static char help[help2,1
 int main(35,1766
 
-src/ksp/ksp/tutorials/ex70.c,1408
-ex70.c:^?ex70.c^A,1
-static char help[help1,0
-#define NSD 38,2455
-#define NODES_PER_EL 39,2513
-#define U_DOFS 40,2560
-#define P_DOFS 41,2626
-#define GAUSS_POINTS 42,2692
-static void EvaluateBasis_Q1(44,2716
-static void EvaluateBasisDerivatives_Q1(55,3011
-static void EvaluateDerivatives(71,3429
-static void CreateGaussQuadrature(102,4283
-static PetscErrorCode DMDAGetElementEqnums_up(119,4754
-static PetscInt map_wIwDI_uJuDJ(133,5125
-static void BForm_DivT(144,5408
-static void BForm_Grad(192,6793
-static void BForm_Div(222,7753
-static void BForm_Stabilisation(238,8145
-static void BForm_ScaledMassMatrix(270,9221
-static void LForm_MomentumRHS(302,10263
-static PetscErrorCode GetElementCoords(326,11011
-static PetscErrorCode AssembleStokes_A(337,11349
-static PetscErrorCode AssembleStokes_PC(400,14083
-static PetscErrorCode AssembleStokes_RHS(463,16792
-PetscErrorCode DMSwarmPICInsertPointsCellwise(527,19128
-PetscErrorCode MaterialPoint_PopulateCell(660,25056
-PetscErrorCode MaterialPoint_AdvectRK1(699,26398
-PetscErrorCode MaterialPoint_Interpolate(781,29912
-static PetscErrorCode SolveTimeDepStokes(848,32278
-int main(1258,49189
-static PetscErrorCode BCApplyZero_EAST(1276,49772
-static PetscErrorCode BCApplyZero_WEST(1334,51577
-static PetscErrorCode BCApplyZero_NORTH(1393,53369
-static PetscErrorCode BCApplyZero_SOUTH(1451,55154
-static PetscErrorCode DMDAApplyBoundaryConditions(1513,57106
-
 src/ksp/ksp/tutorials/ex7.c,44
 ex7.c:^?ex7.c^A,1
 static char help[help1,0
@@ -44866,18 +44878,6 @@
   #define PYTHON_LIB 75,2098
 int main(78,2129
 
-src/ksp/ksp/tutorials/ex10.c,237
-ex10.c:^?ex10.c^A,1
-static char help[help2,1
-  RHS_FILE,18,630
-  RHS_ONE,19,642
-  RHS_RANDOM20,653
-} RHSType;21,666
-const char *const RHSTypes[RHSTypes22,677
-PetscErrorCode CheckResult(24,761
-PetscErrorCode CreateSystem(47,1484
-int main(133,4675
-
 src/ksp/ksp/tutorials/ex1.c,44
 ex1.c:^?ex1.c^A,1
 static char help[help2,1
@@ -45018,6 +45018,15 @@
 testamrex:testamrex20,664
            echo "See https:echo "See https25,1056
 
+src/ksp/ksp/tests/ex11.c,223
+ex11.c:^?ex11.c^A,1
+static const char help[help1,0
+static PetscErrorCode replace_submats(9,274
+PetscErrorCode LSCLoadTestOperators(43,1627
+PetscErrorCode LoadTestMatrices(74,2964
+PetscErrorCode port_lsd_bfbt(146,5699
+int main(264,10620
+
 src/ksp/ksp/tests/ex14.c,321
 ex14.c:^?ex14.c^A,1
 static char help[help2,1
@@ -45400,15 +45409,6 @@
 static char help[help2,1
 int main(6,105
 
-src/ksp/ksp/tests/ex11.c,223
-ex11.c:^?ex11.c^A,1
-static const char help[help1,0
-static PetscErrorCode replace_submats(9,274
-PetscErrorCode LSCLoadTestOperators(43,1627
-PetscErrorCode LoadTestMatrices(74,2964
-PetscErrorCode port_lsd_bfbt(146,5699
-int main(264,10620
-
 src/ksp/ksp/tests/ex1.c,96
 ex1.c:^?ex1.c^A,1
 static char help[help2,1
@@ -45454,84 +45454,134 @@
 } Stats;70,1855
 PetscErrorCode PetscLogView_VecScatter(71,1864
 
-src/ksp/ksp/interface/itres.c,90
-itres.c:^?itres.c^A,1
-PetscErrorCode KSPInitialResidual(35,992
-PetscErrorCode KSPUnwindPreconditioner(99,3533
-
 src/ksp/ksp/interface/itfunc.c,3429
 itfunc.c:^?itfunc.c^A,1
 static PetscInt level 10,305
 static inline PetscErrorCode ObjectView(12,333
 PetscErrorCode KSPComputeExtremeSingularValues(54,2098
 PetscErrorCode KSPComputeEigenvalues(114,4650
-PetscErrorCode KSPComputeRitz(179,7914
-PetscErrorCode KSPSetUpOnBlocks(210,9096
-PetscErrorCode KSPSetReusePreconditioner(245,10342
-PetscErrorCode KSPGetReusePreconditioner(271,11033
-PetscErrorCode KSPSetSkipPCSetFromOptions(294,11828
-PetscErrorCode KSPSetUp(315,12330
-PetscErrorCode KSPConvergedReasonView(444,17604
-PetscErrorCode KSPConvergedReasonViewSet(509,20676
-PetscErrorCode KSPConvergedReasonViewCancel(539,21867
-PetscErrorCode KSPConvergedReasonViewFromOptions(564,22490
-PetscErrorCode KSPConvergedRateView(610,24279
-static PetscErrorCode KSPViewEigenvalues_Internal(656,26938
-static PetscErrorCode KSPViewSingularvalues_Internal(711,29261
-static PetscErrorCode KSPViewFinalResidual_Internal(729,30035
-static PetscErrorCode KSPMonitorPauseFinal_Internal(752,30948
-static PetscErrorCode KSPSolve_Private(789,32302
-PetscErrorCode KSPSolve(1064,45122
-PetscErrorCode KSPSolveTranspose(1096,46008
-static PetscErrorCode KSPViewFinalMatResidual_Internal(1125,47182
-PetscErrorCode KSPMatSolve(1165,48702
-PetscErrorCode KSPSetMatSolveBatchSize(1268,53923
-PetscErrorCode KSPGetMatSolveBatchSize(1290,54497
-PetscErrorCode KSPResetViewers(1311,55033
-PetscErrorCode KSPReset(1358,56693
-PetscErrorCode KSPDestroy(1394,57608
-PetscErrorCode KSPSetPCSide(1472,60177
-PetscErrorCode KSPGetPCSide(1501,60875
-PetscErrorCode KSPGetTolerances(1535,61776
-PetscErrorCode KSPSetTolerances(1577,63423
-PetscErrorCode KSPSetInitialGuessNonzero(1626,65448
-PetscErrorCode KSPGetInitialGuessNonzero(1651,66084
-PetscErrorCode KSPSetErrorIfNotConverged(1683,67144
-PetscErrorCode KSPGetErrorIfNotConverged(1707,67777
-PetscErrorCode KSPSetInitialGuessKnoll(1731,68522
-PetscErrorCode KSPGetInitialGuessKnoll(1756,69244
-PetscErrorCode KSPGetComputeSingularValues(1792,70338
-PetscErrorCode KSPSetComputeSingularValues(1826,71404
-PetscErrorCode KSPGetComputeEigenvalues(1855,72185
-PetscErrorCode KSPSetComputeEigenvalues(1882,72925
-PetscErrorCode KSPSetComputeRitz(1909,73624
-PetscErrorCode KSPGetRhs(1934,74185
-PetscErrorCode KSPGetSolution(1960,74841
-PetscErrorCode KSPSetPC(1986,75444
-PetscErrorCode KSPGetPC(2016,76106
-PetscErrorCode KSPMonitor(2048,76990
-PetscErrorCode KSPMonitorSet(2111,79635
-PetscErrorCode KSPMonitorCancel(2144,81008
-PetscErrorCode KSPGetMonitorContext(2172,81685
-PetscErrorCode KSPSetResidualHistory(2205,82837
-PetscErrorCode KSPGetResidualHistory(2254,84505
-PetscErrorCode KSPSetErrorHistory(2284,85702
-PetscErrorCode KSPGetErrorHistory(2332,87345
-PetscErrorCode KSPComputeConvergenceRate(2364,88429
-PetscErrorCode KSPSetConvergenceTest(2458,91733
-PetscErrorCode KSPGetConvergenceTest(2495,93220
-PetscErrorCode KSPGetAndClearConvergenceTest(2536,95129
-PetscErrorCode KSPGetConvergenceContext(2564,96025
-PetscErrorCode KSPBuildSolution(2607,97472
-PetscErrorCode KSPBuildResidual(2639,98342
-PetscErrorCode KSPSetDiagonalScale(2689,100016
-PetscErrorCode KSPGetDiagonalScale(2713,100646
-PetscErrorCode KSPSetDiagonalScaleFix(2744,101612
-PetscErrorCode KSPGetDiagonalScaleFix(2769,102337
-PetscErrorCode KSPSetComputeOperators(2811,104000
-PetscErrorCode KSPSetComputeRHS(2847,105074
-PetscErrorCode KSPSetComputeInitialGuess(2883,106212
-PetscErrorCode KSPSetUseExplicitTranspose(2910,107048
+PetscErrorCode KSPComputeRitz(179,7913
+PetscErrorCode KSPSetUpOnBlocks(210,9095
+PetscErrorCode KSPSetReusePreconditioner(245,10341
+PetscErrorCode KSPGetReusePreconditioner(271,11032
+PetscErrorCode KSPSetSkipPCSetFromOptions(294,11834
+PetscErrorCode KSPSetUp(315,12336
+PetscErrorCode KSPConvergedReasonView(444,17610
+PetscErrorCode KSPConvergedReasonViewSet(509,20682
+PetscErrorCode KSPConvergedReasonViewCancel(539,21873
+PetscErrorCode KSPConvergedReasonViewFromOptions(564,22496
+PetscErrorCode KSPConvergedRateView(610,24285
+static PetscErrorCode KSPViewEigenvalues_Internal(656,26944
+static PetscErrorCode KSPViewSingularvalues_Internal(711,29267
+static PetscErrorCode KSPViewFinalResidual_Internal(729,30041
+static PetscErrorCode KSPMonitorPauseFinal_Internal(752,30954
+static PetscErrorCode KSPSolve_Private(789,32308
+PetscErrorCode KSPSolve(1064,45128
+PetscErrorCode KSPSolveTranspose(1096,46014
+static PetscErrorCode KSPViewFinalMatResidual_Internal(1125,47188
+PetscErrorCode KSPMatSolve(1165,48708
+PetscErrorCode KSPSetMatSolveBatchSize(1268,53929
+PetscErrorCode KSPGetMatSolveBatchSize(1290,54503
+PetscErrorCode KSPResetViewers(1311,55039
+PetscErrorCode KSPReset(1358,56699
+PetscErrorCode KSPDestroy(1394,57614
+PetscErrorCode KSPSetPCSide(1472,60183
+PetscErrorCode KSPGetPCSide(1501,60881
+PetscErrorCode KSPGetTolerances(1535,61782
+PetscErrorCode KSPSetTolerances(1577,63429
+PetscErrorCode KSPSetInitialGuessNonzero(1626,65454
+PetscErrorCode KSPGetInitialGuessNonzero(1651,66090
+PetscErrorCode KSPSetErrorIfNotConverged(1683,67150
+PetscErrorCode KSPGetErrorIfNotConverged(1707,67783
+PetscErrorCode KSPSetInitialGuessKnoll(1731,68528
+PetscErrorCode KSPGetInitialGuessKnoll(1756,69250
+PetscErrorCode KSPGetComputeSingularValues(1792,70344
+PetscErrorCode KSPSetComputeSingularValues(1826,71410
+PetscErrorCode KSPGetComputeEigenvalues(1855,72191
+PetscErrorCode KSPSetComputeEigenvalues(1882,72931
+PetscErrorCode KSPSetComputeRitz(1909,73630
+PetscErrorCode KSPGetRhs(1934,74191
+PetscErrorCode KSPGetSolution(1960,74847
+PetscErrorCode KSPSetPC(1986,75450
+PetscErrorCode KSPGetPC(2016,76112
+PetscErrorCode KSPMonitor(2048,76996
+PetscErrorCode KSPMonitorSet(2111,79641
+PetscErrorCode KSPMonitorCancel(2144,81014
+PetscErrorCode KSPGetMonitorContext(2172,81691
+PetscErrorCode KSPSetResidualHistory(2205,82843
+PetscErrorCode KSPGetResidualHistory(2254,84511
+PetscErrorCode KSPSetErrorHistory(2284,85708
+PetscErrorCode KSPGetErrorHistory(2332,87351
+PetscErrorCode KSPComputeConvergenceRate(2364,88435
+PetscErrorCode KSPSetConvergenceTest(2458,91739
+PetscErrorCode KSPGetConvergenceTest(2495,93226
+PetscErrorCode KSPGetAndClearConvergenceTest(2536,95135
+PetscErrorCode KSPGetConvergenceContext(2564,96031
+PetscErrorCode KSPBuildSolution(2607,97478
+PetscErrorCode KSPBuildResidual(2639,98348
+PetscErrorCode KSPSetDiagonalScale(2689,100022
+PetscErrorCode KSPGetDiagonalScale(2713,100652
+PetscErrorCode KSPSetDiagonalScaleFix(2744,101618
+PetscErrorCode KSPGetDiagonalScaleFix(2769,102343
+PetscErrorCode KSPSetComputeOperators(2811,104006
+PetscErrorCode KSPSetComputeRHS(2847,105080
+PetscErrorCode KSPSetComputeInitialGuess(2883,106218
+PetscErrorCode KSPSetUseExplicitTranspose(2910,107054
+
+src/ksp/ksp/interface/itcreate.c,1646
+itcreate.c:^?itcreate.c^A,1
+PetscClassId  KSP_CLASSID;7,142
+PetscClassId  DMKSP_CLASSID;8,169
+PetscClassId  KSPGUESS_CLASSID;9,198
+PetscLogEvent KSP_GMRESOrthogonalization,10,230
+PetscLogEvent KSP_GMRESOrthogonalization, KSP_SetUp,10,230
+PetscLogEvent KSP_GMRESOrthogonalization, KSP_SetUp, KSP_Solve,10,230
+PetscLogEvent KSP_GMRESOrthogonalization, KSP_SetUp, KSP_Solve, KSP_SolveTranspose,10,230
+PetscLogEvent KSP_GMRESOrthogonalization, KSP_SetUp, KSP_Solve, KSP_SolveTranspose, KSP_MatSolve;10,230
+PetscFunctionList KSPList 15,383
+PetscBool         KSPRegisterAllCalled 16,430
+PetscFunctionList KSPMonitorList 21,539
+PetscFunctionList KSPMonitorCreateList 22,593
+PetscFunctionList KSPMonitorDestroyList 23,647
+PetscBool         KSPMonitorRegisterAllCalled 24,701
+PetscErrorCode KSPLoad(43,1344
+PetscErrorCode KSPView(103,3476
+PetscErrorCode KSPViewFromOptions(228,8734
+PetscErrorCode KSPSetNormType(272,10663
+PetscErrorCode KSPSetCheckNormIteration(302,11712
+PetscErrorCode KSPSetLagNorm(336,12791
+PetscErrorCode KSPSetSupportedNorm(365,13680
+PetscErrorCode KSPNormSupportTableReset_Private(373,13936
+PetscErrorCode KSPSetUpNorms_Private(382,14200
+PetscErrorCode KSPGetNormType(423,16074
+PetscErrorCode KSPSetOperators(504,19655
+PetscErrorCode KSPGetOperators(538,20921
+PetscErrorCode KSPGetOperatorsSet(568,21969
+PetscErrorCode KSPSetPreSolve(599,22849
+PetscErrorCode KSPSetPostSolve(630,23733
+PetscErrorCode KSPCreate(657,24417
+PetscErrorCode KSPSetType(754,27808
+PetscErrorCode KSPGetType(800,29299
+PetscErrorCode KSPRegister(835,30186
+PetscErrorCode KSPMonitorMakeKey_Internal(843,30418
+PetscErrorCode KSPMonitorRegister(884,31897
+
+src/ksp/ksp/interface/eige.c,337
+eige.c:^?eige.c^A,1
+  KSP ksp;7,125
+  Vec work;8,136
+} Mat_KSP;9,148
+static PetscErrorCode MatCreateVecs_KSP(11,160
+static PetscErrorCode MatMult_KSP(23,436
+PetscErrorCode KSPComputeOperator(57,1500
+PetscErrorCode KSPComputeEigenvaluesExplicitly(111,3605
+static PetscErrorCode PolyEval(235,7696
+PetscErrorCode KSPPlotEigenContours_Private(254,8228
+
+src/ksp/ksp/interface/itres.c,90
+itres.c:^?itres.c^A,1
+PetscErrorCode KSPInitialResidual(35,992
+PetscErrorCode KSPUnwindPreconditioner(99,3533
 
 src/ksp/ksp/interface/iterativ.c,2337
 iterativ.c:^?iterativ.c^A,1
@@ -45583,44 +45633,6 @@
 PetscErrorCode KSPGetApplicationContext(1959,73127
 PetscErrorCode KSPCheckSolve(1993,74398
 
-src/ksp/ksp/interface/itcreate.c,1646
-itcreate.c:^?itcreate.c^A,1
-PetscClassId  KSP_CLASSID;7,142
-PetscClassId  DMKSP_CLASSID;8,169
-PetscClassId  KSPGUESS_CLASSID;9,198
-PetscLogEvent KSP_GMRESOrthogonalization,10,230
-PetscLogEvent KSP_GMRESOrthogonalization, KSP_SetUp,10,230
-PetscLogEvent KSP_GMRESOrthogonalization, KSP_SetUp, KSP_Solve,10,230
-PetscLogEvent KSP_GMRESOrthogonalization, KSP_SetUp, KSP_Solve, KSP_SolveTranspose,10,230
-PetscLogEvent KSP_GMRESOrthogonalization, KSP_SetUp, KSP_Solve, KSP_SolveTranspose, KSP_MatSolve;10,230
-PetscFunctionList KSPList 15,383
-PetscBool         KSPRegisterAllCalled 16,430
-PetscFunctionList KSPMonitorList 21,539
-PetscFunctionList KSPMonitorCreateList 22,593
-PetscFunctionList KSPMonitorDestroyList 23,647
-PetscBool         KSPMonitorRegisterAllCalled 24,701
-PetscErrorCode KSPLoad(43,1344
-PetscErrorCode KSPView(103,3476
-PetscErrorCode KSPViewFromOptions(228,8734
-PetscErrorCode KSPSetNormType(272,10663
-PetscErrorCode KSPSetCheckNormIteration(302,11712
-PetscErrorCode KSPSetLagNorm(336,12791
-PetscErrorCode KSPSetSupportedNorm(365,13680
-PetscErrorCode KSPNormSupportTableReset_Private(373,13936
-PetscErrorCode KSPSetUpNorms_Private(382,14200
-PetscErrorCode KSPGetNormType(423,16074
-PetscErrorCode KSPSetOperators(504,19655
-PetscErrorCode KSPGetOperators(538,20921
-PetscErrorCode KSPGetOperatorsSet(568,21969
-PetscErrorCode KSPSetPreSolve(599,22849
-PetscErrorCode KSPSetPostSolve(630,23733
-PetscErrorCode KSPCreate(657,24417
-PetscErrorCode KSPSetType(754,27808
-PetscErrorCode KSPGetType(800,29299
-PetscErrorCode KSPRegister(835,30186
-PetscErrorCode KSPMonitorMakeKey_Internal(843,30418
-PetscErrorCode KSPMonitorRegister(884,31897
-
 src/ksp/ksp/interface/itcl.c,464
 itcl.c:^?itcl.c^A,1
 PetscErrorCode KSPSetOptionsPrefix(41,1070
@@ -45651,18 +45663,6 @@
 PetscErrorCode KSPGuessFormGuess(289,7842
 PetscErrorCode KSPGuessSetUp(311,8378
 
-src/ksp/ksp/interface/eige.c,337
-eige.c:^?eige.c^A,1
-  KSP ksp;7,125
-  Vec work;8,136
-} Mat_KSP;9,148
-static PetscErrorCode MatCreateVecs_KSP(11,160
-static PetscErrorCode MatMult_KSP(23,436
-PetscErrorCode KSPComputeOperator(57,1500
-PetscErrorCode KSPComputeEigenvaluesExplicitly(111,3604
-static PetscErrorCode PolyEval(235,7695
-PetscErrorCode KSPPlotEigenContours_Private(254,8227
-
 src/ksp/ksp/interface/itregis.c,86
 itregis.c:^?itregis.c^A,1
 PetscErrorCode KSPRegisterAll(63,2650
@@ -46097,7 +46097,7 @@
 PetscErrorCode KSPSetFromOptions_LSQR(511,17384
 PetscErrorCode KSPView_LSQR(524,18123
 PetscErrorCode KSPLSQRConvergedDefault(579,20443
-PETSC_EXTERN PetscErrorCode KSPCreate_LSQR(636,24064
+PETSC_EXTERN PetscErrorCode KSPCreate_LSQR(636,24065
 
 src/ksp/ksp/impls/lsqr/makefile,69
 makefile:^?makefile^A,1
@@ -46389,17 +46389,17 @@
 PetscErrorCode KSPLGMRESSetConstant(18,647
 PetscErrorCode KSPSetUp_LGMRES(32,1002
 PetscErrorCode KSPLGMRESCycle(80,2771
-PetscErrorCode KSPSolve_LGMRES(306,11268
-PetscErrorCode KSPDestroy_LGMRES(348,12775
-static PetscErrorCode KSPLGMRESBuildSoln(377,13909
-static PetscErrorCode KSPLGMRESUpdateHessenberg(480,17474
-static PetscErrorCode KSPLGMRESGetNewVectors(551,20026
-PetscErrorCode KSPBuildSolution_LGMRES(597,21547
-PetscErrorCode KSPView_LGMRES(616,22083
-PetscErrorCode KSPSetFromOptions_LGMRES(633,22764
-static PetscErrorCode KSPLGMRESSetConstant_LGMRES(650,23600
-static PetscErrorCode KSPLGMRESSetAugDim_LGMRES(659,23801
-PETSC_EXTERN PetscErrorCode KSPCreate_LGMRES(712,26708
+PetscErrorCode KSPSolve_LGMRES(306,11269
+PetscErrorCode KSPDestroy_LGMRES(348,12776
+static PetscErrorCode KSPLGMRESBuildSoln(377,13910
+static PetscErrorCode KSPLGMRESUpdateHessenberg(480,17475
+static PetscErrorCode KSPLGMRESGetNewVectors(551,20027
+PetscErrorCode KSPBuildSolution_LGMRES(597,21548
+PetscErrorCode KSPView_LGMRES(616,22084
+PetscErrorCode KSPSetFromOptions_LGMRES(633,22765
+static PetscErrorCode KSPLGMRESSetConstant_LGMRES(650,23601
+static PetscErrorCode KSPLGMRESSetAugDim_LGMRES(659,23802
+PETSC_EXTERN PetscErrorCode KSPCreate_LGMRES(712,26709
 
 src/ksp/ksp/impls/gmres/lgmres/makefile,96
 makefile:^?makefile^A,1
@@ -46623,20 +46623,20 @@
 #define ORTH 90,4092
 #define SMV 91,4122
 
-src/ksp/ksp/impls/gmres/agmres/agmresdeflation.c,176
-agmresdeflation.c:^?agmresdeflation.c^A,1
-#define DEPTH 16,978
-static PetscErrorCode KSPAGMRESQuickSort(17,996
-static PetscErrorCode KSPAGMRESSchurForm(92,3530
-PetscErrorCode KSPAGMRESComputeDeflationData(179,7548
-
 src/ksp/ksp/impls/gmres/agmres/agmresorthog.c,212
 agmresorthog.c:^?agmresorthog.c^A,1
 #define PETSCKSP_DLL1,0
 PetscErrorCode KSPAGMRESRoddecInitNeighboor(20,722
 static PetscErrorCode KSPAGMRESRoddecGivens(54,1639
 PetscErrorCode KSPAGMRESRoddec(113,3069
-PetscErrorCode KSPAGMRESRodvec(233,7902
+PetscErrorCode KSPAGMRESRodvec(233,7903
+
+src/ksp/ksp/impls/gmres/agmres/agmresdeflation.c,176
+agmresdeflation.c:^?agmresdeflation.c^A,1
+#define DEPTH 16,978
+static PetscErrorCode KSPAGMRESQuickSort(17,996
+static PetscErrorCode KSPAGMRESSchurForm(92,3530
+PetscErrorCode KSPAGMRESComputeDeflationData(179,7548
 
 src/ksp/ksp/impls/gmres/agmres/agmres.c,1122
 agmres.c:^?agmres.c^A,1
@@ -47066,7 +47066,7 @@
 static PetscErrorCode KSPSolve_Chebyshev(399,16457
 static PetscErrorCode KSPView_Chebyshev(567,22548
 static PetscErrorCode KSPDestroy_Chebyshev(593,24194
-PETSC_EXTERN PetscErrorCode KSPCreate_Chebyshev(634,26135
+PETSC_EXTERN PetscErrorCode KSPCreate_Chebyshev(634,26134
 
 src/ksp/ksp/impls/cheby/makefile,84
 makefile:^?makefile^A,1
@@ -48171,86 +48171,86 @@
       subroutine KSPQCGGetQuadratic(366,11228
       subroutine KSPRichardsonSetScale(372,11405
       subroutine KSPRichardsonSetSelfScale(378,11588
-      subroutine KSPComputeOperator(384,11779
-      subroutine KSPComputeEigenvaluesExplicitly(391,11978
-      subroutine KSPGuessSetFromOptions(399,12253
-      subroutine KSPGuessSetTolerance(404,12420
-      subroutine KSPGuessDestroy(410,12616
-      subroutine KSPGuessCreate(415,12769
-      subroutine KSPGuessUpdate(421,12951
-      subroutine KSPGuessFormGuess(428,13149
-      subroutine KSPGuessSetUp(435,13353
-      subroutine KSPSetUseFischerGuess(440,13502
-      subroutine KSPSetGuess(447,13714
-      subroutine KSPGetGuess(453,13885
-      subroutine KSPSetFromOptions(459,14056
-      subroutine KSPResetFromOptions(464,14198
-      subroutine KSPSetNormType(469,14344
-      subroutine KSPSetCheckNormIteration(475,14517
-      subroutine KSPSetLagNorm(481,14704
-      subroutine KSPSetSupportedNorm(487,14871
-      subroutine KSPGetNormType(495,15112
-      subroutine KSPSetOperators(501,15285
-      subroutine KSPGetOperators(508,15470
-      subroutine KSPCreate(515,15655
-      subroutine KSPGetResidualNorm(521,15812
-      subroutine KSPGetIterationNumber(527,15989
-      subroutine KSPGetTotalIterations(533,16170
-      subroutine KSPConvergedDefaultSetUIRNorm(539,16351
-      subroutine KSPConvergedDefaultSetUMIRNorm(544,16517
-      subroutine KSPConvergedDefaultSetConvergedMaxits(549,16685
-      subroutine KSPGetConvergedReason(555,16900
-      subroutine KSPSetDM(561,17101
-      subroutine KSPSetDMActive(567,17248
-      subroutine KSPGetDM(573,17417
-      subroutine KSPCheckSolve(579,17564
-      subroutine KSPComputeExtremeSingularValues(586,17747
-      subroutine KSPComputeEigenvalues(593,17983
-      subroutine KSPComputeRitz(602,18269
-      subroutine KSPSetUpOnBlocks(613,18606
-      subroutine KSPSetReusePreconditioner(618,18746
-      subroutine KSPGetReusePreconditioner(624,18937
-      subroutine KSPSetSkipPCSetFromOptions(630,19128
-      subroutine KSPSetUp(636,19321
-      subroutine KSPConvergedReasonViewCancel(641,19445
-      subroutine KSPConvergedReasonViewFromOptions(646,19609
-      subroutine KSPSolve(651,19783
-      subroutine KSPSolveTranspose(658,19954
-      subroutine KSPMatSolve(665,20143
-      subroutine KSPSetMatSolveBatchSize(672,20320
-      subroutine KSPGetMatSolveBatchSize(678,20505
-      subroutine KSPResetViewers(684,20690
-      subroutine KSPReset(689,20828
-      subroutine KSPSetPCSide(694,20952
-      subroutine KSPGetPCSide(700,21111
-      subroutine KSPGetTolerances(706,21270
-      subroutine KSPSetTolerances(715,21540
-      subroutine KSPSetInitialGuessNonzero(724,21810
-      subroutine KSPGetInitialGuessNonzero(730,22001
-      subroutine KSPSetErrorIfNotConverged(736,22192
-      subroutine KSPGetErrorIfNotConverged(742,22383
-      subroutine KSPSetInitialGuessKnoll(748,22574
-      subroutine KSPGetInitialGuessKnoll(754,22761
-      subroutine KSPGetComputeSingularValues(760,22948
-      subroutine KSPSetComputeSingularValues(766,23143
-      subroutine KSPGetComputeEigenvalues(772,23338
-      subroutine KSPSetComputeEigenvalues(778,23527
-      subroutine KSPSetComputeRitz(784,23716
-      subroutine KSPGetRhs(790,23891
-      subroutine KSPGetSolution(796,24043
-      subroutine KSPSetPC(802,24205
-      subroutine KSPGetPC(808,24352
-      subroutine KSPMonitor(814,24499
-      subroutine KSPMonitorCancel(821,24691
-      subroutine KSPSetResidualHistory(826,24831
-      subroutine KSPSetErrorHistory(834,25082
-      subroutine KSPSetDiagonalScale(842,25327
-      subroutine KSPGetDiagonalScale(848,25506
-      subroutine KSPSetDiagonalScaleFix(854,25685
-      subroutine KSPGetDiagonalScaleFix(860,25870
-      subroutine KSPSetUseExplicitTranspose(866,26055
-      subroutine KSPInitialResidual(872,26248
-      subroutine KSPUnwindPreconditioner(882,26502
+      subroutine KSPGuessSetFromOptions(384,11779
+      subroutine KSPGuessSetTolerance(389,11946
+      subroutine KSPGuessDestroy(395,12142
+      subroutine KSPGuessCreate(400,12295
+      subroutine KSPGuessUpdate(406,12477
+      subroutine KSPGuessFormGuess(413,12675
+      subroutine KSPGuessSetUp(420,12879
+      subroutine KSPSetUseFischerGuess(425,13028
+      subroutine KSPSetGuess(432,13240
+      subroutine KSPGetGuess(438,13411
+      subroutine KSPSetFromOptions(444,13582
+      subroutine KSPResetFromOptions(449,13724
+      subroutine KSPGetResidualNorm(454,13870
+      subroutine KSPGetIterationNumber(460,14047
+      subroutine KSPGetTotalIterations(466,14228
+      subroutine KSPConvergedDefaultSetUIRNorm(472,14409
+      subroutine KSPConvergedDefaultSetUMIRNorm(477,14575
+      subroutine KSPConvergedDefaultSetConvergedMaxits(482,14743
+      subroutine KSPGetConvergedReason(488,14958
+      subroutine KSPSetDM(494,15159
+      subroutine KSPSetDMActive(500,15306
+      subroutine KSPGetDM(506,15475
+      subroutine KSPCheckSolve(512,15622
+      subroutine KSPInitialResidual(519,15805
+      subroutine KSPUnwindPreconditioner(529,16059
+      subroutine KSPComputeOperator(536,16260
+      subroutine KSPComputeEigenvaluesExplicitly(543,16459
+      subroutine KSPSetNormType(551,16734
+      subroutine KSPSetCheckNormIteration(557,16907
+      subroutine KSPSetLagNorm(563,17094
+      subroutine KSPSetSupportedNorm(569,17261
+      subroutine KSPGetNormType(577,17502
+      subroutine KSPSetOperators(583,17675
+      subroutine KSPGetOperators(590,17860
+      subroutine KSPCreate(597,18045
+      subroutine KSPComputeExtremeSingularValues(603,18202
+      subroutine KSPComputeEigenvalues(610,18438
+      subroutine KSPComputeRitz(619,18724
+      subroutine KSPSetUpOnBlocks(630,19061
+      subroutine KSPSetReusePreconditioner(635,19201
+      subroutine KSPGetReusePreconditioner(641,19392
+      subroutine KSPSetSkipPCSetFromOptions(647,19583
+      subroutine KSPSetUp(653,19776
+      subroutine KSPConvergedReasonViewCancel(658,19900
+      subroutine KSPConvergedReasonViewFromOptions(663,20064
+      subroutine KSPSolve(668,20238
+      subroutine KSPSolveTranspose(675,20409
+      subroutine KSPMatSolve(682,20598
+      subroutine KSPSetMatSolveBatchSize(689,20775
+      subroutine KSPGetMatSolveBatchSize(695,20960
+      subroutine KSPResetViewers(701,21145
+      subroutine KSPReset(706,21283
+      subroutine KSPSetPCSide(711,21407
+      subroutine KSPGetPCSide(717,21566
+      subroutine KSPGetTolerances(723,21725
+      subroutine KSPSetTolerances(732,21995
+      subroutine KSPSetInitialGuessNonzero(741,22265
+      subroutine KSPGetInitialGuessNonzero(747,22456
+      subroutine KSPSetErrorIfNotConverged(753,22647
+      subroutine KSPGetErrorIfNotConverged(759,22838
+      subroutine KSPSetInitialGuessKnoll(765,23029
+      subroutine KSPGetInitialGuessKnoll(771,23216
+      subroutine KSPGetComputeSingularValues(777,23403
+      subroutine KSPSetComputeSingularValues(783,23598
+      subroutine KSPGetComputeEigenvalues(789,23793
+      subroutine KSPSetComputeEigenvalues(795,23982
+      subroutine KSPSetComputeRitz(801,24171
+      subroutine KSPGetRhs(807,24346
+      subroutine KSPGetSolution(813,24498
+      subroutine KSPSetPC(819,24660
+      subroutine KSPGetPC(825,24807
+      subroutine KSPMonitor(831,24954
+      subroutine KSPMonitorCancel(838,25146
+      subroutine KSPSetResidualHistory(843,25286
+      subroutine KSPSetErrorHistory(851,25537
+      subroutine KSPSetDiagonalScale(859,25782
+      subroutine KSPGetDiagonalScale(865,25961
+      subroutine KSPSetDiagonalScaleFix(871,26140
+      subroutine KSPGetDiagonalScaleFix(877,26325
+      subroutine KSPSetUseExplicitTranspose(883,26510
       subroutine DMGlobalToLocalSolve(889,26703
       subroutine MatLMVMUpdate(896,26895
       subroutine MatLMVMClearJ0(903,27076
@@ -48473,6 +48473,11 @@
 static char help[help2,1
 int main(36,1123
 
+src/dm/tests/ex53.c,44
+ex53.c:^?ex53.c^A,1
+static char help[help1,0
+int main(15,580
+
 src/dm/tests/makefile,47
 makefile:^?makefile^A,1
 LOCDIR 3,31
@@ -48501,11 +48506,6 @@
 static char help[help1,0
 int main(7,138
 
-src/dm/tests/ex53.c,44
-ex53.c:^?ex53.c^A,1
-static char help[help1,0
-int main(15,579
-
 src/dm/tests/ex52.c,43
 ex52.c:^?ex52.c^A,1
 static char help[help2,1
@@ -48820,16 +48820,16 @@
 LOCDIR 5,75
 MANSEC 6,106
 
-src/dm/partitioner/tests/makefile,26
-makefile:^?makefile^A,1
-LOCDIR 3,34
-MANSEC 4,78
-
 src/dm/partitioner/tests/ex33.c,42
 ex33.c:^?ex33.c^A,1
 static char help[help1,0
 int main(5,84
 
+src/dm/partitioner/tests/makefile,26
+makefile:^?makefile^A,1
+LOCDIR 3,34
+MANSEC 4,78
+
 src/dm/partitioner/interface/partitionerreg.c,426
 partitionerreg.c:^?partitionerreg.c^A,1
 PetscClassId PETSCPARTITIONER_CLASSID 3,73
@@ -49189,40 +49189,6 @@
 PETSC_EXTERN void dmlabelview_(15,512
 PETSC_EXTERN void  petscsectionsymlabelsetstratum_(22,699
 
-src/dm/interface/dmcoordinates.c,1519
-dmcoordinates.c:^?dmcoordinates.c^A,1
-PetscErrorCode DMRestrictHook_Coordinates(6,180
-static PetscErrorCode DMSubDomainHook_Coordinates(28,950
-PetscErrorCode DMGetCoordinateDM(76,2942
-PetscErrorCode DMSetCoordinateDM(109,4013
-PetscErrorCode DMGetCellCoordinateDM(139,5009
-PetscErrorCode DMSetCellCoordinateDM(165,5894
-PetscErrorCode DMGetCoordinateDim(197,6800
-PetscErrorCode DMSetCoordinateDim(220,7457
-PetscErrorCode DMGetCoordinateSection(260,8377
-PetscErrorCode DMSetCoordinateSection(286,9063
-PetscErrorCode DMGetCellCoordinateSection(337,10564
-PetscErrorCode DMSetCellCoordinateSection(364,11408
-PetscErrorCode DMGetCoordinates(418,13142
-PetscErrorCode DMSetCoordinates(454,14308
-PetscErrorCode DMGetCellCoordinates(489,15466
-PetscErrorCode DMSetCellCoordinates(525,16675
-PetscErrorCode DMGetCoordinatesLocalSetUp(549,17376
-PetscErrorCode DMGetCoordinatesLocal(592,18886
-PetscErrorCode DMGetCoordinatesLocalNoncollective(620,19760
-PetscErrorCode DMGetCoordinatesLocalTuple(657,21272
-PetscErrorCode DMSetCoordinatesLocal(713,23407
-PetscErrorCode DMGetCellCoordinatesLocalSetUp(737,24109
-PetscErrorCode DMGetCellCoordinatesLocal(773,25291
-PetscErrorCode DMGetCellCoordinatesLocalNoncollective(798,26083
-PetscErrorCode DMSetCellCoordinatesLocal(828,27117
-PetscErrorCode DMGetCoordinateField(840,27503
-PetscErrorCode DMSetCoordinateField(852,27886
-PetscErrorCode DMGetLocalBoundingBox(882,28767
-PetscErrorCode DMGetBoundingBox(951,30992
-PetscErrorCode DMProjectCoordinates(988,32493
-PetscErrorCode DMLocatePoints(1108,37408
-
 src/dm/interface/dm.c,13081
 dm.c:^?dm.c^A,1
 PetscClassId DM_CLASSID;18,489
@@ -49258,224 +49224,258 @@
 PetscErrorCode MatGetDM(433,14322
 PetscErrorCode MatSetDM(462,15090
 PetscErrorCode DMSetOptionsPrefix(488,15840
-PetscErrorCode DMAppendOptionsPrefix(517,16980
-PetscErrorCode DMGetOptionsPrefix(545,17709
-static PetscErrorCode DMCountNonCyclicReferences_Internal(553,17939
-PetscErrorCode DMCountNonCyclicReferences(582,18802
-PetscErrorCode DMDestroyLabelLinkList_Internal(589,19023
-PetscErrorCode DMDestroyCoordinates_Private(608,19491
-PetscErrorCode DMDestroy(631,20069
-PetscErrorCode DMSetUp(816,26435
-PetscErrorCode DMSetFromOptions(893,31502
-PetscErrorCode DMViewFromOptions(935,33782
-PetscErrorCode DMView(963,35017
-PetscErrorCode DMCreateGlobalVector(1017,37073
-PetscErrorCode DMCreateLocalVector(1051,38122
-PetscErrorCode DMGetLocalToGlobalMapping(1090,39440
-PetscErrorCode DMGetBlockSize(1177,42700
-PetscErrorCode DMCreateInterpolation(1212,44299
-PetscErrorCode DMCreateInterpolationScale(1245,45715
-PetscErrorCode DMCreateRestriction(1295,47640
-PetscErrorCode DMCreateInjection(1331,49310
-PetscErrorCode DMCreateMassMatrix(1365,50517
-PetscErrorCode DMCreateMassMatrixLumped(1395,51490
-PetscErrorCode DMCreateColoring(1427,52774
-PetscErrorCode DMCreateMatrix(1467,54320
-PetscErrorCode DMSetMatrixPreallocateSkip(1522,56210
-PetscErrorCode DMSetMatrixPreallocateOnly(1547,56989
-PetscErrorCode DMSetMatrixStructureOnly(1569,57589
-PetscErrorCode DMGetWorkArray(1599,58381
-PetscErrorCode DMRestoreWorkArray(1649,59828
-PetscErrorCode DMSetNullSpaceConstructor(1695,61340
-PetscErrorCode DMGetNullSpaceConstructor(1732,62659
-PetscErrorCode DMSetNearNullSpaceConstructor(1769,64026
-PetscErrorCode DMGetNearNullSpaceConstructor(1807,65393
-PetscErrorCode DMCreateFieldIS(1847,66967
-PetscErrorCode DMCreateFieldDecomposition(1976,71934
-PetscErrorCode DMCreateSubDM(2053,74904
-PetscErrorCode DMCreateSuperDM(2084,76019
-PetscErrorCode DMCreateDomainDecomposition(2132,78362
-PetscErrorCode DMCreateDomainDecompositionScatters(2209,81227
-PetscErrorCode DMRefine(2240,82186
-PetscErrorCode DMRefineHookAdd(2307,84584
-PetscErrorCode DMRefineHookRemove(2347,86146
-PetscErrorCode DMInterpolate(2382,87323
-PetscErrorCode DMInterpolateSolution(2422,88789
-PetscErrorCode DMGetRefineLevel(2459,90188
-PetscErrorCode DMSetRefineLevel(2485,90962
-PetscErrorCode DMExtrude(2512,91543
-PetscErrorCode DMGetBasisTransformDM_Internal(2526,91988
-PetscErrorCode DMGetBasisTransformVec_Internal(2535,92205
-PetscErrorCode DMHasBasisTransform(2557,92804
-PetscErrorCode DMConstructBasisTransform_Internal(2569,93101
-PetscErrorCode DMCopyTransform(2617,94928
-PetscErrorCode DMGlobalToLocalHookAdd(2663,96551
-static PetscErrorCode DMGlobalToLocalHook_Constraints(2679,97137
-PetscErrorCode DMGlobalToLocal(2735,99194
-PetscErrorCode DMGlobalToLocalBegin(2767,100388
-PetscErrorCode DMGlobalToLocalEnd(2813,102121
-PetscErrorCode DMLocalToGlobalHookAdd(2878,104531
-static PetscErrorCode DMLocalToGlobalHook_Constraints(2894,105117
-PetscErrorCode DMLocalToGlobal(2954,107608
-PetscErrorCode DMLocalToGlobalBegin(2988,109016
-PetscErrorCode DMLocalToGlobalEnd(3116,114087
-PetscErrorCode DMLocalToLocalBegin(3189,116741
-PetscErrorCode DMLocalToLocalEnd(3215,117732
-PetscErrorCode DMCoarsen(3239,118489
-PetscErrorCode DMCoarsenHookAdd(3310,121505
-PetscErrorCode DMCoarsenHookRemove(3349,122966
-PetscErrorCode DMRestrict(3385,124297
-PetscErrorCode DMSubDomainHookAdd(3438,126263
-PetscErrorCode DMSubDomainHookRemove(3474,127683
-PetscErrorCode DMSubDomainRestrict(3506,128801
-PetscErrorCode DMGetCoarsenLevel(3532,129547
-PetscErrorCode DMSetCoarsenLevel(3557,130281
-PetscErrorCode DMRefineHierarchy(3581,130867
-PetscErrorCode DMCoarsenHierarchy(3615,132063
-PetscErrorCode DMSetApplicationContextDestroy(3646,133370
-PetscErrorCode DMSetApplicationContext(3670,134108
-PetscErrorCode DMGetApplicationContext(3696,134826
-PetscErrorCode DMSetVariableBounds(3718,135595
-PetscErrorCode DMHasVariableBounds(3741,136282
-PetscErrorCode DMComputeVariableBounds(3769,137110
-PetscErrorCode DMHasColoring(3794,137731
-PetscErrorCode DMHasCreateRestriction(3818,138358
-PetscErrorCode DMHasCreateInjection(3842,138995
-PetscFunctionList DMList 3852,139340
-PetscBool         DMRegisterAllCalled 3853,139386
-PetscErrorCode DMSetType(3874,140021
-PetscErrorCode DMGetType(3910,140966
-PetscErrorCode DMConvert(3941,141752
-PetscErrorCode DMRegister(4062,146060
-PetscErrorCode DMLoad(4101,147552
-PetscErrorCode DMPrintCellVector(4130,148883
-PetscErrorCode DMPrintCellMatrix(4140,149255
-PetscErrorCode DMPrintLocalVec(4154,149797
-PetscErrorCode DMGetSection(4205,151391
-PetscErrorCode DMGetLocalSection(4231,151997
-PetscErrorCode DMSetSection(4280,153623
-PetscErrorCode DMSetLocalSection(4301,154090
-PetscErrorCode DMGetDefaultConstraints(4349,155942
-PetscErrorCode DMSetDefaultConstraints(4382,158383
-static PetscErrorCode DMDefaultSectionCheckConsistency_Internal(4428,160457
-PetscErrorCode DMGetGlobalSection(4511,163708
-PetscErrorCode DMSetGlobalSection(4545,165009
-PetscErrorCode DMGetSectionSF(4576,165956
-PetscErrorCode DMSetSectionSF(4615,166926
-PetscErrorCode DMCreateSectionSF(4647,168041
-PetscErrorCode DMGetPointSF(4673,168760
-PetscErrorCode DMSetPointSF(4695,169245
-PetscErrorCode DMGetNaturalSF(4722,169974
-PetscErrorCode DMSetNaturalSF(4742,170476
-static PetscErrorCode DMSetDefaultAdjacency_Private(4753,170804
-static PetscErrorCode DMFieldEnlarge_Static(4769,171286
-PetscErrorCode DMClearFields(4801,172023
-PetscErrorCode DMGetNumFields(4832,172627
-PetscErrorCode DMSetNumFields(4854,173070
-PetscErrorCode DMGetField(4888,173963
-PetscErrorCode DMSetField_Internal(4900,174446
-PetscErrorCode DMSetField(4929,175356
-PetscErrorCode DMAddField(4964,176926
-PetscErrorCode DMSetFieldAvoidTensor(4996,177877
-PetscErrorCode DMGetFieldAvoidTensor(5020,178637
-PetscErrorCode DMCopyFields(5043,179283
-PetscErrorCode DMGetAdjacency(5087,180797
-PetscErrorCode DMSetAdjacency(5128,182427
-PetscErrorCode DMGetBasicAdjacency(5167,183826
-PetscErrorCode DMSetBasicAdjacency(5203,185137
-PetscErrorCode DMCompleteBCLabels_Internal(5218,185532
-static PetscErrorCode DMDSEnlarge_Static(5304,188803
-PetscErrorCode DMGetNumDS(5339,189546
-PetscErrorCode DMClearDS(5360,189948
-PetscErrorCode DMGetDS(5392,190572
-PetscErrorCode DMGetCellDS(5424,191234
-PetscErrorCode DMGetRegionDS(5473,192650
-PetscErrorCode DMSetRegionDS(5517,193969
-PetscErrorCode DMGetRegionNumDS(5565,195455
-PetscErrorCode DMSetRegionNumDS(5604,196631
-PetscErrorCode DMFindRegionNum(5647,198060
-PetscErrorCode DMCreateFEDefault(5684,199084
-PetscErrorCode DMCreateDS(5720,200237
-PetscErrorCode DMComputeExactSolution(5959,208735
-PetscErrorCode DMTransferDS_Internal(6023,211168
-PetscErrorCode DMCopyDS(6077,213004
-PetscErrorCode DMCopyDisc(6128,214423
-PetscErrorCode DMGetDimension(6151,214835
-PetscErrorCode DMSetDimension(6173,215260
-PetscErrorCode DMGetDimPoints(6214,216377
-PetscErrorCode DMGetOutputDM(6246,217631
-PetscErrorCode DMGetOutputSequenceNumber(6301,219378
-PetscErrorCode DMSetOutputSequenceNumber(6332,220152
-PetscErrorCode DMOutputSequenceLoad(6363,221019
-PetscErrorCode DMGetUseNatural(6398,222083
-PetscErrorCode DMSetUseNatural(6423,222812
-PetscErrorCode DMCreateLabel(6445,223376
-PetscErrorCode DMCreateLabelAtIndex(6476,224213
-PetscErrorCode DMGetLabelValue(6532,225864
-PetscErrorCode DMSetLabelValue(6562,226637
-PetscErrorCode DMClearLabelValue(6593,227404
-PetscErrorCode DMGetLabelSize(6625,228254
-PetscErrorCode DMGetLabelIdIS(6656,228981
-PetscErrorCode DMGetStratumSize(6692,229839
-PetscErrorCode DMGetStratumIS(6724,230632
-PetscErrorCode DMSetStratumIS(6754,231398
-PetscErrorCode DMClearLabelStratum(6784,232164
-PetscErrorCode DMGetNumLabels(6812,232866
-PetscErrorCode DMGetLabelName(6847,233649
-PetscErrorCode DMHasLabel(6882,234565
-PetscErrorCode DMGetLabel(6925,235975
-PetscErrorCode DMGetLabelByNum(6964,236845
-PetscErrorCode DMAddLabel(6996,237607
-PetscErrorCode DMSetLabel(7042,239287
-PetscErrorCode DMRemoveLabel(7087,240716
-PetscErrorCode DMRemoveLabelBySelf(7137,242288
-PetscErrorCode DMGetLabelOutput(7180,243742
-PetscErrorCode DMSetLabelOutput(7217,244821
-PetscErrorCode DMCopyLabels(7258,246195
-PetscErrorCode DMCompareLabels(7346,249240
-PetscErrorCode DMSetLabelValue_Fast(7407,251466
-PetscErrorCode DMUniversalLabelCreate(7427,252216
-PetscErrorCode DMUniversalLabelDestroy(7526,255523
-PetscErrorCode DMUniversalLabelGetLabel(7540,256033
-PetscErrorCode DMUniversalLabelCreateLabels(7548,256219
-PetscErrorCode DMUniversalLabelSetLabelValue(7571,257021
-PetscErrorCode DMGetCoarseDM(7604,257834
-PetscErrorCode DMSetCoarseDM(7627,258358
-PetscErrorCode DMGetFineDM(7652,258961
-PetscErrorCode DMSetFineDM(7675,259446
-PetscErrorCode DMAddBoundary(7747,262583
-static PetscErrorCode DMPopulateBoundary(7780,263939
-PetscErrorCode DMIsBoundaryPoint(7820,264943
-PetscErrorCode DMProjectFunction(7877,266657
-PetscErrorCode DMProjectFunctionLocal(7924,268335
-PetscErrorCode DMProjectFunctionLabel(7967,270019
-PetscErrorCode DMProjectFunctionLabelLocal(8015,271990
-PetscErrorCode DMProjectFieldLocal(8079,275438
-PetscErrorCode DMProjectFieldLabelLocal(8149,279419
-PetscErrorCode DMProjectFieldLabel(8219,283529
-PetscErrorCode DMProjectBdFieldLabelLocal(8300,288048
-PetscErrorCode DMComputeL2Diff(8334,289668
-PetscErrorCode DMComputeL2GradientDiff(8368,290919
-PetscErrorCode DMComputeL2FieldDiff(8401,292204
-PetscErrorCode DMGetNeighbors(8429,293013
-PetscErrorCode MatFDColoringApply_AIJDM(8443,293534
-PetscErrorCode MatFDColoringUseDM(8478,294721
-PetscErrorCode DMGetCompatibility(8563,298282
-PetscErrorCode DMMonitorSet(8640,301082
-PetscErrorCode DMMonitorCancel(8679,302419
-PetscErrorCode DMMonitorSetFromOptions(8718,304031
-PetscErrorCode DMMonitor(8753,305367
-PetscErrorCode DMComputeError(8787,306339
-PetscErrorCode DMGetNumAuxiliaryVec(8869,309416
-PetscErrorCode DMGetAuxiliaryVec(8898,310210
-PetscErrorCode DMSetAuxiliaryVec(8931,311272
-PetscErrorCode DMGetAuxiliaryLabels(8970,312477
-PetscErrorCode DMCopyAuxiliaryVec(9010,313510
-PetscErrorCode DMPolytopeMatchOrientation(9045,314902
-PetscErrorCode DMPolytopeGetOrientation(9094,316520
-PetscErrorCode DMPolytopeMatchVertexOrientation(9130,318033
-PetscErrorCode DMPolytopeGetVertexOrientation(9179,319627
-PetscErrorCode DMPolytopeInCellTest(9205,320435
+PetscErrorCode DMAppendOptionsPrefix(517,16981
+PetscErrorCode DMGetOptionsPrefix(545,17710
+static PetscErrorCode DMCountNonCyclicReferences_Internal(553,17940
+PetscErrorCode DMCountNonCyclicReferences(582,18803
+PetscErrorCode DMDestroyLabelLinkList_Internal(589,19024
+PetscErrorCode DMDestroyCoordinates_Private(608,19492
+PetscErrorCode DMDestroy(631,20070
+PetscErrorCode DMSetUp(816,26436
+PetscErrorCode DMSetFromOptions(893,31503
+PetscErrorCode DMViewFromOptions(935,33783
+PetscErrorCode DMView(963,35018
+PetscErrorCode DMCreateGlobalVector(1017,37074
+PetscErrorCode DMCreateLocalVector(1051,38123
+PetscErrorCode DMGetLocalToGlobalMapping(1090,39441
+PetscErrorCode DMGetBlockSize(1177,42701
+PetscErrorCode DMCreateInterpolation(1212,44300
+PetscErrorCode DMCreateInterpolationScale(1245,45716
+PetscErrorCode DMCreateRestriction(1295,47641
+PetscErrorCode DMCreateInjection(1331,49311
+PetscErrorCode DMCreateMassMatrix(1365,50518
+PetscErrorCode DMCreateMassMatrixLumped(1395,51491
+PetscErrorCode DMCreateColoring(1427,52775
+PetscErrorCode DMCreateMatrix(1467,54321
+PetscErrorCode DMSetMatrixPreallocateSkip(1522,56211
+PetscErrorCode DMSetMatrixPreallocateOnly(1547,56990
+PetscErrorCode DMSetMatrixStructureOnly(1569,57591
+PetscErrorCode DMGetWorkArray(1599,58384
+PetscErrorCode DMRestoreWorkArray(1649,59831
+PetscErrorCode DMSetNullSpaceConstructor(1695,61343
+PetscErrorCode DMGetNullSpaceConstructor(1732,62662
+PetscErrorCode DMSetNearNullSpaceConstructor(1769,64029
+PetscErrorCode DMGetNearNullSpaceConstructor(1807,65396
+PetscErrorCode DMCreateFieldIS(1847,66970
+PetscErrorCode DMCreateFieldDecomposition(1976,71937
+PetscErrorCode DMCreateSubDM(2053,74907
+PetscErrorCode DMCreateSuperDM(2084,76022
+PetscErrorCode DMCreateDomainDecomposition(2132,78365
+PetscErrorCode DMCreateDomainDecompositionScatters(2209,81230
+PetscErrorCode DMRefine(2240,82189
+PetscErrorCode DMRefineHookAdd(2307,84587
+PetscErrorCode DMRefineHookRemove(2347,86149
+PetscErrorCode DMInterpolate(2382,87326
+PetscErrorCode DMInterpolateSolution(2422,88792
+PetscErrorCode DMGetRefineLevel(2459,90191
+PetscErrorCode DMSetRefineLevel(2485,90965
+PetscErrorCode DMExtrude(2512,91546
+PetscErrorCode DMGetBasisTransformDM_Internal(2526,91991
+PetscErrorCode DMGetBasisTransformVec_Internal(2535,92208
+PetscErrorCode DMHasBasisTransform(2557,92807
+PetscErrorCode DMConstructBasisTransform_Internal(2569,93104
+PetscErrorCode DMCopyTransform(2617,94931
+PetscErrorCode DMGlobalToLocalHookAdd(2663,96554
+static PetscErrorCode DMGlobalToLocalHook_Constraints(2679,97140
+PetscErrorCode DMGlobalToLocal(2735,99197
+PetscErrorCode DMGlobalToLocalBegin(2767,100391
+PetscErrorCode DMGlobalToLocalEnd(2813,102124
+PetscErrorCode DMLocalToGlobalHookAdd(2878,104534
+static PetscErrorCode DMLocalToGlobalHook_Constraints(2894,105120
+PetscErrorCode DMLocalToGlobal(2954,107611
+PetscErrorCode DMLocalToGlobalBegin(2988,109019
+PetscErrorCode DMLocalToGlobalEnd(3116,114090
+PetscErrorCode DMLocalToLocalBegin(3189,116744
+PetscErrorCode DMLocalToLocalEnd(3215,117735
+PetscErrorCode DMCoarsen(3239,118492
+PetscErrorCode DMCoarsenHookAdd(3310,121508
+PetscErrorCode DMCoarsenHookRemove(3349,122969
+PetscErrorCode DMRestrict(3385,124300
+PetscErrorCode DMSubDomainHookAdd(3438,126266
+PetscErrorCode DMSubDomainHookRemove(3474,127686
+PetscErrorCode DMSubDomainRestrict(3506,128804
+PetscErrorCode DMGetCoarsenLevel(3532,129550
+PetscErrorCode DMSetCoarsenLevel(3557,130284
+PetscErrorCode DMRefineHierarchy(3581,130870
+PetscErrorCode DMCoarsenHierarchy(3615,132066
+PetscErrorCode DMSetApplicationContextDestroy(3646,133373
+PetscErrorCode DMSetApplicationContext(3670,134111
+PetscErrorCode DMGetApplicationContext(3696,134829
+PetscErrorCode DMSetVariableBounds(3718,135598
+PetscErrorCode DMHasVariableBounds(3741,136285
+PetscErrorCode DMComputeVariableBounds(3769,137113
+PetscErrorCode DMHasColoring(3794,137734
+PetscErrorCode DMHasCreateRestriction(3818,138361
+PetscErrorCode DMHasCreateInjection(3842,138998
+PetscFunctionList DMList 3852,139343
+PetscBool         DMRegisterAllCalled 3853,139389
+PetscErrorCode DMSetType(3874,140024
+PetscErrorCode DMGetType(3910,140969
+PetscErrorCode DMConvert(3941,141755
+PetscErrorCode DMRegister(4062,146063
+PetscErrorCode DMLoad(4101,147555
+PetscErrorCode DMPrintCellVector(4130,148886
+PetscErrorCode DMPrintCellMatrix(4140,149258
+PetscErrorCode DMPrintLocalVec(4154,149800
+PetscErrorCode DMGetSection(4205,151394
+PetscErrorCode DMGetLocalSection(4231,152000
+PetscErrorCode DMSetSection(4280,153626
+PetscErrorCode DMSetLocalSection(4301,154093
+PetscErrorCode DMGetDefaultConstraints(4349,155945
+PetscErrorCode DMSetDefaultConstraints(4382,158386
+static PetscErrorCode DMDefaultSectionCheckConsistency_Internal(4428,160460
+PetscErrorCode DMGetGlobalSection(4511,163711
+PetscErrorCode DMSetGlobalSection(4545,165012
+PetscErrorCode DMGetSectionSF(4576,165959
+PetscErrorCode DMSetSectionSF(4615,166929
+PetscErrorCode DMCreateSectionSF(4647,168044
+PetscErrorCode DMGetPointSF(4673,168763
+PetscErrorCode DMSetPointSF(4695,169248
+PetscErrorCode DMGetNaturalSF(4722,169977
+PetscErrorCode DMSetNaturalSF(4742,170479
+static PetscErrorCode DMSetDefaultAdjacency_Private(4753,170807
+static PetscErrorCode DMFieldEnlarge_Static(4769,171289
+PetscErrorCode DMClearFields(4801,172026
+PetscErrorCode DMGetNumFields(4832,172630
+PetscErrorCode DMSetNumFields(4854,173073
+PetscErrorCode DMGetField(4888,173966
+PetscErrorCode DMSetField_Internal(4900,174449
+PetscErrorCode DMSetField(4929,175359
+PetscErrorCode DMAddField(4964,176930
+PetscErrorCode DMSetFieldAvoidTensor(4996,177881
+PetscErrorCode DMGetFieldAvoidTensor(5020,178641
+PetscErrorCode DMCopyFields(5043,179287
+PetscErrorCode DMGetAdjacency(5087,180801
+PetscErrorCode DMSetAdjacency(5128,182431
+PetscErrorCode DMGetBasicAdjacency(5167,183830
+PetscErrorCode DMSetBasicAdjacency(5203,185141
+PetscErrorCode DMCompleteBCLabels_Internal(5218,185536
+static PetscErrorCode DMDSEnlarge_Static(5304,188807
+PetscErrorCode DMGetNumDS(5339,189550
+PetscErrorCode DMClearDS(5360,189952
+PetscErrorCode DMGetDS(5392,190576
+PetscErrorCode DMGetCellDS(5424,191238
+PetscErrorCode DMGetRegionDS(5473,192654
+PetscErrorCode DMSetRegionDS(5517,193973
+PetscErrorCode DMGetRegionNumDS(5565,195459
+PetscErrorCode DMSetRegionNumDS(5604,196635
+PetscErrorCode DMFindRegionNum(5647,198064
+PetscErrorCode DMCreateFEDefault(5684,199088
+PetscErrorCode DMCreateDS(5720,200241
+PetscErrorCode DMComputeExactSolution(5959,208739
+PetscErrorCode DMTransferDS_Internal(6023,211172
+PetscErrorCode DMCopyDS(6077,213008
+PetscErrorCode DMCopyDisc(6128,214427
+PetscErrorCode DMGetDimension(6151,214839
+PetscErrorCode DMSetDimension(6173,215264
+PetscErrorCode DMGetDimPoints(6214,216381
+PetscErrorCode DMGetOutputDM(6246,217635
+PetscErrorCode DMGetOutputSequenceNumber(6301,219382
+PetscErrorCode DMSetOutputSequenceNumber(6332,220156
+PetscErrorCode DMOutputSequenceLoad(6363,221023
+PetscErrorCode DMGetUseNatural(6398,222087
+PetscErrorCode DMSetUseNatural(6423,222816
+PetscErrorCode DMCreateLabel(6445,223380
+PetscErrorCode DMCreateLabelAtIndex(6476,224217
+PetscErrorCode DMGetLabelValue(6532,225868
+PetscErrorCode DMSetLabelValue(6562,226641
+PetscErrorCode DMClearLabelValue(6593,227408
+PetscErrorCode DMGetLabelSize(6625,228258
+PetscErrorCode DMGetLabelIdIS(6656,228985
+PetscErrorCode DMGetStratumSize(6692,229843
+PetscErrorCode DMGetStratumIS(6724,230636
+PetscErrorCode DMSetStratumIS(6754,231402
+PetscErrorCode DMClearLabelStratum(6784,232168
+PetscErrorCode DMGetNumLabels(6812,232870
+PetscErrorCode DMGetLabelName(6847,233653
+PetscErrorCode DMHasLabel(6882,234569
+PetscErrorCode DMGetLabel(6925,235979
+PetscErrorCode DMGetLabelByNum(6964,236849
+PetscErrorCode DMAddLabel(6996,237611
+PetscErrorCode DMSetLabel(7042,239291
+PetscErrorCode DMRemoveLabel(7087,240720
+PetscErrorCode DMRemoveLabelBySelf(7137,242292
+PetscErrorCode DMGetLabelOutput(7180,243746
+PetscErrorCode DMSetLabelOutput(7217,244825
+PetscErrorCode DMCopyLabels(7258,246199
+PetscErrorCode DMCompareLabels(7346,249244
+PetscErrorCode DMSetLabelValue_Fast(7407,251470
+PetscErrorCode DMUniversalLabelCreate(7427,252220
+PetscErrorCode DMUniversalLabelDestroy(7526,255527
+PetscErrorCode DMUniversalLabelGetLabel(7540,256037
+PetscErrorCode DMUniversalLabelCreateLabels(7548,256223
+PetscErrorCode DMUniversalLabelSetLabelValue(7571,257025
+PetscErrorCode DMGetCoarseDM(7604,257838
+PetscErrorCode DMSetCoarseDM(7627,258362
+PetscErrorCode DMGetFineDM(7652,258965
+PetscErrorCode DMSetFineDM(7675,259450
+PetscErrorCode DMAddBoundary(7747,262587
+static PetscErrorCode DMPopulateBoundary(7780,263943
+PetscErrorCode DMIsBoundaryPoint(7820,264947
+PetscErrorCode DMProjectFunction(7877,266661
+PetscErrorCode DMProjectFunctionLocal(7924,268339
+PetscErrorCode DMProjectFunctionLabel(7967,270023
+PetscErrorCode DMProjectFunctionLabelLocal(8015,271994
+PetscErrorCode DMProjectFieldLocal(8079,275442
+PetscErrorCode DMProjectFieldLabelLocal(8149,279423
+PetscErrorCode DMProjectFieldLabel(8219,283533
+PetscErrorCode DMProjectBdFieldLabelLocal(8300,288052
+PetscErrorCode DMComputeL2Diff(8334,289672
+PetscErrorCode DMComputeL2GradientDiff(8368,290923
+PetscErrorCode DMComputeL2FieldDiff(8401,292208
+PetscErrorCode DMGetNeighbors(8429,293017
+PetscErrorCode MatFDColoringApply_AIJDM(8443,293538
+PetscErrorCode MatFDColoringUseDM(8478,294725
+PetscErrorCode DMGetCompatibility(8563,298286
+PetscErrorCode DMMonitorSet(8640,301086
+PetscErrorCode DMMonitorCancel(8679,302423
+PetscErrorCode DMMonitorSetFromOptions(8718,304035
+PetscErrorCode DMMonitor(8753,305371
+PetscErrorCode DMComputeError(8787,306343
+PetscErrorCode DMGetNumAuxiliaryVec(8869,309420
+PetscErrorCode DMGetAuxiliaryVec(8898,310214
+PetscErrorCode DMSetAuxiliaryVec(8931,311277
+PetscErrorCode DMGetAuxiliaryLabels(8970,312482
+PetscErrorCode DMCopyAuxiliaryVec(9010,313515
+PetscErrorCode DMPolytopeMatchOrientation(9045,314907
+PetscErrorCode DMPolytopeGetOrientation(9094,316525
+PetscErrorCode DMPolytopeMatchVertexOrientation(9130,318038
+PetscErrorCode DMPolytopeGetVertexOrientation(9179,319632
+PetscErrorCode DMPolytopeInCellTest(9205,320440
+
+src/dm/interface/dmcoordinates.c,1519
+dmcoordinates.c:^?dmcoordinates.c^A,1
+PetscErrorCode DMRestrictHook_Coordinates(6,180
+static PetscErrorCode DMSubDomainHook_Coordinates(28,950
+PetscErrorCode DMGetCoordinateDM(76,2942
+PetscErrorCode DMSetCoordinateDM(109,4013
+PetscErrorCode DMGetCellCoordinateDM(139,5009
+PetscErrorCode DMSetCellCoordinateDM(165,5894
+PetscErrorCode DMGetCoordinateDim(197,6800
+PetscErrorCode DMSetCoordinateDim(220,7457
+PetscErrorCode DMGetCoordinateSection(260,8377
+PetscErrorCode DMSetCoordinateSection(286,9063
+PetscErrorCode DMGetCellCoordinateSection(337,10564
+PetscErrorCode DMSetCellCoordinateSection(364,11408
+PetscErrorCode DMGetCoordinates(418,13142
+PetscErrorCode DMSetCoordinates(454,14308
+PetscErrorCode DMGetCellCoordinates(489,15466
+PetscErrorCode DMSetCellCoordinates(525,16675
+PetscErrorCode DMGetCoordinatesLocalSetUp(549,17376
+PetscErrorCode DMGetCoordinatesLocal(592,18886
+PetscErrorCode DMGetCoordinatesLocalNoncollective(620,19760
+PetscErrorCode DMGetCoordinatesLocalTuple(657,21272
+PetscErrorCode DMSetCoordinatesLocal(713,23407
+PetscErrorCode DMGetCellCoordinatesLocalSetUp(737,24109
+PetscErrorCode DMGetCellCoordinatesLocal(773,25291
+PetscErrorCode DMGetCellCoordinatesLocalNoncollective(798,26083
+PetscErrorCode DMSetCellCoordinatesLocal(828,27117
+PetscErrorCode DMGetCoordinateField(840,27503
+PetscErrorCode DMSetCoordinateField(852,27886
+PetscErrorCode DMGetLocalBoundingBox(882,28767
+PetscErrorCode DMGetBoundingBox(951,30992
+PetscErrorCode DMProjectCoordinates(988,32493
+PetscErrorCode DMLocatePoints(1108,37408
 
 src/dm/interface/dmget.c,565
 dmget.c:^?dmget.c^A,1
@@ -49614,6 +49614,20 @@
 LOCDIR 4,128
 MANSEC 5,153
 
+src/dm/impls/swarm/swarmpic_sort.c,581
+swarmpic_sort.c:^?swarmpic_sort.c^A,1
+int sort_CompareSwarmPoint(7,135
+PetscErrorCode DMSwarmSortApplyCellIndexSort(21,457
+PetscErrorCode DMSwarmSortCreate(28,650
+PetscErrorCode DMSwarmSortSetup(43,982
+PetscErrorCode DMSwarmSortDestroy(94,2647
+PetscErrorCode DMSwarmSortGetNumberOfPointsPerCell(126,3475
+PETSC_EXTERN PetscErrorCode DMSwarmSortGetPointsPerCell(163,5041
+PETSC_EXTERN PetscErrorCode DMSwarmSortGetAccess(226,8126
+PETSC_EXTERN PetscErrorCode DMSwarmSortRestoreAccess(284,10248
+PETSC_EXTERN PetscErrorCode DMSwarmSortGetIsValid(310,11012
+PETSC_EXTERN PetscErrorCode DMSwarmSortGetSizes(339,11737
+
 src/dm/impls/swarm/swarm.c,3971
 swarm.c:^?swarm.c^A,1
 #define PETSCDM_DLL1,0
@@ -49654,39 +49668,69 @@
 PetscErrorCode DMSwarmCreateLocalVectorFromField(716,29208
 PetscErrorCode DMSwarmDestroyLocalVectorFromField(741,29860
 PetscErrorCode DMSwarmInitializeFieldRegister(764,30517
-PetscErrorCode DMSwarmFinalizeFieldRegister(793,31456
-PetscErrorCode DMSwarmSetLocalSizes(817,32073
-PetscErrorCode DMSwarmSetCellDM(845,32833
-PetscErrorCode DMSwarmGetCellDM(869,33251
-PetscErrorCode DMSwarmGetLocalSize(893,33710
-PetscErrorCode DMSwarmGetSize(920,34301
-PetscErrorCode DMSwarmRegisterPetscDatatypeField(949,35191
-PetscErrorCode DMSwarmRegisterUserStructField(994,37428
-PetscErrorCode DMSwarmRegisterUserDatatypeField(1022,38318
-PetscErrorCode DMSwarmGetField(1059,39426
-PetscErrorCode DMSwarmRestoreField(1095,40499
-PetscErrorCode DMSwarmAddPoint(1122,41169
-PetscErrorCode DMSwarmAddNPoints(1150,41835
-PetscErrorCode DMSwarmRemovePoint(1176,42521
-PetscErrorCode DMSwarmRemovePointAtIndex(1200,43072
-PetscErrorCode DMSwarmCopyPoint(1225,43706
-PetscErrorCode DMSwarmMigrate_Basic(1235,43985
-PetscErrorCode DMSwarmMigrate(1260,44722
-PetscErrorCode DMSwarmCollectViewCreate(1315,46470
-PetscErrorCode DMSwarmCollectViewDestroy(1354,47727
-PetscErrorCode DMSwarmSetUpPIC(1365,48123
-PetscErrorCode DMSwarmSetPointCoordinatesRandom(1396,49219
-PetscErrorCode DMSwarmSetType(1458,51517
-PetscErrorCode DMSetup_Swarm(1468,51770
-PetscErrorCode DMDestroy_Swarm(1520,54194
-PetscErrorCode DMSwarmView_Draw(1532,54540
-static PetscErrorCode DMView_Swarm_Ascii(1562,55622
-PetscErrorCode DMView_Swarm(1611,57881
-PETSC_EXTERN PetscErrorCode DMSwarmGetCellSwarm(1671,59925
-PETSC_EXTERN PetscErrorCode DMSwarmRestoreCellSwarm(1719,61731
-static PetscErrorCode DMInitialize_Swarm(1739,62543
-PETSC_INTERN PetscErrorCode DMClone_Swarm(1775,64077
-PETSC_EXTERN PetscErrorCode DMCreate_Swarm(1839,66891
+PetscErrorCode DMSwarmFinalizeFieldRegister(793,31457
+PetscErrorCode DMSwarmSetLocalSizes(817,32074
+PetscErrorCode DMSwarmSetCellDM(845,32834
+PetscErrorCode DMSwarmGetCellDM(869,33252
+PetscErrorCode DMSwarmGetLocalSize(893,33711
+PetscErrorCode DMSwarmGetSize(920,34302
+PetscErrorCode DMSwarmRegisterPetscDatatypeField(949,35192
+PetscErrorCode DMSwarmRegisterUserStructField(994,37429
+PetscErrorCode DMSwarmRegisterUserDatatypeField(1022,38319
+PetscErrorCode DMSwarmGetField(1059,39427
+PetscErrorCode DMSwarmRestoreField(1095,40500
+PetscErrorCode DMSwarmAddPoint(1122,41170
+PetscErrorCode DMSwarmAddNPoints(1150,41836
+PetscErrorCode DMSwarmRemovePoint(1176,42522
+PetscErrorCode DMSwarmRemovePointAtIndex(1200,43073
+PetscErrorCode DMSwarmCopyPoint(1225,43707
+PetscErrorCode DMSwarmMigrate_Basic(1235,43986
+PetscErrorCode DMSwarmMigrate(1260,44723
+PetscErrorCode DMSwarmCollectViewCreate(1315,46471
+PetscErrorCode DMSwarmCollectViewDestroy(1354,47728
+PetscErrorCode DMSwarmSetUpPIC(1365,48124
+PetscErrorCode DMSwarmSetPointCoordinatesRandom(1396,49220
+PetscErrorCode DMSwarmSetType(1458,51518
+PetscErrorCode DMSetup_Swarm(1468,51771
+PetscErrorCode DMDestroy_Swarm(1520,54195
+PetscErrorCode DMSwarmView_Draw(1532,54541
+static PetscErrorCode DMView_Swarm_Ascii(1562,55623
+PetscErrorCode DMView_Swarm(1611,57882
+PETSC_EXTERN PetscErrorCode DMSwarmGetCellSwarm(1671,59926
+PETSC_EXTERN PetscErrorCode DMSwarmRestoreCellSwarm(1719,61732
+static PetscErrorCode DMInitialize_Swarm(1739,62544
+PETSC_INTERN PetscErrorCode DMClone_Swarm(1775,64078
+PETSC_EXTERN PetscErrorCode DMCreate_Swarm(1839,66892
+
+src/dm/impls/swarm/data_ex.c,1474
+data_ex.c:^?data_ex.c^A,1
+const char *status_names[status_names76,2041
+PETSC_EXTERN PetscLogEvent DMSWARM_DataExchangerTopologySetup;78,2112
+PETSC_EXTERN PetscLogEvent DMSWARM_DataExchangerBegin;79,2175
+PETSC_EXTERN PetscLogEvent DMSWARM_DataExchangerEnd;80,2230
+PETSC_EXTERN PetscLogEvent DMSWARM_DataExchangerSendCount;81,2283
+PETSC_EXTERN PetscLogEvent DMSWARM_DataExchangerPack;82,2342
+PetscErrorCode DMSwarmDataExCreate(84,2397
+PetscErrorCode DMSwarmDataExView(130,3581
+PetscErrorCode DMSwarmDataExDestroy(164,5706
+PetscErrorCode DMSwarmDataExTopologyInitialize(185,6597
+PetscErrorCode DMSwarmDataExTopologyAddNeighbour(200,7091
+static void _get_tags(262,9229
+PetscErrorCode _DMSwarmDataExCompleteCommunicationMap(275,9530
+PetscErrorCode DMSwarmDataExTopologyFinalize(334,12089
+PetscErrorCode _DMSwarmDataExConvertProcIdToLocalIndex(373,14146
+PetscErrorCode DMSwarmDataExInitializeSendCount(389,14499
+PetscErrorCode DMSwarmDataExAddToSendCount(404,15015
+PetscErrorCode DMSwarmDataExFinalizeSendCount(419,15858
+PetscErrorCode _DMSwarmDataExInitializeTmpStorage(437,16445
+PetscErrorCode DMSwarmDataExPackInitialize(458,16968
+PetscErrorCode DMSwarmDataExPackData(500,18733
+PetscErrorCode DMSwarmDataExPackFinalize(527,20429
+PetscErrorCode DMSwarmDataExBegin(559,22231
+PetscErrorCode DMSwarmDataExEnd(584,23615
+PetscErrorCode DMSwarmDataExGetSendData(617,25131
+PetscErrorCode DMSwarmDataExGetRecvData(626,25470
+PetscErrorCode DMSwarmDataExTopologyGetNeighbours(635,25814
 
 src/dm/impls/swarm/data_bucket.c,2668
 data_bucket.c:^?data_bucket.c^A,1
@@ -49750,20 +49794,6 @@
 PETSC_EXTERN PetscErrorCode DMSwarmViewFieldsXDMF(338,13891
 PETSC_EXTERN PetscErrorCode DMSwarmViewXDMF(396,16103
 
-src/dm/impls/swarm/swarmpic_sort.c,581
-swarmpic_sort.c:^?swarmpic_sort.c^A,1
-int sort_CompareSwarmPoint(7,135
-PetscErrorCode DMSwarmSortApplyCellIndexSort(21,457
-PetscErrorCode DMSwarmSortCreate(28,650
-PetscErrorCode DMSwarmSortSetup(43,982
-PetscErrorCode DMSwarmSortDestroy(94,2647
-PetscErrorCode DMSwarmSortGetNumberOfPointsPerCell(126,3475
-PETSC_EXTERN PetscErrorCode DMSwarmSortGetPointsPerCell(163,5042
-PETSC_EXTERN PetscErrorCode DMSwarmSortGetAccess(226,8127
-PETSC_EXTERN PetscErrorCode DMSwarmSortRestoreAccess(284,10249
-PETSC_EXTERN PetscErrorCode DMSwarmSortGetIsValid(310,11013
-PETSC_EXTERN PetscErrorCode DMSwarmSortGetSizes(339,11738
-
 src/dm/impls/swarm/swarmpic_plex.c,682
 swarmpic_plex.c:^?swarmpic_plex.c^A,1
 static PetscErrorCode private_PetscFECreateDefault_scalar_pk1(8,218
@@ -49866,36 +49896,6 @@
   MPI_Status          *_stats;_stats35,1264
   MPI_Request         *_requests;_requests36,1295
 
-src/dm/impls/swarm/data_ex.c,1474
-data_ex.c:^?data_ex.c^A,1
-const char *status_names[status_names76,2040
-PETSC_EXTERN PetscLogEvent DMSWARM_DataExchangerTopologySetup;78,2111
-PETSC_EXTERN PetscLogEvent DMSWARM_DataExchangerBegin;79,2174
-PETSC_EXTERN PetscLogEvent DMSWARM_DataExchangerEnd;80,2229
-PETSC_EXTERN PetscLogEvent DMSWARM_DataExchangerSendCount;81,2282
-PETSC_EXTERN PetscLogEvent DMSWARM_DataExchangerPack;82,2341
-PetscErrorCode DMSwarmDataExCreate(84,2396
-PetscErrorCode DMSwarmDataExView(130,3580
-PetscErrorCode DMSwarmDataExDestroy(164,5705
-PetscErrorCode DMSwarmDataExTopologyInitialize(185,6596
-PetscErrorCode DMSwarmDataExTopologyAddNeighbour(200,7090
-static void _get_tags(262,9228
-PetscErrorCode _DMSwarmDataExCompleteCommunicationMap(275,9529
-PetscErrorCode DMSwarmDataExTopologyFinalize(334,12088
-PetscErrorCode _DMSwarmDataExConvertProcIdToLocalIndex(373,14145
-PetscErrorCode DMSwarmDataExInitializeSendCount(389,14498
-PetscErrorCode DMSwarmDataExAddToSendCount(404,15014
-PetscErrorCode DMSwarmDataExFinalizeSendCount(419,15857
-PetscErrorCode _DMSwarmDataExInitializeTmpStorage(437,16444
-PetscErrorCode DMSwarmDataExPackInitialize(458,16967
-PetscErrorCode DMSwarmDataExPackData(500,18732
-PetscErrorCode DMSwarmDataExPackFinalize(527,20428
-PetscErrorCode DMSwarmDataExBegin(559,22230
-PetscErrorCode DMSwarmDataExEnd(584,23614
-PetscErrorCode DMSwarmDataExGetSendData(617,25130
-PetscErrorCode DMSwarmDataExGetRecvData(626,25469
-PetscErrorCode DMSwarmDataExTopologyGetNeighbours(635,25813
-
 src/dm/impls/swarm/data_bucket.h,1032
 data_bucket.h:^?data_bucket.h^A,1
 #define PETSC_DMSWARM_DATA_BUCKET_H2,36
@@ -50111,77 +50111,77 @@
 PETSC_EXTERN void dmswarmgetfield_(15,468
 PETSC_EXTERN void dmswarmrestorefield_(28,1016
 
-src/dm/impls/stag/stagutils.c,2143
+src/dm/impls/stag/stagutils.c,2145
 stagutils.c:^?stagutils.c^A,1
-PetscErrorCode DMStagGetBoundaryTypes(22,459
-static PetscErrorCode DMStagGetProductCoordinateArrays_Private(36,1033
-PetscErrorCode DMStagGetProductCoordinateArrays(122,4651
-PetscErrorCode DMStagGetProductCoordinateArraysRead(146,5411
-PETSC_EXTERN PetscErrorCode DMStagGetProductCoordinateLocationSlot(181,6719
-PetscErrorCode DMStagGetCorners(253,9859
-PetscErrorCode DMStagGetDOF(289,11309
-PetscErrorCode DMStagGetGhostCorners(325,12440
-PetscErrorCode DMStagGetGlobalSizes(358,13341
-PetscErrorCode DMStagGetIsFirstRank(388,14165
-PetscErrorCode DMStagGetIsLastRank(419,15132
-PetscErrorCode DMStagGetLocalSizes(450,16074
-PetscErrorCode DMStagGetNumRanks(481,16964
-PetscErrorCode DMStagGetEntries(514,18020
-PetscErrorCode DMStagGetEntriesLocal(545,18932
-PetscErrorCode DMStagGetEntriesPerElement(574,19778
-PetscErrorCode DMStagGetStencilType(599,20482
-PetscErrorCode DMStagGetStencilWidth(624,21071
-PetscErrorCode DMStagGetOwnershipRanges(659,22309
-PetscErrorCode DMStagCreateCompatibleDMStag(694,23433
-PetscErrorCode DMStagGetLocationSlot(726,24437
-PetscErrorCode DMStagMigrateVec(762,25907
-PetscErrorCode DMStagPopulateLocalToGlobalInjective(894,32173
-static PetscErrorCode DMStagRestoreProductCoordinateArrays_Private(919,32920
-PetscErrorCode DMStagRestoreProductCoordinateArrays(984,35007
-PetscErrorCode DMStagRestoreProductCoordinateArraysRead(1006,35609
-PetscErrorCode DMStagSetBoundaryTypes(1029,36373
-PetscErrorCode DMStagSetCoordinateDMType(1060,37657
-PetscErrorCode DMStagSetDOF(1087,38358
-PetscErrorCode DMStagSetNumRanks(1127,40021
-PetscErrorCode DMStagSetStencilType(1161,41730
-PetscErrorCode DMStagSetStencilWidth(1189,42618
-PetscErrorCode DMStagSetGlobalSizes(1218,43615
-PetscErrorCode DMStagSetOwnershipRanges(1252,45074
-PetscErrorCode DMStagSetUniformCoordinates(1300,47249
-PetscErrorCode DMStagSetUniformCoordinatesExplicit(1341,49185
-PetscErrorCode DMStagSetUniformCoordinatesProduct(1396,51500
-PetscErrorCode DMStagVecGetArray(1504,55876
-PetscErrorCode DMStagVecGetArrayRead(1553,57803
-PetscErrorCode DMStagVecRestoreArray(1597,59446
-PetscErrorCode DMStagVecRestoreArrayRead(1641,61123
+PetscErrorCode DMStagGetBoundaryTypes(24,665
+static PetscErrorCode DMStagGetProductCoordinateArrays_Private(38,1239
+PetscErrorCode DMStagGetProductCoordinateArrays(127,5084
+PetscErrorCode DMStagGetProductCoordinateArraysRead(154,6049
+PETSC_EXTERN PetscErrorCode DMStagGetProductCoordinateLocationSlot(189,7383
+PetscErrorCode DMStagGetCorners(261,10543
+PetscErrorCode DMStagGetDOF(297,12013
+PetscErrorCode DMStagGetGhostCorners(333,13163
+PetscErrorCode DMStagGetGlobalSizes(368,14174
+PetscErrorCode DMStagGetIsFirstRank(400,15118
+PetscErrorCode DMStagGetIsLastRank(432,16184
+PetscErrorCode DMStagGetLocalSizes(464,17250
+PetscErrorCode DMStagGetNumRanks(493,18131
+PetscErrorCode DMStagGetEntries(526,19206
+PetscErrorCode DMStagGetEntriesLocal(557,20137
+PetscErrorCode DMStagGetEntriesPerElement(586,21002
+PetscErrorCode DMStagGetStencilType(611,21726
+PetscErrorCode DMStagGetStencilWidth(636,22334
+PetscErrorCode DMStagGetOwnershipRanges(671,23594
+PetscErrorCode DMStagCreateCompatibleDMStag(709,24931
+PetscErrorCode DMStagGetLocationSlot(741,25955
+PetscErrorCode DMStagMigrateVec(777,27452
+PetscErrorCode DMStagPopulateLocalToGlobalInjective(909,33750
+static PetscErrorCode DMStagRestoreProductCoordinateArrays_Private(934,34497
+PetscErrorCode DMStagRestoreProductCoordinateArrays(1002,36716
+PetscErrorCode DMStagRestoreProductCoordinateArraysRead(1024,37427
+PetscErrorCode DMStagSetBoundaryTypes(1049,38361
+PetscErrorCode DMStagSetCoordinateDMType(1080,39665
+PetscErrorCode DMStagSetDOF(1110,40602
+PetscErrorCode DMStagSetNumRanks(1152,42363
+PetscErrorCode DMStagSetStencilType(1186,44092
+PetscErrorCode DMStagSetStencilWidth(1214,44999
+PetscErrorCode DMStagSetGlobalSizes(1245,46127
+PetscErrorCode DMStagSetOwnershipRanges(1281,47710
+PetscErrorCode DMStagSetUniformCoordinates(1334,50191
+PetscErrorCode DMStagSetUniformCoordinatesExplicit(1380,52441
+PetscErrorCode DMStagSetUniformCoordinatesProduct(1440,55070
+PetscErrorCode DMStagVecGetArray(1548,59470
+PetscErrorCode DMStagVecGetArrayRead(1597,61415
+PetscErrorCode DMStagVecRestoreArray(1641,63077
+PetscErrorCode DMStagVecRestoreArrayRead(1685,64773
 
 src/dm/impls/stag/stagstencil.c,563
 stagstencil.c:^?stagstencil.c^A,1
 const char *const DMStagStencilTypes[DMStagStencilTypes5,210
 const char *const DMStagStencilLocations[DMStagStencilLocations8,402
-PetscErrorCode DMStagCreateISFromStencils(30,1353
-PetscErrorCode DMStagGetLocationDOF(139,5666
-PETSC_INTERN PetscErrorCode DMStagStencilLocationCanonicalize(232,8150
-PetscErrorCode DMStagMatGetValuesStencil(306,10149
-PetscErrorCode DMStagMatSetValuesStencil(345,11568
-PetscErrorCode DMStagStencilToIndexLocal(386,13029
-PetscErrorCode DMStagVecGetValuesStencil(449,15351
-PetscErrorCode DMStagVecSetValuesStencil(493,17339
+PetscErrorCode DMStagCreateISFromStencils(30,1375
+PetscErrorCode DMStagGetLocationDOF(139,5710
+PETSC_INTERN PetscErrorCode DMStagStencilLocationCanonicalize(232,8194
+PetscErrorCode DMStagMatGetValuesStencil(306,10213
+PetscErrorCode DMStagMatSetValuesStencil(345,11652
+PetscErrorCode DMStagStencilToIndexLocal(386,13137
+PetscErrorCode DMStagVecGetValuesStencil(449,15479
+PetscErrorCode DMStagVecSetValuesStencil(493,17498
 
 src/dm/impls/stag/stagmulti.c,534
 stagmulti.c:^?stagmulti.c^A,1
-PetscErrorCode DMStagRestrictSimple(25,708
-PETSC_INTERN PetscErrorCode DMStagPopulateInterpolation1d_a_b_Private(49,1402
-PETSC_INTERN PetscErrorCode DMStagPopulateInterpolation2d_0_a_b_Private(123,4352
-PETSC_INTERN PetscErrorCode DMStagPopulateInterpolation3d_0_0_a_b_Private(330,11931
-PETSC_INTERN PetscErrorCode DMStagPopulateRestriction1d_a_b_Private(863,34232
-PETSC_INTERN PetscErrorCode DMStagPopulateRestriction2d_0_a_b_Private(939,37256
-PETSC_INTERN PetscErrorCode DMStagPopulateRestriction3d_0_0_a_b_Private(1061,41943
+PetscErrorCode DMStagRestrictSimple(24,759
+PETSC_INTERN PetscErrorCode DMStagPopulateInterpolation1d_a_b_Private(48,1453
+PETSC_INTERN PetscErrorCode DMStagPopulateInterpolation2d_0_a_b_Private(122,4403
+PETSC_INTERN PetscErrorCode DMStagPopulateInterpolation3d_0_0_a_b_Private(329,11982
+PETSC_INTERN PetscErrorCode DMStagPopulateRestriction1d_a_b_Private(862,34283
+PETSC_INTERN PetscErrorCode DMStagPopulateRestriction2d_0_a_b_Private(938,37307
+PETSC_INTERN PetscErrorCode DMStagPopulateRestriction3d_0_0_a_b_Private(1060,41994
 
 src/dm/impls/stag/stagintern.c,93
 stagintern.c:^?stagintern.c^A,1
-PetscErrorCode DMStagDuplicateWithoutSetup(33,1306
-PetscErrorCode DMStagInitialize(65,2751
+PetscErrorCode DMStagDuplicateWithoutSetup(34,1337
+PetscErrorCode DMStagInitialize(66,2782
 
 src/dm/impls/stag/stagda.c,278
 stagda.c:^?stagda.c^A,1
@@ -50189,46 +50189,46 @@
 static PetscErrorCode DMStagDMDAGetExtraPoints(133,5445
 static PetscErrorCode DMStagMigrateVecDMDA(183,7282
 static PetscErrorCode DMStagTransferCoordinatesToDMDA(301,12130
-PetscErrorCode DMStagVecSplitToDMDA(439,18764
+PetscErrorCode DMStagVecSplitToDMDA(436,18694
 
 src/dm/impls/stag/stag3d.c,848
 stag3d.c:^?stag3d.c^A,1
-PETSC_EXTERN PetscErrorCode DMStagCreate3d(47,2273
-PETSC_INTERN PetscErrorCode DMStagRestrictSimple_3d(56,2909
-PETSC_INTERN PetscErrorCode DMStagSetUniformCoordinatesExplicit_3d(160,10109
-PETSC_INTERN PetscErrorCode DMSetUp_Stag_3d(251,14806
-static PetscErrorCode DMStagSetUpBuildRankGrid_3d(423,22874
-static PetscErrorCode DMStagSetUpBuildNeighbors_3d(554,28261
-static PetscErrorCode DMStagSetUpBuildGlobalOffsets_3d(699,34750
-static PetscErrorCode DMStagSetUpBuildScatterPopulateIdx_3d(793,39210
-static PetscErrorCode DMStagSetUpBuildScatter_3d(925,47211
-static PetscErrorCode DMStagSetUpBuildL2G_3d(1613,95855
-static PetscErrorCode DMStagComputeLocationOffsets_3d(3157,189103
-PETSC_INTERN PetscErrorCode DMStagPopulateLocalToGlobalInjective_3d(3196,192156
-PETSC_INTERN PetscErrorCode DMCreateMatrix_Stag_3D_AIJ_Assemble(3253,195944
+PETSC_EXTERN PetscErrorCode DMStagCreate3d(47,2297
+PETSC_INTERN PetscErrorCode DMStagRestrictSimple_3d(56,2933
+PETSC_INTERN PetscErrorCode DMStagSetUniformCoordinatesExplicit_3d(160,10133
+PETSC_INTERN PetscErrorCode DMSetUp_Stag_3d(251,14830
+static PetscErrorCode DMStagSetUpBuildRankGrid_3d(423,22898
+static PetscErrorCode DMStagSetUpBuildNeighbors_3d(554,28285
+static PetscErrorCode DMStagSetUpBuildGlobalOffsets_3d(699,34774
+static PetscErrorCode DMStagSetUpBuildScatterPopulateIdx_3d(793,39234
+static PetscErrorCode DMStagSetUpBuildScatter_3d(925,47235
+static PetscErrorCode DMStagSetUpBuildL2G_3d(1613,95879
+static PetscErrorCode DMStagComputeLocationOffsets_3d(3157,189127
+PETSC_INTERN PetscErrorCode DMStagPopulateLocalToGlobalInjective_3d(3196,192180
+PETSC_INTERN PetscErrorCode DMCreateMatrix_Stag_3D_AIJ_Assemble(3253,195968
 
 src/dm/impls/stag/stag2d.c,657
 stag2d.c:^?stag2d.c^A,1
-PETSC_EXTERN PetscErrorCode DMStagCreate2d(43,2000
-PETSC_INTERN PetscErrorCode DMStagRestrictSimple_2d(52,2566
-PETSC_INTERN PetscErrorCode DMStagSetUniformCoordinatesExplicit_2d(118,6832
-PETSC_INTERN PetscErrorCode DMSetUp_Stag_2d(183,9812
-static PetscErrorCode DMStagSetUpBuildRankGrid_2d(978,54793
-static PetscErrorCode DMStagSetUpBuildNeighbors_2d(1028,57207
-static PetscErrorCode DMStagSetUpBuildGlobalOffsets_2d(1091,59670
-static PetscErrorCode DMStagComputeLocationOffsets_2d(1134,61497
-PETSC_INTERN PetscErrorCode DMStagPopulateLocalToGlobalInjective_2d(1154,62618
-PETSC_INTERN PetscErrorCode DMCreateMatrix_Stag_2D_AIJ_Assemble(1236,67294
+PETSC_EXTERN PetscErrorCode DMStagCreate2d(43,2024
+PETSC_INTERN PetscErrorCode DMStagRestrictSimple_2d(52,2590
+PETSC_INTERN PetscErrorCode DMStagSetUniformCoordinatesExplicit_2d(118,6856
+PETSC_INTERN PetscErrorCode DMSetUp_Stag_2d(183,9836
+static PetscErrorCode DMStagSetUpBuildRankGrid_2d(978,54818
+static PetscErrorCode DMStagSetUpBuildNeighbors_2d(1028,57232
+static PetscErrorCode DMStagSetUpBuildGlobalOffsets_2d(1091,59695
+static PetscErrorCode DMStagComputeLocationOffsets_2d(1134,61522
+PETSC_INTERN PetscErrorCode DMStagPopulateLocalToGlobalInjective_2d(1154,62643
+PETSC_INTERN PetscErrorCode DMCreateMatrix_Stag_2D_AIJ_Assemble(1236,67320
 
 src/dm/impls/stag/stag1d.c,463
 stag1d.c:^?stag1d.c^A,1
-PETSC_EXTERN PetscErrorCode DMStagCreate1d(39,1563
-PETSC_INTERN PetscErrorCode DMStagRestrictSimple_1d(51,2115
-PETSC_INTERN PetscErrorCode DMStagSetUniformCoordinatesExplicit_1d(104,5492
-PETSC_INTERN PetscErrorCode DMSetUp_Stag_1d(150,7301
-static PetscErrorCode DMStagComputeLocationOffsets_1d(465,21477
-PETSC_INTERN PetscErrorCode DMStagPopulateLocalToGlobalInjective_1d(478,21984
-PETSC_INTERN PetscErrorCode DMCreateMatrix_Stag_1D_AIJ_Assemble(519,23805
+PETSC_EXTERN PetscErrorCode DMStagCreate1d(39,1585
+PETSC_INTERN PetscErrorCode DMStagRestrictSimple_1d(51,2137
+PETSC_INTERN PetscErrorCode DMStagSetUniformCoordinatesExplicit_1d(104,5514
+PETSC_INTERN PetscErrorCode DMSetUp_Stag_1d(150,7323
+static PetscErrorCode DMStagComputeLocationOffsets_1d(465,21499
+PETSC_INTERN PetscErrorCode DMStagPopulateLocalToGlobalInjective_1d(478,22006
+PETSC_INTERN PetscErrorCode DMCreateMatrix_Stag_1D_AIJ_Assemble(519,23827
 
 src/dm/impls/stag/stag.c,1271
 stag.c:^?stag.c^A,1
@@ -50254,7 +50254,7 @@
 static PetscErrorCode DMGetNeighbors_Stag(769,31044
 static PetscErrorCode DMView_Stag(793,31599
 static PetscErrorCode DMSetFromOptions_Stag(867,36394
-PETSC_EXTERN PetscErrorCode DMCreate_Stag(921,40648
+PETSC_EXTERN PetscErrorCode DMCreate_Stag(921,40661
 
 src/dm/impls/stag/makefile,117
 makefile:^?makefile^A,1
@@ -50267,6 +50267,57 @@
 SUBMANSEC=9,305
 LOCDIR 10,323
 
+src/dm/impls/stag/tutorials/ex8.c,146
+ex8.c:^?ex8.c^A,1
+static char help[help1,0
+int main(10,313
+static PetscErrorCode AssembleSystem1DVertexCentered(64,2141
+PetscErrorCode AssembleSystem(144,4379
+
+src/dm/impls/stag/tutorials/ex3.c,1243
+ex3.c:^?ex3.c^A,1
+static char help[help1,0
+#define BACK_DOWN_LEFT 32,1138
+#define BACK_DOWN 33,1185
+#define BACK_DOWN_RIGHT 34,1227
+#define BACK_LEFT 35,1275
+#define BACK 36,1317
+#define BACK_RIGHT 37,1354
+#define BACK_UP_LEFT 38,1397
+#define BACK_UP 39,1442
+#define BACK_UP_RIGHT 40,1482
+#define DOWN_LEFT 41,1528
+#define DOWN 42,1570
+#define DOWN_RIGHT 43,1607
+#define LEFT 44,1650
+#define ELEMENT 45,1687
+#define RIGHT 46,1727
+#define UP_LEFT 47,1765
+#define UP 48,1805
+#define UP_RIGHT 49,1840
+#define FRONT_DOWN_LEFT 50,1881
+#define FRONT_DOWN 51,1929
+#define FRONT_DOWN_RIGHT 52,1972
+#define FRONT_LEFT 53,2021
+#define FRONT 54,2064
+#define FRONT_RIGHT 55,2102
+#define FRONT_UP_LEFT 56,2146
+#define FRONT_UP 57,2192
+#define FRONT_UP_RIGHT 58,2233
+static PetscScalar uxRef(72,2863
+static PetscScalar uyRef(76,3007
+static PetscScalar uzRef(80,3151
+static PetscScalar pRef(84,3269
+static PetscScalar fx(88,3434
+static PetscScalar fy(92,3571
+static PetscScalar fz(96,3702
+static PetscScalar g(100,3817
+int main(105,3932
+static PetscErrorCode CreateSystem(166,6132
+static PetscErrorCode AttachNullspace(1771,62865
+static PetscErrorCode CreateReferenceSolution(1794,63789
+static PetscErrorCode CheckSolution(1841,66602
+
 src/dm/impls/stag/tutorials/ex4.c,3207
 ex4.c:^?ex4.c^A,1
 static char help[help1,0
@@ -50349,13 +50400,6 @@
 LOCDIR 3,37
 MANSEC 4,84
 
-src/dm/impls/stag/tutorials/ex8.c,146
-ex8.c:^?ex8.c^A,1
-static char help[help1,0
-int main(10,313
-static PetscErrorCode AssembleSystem1DVertexCentered(64,2141
-PetscErrorCode AssembleSystem(144,4378
-
 src/dm/impls/stag/tutorials/ex6.c,1248
 ex6.c:^?ex6.c^A,1
 static const char help[help1,0
@@ -50391,50 +50435,6 @@
 static PetscErrorCode DumpStress(778,40629
 static PetscErrorCode DumpVelocity(825,42478
 
-src/dm/impls/stag/tutorials/ex3.c,1243
-ex3.c:^?ex3.c^A,1
-static char help[help1,0
-#define BACK_DOWN_LEFT 32,1137
-#define BACK_DOWN 33,1184
-#define BACK_DOWN_RIGHT 34,1226
-#define BACK_LEFT 35,1274
-#define BACK 36,1316
-#define BACK_RIGHT 37,1353
-#define BACK_UP_LEFT 38,1396
-#define BACK_UP 39,1441
-#define BACK_UP_RIGHT 40,1481
-#define DOWN_LEFT 41,1527
-#define DOWN 42,1569
-#define DOWN_RIGHT 43,1606
-#define LEFT 44,1649
-#define ELEMENT 45,1686
-#define RIGHT 46,1726
-#define UP_LEFT 47,1764
-#define UP 48,1804
-#define UP_RIGHT 49,1839
-#define FRONT_DOWN_LEFT 50,1880
-#define FRONT_DOWN 51,1928
-#define FRONT_DOWN_RIGHT 52,1971
-#define FRONT_LEFT 53,2020
-#define FRONT 54,2063
-#define FRONT_RIGHT 55,2101
-#define FRONT_UP_LEFT 56,2145
-#define FRONT_UP 57,2191
-#define FRONT_UP_RIGHT 58,2232
-static PetscScalar uxRef(72,2862
-static PetscScalar uyRef(76,3006
-static PetscScalar uzRef(80,3150
-static PetscScalar pRef(84,3268
-static PetscScalar fx(88,3433
-static PetscScalar fy(92,3570
-static PetscScalar fz(96,3701
-static PetscScalar g(100,3816
-int main(105,3931
-static PetscErrorCode CreateSystem(166,6131
-static PetscErrorCode AttachNullspace(1771,62864
-static PetscErrorCode CreateReferenceSolution(1794,63788
-static PetscErrorCode CheckSolution(1841,66601
-
 src/dm/impls/stag/tutorials/ex2.c,654
 ex2.c:^?ex2.c^A,1
 static char help[help1,0
@@ -50907,6 +50907,513 @@
 SUBMANSEC=9,226
 LOCDIR 10,247
 
+src/dm/impls/plex/plexsection.c,393
+plexsection.c:^?plexsection.c^A,1
+static PetscErrorCode DMPlexCreateSectionFields(4,135
+static PetscErrorCode DMPlexCreateSectionDof(89,3546
+static PetscErrorCode DMPlexCreateSectionBCDof(194,7242
+static PetscErrorCode DMPlexCreateSectionBCIndicesField(270,10157
+static PetscErrorCode DMPlexCreateSectionBCIndices(356,13659
+PetscErrorCode DMPlexCreateSection(430,16618
+PetscErrorCode DMCreateLocalSection_Plex(450,17602
+
+src/dm/impls/plex/plexinterpolate.c,1897
+plexinterpolate.c:^?plexinterpolate.c^A,1
+const char *const DMPlexInterpolatedFlags[DMPlexInterpolatedFlags5,143
+typedef struct _PetscHashIJKLKey 11,336
+  PetscInt i,12,371
+  PetscInt i, j,12,371
+  PetscInt i, j, k,12,371
+  PetscInt i, j, k, l;12,371
+} PetscHashIJKLKey;13,394
+#define PetscHashIJKLKeyHash(15,415
+#define PetscHashIJKLKeyEqual(17,595
+PetscDisableStaticAnalyzerForExpressionUnderstandingThatThisIsDangerousAndBugprone(19,730
+typedef struct _PetscHashIJKLRemoteKey 23,971
+  PetscSFNode i,24,1012
+  PetscSFNode i, j,24,1012
+  PetscSFNode i, j, k,24,1012
+  PetscSFNode i, j, k, l;24,1012
+} PetscHashIJKLRemoteKey;25,1038
+#define PetscHashIJKLRemoteKeyHash(27,1065
+#define PetscHashIJKLRemoteKeyEqual(30,1339
+PetscDisableStaticAnalyzerForExpressionUnderstandingThatThisIsDangerousAndBugprone(33,1672
+PetscErrorCode DMPlexGetRawFaces_Internal(56,2393
+PetscErrorCode DMPlexRestoreRawFaces_Internal(474,14434
+static PetscErrorCode DMPlexInterpolateFaces_Internal(484,14991
+static PetscErrorCode SortRmineRremoteByRemote_Private(704,25068
+PetscErrorCode DMPlexOrientInterface_Internal(728,26014
+static PetscErrorCode IntArrayViewFromOptions(858,33003
+static PetscErrorCode SFNodeArrayViewFromOptions(874,33706
+static PetscErrorCode DMPlexMapToLocalPoint(894,34628
+static PetscErrorCode DMPlexMapToGlobalPoint(921,35456
+static PetscErrorCode DMPlexPointIsShared(949,36425
+static PetscErrorCode DMPlexConeIsShared(971,37097
+static PetscErrorCode DMPlexGetConeMinimum(990,37648
+static PetscErrorCode DMPlexAddSharedFace_Private(1019,38552
+PetscErrorCode DMPlexInterpolatePointSF(1110,42880
+PetscErrorCode DMPlexInterpolate(1464,62524
+PetscErrorCode DMPlexCopyCoordinates(1539,65542
+PetscErrorCode DMPlexUninterpolate(1688,71783
+static PetscErrorCode DMPlexIsInterpolated_Internal(1792,76142
+PetscErrorCode DMPlexIsInterpolated(1870,78706
+PetscErrorCode DMPlexIsInterpolatedCollective(1919,80709
+
+src/dm/impls/plex/plexgmsh.c,5030
+plexgmsh.c:^?plexgmsh.c^A,1
+#define PETSCDM_DLL1,0
+#define GMSH_LEXORDER_ITEM(7,166
+static int *GmshLexOrder_QUA_2_Serendipity(GmshLexOrder_QUA_2_Serendipity16,493
+static int *GmshLexOrder_HEX_2_Serendipity(GmshLexOrder_HEX_2_Serendipity37,921
+#define GMSH_LEXORDER_LIST(77,1705
+GMSH_LEXORDER_ITEM(89,2027
+  GMSH_VTX 99,2238
+  GMSH_SEG 100,2264
+  GMSH_TRI 101,2290
+  GMSH_QUA 102,2316
+  GMSH_TET 103,2342
+  GMSH_HEX 104,2368
+  GMSH_PRI 105,2394
+  GMSH_PYR 106,2420
+  GMSH_NUM_POLYTOPES 107,2446
+} GmshPolytopeType;108,2471
+  int cellType;111,2509
+  int polytope;112,2525
+  int dim;113,2541
+  int order;114,2552
+  int numVerts;115,2565
+  int numNodes;116,2581
+  int *(*lexorder)lexorder117,2597
+} GmshCellInfo;118,2623
+#define GmshCellEntry(120,2640
+static const GmshCellInfo GmshCellTable[GmshCellTable125,2846
+static GmshCellInfo GmshCellMap[GmshCellMap170,5393
+static PetscErrorCode GmshCellInfoSetUp(172,5432
+#define GmshCellTypeCheck(193,5989
+  PetscViewer viewer;198,6522
+  int         fileFormat;199,6544
+  int         dataSize;200,6570
+  PetscBool   binary;201,6594
+  PetscBool   byteSwap;202,6616
+  size_t      wlen;203,6640
+  void       *wbuf;wbuf204,6660
+  size_t      slen;205,6680
+  void       *sbuf;sbuf206,6700
+  PetscInt   *nbuf;nbuf207,6720
+  PetscInt    nodeStart;208,6740
+  PetscInt    nodeEnd;209,6765
+  PetscInt   *nodeMap;nodeMap210,6788
+} GmshFile;211,6811
+static PetscErrorCode GmshBufferGet(213,6824
+static PetscErrorCode GmshBufferSizeGet(227,7187
+static PetscErrorCode GmshRead(242,7587
+static PetscErrorCode GmshReadString(250,7871
+static PetscErrorCode GmshMatch(257,8080
+static PetscErrorCode GmshExpect(264,8313
+static PetscErrorCode GmshReadSection(274,8662
+static PetscErrorCode GmshReadEndSection(292,9142
+static PetscErrorCode GmshReadSize(300,9401
+static PetscErrorCode GmshReadInt(327,10406
+static PetscErrorCode GmshReadDouble(334,10588
+#define GMSH_MAX_TAGS 341,10778
+  PetscInt id;344,10821
+  PetscInt dim;345,10869
+  double   bbox[bbox346,10917
+  PetscInt numTags;347,10968
+  int      tags[tags348,11024
+} GmshEntity;349,11072
+  GmshEntity *entity[entity352,11104
+  PetscHMapI  entityMap[entityMap353,11129
+} GmshEntities;354,11157
+static PetscErrorCode GmshEntitiesCreate(356,11174
+static PetscErrorCode GmshEntitiesDestroy(369,11531
+static PetscErrorCode GmshEntitiesAdd(383,11901
+static PetscErrorCode GmshEntitiesGet(393,12286
+  PetscInt *id;id404,12596
+  double   *xyz;xyz405,12628
+  PetscInt *tag;tag406,12663
+} GmshNodes;407,12699
+static PetscErrorCode GmshNodesCreate(409,12713
+static PetscErrorCode GmshNodesDestroy(419,13042
+  PetscInt  id;431,13359
+  PetscInt  dim;432,13409
+  PetscInt  cellType;433,13458
+  PetscInt  numVerts;434,13507
+  PetscInt  numNodes;435,13567
+  PetscInt *nodes;nodes436,13625
+  PetscInt  numTags;437,13682
+  int       tags[tags438,13748
+} GmshElement;439,13806
+static PetscErrorCode GmshElementsCreate(441,13822
+static PetscErrorCode GmshElementsDestroy(448,14000
+  PetscInt       dim;457,14213
+  PetscInt       order;458,14235
+  GmshEntities  *entities;entities459,14259
+  PetscInt       numNodes;460,14286
+  GmshNodes     *nodelist;nodelist461,14313
+  PetscInt       numElems;462,14340
+  GmshElement   *elements;elements463,14367
+  PetscInt       numVerts;464,14394
+  PetscInt       numCells;465,14421
+  PetscInt      *periodMap;periodMap466,14448
+  PetscInt      *vertexMap;vertexMap467,14476
+  PetscSegBuffer segbuf;468,14504
+  PetscInt       numRegions;469,14529
+  PetscInt      *regionDims;regionDims470,14558
+  PetscInt      *regionTags;regionTags471,14587
+  char         **regionNames;regionNames472,14616
+} GmshMesh;473,14646
+static PetscErrorCode GmshMeshCreate(475,14659
+static PetscErrorCode GmshMeshDestroy(483,14869
+static PetscErrorCode GmshReadNodes_v22(501,15544
+static PetscErrorCode GmshReadElements_v22(532,16912
+static PetscErrorCode GmshReadEntities_v40(611,20051
+static PetscErrorCode GmshReadNodes_v40(659,22145
+static PetscErrorCode GmshReadElements_v40(720,24943
+static PetscErrorCode GmshReadPeriodic_v40(772,27434
+static PetscErrorCode GmshReadEntities_v41(873,31778
+static PetscErrorCode GmshReadNodes_v41(917,33606
+static PetscErrorCode GmshReadElements_v41(964,35403
+static PetscErrorCode GmshReadPeriodic_v41(1020,37621
+static PetscErrorCode GmshReadMeshFormat(1053,38996
+static PetscErrorCode GmshReadPhysicalNames(1092,41061
+static PetscErrorCode GmshReadEntities(1122,42524
+static PetscErrorCode GmshReadNodes(1136,42824
+static PetscErrorCode GmshReadElements(1180,44262
+#define key(1214,45289
+#undef key1218,45546
+static PetscErrorCode GmshReadPeriodic(1252,46603
+#define DM_POLYTOPE_VERTEX 1285,47750
+static const DMPolytopeType DMPolytopeMap[DMPolytopeMap1286,47795
+static inline DMPolytopeType DMPolytopeTypeFromGmsh(1296,48191
+static PetscErrorCode GmshCreateFE(1301,48323
+PetscErrorCode DMPlexCreateGmshFromFile(1390,51937
+PetscErrorCode DMPlexCreateGmsh(1470,55644
+      n 1756,67407
+
+src/dm/impls/plex/plexextrude.c,77
+plexextrude.c:^?plexextrude.c^A,1
+PetscErrorCode DMPlexExtrude(49,2095
+PetscErrorCode DMExtrude_Plex(88,4001
+
+src/dm/impls/plex/plexcreate.c,4220
+plexcreate.c:^?plexcreate.c^A,1
+#define PETSCDM_DLL1,0
+PetscLogEvent DMPLEX_CreateFromFile,9,303
+PetscLogEvent DMPLEX_CreateFromFile, DMPLEX_BuildFromCellList,9,303
+PetscLogEvent DMPLEX_CreateFromFile, DMPLEX_BuildFromCellList, DMPLEX_BuildCoordinatesFromCellList;9,303
+PetscErrorCode DMPlexCopy_Internal(15,606
+PetscErrorCode DMPlexReplace_Internal(40,1548
+static PetscErrorCode DMPlexSwap_Static(91,3551
+static PetscErrorCode DMPlexInterpolateInPlace_Internal(163,6398
+PetscErrorCode DMPlexCreateCoordinateSpace(188,7099
+PetscErrorCode DMPlexCreateDoublet(242,8965
+static PetscErrorCode DMPlexCreateBoxSurfaceMesh_Tensor_1D_Internal(334,12891
+static PetscErrorCode DMPlexCreateBoxSurfaceMesh_Tensor_2D_Internal(388,15154
+static PetscErrorCode DMPlexCreateBoxSurfaceMesh_Tensor_3D_Internal(504,20152
+static PetscErrorCode DMPlexCreateBoxSurfaceMesh_Internal(689,28752
+PetscErrorCode DMPlexCreateBoxSurfaceMesh(732,30496
+static PetscErrorCode DMPlexCreateLineMesh_Internal(745,31028
+static PetscErrorCode DMPlexCreateBoxMesh_Simplex_Internal(803,33651
+static PetscErrorCode DMPlexCreateCubeMesh_Internal(823,34709
+static PetscErrorCode DMPlexCreateBoxMesh_Tensor_Internal(1248,56581
+static PetscErrorCode DMPlexCreateBoxMesh_Internal(1278,57898
+PetscErrorCode DMPlexCreateBoxMesh(1358,60600
+static PetscErrorCode DMPlexCreateWedgeBoxMesh_Internal(1373,61370
+PetscErrorCode DMPlexCreateWedgeBoxMesh(1425,63584
+PetscErrorCode DMPlexSetOptionsPrefix(1463,64946
+static void snapToCylinder(1492,66035
+static PetscErrorCode DMPlexCreateHexCylinderMesh_Internal(1525,67411
+PetscErrorCode DMPlexCreateHexCylinderMesh(1920,79033
+static PetscErrorCode DMPlexCreateWedgeCylinderMesh_Internal(1930,79343
+PetscErrorCode DMPlexCreateWedgeCylinderMesh(2031,83409
+static inline PetscReal DiffNormReal(2041,83737
+static inline PetscReal DotReal(2048,83962
+static void snapToSphere(2057,84204
+static PetscErrorCode DMPlexCreateSphereMesh_Internal(2068,84893
+typedef void (*TPSEvaluateFunc)TPSEvaluateFunc2536,103125
+static void TPSEvaluate_SchwarzP(2543,103308
+static PetscErrorCode TPSExtrudeNormalFunc_SchwarzP(2555,103963
+static void TPSEvaluate_Gyroid(2567,104376
+static PetscErrorCode TPSExtrudeNormalFunc_Gyroid(2587,105634
+static void TPSNearestPointResJac(2618,107234
+static PetscErrorCode TPSNearestPoint(2670,109184
+const char *const DMPlexTPSTypes[DMPlexTPSTypes2693,110175
+static PetscErrorCode DMPlexCreateTPSMesh_Internal(2695,110276
+PetscErrorCode DMPlexCreateTPSMesh(3263,139054
+PetscErrorCode DMPlexCreateSphereMesh(3290,139989
+static PetscErrorCode DMPlexCreateBallMesh_Internal(3300,140315
+PetscErrorCode DMPlexCreateBallMesh(3342,141688
+static PetscErrorCode DMPlexCreateReferenceCell_Internal(3351,141954
+PetscErrorCode DMPlexCreateReferenceCell(3508,149155
+static PetscErrorCode DMPlexCreateBoundaryLabel_Private(3517,149431
+static void boxToAnnulus(3540,150224
+const char *const DMPlexShapes[DMPlexShapes3551,150944
+static PetscErrorCode DMPlexCreateFromOptions_Internal(3553,151124
+PetscErrorCode DMSetFromOptions_NonRefinement_Plex(3752,162139
+PetscErrorCode DMSetFromOptions_Overlap_Plex(3820,167186
+static PetscErrorCode DMSetFromOptions_Plex(3857,169679
+static PetscErrorCode DMCreateGlobalVector_Plex(4113,181235
+static PetscErrorCode DMCreateLocalVector_Plex(4125,181847
+static PetscErrorCode DMGetDimPoints_Plex(4134,182191
+static PetscErrorCode DMGetNeighbors_Plex(4154,182747
+static PetscErrorCode DMInitialize_Plex(4185,183981
+PETSC_INTERN PetscErrorCode DMClone_Plex(4245,187984
+PETSC_EXTERN PetscErrorCode DMCreate_Plex(4290,190702
+PetscErrorCode DMPlexCreate(4339,192231
+PetscErrorCode DMPlexBuildFromCellListParallel(4414,194384
+PetscErrorCode DMPlexBuildCoordinatesFromCellListParallel(4516,199174
+PetscErrorCode DMPlexCreateFromCellListParallelPetsc(4609,203902
+PetscErrorCode DMPlexBuildFromCellList(4686,206120
+PetscErrorCode DMPlexBuildCoordinatesFromCellList(4738,208219
+PetscErrorCode DMPlexCreateFromCellListPetsc(4807,211608
+PetscErrorCode DMPlexCreateFromDAG(4871,214120
+PetscErrorCode DMPlexCreateCellVertexFromFile(4955,217580
+PetscErrorCode DMPlexCreateFromFile(5143,224642
+#define CheckExtension(5175,225999
+#undef CheckExtension5204,227078
+
+src/dm/impls/plex/plexcheckinterface.c,378
+plexcheckinterface.c:^?plexcheckinterface.c^A,1
+static PetscErrorCode ExchangeArrayByRank_Private(6,155
+static PetscErrorCode ExchangeVecByRank_Private(43,1874
+static PetscErrorCode SortByRemote_Private(72,3149
+static PetscErrorCode GetRecursiveConeCoordinatesPerRank_Private(96,4053
+static PetscErrorCode PetscSFComputeMultiRootOriginalNumberingByRank_Private(120,5021
+PetscErrorCode DMPlexCheckInterfaceCones(165,7081
+
+src/dm/impls/plex/plex.c,31693
+plex.c:^?plex.c^A,1
+PetscLogEvent DMPLEX_Interpolate,13,365
+PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition,13,365
+PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute,13,365
+PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones,13,365
+PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels,13,365
+PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF,13,365
+PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF, DMPLEX_DistributeOverlap,13,365
+PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF, DMPLEX_DistributeOverlap, DMPLEX_DistributeField,13,365
+PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF, DMPLEX_DistributeOverlap, DMPLEX_DistributeField, DMPLEX_DistributeData,13,365
+PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF, DMPLEX_DistributeOverlap, DMPLEX_DistributeField, DMPLEX_DistributeData, DMPLEX_Migrate,13,365
+PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF, DMPLEX_DistributeOverlap, DMPLEX_DistributeField, DMPLEX_DistributeData, DMPLEX_Migrate, DMPLEX_InterpolateSF,13,365
+PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF, DMPLEX_DistributeOverlap, DMPLEX_DistributeField, DMPLEX_DistributeData, DMPLEX_Migrate, DMPLEX_InterpolateSF, DMPLEX_GlobalToNaturalBegin,13,365
+PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF, DMPLEX_DistributeOverlap, DMPLEX_DistributeField, DMPLEX_DistributeData, DMPLEX_Migrate, DMPLEX_InterpolateSF, DMPLEX_GlobalToNaturalBegin, DMPLEX_GlobalToNaturalEnd,13,365
+PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF, DMPLEX_DistributeOverlap, DMPLEX_DistributeField, DMPLEX_DistributeData, DMPLEX_Migrate, DMPLEX_InterpolateSF, DMPLEX_GlobalToNaturalBegin, DMPLEX_GlobalToNaturalEnd, DMPLEX_NaturalToGlobalBegin,13,365
+PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF, DMPLEX_DistributeOverlap, DMPLEX_DistributeField, DMPLEX_DistributeData, DMPLEX_Migrate, DMPLEX_InterpolateSF, DMPLEX_GlobalToNaturalBegin, DMPLEX_GlobalToNaturalEnd, DMPLEX_NaturalToGlobalBegin, DMPLEX_NaturalToGlobalEnd,13,365
+PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF, DMPLEX_DistributeOverlap, DMPLEX_DistributeField, DMPLEX_DistributeData, DMPLEX_Migrate, DMPLEX_InterpolateSF, DMPLEX_GlobalToNaturalBegin, DMPLEX_GlobalToNaturalEnd, DMPLEX_NaturalToGlobalBegin, DMPLEX_NaturalToGlobalEnd, DMPLEX_Stratify,13,365
+PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF, DMPLEX_DistributeOverlap, DMPLEX_DistributeField, DMPLEX_DistributeData, DMPLEX_Migrate, DMPLEX_InterpolateSF, DMPLEX_GlobalToNaturalBegin, DMPLEX_GlobalToNaturalEnd, DMPLEX_NaturalToGlobalBegin, DMPLEX_NaturalToGlobalEnd, DMPLEX_Stratify, DMPLEX_Symmetrize,13,365
+PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF, DMPLEX_DistributeOverlap, DMPLEX_DistributeField, DMPLEX_DistributeData, DMPLEX_Migrate, DMPLEX_InterpolateSF, DMPLEX_GlobalToNaturalBegin, DMPLEX_GlobalToNaturalEnd, DMPLEX_NaturalToGlobalBegin, DMPLEX_NaturalToGlobalEnd, DMPLEX_Stratify, DMPLEX_Symmetrize, DMPLEX_Preallocate,13,365
+PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF, DMPLEX_DistributeOverlap, DMPLEX_DistributeField, DMPLEX_DistributeData, DMPLEX_Migrate, DMPLEX_InterpolateSF, DMPLEX_GlobalToNaturalBegin, DMPLEX_GlobalToNaturalEnd, DMPLEX_NaturalToGlobalBegin, DMPLEX_NaturalToGlobalEnd, DMPLEX_Stratify, DMPLEX_Symmetrize, DMPLEX_Preallocate, DMPLEX_ResidualFEM,13,365
+PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF, DMPLEX_DistributeOverlap, DMPLEX_DistributeField, DMPLEX_DistributeData, DMPLEX_Migrate, DMPLEX_InterpolateSF, DMPLEX_GlobalToNaturalBegin, DMPLEX_GlobalToNaturalEnd, DMPLEX_NaturalToGlobalBegin, DMPLEX_NaturalToGlobalEnd, DMPLEX_Stratify, DMPLEX_Symmetrize, DMPLEX_Preallocate, DMPLEX_ResidualFEM, DMPLEX_JacobianFEM,13,365
+PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF, DMPLEX_DistributeOverlap, DMPLEX_DistributeField, DMPLEX_DistributeData, DMPLEX_Migrate, DMPLEX_InterpolateSF, DMPLEX_GlobalToNaturalBegin, DMPLEX_GlobalToNaturalEnd, DMPLEX_NaturalToGlobalBegin, DMPLEX_NaturalToGlobalEnd, DMPLEX_Stratify, DMPLEX_Symmetrize, DMPLEX_Preallocate, DMPLEX_ResidualFEM, DMPLEX_JacobianFEM, DMPLEX_InterpolatorFEM,13,365
+PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF, DMPLEX_DistributeOverlap, DMPLEX_DistributeField, DMPLEX_DistributeData, DMPLEX_Migrate, DMPLEX_InterpolateSF, DMPLEX_GlobalToNaturalBegin, DMPLEX_GlobalToNaturalEnd, DMPLEX_NaturalToGlobalBegin, DMPLEX_NaturalToGlobalEnd, DMPLEX_Stratify, DMPLEX_Symmetrize, DMPLEX_Preallocate, DMPLEX_ResidualFEM, DMPLEX_JacobianFEM, DMPLEX_InterpolatorFEM, DMPLEX_InjectorFEM,13,365
+PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF, DMPLEX_DistributeOverlap, DMPLEX_DistributeField, DMPLEX_DistributeData, DMPLEX_Migrate, DMPLEX_InterpolateSF, DMPLEX_GlobalToNaturalBegin, DMPLEX_GlobalToNaturalEnd, DMPLEX_NaturalToGlobalBegin, DMPLEX_NaturalToGlobalEnd, DMPLEX_Stratify, DMPLEX_Symmetrize, DMPLEX_Preallocate, DMPLEX_ResidualFEM, DMPLEX_JacobianFEM, DMPLEX_InterpolatorFEM, DMPLEX_InjectorFEM, DMPLEX_IntegralFEM,13,365
+PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF, DMPLEX_DistributeOverlap, DMPLEX_DistributeField, DMPLEX_DistributeData, DMPLEX_Migrate, DMPLEX_InterpolateSF, DMPLEX_GlobalToNaturalBegin, DMPLEX_GlobalToNaturalEnd, DMPLEX_NaturalToGlobalBegin, DMPLEX_NaturalToGlobalEnd, DMPLEX_Stratify, DMPLEX_Symmetrize, DMPLEX_Preallocate, DMPLEX_ResidualFEM, DMPLEX_JacobianFEM, DMPLEX_InterpolatorFEM, DMPLEX_InjectorFEM, DMPLEX_IntegralFEM, DMPLEX_CreateGmsh,13,365
+PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF, DMPLEX_DistributeOverlap, DMPLEX_DistributeField, DMPLEX_DistributeData, DMPLEX_Migrate, DMPLEX_InterpolateSF, DMPLEX_GlobalToNaturalBegin, DMPLEX_GlobalToNaturalEnd, DMPLEX_NaturalToGlobalBegin, DMPLEX_NaturalToGlobalEnd, DMPLEX_Stratify, DMPLEX_Symmetrize, DMPLEX_Preallocate, DMPLEX_ResidualFEM, DMPLEX_JacobianFEM, DMPLEX_InterpolatorFEM, DMPLEX_InjectorFEM, DMPLEX_IntegralFEM, DMPLEX_CreateGmsh, DMPLEX_RebalanceSharedPoints,13,365
+PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF, DMPLEX_DistributeOverlap, DMPLEX_DistributeField, DMPLEX_DistributeData, DMPLEX_Migrate, DMPLEX_InterpolateSF, DMPLEX_GlobalToNaturalBegin, DMPLEX_GlobalToNaturalEnd, DMPLEX_NaturalToGlobalBegin, DMPLEX_NaturalToGlobalEnd, DMPLEX_Stratify, DMPLEX_Symmetrize, DMPLEX_Preallocate, DMPLEX_ResidualFEM, DMPLEX_JacobianFEM, DMPLEX_InterpolatorFEM, DMPLEX_InjectorFEM, DMPLEX_IntegralFEM, DMPLEX_CreateGmsh, DMPLEX_RebalanceSharedPoints, DMPLEX_PartSelf,13,365
+PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF, DMPLEX_DistributeOverlap, DMPLEX_DistributeField, DMPLEX_DistributeData, DMPLEX_Migrate, DMPLEX_InterpolateSF, DMPLEX_GlobalToNaturalBegin, DMPLEX_GlobalToNaturalEnd, DMPLEX_NaturalToGlobalBegin, DMPLEX_NaturalToGlobalEnd, DMPLEX_Stratify, DMPLEX_Symmetrize, DMPLEX_Preallocate, DMPLEX_ResidualFEM, DMPLEX_JacobianFEM, DMPLEX_InterpolatorFEM, DMPLEX_InjectorFEM, DMPLEX_IntegralFEM, DMPLEX_CreateGmsh, DMPLEX_RebalanceSharedPoints, DMPLEX_PartSelf, DMPLEX_PartLabelInvert,13,365
+PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF, DMPLEX_DistributeOverlap, DMPLEX_DistributeField, DMPLEX_DistributeData, DMPLEX_Migrate, DMPLEX_InterpolateSF, DMPLEX_GlobalToNaturalBegin, DMPLEX_GlobalToNaturalEnd, DMPLEX_NaturalToGlobalBegin, DMPLEX_NaturalToGlobalEnd, DMPLEX_Stratify, DMPLEX_Symmetrize, DMPLEX_Preallocate, DMPLEX_ResidualFEM, DMPLEX_JacobianFEM, DMPLEX_InterpolatorFEM, DMPLEX_InjectorFEM, DMPLEX_IntegralFEM, DMPLEX_CreateGmsh, DMPLEX_RebalanceSharedPoints, DMPLEX_PartSelf, DMPLEX_PartLabelInvert, DMPLEX_PartLabelCreateSF,13,365
+PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF, DMPLEX_DistributeOverlap, DMPLEX_DistributeField, DMPLEX_DistributeData, DMPLEX_Migrate, DMPLEX_InterpolateSF, DMPLEX_GlobalToNaturalBegin, DMPLEX_GlobalToNaturalEnd, DMPLEX_NaturalToGlobalBegin, DMPLEX_NaturalToGlobalEnd, DMPLEX_Stratify, DMPLEX_Symmetrize, DMPLEX_Preallocate, DMPLEX_ResidualFEM, DMPLEX_JacobianFEM, DMPLEX_InterpolatorFEM, DMPLEX_InjectorFEM, DMPLEX_IntegralFEM, DMPLEX_CreateGmsh, DMPLEX_RebalanceSharedPoints, DMPLEX_PartSelf, DMPLEX_PartLabelInvert, DMPLEX_PartLabelCreateSF, DMPLEX_PartStratSF,13,365
+PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF, DMPLEX_DistributeOverlap, DMPLEX_DistributeField, DMPLEX_DistributeData, DMPLEX_Migrate, DMPLEX_InterpolateSF, DMPLEX_GlobalToNaturalBegin, DMPLEX_GlobalToNaturalEnd, DMPLEX_NaturalToGlobalBegin, DMPLEX_NaturalToGlobalEnd, DMPLEX_Stratify, DMPLEX_Symmetrize, DMPLEX_Preallocate, DMPLEX_ResidualFEM, DMPLEX_JacobianFEM, DMPLEX_InterpolatorFEM, DMPLEX_InjectorFEM, DMPLEX_IntegralFEM, DMPLEX_CreateGmsh, DMPLEX_RebalanceSharedPoints, DMPLEX_PartSelf, DMPLEX_PartLabelInvert, DMPLEX_PartLabelCreateSF, DMPLEX_PartStratSF, DMPLEX_CreatePointSF,13,365
+PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF, DMPLEX_DistributeOverlap, DMPLEX_DistributeField, DMPLEX_DistributeData, DMPLEX_Migrate, DMPLEX_InterpolateSF, DMPLEX_GlobalToNaturalBegin, DMPLEX_GlobalToNaturalEnd, DMPLEX_NaturalToGlobalBegin, DMPLEX_NaturalToGlobalEnd, DMPLEX_Stratify, DMPLEX_Symmetrize, DMPLEX_Preallocate, DMPLEX_ResidualFEM, DMPLEX_JacobianFEM, DMPLEX_InterpolatorFEM, DMPLEX_InjectorFEM, DMPLEX_IntegralFEM, DMPLEX_CreateGmsh, DMPLEX_RebalanceSharedPoints, DMPLEX_PartSelf, DMPLEX_PartLabelInvert, DMPLEX_PartLabelCreateSF, DMPLEX_PartStratSF, DMPLEX_CreatePointSF, DMPLEX_LocatePoints,13,365
+PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF, DMPLEX_DistributeOverlap, DMPLEX_DistributeField, DMPLEX_DistributeData, DMPLEX_Migrate, DMPLEX_InterpolateSF, DMPLEX_GlobalToNaturalBegin, DMPLEX_GlobalToNaturalEnd, DMPLEX_NaturalToGlobalBegin, DMPLEX_NaturalToGlobalEnd, DMPLEX_Stratify, DMPLEX_Symmetrize, DMPLEX_Preallocate, DMPLEX_ResidualFEM, DMPLEX_JacobianFEM, DMPLEX_InterpolatorFEM, DMPLEX_InjectorFEM, DMPLEX_IntegralFEM, DMPLEX_CreateGmsh, DMPLEX_RebalanceSharedPoints, DMPLEX_PartSelf, DMPLEX_PartLabelInvert, DMPLEX_PartLabelCreateSF, DMPLEX_PartStratSF, DMPLEX_CreatePointSF, DMPLEX_LocatePoints, DMPLEX_TopologyView,13,365
+PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF, DMPLEX_DistributeOverlap, DMPLEX_DistributeField, DMPLEX_DistributeData, DMPLEX_Migrate, DMPLEX_InterpolateSF, DMPLEX_GlobalToNaturalBegin, DMPLEX_GlobalToNaturalEnd, DMPLEX_NaturalToGlobalBegin, DMPLEX_NaturalToGlobalEnd, DMPLEX_Stratify, DMPLEX_Symmetrize, DMPLEX_Preallocate, DMPLEX_ResidualFEM, DMPLEX_JacobianFEM, DMPLEX_InterpolatorFEM, DMPLEX_InjectorFEM, DMPLEX_IntegralFEM, DMPLEX_CreateGmsh, DMPLEX_RebalanceSharedPoints, DMPLEX_PartSelf, DMPLEX_PartLabelInvert, DMPLEX_PartLabelCreateSF, DMPLEX_PartStratSF, DMPLEX_CreatePointSF, DMPLEX_LocatePoints, DMPLEX_TopologyView, DMPLEX_LabelsView,13,365
+PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF, DMPLEX_DistributeOverlap, DMPLEX_DistributeField, DMPLEX_DistributeData, DMPLEX_Migrate, DMPLEX_InterpolateSF, DMPLEX_GlobalToNaturalBegin, DMPLEX_GlobalToNaturalEnd, DMPLEX_NaturalToGlobalBegin, DMPLEX_NaturalToGlobalEnd, DMPLEX_Stratify, DMPLEX_Symmetrize, DMPLEX_Preallocate, DMPLEX_ResidualFEM, DMPLEX_JacobianFEM, DMPLEX_InterpolatorFEM, DMPLEX_InjectorFEM, DMPLEX_IntegralFEM, DMPLEX_CreateGmsh, DMPLEX_RebalanceSharedPoints, DMPLEX_PartSelf, DMPLEX_PartLabelInvert, DMPLEX_PartLabelCreateSF, DMPLEX_PartStratSF, DMPLEX_CreatePointSF, DMPLEX_LocatePoints, DMPLEX_TopologyView, DMPLEX_LabelsView, DMPLEX_CoordinatesView,13,365
+PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF, DMPLEX_DistributeOverlap, DMPLEX_DistributeField, DMPLEX_DistributeData, DMPLEX_Migrate, DMPLEX_InterpolateSF, DMPLEX_GlobalToNaturalBegin, DMPLEX_GlobalToNaturalEnd, DMPLEX_NaturalToGlobalBegin, DMPLEX_NaturalToGlobalEnd, DMPLEX_Stratify, DMPLEX_Symmetrize, DMPLEX_Preallocate, DMPLEX_ResidualFEM, DMPLEX_JacobianFEM, DMPLEX_InterpolatorFEM, DMPLEX_InjectorFEM, DMPLEX_IntegralFEM, DMPLEX_CreateGmsh, DMPLEX_RebalanceSharedPoints, DMPLEX_PartSelf, DMPLEX_PartLabelInvert, DMPLEX_PartLabelCreateSF, DMPLEX_PartStratSF, DMPLEX_CreatePointSF, DMPLEX_LocatePoints, DMPLEX_TopologyView, DMPLEX_LabelsView, DMPLEX_CoordinatesView, DMPLEX_SectionView,13,365
+PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF, DMPLEX_DistributeOverlap, DMPLEX_DistributeField, DMPLEX_DistributeData, DMPLEX_Migrate, DMPLEX_InterpolateSF, DMPLEX_GlobalToNaturalBegin, DMPLEX_GlobalToNaturalEnd, DMPLEX_NaturalToGlobalBegin, DMPLEX_NaturalToGlobalEnd, DMPLEX_Stratify, DMPLEX_Symmetrize, DMPLEX_Preallocate, DMPLEX_ResidualFEM, DMPLEX_JacobianFEM, DMPLEX_InterpolatorFEM, DMPLEX_InjectorFEM, DMPLEX_IntegralFEM, DMPLEX_CreateGmsh, DMPLEX_RebalanceSharedPoints, DMPLEX_PartSelf, DMPLEX_PartLabelInvert, DMPLEX_PartLabelCreateSF, DMPLEX_PartStratSF, DMPLEX_CreatePointSF, DMPLEX_LocatePoints, DMPLEX_TopologyView, DMPLEX_LabelsView, DMPLEX_CoordinatesView, DMPLEX_SectionView, DMPLEX_GlobalVectorView,13,365
+PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF, DMPLEX_DistributeOverlap, DMPLEX_DistributeField, DMPLEX_DistributeData, DMPLEX_Migrate, DMPLEX_InterpolateSF, DMPLEX_GlobalToNaturalBegin, DMPLEX_GlobalToNaturalEnd, DMPLEX_NaturalToGlobalBegin, DMPLEX_NaturalToGlobalEnd, DMPLEX_Stratify, DMPLEX_Symmetrize, DMPLEX_Preallocate, DMPLEX_ResidualFEM, DMPLEX_JacobianFEM, DMPLEX_InterpolatorFEM, DMPLEX_InjectorFEM, DMPLEX_IntegralFEM, DMPLEX_CreateGmsh, DMPLEX_RebalanceSharedPoints, DMPLEX_PartSelf, DMPLEX_PartLabelInvert, DMPLEX_PartLabelCreateSF, DMPLEX_PartStratSF, DMPLEX_CreatePointSF, DMPLEX_LocatePoints, DMPLEX_TopologyView, DMPLEX_LabelsView, DMPLEX_CoordinatesView, DMPLEX_SectionView, DMPLEX_GlobalVectorView, DMPLEX_LocalVectorView,13,365
+PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF, DMPLEX_DistributeOverlap, DMPLEX_DistributeField, DMPLEX_DistributeData, DMPLEX_Migrate, DMPLEX_InterpolateSF, DMPLEX_GlobalToNaturalBegin, DMPLEX_GlobalToNaturalEnd, DMPLEX_NaturalToGlobalBegin, DMPLEX_NaturalToGlobalEnd, DMPLEX_Stratify, DMPLEX_Symmetrize, DMPLEX_Preallocate, DMPLEX_ResidualFEM, DMPLEX_JacobianFEM, DMPLEX_InterpolatorFEM, DMPLEX_InjectorFEM, DMPLEX_IntegralFEM, DMPLEX_CreateGmsh, DMPLEX_RebalanceSharedPoints, DMPLEX_PartSelf, DMPLEX_PartLabelInvert, DMPLEX_PartLabelCreateSF, DMPLEX_PartStratSF, DMPLEX_CreatePointSF, DMPLEX_LocatePoints, DMPLEX_TopologyView, DMPLEX_LabelsView, DMPLEX_CoordinatesView, DMPLEX_SectionView, DMPLEX_GlobalVectorView, DMPLEX_LocalVectorView, DMPLEX_TopologyLoad,13,365
+PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF, DMPLEX_DistributeOverlap, DMPLEX_DistributeField, DMPLEX_DistributeData, DMPLEX_Migrate, DMPLEX_InterpolateSF, DMPLEX_GlobalToNaturalBegin, DMPLEX_GlobalToNaturalEnd, DMPLEX_NaturalToGlobalBegin, DMPLEX_NaturalToGlobalEnd, DMPLEX_Stratify, DMPLEX_Symmetrize, DMPLEX_Preallocate, DMPLEX_ResidualFEM, DMPLEX_JacobianFEM, DMPLEX_InterpolatorFEM, DMPLEX_InjectorFEM, DMPLEX_IntegralFEM, DMPLEX_CreateGmsh, DMPLEX_RebalanceSharedPoints, DMPLEX_PartSelf, DMPLEX_PartLabelInvert, DMPLEX_PartLabelCreateSF, DMPLEX_PartStratSF, DMPLEX_CreatePointSF, DMPLEX_LocatePoints, DMPLEX_TopologyView, DMPLEX_LabelsView, DMPLEX_CoordinatesView, DMPLEX_SectionView, DMPLEX_GlobalVectorView, DMPLEX_LocalVectorView, DMPLEX_TopologyLoad, DMPLEX_LabelsLoad,13,365
+PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF, DMPLEX_DistributeOverlap, DMPLEX_DistributeField, DMPLEX_DistributeData, DMPLEX_Migrate, DMPLEX_InterpolateSF, DMPLEX_GlobalToNaturalBegin, DMPLEX_GlobalToNaturalEnd, DMPLEX_NaturalToGlobalBegin, DMPLEX_NaturalToGlobalEnd, DMPLEX_Stratify, DMPLEX_Symmetrize, DMPLEX_Preallocate, DMPLEX_ResidualFEM, DMPLEX_JacobianFEM, DMPLEX_InterpolatorFEM, DMPLEX_InjectorFEM, DMPLEX_IntegralFEM, DMPLEX_CreateGmsh, DMPLEX_RebalanceSharedPoints, DMPLEX_PartSelf, DMPLEX_PartLabelInvert, DMPLEX_PartLabelCreateSF, DMPLEX_PartStratSF, DMPLEX_CreatePointSF, DMPLEX_LocatePoints, DMPLEX_TopologyView, DMPLEX_LabelsView, DMPLEX_CoordinatesView, DMPLEX_SectionView, DMPLEX_GlobalVectorView, DMPLEX_LocalVectorView, DMPLEX_TopologyLoad, DMPLEX_LabelsLoad, DMPLEX_CoordinatesLoad,13,365
+PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF, DMPLEX_DistributeOverlap, DMPLEX_DistributeField, DMPLEX_DistributeData, DMPLEX_Migrate, DMPLEX_InterpolateSF, DMPLEX_GlobalToNaturalBegin, DMPLEX_GlobalToNaturalEnd, DMPLEX_NaturalToGlobalBegin, DMPLEX_NaturalToGlobalEnd, DMPLEX_Stratify, DMPLEX_Symmetrize, DMPLEX_Preallocate, DMPLEX_ResidualFEM, DMPLEX_JacobianFEM, DMPLEX_InterpolatorFEM, DMPLEX_InjectorFEM, DMPLEX_IntegralFEM, DMPLEX_CreateGmsh, DMPLEX_RebalanceSharedPoints, DMPLEX_PartSelf, DMPLEX_PartLabelInvert, DMPLEX_PartLabelCreateSF, DMPLEX_PartStratSF, DMPLEX_CreatePointSF, DMPLEX_LocatePoints, DMPLEX_TopologyView, DMPLEX_LabelsView, DMPLEX_CoordinatesView, DMPLEX_SectionView, DMPLEX_GlobalVectorView, DMPLEX_LocalVectorView, DMPLEX_TopologyLoad, DMPLEX_LabelsLoad, DMPLEX_CoordinatesLoad, DMPLEX_SectionLoad,13,365
+PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF, DMPLEX_DistributeOverlap, DMPLEX_DistributeField, DMPLEX_DistributeData, DMPLEX_Migrate, DMPLEX_InterpolateSF, DMPLEX_GlobalToNaturalBegin, DMPLEX_GlobalToNaturalEnd, DMPLEX_NaturalToGlobalBegin, DMPLEX_NaturalToGlobalEnd, DMPLEX_Stratify, DMPLEX_Symmetrize, DMPLEX_Preallocate, DMPLEX_ResidualFEM, DMPLEX_JacobianFEM, DMPLEX_InterpolatorFEM, DMPLEX_InjectorFEM, DMPLEX_IntegralFEM, DMPLEX_CreateGmsh, DMPLEX_RebalanceSharedPoints, DMPLEX_PartSelf, DMPLEX_PartLabelInvert, DMPLEX_PartLabelCreateSF, DMPLEX_PartStratSF, DMPLEX_CreatePointSF, DMPLEX_LocatePoints, DMPLEX_TopologyView, DMPLEX_LabelsView, DMPLEX_CoordinatesView, DMPLEX_SectionView, DMPLEX_GlobalVectorView, DMPLEX_LocalVectorView, DMPLEX_TopologyLoad, DMPLEX_LabelsLoad, DMPLEX_CoordinatesLoad, DMPLEX_SectionLoad, DMPLEX_GlobalVectorLoad,13,365
+PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF, DMPLEX_DistributeOverlap, DMPLEX_DistributeField, DMPLEX_DistributeData, DMPLEX_Migrate, DMPLEX_InterpolateSF, DMPLEX_GlobalToNaturalBegin, DMPLEX_GlobalToNaturalEnd, DMPLEX_NaturalToGlobalBegin, DMPLEX_NaturalToGlobalEnd, DMPLEX_Stratify, DMPLEX_Symmetrize, DMPLEX_Preallocate, DMPLEX_ResidualFEM, DMPLEX_JacobianFEM, DMPLEX_InterpolatorFEM, DMPLEX_InjectorFEM, DMPLEX_IntegralFEM, DMPLEX_CreateGmsh, DMPLEX_RebalanceSharedPoints, DMPLEX_PartSelf, DMPLEX_PartLabelInvert, DMPLEX_PartLabelCreateSF, DMPLEX_PartStratSF, DMPLEX_CreatePointSF, DMPLEX_LocatePoints, DMPLEX_TopologyView, DMPLEX_LabelsView, DMPLEX_CoordinatesView, DMPLEX_SectionView, DMPLEX_GlobalVectorView, DMPLEX_LocalVectorView, DMPLEX_TopologyLoad, DMPLEX_LabelsLoad, DMPLEX_CoordinatesLoad, DMPLEX_SectionLoad, DMPLEX_GlobalVectorLoad, DMPLEX_LocalVectorLoad;13,365
+PetscLogEvent DMPLEX_RebalBuildGraph,14,1334
+PetscLogEvent DMPLEX_RebalBuildGraph, DMPLEX_RebalRewriteSF,14,1334
+PetscLogEvent DMPLEX_RebalBuildGraph, DMPLEX_RebalRewriteSF, DMPLEX_RebalGatherGraph,14,1334
+PetscLogEvent DMPLEX_RebalBuildGraph, DMPLEX_RebalRewriteSF, DMPLEX_RebalGatherGraph, DMPLEX_RebalPartition,14,1334
+PetscLogEvent DMPLEX_RebalBuildGraph, DMPLEX_RebalRewriteSF, DMPLEX_RebalGatherGraph, DMPLEX_RebalPartition, DMPLEX_RebalScatterPart;14,1334
+PetscErrorCode DMPlexIsSimplex(35,2084
+PetscErrorCode DMPlexGetSimplexOrBoxCells(69,3123
+PetscErrorCode DMPlexGetFieldType_Internal(108,4194
+PetscErrorCode DMPlexVecView1D(165,6437
+static PetscErrorCode VecView_Plex_Local_Draw_1D(234,8961
+static PetscErrorCode VecView_Plex_Local_Draw_2D(244,9180
+static PetscErrorCode VecView_Plex_Local_Draw(384,15853
+static PetscErrorCode VecView_Plex_Local_VTK(411,16587
+PetscErrorCode VecView_Plex_Local(446,18003
+PetscErrorCode VecView_Plex(523,21019
+PetscErrorCode VecView_Plex_Native(574,23337
+PetscErrorCode VecLoad_Plex_Local(629,25656
+PetscErrorCode VecLoad_Plex(655,26580
+PetscErrorCode VecLoad_Plex_Native(681,27630
+PETSC_UNUSED static PetscErrorCode DMPlexView_Ascii_Geometry(717,29134
+  CS_CARTESIAN,774,31595
+  CS_POLAR,775,31611
+  CS_CYLINDRICAL,776,31623
+  CS_SPHERICAL777,31641
+} CoordSystem;778,31656
+const char *CoordSystems[CoordSystems779,31671
+static PetscErrorCode DMPlexView_Ascii_Coordinates(781,31781
+static PetscErrorCode DMPlexView_Ascii(819,33551
+static PetscErrorCode DMPlexDrawCell(1587,73250
+static PetscErrorCode DMPlexDrawCellHighOrder(1644,77718
+static PetscErrorCode DMPlexView_Draw(1683,79557
+PetscErrorCode DMView_Plex(1746,82483
+PetscErrorCode DMPlexTopologyView(1838,86417
+PetscErrorCode DMPlexCoordinatesView(1879,88054
+PetscErrorCode DMPlexLabelsView(1916,89511
+PetscErrorCode DMPlexSectionView(1963,92150
+PetscErrorCode DMPlexGlobalVectorView(2025,94793
+PetscErrorCode DMPlexLocalVectorView(2100,98111
+PetscErrorCode DMLoad_Plex(2135,99607
+PetscErrorCode DMPlexTopologyLoad(2176,101489
+PetscErrorCode DMPlexCoordinatesLoad(2216,103247
+PetscErrorCode DMPlexLabelsLoad(2259,105105
+PetscErrorCode DMPlexSectionLoad(2334,110102
+PetscErrorCode DMPlexGlobalVectorLoad(2397,113014
+PetscErrorCode DMPlexLocalVectorLoad(2472,116380
+PetscErrorCode DMDestroy_Plex(2508,117936
+PetscErrorCode DMCreateMatrix_Plex(2559,120748
+PetscErrorCode DMPlexGetSubdomainSection(2661,124992
+PetscErrorCode DMPlexGetChart(2696,125926
+PetscErrorCode DMPlexSetChart(2720,126529
+PetscErrorCode DMPlexGetConeSize(2747,127285
+PetscErrorCode DMPlexSetConeSize(2775,128030
+PetscErrorCode DMPlexAddConeSize(2802,128780
+PetscErrorCode DMPlexGetCone(2831,129690
+PetscErrorCode DMPlexGetConeTuple(2861,130622
+PetscErrorCode DMPlexGetConeRecursiveVertices(2902,132125
+PetscErrorCode DMPlexGetConeRecursive(2947,134328
+PetscErrorCode DMPlexRestoreConeRecursive(3033,137696
+PetscErrorCode DMPlexSetCone(3069,139043
+PetscErrorCode DMPlexGetConeOrientation(3116,141266
+PetscErrorCode DMPlexSetConeOrientation(3153,142446
+PetscErrorCode DMPlexInsertCone(3191,144132
+PetscErrorCode DMPlexInsertConeOrientation(3227,145969
+PetscErrorCode DMPlexGetSupportSize(3260,147411
+PetscErrorCode DMPlexSetSupportSize(3288,148170
+PetscErrorCode DMPlexGetSupport(3318,149081
+PetscErrorCode DMPlexSetSupport(3348,150098
+PetscErrorCode DMPlexInsertSupport(3383,151665
+PetscInt DMPolytopeConvertNewOrientation_Internal(3402,152997
+PetscInt DMPolytopeConvertOldOrientation_Internal(3426,153581
+PetscErrorCode DMPlexConvertOldOrientations_Internal(3451,154228
+static PetscErrorCode DMPlexGetTransitiveClosure_Depth1_Private(3493,155728
+static PetscErrorCode DMPlexTransitiveClosure_Tensor_Internal(3547,157681
+PetscErrorCode DMPlexGetTransitiveClosure_Internal(3618,160832
+PetscErrorCode DMPlexGetTransitiveClosure(3727,165541
+PetscErrorCode DMPlexRestoreTransitiveClosure(3756,166722
+PetscErrorCode DMPlexGetMaxSizes(3781,167477
+PetscErrorCode DMSetUp_Plex(3792,167885
+PetscErrorCode DMCreateSubDM_Plex(3812,168599
+PetscErrorCode DMCreateSuperDM_Plex(3829,169237
+PetscErrorCode DMPlexSymmetrize(3867,170353
+static PetscErrorCode DMPlexCreateDepthStratum(3912,172009
+PetscErrorCode DMPlexStratify(3976,175120
+PetscErrorCode DMPlexComputeCellType_Internal(4067,178158
+PetscErrorCode DMPlexComputeCellTypes(4210,181628
+PetscErrorCode DMPlexGetJoin(4260,183228
+PetscErrorCode DMPlexRestoreJoin(4326,185541
+PetscErrorCode DMPlexGetFullJoin(4359,186660
+PetscErrorCode DMPlexGetMeet(4459,190301
+PetscErrorCode DMPlexRestoreMeet(4525,192578
+PetscErrorCode DMPlexGetFullMeet(4558,193697
+PetscErrorCode DMPlexEqual(4653,197113
+PetscErrorCode DMPlexGetNumFaceVertices(4717,199339
+PetscErrorCode DMPlexGetDepthLabel(4800,202251
+PetscErrorCode DMPlexGetDepth(4831,203121
+PetscErrorCode DMPlexGetDepthStratum(4867,204274
+PetscErrorCode DMPlexGetHeightStratum(4917,205862
+PetscErrorCode DMPlexGetPointDepth(4962,207105
+PetscErrorCode DMPlexGetPointHeight(4987,207752
+PetscErrorCode DMPlexGetCellTypeLabel(5019,208688
+PetscErrorCode DMPlexGetCellType(5045,209365
+PetscErrorCode DMPlexSetCellType(5080,210672
+PetscErrorCode DMCreateCoordinateDM_Plex(5091,210972
+PetscErrorCode DMCreateCoordinateField_Plex(5115,211764
+PetscErrorCode DMPlexGetConeSection(5148,212823
+PetscErrorCode DMPlexGetSupportSection(5173,213417
+PetscErrorCode DMPlexGetCones(5198,213945
+PetscErrorCode DMPlexGetConeOrientations(5228,214821
+static PetscErrorCode PetscSectionFieldGetTensorDegree_Private(5244,215345
+PetscErrorCode DMPlexSetClosurePermutationTensor(5319,217662
+PetscErrorCode DMPlexGetPointDualSpaceFEM(5574,230019
+static inline PetscErrorCode DMPlexVecGetClosure_Depth1_Static(5605,230804
+static inline PetscErrorCode CompressPoints_Private(5681,233301
+PetscErrorCode DMPlexGetCompressedClosure(5700,233850
+PetscErrorCode DMPlexRestoreCompressedClosure(5725,234706
+static inline PetscErrorCode DMPlexVecGetClosure_Static(5741,235225
+static inline PetscErrorCode DMPlexVecGetClosure_Fields_Static(5786,236826
+PetscErrorCode DMPlexVecGetClosure(5885,240341
+PetscErrorCode DMPlexVecGetClosureAtDepth_Internal(5935,242670
+PetscErrorCode DMPlexVecRestoreClosure(6034,246467
+static inline void add(6045,246810
+static inline void insert(6049,246879
+static inline PetscErrorCode updatePoint_private(6054,246951
+static inline PetscErrorCode updatePointBC_private(6122,249331
+static inline PetscErrorCode updatePointFields_private(6172,251072
+static inline PetscErrorCode updatePointFieldsBC_private(6242,253584
+static inline PetscErrorCode DMPlexVecSetClosure_Depth1_Static(6357,257701
+PetscErrorCode DMPlexVecSetClosure(6437,260395
+static inline PetscErrorCode CheckPoint_Private(6603,268025
+PetscErrorCode DMPlexVecSetFieldClosure_Internal(6621,268691
+static PetscErrorCode DMPlexPrintMatSetValues(6719,273146
+PetscErrorCode DMPlexGetIndicesPoint_Internal(6765,275313
+PetscErrorCode DMPlexGetIndicesPointFields_Internal(6841,279188
+static PetscErrorCode DMPlexGetIndicesPointFieldsSplit_Internal(6892,281419
+PetscErrorCode DMPlexAnchorsModifyMat(6933,283029
+PetscErrorCode DMPlexGetClosureIndices(7426,302503
+PetscErrorCode DMPlexRestoreClosureIndices(7623,311534
+PetscErrorCode DMPlexMatSetClosure(7650,312622
+PetscErrorCode DMPlexMatSetClosureGeneral(7714,315932
+PetscErrorCode DMPlexMatSetClosureRefined(7758,318968
+PetscErrorCode DMPlexMatGetClosureIndicesRefined(7924,327703
+PetscErrorCode DMPlexGetVTKCellHeight(8082,335512
+PetscErrorCode DMPlexSetVTKCellHeight(8104,336098
+PetscErrorCode DMPlexGetGhostCellStratum(8128,336746
+PetscErrorCode DMPlexCreateNumbering_Plex(8141,337173
+PetscErrorCode DMPlexCreateCellNumbering_Internal(8171,338610
+PetscErrorCode DMPlexGetCellNumbering(8196,339458
+PetscErrorCode DMPlexCreateVertexNumbering_Internal(8207,339836
+PetscErrorCode DMPlexGetVertexNumbering(8231,340576
+PetscErrorCode DMPlexCreatePointNumbering(8285,342100
+PetscErrorCode DMPlexCreateRankField(8342,344188
+PetscErrorCode DMPlexCreateLabelField(8397,345976
+PetscErrorCode DMPlexCheckSymmetry(8447,347572
+static PetscErrorCode DMPlexCellUnsplitVertices_Private(8530,351735
+PetscErrorCode DMPlexCheckSkeleton(8596,353831
+PetscErrorCode DMPlexCheckFaces(8657,356596
+PetscErrorCode DMPlexCheckGeometry(8744,361188
+PetscErrorCode DMPlexCheckPointSF(8820,364052
+PetscErrorCode DMPlexCheck(8924,368406
+typedef struct cell_stats 8939,368844
+  PetscReal min,8940,368872
+  PetscReal min, max,8940,368872
+  PetscReal min, max, sum,8940,368872
+  PetscReal min, max, sum, squaresum;8940,368872
+  PetscInt  count;8941,368910
+} cell_stats_t;8942,368929
+static void MPIAPI cell_stats_reduce(8944,368946
+PetscErrorCode DMPlexCheckCellShape(8979,369989
+PetscErrorCode DMPlexComputeOrthogonalQuality(9131,376638
+static PetscErrorCode DMGetFullDM(9273,383060
+static PetscErrorCode DMCreateAffineInterpolationCorrection_Plex(9300,384065
+PETSC_INTERN PetscErrorCode DMInterpolateSolution_Plex(9346,385946
+PetscErrorCode DMCreateInterpolation_Plex(9381,387101
+PetscErrorCode DMCreateInjection_Plex(9413,388565
+static void g0_identity_private(9424,388892
+PetscErrorCode DMCreateMassMatrixLumped_Plex(9431,389450
+PetscErrorCode DMCreateMassMatrix_Plex(9467,390695
+PetscErrorCode DMPlexGetRegularRefinement(9537,393112
+PetscErrorCode DMPlexSetRegularRefinement(9557,393683
+PetscErrorCode DMPlexGetAnchors(9582,394608
+PetscErrorCode DMPlexSetAnchors(9617,396190
+static PetscErrorCode DMPlexCreateConstraintSection_Anchors(9671,398284
+static PetscErrorCode DMPlexCreateConstraintMatrix_Anchors(9714,399872
+PetscErrorCode DMCreateDefaultConstraints_Plex(9826,404102
+PetscErrorCode DMCreateSubDomainDM_Plex(9850,404955
+PetscErrorCode DMPlexMonitorThroughput(9983,409870
+
 src/dm/impls/plex/plexhdf5xdmf.c,162
 plexhdf5xdmf.c:^?plexhdf5xdmf.c^A,1
 static PetscErrorCode SplitPath_Private(7,197
@@ -51104,238 +51611,6 @@
 PetscErrorCode DMPlexCreateExodus(1465,56491
       n 1697,66961
 
-src/dm/impls/plex/plex.c,31693
-plex.c:^?plex.c^A,1
-PetscLogEvent DMPLEX_Interpolate,13,365
-PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition,13,365
-PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute,13,365
-PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones,13,365
-PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels,13,365
-PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF,13,365
-PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF, DMPLEX_DistributeOverlap,13,365
-PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF, DMPLEX_DistributeOverlap, DMPLEX_DistributeField,13,365
-PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF, DMPLEX_DistributeOverlap, DMPLEX_DistributeField, DMPLEX_DistributeData,13,365
-PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF, DMPLEX_DistributeOverlap, DMPLEX_DistributeField, DMPLEX_DistributeData, DMPLEX_Migrate,13,365
-PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF, DMPLEX_DistributeOverlap, DMPLEX_DistributeField, DMPLEX_DistributeData, DMPLEX_Migrate, DMPLEX_InterpolateSF,13,365
-PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF, DMPLEX_DistributeOverlap, DMPLEX_DistributeField, DMPLEX_DistributeData, DMPLEX_Migrate, DMPLEX_InterpolateSF, DMPLEX_GlobalToNaturalBegin,13,365
-PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF, DMPLEX_DistributeOverlap, DMPLEX_DistributeField, DMPLEX_DistributeData, DMPLEX_Migrate, DMPLEX_InterpolateSF, DMPLEX_GlobalToNaturalBegin, DMPLEX_GlobalToNaturalEnd,13,365
-PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF, DMPLEX_DistributeOverlap, DMPLEX_DistributeField, DMPLEX_DistributeData, DMPLEX_Migrate, DMPLEX_InterpolateSF, DMPLEX_GlobalToNaturalBegin, DMPLEX_GlobalToNaturalEnd, DMPLEX_NaturalToGlobalBegin,13,365
-PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF, DMPLEX_DistributeOverlap, DMPLEX_DistributeField, DMPLEX_DistributeData, DMPLEX_Migrate, DMPLEX_InterpolateSF, DMPLEX_GlobalToNaturalBegin, DMPLEX_GlobalToNaturalEnd, DMPLEX_NaturalToGlobalBegin, DMPLEX_NaturalToGlobalEnd,13,365
-PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF, DMPLEX_DistributeOverlap, DMPLEX_DistributeField, DMPLEX_DistributeData, DMPLEX_Migrate, DMPLEX_InterpolateSF, DMPLEX_GlobalToNaturalBegin, DMPLEX_GlobalToNaturalEnd, DMPLEX_NaturalToGlobalBegin, DMPLEX_NaturalToGlobalEnd, DMPLEX_Stratify,13,365
-PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF, DMPLEX_DistributeOverlap, DMPLEX_DistributeField, DMPLEX_DistributeData, DMPLEX_Migrate, DMPLEX_InterpolateSF, DMPLEX_GlobalToNaturalBegin, DMPLEX_GlobalToNaturalEnd, DMPLEX_NaturalToGlobalBegin, DMPLEX_NaturalToGlobalEnd, DMPLEX_Stratify, DMPLEX_Symmetrize,13,365
-PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF, DMPLEX_DistributeOverlap, DMPLEX_DistributeField, DMPLEX_DistributeData, DMPLEX_Migrate, DMPLEX_InterpolateSF, DMPLEX_GlobalToNaturalBegin, DMPLEX_GlobalToNaturalEnd, DMPLEX_NaturalToGlobalBegin, DMPLEX_NaturalToGlobalEnd, DMPLEX_Stratify, DMPLEX_Symmetrize, DMPLEX_Preallocate,13,365
-PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF, DMPLEX_DistributeOverlap, DMPLEX_DistributeField, DMPLEX_DistributeData, DMPLEX_Migrate, DMPLEX_InterpolateSF, DMPLEX_GlobalToNaturalBegin, DMPLEX_GlobalToNaturalEnd, DMPLEX_NaturalToGlobalBegin, DMPLEX_NaturalToGlobalEnd, DMPLEX_Stratify, DMPLEX_Symmetrize, DMPLEX_Preallocate, DMPLEX_ResidualFEM,13,365
-PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF, DMPLEX_DistributeOverlap, DMPLEX_DistributeField, DMPLEX_DistributeData, DMPLEX_Migrate, DMPLEX_InterpolateSF, DMPLEX_GlobalToNaturalBegin, DMPLEX_GlobalToNaturalEnd, DMPLEX_NaturalToGlobalBegin, DMPLEX_NaturalToGlobalEnd, DMPLEX_Stratify, DMPLEX_Symmetrize, DMPLEX_Preallocate, DMPLEX_ResidualFEM, DMPLEX_JacobianFEM,13,365
-PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF, DMPLEX_DistributeOverlap, DMPLEX_DistributeField, DMPLEX_DistributeData, DMPLEX_Migrate, DMPLEX_InterpolateSF, DMPLEX_GlobalToNaturalBegin, DMPLEX_GlobalToNaturalEnd, DMPLEX_NaturalToGlobalBegin, DMPLEX_NaturalToGlobalEnd, DMPLEX_Stratify, DMPLEX_Symmetrize, DMPLEX_Preallocate, DMPLEX_ResidualFEM, DMPLEX_JacobianFEM, DMPLEX_InterpolatorFEM,13,365
-PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF, DMPLEX_DistributeOverlap, DMPLEX_DistributeField, DMPLEX_DistributeData, DMPLEX_Migrate, DMPLEX_InterpolateSF, DMPLEX_GlobalToNaturalBegin, DMPLEX_GlobalToNaturalEnd, DMPLEX_NaturalToGlobalBegin, DMPLEX_NaturalToGlobalEnd, DMPLEX_Stratify, DMPLEX_Symmetrize, DMPLEX_Preallocate, DMPLEX_ResidualFEM, DMPLEX_JacobianFEM, DMPLEX_InterpolatorFEM, DMPLEX_InjectorFEM,13,365
-PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF, DMPLEX_DistributeOverlap, DMPLEX_DistributeField, DMPLEX_DistributeData, DMPLEX_Migrate, DMPLEX_InterpolateSF, DMPLEX_GlobalToNaturalBegin, DMPLEX_GlobalToNaturalEnd, DMPLEX_NaturalToGlobalBegin, DMPLEX_NaturalToGlobalEnd, DMPLEX_Stratify, DMPLEX_Symmetrize, DMPLEX_Preallocate, DMPLEX_ResidualFEM, DMPLEX_JacobianFEM, DMPLEX_InterpolatorFEM, DMPLEX_InjectorFEM, DMPLEX_IntegralFEM,13,365
-PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF, DMPLEX_DistributeOverlap, DMPLEX_DistributeField, DMPLEX_DistributeData, DMPLEX_Migrate, DMPLEX_InterpolateSF, DMPLEX_GlobalToNaturalBegin, DMPLEX_GlobalToNaturalEnd, DMPLEX_NaturalToGlobalBegin, DMPLEX_NaturalToGlobalEnd, DMPLEX_Stratify, DMPLEX_Symmetrize, DMPLEX_Preallocate, DMPLEX_ResidualFEM, DMPLEX_JacobianFEM, DMPLEX_InterpolatorFEM, DMPLEX_InjectorFEM, DMPLEX_IntegralFEM, DMPLEX_CreateGmsh,13,365
-PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF, DMPLEX_DistributeOverlap, DMPLEX_DistributeField, DMPLEX_DistributeData, DMPLEX_Migrate, DMPLEX_InterpolateSF, DMPLEX_GlobalToNaturalBegin, DMPLEX_GlobalToNaturalEnd, DMPLEX_NaturalToGlobalBegin, DMPLEX_NaturalToGlobalEnd, DMPLEX_Stratify, DMPLEX_Symmetrize, DMPLEX_Preallocate, DMPLEX_ResidualFEM, DMPLEX_JacobianFEM, DMPLEX_InterpolatorFEM, DMPLEX_InjectorFEM, DMPLEX_IntegralFEM, DMPLEX_CreateGmsh, DMPLEX_RebalanceSharedPoints,13,365
-PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF, DMPLEX_DistributeOverlap, DMPLEX_DistributeField, DMPLEX_DistributeData, DMPLEX_Migrate, DMPLEX_InterpolateSF, DMPLEX_GlobalToNaturalBegin, DMPLEX_GlobalToNaturalEnd, DMPLEX_NaturalToGlobalBegin, DMPLEX_NaturalToGlobalEnd, DMPLEX_Stratify, DMPLEX_Symmetrize, DMPLEX_Preallocate, DMPLEX_ResidualFEM, DMPLEX_JacobianFEM, DMPLEX_InterpolatorFEM, DMPLEX_InjectorFEM, DMPLEX_IntegralFEM, DMPLEX_CreateGmsh, DMPLEX_RebalanceSharedPoints, DMPLEX_PartSelf,13,365
-PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF, DMPLEX_DistributeOverlap, DMPLEX_DistributeField, DMPLEX_DistributeData, DMPLEX_Migrate, DMPLEX_InterpolateSF, DMPLEX_GlobalToNaturalBegin, DMPLEX_GlobalToNaturalEnd, DMPLEX_NaturalToGlobalBegin, DMPLEX_NaturalToGlobalEnd, DMPLEX_Stratify, DMPLEX_Symmetrize, DMPLEX_Preallocate, DMPLEX_ResidualFEM, DMPLEX_JacobianFEM, DMPLEX_InterpolatorFEM, DMPLEX_InjectorFEM, DMPLEX_IntegralFEM, DMPLEX_CreateGmsh, DMPLEX_RebalanceSharedPoints, DMPLEX_PartSelf, DMPLEX_PartLabelInvert,13,365
-PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF, DMPLEX_DistributeOverlap, DMPLEX_DistributeField, DMPLEX_DistributeData, DMPLEX_Migrate, DMPLEX_InterpolateSF, DMPLEX_GlobalToNaturalBegin, DMPLEX_GlobalToNaturalEnd, DMPLEX_NaturalToGlobalBegin, DMPLEX_NaturalToGlobalEnd, DMPLEX_Stratify, DMPLEX_Symmetrize, DMPLEX_Preallocate, DMPLEX_ResidualFEM, DMPLEX_JacobianFEM, DMPLEX_InterpolatorFEM, DMPLEX_InjectorFEM, DMPLEX_IntegralFEM, DMPLEX_CreateGmsh, DMPLEX_RebalanceSharedPoints, DMPLEX_PartSelf, DMPLEX_PartLabelInvert, DMPLEX_PartLabelCreateSF,13,365
-PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF, DMPLEX_DistributeOverlap, DMPLEX_DistributeField, DMPLEX_DistributeData, DMPLEX_Migrate, DMPLEX_InterpolateSF, DMPLEX_GlobalToNaturalBegin, DMPLEX_GlobalToNaturalEnd, DMPLEX_NaturalToGlobalBegin, DMPLEX_NaturalToGlobalEnd, DMPLEX_Stratify, DMPLEX_Symmetrize, DMPLEX_Preallocate, DMPLEX_ResidualFEM, DMPLEX_JacobianFEM, DMPLEX_InterpolatorFEM, DMPLEX_InjectorFEM, DMPLEX_IntegralFEM, DMPLEX_CreateGmsh, DMPLEX_RebalanceSharedPoints, DMPLEX_PartSelf, DMPLEX_PartLabelInvert, DMPLEX_PartLabelCreateSF, DMPLEX_PartStratSF,13,365
-PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF, DMPLEX_DistributeOverlap, DMPLEX_DistributeField, DMPLEX_DistributeData, DMPLEX_Migrate, DMPLEX_InterpolateSF, DMPLEX_GlobalToNaturalBegin, DMPLEX_GlobalToNaturalEnd, DMPLEX_NaturalToGlobalBegin, DMPLEX_NaturalToGlobalEnd, DMPLEX_Stratify, DMPLEX_Symmetrize, DMPLEX_Preallocate, DMPLEX_ResidualFEM, DMPLEX_JacobianFEM, DMPLEX_InterpolatorFEM, DMPLEX_InjectorFEM, DMPLEX_IntegralFEM, DMPLEX_CreateGmsh, DMPLEX_RebalanceSharedPoints, DMPLEX_PartSelf, DMPLEX_PartLabelInvert, DMPLEX_PartLabelCreateSF, DMPLEX_PartStratSF, DMPLEX_CreatePointSF,13,365
-PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF, DMPLEX_DistributeOverlap, DMPLEX_DistributeField, DMPLEX_DistributeData, DMPLEX_Migrate, DMPLEX_InterpolateSF, DMPLEX_GlobalToNaturalBegin, DMPLEX_GlobalToNaturalEnd, DMPLEX_NaturalToGlobalBegin, DMPLEX_NaturalToGlobalEnd, DMPLEX_Stratify, DMPLEX_Symmetrize, DMPLEX_Preallocate, DMPLEX_ResidualFEM, DMPLEX_JacobianFEM, DMPLEX_InterpolatorFEM, DMPLEX_InjectorFEM, DMPLEX_IntegralFEM, DMPLEX_CreateGmsh, DMPLEX_RebalanceSharedPoints, DMPLEX_PartSelf, DMPLEX_PartLabelInvert, DMPLEX_PartLabelCreateSF, DMPLEX_PartStratSF, DMPLEX_CreatePointSF, DMPLEX_LocatePoints,13,365
-PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF, DMPLEX_DistributeOverlap, DMPLEX_DistributeField, DMPLEX_DistributeData, DMPLEX_Migrate, DMPLEX_InterpolateSF, DMPLEX_GlobalToNaturalBegin, DMPLEX_GlobalToNaturalEnd, DMPLEX_NaturalToGlobalBegin, DMPLEX_NaturalToGlobalEnd, DMPLEX_Stratify, DMPLEX_Symmetrize, DMPLEX_Preallocate, DMPLEX_ResidualFEM, DMPLEX_JacobianFEM, DMPLEX_InterpolatorFEM, DMPLEX_InjectorFEM, DMPLEX_IntegralFEM, DMPLEX_CreateGmsh, DMPLEX_RebalanceSharedPoints, DMPLEX_PartSelf, DMPLEX_PartLabelInvert, DMPLEX_PartLabelCreateSF, DMPLEX_PartStratSF, DMPLEX_CreatePointSF, DMPLEX_LocatePoints, DMPLEX_TopologyView,13,365
-PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF, DMPLEX_DistributeOverlap, DMPLEX_DistributeField, DMPLEX_DistributeData, DMPLEX_Migrate, DMPLEX_InterpolateSF, DMPLEX_GlobalToNaturalBegin, DMPLEX_GlobalToNaturalEnd, DMPLEX_NaturalToGlobalBegin, DMPLEX_NaturalToGlobalEnd, DMPLEX_Stratify, DMPLEX_Symmetrize, DMPLEX_Preallocate, DMPLEX_ResidualFEM, DMPLEX_JacobianFEM, DMPLEX_InterpolatorFEM, DMPLEX_InjectorFEM, DMPLEX_IntegralFEM, DMPLEX_CreateGmsh, DMPLEX_RebalanceSharedPoints, DMPLEX_PartSelf, DMPLEX_PartLabelInvert, DMPLEX_PartLabelCreateSF, DMPLEX_PartStratSF, DMPLEX_CreatePointSF, DMPLEX_LocatePoints, DMPLEX_TopologyView, DMPLEX_LabelsView,13,365
-PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF, DMPLEX_DistributeOverlap, DMPLEX_DistributeField, DMPLEX_DistributeData, DMPLEX_Migrate, DMPLEX_InterpolateSF, DMPLEX_GlobalToNaturalBegin, DMPLEX_GlobalToNaturalEnd, DMPLEX_NaturalToGlobalBegin, DMPLEX_NaturalToGlobalEnd, DMPLEX_Stratify, DMPLEX_Symmetrize, DMPLEX_Preallocate, DMPLEX_ResidualFEM, DMPLEX_JacobianFEM, DMPLEX_InterpolatorFEM, DMPLEX_InjectorFEM, DMPLEX_IntegralFEM, DMPLEX_CreateGmsh, DMPLEX_RebalanceSharedPoints, DMPLEX_PartSelf, DMPLEX_PartLabelInvert, DMPLEX_PartLabelCreateSF, DMPLEX_PartStratSF, DMPLEX_CreatePointSF, DMPLEX_LocatePoints, DMPLEX_TopologyView, DMPLEX_LabelsView, DMPLEX_CoordinatesView,13,365
-PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF, DMPLEX_DistributeOverlap, DMPLEX_DistributeField, DMPLEX_DistributeData, DMPLEX_Migrate, DMPLEX_InterpolateSF, DMPLEX_GlobalToNaturalBegin, DMPLEX_GlobalToNaturalEnd, DMPLEX_NaturalToGlobalBegin, DMPLEX_NaturalToGlobalEnd, DMPLEX_Stratify, DMPLEX_Symmetrize, DMPLEX_Preallocate, DMPLEX_ResidualFEM, DMPLEX_JacobianFEM, DMPLEX_InterpolatorFEM, DMPLEX_InjectorFEM, DMPLEX_IntegralFEM, DMPLEX_CreateGmsh, DMPLEX_RebalanceSharedPoints, DMPLEX_PartSelf, DMPLEX_PartLabelInvert, DMPLEX_PartLabelCreateSF, DMPLEX_PartStratSF, DMPLEX_CreatePointSF, DMPLEX_LocatePoints, DMPLEX_TopologyView, DMPLEX_LabelsView, DMPLEX_CoordinatesView, DMPLEX_SectionView,13,365
-PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF, DMPLEX_DistributeOverlap, DMPLEX_DistributeField, DMPLEX_DistributeData, DMPLEX_Migrate, DMPLEX_InterpolateSF, DMPLEX_GlobalToNaturalBegin, DMPLEX_GlobalToNaturalEnd, DMPLEX_NaturalToGlobalBegin, DMPLEX_NaturalToGlobalEnd, DMPLEX_Stratify, DMPLEX_Symmetrize, DMPLEX_Preallocate, DMPLEX_ResidualFEM, DMPLEX_JacobianFEM, DMPLEX_InterpolatorFEM, DMPLEX_InjectorFEM, DMPLEX_IntegralFEM, DMPLEX_CreateGmsh, DMPLEX_RebalanceSharedPoints, DMPLEX_PartSelf, DMPLEX_PartLabelInvert, DMPLEX_PartLabelCreateSF, DMPLEX_PartStratSF, DMPLEX_CreatePointSF, DMPLEX_LocatePoints, DMPLEX_TopologyView, DMPLEX_LabelsView, DMPLEX_CoordinatesView, DMPLEX_SectionView, DMPLEX_GlobalVectorView,13,365
-PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF, DMPLEX_DistributeOverlap, DMPLEX_DistributeField, DMPLEX_DistributeData, DMPLEX_Migrate, DMPLEX_InterpolateSF, DMPLEX_GlobalToNaturalBegin, DMPLEX_GlobalToNaturalEnd, DMPLEX_NaturalToGlobalBegin, DMPLEX_NaturalToGlobalEnd, DMPLEX_Stratify, DMPLEX_Symmetrize, DMPLEX_Preallocate, DMPLEX_ResidualFEM, DMPLEX_JacobianFEM, DMPLEX_InterpolatorFEM, DMPLEX_InjectorFEM, DMPLEX_IntegralFEM, DMPLEX_CreateGmsh, DMPLEX_RebalanceSharedPoints, DMPLEX_PartSelf, DMPLEX_PartLabelInvert, DMPLEX_PartLabelCreateSF, DMPLEX_PartStratSF, DMPLEX_CreatePointSF, DMPLEX_LocatePoints, DMPLEX_TopologyView, DMPLEX_LabelsView, DMPLEX_CoordinatesView, DMPLEX_SectionView, DMPLEX_GlobalVectorView, DMPLEX_LocalVectorView,13,365
-PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF, DMPLEX_DistributeOverlap, DMPLEX_DistributeField, DMPLEX_DistributeData, DMPLEX_Migrate, DMPLEX_InterpolateSF, DMPLEX_GlobalToNaturalBegin, DMPLEX_GlobalToNaturalEnd, DMPLEX_NaturalToGlobalBegin, DMPLEX_NaturalToGlobalEnd, DMPLEX_Stratify, DMPLEX_Symmetrize, DMPLEX_Preallocate, DMPLEX_ResidualFEM, DMPLEX_JacobianFEM, DMPLEX_InterpolatorFEM, DMPLEX_InjectorFEM, DMPLEX_IntegralFEM, DMPLEX_CreateGmsh, DMPLEX_RebalanceSharedPoints, DMPLEX_PartSelf, DMPLEX_PartLabelInvert, DMPLEX_PartLabelCreateSF, DMPLEX_PartStratSF, DMPLEX_CreatePointSF, DMPLEX_LocatePoints, DMPLEX_TopologyView, DMPLEX_LabelsView, DMPLEX_CoordinatesView, DMPLEX_SectionView, DMPLEX_GlobalVectorView, DMPLEX_LocalVectorView, DMPLEX_TopologyLoad,13,365
-PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF, DMPLEX_DistributeOverlap, DMPLEX_DistributeField, DMPLEX_DistributeData, DMPLEX_Migrate, DMPLEX_InterpolateSF, DMPLEX_GlobalToNaturalBegin, DMPLEX_GlobalToNaturalEnd, DMPLEX_NaturalToGlobalBegin, DMPLEX_NaturalToGlobalEnd, DMPLEX_Stratify, DMPLEX_Symmetrize, DMPLEX_Preallocate, DMPLEX_ResidualFEM, DMPLEX_JacobianFEM, DMPLEX_InterpolatorFEM, DMPLEX_InjectorFEM, DMPLEX_IntegralFEM, DMPLEX_CreateGmsh, DMPLEX_RebalanceSharedPoints, DMPLEX_PartSelf, DMPLEX_PartLabelInvert, DMPLEX_PartLabelCreateSF, DMPLEX_PartStratSF, DMPLEX_CreatePointSF, DMPLEX_LocatePoints, DMPLEX_TopologyView, DMPLEX_LabelsView, DMPLEX_CoordinatesView, DMPLEX_SectionView, DMPLEX_GlobalVectorView, DMPLEX_LocalVectorView, DMPLEX_TopologyLoad, DMPLEX_LabelsLoad,13,365
-PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF, DMPLEX_DistributeOverlap, DMPLEX_DistributeField, DMPLEX_DistributeData, DMPLEX_Migrate, DMPLEX_InterpolateSF, DMPLEX_GlobalToNaturalBegin, DMPLEX_GlobalToNaturalEnd, DMPLEX_NaturalToGlobalBegin, DMPLEX_NaturalToGlobalEnd, DMPLEX_Stratify, DMPLEX_Symmetrize, DMPLEX_Preallocate, DMPLEX_ResidualFEM, DMPLEX_JacobianFEM, DMPLEX_InterpolatorFEM, DMPLEX_InjectorFEM, DMPLEX_IntegralFEM, DMPLEX_CreateGmsh, DMPLEX_RebalanceSharedPoints, DMPLEX_PartSelf, DMPLEX_PartLabelInvert, DMPLEX_PartLabelCreateSF, DMPLEX_PartStratSF, DMPLEX_CreatePointSF, DMPLEX_LocatePoints, DMPLEX_TopologyView, DMPLEX_LabelsView, DMPLEX_CoordinatesView, DMPLEX_SectionView, DMPLEX_GlobalVectorView, DMPLEX_LocalVectorView, DMPLEX_TopologyLoad, DMPLEX_LabelsLoad, DMPLEX_CoordinatesLoad,13,365
-PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF, DMPLEX_DistributeOverlap, DMPLEX_DistributeField, DMPLEX_DistributeData, DMPLEX_Migrate, DMPLEX_InterpolateSF, DMPLEX_GlobalToNaturalBegin, DMPLEX_GlobalToNaturalEnd, DMPLEX_NaturalToGlobalBegin, DMPLEX_NaturalToGlobalEnd, DMPLEX_Stratify, DMPLEX_Symmetrize, DMPLEX_Preallocate, DMPLEX_ResidualFEM, DMPLEX_JacobianFEM, DMPLEX_InterpolatorFEM, DMPLEX_InjectorFEM, DMPLEX_IntegralFEM, DMPLEX_CreateGmsh, DMPLEX_RebalanceSharedPoints, DMPLEX_PartSelf, DMPLEX_PartLabelInvert, DMPLEX_PartLabelCreateSF, DMPLEX_PartStratSF, DMPLEX_CreatePointSF, DMPLEX_LocatePoints, DMPLEX_TopologyView, DMPLEX_LabelsView, DMPLEX_CoordinatesView, DMPLEX_SectionView, DMPLEX_GlobalVectorView, DMPLEX_LocalVectorView, DMPLEX_TopologyLoad, DMPLEX_LabelsLoad, DMPLEX_CoordinatesLoad, DMPLEX_SectionLoad,13,365
-PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF, DMPLEX_DistributeOverlap, DMPLEX_DistributeField, DMPLEX_DistributeData, DMPLEX_Migrate, DMPLEX_InterpolateSF, DMPLEX_GlobalToNaturalBegin, DMPLEX_GlobalToNaturalEnd, DMPLEX_NaturalToGlobalBegin, DMPLEX_NaturalToGlobalEnd, DMPLEX_Stratify, DMPLEX_Symmetrize, DMPLEX_Preallocate, DMPLEX_ResidualFEM, DMPLEX_JacobianFEM, DMPLEX_InterpolatorFEM, DMPLEX_InjectorFEM, DMPLEX_IntegralFEM, DMPLEX_CreateGmsh, DMPLEX_RebalanceSharedPoints, DMPLEX_PartSelf, DMPLEX_PartLabelInvert, DMPLEX_PartLabelCreateSF, DMPLEX_PartStratSF, DMPLEX_CreatePointSF, DMPLEX_LocatePoints, DMPLEX_TopologyView, DMPLEX_LabelsView, DMPLEX_CoordinatesView, DMPLEX_SectionView, DMPLEX_GlobalVectorView, DMPLEX_LocalVectorView, DMPLEX_TopologyLoad, DMPLEX_LabelsLoad, DMPLEX_CoordinatesLoad, DMPLEX_SectionLoad, DMPLEX_GlobalVectorLoad,13,365
-PetscLogEvent DMPLEX_Interpolate, DMPLEX_Partition, DMPLEX_Distribute, DMPLEX_DistributeCones, DMPLEX_DistributeLabels, DMPLEX_DistributeSF, DMPLEX_DistributeOverlap, DMPLEX_DistributeField, DMPLEX_DistributeData, DMPLEX_Migrate, DMPLEX_InterpolateSF, DMPLEX_GlobalToNaturalBegin, DMPLEX_GlobalToNaturalEnd, DMPLEX_NaturalToGlobalBegin, DMPLEX_NaturalToGlobalEnd, DMPLEX_Stratify, DMPLEX_Symmetrize, DMPLEX_Preallocate, DMPLEX_ResidualFEM, DMPLEX_JacobianFEM, DMPLEX_InterpolatorFEM, DMPLEX_InjectorFEM, DMPLEX_IntegralFEM, DMPLEX_CreateGmsh, DMPLEX_RebalanceSharedPoints, DMPLEX_PartSelf, DMPLEX_PartLabelInvert, DMPLEX_PartLabelCreateSF, DMPLEX_PartStratSF, DMPLEX_CreatePointSF, DMPLEX_LocatePoints, DMPLEX_TopologyView, DMPLEX_LabelsView, DMPLEX_CoordinatesView, DMPLEX_SectionView, DMPLEX_GlobalVectorView, DMPLEX_LocalVectorView, DMPLEX_TopologyLoad, DMPLEX_LabelsLoad, DMPLEX_CoordinatesLoad, DMPLEX_SectionLoad, DMPLEX_GlobalVectorLoad, DMPLEX_LocalVectorLoad;13,365
-PetscLogEvent DMPLEX_RebalBuildGraph,14,1334
-PetscLogEvent DMPLEX_RebalBuildGraph, DMPLEX_RebalRewriteSF,14,1334
-PetscLogEvent DMPLEX_RebalBuildGraph, DMPLEX_RebalRewriteSF, DMPLEX_RebalGatherGraph,14,1334
-PetscLogEvent DMPLEX_RebalBuildGraph, DMPLEX_RebalRewriteSF, DMPLEX_RebalGatherGraph, DMPLEX_RebalPartition,14,1334
-PetscLogEvent DMPLEX_RebalBuildGraph, DMPLEX_RebalRewriteSF, DMPLEX_RebalGatherGraph, DMPLEX_RebalPartition, DMPLEX_RebalScatterPart;14,1334
-PetscErrorCode DMPlexIsSimplex(35,2084
-PetscErrorCode DMPlexGetSimplexOrBoxCells(69,3123
-PetscErrorCode DMPlexGetFieldType_Internal(108,4194
-PetscErrorCode DMPlexVecView1D(165,6437
-static PetscErrorCode VecView_Plex_Local_Draw_1D(234,8961
-static PetscErrorCode VecView_Plex_Local_Draw_2D(244,9180
-static PetscErrorCode VecView_Plex_Local_Draw(384,15853
-static PetscErrorCode VecView_Plex_Local_VTK(411,16587
-PetscErrorCode VecView_Plex_Local(446,18003
-PetscErrorCode VecView_Plex(523,21019
-PetscErrorCode VecView_Plex_Native(574,23337
-PetscErrorCode VecLoad_Plex_Local(629,25656
-PetscErrorCode VecLoad_Plex(655,26580
-PetscErrorCode VecLoad_Plex_Native(681,27630
-PETSC_UNUSED static PetscErrorCode DMPlexView_Ascii_Geometry(717,29134
-  CS_CARTESIAN,774,31595
-  CS_POLAR,775,31611
-  CS_CYLINDRICAL,776,31623
-  CS_SPHERICAL777,31641
-} CoordSystem;778,31656
-const char *CoordSystems[CoordSystems779,31671
-static PetscErrorCode DMPlexView_Ascii_Coordinates(781,31781
-static PetscErrorCode DMPlexView_Ascii(819,33551
-static PetscErrorCode DMPlexDrawCell(1587,73250
-static PetscErrorCode DMPlexDrawCellHighOrder(1644,77718
-static PetscErrorCode DMPlexView_Draw(1683,79557
-PetscErrorCode DMView_Plex(1746,82483
-PetscErrorCode DMPlexTopologyView(1838,86416
-PetscErrorCode DMPlexCoordinatesView(1879,88053
-PetscErrorCode DMPlexLabelsView(1916,89510
-PetscErrorCode DMPlexSectionView(1963,92149
-PetscErrorCode DMPlexGlobalVectorView(2025,94792
-PetscErrorCode DMPlexLocalVectorView(2100,98110
-PetscErrorCode DMLoad_Plex(2135,99606
-PetscErrorCode DMPlexTopologyLoad(2176,101488
-PetscErrorCode DMPlexCoordinatesLoad(2216,103246
-PetscErrorCode DMPlexLabelsLoad(2259,105104
-PetscErrorCode DMPlexSectionLoad(2334,110101
-PetscErrorCode DMPlexGlobalVectorLoad(2397,113013
-PetscErrorCode DMPlexLocalVectorLoad(2472,116379
-PetscErrorCode DMDestroy_Plex(2508,117935
-PetscErrorCode DMCreateMatrix_Plex(2559,120747
-PetscErrorCode DMPlexGetSubdomainSection(2661,124991
-PetscErrorCode DMPlexGetChart(2696,125925
-PetscErrorCode DMPlexSetChart(2720,126528
-PetscErrorCode DMPlexGetConeSize(2747,127284
-PetscErrorCode DMPlexSetConeSize(2775,128029
-PetscErrorCode DMPlexAddConeSize(2802,128779
-PetscErrorCode DMPlexGetCone(2831,129689
-PetscErrorCode DMPlexGetConeTuple(2861,130621
-PetscErrorCode DMPlexGetConeRecursiveVertices(2902,132124
-PetscErrorCode DMPlexGetConeRecursive(2947,134327
-PetscErrorCode DMPlexRestoreConeRecursive(3033,137695
-PetscErrorCode DMPlexSetCone(3069,139042
-PetscErrorCode DMPlexGetConeOrientation(3116,141265
-PetscErrorCode DMPlexSetConeOrientation(3153,142445
-PetscErrorCode DMPlexInsertCone(3191,144131
-PetscErrorCode DMPlexInsertConeOrientation(3227,145968
-PetscErrorCode DMPlexGetSupportSize(3260,147410
-PetscErrorCode DMPlexSetSupportSize(3288,148169
-PetscErrorCode DMPlexGetSupport(3318,149080
-PetscErrorCode DMPlexSetSupport(3348,150097
-PetscErrorCode DMPlexInsertSupport(3383,151664
-PetscInt DMPolytopeConvertNewOrientation_Internal(3402,152996
-PetscInt DMPolytopeConvertOldOrientation_Internal(3426,153580
-PetscErrorCode DMPlexConvertOldOrientations_Internal(3451,154227
-static PetscErrorCode DMPlexGetTransitiveClosure_Depth1_Private(3493,155727
-static PetscErrorCode DMPlexTransitiveClosure_Tensor_Internal(3547,157680
-PetscErrorCode DMPlexGetTransitiveClosure_Internal(3618,160831
-PetscErrorCode DMPlexGetTransitiveClosure(3727,165540
-PetscErrorCode DMPlexRestoreTransitiveClosure(3756,166721
-PetscErrorCode DMPlexGetMaxSizes(3781,167476
-PetscErrorCode DMSetUp_Plex(3792,167884
-PetscErrorCode DMCreateSubDM_Plex(3812,168598
-PetscErrorCode DMCreateSuperDM_Plex(3829,169236
-PetscErrorCode DMPlexSymmetrize(3867,170352
-static PetscErrorCode DMPlexCreateDepthStratum(3912,172008
-PetscErrorCode DMPlexStratify(3976,175119
-PetscErrorCode DMPlexComputeCellType_Internal(4067,178157
-PetscErrorCode DMPlexComputeCellTypes(4210,181627
-PetscErrorCode DMPlexGetJoin(4260,183227
-PetscErrorCode DMPlexRestoreJoin(4326,185540
-PetscErrorCode DMPlexGetFullJoin(4359,186659
-PetscErrorCode DMPlexGetMeet(4459,190300
-PetscErrorCode DMPlexRestoreMeet(4525,192577
-PetscErrorCode DMPlexGetFullMeet(4558,193696
-PetscErrorCode DMPlexEqual(4653,197112
-PetscErrorCode DMPlexGetNumFaceVertices(4717,199338
-PetscErrorCode DMPlexGetDepthLabel(4800,202250
-PetscErrorCode DMPlexGetDepth(4831,203120
-PetscErrorCode DMPlexGetDepthStratum(4867,204273
-PetscErrorCode DMPlexGetHeightStratum(4917,205861
-PetscErrorCode DMPlexGetPointDepth(4962,207104
-PetscErrorCode DMPlexGetPointHeight(4987,207751
-PetscErrorCode DMPlexGetCellTypeLabel(5019,208687
-PetscErrorCode DMPlexGetCellType(5045,209364
-PetscErrorCode DMPlexSetCellType(5080,210671
-PetscErrorCode DMCreateCoordinateDM_Plex(5091,210971
-PetscErrorCode DMCreateCoordinateField_Plex(5115,211763
-PetscErrorCode DMPlexGetConeSection(5148,212822
-PetscErrorCode DMPlexGetSupportSection(5173,213416
-PetscErrorCode DMPlexGetCones(5198,213944
-PetscErrorCode DMPlexGetConeOrientations(5228,214820
-static PetscErrorCode PetscSectionFieldGetTensorDegree_Private(5244,215344
-PetscErrorCode DMPlexSetClosurePermutationTensor(5319,217661
-PetscErrorCode DMPlexGetPointDualSpaceFEM(5574,230018
-static inline PetscErrorCode DMPlexVecGetClosure_Depth1_Static(5605,230803
-static inline PetscErrorCode CompressPoints_Private(5681,233300
-PetscErrorCode DMPlexGetCompressedClosure(5700,233849
-PetscErrorCode DMPlexRestoreCompressedClosure(5725,234705
-static inline PetscErrorCode DMPlexVecGetClosure_Static(5741,235224
-static inline PetscErrorCode DMPlexVecGetClosure_Fields_Static(5786,236825
-PetscErrorCode DMPlexVecGetClosure(5885,240340
-PetscErrorCode DMPlexVecGetClosureAtDepth_Internal(5935,242669
-PetscErrorCode DMPlexVecRestoreClosure(6034,246466
-static inline void add(6045,246809
-static inline void insert(6049,246878
-static inline PetscErrorCode updatePoint_private(6054,246950
-static inline PetscErrorCode updatePointBC_private(6122,249330
-static inline PetscErrorCode updatePointFields_private(6172,251071
-static inline PetscErrorCode updatePointFieldsBC_private(6242,253583
-static inline PetscErrorCode DMPlexVecSetClosure_Depth1_Static(6357,257700
-PetscErrorCode DMPlexVecSetClosure(6437,260394
-static inline PetscErrorCode CheckPoint_Private(6603,268024
-PetscErrorCode DMPlexVecSetFieldClosure_Internal(6621,268690
-static PetscErrorCode DMPlexPrintMatSetValues(6719,273145
-PetscErrorCode DMPlexGetIndicesPoint_Internal(6765,275312
-PetscErrorCode DMPlexGetIndicesPointFields_Internal(6841,279187
-static PetscErrorCode DMPlexGetIndicesPointFieldsSplit_Internal(6892,281418
-PetscErrorCode DMPlexAnchorsModifyMat(6933,283028
-PetscErrorCode DMPlexGetClosureIndices(7426,302502
-PetscErrorCode DMPlexRestoreClosureIndices(7623,311533
-PetscErrorCode DMPlexMatSetClosure(7650,312621
-PetscErrorCode DMPlexMatSetClosureGeneral(7714,315931
-PetscErrorCode DMPlexMatSetClosureRefined(7758,318967
-PetscErrorCode DMPlexMatGetClosureIndicesRefined(7924,327702
-PetscErrorCode DMPlexGetVTKCellHeight(8082,335511
-PetscErrorCode DMPlexSetVTKCellHeight(8104,336097
-PetscErrorCode DMPlexGetGhostCellStratum(8128,336745
-PetscErrorCode DMPlexCreateNumbering_Plex(8141,337172
-PetscErrorCode DMPlexCreateCellNumbering_Internal(8171,338609
-PetscErrorCode DMPlexGetCellNumbering(8196,339457
-PetscErrorCode DMPlexCreateVertexNumbering_Internal(8207,339835
-PetscErrorCode DMPlexGetVertexNumbering(8231,340575
-PetscErrorCode DMPlexCreatePointNumbering(8285,342099
-PetscErrorCode DMPlexCreateRankField(8342,344187
-PetscErrorCode DMPlexCreateLabelField(8397,345975
-PetscErrorCode DMPlexCheckSymmetry(8447,347571
-static PetscErrorCode DMPlexCellUnsplitVertices_Private(8530,351734
-PetscErrorCode DMPlexCheckSkeleton(8596,353830
-PetscErrorCode DMPlexCheckFaces(8657,356595
-PetscErrorCode DMPlexCheckGeometry(8744,361187
-PetscErrorCode DMPlexCheckPointSF(8820,364051
-PetscErrorCode DMPlexCheck(8924,368405
-typedef struct cell_stats 8939,368843
-  PetscReal min,8940,368871
-  PetscReal min, max,8940,368871
-  PetscReal min, max, sum,8940,368871
-  PetscReal min, max, sum, squaresum;8940,368871
-  PetscInt  count;8941,368909
-} cell_stats_t;8942,368928
-static void MPIAPI cell_stats_reduce(8944,368945
-PetscErrorCode DMPlexCheckCellShape(8979,369988
-PetscErrorCode DMPlexComputeOrthogonalQuality(9131,376637
-static PetscErrorCode DMGetFullDM(9273,383059
-static PetscErrorCode DMCreateAffineInterpolationCorrection_Plex(9300,384064
-PETSC_INTERN PetscErrorCode DMInterpolateSolution_Plex(9346,385945
-PetscErrorCode DMCreateInterpolation_Plex(9381,387100
-PetscErrorCode DMCreateInjection_Plex(9413,388564
-static void g0_identity_private(9424,388891
-PetscErrorCode DMCreateMassMatrixLumped_Plex(9431,389449
-PetscErrorCode DMCreateMassMatrix_Plex(9467,390694
-PetscErrorCode DMPlexGetRegularRefinement(9537,393111
-PetscErrorCode DMPlexSetRegularRefinement(9557,393682
-PetscErrorCode DMPlexGetAnchors(9582,394607
-PetscErrorCode DMPlexSetAnchors(9617,396189
-static PetscErrorCode DMPlexCreateConstraintSection_Anchors(9671,398283
-static PetscErrorCode DMPlexCreateConstraintMatrix_Anchors(9714,399871
-PetscErrorCode DMCreateDefaultConstraints_Plex(9826,404101
-PetscErrorCode DMCreateSubDomainDM_Plex(9850,404954
-PetscErrorCode DMPlexMonitorThroughput(9983,409869
-
 src/dm/impls/plex/plexvtk.c,531
 plexvtk.c:^?plexvtk.c^A,1
 #define PETSCDM_DLL1,0
@@ -51448,16 +51723,6 @@
 PetscErrorCode DMGetEnclosureRelation(4064,173397
 PetscErrorCode DMGetEnclosurePoint(4124,175234
 
-src/dm/impls/plex/plexsection.c,393
-plexsection.c:^?plexsection.c^A,1
-static PetscErrorCode DMPlexCreateSectionFields(4,135
-static PetscErrorCode DMPlexCreateSectionDof(89,3546
-static PetscErrorCode DMPlexCreateSectionBCDof(194,7242
-static PetscErrorCode DMPlexCreateSectionBCIndicesField(270,10157
-static PetscErrorCode DMPlexCreateSectionBCIndices(356,13659
-PetscErrorCode DMPlexCreateSection(430,16617
-PetscErrorCode DMCreateLocalSection_Plex(450,17601
-
 src/dm/impls/plex/plexrefine.c,589
 plexrefine.c:^?plexrefine.c^A,1
 PetscErrorCode DMPlexCreateProcessSF(24,701
@@ -51569,138 +51834,6 @@
 plexindices.c:^?plexindices.c^A,1
 PetscErrorCode DMPlexCreateClosureIndex(19,661
 
-src/dm/impls/plex/plexgmsh.c,5030
-plexgmsh.c:^?plexgmsh.c^A,1
-#define PETSCDM_DLL1,0
-#define GMSH_LEXORDER_ITEM(7,166
-static int *GmshLexOrder_QUA_2_Serendipity(GmshLexOrder_QUA_2_Serendipity16,493
-static int *GmshLexOrder_HEX_2_Serendipity(GmshLexOrder_HEX_2_Serendipity37,921
-#define GMSH_LEXORDER_LIST(77,1705
-GMSH_LEXORDER_ITEM(89,2027
-  GMSH_VTX 99,2238
-  GMSH_SEG 100,2264
-  GMSH_TRI 101,2290
-  GMSH_QUA 102,2316
-  GMSH_TET 103,2342
-  GMSH_HEX 104,2368
-  GMSH_PRI 105,2394
-  GMSH_PYR 106,2420
-  GMSH_NUM_POLYTOPES 107,2446
-} GmshPolytopeType;108,2471
-  int cellType;111,2509
-  int polytope;112,2525
-  int dim;113,2541
-  int order;114,2552
-  int numVerts;115,2565
-  int numNodes;116,2581
-  int *(*lexorder)lexorder117,2597
-} GmshCellInfo;118,2623
-#define GmshCellEntry(120,2640
-static const GmshCellInfo GmshCellTable[GmshCellTable125,2846
-static GmshCellInfo GmshCellMap[GmshCellMap170,5393
-static PetscErrorCode GmshCellInfoSetUp(172,5432
-#define GmshCellTypeCheck(193,5989
-  PetscViewer viewer;198,6522
-  int         fileFormat;199,6544
-  int         dataSize;200,6570
-  PetscBool   binary;201,6594
-  PetscBool   byteSwap;202,6616
-  size_t      wlen;203,6640
-  void       *wbuf;wbuf204,6660
-  size_t      slen;205,6680
-  void       *sbuf;sbuf206,6700
-  PetscInt   *nbuf;nbuf207,6720
-  PetscInt    nodeStart;208,6740
-  PetscInt    nodeEnd;209,6765
-  PetscInt   *nodeMap;nodeMap210,6788
-} GmshFile;211,6811
-static PetscErrorCode GmshBufferGet(213,6824
-static PetscErrorCode GmshBufferSizeGet(227,7187
-static PetscErrorCode GmshRead(242,7587
-static PetscErrorCode GmshReadString(250,7871
-static PetscErrorCode GmshMatch(257,8080
-static PetscErrorCode GmshExpect(264,8313
-static PetscErrorCode GmshReadSection(274,8662
-static PetscErrorCode GmshReadEndSection(292,9142
-static PetscErrorCode GmshReadSize(300,9401
-static PetscErrorCode GmshReadInt(327,10406
-static PetscErrorCode GmshReadDouble(334,10588
-#define GMSH_MAX_TAGS 341,10778
-  PetscInt id;344,10821
-  PetscInt dim;345,10869
-  double   bbox[bbox346,10917
-  PetscInt numTags;347,10968
-  int      tags[tags348,11024
-} GmshEntity;349,11072
-  GmshEntity *entity[entity352,11104
-  PetscHMapI  entityMap[entityMap353,11129
-} GmshEntities;354,11157
-static PetscErrorCode GmshEntitiesCreate(356,11174
-static PetscErrorCode GmshEntitiesDestroy(369,11531
-static PetscErrorCode GmshEntitiesAdd(383,11901
-static PetscErrorCode GmshEntitiesGet(393,12286
-  PetscInt *id;id404,12596
-  double   *xyz;xyz405,12628
-  PetscInt *tag;tag406,12663
-} GmshNodes;407,12699
-static PetscErrorCode GmshNodesCreate(409,12713
-static PetscErrorCode GmshNodesDestroy(419,13042
-  PetscInt  id;431,13359
-  PetscInt  dim;432,13409
-  PetscInt  cellType;433,13458
-  PetscInt  numVerts;434,13507
-  PetscInt  numNodes;435,13567
-  PetscInt *nodes;nodes436,13625
-  PetscInt  numTags;437,13682
-  int       tags[tags438,13748
-} GmshElement;439,13806
-static PetscErrorCode GmshElementsCreate(441,13822
-static PetscErrorCode GmshElementsDestroy(448,14000
-  PetscInt       dim;457,14213
-  PetscInt       order;458,14235
-  GmshEntities  *entities;entities459,14259
-  PetscInt       numNodes;460,14286
-  GmshNodes     *nodelist;nodelist461,14313
-  PetscInt       numElems;462,14340
-  GmshElement   *elements;elements463,14367
-  PetscInt       numVerts;464,14394
-  PetscInt       numCells;465,14421
-  PetscInt      *periodMap;periodMap466,14448
-  PetscInt      *vertexMap;vertexMap467,14476
-  PetscSegBuffer segbuf;468,14504
-  PetscInt       numRegions;469,14529
-  PetscInt      *regionDims;regionDims470,14558
-  PetscInt      *regionTags;regionTags471,14587
-  char         **regionNames;regionNames472,14616
-} GmshMesh;473,14646
-static PetscErrorCode GmshMeshCreate(475,14659
-static PetscErrorCode GmshMeshDestroy(483,14869
-static PetscErrorCode GmshReadNodes_v22(501,15544
-static PetscErrorCode GmshReadElements_v22(532,16912
-static PetscErrorCode GmshReadEntities_v40(611,20051
-static PetscErrorCode GmshReadNodes_v40(659,22145
-static PetscErrorCode GmshReadElements_v40(720,24940
-static PetscErrorCode GmshReadPeriodic_v40(772,27431
-static PetscErrorCode GmshReadEntities_v41(873,31775
-static PetscErrorCode GmshReadNodes_v41(917,33603
-static PetscErrorCode GmshReadElements_v41(964,35400
-static PetscErrorCode GmshReadPeriodic_v41(1020,37618
-static PetscErrorCode GmshReadMeshFormat(1053,38993
-static PetscErrorCode GmshReadPhysicalNames(1092,41058
-static PetscErrorCode GmshReadEntities(1122,42521
-static PetscErrorCode GmshReadNodes(1136,42821
-static PetscErrorCode GmshReadElements(1180,44259
-#define key(1214,45286
-#undef key1218,45543
-static PetscErrorCode GmshReadPeriodic(1252,46600
-#define DM_POLYTOPE_VERTEX 1285,47747
-static const DMPolytopeType DMPolytopeMap[DMPolytopeMap1286,47792
-static inline DMPolytopeType DMPolytopeTypeFromGmsh(1296,48188
-static PetscErrorCode GmshCreateFE(1301,48320
-PetscErrorCode DMPlexCreateGmshFromFile(1390,51934
-PetscErrorCode DMPlexCreateGmsh(1470,55641
-      n 1756,67404
-
 src/dm/impls/plex/plexgenerate.c,269
 plexgenerate.c:^?plexgenerate.c^A,1
 PetscErrorCode DMPlexInvertCell(17,436
@@ -51816,97 +51949,6 @@
 PetscErrorCode DMPlexComputeJacobian_Hybrid_Internal(5503,243586
 PetscErrorCode DMPlexComputeJacobian_Action_Internal(5745,256973
 
-src/dm/impls/plex/plexextrude.c,77
-plexextrude.c:^?plexextrude.c^A,1
-PetscErrorCode DMPlexExtrude(49,2095
-PetscErrorCode DMExtrude_Plex(88,4001
-
-src/dm/impls/plex/plexcreate.c,4220
-plexcreate.c:^?plexcreate.c^A,1
-#define PETSCDM_DLL1,0
-PetscLogEvent DMPLEX_CreateFromFile,9,303
-PetscLogEvent DMPLEX_CreateFromFile, DMPLEX_BuildFromCellList,9,303
-PetscLogEvent DMPLEX_CreateFromFile, DMPLEX_BuildFromCellList, DMPLEX_BuildCoordinatesFromCellList;9,303
-PetscErrorCode DMPlexCopy_Internal(15,606
-PetscErrorCode DMPlexReplace_Internal(40,1548
-static PetscErrorCode DMPlexSwap_Static(91,3551
-static PetscErrorCode DMPlexInterpolateInPlace_Internal(163,6398
-PetscErrorCode DMPlexCreateCoordinateSpace(188,7099
-PetscErrorCode DMPlexCreateDoublet(242,8965
-static PetscErrorCode DMPlexCreateBoxSurfaceMesh_Tensor_1D_Internal(334,12891
-static PetscErrorCode DMPlexCreateBoxSurfaceMesh_Tensor_2D_Internal(388,15154
-static PetscErrorCode DMPlexCreateBoxSurfaceMesh_Tensor_3D_Internal(504,20152
-static PetscErrorCode DMPlexCreateBoxSurfaceMesh_Internal(689,28752
-PetscErrorCode DMPlexCreateBoxSurfaceMesh(732,30496
-static PetscErrorCode DMPlexCreateLineMesh_Internal(745,31028
-static PetscErrorCode DMPlexCreateBoxMesh_Simplex_Internal(803,33651
-static PetscErrorCode DMPlexCreateCubeMesh_Internal(823,34709
-static PetscErrorCode DMPlexCreateBoxMesh_Tensor_Internal(1248,56581
-static PetscErrorCode DMPlexCreateBoxMesh_Internal(1278,57898
-PetscErrorCode DMPlexCreateBoxMesh(1358,60600
-static PetscErrorCode DMPlexCreateWedgeBoxMesh_Internal(1373,61370
-PetscErrorCode DMPlexCreateWedgeBoxMesh(1425,63584
-PetscErrorCode DMPlexSetOptionsPrefix(1463,64946
-static void snapToCylinder(1492,66035
-static PetscErrorCode DMPlexCreateHexCylinderMesh_Internal(1525,67411
-PetscErrorCode DMPlexCreateHexCylinderMesh(1920,79033
-static PetscErrorCode DMPlexCreateWedgeCylinderMesh_Internal(1930,79343
-PetscErrorCode DMPlexCreateWedgeCylinderMesh(2031,83409
-static inline PetscReal DiffNormReal(2041,83737
-static inline PetscReal DotReal(2048,83962
-static void snapToSphere(2057,84204
-static PetscErrorCode DMPlexCreateSphereMesh_Internal(2068,84893
-typedef void (*TPSEvaluateFunc)TPSEvaluateFunc2536,103125
-static void TPSEvaluate_SchwarzP(2543,103308
-static PetscErrorCode TPSExtrudeNormalFunc_SchwarzP(2555,103963
-static void TPSEvaluate_Gyroid(2567,104376
-static PetscErrorCode TPSExtrudeNormalFunc_Gyroid(2587,105634
-static void TPSNearestPointResJac(2618,107234
-static PetscErrorCode TPSNearestPoint(2670,109184
-const char *const DMPlexTPSTypes[DMPlexTPSTypes2693,110175
-static PetscErrorCode DMPlexCreateTPSMesh_Internal(2695,110276
-PetscErrorCode DMPlexCreateTPSMesh(3263,139054
-PetscErrorCode DMPlexCreateSphereMesh(3290,139989
-static PetscErrorCode DMPlexCreateBallMesh_Internal(3300,140315
-PetscErrorCode DMPlexCreateBallMesh(3342,141688
-static PetscErrorCode DMPlexCreateReferenceCell_Internal(3351,141954
-PetscErrorCode DMPlexCreateReferenceCell(3508,149155
-static PetscErrorCode DMPlexCreateBoundaryLabel_Private(3517,149431
-static void boxToAnnulus(3540,150224
-const char *const DMPlexShapes[DMPlexShapes3551,150944
-static PetscErrorCode DMPlexCreateFromOptions_Internal(3553,151124
-PetscErrorCode DMSetFromOptions_NonRefinement_Plex(3752,162139
-PetscErrorCode DMSetFromOptions_Overlap_Plex(3820,167186
-static PetscErrorCode DMSetFromOptions_Plex(3857,169679
-static PetscErrorCode DMCreateGlobalVector_Plex(4113,181235
-static PetscErrorCode DMCreateLocalVector_Plex(4125,181847
-static PetscErrorCode DMGetDimPoints_Plex(4134,182191
-static PetscErrorCode DMGetNeighbors_Plex(4154,182747
-static PetscErrorCode DMInitialize_Plex(4185,183981
-PETSC_INTERN PetscErrorCode DMClone_Plex(4245,187984
-PETSC_EXTERN PetscErrorCode DMCreate_Plex(4290,190702
-PetscErrorCode DMPlexCreate(4339,192231
-PetscErrorCode DMPlexBuildFromCellListParallel(4414,194384
-PetscErrorCode DMPlexBuildCoordinatesFromCellListParallel(4516,199174
-PetscErrorCode DMPlexCreateFromCellListParallelPetsc(4609,203902
-PetscErrorCode DMPlexBuildFromCellList(4686,206120
-PetscErrorCode DMPlexBuildCoordinatesFromCellList(4738,208219
-PetscErrorCode DMPlexCreateFromCellListPetsc(4807,211608
-PetscErrorCode DMPlexCreateFromDAG(4871,214120
-PetscErrorCode DMPlexCreateCellVertexFromFile(4955,217580
-PetscErrorCode DMPlexCreateFromFile(5143,224642
-#define CheckExtension(5175,225999
-#undef CheckExtension5204,227078
-
-src/dm/impls/plex/plexcheckinterface.c,378
-plexcheckinterface.c:^?plexcheckinterface.c^A,1
-static PetscErrorCode ExchangeArrayByRank_Private(6,155
-static PetscErrorCode ExchangeVecByRank_Private(43,1874
-static PetscErrorCode SortByRemote_Private(72,3149
-static PetscErrorCode GetRecursiveConeCoordinatesPerRank_Private(96,4053
-static PetscErrorCode PetscSFComputeMultiRootOriginalNumberingByRank_Private(120,5021
-PetscErrorCode DMPlexCheckInterfaceCones(165,7082
-
 src/dm/impls/plex/plexcgns.c,113
 plexcgns.c:^?plexcgns.c^A,1
 #define PETSCDM_DLL1,0
@@ -52005,48 +52047,6 @@
 PetscErrorCode DMPlexMetricIntersection2(1693,55836
 PetscErrorCode DMPlexMetricIntersection3(1718,56502
 
-src/dm/impls/plex/plexinterpolate.c,1897
-plexinterpolate.c:^?plexinterpolate.c^A,1
-const char *const DMPlexInterpolatedFlags[DMPlexInterpolatedFlags5,143
-typedef struct _PetscHashIJKLKey 11,336
-  PetscInt i,12,371
-  PetscInt i, j,12,371
-  PetscInt i, j, k,12,371
-  PetscInt i, j, k, l;12,371
-} PetscHashIJKLKey;13,394
-#define PetscHashIJKLKeyHash(15,415
-#define PetscHashIJKLKeyEqual(17,595
-PetscDisableStaticAnalyzerForExpressionUnderstandingThatThisIsDangerousAndBugprone(19,730
-typedef struct _PetscHashIJKLRemoteKey 23,971
-  PetscSFNode i,24,1012
-  PetscSFNode i, j,24,1012
-  PetscSFNode i, j, k,24,1012
-  PetscSFNode i, j, k, l;24,1012
-} PetscHashIJKLRemoteKey;25,1038
-#define PetscHashIJKLRemoteKeyHash(27,1065
-#define PetscHashIJKLRemoteKeyEqual(30,1339
-PetscDisableStaticAnalyzerForExpressionUnderstandingThatThisIsDangerousAndBugprone(33,1672
-PetscErrorCode DMPlexGetRawFaces_Internal(56,2393
-PetscErrorCode DMPlexRestoreRawFaces_Internal(474,14434
-static PetscErrorCode DMPlexInterpolateFaces_Internal(484,14991
-static PetscErrorCode SortRmineRremoteByRemote_Private(704,25068
-PetscErrorCode DMPlexOrientInterface_Internal(728,26014
-static PetscErrorCode IntArrayViewFromOptions(858,33003
-static PetscErrorCode SFNodeArrayViewFromOptions(874,33706
-static PetscErrorCode DMPlexMapToLocalPoint(894,34628
-static PetscErrorCode DMPlexMapToGlobalPoint(921,35456
-static PetscErrorCode DMPlexPointIsShared(949,36425
-static PetscErrorCode DMPlexConeIsShared(971,37097
-static PetscErrorCode DMPlexGetConeMinimum(990,37648
-static PetscErrorCode DMPlexAddSharedFace_Private(1019,38552
-PetscErrorCode DMPlexInterpolatePointSF(1110,42880
-PetscErrorCode DMPlexInterpolate(1464,62523
-PetscErrorCode DMPlexCopyCoordinates(1539,65541
-PetscErrorCode DMPlexUninterpolate(1688,71782
-static PetscErrorCode DMPlexIsInterpolated_Internal(1792,76141
-PetscErrorCode DMPlexIsInterpolated(1870,78705
-PetscErrorCode DMPlexIsInterpolatedCollective(1919,80708
-
 src/dm/impls/plex/plexhpddm.c,51
 plexhpddm.c:^?plexhpddm.c^A,1
 PetscErrorCode DMCreateNeumannOverlap_Plex(23,752
@@ -52672,6 +52672,136 @@
 SUBMANSEC 8,121
 LOCDIR 9,140
 
+src/dm/impls/plex/tests/ex39.c,1309
+ex39.c:^?ex39.c^A,1
+const char help[help1,0
+static PetscErrorCode zero_func(24,812
+static PetscErrorCode linear_u(34,1068
+static PetscErrorCode linear_p(40,1260
+static PetscErrorCode sinusoid_u(51,1520
+static PetscErrorCode sinusoid_p(57,1743
+static void f0_v_linear(66,2072
+static void f0_v_sinusoid(77,2692
+static void f0_q(89,3367
+static void f0_w(100,3975
+static void f0_bd_u_sinusoid(112,4679
+static void f0_bd_u_linear(123,5310
+static void g0_vu(137,6124
+static void g0_qp(144,6636
+static void g1_qu(153,7321
+static void g0_wp(161,7932
+static void g0_wd(168,8445
+static void g1_wu(175,8988
+  NONE 183,9570
+  PERTURB 184,9590
+  SKEW 185,9610
+  SKEW_PERTURB 186,9630
+} Transform;187,9649
+const char *const TransformTypes[TransformTypes188,9662
+  LINEAR 192,9858
+  SINUSOIDAL 193,9876
+} Solution;194,9893
+const char *const SolutionTypes[SolutionTypes195,9905
+  Transform mesh_transform;198,10007
+  Solution  sol_form;199,10035
+} UserCtx;200,10057
+static PetscErrorCode ProcessOptions(203,10138
+static PetscErrorCode PerturbMesh(218,10982
+static PetscErrorCode SkewMesh(250,12193
+static PetscErrorCode TransformMesh(287,13428
+static PetscErrorCode CreateMesh(319,14377
+static PetscErrorCode SetupProblem(336,14976
+static PetscErrorCode SetupDiscretization(381,16958
+int main(426,18706
+
+src/dm/impls/plex/tests/ex19.c,503
+ex19.c:^?ex19.c^A,1
+static char help[help1,0
+  PetscInt  Nr;8,156
+  PetscInt  metOpt;9,218
+  PetscReal hmax,10,276
+  PetscReal hmax, hmin;10,276
+  PetscBool doL2;11,349
+} AppCtx;12,398
+static PetscErrorCode sensor(22,645
+static PetscErrorCode ProcessOptions(34,1037
+static PetscErrorCode CreateMesh(54,1991
+static PetscErrorCode ComputeMetricSensor(65,2327
+static PetscErrorCode ComputeMetric(118,4455
+static PetscErrorCode linear(174,6454
+static PetscErrorCode TestL2Projection(180,6613
+int main(260,10319
+
+src/dm/impls/plex/tests/ex18.c,3089
+ex18.c:^?ex18.c^A,1
+static char help[help1,0
+  NONE,190,3355
+  CREATE,191,3363
+  AFTER_CREATE,192,3373
+  AFTER_DISTRIBUTE193,3389
+} InterpType;194,3408
+  PetscInt    debug;197,3440
+  PetscInt    testNum;198,3494
+  PetscInt    dim;199,3557
+  PetscBool   cellSimplex;200,3622
+  PetscBool   distribute;201,3679
+  InterpType  interpolate;202,3733
+  PetscBool   useGenerator;203,3823
+  PetscBool   testOrientIF;204,3894
+  PetscBool   testHeavy;205,3979
+  PetscBool   customView;206,4040
+  PetscInt    ornt[ornt207,4118
+  PetscInt    faces[faces208,4198
+  PetscScalar coords[coords209,4276
+  PetscReal   coordsTol;210,4303
+  PetscInt    ncoords;211,4328
+  PetscInt    pointsToExpand[pointsToExpand212,4351
+  PetscInt    nPointsToExpand;213,4386
+  PetscBool   testExpandPointsEmpty;214,4417
+  char        filename[filename215,4454
+} AppCtx;216,4526
+struct _n_PortableBoundary 218,4537
+  Vec           coordinates;219,4566
+  PetscInt      depth;220,4595
+  PetscSection *sections;sections221,4618
+typedef struct _n_PortableBoundary *PortableBoundary;PortableBoundary223,4647
+static PetscLogStage stage[stage226,4729
+static PetscErrorCode PortableBoundaryDestroy(234,5076
+static PetscErrorCode ProcessOptions(247,5461
+static PetscErrorCode CreateMesh_1D(317,10495
+static PetscErrorCode CreateSimplex_2D(409,13517
+static PetscErrorCode CreateSimplex_3D(517,19288
+static PetscErrorCode CreateQuad_2D(569,21761
+static PetscErrorCode CreateHex_3D(609,23648
+static PetscErrorCode CustomView(649,25730
+static PetscErrorCode CreateMeshFromFile(662,26245
+static PetscErrorCode CreateMesh(688,27678
+#define ps2d(821,33120
+static inline PetscErrorCode coord2str(822,33173
+static PetscErrorCode ViewVerticesFromCoords(848,34172
+static PetscErrorCode TestExpandPoints(880,35545
+static PetscErrorCode DMPlexExpandedConesToFaces_Private(921,37269
+static PetscErrorCode DMPlexExpandedVerticesToFaces_Private(965,38963
+#define CHKERRQI(982,39472
+static PetscErrorCode DMLabelViewFromOptionsOnComm_Private(985,39540
+static inline PetscErrorCode DMLabelGetStratumISOnComm_Private(1007,40389
+static PetscErrorCode PetscSectionReplicate_Private(1020,40889
+static PetscErrorCode DMPlexExpandedVerticesCoordinatesToFaces_Private(1045,41923
+static PetscErrorCode DMPlexSetOrientInterface_Private(1057,42478
+static PetscErrorCode DMPlexGetExpandedBoundary_Private(1095,43940
+static PetscErrorCode DMPlexGetInterfaceFaces_Private(1197,48168
+static PetscErrorCode DMPlexComputeCompleteInterface_Private(1227,49727
+static PetscErrorCode PointSFGetOutwardInterfacePoints(1254,51084
+static PetscErrorCode PointSFGetInwardInterfacePoints(1265,51408
+static PetscErrorCode PointSFGetInterfacePoints_Private(1280,51929
+#define CHKERRMY(1293,52383
+static PetscErrorCode ViewPointsWithType_Internal(1295,52503
+static PetscErrorCode ViewPointsWithType(1360,54867
+static PetscErrorCode DMPlexComparePointSFWithInterface_Private(1381,55636
+static PetscErrorCode DMPlexISFilterVertices_Private(1429,57548
+static PetscErrorCode DMPlexCheckPointSFHeavy(1467,59575
+int main(1511,61597
+
 src/dm/impls/plex/tests/ex26.c,44
 ex26.c:^?ex26.c^A,1
 static char help[help1,0
@@ -53044,48 +53174,6 @@
 PetscErrorCode CreateMesh(545,22898
 int main(790,32122
 
-src/dm/impls/plex/tests/ex39.c,1309
-ex39.c:^?ex39.c^A,1
-const char help[help1,0
-static PetscErrorCode zero_func(24,812
-static PetscErrorCode linear_u(34,1068
-static PetscErrorCode linear_p(40,1260
-static PetscErrorCode sinusoid_u(51,1520
-static PetscErrorCode sinusoid_p(57,1743
-static void f0_v_linear(66,2072
-static void f0_v_sinusoid(77,2692
-static void f0_q(89,3367
-static void f0_w(100,3975
-static void f0_bd_u_sinusoid(112,4679
-static void f0_bd_u_linear(123,5310
-static void g0_vu(137,6124
-static void g0_qp(144,6636
-static void g1_qu(153,7321
-static void g0_wp(161,7932
-static void g0_wd(168,8445
-static void g1_wu(175,8988
-  NONE 183,9570
-  PERTURB 184,9590
-  SKEW 185,9610
-  SKEW_PERTURB 186,9630
-} Transform;187,9649
-const char *const TransformTypes[TransformTypes188,9662
-  LINEAR 192,9858
-  SINUSOIDAL 193,9876
-} Solution;194,9893
-const char *const SolutionTypes[SolutionTypes195,9905
-  Transform mesh_transform;198,10007
-  Solution  sol_form;199,10035
-} UserCtx;200,10057
-static PetscErrorCode ProcessOptions(203,10138
-static PetscErrorCode PerturbMesh(218,10982
-static PetscErrorCode SkewMesh(250,12193
-static PetscErrorCode TransformMesh(287,13427
-static PetscErrorCode CreateMesh(319,14376
-static PetscErrorCode SetupProblem(336,14975
-static PetscErrorCode SetupDiscretization(381,16957
-int main(426,18705
-
 src/dm/impls/plex/tests/ex38.c,80
 ex38.c:^?ex38.c^A,1
 const char help[help1,0
@@ -53334,94 +53422,6 @@
 const char help[help1,0
 int main(6,121
 
-src/dm/impls/plex/tests/ex19.c,503
-ex19.c:^?ex19.c^A,1
-static char help[help1,0
-  PetscInt  Nr;8,156
-  PetscInt  metOpt;9,218
-  PetscReal hmax,10,276
-  PetscReal hmax, hmin;10,276
-  PetscBool doL2;11,349
-} AppCtx;12,398
-static PetscErrorCode sensor(22,645
-static PetscErrorCode ProcessOptions(34,1037
-static PetscErrorCode CreateMesh(54,1991
-static PetscErrorCode ComputeMetricSensor(65,2327
-static PetscErrorCode ComputeMetric(118,4455
-static PetscErrorCode linear(174,6454
-static PetscErrorCode TestL2Projection(180,6613
-int main(260,10319
-
-src/dm/impls/plex/tests/ex18.c,3089
-ex18.c:^?ex18.c^A,1
-static char help[help1,0
-  NONE,190,3355
-  CREATE,191,3363
-  AFTER_CREATE,192,3373
-  AFTER_DISTRIBUTE193,3389
-} InterpType;194,3408
-  PetscInt    debug;197,3440
-  PetscInt    testNum;198,3494
-  PetscInt    dim;199,3557
-  PetscBool   cellSimplex;200,3622
-  PetscBool   distribute;201,3679
-  InterpType  interpolate;202,3733
-  PetscBool   useGenerator;203,3823
-  PetscBool   testOrientIF;204,3894
-  PetscBool   testHeavy;205,3979
-  PetscBool   customView;206,4040
-  PetscInt    ornt[ornt207,4118
-  PetscInt    faces[faces208,4198
-  PetscScalar coords[coords209,4276
-  PetscReal   coordsTol;210,4303
-  PetscInt    ncoords;211,4328
-  PetscInt    pointsToExpand[pointsToExpand212,4351
-  PetscInt    nPointsToExpand;213,4386
-  PetscBool   testExpandPointsEmpty;214,4417
-  char        filename[filename215,4454
-} AppCtx;216,4526
-struct _n_PortableBoundary 218,4537
-  Vec           coordinates;219,4566
-  PetscInt      depth;220,4595
-  PetscSection *sections;sections221,4618
-typedef struct _n_PortableBoundary *PortableBoundary;PortableBoundary223,4647
-static PetscLogStage stage[stage226,4729
-static PetscErrorCode PortableBoundaryDestroy(234,5076
-static PetscErrorCode ProcessOptions(247,5461
-static PetscErrorCode CreateMesh_1D(317,10495
-static PetscErrorCode CreateSimplex_2D(409,13517
-static PetscErrorCode CreateSimplex_3D(517,19288
-static PetscErrorCode CreateQuad_2D(569,21761
-static PetscErrorCode CreateHex_3D(609,23648
-static PetscErrorCode CustomView(649,25730
-static PetscErrorCode CreateMeshFromFile(662,26245
-static PetscErrorCode CreateMesh(688,27678
-#define ps2d(821,33120
-static inline PetscErrorCode coord2str(822,33173
-static PetscErrorCode ViewVerticesFromCoords(848,34172
-static PetscErrorCode TestExpandPoints(880,35545
-static PetscErrorCode DMPlexExpandedConesToFaces_Private(921,37269
-static PetscErrorCode DMPlexExpandedVerticesToFaces_Private(965,38963
-#define CHKERRQI(982,39472
-static PetscErrorCode DMLabelViewFromOptionsOnComm_Private(985,39540
-static inline PetscErrorCode DMLabelGetStratumISOnComm_Private(1007,40389
-static PetscErrorCode PetscSectionReplicate_Private(1020,40889
-static PetscErrorCode DMPlexExpandedVerticesCoordinatesToFaces_Private(1045,41923
-static PetscErrorCode DMPlexSetOrientInterface_Private(1057,42478
-static PetscErrorCode DMPlexGetExpandedBoundary_Private(1095,43940
-static PetscErrorCode DMPlexGetInterfaceFaces_Private(1197,48168
-static PetscErrorCode DMPlexComputeCompleteInterface_Private(1227,49727
-static PetscErrorCode PointSFGetOutwardInterfacePoints(1254,51084
-static PetscErrorCode PointSFGetInwardInterfacePoints(1265,51408
-static PetscErrorCode PointSFGetInterfacePoints_Private(1280,51929
-#define CHKERRMY(1293,52383
-static PetscErrorCode ViewPointsWithType_Internal(1295,52503
-static PetscErrorCode ViewPointsWithType(1360,54867
-static PetscErrorCode DMPlexComparePointSFWithInterface_Private(1381,55636
-static PetscErrorCode DMPlexISFilterVertices_Private(1429,57548
-static PetscErrorCode DMPlexCheckPointSFHeavy(1467,59575
-int main(1511,61597
-
 src/dm/impls/plex/tests/ex17.c,128
 ex17.c:^?ex17.c^A,1
 static char help[help1,0
@@ -53810,6 +53810,24 @@
 PetscErrorCode ProcessOptions(21,540
 int main(61,2155
 
+src/dm/impls/network/networkcreate.c,757
+networkcreate.c:^?networkcreate.c^A,1
+#define PETSCDM_DLL1,0
+PetscErrorCode DMSetFromOptions_Network(5,128
+static PetscErrorCode VecArrayPrint_private(24,957
+static PetscErrorCode VecView_Network_Seq(43,1730
+static PetscErrorCode VecView_Network_MPI(81,3143
+PetscErrorCode VecView_Network(198,7502
+static PetscErrorCode DMCreateGlobalVector_Network(221,8301
+static PetscErrorCode DMCreateLocalVector_Network(232,8640
+PetscErrorCode DMNetworkInitializeToDefault_NonShared(242,8896
+PetscErrorCode DMNetworkInitializeToDefault(281,10101
+PetscErrorCode DMInitialize_Network(316,11260
+static PetscErrorCode DMNetworkCopyHeaderTopological(349,12759
+PetscErrorCode DMClone_Network(375,13928
+PETSC_EXTERN PetscErrorCode DMCreate_Network(405,15464
+PetscErrorCode DMNetworkCreate(434,16088
+
 src/dm/impls/network/network.c,3995
 network.c:^?network.c^A,1
 PetscLogEvent DMNetwork_LayoutSetUp;3,71
@@ -53820,71 +53838,71 @@
 PetscErrorCode DMNetworkGetPlex(54,1963
 PetscErrorCode DMNetworkGetNumSubNetworks(79,2461
 PetscErrorCode DMNetworkSetNumSubNetworks(103,3060
-PetscErrorCode DMNetworkAddSubnetwork(202,6153
-PetscErrorCode DMNetworkSharedVertexGetInfo(294,9940
-static inline PetscErrorCode VtxGetInfo(325,10925
-static inline PetscErrorCode TableAddSVtx(364,12037
-static PetscErrorCode SharedVtxCreate(392,12990
-static PetscErrorCode GetEdgelist_Coupling(515,17894
-PetscErrorCode DMNetworkInitializeNonTopological(607,22117
-PetscErrorCode DMNetworkLayoutSetUp(650,23540
-PetscErrorCode DMNetworkGetSubnetwork(810,31129
-PetscErrorCode DMNetworkAddSharedVertices(840,32422
-PetscErrorCode DMNetworkGetSharedVertices(885,34036
-PetscErrorCode DMNetworkRegisterComponent(916,34849
-PetscErrorCode DMNetworkGetVertexRange(974,36628
-PetscErrorCode DMNetworkGetEdgeRange(1000,37212
-PetscErrorCode DMNetworkGetIndex(1011,37541
-PetscErrorCode DMNetworkGetSubnetID(1029,38048
-PetscErrorCode DMNetworkGetGlobalEdgeIndex(1063,38883
-PetscErrorCode DMNetworkGetGlobalVertexIndex(1086,39409
-PetscErrorCode DMNetworkGetNumComponents(1109,39932
-PetscErrorCode DMNetworkGetLocalVecOffset(1147,41382
-PetscErrorCode DMNetworkGetGlobalVecOffset(1191,43095
-PetscErrorCode DMNetworkGetEdgeOffset(1227,44218
-PetscErrorCode DMNetworkGetVertexOffset(1252,44823
-PetscErrorCode DMNetworkAddComponent(1286,46457
-PetscErrorCode DMNetworkGetComponent(1386,51097
-PetscErrorCode DMNetworkComponentSetUp(1418,52394
-static PetscErrorCode DMNetworkVariablesSetUp(1474,55164
-static PetscErrorCode DMNetworkGetSubSection_private(1484,55418
-static PetscErrorCode DMNetworkSetSubMap_private(1501,56035
-PetscErrorCode DMNetworkAssembleGraphStructures(1533,57174
-static inline PetscErrorCode SetSubnetIdLookupBT(1577,59542
-PetscErrorCode DMNetworkDistribute(1615,60785
-PetscErrorCode PetscSFGetSubSF(1823,71319
-PetscErrorCode DMNetworkGetSupportingEdges(1892,74038
-PetscErrorCode DMNetworkGetConnectedVertices(1922,74859
-PetscErrorCode DMNetworkIsSharedVertex(1947,75456
-PetscErrorCode DMNetworkIsGhostVertex(1990,76574
-PetscErrorCode DMSetUp_Network(2004,76989
-PetscErrorCode DMNetworkHasJacobian(2029,77796
-PetscErrorCode DMNetworkEdgeSetMatrix(2078,79255
-PetscErrorCode DMNetworkVertexSetMatrix(2110,80174
-static inline PetscErrorCode MatSetPreallocationDenseblock_private(2130,80978
-static inline PetscErrorCode MatSetPreallocationUserblock_private(2144,81460
-static inline PetscErrorCode MatSetPreallocationblock_private(2168,82269
-static inline PetscErrorCode MatSetDenseblock_private(2179,82693
-static inline PetscErrorCode MatSetUserblock_private(2192,83154
-static inline PetscErrorCode MatSetblock_private(2213,83994
-PetscErrorCode CreateSubGlobalToLocalMapping_private(2226,84516
-PetscErrorCode DMCreateMatrix_Network_Nest(2250,85239
-PetscErrorCode DMCreateMatrix_Network(2316,87692
-static PetscErrorCode DMNetworkDestroyComponentData(2577,97211
-PetscErrorCode DMDestroy_Network(2594,97804
-PetscErrorCode DMView_Network(2659,100939
-PetscErrorCode DMGlobalToLocalBegin_Network(2722,104301
-PetscErrorCode DMGlobalToLocalEnd_Network(2731,104547
-PetscErrorCode DMLocalToGlobalBegin_Network(2740,104789
-PetscErrorCode DMLocalToGlobalEnd_Network(2749,105035
-PetscErrorCode DMNetworkGetVertexLocalToGlobalOrdering(2774,105600
-PetscErrorCode DMNetworkSetVertexLocalToGlobalOrdering(2797,106225
-static inline PetscErrorCode DMISAddSize_private(2906,110645
-static inline PetscErrorCode DMISComputeIdx_private(2932,111540
-PetscErrorCode DMNetworkCreateIS(2985,113769
-static inline PetscErrorCode DMISComputeLocalIdx_private(3029,115576
-PetscErrorCode DMNetworkCreateLocalIS(3082,117815
-PetscErrorCode DMNetworkFinalizeComponents(3124,119505
+PetscErrorCode DMNetworkAddSubnetwork(202,6154
+PetscErrorCode DMNetworkSharedVertexGetInfo(294,9941
+static inline PetscErrorCode VtxGetInfo(325,10926
+static inline PetscErrorCode TableAddSVtx(364,12038
+static PetscErrorCode SharedVtxCreate(392,12991
+static PetscErrorCode GetEdgelist_Coupling(515,17895
+PetscErrorCode DMNetworkInitializeNonTopological(607,22118
+PetscErrorCode DMNetworkLayoutSetUp(650,23541
+PetscErrorCode DMNetworkGetSubnetwork(810,31130
+PetscErrorCode DMNetworkAddSharedVertices(840,32423
+PetscErrorCode DMNetworkGetSharedVertices(885,34037
+PetscErrorCode DMNetworkRegisterComponent(916,34850
+PetscErrorCode DMNetworkGetVertexRange(974,36629
+PetscErrorCode DMNetworkGetEdgeRange(1000,37213
+PetscErrorCode DMNetworkGetIndex(1011,37542
+PetscErrorCode DMNetworkGetSubnetID(1029,38049
+PetscErrorCode DMNetworkGetGlobalEdgeIndex(1063,38884
+PetscErrorCode DMNetworkGetGlobalVertexIndex(1086,39410
+PetscErrorCode DMNetworkGetNumComponents(1109,39933
+PetscErrorCode DMNetworkGetLocalVecOffset(1147,41383
+PetscErrorCode DMNetworkGetGlobalVecOffset(1191,43096
+PetscErrorCode DMNetworkGetEdgeOffset(1227,44219
+PetscErrorCode DMNetworkGetVertexOffset(1252,44824
+PetscErrorCode DMNetworkAddComponent(1286,46458
+PetscErrorCode DMNetworkGetComponent(1386,51098
+PetscErrorCode DMNetworkComponentSetUp(1418,52395
+static PetscErrorCode DMNetworkVariablesSetUp(1474,55165
+static PetscErrorCode DMNetworkGetSubSection_private(1484,55419
+static PetscErrorCode DMNetworkSetSubMap_private(1501,56036
+PetscErrorCode DMNetworkAssembleGraphStructures(1533,57175
+static inline PetscErrorCode SetSubnetIdLookupBT(1577,59543
+PetscErrorCode DMNetworkDistribute(1615,60786
+PetscErrorCode PetscSFGetSubSF(1823,71320
+PetscErrorCode DMNetworkGetSupportingEdges(1892,74039
+PetscErrorCode DMNetworkGetConnectedVertices(1922,74860
+PetscErrorCode DMNetworkIsSharedVertex(1947,75457
+PetscErrorCode DMNetworkIsGhostVertex(1990,76575
+PetscErrorCode DMSetUp_Network(2004,76990
+PetscErrorCode DMNetworkHasJacobian(2029,77797
+PetscErrorCode DMNetworkEdgeSetMatrix(2078,79256
+PetscErrorCode DMNetworkVertexSetMatrix(2110,80175
+static inline PetscErrorCode MatSetPreallocationDenseblock_private(2130,80979
+static inline PetscErrorCode MatSetPreallocationUserblock_private(2144,81461
+static inline PetscErrorCode MatSetPreallocationblock_private(2168,82270
+static inline PetscErrorCode MatSetDenseblock_private(2179,82694
+static inline PetscErrorCode MatSetUserblock_private(2192,83155
+static inline PetscErrorCode MatSetblock_private(2213,83995
+PetscErrorCode CreateSubGlobalToLocalMapping_private(2226,84517
+PetscErrorCode DMCreateMatrix_Network_Nest(2250,85240
+PetscErrorCode DMCreateMatrix_Network(2316,87693
+static PetscErrorCode DMNetworkDestroyComponentData(2577,97212
+PetscErrorCode DMDestroy_Network(2594,97805
+PetscErrorCode DMView_Network(2659,100940
+PetscErrorCode DMGlobalToLocalBegin_Network(2722,104302
+PetscErrorCode DMGlobalToLocalEnd_Network(2731,104548
+PetscErrorCode DMLocalToGlobalBegin_Network(2740,104790
+PetscErrorCode DMLocalToGlobalEnd_Network(2749,105036
+PetscErrorCode DMNetworkGetVertexLocalToGlobalOrdering(2774,105601
+PetscErrorCode DMNetworkSetVertexLocalToGlobalOrdering(2797,106226
+static inline PetscErrorCode DMISAddSize_private(2906,110646
+static inline PetscErrorCode DMISComputeIdx_private(2932,111541
+PetscErrorCode DMNetworkCreateIS(2985,113770
+static inline PetscErrorCode DMISComputeLocalIdx_private(3029,115577
+PetscErrorCode DMNetworkCreateLocalIS(3082,117816
+PetscErrorCode DMNetworkFinalizeComponents(3124,119506
 
 src/dm/impls/network/networkmonitor.c,229
 networkmonitor.c:^?networkmonitor.c^A,1
@@ -53894,24 +53912,6 @@
 PetscErrorCode DMNetworkMonitorAdd(119,2920
 PetscErrorCode DMNetworkMonitorView(183,5437
 
-src/dm/impls/network/networkcreate.c,757
-networkcreate.c:^?networkcreate.c^A,1
-#define PETSCDM_DLL1,0
-PetscErrorCode DMSetFromOptions_Network(5,128
-static PetscErrorCode VecArrayPrint_private(24,957
-static PetscErrorCode VecView_Network_Seq(43,1730
-static PetscErrorCode VecView_Network_MPI(81,3143
-PetscErrorCode VecView_Network(198,7502
-static PetscErrorCode DMCreateGlobalVector_Network(221,8301
-static PetscErrorCode DMCreateLocalVector_Network(232,8640
-PetscErrorCode DMNetworkInitializeToDefault_NonShared(242,8896
-PetscErrorCode DMNetworkInitializeToDefault(281,10101
-PetscErrorCode DMInitialize_Network(316,11260
-static PetscErrorCode DMNetworkCopyHeaderTopological(349,12758
-PetscErrorCode DMClone_Network(375,13927
-PETSC_EXTERN PetscErrorCode DMCreate_Network(405,15463
-PetscErrorCode DMNetworkCreate(434,16087
-
 src/dm/impls/network/makefile,115
 makefile:^?makefile^A,1
 SOURCEC 3,34
@@ -53923,10 +53923,6 @@
 SUBMANSEC=9,163
 LOCDIR 10,184
 
-src/dm/impls/network/tests/makefile,13
-makefile:^?makefile^A,1
-LOCDIR 3,37
-
 src/dm/impls/network/tests/ex1.c,138
 ex1.c:^?ex1.c^A,1
 static char help[help1,0
@@ -53934,6 +53930,10 @@
 PetscErrorCode CreateSimpleStarGraph(56,2036
 int main(92,3570
 
+src/dm/impls/network/tests/makefile,13
+makefile:^?makefile^A,1
+LOCDIR 3,37
+
 src/dm/impls/moab/makefile,120
 makefile:^?makefile^A,1
 SOURCECXX=4,70
@@ -54567,6 +54567,60 @@
 static char help[help3,63
 int main(5,151
 
+src/dm/impls/da/dainterp.c,757
+dainterp.c:^?dainterp.c^A,1
+#define NEWVERSION 12,642
+static PetscErrorCode ConvertToAIJ(22,1089
+PetscErrorCode DMCreateInterpolation_DA_1D_Q1(40,1493
+PetscErrorCode DMCreateInterpolation_DA_1D_Q0(177,7249
+PetscErrorCode DMCreateInterpolation_DA_2D_Q1(263,11256
+PetscErrorCode DMCreateInterpolation_DA_2D_Q0(495,22600
+PetscErrorCode DMCreateInterpolation_DA_3D_Q0(620,29304
+PetscErrorCode DMCreateInterpolation_DA_3D_Q1(755,37298
+PetscErrorCode DMCreateInterpolation_DA(1034,52058
+PetscErrorCode DMCreateInjection_DA_1D(1079,55015
+PetscErrorCode DMCreateInjection_DA_2D(1135,57729
+PetscErrorCode DMCreateInjection_DA_3D(1205,61745
+PetscErrorCode DMCreateInjection_DA(1295,67061
+PetscErrorCode DMCreateAggregates(1335,69339
+PetscErrorCode DMDACreateAggregates(1362,70057
+
+src/dm/impls/da/dagtol.c,431
+dagtol.c:^?dagtol.c^A,1
+PetscErrorCode DMGlobalToLocalBegin_DA(7,134
+PetscErrorCode DMGlobalToLocalEnd_DA(19,508
+PetscErrorCode DMLocalToGlobalBegin_DA(31,878
+PetscErrorCode DMLocalToGlobalEnd_DA(50,2177
+PetscErrorCode DMDAGlobalToNatural_Create(84,3373
+PetscErrorCode DMDAGlobalToNaturalBegin(138,5509
+PetscErrorCode DMDAGlobalToNaturalEnd(179,6925
+PetscErrorCode DMDANaturalToGlobalBegin(217,8338
+PetscErrorCode DMDANaturalToGlobalEnd(258,9833
+
+src/dm/impls/da/dageometry.c,217
+dageometry.c:^?dageometry.c^A,1
+PetscErrorCode DMDAConvertToCell(20,351
+PetscErrorCode private_DMDALocatePointsIS_2D_Regular(36,1500
+PetscErrorCode private_DMDALocatePointsIS_3D_Regular(115,3978
+PetscErrorCode DMLocatePoints_DA_Regular(212,7161
+
+src/dm/impls/da/dacorn.c,651
+dacorn.c:^?dacorn.c^A,1
+PetscErrorCode DMCreateCoordinateDM_DA(9,161
+PetscErrorCode DMCreateCoordinateField_DA(16,326
+PetscErrorCode DMDASetFieldName(56,1613
+PetscErrorCode DMDAGetFieldNames(87,2775
+PetscErrorCode DMDASetFieldNames(115,3628
+PetscErrorCode DMDAGetFieldName(152,4872
+PetscErrorCode DMDASetCoordinateName(185,5949
+PetscErrorCode DMDAGetCoordinateName(220,7083
+PetscErrorCode DMDAGetCorners(261,8722
+PetscErrorCode DMGetLocalBoundingIndices_DMDA(281,9412
+PetscErrorCode DMDAGetReducedDMDA(301,9884
+PetscErrorCode DMDACreateCompatibleDMDA(324,10537
+PetscErrorCode DMDAGetCoordinateArray(393,12543
+PetscErrorCode DMDARestoreCoordinateArray(422,13214
+
 src/dm/impls/da/grvtk.c,194
 grvtk.c:^?grvtk.c^A,1
 static PetscErrorCode DMDAGetFieldsNamed(11,480
@@ -54699,24 +54753,6 @@
 PetscErrorCode DMDAGetArray(426,14593
 PetscErrorCode DMDARestoreArray(543,17929
 
-src/dm/impls/da/dainterp.c,757
-dainterp.c:^?dainterp.c^A,1
-#define NEWVERSION 12,642
-static PetscErrorCode ConvertToAIJ(22,1089
-PetscErrorCode DMCreateInterpolation_DA_1D_Q1(40,1493
-PetscErrorCode DMCreateInterpolation_DA_1D_Q0(177,7249
-PetscErrorCode DMCreateInterpolation_DA_2D_Q1(263,11256
-PetscErrorCode DMCreateInterpolation_DA_2D_Q0(495,22600
-PetscErrorCode DMCreateInterpolation_DA_3D_Q0(620,29304
-PetscErrorCode DMCreateInterpolation_DA_3D_Q1(755,37298
-PetscErrorCode DMCreateInterpolation_DA(1034,52058
-PetscErrorCode DMCreateInjection_DA_1D(1079,55015
-PetscErrorCode DMCreateInjection_DA_2D(1135,57729
-PetscErrorCode DMCreateInjection_DA_3D(1205,61745
-PetscErrorCode DMCreateInjection_DA(1295,67061
-PetscErrorCode DMCreateAggregates(1335,69339
-PetscErrorCode DMDACreateAggregates(1362,70057
-
 src/dm/impls/da/daindex.c,119
 daindex.c:^?daindex.c^A,1
 PetscErrorCode DMDAGetNatural_Private(12,263
@@ -54728,18 +54764,6 @@
 PetscErrorCode DMDAGlobalToNaturalAllCreate(29,898
 PetscErrorCode DMDANaturalAllToGlobalCreate(74,2448
 
-src/dm/impls/da/dagtol.c,431
-dagtol.c:^?dagtol.c^A,1
-PetscErrorCode DMGlobalToLocalBegin_DA(7,134
-PetscErrorCode DMGlobalToLocalEnd_DA(19,508
-PetscErrorCode DMLocalToGlobalBegin_DA(31,878
-PetscErrorCode DMLocalToGlobalEnd_DA(50,2177
-PetscErrorCode DMDAGlobalToNatural_Create(84,3373
-PetscErrorCode DMDAGlobalToNaturalBegin(138,5509
-PetscErrorCode DMDAGlobalToNaturalEnd(179,6925
-PetscErrorCode DMDANaturalToGlobalBegin(217,8338
-PetscErrorCode DMDANaturalToGlobalEnd(258,9833
-
 src/dm/impls/da/daghost.c,44
 daghost.c:^?daghost.c^A,1
 PetscErrorCode DMDAGetGhostCorners(36,1299
@@ -54773,13 +54797,6 @@
 PetscErrorCode DMDAVecGetArrayDOFWrite(619,27907
 PetscErrorCode DMDAVecRestoreArrayDOFWrite(665,29965
 
-src/dm/impls/da/dageometry.c,217
-dageometry.c:^?dageometry.c^A,1
-PetscErrorCode DMDAConvertToCell(20,351
-PetscErrorCode private_DMDALocatePointsIS_2D_Regular(36,1500
-PetscErrorCode private_DMDALocatePointsIS_3D_Regular(115,3978
-PetscErrorCode DMLocatePoints_DA_Regular(212,7161
-
 src/dm/impls/da/dadist.c,137
 dadist.c:^?dadist.c^A,1
 PetscErrorCode VecDuplicate_MPI_DA(8,135
@@ -54807,23 +54824,6 @@
 PETSC_EXTERN PetscErrorCode DMCreate_DA(348,15618
 PetscErrorCode DMDACreate(471,19446
 
-src/dm/impls/da/dacorn.c,651
-dacorn.c:^?dacorn.c^A,1
-PetscErrorCode DMCreateCoordinateDM_DA(9,161
-PetscErrorCode DMCreateCoordinateField_DA(16,326
-PetscErrorCode DMDASetFieldName(56,1613
-PetscErrorCode DMDAGetFieldNames(87,2775
-PetscErrorCode DMDASetFieldNames(115,3628
-PetscErrorCode DMDAGetFieldName(152,4872
-PetscErrorCode DMDASetCoordinateName(185,5949
-PetscErrorCode DMDAGetCoordinateName(220,7082
-PetscErrorCode DMDAGetCorners(261,8721
-PetscErrorCode DMGetLocalBoundingIndices_DMDA(281,9411
-PetscErrorCode DMDAGetReducedDMDA(301,9883
-PetscErrorCode DMDACreateCompatibleDMDA(324,10536
-PetscErrorCode DMDAGetCoordinateArray(393,12542
-PetscErrorCode DMDARestoreCoordinateArray(422,13213
-
 src/dm/impls/da/da3.c,122
 da3.c:^?da3.c^A,1
 static PetscErrorCode DMView_DA_3d(10,203
@@ -55755,7 +55755,7 @@
       subroutine DMSwarmSetPointCoordinatesRandom(110,3227
       subroutine DMSwarmSetType(116,3427
 
-src/dm/f90-mod/ftn-auto-interfaces/petscdmplex.h90,13657
+src/dm/f90-mod/ftn-auto-interfaces/petscdmplex.h90,13658
 petscdmplex.h90:^?petscdmplex.h90^A,1
       subroutine DMPlexSetAdjacencyUseAnchors(1,0
       subroutine DMPlexGetAdjacencyUseAnchors(7,194
@@ -55772,229 +55772,229 @@
       subroutine DMPlexDistributeSetDefault(94,2898
       subroutine DMPlexDistributeGetDefault(100,3088
       subroutine DMPlexIsDistributed(106,3278
-      subroutine DMPlexInterpolatePointSF(112,3454
-      subroutine DMPlexInterpolate(118,3645
-      subroutine DMPlexCopyCoordinates(124,3803
-      subroutine DMPlexUninterpolate(130,3969
-      subroutine DMPlexIsInterpolated(136,4131
-      subroutine DMPlexIsInterpolatedCollective(142,4335
-      subroutine DMPlexMetricSetIsotropic(148,4559
-      subroutine DMPlexMetricIsIsotropic(154,4745
-      subroutine DMPlexMetricSetUniform(160,4929
-      subroutine DMPlexMetricIsUniform(166,5111
-      subroutine DMPlexMetricSetRestrictAnisotropyFirst(172,5291
-      subroutine DMPlexMetricRestrictAnisotropyFirst(178,5505
-      subroutine DMPlexMetricSetNoInsertion(184,5713
-      subroutine DMPlexMetricNoInsertion(190,5903
-      subroutine DMPlexMetricSetNoSwapping(196,6087
-      subroutine DMPlexMetricNoSwapping(202,6275
-      subroutine DMPlexMetricSetNoMovement(208,6457
-      subroutine DMPlexMetricNoMovement(214,6645
-      subroutine DMPlexMetricSetNoSurf(220,6827
-      subroutine DMPlexMetricNoSurf(226,7007
-      subroutine DMPlexMetricSetMinimumMagnitude(232,7181
-      subroutine DMPlexMetricGetMinimumMagnitude(238,7381
-      subroutine DMPlexMetricSetMaximumMagnitude(244,7581
-      subroutine DMPlexMetricGetMaximumMagnitude(250,7781
-      subroutine DMPlexMetricSetMaximumAnisotropy(256,7981
-      subroutine DMPlexMetricGetMaximumAnisotropy(262,8183
-      subroutine DMPlexMetricSetTargetComplexity(268,8385
-      subroutine DMPlexMetricGetTargetComplexity(274,8585
-      subroutine DMPlexMetricSetNormalizationOrder(280,8785
-      subroutine DMPlexMetricGetNormalizationOrder(286,8989
-      subroutine DMPlexMetricSetGradationFactor(292,9193
-      subroutine DMPlexMetricGetGradationFactor(298,9391
-      subroutine DMPlexMetricSetHausdorffNumber(304,9589
-      subroutine DMPlexMetricGetHausdorffNumber(310,9787
-      subroutine DMPlexMetricSetVerbosity(316,9985
-      subroutine DMPlexMetricGetVerbosity(322,10169
-      subroutine DMPlexMetricSetNumIterations(328,10353
-      subroutine DMPlexMetricGetNumIterations(334,10545
-      subroutine DMPlexMetricCreate(340,10737
-      subroutine DMPlexMetricCreateUniform(347,10935
-      subroutine DMPlexMetricCreateIsotropic(355,11180
-      subroutine DMPlexMetricDeterminantCreate(363,11417
-      subroutine DMPlexMetricEnforceSPD(371,11656
-      subroutine DMPlexMetricNormalize(381,11939
-      subroutine DMPlexMetricAverage(391,12220
-      subroutine DMPlexMetricAverage2(400,12482
-      subroutine DMPlexMetricAverage3(408,12695
-      subroutine DMPlexMetricIntersection(417,12929
-      subroutine DMPlexMetricIntersection2(425,13164
-      subroutine DMPlexMetricIntersection3(433,13387
-      subroutine DMPlexGetOrdering(442,13631
-      subroutine DMPlexGetOrdering1D(450,13876
-      subroutine DMPlexPermute(456,14042
-      subroutine DMPlexReorderSetDefault(463,14215
-      subroutine DMPlexReorderGetDefault(469,14429
-      subroutine DMPlexCreateCGNS(475,14643
-      subroutine DMPlexCheckInterfaceCones(483,14875
-      subroutine DMPlexCreateDoublet(488,15030
-      subroutine DMPlexCreateWedgeBoxMesh(498,15334
-      subroutine DMPlexCreateHexCylinderMesh(510,15740
-      subroutine DMPlexCreateWedgeCylinderMesh(517,15973
-      subroutine DMPlexCreateTPSMesh(525,16231
-      subroutine DMPlexCreateSphereMesh(538,16656
-      subroutine DMPlexCreateBallMesh(547,16933
-      subroutine DMPlexCreateReferenceCell(555,17173
-      subroutine DMPlexCreate(562,17402
-      subroutine DMPlexCreateFromCellListParallelPetsc(568,17562
-      subroutine DMPlexCreateFromCellListPetsc(586,18140
-      subroutine DMPlexCreateFromDAG(600,18594
-      subroutine DMPlexGetScale(611,18949
-      subroutine DMPlexSetScale(618,19148
-      subroutine DMPlexCreateRigidBody(625,19347
-      subroutine DMPlexCreateRigidBodies(632,19578
-      subroutine DMPlexSetMaxProjectionHeight(642,19921
-      subroutine DMPlexGetMaxProjectionHeight(648,20113
-      subroutine DMPlexGlobalToLocalBasis(654,20305
-      subroutine DMPlexLocalToGlobalBasis(660,20484
-      subroutine DMPlexCreateBasisRotation(666,20663
-      subroutine DMPlexInsertBoundaryValues(674,20917
-      subroutine DMPlexInsertTimeDerivativeBoundaryValues(685,21229
-      subroutine DMPlexComputeClementInterpolant(697,21577
-      subroutine DMPlexComputeGradientClementInterpolant(704,21791
-      subroutine DMPlexGetGeometryFVM(711,22021
-      subroutine DMPlexGetGradientDM(719,22246
-      subroutine DMPlexReconstructGradientsFVM(726,22437
-      subroutine DMPlexCreateGmsh(733,22647
-      subroutine DMPlexCreateClosureIndex(741,22898
-      subroutine DMPlexSetMigrationSF(747,23104
-      subroutine DMPlexGetMigrationSF(753,23287
-      subroutine DMPlexSetGlobalToNaturalSF(759,23470
-      subroutine DMPlexGetGlobalToNaturalSF(765,23665
-      subroutine DMPlexCreateGlobalToNaturalSF(771,23860
-      subroutine DMPlexGlobalToNaturalBegin(779,24143
-      subroutine DMPlexGlobalToNaturalEnd(786,24347
-      subroutine DMPlexNaturalToGlobalBegin(793,24547
-      subroutine DMPlexNaturalToGlobalEnd(800,24751
-      subroutine DMPlexCreateNaturalVector(807,24951
-      subroutine DMPlexOrientPoint(813,25132
-      subroutine DMPlexOrient(820,25333
-      subroutine PetscPartitionerDMPlexPartition(825,25462
-      subroutine DMPlexGetPartitioner(834,25791
-      subroutine DMPlexSetPartitioner(840,25983
-      subroutine DMPlexPartitionLabelClosure(846,26175
-      subroutine DMPlexPartitionLabelAdjacency(852,26372
-      subroutine DMPlexPartitionLabelPropagate(858,26573
-      subroutine DMPlexPartitionLabelInvert(864,26774
-      subroutine DMPlexPartitionLabelCreateSF(872,27036
-      subroutine DMPlexRebalanceSharedPoints(879,27273
-      subroutine DMPlexGetPointLocal(888,27562
-      subroutine DMPlexGetPointLocalField(896,27798
-      subroutine DMPlexGetPointGlobal(905,28075
-      subroutine DMPlexGetPointGlobalField(913,28313
-      subroutine DMPlexGetActivePoint(922,28592
-      subroutine DMPlexSetActivePoint(928,28768
-      subroutine DMPlexCreateProcessSF(934,28944
-      subroutine DMPlexCreateCoarsePointIS(942,29181
-      subroutine DMPlexSetRefinementUniform(948,29359
-      subroutine DMPlexGetRefinementUniform(954,29549
-      subroutine DMPlexSetRefinementLimit(960,29739
-      subroutine DMPlexGetRefinementLimit(966,29925
-      subroutine DMPlexSetRefinementFunction(972,30111
-      subroutine DMPlexGetRefinementFunction(978,30314
-      subroutine DMPlexMarkBoundaryFaces(984,30517
-      subroutine DMPlexLabelComplete(991,30737
-      subroutine DMPlexLabelAddCells(997,30918
-      subroutine DMPlexLabelAddFaceCells(1003,31099
-      subroutine DMPlexLabelClearCells(1009,31288
-      subroutine DMPlexLabelCohesiveComplete(1015,31473
-      subroutine DMPlexCreateHybridMesh(1025,31782
-      subroutine DMPlexGetOrientedFace(1037,32125
-      subroutine DMPlexCreateSubmesh(1050,32538
-      subroutine DMPlexFilter(1059,32802
-      subroutine DMPlexGetSubpointMap(1067,33019
-      subroutine DMPlexSetSubpointMap(1073,33202
-      subroutine DMPlexGetSubpointIS(1079,33385
-      subroutine DMGetEnclosureRelation(1085,33551
-      subroutine DMGetEnclosurePoint(1092,33764
-      subroutine DMPlexSetReferenceTree(1101,34033
-      subroutine DMPlexGetReferenceTree(1107,34201
-      subroutine DMPlexReferenceTreeGetChildSymmetry(1113,34369
-      subroutine DMPlexCreateDefaultReferenceTree(1125,34761
-      subroutine DMPlexSetTree(1133,35025
-      subroutine DMPlexGetTree(1141,35279
-      subroutine DMPlexGetTreeParent(1151,35607
-      subroutine DMPlexTransferVecTree(1159,35843
-      subroutine DMPlexIsSimplex(1173,36251
-      subroutine DMPlexGetSimplexOrBoxCells(1179,36419
-      subroutine DMPlexVecView1D(1187,36669
-      subroutine DMPlexTopologyView(1195,36915
-      subroutine DMPlexCoordinatesView(1201,37106
-      subroutine DMPlexLabelsView(1207,37303
-      subroutine DMPlexSectionView(1213,37490
-      subroutine DMPlexGlobalVectorView(1220,37698
-      subroutine DMPlexLocalVectorView(1228,37942
-      subroutine DMPlexTopologyLoad(1236,38184
-      subroutine DMPlexCoordinatesLoad(1243,38413
-      subroutine DMPlexLabelsLoad(1250,38648
-      subroutine DMPlexSectionLoad(1257,38873
-      subroutine DMPlexGlobalVectorLoad(1267,39177
-      subroutine DMPlexLocalVectorLoad(1276,39459
-      subroutine DMPlexGetSubdomainSection(1285,39739
-      subroutine DMPlexGetChart(1291,39947
-      subroutine DMPlexSetChart(1298,40142
-      subroutine DMPlexGetConeSize(1305,40337
-      subroutine DMPlexSetConeSize(1312,40538
-      subroutine DMPlexAddConeSize(1319,40739
-      subroutine DMPlexGetConeRecursiveVertices(1326,40940
-      subroutine DMPlexGetConeRecursive(1333,41147
-      subroutine DMPlexRestoreConeRecursive(1342,41430
-      subroutine DMPlexSetCone(1351,41721
-      subroutine DMPlexSetConeOrientation(1358,41918
-      subroutine DMPlexInsertCone(1365,42137
-      subroutine DMPlexInsertConeOrientation(1373,42367
-      subroutine DMPlexGetSupportSize(1381,42619
-      subroutine DMPlexSetSupportSize(1388,42826
-      subroutine DMPlexSetSupport(1395,43033
-      subroutine DMPlexInsertSupport(1402,43236
-      subroutine DMPlexGetMaxSizes(1410,43472
-      subroutine DMPlexSymmetrize(1417,43673
-      subroutine DMPlexStratify(1422,43810
-      subroutine DMPlexComputeCellTypes(1427,43943
-      subroutine DMPlexGetDepthLabel(1432,44092
-      subroutine DMPlexGetDepth(1438,44273
-      subroutine DMPlexGetDepthStratum(1444,44437
-      subroutine DMPlexGetHeightStratum(1452,44677
-      subroutine DMPlexGetPointDepth(1460,44919
-      subroutine DMPlexGetPointHeight(1467,45124
-      subroutine DMPlexGetCellTypeLabel(1474,45331
-      subroutine DMPlexGetCellType(1480,45518
-      subroutine DMPlexSetCellType(1487,45731
-      subroutine DMPlexSetClosurePermutationTensor(1494,45944
-      subroutine DMPlexGetGhostCellStratum(1501,46199
-      subroutine DMPlexGetCellNumbering(1508,46416
-      subroutine DMPlexGetVertexNumbering(1514,46588
-      subroutine DMPlexCreatePointNumbering(1520,46764
-      subroutine DMPlexCreateRankField(1526,46944
-      subroutine DMPlexCreateLabelField(1532,47117
-      subroutine DMPlexCheckSymmetry(1539,47330
-      subroutine DMPlexCheckSkeleton(1544,47473
-      subroutine DMPlexCheckFaces(1550,47647
-      subroutine DMPlexCheckGeometry(1556,47815
-      subroutine DMPlexCheckPointSF(1561,47958
-      subroutine DMPlexCheck(1568,48170
-      subroutine DMPlexCheckCellShape(1573,48297
-      subroutine DMPlexComputeOrthogonalQuality(1580,48508
-      subroutine DMPlexGetRegularRefinement(1589,48799
-      subroutine DMPlexSetRegularRefinement(1595,48989
-      subroutine DMPlexGetAnchors(1601,49179
-      subroutine DMPlexSetAnchors(1608,49392
-      subroutine PetscViewerExodusIIGetId(1615,49605
-      subroutine PetscViewerExodusIISetOrder(1621,49810
-      subroutine PetscViewerExodusIIGetOrder(1627,50027
-      subroutine DMPlexCreateExodus(1633,50244
-      subroutine DMPlexSnapToGeomModel(1641,50480
-      subroutine DMPlexInflateToGeomModel(1650,50771
-      subroutine DMPlexFindVertices(1655,50924
-      subroutine DMPlexComputeProjection3Dto2D(1663,51147
-      subroutine DMPlexComputeGeometryFEM(1669,51382
-      subroutine DMPlexComputeGeometryFVM(1675,51561
-      subroutine DMPlexComputeGradientFVM(1682,51761
-      subroutine DMPlexGetDataFVM(1691,52009
-      subroutine DMPlexCoordinatesToReference(1700,52241
-      subroutine DMPlexReferenceToCoordinates(1709,52538
+      subroutine DMPlexMetricSetIsotropic(112,3454
+      subroutine DMPlexMetricIsIsotropic(118,3640
+      subroutine DMPlexMetricSetUniform(124,3824
+      subroutine DMPlexMetricIsUniform(130,4006
+      subroutine DMPlexMetricSetRestrictAnisotropyFirst(136,4186
+      subroutine DMPlexMetricRestrictAnisotropyFirst(142,4400
+      subroutine DMPlexMetricSetNoInsertion(148,4608
+      subroutine DMPlexMetricNoInsertion(154,4798
+      subroutine DMPlexMetricSetNoSwapping(160,4982
+      subroutine DMPlexMetricNoSwapping(166,5170
+      subroutine DMPlexMetricSetNoMovement(172,5352
+      subroutine DMPlexMetricNoMovement(178,5540
+      subroutine DMPlexMetricSetNoSurf(184,5722
+      subroutine DMPlexMetricNoSurf(190,5902
+      subroutine DMPlexMetricSetMinimumMagnitude(196,6076
+      subroutine DMPlexMetricGetMinimumMagnitude(202,6276
+      subroutine DMPlexMetricSetMaximumMagnitude(208,6476
+      subroutine DMPlexMetricGetMaximumMagnitude(214,6676
+      subroutine DMPlexMetricSetMaximumAnisotropy(220,6876
+      subroutine DMPlexMetricGetMaximumAnisotropy(226,7078
+      subroutine DMPlexMetricSetTargetComplexity(232,7280
+      subroutine DMPlexMetricGetTargetComplexity(238,7480
+      subroutine DMPlexMetricSetNormalizationOrder(244,7680
+      subroutine DMPlexMetricGetNormalizationOrder(250,7884
+      subroutine DMPlexMetricSetGradationFactor(256,8088
+      subroutine DMPlexMetricGetGradationFactor(262,8286
+      subroutine DMPlexMetricSetHausdorffNumber(268,8484
+      subroutine DMPlexMetricGetHausdorffNumber(274,8682
+      subroutine DMPlexMetricSetVerbosity(280,8880
+      subroutine DMPlexMetricGetVerbosity(286,9064
+      subroutine DMPlexMetricSetNumIterations(292,9248
+      subroutine DMPlexMetricGetNumIterations(298,9440
+      subroutine DMPlexMetricCreate(304,9632
+      subroutine DMPlexMetricCreateUniform(311,9830
+      subroutine DMPlexMetricCreateIsotropic(319,10075
+      subroutine DMPlexMetricDeterminantCreate(327,10312
+      subroutine DMPlexMetricEnforceSPD(335,10551
+      subroutine DMPlexMetricNormalize(345,10834
+      subroutine DMPlexMetricAverage(355,11115
+      subroutine DMPlexMetricAverage2(364,11377
+      subroutine DMPlexMetricAverage3(372,11590
+      subroutine DMPlexMetricIntersection(381,11824
+      subroutine DMPlexMetricIntersection2(389,12059
+      subroutine DMPlexMetricIntersection3(397,12282
+      subroutine DMPlexGetOrdering(406,12526
+      subroutine DMPlexGetOrdering1D(414,12771
+      subroutine DMPlexPermute(420,12937
+      subroutine DMPlexReorderSetDefault(427,13110
+      subroutine DMPlexReorderGetDefault(433,13324
+      subroutine DMPlexCreateCGNS(439,13538
+      subroutine DMPlexGetScale(447,13770
+      subroutine DMPlexSetScale(454,13969
+      subroutine DMPlexCreateRigidBody(461,14168
+      subroutine DMPlexCreateRigidBodies(468,14399
+      subroutine DMPlexSetMaxProjectionHeight(478,14742
+      subroutine DMPlexGetMaxProjectionHeight(484,14934
+      subroutine DMPlexGlobalToLocalBasis(490,15126
+      subroutine DMPlexLocalToGlobalBasis(496,15305
+      subroutine DMPlexCreateBasisRotation(502,15484
+      subroutine DMPlexInsertBoundaryValues(510,15738
+      subroutine DMPlexInsertTimeDerivativeBoundaryValues(521,16050
+      subroutine DMPlexComputeClementInterpolant(533,16398
+      subroutine DMPlexComputeGradientClementInterpolant(540,16612
+      subroutine DMPlexGetGeometryFVM(547,16842
+      subroutine DMPlexGetGradientDM(555,17067
+      subroutine DMPlexReconstructGradientsFVM(562,17258
+      subroutine DMPlexCreateClosureIndex(569,17468
+      subroutine DMPlexSetMigrationSF(575,17674
+      subroutine DMPlexGetMigrationSF(581,17857
+      subroutine DMPlexSetGlobalToNaturalSF(587,18040
+      subroutine DMPlexGetGlobalToNaturalSF(593,18235
+      subroutine DMPlexCreateGlobalToNaturalSF(599,18430
+      subroutine DMPlexGlobalToNaturalBegin(607,18713
+      subroutine DMPlexGlobalToNaturalEnd(614,18917
+      subroutine DMPlexNaturalToGlobalBegin(621,19117
+      subroutine DMPlexNaturalToGlobalEnd(628,19321
+      subroutine DMPlexCreateNaturalVector(635,19521
+      subroutine DMPlexOrientPoint(641,19702
+      subroutine DMPlexOrient(648,19903
+      subroutine PetscPartitionerDMPlexPartition(653,20032
+      subroutine DMPlexGetPartitioner(662,20361
+      subroutine DMPlexSetPartitioner(668,20553
+      subroutine DMPlexPartitionLabelClosure(674,20745
+      subroutine DMPlexPartitionLabelAdjacency(680,20942
+      subroutine DMPlexPartitionLabelPropagate(686,21143
+      subroutine DMPlexPartitionLabelInvert(692,21344
+      subroutine DMPlexPartitionLabelCreateSF(700,21606
+      subroutine DMPlexRebalanceSharedPoints(707,21843
+      subroutine DMPlexGetPointLocal(716,22132
+      subroutine DMPlexGetPointLocalField(724,22368
+      subroutine DMPlexGetPointGlobal(733,22645
+      subroutine DMPlexGetPointGlobalField(741,22883
+      subroutine DMPlexGetActivePoint(750,23162
+      subroutine DMPlexSetActivePoint(756,23338
+      subroutine DMPlexCreateProcessSF(762,23514
+      subroutine DMPlexCreateCoarsePointIS(770,23751
+      subroutine DMPlexSetRefinementUniform(776,23929
+      subroutine DMPlexGetRefinementUniform(782,24119
+      subroutine DMPlexSetRefinementLimit(788,24309
+      subroutine DMPlexGetRefinementLimit(794,24495
+      subroutine DMPlexSetRefinementFunction(800,24681
+      subroutine DMPlexGetRefinementFunction(806,24884
+      subroutine DMPlexMarkBoundaryFaces(812,25087
+      subroutine DMPlexLabelComplete(819,25307
+      subroutine DMPlexLabelAddCells(825,25488
+      subroutine DMPlexLabelAddFaceCells(831,25669
+      subroutine DMPlexLabelClearCells(837,25858
+      subroutine DMPlexLabelCohesiveComplete(843,26043
+      subroutine DMPlexCreateHybridMesh(853,26352
+      subroutine DMPlexGetOrientedFace(865,26695
+      subroutine DMPlexCreateSubmesh(878,27108
+      subroutine DMPlexFilter(887,27372
+      subroutine DMPlexGetSubpointMap(895,27589
+      subroutine DMPlexSetSubpointMap(901,27772
+      subroutine DMPlexGetSubpointIS(907,27955
+      subroutine DMGetEnclosureRelation(913,28121
+      subroutine DMGetEnclosurePoint(920,28334
+      subroutine DMPlexSetReferenceTree(929,28603
+      subroutine DMPlexGetReferenceTree(935,28771
+      subroutine DMPlexReferenceTreeGetChildSymmetry(941,28939
+      subroutine DMPlexCreateDefaultReferenceTree(953,29331
+      subroutine DMPlexSetTree(961,29595
+      subroutine DMPlexGetTree(969,29849
+      subroutine DMPlexGetTreeParent(979,30177
+      subroutine DMPlexTransferVecTree(987,30413
+      subroutine PetscViewerExodusIIGetId(1001,30821
+      subroutine PetscViewerExodusIISetOrder(1007,31026
+      subroutine PetscViewerExodusIIGetOrder(1013,31243
+      subroutine DMPlexCreateExodus(1019,31460
+      subroutine DMPlexSnapToGeomModel(1027,31696
+      subroutine DMPlexInflateToGeomModel(1036,31987
+      subroutine DMPlexFindVertices(1041,32140
+      subroutine DMPlexComputeProjection3Dto2D(1049,32363
+      subroutine DMPlexComputeGeometryFEM(1055,32598
+      subroutine DMPlexComputeGeometryFVM(1061,32777
+      subroutine DMPlexComputeGradientFVM(1068,32977
+      subroutine DMPlexGetDataFVM(1077,33225
+      subroutine DMPlexCoordinatesToReference(1086,33457
+      subroutine DMPlexReferenceToCoordinates(1095,33754
+      subroutine DMPlexIsSimplex(1104,34051
+      subroutine DMPlexGetSimplexOrBoxCells(1110,34219
+      subroutine DMPlexVecView1D(1118,34469
+      subroutine DMPlexTopologyView(1126,34715
+      subroutine DMPlexCoordinatesView(1132,34906
+      subroutine DMPlexLabelsView(1138,35103
+      subroutine DMPlexSectionView(1144,35290
+      subroutine DMPlexGlobalVectorView(1151,35498
+      subroutine DMPlexLocalVectorView(1159,35742
+      subroutine DMPlexTopologyLoad(1167,35984
+      subroutine DMPlexCoordinatesLoad(1174,36213
+      subroutine DMPlexLabelsLoad(1181,36448
+      subroutine DMPlexSectionLoad(1188,36673
+      subroutine DMPlexGlobalVectorLoad(1198,36977
+      subroutine DMPlexLocalVectorLoad(1207,37259
+      subroutine DMPlexGetSubdomainSection(1216,37539
+      subroutine DMPlexGetChart(1222,37747
+      subroutine DMPlexSetChart(1229,37942
+      subroutine DMPlexGetConeSize(1236,38137
+      subroutine DMPlexSetConeSize(1243,38338
+      subroutine DMPlexAddConeSize(1250,38539
+      subroutine DMPlexGetConeRecursiveVertices(1257,38740
+      subroutine DMPlexGetConeRecursive(1264,38947
+      subroutine DMPlexRestoreConeRecursive(1273,39230
+      subroutine DMPlexSetCone(1282,39521
+      subroutine DMPlexSetConeOrientation(1289,39718
+      subroutine DMPlexInsertCone(1296,39937
+      subroutine DMPlexInsertConeOrientation(1304,40167
+      subroutine DMPlexGetSupportSize(1312,40419
+      subroutine DMPlexSetSupportSize(1319,40626
+      subroutine DMPlexSetSupport(1326,40833
+      subroutine DMPlexInsertSupport(1333,41036
+      subroutine DMPlexGetMaxSizes(1341,41272
+      subroutine DMPlexSymmetrize(1348,41473
+      subroutine DMPlexStratify(1353,41610
+      subroutine DMPlexComputeCellTypes(1358,41743
+      subroutine DMPlexGetDepthLabel(1363,41892
+      subroutine DMPlexGetDepth(1369,42073
+      subroutine DMPlexGetDepthStratum(1375,42237
+      subroutine DMPlexGetHeightStratum(1383,42477
+      subroutine DMPlexGetPointDepth(1391,42719
+      subroutine DMPlexGetPointHeight(1398,42924
+      subroutine DMPlexGetCellTypeLabel(1405,43131
+      subroutine DMPlexGetCellType(1411,43318
+      subroutine DMPlexSetCellType(1418,43531
+      subroutine DMPlexSetClosurePermutationTensor(1425,43744
+      subroutine DMPlexGetGhostCellStratum(1432,43999
+      subroutine DMPlexGetCellNumbering(1439,44216
+      subroutine DMPlexGetVertexNumbering(1445,44388
+      subroutine DMPlexCreatePointNumbering(1451,44564
+      subroutine DMPlexCreateRankField(1457,44744
+      subroutine DMPlexCreateLabelField(1463,44917
+      subroutine DMPlexCheckSymmetry(1470,45130
+      subroutine DMPlexCheckSkeleton(1475,45273
+      subroutine DMPlexCheckFaces(1481,45447
+      subroutine DMPlexCheckGeometry(1487,45615
+      subroutine DMPlexCheckPointSF(1492,45758
+      subroutine DMPlexCheck(1499,45970
+      subroutine DMPlexCheckCellShape(1504,46097
+      subroutine DMPlexComputeOrthogonalQuality(1511,46308
+      subroutine DMPlexGetRegularRefinement(1520,46599
+      subroutine DMPlexSetRegularRefinement(1526,46789
+      subroutine DMPlexGetAnchors(1532,46979
+      subroutine DMPlexSetAnchors(1539,47192
+      subroutine DMPlexCheckInterfaceCones(1546,47405
+      subroutine DMPlexCreateDoublet(1551,47560
+      subroutine DMPlexCreateWedgeBoxMesh(1561,47864
+      subroutine DMPlexCreateHexCylinderMesh(1573,48270
+      subroutine DMPlexCreateWedgeCylinderMesh(1580,48503
+      subroutine DMPlexCreateTPSMesh(1588,48761
+      subroutine DMPlexCreateSphereMesh(1601,49186
+      subroutine DMPlexCreateBallMesh(1610,49463
+      subroutine DMPlexCreateReferenceCell(1618,49703
+      subroutine DMPlexCreate(1625,49932
+      subroutine DMPlexCreateFromCellListParallelPetsc(1631,50092
+      subroutine DMPlexCreateFromCellListPetsc(1649,50670
+      subroutine DMPlexCreateFromDAG(1663,51124
+      subroutine DMPlexCreateGmsh(1674,51479
+      subroutine DMPlexInterpolatePointSF(1682,51730
+      subroutine DMPlexInterpolate(1688,51921
+      subroutine DMPlexCopyCoordinates(1694,52079
+      subroutine DMPlexUninterpolate(1700,52245
+      subroutine DMPlexIsInterpolated(1706,52407
+      subroutine DMPlexIsInterpolatedCollective(1712,52611
       subroutine DMPlexTransformExtrudeGetLayers(1718,52835
       subroutine DMPlexTransformExtrudeSetLayers(1724,53072
       subroutine DMPlexTransformExtrudeGetThickness(1730,53309
@@ -56021,40 +56021,40 @@
 petscdmpatch.h90:^?petscdmpatch.h90^A,1
       subroutine DMPatchCreate(1,0
 
-src/dm/f90-mod/ftn-auto-interfaces/petscdmnetwork.h90,1635
+src/dm/f90-mod/ftn-auto-interfaces/petscdmnetwork.h90,1636
 petscdmnetwork.h90:^?petscdmnetwork.h90^A,1
-      subroutine DMNetworkCreate(1,0
-      subroutine DMNetworkMonitorCreate(7,166
-      subroutine DMNetworkMonitorDestroy(13,362
-      subroutine DMNetworkMonitorPop(17,523
-      subroutine DMNetworkMonitorView(21,676
-      subroutine DMNetworkGetPlex(27,871
-      subroutine DMNetworkGetNumSubNetworks(33,1027
-      subroutine DMNetworkSetNumSubNetworks(40,1246
-      subroutine DMNetworkAddSubnetwork(47,1465
-      subroutine DMNetworkLayoutSetUp(56,1739
-      subroutine DMNetworkAddSharedVertices(61,1884
-      subroutine DMNetworkGetVertexRange(71,2204
-      subroutine DMNetworkGetEdgeRange(78,2417
-      subroutine DMNetworkGetGlobalEdgeIndex(85,2626
-      subroutine DMNetworkGetGlobalVertexIndex(92,2847
-      subroutine DMNetworkGetNumComponents(99,3072
-      subroutine DMNetworkGetLocalVecOffset(106,3289
-      subroutine DMNetworkGetGlobalVecOffset(114,3539
-      subroutine DMNetworkGetEdgeOffset(122,3791
-      subroutine DMNetworkGetVertexOffset(129,4002
-      subroutine DMNetworkAssembleGraphStructures(136,4217
-      subroutine DMNetworkDistribute(141,4386
-      subroutine DMNetworkIsSharedVertex(147,4560
-      subroutine DMNetworkIsGhostVertex(154,4775
-      subroutine DMNetworkHasJacobian(161,4988
-      subroutine DMNetworkEdgeSetMatrix(168,5199
-      subroutine DMNetworkVertexSetMatrix(175,5409
-      subroutine DMNetworkGetVertexLocalToGlobalOrdering(182,5623
-      subroutine DMNetworkSetVertexLocalToGlobalOrdering(189,5868
-      subroutine DMNetworkCreateIS(194,6051
-      subroutine DMNetworkCreateLocalIS(205,6384
-      subroutine DMNetworkFinalizeComponents(216,6727
+      subroutine DMNetworkMonitorCreate(1,0
+      subroutine DMNetworkMonitorDestroy(7,196
+      subroutine DMNetworkMonitorPop(11,357
+      subroutine DMNetworkMonitorView(15,510
+      subroutine DMNetworkGetPlex(21,705
+      subroutine DMNetworkGetNumSubNetworks(27,861
+      subroutine DMNetworkSetNumSubNetworks(34,1080
+      subroutine DMNetworkAddSubnetwork(41,1299
+      subroutine DMNetworkLayoutSetUp(50,1573
+      subroutine DMNetworkAddSharedVertices(55,1718
+      subroutine DMNetworkGetVertexRange(65,2038
+      subroutine DMNetworkGetEdgeRange(72,2251
+      subroutine DMNetworkGetGlobalEdgeIndex(79,2460
+      subroutine DMNetworkGetGlobalVertexIndex(86,2681
+      subroutine DMNetworkGetNumComponents(93,2906
+      subroutine DMNetworkGetLocalVecOffset(100,3123
+      subroutine DMNetworkGetGlobalVecOffset(108,3373
+      subroutine DMNetworkGetEdgeOffset(116,3625
+      subroutine DMNetworkGetVertexOffset(123,3836
+      subroutine DMNetworkAssembleGraphStructures(130,4051
+      subroutine DMNetworkDistribute(135,4220
+      subroutine DMNetworkIsSharedVertex(141,4394
+      subroutine DMNetworkIsGhostVertex(148,4609
+      subroutine DMNetworkHasJacobian(155,4822
+      subroutine DMNetworkEdgeSetMatrix(162,5033
+      subroutine DMNetworkVertexSetMatrix(169,5243
+      subroutine DMNetworkGetVertexLocalToGlobalOrdering(176,5457
+      subroutine DMNetworkSetVertexLocalToGlobalOrdering(183,5702
+      subroutine DMNetworkCreateIS(188,5885
+      subroutine DMNetworkCreateLocalIS(199,6218
+      subroutine DMNetworkFinalizeComponents(210,6561
+      subroutine DMNetworkCreate(215,6720
 
 src/dm/f90-mod/ftn-auto-interfaces/petscdmforest.h90,1777
 petscdmforest.h90:^?petscdmforest.h90^A,1
@@ -56093,7 +56093,7 @@
       subroutine DMForestSetWeightCapacity(197,6073
       subroutine DMForestGetWeightCapacity(203,6261
 
-src/dm/f90-mod/ftn-auto-interfaces/petscdmda.h90,2542
+src/dm/f90-mod/ftn-auto-interfaces/petscdmda.h90,2544
 petscdmda.h90:^?petscdmda.h90^A,1
       subroutine DMDASetSizes(1,0
       subroutine DMDASetNumProcs(9,222
@@ -56118,36 +56118,36 @@
       subroutine DMDASetRefinementFactor(153,4576
       subroutine DMDAMapMatStencilToGlobal(161,4820
       subroutine DMDASetGLLCoordinates(169,5080
-      subroutine DMDAGetReducedDMDA(176,5291
-      subroutine DMDACreateCompatibleDMDA(183,5482
-      subroutine DMDACreate(190,5685
-      subroutine DMDACreatePatchIS(196,5841
-      subroutine DMDACreateNaturalVector(205,6106
-      subroutine DMDAConvertToCell(211,6283
-      subroutine DMDAGetElementsCorners(218,6488
-      subroutine DMDAGetElementsSizes(226,6730
-      subroutine DMDASetElementType(234,6968
-      subroutine DMDAGetElementType(240,7154
-      subroutine DMDAGetSubdomainCornersIS(246,7340
-      subroutine DMDARestoreSubdomainCornersIS(252,7518
-      subroutine DMDAGlobalToNaturalBegin(258,7704
-      subroutine DMDAGlobalToNaturalEnd(266,7939
-      subroutine DMDANaturalToGlobalBegin(274,8170
-      subroutine DMDANaturalToGlobalEnd(282,8405
-      subroutine DMDAGlobalToNaturalAllCreate(290,8636
-      subroutine DMDANaturalAllToGlobalCreate(296,8844
-      subroutine DMDAGetAO(302,9052
-      subroutine DMCreateAggregates(308,9194
-      subroutine DMDACreateAggregates(315,9380
-      subroutine DMDAGetNumCells(322,9570
-      subroutine DMDAGetCellPoint(331,9829
-      subroutine DMDASetPreallocationCenterDimension(340,10090
-      subroutine DMDAGetPreallocationCenterDimension(346,10296
-      subroutine DMDAGetLogicalCoordinate(352,10502
-      subroutine DMDAGetRay(366,10970
-      subroutine DMDASetBlockFills(375,11236
-      subroutine DMDASetBlockFillsSparse(382,11437
-      subroutine DMDASetUniformCoordinates(389,11650
+      subroutine DMDACreate(176,5291
+      subroutine DMDACreatePatchIS(182,5447
+      subroutine DMDACreateNaturalVector(191,5712
+      subroutine DMDAGetElementsCorners(197,5889
+      subroutine DMDAGetElementsSizes(205,6131
+      subroutine DMDASetElementType(213,6369
+      subroutine DMDAGetElementType(219,6555
+      subroutine DMDAGetSubdomainCornersIS(225,6741
+      subroutine DMDARestoreSubdomainCornersIS(231,6919
+      subroutine DMDAGlobalToNaturalAllCreate(237,7105
+      subroutine DMDANaturalAllToGlobalCreate(243,7313
+      subroutine DMDAGetAO(249,7521
+      subroutine DMDAGetNumCells(255,7663
+      subroutine DMDAGetCellPoint(264,7922
+      subroutine DMDASetPreallocationCenterDimension(273,8183
+      subroutine DMDAGetPreallocationCenterDimension(279,8389
+      subroutine DMDAGetLogicalCoordinate(285,8595
+      subroutine DMDAGetRay(299,9063
+      subroutine DMDASetBlockFills(308,9329
+      subroutine DMDASetBlockFillsSparse(315,9530
+      subroutine DMDASetUniformCoordinates(322,9743
+      subroutine DMDAGetReducedDMDA(333,10096
+      subroutine DMDACreateCompatibleDMDA(340,10287
+      subroutine DMDAConvertToCell(347,10490
+      subroutine DMDAGlobalToNaturalBegin(354,10695
+      subroutine DMDAGlobalToNaturalEnd(362,10930
+      subroutine DMDANaturalToGlobalBegin(370,11161
+      subroutine DMDANaturalToGlobalEnd(378,11396
+      subroutine DMCreateAggregates(386,11627
+      subroutine DMDACreateAggregates(393,11813
 
 src/dm/f90-mod/ftn-auto-interfaces/petscdm.h90,8491
 petscdm.h90:^?petscdm.h90^A,1
@@ -56188,143 +56188,143 @@
       subroutine DMClearGlobalVectors(223,6756
       subroutine DMClearLocalVectors(228,6901
       subroutine DMRestoreGlobalVector(233,7044
-      subroutine DMCreate(239,7217
-      subroutine DMClone(245,7369
-      subroutine VecGetDM(251,7507
-      subroutine VecSetDM(257,7654
-      subroutine MatGetDM(263,7801
-      subroutine MatSetDM(269,7948
-      subroutine DMSetUp(275,8095
-      subroutine DMSetFromOptions(280,8214
-      subroutine DMCreateGlobalVector(285,8351
-      subroutine DMCreateLocalVector(291,8522
-      subroutine DMGetLocalToGlobalMapping(297,8691
-      subroutine DMGetBlockSize(303,8905
-      subroutine DMCreateInterpolationScale(309,9069
-      subroutine DMCreateRestriction(317,9297
-      subroutine DMCreateInjection(324,9485
-      subroutine DMCreateMassMatrix(331,9669
-      subroutine DMCreateMassMatrixLumped(338,9855
-      subroutine DMCreateColoring(344,10034
-      subroutine DMCreateMatrix(351,10261
-      subroutine DMSetMatrixPreallocateSkip(357,10420
-      subroutine DMSetMatrixPreallocateOnly(363,10610
-      subroutine DMSetMatrixStructureOnly(369,10800
-      subroutine DMRefine(375,10986
-      subroutine DMInterpolate(382,11156
-      subroutine DMInterpolateSolution(389,11332
-      subroutine DMGetRefineLevel(398,11571
-      subroutine DMSetRefineLevel(404,11739
-      subroutine DMExtrude(410,11907
-      subroutine DMHasBasisTransform(417,12080
-      subroutine DMGlobalToLocal(423,12256
-      subroutine DMGlobalToLocalBegin(431,12473
-      subroutine DMGlobalToLocalEnd(439,12700
-      subroutine DMLocalToGlobal(447,12923
-      subroutine DMLocalToGlobalBegin(455,13140
-      subroutine DMLocalToGlobalEnd(463,13367
-      subroutine DMLocalToLocalBegin(471,13590
-      subroutine DMLocalToLocalEnd(479,13815
-      subroutine DMCoarsen(487,14036
-      subroutine DMRestrict(494,14208
-      subroutine DMSubDomainRestrict(503,14425
-      subroutine DMGetCoarsenLevel(511,14669
-      subroutine DMSetCoarsenLevel(517,14839
-      subroutine DMHasVariableBounds(523,15009
-      subroutine DMHasColoring(529,15185
-      subroutine DMHasCreateRestriction(535,15349
-      subroutine DMHasCreateInjection(541,15531
-      subroutine DMGetSection(547,15709
-      subroutine DMGetLocalSection(553,15891
-      subroutine DMSetSection(559,16083
-      subroutine DMSetLocalSection(565,16265
-      subroutine DMGetDefaultConstraints(571,16457
-      subroutine DMSetDefaultConstraints(579,16713
-      subroutine DMGetGlobalSection(587,16969
-      subroutine DMSetGlobalSection(593,17163
-      subroutine DMGetSectionSF(599,17357
-      subroutine DMSetSectionSF(605,17528
-      subroutine DMGetPointSF(611,17699
-      subroutine DMSetPointSF(617,17866
-      subroutine DMGetNaturalSF(623,18033
-      subroutine DMSetNaturalSF(629,18204
-      subroutine DMClearFields(635,18375
-      subroutine DMGetNumFields(640,18506
-      subroutine DMSetNumFields(646,18670
-      subroutine DMGetField(652,18834
-      subroutine DMSetField(660,19065
-      subroutine DMAddField(668,19296
-      subroutine DMSetFieldAvoidTensor(675,19496
-      subroutine DMGetFieldAvoidTensor(682,19707
-      subroutine DMCopyFields(689,19918
-      subroutine DMGetAdjacency(695,20066
-      subroutine DMSetAdjacency(703,20296
-      subroutine DMGetBasicAdjacency(711,20526
-      subroutine DMSetBasicAdjacency(718,20735
-      subroutine DMGetNumDS(725,20944
-      subroutine DMClearDS(731,21100
-      subroutine DMGetDS(736,21223
-      subroutine DMGetCellDS(742,21371
-      subroutine DMGetRegionDS(749,21558
-      subroutine DMSetRegionDS(757,21779
-      subroutine DMGetRegionNumDS(765,22000
-      subroutine DMSetRegionNumDS(774,22258
-      subroutine DMFindRegionNum(783,22516
-      subroutine DMCreateDS(790,22711
-      subroutine DMComputeExactSolution(795,22836
-      subroutine DMCopyDS(803,23065
-      subroutine DMCopyDisc(809,23205
-      subroutine DMGetDimension(815,23349
-      subroutine DMSetDimension(821,23513
-      subroutine DMGetDimPoints(827,23677
-      subroutine DMGetOutputDM(835,23903
-      subroutine DMGetOutputSequenceNumber(841,24053
-      subroutine DMSetOutputSequenceNumber(848,24272
-      subroutine DMGetUseNatural(855,24491
-      subroutine DMSetUseNatural(861,24659
-      subroutine DMGetNumLabels(867,24827
-      subroutine DMRemoveLabelBySelf(873,24991
-      subroutine DMCopyLabels(880,25205
-      subroutine DMGetCoarseDM(889,25474
-      subroutine DMSetCoarseDM(895,25624
-      subroutine DMGetFineDM(901,25774
-      subroutine DMSetFineDM(907,25920
-      subroutine MatFDColoringUseDM(913,26066
-      subroutine DMGetCompatibility(919,26266
-      subroutine DMMonitorCancel(927,26492
-      subroutine DMMonitor(932,26627
-      subroutine DMComputeError(937,26750
-      subroutine DMGetNumAuxiliaryVec(945,26967
-      subroutine DMGetAuxiliaryVec(951,27143
-      subroutine DMSetAuxiliaryVec(960,27408
-      subroutine DMCopyAuxiliaryVec(969,27673
-      subroutine DMGetCoordinateDM(975,27833
-      subroutine DMSetCoordinateDM(981,27991
-      subroutine DMGetCellCoordinateDM(987,28149
-      subroutine DMSetCellCoordinateDM(993,28315
-      subroutine DMGetCoordinateDim(999,28481
-      subroutine DMSetCoordinateDim(1005,28653
-      subroutine DMGetCoordinateSection(1011,28825
-      subroutine DMSetCoordinateSection(1017,29027
-      subroutine DMGetCellCoordinateSection(1024,29260
-      subroutine DMSetCellCoordinateSection(1030,29470
-      subroutine DMGetCoordinates(1037,29711
-      subroutine DMSetCoordinates(1043,29874
-      subroutine DMGetCellCoordinates(1049,30037
-      subroutine DMSetCellCoordinates(1055,30208
-      subroutine DMGetCoordinatesLocalSetUp(1061,30379
-      subroutine DMGetCoordinatesLocal(1066,30536
-      subroutine DMGetCoordinatesLocalNoncollective(1072,30709
-      subroutine DMGetCoordinatesLocalTuple(1078,30908
-      subroutine DMSetCoordinatesLocal(1086,31167
-      subroutine DMGetCellCoordinatesLocalSetUp(1092,31340
-      subroutine DMGetCellCoordinatesLocal(1097,31505
-      subroutine DMGetCellCoordinatesLocalNoncollective(1103,31686
-      subroutine DMSetCellCoordinatesLocal(1109,31893
-      subroutine DMGetLocalBoundingBox(1115,32074
-      subroutine DMGetBoundingBox(1122,32295
-      subroutine DMProjectCoordinates(1129,32506
-      subroutine DMLocatePoints(1135,32680
+      subroutine DMGetCoordinateDM(239,7217
+      subroutine DMSetCoordinateDM(245,7375
+      subroutine DMGetCellCoordinateDM(251,7533
+      subroutine DMSetCellCoordinateDM(257,7699
+      subroutine DMGetCoordinateDim(263,7865
+      subroutine DMSetCoordinateDim(269,8037
+      subroutine DMGetCoordinateSection(275,8209
+      subroutine DMSetCoordinateSection(281,8411
+      subroutine DMGetCellCoordinateSection(288,8644
+      subroutine DMSetCellCoordinateSection(294,8854
+      subroutine DMGetCoordinates(301,9095
+      subroutine DMSetCoordinates(307,9258
+      subroutine DMGetCellCoordinates(313,9421
+      subroutine DMSetCellCoordinates(319,9592
+      subroutine DMGetCoordinatesLocalSetUp(325,9763
+      subroutine DMGetCoordinatesLocal(330,9920
+      subroutine DMGetCoordinatesLocalNoncollective(336,10093
+      subroutine DMGetCoordinatesLocalTuple(342,10292
+      subroutine DMSetCoordinatesLocal(350,10551
+      subroutine DMGetCellCoordinatesLocalSetUp(356,10724
+      subroutine DMGetCellCoordinatesLocal(361,10889
+      subroutine DMGetCellCoordinatesLocalNoncollective(367,11070
+      subroutine DMSetCellCoordinatesLocal(373,11277
+      subroutine DMGetLocalBoundingBox(379,11458
+      subroutine DMGetBoundingBox(386,11679
+      subroutine DMProjectCoordinates(393,11890
+      subroutine DMLocatePoints(399,12064
+      subroutine DMCreate(407,12314
+      subroutine DMClone(413,12466
+      subroutine VecGetDM(419,12604
+      subroutine VecSetDM(425,12751
+      subroutine MatGetDM(431,12898
+      subroutine MatSetDM(437,13045
+      subroutine DMSetUp(443,13192
+      subroutine DMSetFromOptions(448,13311
+      subroutine DMCreateGlobalVector(453,13448
+      subroutine DMCreateLocalVector(459,13619
+      subroutine DMGetLocalToGlobalMapping(465,13788
+      subroutine DMGetBlockSize(471,14002
+      subroutine DMCreateInterpolationScale(477,14166
+      subroutine DMCreateRestriction(485,14394
+      subroutine DMCreateInjection(492,14582
+      subroutine DMCreateMassMatrix(499,14766
+      subroutine DMCreateMassMatrixLumped(506,14952
+      subroutine DMCreateColoring(512,15131
+      subroutine DMCreateMatrix(519,15358
+      subroutine DMSetMatrixPreallocateSkip(525,15517
+      subroutine DMSetMatrixPreallocateOnly(531,15707
+      subroutine DMSetMatrixStructureOnly(537,15897
+      subroutine DMRefine(543,16083
+      subroutine DMInterpolate(550,16253
+      subroutine DMInterpolateSolution(557,16429
+      subroutine DMGetRefineLevel(566,16668
+      subroutine DMSetRefineLevel(572,16836
+      subroutine DMExtrude(578,17004
+      subroutine DMHasBasisTransform(585,17177
+      subroutine DMGlobalToLocal(591,17353
+      subroutine DMGlobalToLocalBegin(599,17570
+      subroutine DMGlobalToLocalEnd(607,17797
+      subroutine DMLocalToGlobal(615,18020
+      subroutine DMLocalToGlobalBegin(623,18237
+      subroutine DMLocalToGlobalEnd(631,18464
+      subroutine DMLocalToLocalBegin(639,18687
+      subroutine DMLocalToLocalEnd(647,18912
+      subroutine DMCoarsen(655,19133
+      subroutine DMRestrict(662,19305
+      subroutine DMSubDomainRestrict(671,19522
+      subroutine DMGetCoarsenLevel(679,19766
+      subroutine DMSetCoarsenLevel(685,19936
+      subroutine DMHasVariableBounds(691,20106
+      subroutine DMHasColoring(697,20282
+      subroutine DMHasCreateRestriction(703,20446
+      subroutine DMHasCreateInjection(709,20628
+      subroutine DMGetSection(715,20806
+      subroutine DMGetLocalSection(721,20988
+      subroutine DMSetSection(727,21180
+      subroutine DMSetLocalSection(733,21362
+      subroutine DMGetDefaultConstraints(739,21554
+      subroutine DMSetDefaultConstraints(747,21810
+      subroutine DMGetGlobalSection(755,22066
+      subroutine DMSetGlobalSection(761,22260
+      subroutine DMGetSectionSF(767,22454
+      subroutine DMSetSectionSF(773,22625
+      subroutine DMGetPointSF(779,22796
+      subroutine DMSetPointSF(785,22963
+      subroutine DMGetNaturalSF(791,23130
+      subroutine DMSetNaturalSF(797,23301
+      subroutine DMClearFields(803,23472
+      subroutine DMGetNumFields(808,23603
+      subroutine DMSetNumFields(814,23767
+      subroutine DMGetField(820,23931
+      subroutine DMSetField(828,24162
+      subroutine DMAddField(836,24393
+      subroutine DMSetFieldAvoidTensor(843,24593
+      subroutine DMGetFieldAvoidTensor(850,24804
+      subroutine DMCopyFields(857,25015
+      subroutine DMGetAdjacency(863,25163
+      subroutine DMSetAdjacency(871,25393
+      subroutine DMGetBasicAdjacency(879,25623
+      subroutine DMSetBasicAdjacency(886,25832
+      subroutine DMGetNumDS(893,26041
+      subroutine DMClearDS(899,26197
+      subroutine DMGetDS(904,26320
+      subroutine DMGetCellDS(910,26468
+      subroutine DMGetRegionDS(917,26655
+      subroutine DMSetRegionDS(925,26876
+      subroutine DMGetRegionNumDS(933,27097
+      subroutine DMSetRegionNumDS(942,27355
+      subroutine DMFindRegionNum(951,27613
+      subroutine DMCreateDS(958,27808
+      subroutine DMComputeExactSolution(963,27933
+      subroutine DMCopyDS(971,28162
+      subroutine DMCopyDisc(977,28302
+      subroutine DMGetDimension(983,28446
+      subroutine DMSetDimension(989,28610
+      subroutine DMGetDimPoints(995,28774
+      subroutine DMGetOutputDM(1003,29000
+      subroutine DMGetOutputSequenceNumber(1009,29150
+      subroutine DMSetOutputSequenceNumber(1016,29369
+      subroutine DMGetUseNatural(1023,29588
+      subroutine DMSetUseNatural(1029,29756
+      subroutine DMGetNumLabels(1035,29924
+      subroutine DMRemoveLabelBySelf(1041,30088
+      subroutine DMCopyLabels(1048,30302
+      subroutine DMGetCoarseDM(1057,30571
+      subroutine DMSetCoarseDM(1063,30721
+      subroutine DMGetFineDM(1069,30871
+      subroutine DMSetFineDM(1075,31017
+      subroutine MatFDColoringUseDM(1081,31163
+      subroutine DMGetCompatibility(1087,31363
+      subroutine DMMonitorCancel(1095,31589
+      subroutine DMMonitor(1100,31724
+      subroutine DMComputeError(1105,31847
+      subroutine DMGetNumAuxiliaryVec(1113,32064
+      subroutine DMGetAuxiliaryVec(1119,32240
+      subroutine DMSetAuxiliaryVec(1128,32505
+      subroutine DMCopyAuxiliaryVec(1137,32770
       subroutine PetscPartitionerView(1143,32930
       subroutine PetscPartitionerSetFromOptions(1149,33149
       subroutine PetscPartitionerSetUp(1153,33324
@@ -56403,77 +56403,77 @@
       subroutine PetscDTAltVInteriorMatrix(268,9516
       subroutine PetscDTAltVInteriorPattern(275,9762
       subroutine PetscDTAltVStar(281,9979
-      subroutine PetscPDFMaxwellBoltzmann1D(289,10236
-      subroutine PetscCDFMaxwellBoltzmann1D(295,10467
-      subroutine PetscPDFMaxwellBoltzmann2D(301,10698
-      subroutine PetscCDFMaxwellBoltzmann2D(307,10929
-      subroutine PetscPDFMaxwellBoltzmann3D(313,11160
-      subroutine PetscCDFMaxwellBoltzmann3D(319,11391
-      subroutine PetscPDFGaussian1D(325,11622
-      subroutine PetscPDFSampleGaussian1D(331,11837
-      subroutine PetscPDFGaussian2D(337,12064
-      subroutine PetscPDFSampleGaussian2D(343,12279
-      subroutine PetscPDFGaussian3D(349,12506
-      subroutine PetscPDFSampleGaussian3D(355,12721
-      subroutine PetscPDFConstant1D(361,12948
-      subroutine PetscCDFConstant1D(367,13163
-      subroutine PetscPDFSampleConstant1D(373,13378
-      subroutine PetscPDFConstant2D(379,13605
-      subroutine PetscCDFConstant2D(385,13820
-      subroutine PetscPDFSampleConstant2D(391,14035
-      subroutine PetscPDFConstant3D(397,14262
-      subroutine PetscCDFConstant3D(403,14477
-      subroutine PetscPDFSampleConstant3D(409,14692
-      subroutine PetscWeakFormCopy(415,14919
-      subroutine PetscWeakFormClear(420,15103
-      subroutine PetscWeakFormGetNumFields(424,15248
-      subroutine PetscWeakFormSetNumFields(429,15438
-      subroutine PetscWeakFormDestroy(434,15628
-      subroutine PetscWeakFormCreate(438,15777
-      subroutine PetscDSSetFromOptions(443,15955
-      subroutine PetscDSDestroy(447,16094
-      subroutine PetscDSCreate(451,16219
-      subroutine PetscDSGetNumFields(456,16373
-      subroutine PetscDSGetSpatialDimension(461,16539
-      subroutine PetscDSGetCoordinateDimension(466,16719
-      subroutine PetscDSSetCoordinateDimension(471,16905
-      subroutine PetscDSIsCohesive(476,17091
-      subroutine PetscDSGetNumCohesive(481,17255
-      subroutine PetscDSGetCohesive(486,17425
-      subroutine PetscDSSetCohesive(492,17622
-      subroutine PetscDSGetTotalDimension(498,17819
-      subroutine PetscDSGetTotalComponents(503,17995
-      subroutine PetscDSGetDiscretization(508,18173
-      subroutine PetscDSSetDiscretization(514,18386
-      subroutine PetscDSGetWeakForm(520,18599
-      subroutine PetscDSSetWeakForm(525,18773
-      subroutine PetscDSAddDiscretization(530,18947
-      subroutine PetscDSGetQuadrature(535,19129
-      subroutine PetscDSGetImplicit(540,19311
-      subroutine PetscDSSetImplicit(546,19508
-      subroutine PetscDSGetJetDegree(552,19705
-      subroutine PetscDSSetJetDegree(558,19902
-      subroutine PetscDSHasBdJacobian(564,20099
-      subroutine PetscDSHasBdJacobianPreconditioner(569,20269
-      subroutine PetscDSGetFieldIndex(574,20467
-      subroutine PetscDSGetFieldSize(580,20672
-      subroutine PetscDSGetFieldOffset(586,20869
-      subroutine PetscDSGetFieldOffsetCohesive(592,21070
-      subroutine PetscDSGetDimensions(598,21287
-      subroutine PetscDSGetComponents(603,21459
-      subroutine PetscDSGetComponentOffset(608,21631
-      subroutine PetscDSGetComponentOffsets(614,21840
-      subroutine PetscDSGetComponentDerivativeOffsets(619,22024
-      subroutine PetscDSGetComponentOffsetsCohesive(624,22228
-      subroutine PetscDSGetComponentDerivativeOffsetsCohesive(630,22459
-      subroutine PetscDSGetNumBoundary(636,22710
-      subroutine PetscDSCopyBoundary(641,22880
-      subroutine PetscDSDestroyBoundary(648,23110
-      subroutine PetscDSSelectDiscretizations(652,23251
-      subroutine PetscDSSelectEquations(659,23499
-      subroutine PetscDSCopyEquations(666,23735
-      subroutine PetscDSCopyConstants(671,23901
-      subroutine PetscDSCopyExactSolutions(676,24067
+      subroutine PetscWeakFormCopy(289,10236
+      subroutine PetscWeakFormClear(294,10420
+      subroutine PetscWeakFormGetNumFields(298,10565
+      subroutine PetscWeakFormSetNumFields(303,10755
+      subroutine PetscWeakFormDestroy(308,10945
+      subroutine PetscWeakFormCreate(312,11094
+      subroutine PetscDSSetFromOptions(317,11272
+      subroutine PetscDSDestroy(321,11411
+      subroutine PetscDSCreate(325,11536
+      subroutine PetscDSGetNumFields(330,11690
+      subroutine PetscDSGetSpatialDimension(335,11856
+      subroutine PetscDSGetCoordinateDimension(340,12036
+      subroutine PetscDSSetCoordinateDimension(345,12222
+      subroutine PetscDSIsCohesive(350,12408
+      subroutine PetscDSGetNumCohesive(355,12572
+      subroutine PetscDSGetCohesive(360,12742
+      subroutine PetscDSSetCohesive(366,12939
+      subroutine PetscDSGetTotalDimension(372,13136
+      subroutine PetscDSGetTotalComponents(377,13312
+      subroutine PetscDSGetDiscretization(382,13490
+      subroutine PetscDSSetDiscretization(388,13703
+      subroutine PetscDSGetWeakForm(394,13916
+      subroutine PetscDSSetWeakForm(399,14090
+      subroutine PetscDSAddDiscretization(404,14264
+      subroutine PetscDSGetQuadrature(409,14446
+      subroutine PetscDSGetImplicit(414,14628
+      subroutine PetscDSSetImplicit(420,14825
+      subroutine PetscDSGetJetDegree(426,15022
+      subroutine PetscDSSetJetDegree(432,15219
+      subroutine PetscDSHasBdJacobian(438,15416
+      subroutine PetscDSHasBdJacobianPreconditioner(443,15586
+      subroutine PetscDSGetFieldIndex(448,15784
+      subroutine PetscDSGetFieldSize(454,15989
+      subroutine PetscDSGetFieldOffset(460,16186
+      subroutine PetscDSGetFieldOffsetCohesive(466,16387
+      subroutine PetscDSGetDimensions(472,16604
+      subroutine PetscDSGetComponents(477,16776
+      subroutine PetscDSGetComponentOffset(482,16948
+      subroutine PetscDSGetComponentOffsets(488,17157
+      subroutine PetscDSGetComponentDerivativeOffsets(493,17341
+      subroutine PetscDSGetComponentOffsetsCohesive(498,17545
+      subroutine PetscDSGetComponentDerivativeOffsetsCohesive(504,17776
+      subroutine PetscDSGetNumBoundary(510,18027
+      subroutine PetscDSCopyBoundary(515,18197
+      subroutine PetscDSDestroyBoundary(522,18427
+      subroutine PetscDSSelectDiscretizations(526,18568
+      subroutine PetscDSSelectEquations(533,18816
+      subroutine PetscDSCopyEquations(540,19052
+      subroutine PetscDSCopyConstants(545,19218
+      subroutine PetscDSCopyExactSolutions(550,19384
+      subroutine PetscPDFMaxwellBoltzmann1D(555,19560
+      subroutine PetscCDFMaxwellBoltzmann1D(561,19791
+      subroutine PetscPDFMaxwellBoltzmann2D(567,20022
+      subroutine PetscCDFMaxwellBoltzmann2D(573,20253
+      subroutine PetscPDFMaxwellBoltzmann3D(579,20484
+      subroutine PetscCDFMaxwellBoltzmann3D(585,20715
+      subroutine PetscPDFGaussian1D(591,20946
+      subroutine PetscPDFSampleGaussian1D(597,21161
+      subroutine PetscPDFGaussian2D(603,21388
+      subroutine PetscPDFSampleGaussian2D(609,21603
+      subroutine PetscPDFGaussian3D(615,21830
+      subroutine PetscPDFSampleGaussian3D(621,22045
+      subroutine PetscPDFConstant1D(627,22272
+      subroutine PetscCDFConstant1D(633,22487
+      subroutine PetscPDFSampleConstant1D(639,22702
+      subroutine PetscPDFConstant2D(645,22929
+      subroutine PetscCDFConstant2D(651,23144
+      subroutine PetscPDFSampleConstant2D(657,23359
+      subroutine PetscPDFConstant3D(663,23586
+      subroutine PetscCDFConstant3D(669,23801
+      subroutine PetscPDFSampleConstant3D(675,24016
 
 src/dm/f90-mod/ftn-auto-interfaces/petscfv.h90,1028
 petscfv.h90:^?petscfv.h90^A,1
@@ -56977,6 +56977,34 @@
 MANSEC 8,153
 SUBMANSEC 9,168
 
+src/dm/dt/interface/dtprob.c,1220
+dtprob.c:^?dtprob.c^A,1
+const char *const DTProbDensityTypes[DTProbDensityTypes7,125
+PetscErrorCode PetscPDFMaxwellBoltzmann1D(24,527
+PetscErrorCode PetscCDFMaxwellBoltzmann1D(45,994
+PetscErrorCode PetscPDFMaxwellBoltzmann2D(66,1427
+PetscErrorCode PetscCDFMaxwellBoltzmann2D(87,1870
+PetscErrorCode PetscPDFMaxwellBoltzmann3D(108,2311
+PetscErrorCode PetscCDFMaxwellBoltzmann3D(129,2795
+PetscErrorCode PetscPDFGaussian1D(150,3298
+PetscErrorCode PetscCDFGaussian1D(157,3576
+PetscErrorCode PetscPDFSampleGaussian1D(181,4254
+PetscErrorCode PetscPDFGaussian2D(224,5456
+PetscErrorCode PetscPDFSampleGaussian2D(248,6048
+PetscErrorCode PetscPDFGaussian3D(272,6681
+PetscErrorCode PetscPDFSampleGaussian3D(297,7323
+PetscErrorCode PetscPDFConstant1D(319,7876
+PetscErrorCode PetscCDFConstant1D(340,8360
+PetscErrorCode PetscPDFSampleConstant1D(361,8896
+PetscErrorCode PetscPDFConstant2D(382,9372
+PetscErrorCode PetscCDFConstant2D(403,9895
+PetscErrorCode PetscPDFSampleConstant2D(424,10508
+PetscErrorCode PetscPDFConstant3D(446,11031
+PetscErrorCode PetscCDFConstant3D(467,11593
+PetscErrorCode PetscPDFSampleConstant3D(488,12272
+PetscErrorCode PetscProbCreateFromOptions(515,13014
+PetscErrorCode PetscProbComputeKSStatistic(637,16977
+
 src/dm/dt/interface/dtds.c,5323
 dtds.c:^?dtds.c^A,1
 PetscClassId PETSCDS_CLASSID 3,60
@@ -57157,34 +57185,6 @@
 PetscErrorCode PetscWeakFormView(1051,79059
 PetscErrorCode PetscWeakFormCreate(1080,79878
 
-src/dm/dt/interface/dtprob.c,1220
-dtprob.c:^?dtprob.c^A,1
-const char *const DTProbDensityTypes[DTProbDensityTypes7,125
-PetscErrorCode PetscPDFMaxwellBoltzmann1D(24,527
-PetscErrorCode PetscCDFMaxwellBoltzmann1D(45,994
-PetscErrorCode PetscPDFMaxwellBoltzmann2D(66,1427
-PetscErrorCode PetscCDFMaxwellBoltzmann2D(87,1870
-PetscErrorCode PetscPDFMaxwellBoltzmann3D(108,2311
-PetscErrorCode PetscCDFMaxwellBoltzmann3D(129,2795
-PetscErrorCode PetscPDFGaussian1D(150,3298
-PetscErrorCode PetscCDFGaussian1D(157,3576
-PetscErrorCode PetscPDFSampleGaussian1D(181,4254
-PetscErrorCode PetscPDFGaussian2D(224,5456
-PetscErrorCode PetscPDFSampleGaussian2D(248,6048
-PetscErrorCode PetscPDFGaussian3D(272,6681
-PetscErrorCode PetscPDFSampleGaussian3D(297,7323
-PetscErrorCode PetscPDFConstant1D(319,7876
-PetscErrorCode PetscCDFConstant1D(340,8360
-PetscErrorCode PetscPDFSampleConstant1D(361,8896
-PetscErrorCode PetscPDFConstant2D(382,9372
-PetscErrorCode PetscCDFConstant2D(403,9895
-PetscErrorCode PetscPDFSampleConstant2D(424,10508
-PetscErrorCode PetscPDFConstant3D(446,11031
-PetscErrorCode PetscCDFConstant3D(467,11593
-PetscErrorCode PetscPDFSampleConstant3D(488,12272
-PetscErrorCode PetscProbCreateFromOptions(515,13014
-PetscErrorCode PetscProbComputeKSStatistic(637,16977
-
 src/dm/dt/interface/dtaltv.c,423
 dtaltv.c:^?dtaltv.c^A,1
 PetscErrorCode PetscDTAltVApply(75,5500
@@ -57531,28 +57531,28 @@
 PetscErrorCode PetscFVGetCellTabulation(1578,43570
 PetscErrorCode PetscFVCreateTabulation(1618,45018
 PetscErrorCode PetscFVComputeGradient(1676,47022
-PetscErrorCode PetscFVIntegrateRHSFunction(1707,48151
-PetscErrorCode PetscFVRefine(1730,49139
-static PetscErrorCode PetscFVDestroy_Upwind(1788,51497
-static PetscErrorCode PetscFVView_Upwind_Ascii(1797,51686
-static PetscErrorCode PetscFVView_Upwind(1813,52309
-static PetscErrorCode PetscFVSetUp_Upwind(1825,52717
-static PetscErrorCode PetscFVIntegrateRHSFunction_Upwind(1835,52921
-static PetscErrorCode PetscFVInitialize_Upwind(1862,54338
-PETSC_EXTERN PetscErrorCode PetscFVCreate_Upwind(1881,54896
-static PetscErrorCode PetscFVDestroy_LeastSquares(1896,55205
-static PetscErrorCode PetscFVView_LeastSquares_Ascii(1907,55576
-static PetscErrorCode PetscFVView_LeastSquares(1923,56232
-static PetscErrorCode PetscFVSetUp_LeastSquares(1935,56652
-static PetscErrorCode PetscFVLeastSquaresPseudoInverse_Static(1942,56831
-static PetscErrorCode PetscFVLeastSquaresPseudoInverseSVD_Static(1990,58773
-static PetscErrorCode PetscFVLeastSquaresDebugCell_Static(2039,60685
-static PetscErrorCode PetscFVComputeGradient_LeastSquares(2082,62129
-static PetscErrorCode PetscFVIntegrateRHSFunction_LeastSquares(2120,63872
-static PetscErrorCode PetscFVLeastSquaresSetMaxFaces_LS(2147,65295
-PetscErrorCode PetscFVInitialize_LeastSquares(2167,66107
-PETSC_EXTERN PetscErrorCode PetscFVCreate_LeastSquares(2187,66772
-PetscErrorCode PetscFVLeastSquaresSetMaxFaces(2222,67736
+PetscErrorCode PetscFVIntegrateRHSFunction(1707,48152
+PetscErrorCode PetscFVRefine(1730,49140
+static PetscErrorCode PetscFVDestroy_Upwind(1788,51498
+static PetscErrorCode PetscFVView_Upwind_Ascii(1797,51687
+static PetscErrorCode PetscFVView_Upwind(1813,52310
+static PetscErrorCode PetscFVSetUp_Upwind(1825,52718
+static PetscErrorCode PetscFVIntegrateRHSFunction_Upwind(1835,52922
+static PetscErrorCode PetscFVInitialize_Upwind(1862,54339
+PETSC_EXTERN PetscErrorCode PetscFVCreate_Upwind(1881,54897
+static PetscErrorCode PetscFVDestroy_LeastSquares(1896,55206
+static PetscErrorCode PetscFVView_LeastSquares_Ascii(1907,55577
+static PetscErrorCode PetscFVView_LeastSquares(1923,56233
+static PetscErrorCode PetscFVSetUp_LeastSquares(1935,56653
+static PetscErrorCode PetscFVLeastSquaresPseudoInverse_Static(1942,56832
+static PetscErrorCode PetscFVLeastSquaresPseudoInverseSVD_Static(1990,58774
+static PetscErrorCode PetscFVLeastSquaresDebugCell_Static(2039,60686
+static PetscErrorCode PetscFVComputeGradient_LeastSquares(2082,62130
+static PetscErrorCode PetscFVIntegrateRHSFunction_LeastSquares(2120,63873
+static PetscErrorCode PetscFVLeastSquaresSetMaxFaces_LS(2147,65296
+PetscErrorCode PetscFVInitialize_LeastSquares(2167,66108
+PETSC_EXTERN PetscErrorCode PetscFVCreate_LeastSquares(2187,66773
+PetscErrorCode PetscFVLeastSquaresSetMaxFaces(2222,67737
 
 src/dm/dt/fv/interface/makefile,113
 makefile:^?makefile^A,1
@@ -57936,10 +57936,10 @@
 PetscErrorCode PetscDualSpaceTransform(1815,62987
 PetscErrorCode PetscDualSpaceTransformGradient(1871,65112
 PetscErrorCode PetscDualSpaceTransformHessian(2006,70417
-PetscErrorCode PetscDualSpacePullback(2077,73649
-PetscErrorCode PetscDualSpacePushforward(2129,75834
-PetscErrorCode PetscDualSpacePushforwardGradient(2181,78099
-PetscErrorCode PetscDualSpacePushforwardHessian(2233,80376
+PetscErrorCode PetscDualSpacePullback(2077,73650
+PetscErrorCode PetscDualSpacePushforward(2129,75835
+PetscErrorCode PetscDualSpacePushforwardGradient(2181,78100
+PetscErrorCode PetscDualSpacePushforwardHessian(2233,80377
 
 src/dm/dt/dualspace/interface/makefile,113
 makefile:^?makefile^A,1
@@ -63724,14 +63724,14 @@
 
 src/binding/petsc4py/docs/usrman/search.html,170
 search.html:^?search.html^A,1
-Search — PETSc for Python 3.18.4 documentation8,150
+Search — PETSc for Python 3.18.5 documentation8,150
 Navigationdocumentation_options29,1125
 Searchsearch-documentation44,1677
 Navigationsearch-results86,2705
 
 src/binding/petsc4py/docs/usrman/genindex.html,170
 genindex.html:^?genindex.html^A,1
-Index — PETSc for Python 3.18.4 documentation8,150
+Index — PETSc for Python 3.18.5 documentation8,150
 Navigationdocumentation_options23,962
 Indexindex39,1502
 Quick searchsearchlabel53,1837
@@ -63739,7 +63739,7 @@
 
 src/binding/petsc4py/docs/usrman/tutorial.html,198
 tutorial.html:^?tutorial.html^A,1
-Tutorial — PETSc for Python 3.18.4 documentation9,236
+Tutorial — PETSc for Python 3.18.5 documentation9,236
 Navigationdocumentation_options26,1189
 Tutorialtutorial48,2019
 This Page70,2752
@@ -63748,7 +63748,7 @@
 
 src/binding/petsc4py/docs/usrman/overview.html,364
 overview.html:^?overview.html^A,1
-Overview — PETSc for Python 3.18.4 documentation9,236
+Overview — PETSc for Python 3.18.5 documentation9,236
 Navigationdocumentation_options26,1195
 Overviewoverview48,2031
 [petsc-efficient]id154,2560
@@ -63763,7 +63763,7 @@
 
 src/binding/petsc4py/docs/usrman/manual.html,224
 manual.html:^?manual.html^A,1
-PETSc for Python — PETSc for Python 3.18.4 documentation9,236
+PETSc for Python — PETSc for Python 3.18.5 documentation9,236
 Navigationdocumentation_options24,1071
 PETSc for Pythonpetsc-for-python40,1667
 This Page93,4655
@@ -63772,7 +63772,7 @@
 
 src/binding/petsc4py/docs/usrman/install.html,348
 install.html:^?install.html^A,1
-Installation — PETSc for Python 3.18.4 documentation9,236
+Installation — PETSc for Python 3.18.5 documentation9,236
 Navigationdocumentation_options26,1191
 Installationinstallation48,2027
 Using petsc4py-install50,2157
@@ -63785,7 +63785,7 @@
 
 src/binding/petsc4py/docs/usrman/citing.html,201
 citing.html:^?citing.html^A,1
-Citations — PETSc for Python 3.18.4 documentation9,236
+Citations — PETSc for Python 3.18.5 documentation9,236
 Navigationdocumentation_options25,1126
 Citationscitations44,1834
 This Page78,3469
@@ -64786,6 +64786,60 @@
 #define PETSC_VERSION_GT(40,1304
 #define PETSC_VERSION_GE(43,1402
 
+include/petscdmstag.h,1665
+petscdmstag.h:^?petscdmstag.h^A,1
+#define PETSC_DMSTAG_H2,23
+  DMSTAG_NULL_LOCATION 23,643
+  DMSTAG_BACK_DOWN_LEFT,24,671
+  DMSTAG_BACK_DOWN,25,696
+  DMSTAG_BACK_DOWN_RIGHT,26,716
+  DMSTAG_BACK_LEFT,27,742
+  DMSTAG_BACK,28,762
+  DMSTAG_BACK_RIGHT,29,777
+  DMSTAG_BACK_UP_LEFT,30,798
+  DMSTAG_BACK_UP,31,821
+  DMSTAG_BACK_UP_RIGHT,32,839
+  DMSTAG_DOWN_LEFT,33,863
+  DMSTAG_DOWN,34,883
+  DMSTAG_DOWN_RIGHT,35,898
+  DMSTAG_LEFT,36,919
+  DMSTAG_ELEMENT,37,934
+  DMSTAG_RIGHT,38,952
+  DMSTAG_UP_LEFT,39,968
+  DMSTAG_UP,40,986
+  DMSTAG_UP_RIGHT,41,999
+  DMSTAG_FRONT_DOWN_LEFT,42,1018
+  DMSTAG_FRONT_DOWN,43,1044
+  DMSTAG_FRONT_DOWN_RIGHT,44,1065
+  DMSTAG_FRONT_LEFT,45,1092
+  DMSTAG_FRONT,46,1113
+  DMSTAG_FRONT_RIGHT,47,1129
+  DMSTAG_FRONT_UP_LEFT,48,1151
+  DMSTAG_FRONT_UP,49,1175
+  DMSTAG_FRONT_UP_RIGHT50,1194
+} DMStagStencilLocation;51,1218
+PETSC_EXTERN const char *const DMStagStencilLocations[DMStagStencilLocations52,1243
+  DMStagStencilLocation loc;70,2246
+  PetscInt              i,71,2275
+  PetscInt              i, j,71,2275
+  PetscInt              i, j, k,71,2275
+  PetscInt              i, j, k, c;71,2275
+} DMStagStencil;72,2311
+  DMSTAG_STENCIL_NONE 83,2636
+  DMSTAG_STENCIL_STAR,84,2663
+  DMSTAG_STENCIL_BOX85,2686
+} DMStagStencilType;86,2707
+PETSC_EXTERN const char *const DMStagStencilTypes[DMStagStencilTypes87,2728
+PETSC_DEPRECATED_FUNCTION(142,8131
+PETSC_DEPRECATED_FUNCTION(146,8391
+PETSC_DEPRECATED_FUNCTION(150,8660
+PETSC_DEPRECATED_FUNCTION(154,8856
+PETSC_DEPRECATED_FUNCTION(158,9128
+PETSC_DEPRECATED_FUNCTION(162,9324
+PETSC_DEPRECATED_FUNCTION(166,9512
+PETSC_DEPRECATED_FUNCTION(170,9712
+PETSC_DEPRECATED_FUNCTION(174,9912
+
 include/petscsystypes.h,5594
 petscsystypes.h:^?petscsystypes.h^A,1
 #define PETSCSYSTYPES_H6,136
@@ -68826,60 +68880,6 @@
   #define PetscDrawCollectiveBegin(431,20051
   #define PetscDrawCollectiveEnd(432,20092
 
-include/petscdmstag.h,1663
-petscdmstag.h:^?petscdmstag.h^A,1
-#define PETSC_DMSTAG_H2,23
-  DMSTAG_NULL_LOCATION 22,583
-  DMSTAG_BACK_DOWN_LEFT,23,611
-  DMSTAG_BACK_DOWN,24,636
-  DMSTAG_BACK_DOWN_RIGHT,25,656
-  DMSTAG_BACK_LEFT,26,682
-  DMSTAG_BACK,27,702
-  DMSTAG_BACK_RIGHT,28,717
-  DMSTAG_BACK_UP_LEFT,29,738
-  DMSTAG_BACK_UP,30,761
-  DMSTAG_BACK_UP_RIGHT,31,779
-  DMSTAG_DOWN_LEFT,32,803
-  DMSTAG_DOWN,33,823
-  DMSTAG_DOWN_RIGHT,34,838
-  DMSTAG_LEFT,35,859
-  DMSTAG_ELEMENT,36,874
-  DMSTAG_RIGHT,37,892
-  DMSTAG_UP_LEFT,38,908
-  DMSTAG_UP,39,926
-  DMSTAG_UP_RIGHT,40,939
-  DMSTAG_FRONT_DOWN_LEFT,41,958
-  DMSTAG_FRONT_DOWN,42,984
-  DMSTAG_FRONT_DOWN_RIGHT,43,1005
-  DMSTAG_FRONT_LEFT,44,1032
-  DMSTAG_FRONT,45,1053
-  DMSTAG_FRONT_RIGHT,46,1069
-  DMSTAG_FRONT_UP_LEFT,47,1091
-  DMSTAG_FRONT_UP,48,1115
-  DMSTAG_FRONT_UP_RIGHT49,1134
-} DMStagStencilLocation;50,1158
-PETSC_EXTERN const char *const DMStagStencilLocations[DMStagStencilLocations51,1183
-  DMStagStencilLocation loc;68,2133
-  PetscInt              i,69,2162
-  PetscInt              i, j,69,2162
-  PetscInt              i, j, k,69,2162
-  PetscInt              i, j, k, c;69,2162
-} DMStagStencil;70,2198
-  DMSTAG_STENCIL_NONE 81,2480
-  DMSTAG_STENCIL_STAR,82,2507
-  DMSTAG_STENCIL_BOX83,2530
-} DMStagStencilType;84,2551
-PETSC_EXTERN const char *const DMStagStencilTypes[DMStagStencilTypes85,2572
-PETSC_DEPRECATED_FUNCTION(140,7975
-PETSC_DEPRECATED_FUNCTION(144,8235
-PETSC_DEPRECATED_FUNCTION(148,8504
-PETSC_DEPRECATED_FUNCTION(152,8700
-PETSC_DEPRECATED_FUNCTION(156,8972
-PETSC_DEPRECATED_FUNCTION(160,9168
-PETSC_DEPRECATED_FUNCTION(164,9356
-PETSC_DEPRECATED_FUNCTION(168,9556
-PETSC_DEPRECATED_FUNCTION(172,9756
-
 include/petscdmsliced.h,29
 petscdmsliced.h:^?petscdmsliced.h^A,1
 #define PETSCDMSLICED_H3,59
@@ -69418,6 +69418,832 @@
 typedef struct _PetscHashIV PetscHMapIV;1381,30291
 typedef struct _PetscHashObj PetscHMapObj;1792,39512
 
+include/petsc/private/petscimpl.h,11701
+petscimpl.h:^?petscimpl.h^A,1
+#define PETSCIMPL_H6,78
+  #define PetscDisableStaticAnalyzerForExpressionUnderstandingThatThisIsDangerousAndBugprone(12,185
+  #define PetscDisableStaticAnalyzerForExpressionUnderstandingThatThisIsDangerousAndBugprone(14,290
+  #define PetscStackSetCheck(24,737
+  #define PetscStackView(25,783
+  #define PetscStackReset(26,829
+  #define PetscStackCopy(27,875
+  #define PetscStackPrint(28,921
+  PetscErrorCode (*view)view63,2565
+  PetscErrorCode (*destroy)destroy64,2617
+  PetscErrorCode (*compose)compose65,2661
+  PetscErrorCode (*query)query66,2730
+  PetscErrorCode (*composefunction)composefunction67,2799
+  PetscErrorCode (*queryfunction)queryfunction68,2879
+} PetscOps;69,2958
+  PETSC_FORTRAN_CALLBACK_CLASS,72,2986
+  PETSC_FORTRAN_CALLBACK_SUBTYPE,73,3018
+  PETSC_FORTRAN_CALLBACK_MAXTYPE74,3052
+} PetscFortranCallbackType;75,3085
+typedef size_t PetscFortranCallbackId;76,3113
+#define PETSC_SMALLEST_FORTRAN_CALLBACK 77,3152
+  void (*func)func82,3477
+  void *ctx;ctx83,3499
+} PetscFortranCallback;84,3512
+#define PETSC_MAX_OPTIONS_HANDLER 92,3784
+typedef struct _p_PetscObject 93,3820
+  PetscOps      bops[bops94,3852
+  PetscClassId  classid;95,3877
+  MPI_Comm      comm;96,3902
+  PetscObjectId id;97,3924
+  PetscInt      refct;98,4071
+  PetscErrorCode (*non_cyclic_references)non_cyclic_references99,4094
+  PetscInt64        cidx;100,4162
+  PetscMPIInt       tag;101,4188
+  PetscFunctionList qlist;102,4213
+  PetscObjectList   olist;103,4240
+  char             *class_name;class_name104,4267
+  char             *description;description105,4325
+  char             *mansec;mansec106,4358
+  char             *type_name;type_name107,4386
+  char             *name;name108,4484
+  char             *prefix;prefix109,4510
+  PetscInt          tablevel;110,4538
+  void             *cpp;cpp111,4568
+  PetscObjectState  state;112,4593
+  PetscInt          int_idmax,113,4620
+  PetscInt          int_idmax, intstar_idmax;113,4620
+  PetscObjectState *intcomposedstate,intcomposedstate114,4666
+  PetscObjectState *intcomposedstate, *intstarcomposedstate;intstarcomposedstate114,4666
+  PetscInt         *intcomposeddata,intcomposeddata115,4727
+  PetscInt         *intcomposeddata, **intstarcomposeddata;intstarcomposeddata115,4727
+  PetscInt          real_idmax,116,4787
+  PetscInt          real_idmax, realstar_idmax;116,4787
+  PetscObjectState *realcomposedstate,realcomposedstate117,4835
+  PetscObjectState *realcomposedstate, *realstarcomposedstate;realstarcomposedstate117,4835
+  PetscReal        *realcomposeddata,realcomposeddata118,4898
+  PetscReal        *realcomposeddata, **realstarcomposeddata;realstarcomposeddata118,4898
+  PetscInt          scalar_idmax,119,4960
+  PetscInt          scalar_idmax, scalarstar_idmax;119,4960
+  PetscObjectState *scalarcomposedstate,scalarcomposedstate120,5012
+  PetscObjectState *scalarcomposedstate, *scalarstarcomposedstate;scalarstarcomposedstate120,5012
+  PetscScalar      *scalarcomposeddata,scalarcomposeddata121,5079
+  PetscScalar      *scalarcomposeddata, **scalarstarcomposeddata;scalarstarcomposeddata121,5079
+  void (**fortran_func_pointers)fortran_func_pointers122,5145
+  PetscFortranCallbackId num_fortran_func_pointers;123,5280
+  PetscFortranCallback  *fortrancallback[fortrancallback124,5384
+  PetscFortranCallbackId num_fortrancallback[num_fortrancallback125,5458
+  void                  *python_context;python_context126,5536
+  PetscErrorCode (*python_destroy)python_destroy127,5577
+  PetscInt noptionhandler;129,5622
+  PetscErrorCode (*optionhandler[optionhandler130,5649
+  PetscErrorCode (*optiondestroy[optiondestroy131,5752
+  void *optionctx[optionctx132,5835
+  PetscBool amsmem;134,5910
+  PetscBool amspublishblock;135,6023
+  PetscOptions options;137,6144
+  PetscBool    optionsprinted;138,6216
+  PetscBool    donotPetscObjectPrintClassNamePrefixType;139,6247
+} _p_PetscObject;140,6304
+#define PETSCHEADER(142,6323
+#define PETSCFREEDHEADER 146,6405
+PETSC_EXTERN_TYPEDEF typedef PetscErrorCode (*PetscObjectDestroyFunction)PetscObjectDestroyFunction148,6434
+PETSC_EXTERN_TYPEDEF typedef PetscErrorCode (*PetscObjectViewFunction)PetscObjectViewFunction149,6585
+#define PetscHeaderCreate(280,11300
+#define PetscHeaderDestroy(341,13197
+  #define PetscCheckPointer(359,14414
+    #define PetscValidHeaderSpecific(367,14653
+    #define PetscValidHeaderSpecificType(371,14756
+    #define PetscValidHeader(375,14866
+    #define PetscValidPointer(379,14957
+    #define PetscValidCharPointer(383,15049
+    #define PetscValidIntPointer(387,15145
+    #define PetscValidInt64Pointer(391,15240
+    #define PetscValidCountPointer(395,15337
+    #define PetscValidBoolPointer(399,15434
+    #define PetscValidScalarPointer(403,15530
+    #define PetscValidRealPointer(407,15628
+    #define PetscValidFunction(411,15724
+    #define PetscValidHeaderSpecificType(419,15963
+    #define PetscValidPointer_Internal(427,16390
+    #define PetscValidHeaderSpecific(433,16790
+    #define PetscValidHeader(442,17270
+    #define PetscValidPointer(449,17789
+    #define PetscValidCharPointer(450,17888
+    #define PetscValidIntPointer(451,17985
+    #define PetscValidInt64Pointer(452,18085
+    #define PetscValidCountPointer(453,18187
+    #define PetscValidBoolPointer(454,18291
+    #define PetscValidScalarPointer(455,18393
+    #define PetscValidRealPointer(456,18499
+    #define PetscValidFunction(458,18602
+#define PetscSorted(492,19710
+    #define PetscCheckSameType(506,20037
+    #define PetscCheckTypeName(511,20161
+    #define PetscCheckTypeNames(515,20255
+    #define PetscValidType(519,20358
+    #define PetscCheckSameComm(523,20447
+    #define PetscCheckSameTypeAndComm(528,20571
+    #define PetscValidLogicalCollectiveScalar(533,20702
+    #define PetscValidLogicalCollectiveReal(538,20834
+    #define PetscValidLogicalCollectiveInt(543,20964
+    #define PetscValidLogicalCollectiveMPIInt(548,21093
+    #define PetscValidLogicalCollectiveBool(553,21225
+    #define PetscValidLogicalCollectiveEnum(558,21355
+    #define PetscCheckSorted(563,21485
+      #define PetscCheckSameType(581,22041
+      #define PetscCheckSameType(588,22528
+    #define PetscCheckTypeName(598,22704
+    #define PetscCheckTypeNames(605,23034
+    #define PetscValidType(615,23460
+    #define PetscCheckSameComm(620,23742
+    #define PetscCheckSameTypeAndComm(627,24191
+    #define PetscValidLogicalCollectiveScalar(633,24377
+    #define PetscValidLogicalCollectiveReal(650,25139
+    #define PetscValidLogicalCollectiveInt(664,25721
+    #define PetscValidLogicalCollectiveMPIInt(673,26169
+    #define PetscValidLogicalCollectiveBool(682,26636
+    #define PetscValidLogicalCollectiveEnum(691,27107
+    #define PetscCheckSorted(700,27578
+template <typename Ta,709,27868
+template <typename Ta,711,27947
+template <typename Ta,713,28016
+template <typename Ta, typename Tb,713,28016
+template <typename Ta,717,28153
+template <typename Ta,719,28232
+template <typename Ta,721,28318
+template <typename Ta,723,28407
+template <typename Ta,725,28494
+template <typename Ta,727,28580
+template <typename Ta,729,28669
+template <typename Ta,731,28756
+#define PetscTryMethod(762,30005
+#define PetscUseMethod(794,31301
+  #define PetscUseTypeMethod(816,32243
+  #define PetscTryTypeMethod(825,32664
+  #define PetscUseTypeMethod(858,33801
+  #define PetscTryTypeMethod(886,35128
+#define PetscObjectStateIncrease(929,36828
+PETSC_EXTERN PetscInt       PetscObjectComposedDataMax;940,37604
+#define PetscObjectComposedDataSetInt(968,38654
+#define PetscObjectComposedDataGetInt(998,39876
+#define PetscObjectComposedDataSetIntstar(1025,41046
+#define PetscObjectComposedDataGetIntstar(1056,42345
+#define PetscObjectComposedDataSetReal(1081,43428
+#define PetscObjectComposedDataGetReal(1109,44611
+#define PetscObjectComposedDataSetRealstar(1136,45868
+#define PetscObjectComposedDataGetRealstar(1167,47257
+  #define PetscObjectComposedDataSetScalar(1193,48497
+  #define PetscObjectComposedDataSetScalar(1195,48754
+  #define PetscObjectComposedDataGetScalar(1224,49972
+  #define PetscObjectComposedDataGetScalar(1226,50208
+  #define PetscObjectComposedDataSetScalarstar(1255,51451
+  #define PetscObjectComposedDataSetScalarstar(1258,51734
+  #define PetscObjectComposedDataGetScalarstar(1290,53068
+  #define PetscObjectComposedDataGetScalarstar(1292,53320
+PETSC_EXTERN PetscMPIInt Petsc_Counter_keyval;1295,53452
+PETSC_EXTERN PetscMPIInt Petsc_InnerComm_keyval;1296,53499
+PETSC_EXTERN PetscMPIInt Petsc_OuterComm_keyval;1297,53548
+PETSC_EXTERN PetscMPIInt Petsc_Seq_keyval;1298,53597
+PETSC_EXTERN PetscMPIInt Petsc_ShmComm_keyval;1299,53640
+PETSC_EXTERN PetscMPIInt Petsc_CreationIdx_keyval;1300,53687
+PETSC_EXTERN PetscMPIInt Petsc_Garbage_HMap_keyval;1301,53738
+struct PetscCommStash 1303,53791
+  struct PetscCommStash *next;next1304,53815
+  MPI_Comm               comm;1305,53846
+  PetscMPIInt            tag;1313,54038
+  PetscInt               refcount;1314,54100
+  PetscInt               namecount;1315,54210
+  PetscMPIInt           *iflags;iflags1316,54308
+  struct PetscCommStash *comms;comms1317,54451
+} PetscCommCounter;1318,54557
+  STATE_BEGIN,1321,54593
+  STATE_PENDING,1322,54608
+  STATE_END1323,54625
+} SRState;1324,54637
+  PETSC_SR_REDUCE_SUM 1327,54664
+  PETSC_SR_REDUCE_MAX 1328,54691
+  PETSC_SR_REDUCE_MIN 1329,54718
+} PetscSRReductionType;1330,54744
+  MPI_Comm     comm;1333,54786
+  MPI_Request  request;1334,54807
+  PetscBool    mix;1335,54831
+  PetscBool    async;1336,54851
+  PetscScalar *lvalues;lvalues1337,54873
+  PetscScalar *gvalues;gvalues1338,54965
+  void       **invecs;invecs1339,55035
+  PetscInt    *reducetype;reducetype1340,55120
+    PetscScalar v;1342,55207
+    PetscInt    i;1343,55226
+  }       *lvalues_mix,lvalues_mix1344,55245
+  }       *lvalues_mix, *gvalues_mix;gvalues_mix1344,55245
+  SRState  state;1345,55324
+  PetscInt maxops;1346,55407
+  PetscInt numopsbegin;1347,55494
+  PetscInt numopsend;1348,55582
+} PetscSplitReduction;1349,55675
+typedef ck_spinlock_t        PetscSpinlock;1366,56258
+static inline PetscErrorCode PetscSpinlockCreate(1367,56302
+static inline PetscErrorCode PetscSpinlockLock(1372,56428
+static inline PetscErrorCode PetscSpinlockUnlock(1377,56552
+static inline PetscErrorCode PetscSpinlockDestroy(1382,56680
+typedef omp_lock_t           PetscSpinlock;1389,56835
+static inline PetscErrorCode PetscSpinlockCreate(1390,56879
+static inline PetscErrorCode PetscSpinlockLock(1395,56996
+static inline PetscErrorCode PetscSpinlockUnlock(1400,57110
+static inline PetscErrorCode PetscSpinlockDestroy(1405,57228
+typedef int PetscSpinlock;1415,57467
+    #define PetscSpinlockCreate(1416,57494
+    #define PetscSpinlockLock(1417,57532
+    #define PetscSpinlockUnlock(1418,57570
+    #define PetscSpinlockDestroy(1419,57608
+PETSC_INTERN PetscSpinlock PetscViewerASCIISpinLockOpen;1423,57695
+PETSC_INTERN PetscSpinlock PetscViewerASCIISpinLockStdout;1424,57752
+PETSC_INTERN PetscSpinlock PetscViewerASCIISpinLockStderr;1425,57811
+PETSC_INTERN PetscSpinlock PetscCommSpinLock;1426,57870
+PETSC_EXTERN PetscLogEvent PETSC_Barrier;1430,57933
+PETSC_EXTERN PetscLogEvent PETSC_BuildTwoSided;1431,57975
+PETSC_EXTERN PetscLogEvent PETSC_BuildTwoSidedF;1432,58023
+PETSC_EXTERN PetscBool     use_gpu_aware_mpi;1433,58072
+PETSC_EXTERN PetscBool     PetscPrintFunctionList;1434,58118
+PETSC_EXTERN int64_t Petsc_adios_group;1437,58200
+PETSC_INTERN PetscBool      PetscBeganKokkos;1441,58279
+PETSC_EXTERN PetscBool      PetscKokkosInitialized;1442,58325
+PETSC_EXTERN PetscInt PetscNumOMPThreads;1448,58554
+
+include/petsc/private/dmpleximpl.h,9985
+dmpleximpl.h:^?dmpleximpl.h^A,1
+#define _PLEXIMPL_H2,20
+PETSC_EXTERN PetscLogEvent DMPLEX_Interpolate;14,300
+PETSC_EXTERN PetscLogEvent DMPLEX_Partition;15,347
+PETSC_EXTERN PetscLogEvent DMPLEX_PartSelf;16,392
+PETSC_EXTERN PetscLogEvent DMPLEX_PartLabelInvert;17,436
+PETSC_EXTERN PetscLogEvent DMPLEX_PartLabelCreateSF;18,487
+PETSC_EXTERN PetscLogEvent DMPLEX_PartStratSF;19,540
+PETSC_EXTERN PetscLogEvent DMPLEX_CreatePointSF;20,587
+PETSC_EXTERN PetscLogEvent DMPLEX_Distribute;21,636
+PETSC_EXTERN PetscLogEvent DMPLEX_DistributeCones;22,682
+PETSC_EXTERN PetscLogEvent DMPLEX_DistributeLabels;23,733
+PETSC_EXTERN PetscLogEvent DMPLEX_DistributeSF;24,785
+PETSC_EXTERN PetscLogEvent DMPLEX_DistributeOverlap;25,833
+PETSC_EXTERN PetscLogEvent DMPLEX_DistributeField;26,886
+PETSC_EXTERN PetscLogEvent DMPLEX_DistributeData;27,937
+PETSC_EXTERN PetscLogEvent DMPLEX_Migrate;28,987
+PETSC_EXTERN PetscLogEvent DMPLEX_InterpolateSF;29,1030
+PETSC_EXTERN PetscLogEvent DMPLEX_GlobalToNaturalBegin;30,1079
+PETSC_EXTERN PetscLogEvent DMPLEX_GlobalToNaturalEnd;31,1135
+PETSC_EXTERN PetscLogEvent DMPLEX_NaturalToGlobalBegin;32,1189
+PETSC_EXTERN PetscLogEvent DMPLEX_NaturalToGlobalEnd;33,1245
+PETSC_EXTERN PetscLogEvent DMPLEX_Stratify;34,1299
+PETSC_EXTERN PetscLogEvent DMPLEX_Symmetrize;35,1343
+PETSC_EXTERN PetscLogEvent DMPLEX_Preallocate;36,1389
+PETSC_EXTERN PetscLogEvent DMPLEX_ResidualFEM;37,1436
+PETSC_EXTERN PetscLogEvent DMPLEX_JacobianFEM;38,1483
+PETSC_EXTERN PetscLogEvent DMPLEX_InterpolatorFEM;39,1530
+PETSC_EXTERN PetscLogEvent DMPLEX_InjectorFEM;40,1581
+PETSC_EXTERN PetscLogEvent DMPLEX_IntegralFEM;41,1628
+PETSC_EXTERN PetscLogEvent DMPLEX_CreateGmsh;42,1675
+PETSC_EXTERN PetscLogEvent DMPLEX_RebalanceSharedPoints;43,1721
+PETSC_EXTERN PetscLogEvent DMPLEX_CreateFromFile;44,1778
+PETSC_EXTERN PetscLogEvent DMPLEX_BuildFromCellList;45,1828
+PETSC_EXTERN PetscLogEvent DMPLEX_BuildCoordinatesFromCellList;46,1881
+PETSC_EXTERN PetscLogEvent DMPLEX_LocatePoints;47,1945
+PETSC_EXTERN PetscLogEvent DMPLEX_TopologyView;48,1993
+PETSC_EXTERN PetscLogEvent DMPLEX_LabelsView;49,2041
+PETSC_EXTERN PetscLogEvent DMPLEX_CoordinatesView;50,2087
+PETSC_EXTERN PetscLogEvent DMPLEX_SectionView;51,2138
+PETSC_EXTERN PetscLogEvent DMPLEX_GlobalVectorView;52,2185
+PETSC_EXTERN PetscLogEvent DMPLEX_LocalVectorView;53,2237
+PETSC_EXTERN PetscLogEvent DMPLEX_TopologyLoad;54,2288
+PETSC_EXTERN PetscLogEvent DMPLEX_LabelsLoad;55,2336
+PETSC_EXTERN PetscLogEvent DMPLEX_CoordinatesLoad;56,2382
+PETSC_EXTERN PetscLogEvent DMPLEX_SectionLoad;57,2433
+PETSC_EXTERN PetscLogEvent DMPLEX_GlobalVectorLoad;58,2480
+PETSC_EXTERN PetscLogEvent DMPLEX_LocalVectorLoad;59,2532
+PETSC_EXTERN PetscLogEvent DMPLEX_MetricEnforceSPD;60,2583
+PETSC_EXTERN PetscLogEvent DMPLEX_MetricNormalize;61,2635
+PETSC_EXTERN PetscLogEvent DMPLEX_MetricAverage;62,2686
+PETSC_EXTERN PetscLogEvent DMPLEX_MetricIntersection;63,2735
+PETSC_EXTERN PetscLogEvent DMPLEX_RebalBuildGraph;65,2790
+PETSC_EXTERN PetscLogEvent DMPLEX_RebalRewriteSF;66,2841
+PETSC_EXTERN PetscLogEvent DMPLEX_RebalGatherGraph;67,2891
+PETSC_EXTERN PetscLogEvent DMPLEX_RebalPartition;68,2943
+PETSC_EXTERN PetscLogEvent DMPLEX_RebalScatterPart;69,2993
+  int          index;73,3133
+  unsigned int zoneID;74,3177
+  unsigned int first;75,3200
+  unsigned int last;76,3222
+  int          type;77,3243
+  int          nd;78,3264
+  void        *data;data79,3315
+} FluentSection;80,3336
+struct _PetscGridHash 82,3354
+  PetscInt     dim;83,3378
+  PetscReal    lower[lower84,3398
+  PetscReal    upper[upper85,3454
+  PetscReal    extent[extent86,3511
+  PetscReal    h[h87,3558
+  PetscInt     n[n88,3608
+  PetscSection cellSection;89,3665
+  IS           cells;90,3731
+  DMLabel      cellsSparse;91,3794
+  PetscBool isotropic;95,3877
+  PetscBool uniform;96,3945
+  PetscBool restrictAnisotropyFirst;97,4011
+  PetscBool noInsert;98,4101
+  PetscBool noSwap;99,4190
+  PetscBool noMove;100,4270
+  PetscBool noSurf;101,4349
+  PetscReal h_min,102,4435
+  PetscReal h_min, h_max;102,4435
+  PetscReal a_max;103,4522
+  PetscReal targetComplexity;104,4594
+  PetscReal p;105,4662
+  PetscReal gradationFactor;106,4742
+  PetscReal hausdorffNumber;107,4835
+  PetscInt  numIter;108,4977
+  PetscInt  verbosity;109,5064
+} DMPlexMetricCtx;110,5170
+  PetscInt refct;125,5638
+  PetscSection coneSection;127,5657
+  PetscInt    *cones;cones128,5730
+  PetscInt    *coneOrientations;coneOrientations129,5789
+  PetscSection supportSection;130,5958
+  PetscInt    *supports;supports131,6031
+  PetscInt    *facesTmp;facesTmp132,6090
+  PetscBool refinementUniform;135,6184
+  char     *transformType;transformType136,6291
+  PetscReal refinementLimit;137,6411
+  PetscErrorCode (*refinementFunc)refinementFunc138,6517
+  DMPlexInterpolatedFlag interpolated;141,6666
+  DMPlexInterpolatedFlag interpolatedCollective;142,6705
+  DMPlexReorderDefaultFlag reorderDefault;144,6755
+  PetscBool distDefault;147,6852
+  PetscInt  overlap;148,6917
+  PetscInt  numOvLabels;149,7040
+  DMLabel   ovLabels[ovLabels150,7131
+  PetscInt  ovValues[ovValues151,7208
+  PetscInt  numOvExLabels;152,7291
+  DMLabel   ovExLabels[ovExLabels153,7367
+  PetscInt  ovExValues[ovExValues154,7450
+  char     *distributionName;distributionName155,7539
+  PetscBool regularRefinement;158,7647
+  char            *tetgenOpts;tetgenOpts161,7769
+  char            *triangleOpts;triangleOpts162,7800
+  PetscPartitioner partitioner;163,7833
+  PetscBool        partitionBalance;164,7865
+  PetscBool        remeshBd;165,7958
+  DMLabel          subpointMap;168,8004
+  IS               subpointIS;169,8142
+  PetscObjectState subpointState;170,8264
+  PetscObjectState depthState;173,8396
+  PetscObjectState celltypeState;174,8504
+  IS               globalVertexNumbers;175,8615
+  IS               globalCellNumbers;176,8655
+  PetscSection anchorSection;179,8714
+  IS           anchorIS;180,8800
+  PetscErrorCode (*createanchors)createanchors181,8882
+  PetscErrorCode (*computeanchormatrix)computeanchormatrix182,8990
+  PetscSection parentSection;185,9160
+  PetscInt    *parents;parents186,9225
+  PetscInt    *childIDs;childIDs187,9277
+  PetscSection childSection;188,9331
+  PetscInt    *children;children189,9393
+  DM           referenceTree;190,9447
+  PetscErrorCode (*getchildsymmetry)getchildsymmetry191,9524
+  PetscSection subdomainSection;194,9663
+  PetscBool useAnchors;197,9715
+  PetscErrorCode (*useradjacency)useradjacency198,9867
+  void *useradjacencyctx;useradjacencyctx199,9982
+  PetscInt maxProjectionHeight;202,10115
+  PetscInt activePoint;203,10209
+  PetscInt  vtkCellHeight;206,10297
+  PetscReal scale[scale207,10384
+  PetscBool     ignoreModel;210,10471
+  PetscReal     minradius;211,10571
+  PetscBool     useHashLocation;212,10671
+  PetscGridHash lbox;213,10763
+  void (*coordFunc)coordFunc214,10843
+  PetscMPIInt *neighbors;neighbors218,11262
+  DMPlexMetricCtx *metricCtx;metricCtx221,11304
+  PetscBool printSetValues;224,11353
+  PetscInt  printFEM;225,11381
+  PetscInt  printL2;226,11403
+  PetscInt  printLocate;227,11424
+  PetscReal printTol;228,11449
+} DM_Plex;229,11471
+struct _n_DMPlexStorageVersion 272,14447
+  int major,273,14480
+  int major, minor,273,14480
+  int major, minor, subminor;273,14480
+typedef struct _n_DMPlexStorageVersion *DMPlexStorageVersion;DMPlexStorageVersion275,14513
+static inline PetscInt DihedralInvert(352,22525
+static inline PetscInt DihedralCompose(357,22625
+static inline PetscInt DihedralSwap(363,22864
+static inline PetscInt DihedralInvert(375,23300
+static inline PetscInt DihedralCompose(395,23911
+static inline PetscInt DihedralSwap(415,24538
+static inline void DMPlex_Mult2D_Internal(444,26171
+static inline void DMPlex_Mult3D_Internal(451,26483
+static inline void DMPlex_MultTranspose2D_Internal(459,26904
+static inline void DMPlex_MultTranspose3D_Internal(466,27225
+static inline void DMPlex_Mult2DReal_Internal(474,27655
+static inline void DMPlex_Mult3DReal_Internal(481,27969
+static inline void DMPlex_MultAdd2DReal_Internal(489,28392
+static inline void DMPlex_MultAdd3DReal_Internal(496,28687
+static inline void DMPlex_MultTransposeReal_Internal(513,29234
+static inline void DMPlex_MultTranspose2DReal_Internal(525,29656
+static inline void DMPlex_MultTranspose3DReal_Internal(532,29979
+static inline void DMPlex_MatMult2D_Internal(541,30412
+#define PLEX_DIM__ 543,30548
+#undef PLEX_DIM__551,30839
+static inline void DMPlex_MatMult3D_Internal(553,30859
+#define PLEX_DIM__ 555,30995
+#undef PLEX_DIM__563,31286
+static inline void DMPlex_MatMultTranspose2D_Internal(565,31306
+#define PLEX_DIM__ 567,31451
+#undef PLEX_DIM__575,31751
+static inline void DMPlex_MatMultTranspose3D_Internal(577,31771
+#define PLEX_DIM__ 579,31916
+#undef PLEX_DIM__587,32216
+static inline void DMPlex_MatMultLeft2D_Internal(590,32237
+static inline void DMPlex_MatMultLeft3D_Internal(595,32511
+static inline void DMPlex_MatMultTransposeLeft2D_Internal(600,32785
+static inline void DMPlex_MatMultTransposeLeft3D_Internal(605,33059
+static inline void DMPlex_PTAP2DReal_Internal(611,33334
+static inline void DMPlex_PTAP3DReal_Internal(626,33796
+static inline void DMPlex_PTAPReal_Internal(642,34298
+static inline void DMPlex_Transpose2D_Internal(656,34710
+static inline void DMPlex_Transpose3D_Internal(663,34841
+static inline void DMPlex_Invert2D_Internal(677,35061
+static inline void DMPlex_Invert3D_Internal(688,35337
+static inline void DMPlex_Det2D_Internal(704,36314
+static inline void DMPlex_Det3D_Internal(710,36463
+static inline void DMPlex_Det2D_Scalar_Internal(716,36818
+static inline void DMPlex_Det3D_Scalar_Internal(722,37036
+static inline void DMPlex_WaxpyD_Internal(728,37625
+static inline PetscReal DMPlex_DotD_Internal(734,37819
+static inline PetscReal DMPlex_DotRealD_Internal(742,38040
+static inline PetscReal DMPlex_NormD_Internal(750,38248
+static inline PetscReal DMPlex_DistD_Internal(758,38448
+
+include/petsc/private/dmnetworkimpl.h,4039
+dmnetworkimpl.h:^?dmnetworkimpl.h^A,1
+#define _NETWORKIMPL_H2,23
+PETSC_EXTERN PetscLogEvent DMNetwork_LayoutSetUp;9,283
+PETSC_EXTERN PetscLogEvent DMNetwork_SetUpNetwork;10,333
+PETSC_EXTERN PetscLogEvent DMNetwork_Distribute;11,384
+#define DMNETWORK_MAX_COMP_REGISTERED_DEFAULT 13,434
+#define DMNETWORK_MAX_COMP_AT_POINT_DEFAULT 14,483
+typedef struct _p_DMNetworkComponentHeader *DMNetworkComponentHeader;DMNetworkComponentHeader16,532
+struct _p_DMNetworkComponentHeader 17,602
+  PetscInt index;18,639
+  PetscInt subnetid;19,710
+  PetscInt ndata;20,755
+  PetscInt hsize;21,803
+  PetscInt maxcomps;22,849
+  PetscInt *size;size29,1288
+  PetscInt *key;key30,1348
+  PetscInt *offset;offset31,1395
+  PetscInt *nvar;nvar32,1458
+  PetscInt *offsetvarrel;offsetvarrel33,1528
+typedef struct _p_DMNetworkComponentValue *DMNetworkComponentValue;DMNetworkComponentValue36,1689
+struct _p_DMNetworkComponentValue 37,1757
+  void **data;data38,1793
+  char     name[name42,1899
+  PetscInt size;43,1939
+} DMNetworkComponent PETSC_ATTRIBUTEALIGNED(PetscMax(sizeof(double), sizeof(PetscScalar)44,1956
+  PetscSection           DofSection;48,2118
+  PetscSection           GlobalDofSection;49,2155
+  ISLocalToGlobalMapping mapping;50,2198
+  PetscSF                sf;51,2232
+} DMNetworkVertexInfo;52,2261
+  PetscSection           DofSection;55,2302
+  PetscSection           GlobalDofSection;56,2339
+  ISLocalToGlobalMapping mapping;57,2382
+  PetscSF                sf;58,2416
+} DMNetworkEdgeInfo;59,2445
+  PetscInt  gidx;72,3000
+  PetscInt  n;73,3070
+  PetscInt *sv;sv74,3155
+} SVtx;75,3240
+  SVNONE 77,3263
+  SVFROM 78,3278
+  SVTO 79,3292
+} SVtxType;80,3305
+  PetscInt  Nvtx,83,3335
+  PetscInt  Nvtx, nvtx;83,3335
+  PetscInt  Nedge,84,3399
+  PetscInt  Nedge, nedge;84,3399
+  PetscInt  eStart,85,3460
+  PetscInt  eStart, eEnd;85,3460
+  PetscInt  vStart,86,3529
+  PetscInt  vStart, vEnd;86,3529
+  PetscInt *edgelist;edgelist87,3600
+  PetscInt *vertices;vertices88,3773
+  PetscInt *edges;edges89,3896
+  char      name[name90,4014
+} DMSubnetwork;91,4055
+typedef struct _p_DMNetworkCloneShared *DMNetworkCloneShared;DMNetworkCloneShared100,4475
+struct _p_DMNetworkCloneShared 101,4537
+  PetscInt  refct;102,4570
+  PetscInt  NEdges,103,4646
+  PetscInt  NEdges, nEdges;103,4646
+  PetscInt  NVertices,104,4715
+  PetscInt  NVertices, nVertices;104,4715
+  PetscInt  pStart,105,4787
+  PetscInt  pStart, pEnd;105,4787
+  PetscInt  vStart,106,4872
+  PetscInt  vStart, vEnd;106,4872
+  PetscInt  eStart,107,4947
+  PetscInt  eStart, eEnd;107,4947
+  PetscBool distributecalled;108,5019
+  PetscInt *vltog;vltog109,5099
+  PetscInt      nsubnet,111,5210
+  PetscInt      nsubnet, Nsubnet;111,5210
+  DMSubnetwork *subnet;subnet112,5295
+  PetscInt     *subnetvtx,subnetvtx113,5353
+  PetscInt     *subnetvtx, *subnetedge;subnetedge113,5353
+  SVtx         *svtx;svtx114,5456
+  PetscInt      nsvtx,115,5542
+  PetscInt      nsvtx, Nsvtx;115,5542
+  PetscInt     *svertices;svertices116,5628
+  PetscInt     *sedgelist;sedgelist117,5732
+  PetscTable    svtable;118,5807
+  DMNetworkCloneShared cloneshared;122,5986
+  DM                   plex;123,6022
+  PetscSection         DataSection;125,6241
+  PetscSection         DofSection;126,6332
+  PetscSection         GlobalDofSection;127,6418
+  DMNetworkVertexInfo vertex;129,6485
+  DMNetworkEdgeInfo   edge;130,6515
+  PetscInt                           ncomponent;132,6544
+  DMNetworkComponent                *component;component133,6646
+  DMNetworkComponentHeader           header;134,6746
+  DMNetworkComponentValue            cvalue;135,6791
+  DMNetworkComponentGenericDataType *componentdataarray;componentdataarray136,6836
+  PetscBool                          componentsetup;137,6924
+  PetscInt                           max_comps_registered;138,7064
+  PetscBool userEdgeJacobian,140,7179
+  PetscBool userEdgeJacobian, userVertexJacobian;140,7179
+  Mat      *Je;Je141,7278
+  Mat      *Jv;Jv142,7410
+  PetscInt *Jvptr;Jvptr143,7553
+} DM_Network;148,7991
+
+include/petsc/private/dmimpl.h,11889
+dmimpl.h:^?dmimpl.h^A,1
+#define _DMIMPL_H3,19
+PETSC_EXTERN PetscBool      DMRegisterAllCalled;13,271
+typedef PetscErrorCode (*NullSpaceFunc)NullSpaceFunc15,369
+typedef struct _PetscHashAuxKey 17,479
+  DMLabel  label;18,513
+  PetscInt value;19,531
+  PetscInt part;20,549
+} PetscHashAuxKey;21,566
+#define PetscHashAuxKeyHash(23,586
+#define PetscHashAuxKeyEqual(25,739
+PETSC_HASH_MAP(27,872
+struct _n_DMGeneratorFunctionList 29,968
+  PetscErrorCode (*generate)generate30,1004
+  PetscErrorCode (*refine)refine31,1055
+  PetscErrorCode (*adapt)adapt32,1106
+  char                   *name;name33,1166
+  PetscInt                dim;34,1198
+  DMGeneratorFunctionList next;35,1229
+typedef struct _DMOps *DMOps;DMOps38,1265
+struct _DMOps 39,1295
+  PetscErrorCode (*view)view40,1311
+  PetscErrorCode (*load)load41,1354
+  PetscErrorCode (*clone)clone42,1397
+  PetscErrorCode (*setfromoptions)setfromoptions43,1434
+  PetscErrorCode (*setup)setup44,1494
+  PetscErrorCode (*createlocalsection)createlocalsection45,1525
+  PetscErrorCode (*createdefaultconstraints)createdefaultconstraints46,1569
+  PetscErrorCode (*createglobalvector)createglobalvector47,1619
+  PetscErrorCode (*createlocalvector)createlocalvector48,1670
+  PetscErrorCode (*getlocaltoglobalmapping)getlocaltoglobalmapping49,1720
+  PetscErrorCode (*createfieldis)createfieldis50,1769
+  PetscErrorCode (*createcoordinatedm)createcoordinatedm51,1837
+  PetscErrorCode (*createcoordinatefield)createcoordinatefield52,1887
+  PetscErrorCode (*getcoloring)getcoloring54,1946
+  PetscErrorCode (*creatematrix)creatematrix55,2013
+  PetscErrorCode (*createinterpolation)createinterpolation56,2058
+  PetscErrorCode (*createrestriction)createrestriction57,2121
+  PetscErrorCode (*createmassmatrix)createmassmatrix58,2175
+  PetscErrorCode (*createmassmatrixlumped)createmassmatrixlumped59,2228
+  PetscErrorCode (*hascreateinjection)hascreateinjection60,2283
+  PetscErrorCode (*createinjection)createinjection61,2340
+  PetscErrorCode (*refine)refine63,2393
+  PetscErrorCode (*coarsen)coarsen64,2441
+  PetscErrorCode (*refinehierarchy)refinehierarchy65,2490
+  PetscErrorCode (*coarsenhierarchy)coarsenhierarchy66,2547
+  PetscErrorCode (*extrude)extrude67,2605
+  PetscErrorCode (*globaltolocalbegin)globaltolocalbegin69,2655
+  PetscErrorCode (*globaltolocalend)globaltolocalend70,2721
+  PetscErrorCode (*localtoglobalbegin)localtoglobalbegin71,2785
+  PetscErrorCode (*localtoglobalend)localtoglobalend72,2851
+  PetscErrorCode (*localtolocalbegin)localtolocalbegin73,2915
+  PetscErrorCode (*localtolocalend)localtolocalend74,2980
+  PetscErrorCode (*destroy)destroy76,3044
+  PetscErrorCode (*computevariablebounds)computevariablebounds78,3078
+  PetscErrorCode (*createsubdm)createsubdm80,3136
+  PetscErrorCode (*createsuperdm)createsuperdm81,3213
+  PetscErrorCode (*createfielddecomposition)createfielddecomposition82,3277
+  PetscErrorCode (*createdomaindecomposition)createdomaindecomposition83,3363
+  PetscErrorCode (*createddscatters)createddscatters84,3457
+  PetscErrorCode (*getdimpoints)getdimpoints86,3561
+  PetscErrorCode (*locatepoints)locatepoints87,3633
+  PetscErrorCode (*getneighbors)getneighbors88,3706
+  PetscErrorCode (*getboundingbox)getboundingbox89,3778
+  PetscErrorCode (*getlocalboundingbox)getlocalboundingbox90,3844
+  PetscErrorCode (*locatepointssubdomain)locatepointssubdomain91,3915
+  PetscErrorCode (*projectfunctionlocal)projectfunctionlocal93,3984
+  PetscErrorCode (*projectfunctionlabellocal)projectfunctionlabellocal94,4161
+  PetscErrorCode (*projectfieldlocal)projectfieldlocal95,4408
+  PetscErrorCode (*projectfieldlabellocal)projectfieldlabellocal96,4799
+  PetscErrorCode (*projectbdfieldlabellocal)projectbdfieldlabellocal97,5260
+  PetscErrorCode (*computel2diff)computel2diff98,5742
+  PetscErrorCode (*computel2gradientdiff)computel2gradientdiff99,5913
+  PetscErrorCode (*computel2fielddiff)computel2fielddiff100,6130
+  PetscErrorCode (*getcompatibility)getcompatibility102,6307
+typedef struct _DMCoarsenHookLink *DMCoarsenHookLink;DMCoarsenHookLink111,6857
+struct _DMCoarsenHookLink 112,6911
+  PetscErrorCode (*coarsenhook)coarsenhook113,6939
+  PetscErrorCode (*restricthook)restricthook114,7046
+  void             *ctx;ctx115,7176
+  DMCoarsenHookLink next;116,7201
+typedef struct _DMRefineHookLink *DMRefineHookLink;DMRefineHookLink119,7231
+struct _DMRefineHookLink 120,7283
+  PetscErrorCode (*refinehook)refinehook121,7310
+  PetscErrorCode (*interphook)interphook122,7405
+  void            *ctx;ctx123,7523
+  DMRefineHookLink next;124,7547
+typedef struct _DMSubDomainHookLink *DMSubDomainHookLink;DMSubDomainHookLink127,7576
+struct _DMSubDomainHookLink 128,7634
+  PetscErrorCode (*ddhook)ddhook129,7664
+  PetscErrorCode (*restricthook)restricthook130,7708
+  void               *ctx;ctx131,7782
+  DMSubDomainHookLink next;132,7809
+typedef struct _DMGlobalToLocalHookLink *DMGlobalToLocalHookLink;DMGlobalToLocalHookLink135,7841
+struct _DMGlobalToLocalHookLink 136,7907
+  PetscErrorCode (*beginhook)beginhook137,7941
+  PetscErrorCode (*endhook)endhook138,8006
+  void                   *ctx;ctx139,8069
+  DMGlobalToLocalHookLink next;140,8100
+typedef struct _DMLocalToGlobalHookLink *DMLocalToGlobalHookLink;DMLocalToGlobalHookLink143,8136
+struct _DMLocalToGlobalHookLink 144,8202
+  PetscErrorCode (*beginhook)beginhook145,8236
+  PetscErrorCode (*endhook)endhook146,8301
+  void                   *ctx;ctx147,8364
+  DMLocalToGlobalHookLink next;148,8395
+  DMVEC_STATUS_IN,152,8446
+  DMVEC_STATUS_OUT153,8465
+} DMVecStatus;154,8484
+typedef struct _DMNamedVecLink *DMNamedVecLink;DMNamedVecLink155,8499
+struct _DMNamedVecLink 156,8547
+  Vec            X;157,8572
+  char          *name;name158,8592
+  DMVecStatus    status;159,8615
+  DMNamedVecLink next;160,8640
+typedef struct _DMWorkLink *DMWorkLink;DMWorkLink163,8667
+struct _DMWorkLink 164,8707
+  size_t     bytes;165,8728
+  void      *mem;mem166,8748
+  DMWorkLink next;167,8766
+#define DM_MAX_WORK_VECTORS 170,8789
+struct _n_DMLabelLink 172,8905
+  DMLabel                label;173,8929
+  PetscBool              output;174,8961
+  struct _n_DMLabelLink *next;next175,8994
+typedef struct _n_DMLabelLink *DMLabelLink;DMLabelLink177,9028
+typedef struct _n_Boundary *DMBoundary;DMBoundary179,9073
+struct _n_Boundary 181,9114
+  DSBoundary dsboundary;182,9135
+  DMLabel    label;183,9160
+  DMBoundary next;184,9180
+typedef struct _n_Field 187,9203
+  PetscObject disc;188,9229
+  DMLabel     label;189,9325
+  PetscBool   adjacency[adjacency190,9412
+  PetscBool   avoidTensor;191,9571
+} RegionField;192,9652
+typedef struct _n_Space 194,9668
+  PetscDS ds;195,9694
+  DMLabel label;196,9753
+  IS      fields;197,9839
+} DMSpace;198,9925
+struct _p_UniversalLabel 200,9937
+  DMLabel   label;201,9964
+  PetscInt  Nl;202,10011
+  char    **names;names203,10063
+  PetscInt *indices;indices204,10106
+  PetscInt  Nv;205,10170
+  PetscInt *bits;bits206,10238
+  PetscInt *masks;masks207,10303
+  PetscInt *offsets;offsets208,10380
+  PetscInt *values;values209,10455
+#define MAXDMMONITORS 214,10593
+  PetscInt dim;217,10635
+  DM       dm;218,10696
+  Vec      x;219,10743
+  Vec      xl;220,10802
+  DMField  field;221,10861
+} DMCoordinates;222,10918
+struct _p_DM 224,10936
+  PETSCHEADER(225,10951
+  Vec            localin[localin226,10981
+  Vec            localin[DM_MAX_WORK_VECTORS], localout[localout226,10981
+  Vec            globalin[globalin227,11059
+  Vec            globalin[DM_MAX_WORK_VECTORS], globalout[globalout227,11059
+  DMNamedVecLink namedglobal;228,11139
+  DMNamedVecLink namedlocal;229,11169
+  DMWorkLink     workin,230,11198
+  DMWorkLink     workin, workout;230,11198
+  DMLabelLink    labels;231,11232
+  DMLabel        depthLabel;232,11292
+  DMLabel        celltypeLabel;233,11362
+  void          *ctx;ctx234,11435
+  PetscErrorCode (*ctxdestroy)ctxdestroy235,11488
+  ISColoringType         coloringtype;236,11529
+  MatFDColoring          fd;237,11568
+  VecType                vectype;238,11597
+  MatType                mattype;239,11717
+  PetscInt               bind_below;240,11805
+  PetscInt               bs;241,11932
+  ISLocalToGlobalMapping ltogmap;242,11961
+  PetscBool              prealloc_skip;243,11995
+  PetscBool              prealloc_only;244,12140
+  PetscBool              structure_only;245,12273
+  PetscInt               levelup,246,12400
+  PetscInt               levelup, leveldown;246,12400
+  PetscBool              setupcalled;247,12584
+  PetscBool              setfromoptionscalled;248,12758
+  void                  *data;data249,12805
+  DM                      coarseMesh;251,12866
+  DM                      fineMesh;252,12904
+  DMCoarsenHookLink       coarsenhook;253,12940
+  DMRefineHookLink        refinehook;254,13042
+  DMSubDomainHookLink     subdomainhook;255,13080
+  DMGlobalToLocalHookLink gtolhook;256,13121
+  DMLocalToGlobalHookLink ltoghook;257,13157
+  PetscInt dim;259,13210
+  PetscHMapAux auxData;261,13281
+  PetscSF   sfMigration;263,13393
+  PetscSF   sf;264,13478
+  PetscSF   sectionSF;265,13539
+  PetscSF   sfNatural;266,13612
+  PetscBool useNatural;267,13680
+  PetscBool    adjacency[adjacency269,13775
+  PetscSection localSection;270,13871
+  PetscSection globalSection;271,13932
+  PetscLayout  map;272,13994
+    PetscSection section;275,14045
+    Mat          mat;276,14071
+    Vec          bias;277,14093
+  } defaultConstraint;278,14116
+  DM    transformDM;280,14168
+  Vec   transform;281,14228
+  void *transformCtx;transformCtx282,14286
+  PetscErrorCode (*transformSetUp)transformSetUp283,14343
+  PetscErrorCode (*transformDestroy)transformDestroy284,14391
+  PetscErrorCode (*transformGetMatrix)transformGetMatrix285,14441
+  DMCoordinates coordinates[coordinates287,14565
+  PetscReal *Lstart,Lstart289,14700
+  PetscReal *Lstart, *L,L289,14700
+  PetscReal *Lstart, *L, *maxCell;maxCell289,14700
+  PetscBool  sparseLocalize;290,14808
+  NullSpaceFunc nullspaceConstructors[nullspaceConstructors292,14993
+  NullSpaceFunc nearnullspaceConstructors[nearnullspaceConstructors293,15036
+  PetscInt     Nf;295,15125
+  RegionField *fields;fields296,15201
+  DMBoundary   boundary;297,15288
+  PetscInt     Nds;298,15347
+  DMSpace     *probs;probs299,15433
+  DM        dmBC;301,15516
+  PetscInt  outputSequenceNum;302,15602
+  PetscReal outputSequenceVal;303,15678
+  PetscErrorCode (*monitor[monitor304,15753
+  PetscErrorCode (*monitordestroy[monitordestroy305,15809
+  void    *monitorcontext[monitorcontext306,15869
+  PetscInt numbermonitors;307,15911
+  PetscObject dmksp,309,15939
+  PetscObject dmksp, dmsnes,309,15939
+  PetscObject dmksp, dmsnes, dmts;309,15939
+  Ceed                ceed;311,16000
+  CeedElemRestriction ceedERestrict;312,16059
+PETSC_EXTERN PetscLogEvent DM_Convert;316,16172
+PETSC_EXTERN PetscLogEvent DM_GlobalToLocal;317,16211
+PETSC_EXTERN PetscLogEvent DM_LocalToGlobal;318,16256
+PETSC_EXTERN PetscLogEvent DM_LocatePoints;319,16301
+PETSC_EXTERN PetscLogEvent DM_Coarsen;320,16345
+PETSC_EXTERN PetscLogEvent DM_Refine;321,16384
+PETSC_EXTERN PetscLogEvent DM_CreateInterpolation;322,16422
+PETSC_EXTERN PetscLogEvent DM_CreateRestriction;323,16473
+PETSC_EXTERN PetscLogEvent DM_CreateInjection;324,16522
+PETSC_EXTERN PetscLogEvent DM_CreateMatrix;325,16569
+PETSC_EXTERN PetscLogEvent DM_CreateMassMatrix;326,16613
+PETSC_EXTERN PetscLogEvent DM_Load;327,16661
+PETSC_EXTERN PetscLogEvent DM_AdaptInterpolator;328,16697
+static inline PetscErrorCode DMGetLocalOffset_Private(403,18928
+static inline PetscErrorCode DMGetLocalFieldOffset_Private(426,19715
+static inline PetscErrorCode DMGetGlobalOffset_Private(448,20557
+static inline PetscErrorCode DMGetGlobalFieldOffset_Private(474,21789
+
 include/petsc/private/vecimpl.h,10034
 vecimpl.h:^?vecimpl.h^A,1
 #define __VECIMPL_H9,149
@@ -69778,253 +70604,6 @@
   #define PetscSFMalloc(212,14277
   #define PetscSFFree(213,14342
 
-include/petsc/private/petscimpl.h,11701
-petscimpl.h:^?petscimpl.h^A,1
-#define PETSCIMPL_H6,78
-  #define PetscDisableStaticAnalyzerForExpressionUnderstandingThatThisIsDangerousAndBugprone(12,185
-  #define PetscDisableStaticAnalyzerForExpressionUnderstandingThatThisIsDangerousAndBugprone(14,290
-  #define PetscStackSetCheck(24,737
-  #define PetscStackView(25,783
-  #define PetscStackReset(26,829
-  #define PetscStackCopy(27,875
-  #define PetscStackPrint(28,921
-  PetscErrorCode (*view)view63,2565
-  PetscErrorCode (*destroy)destroy64,2617
-  PetscErrorCode (*compose)compose65,2661
-  PetscErrorCode (*query)query66,2730
-  PetscErrorCode (*composefunction)composefunction67,2799
-  PetscErrorCode (*queryfunction)queryfunction68,2879
-} PetscOps;69,2958
-  PETSC_FORTRAN_CALLBACK_CLASS,72,2986
-  PETSC_FORTRAN_CALLBACK_SUBTYPE,73,3018
-  PETSC_FORTRAN_CALLBACK_MAXTYPE74,3052
-} PetscFortranCallbackType;75,3085
-typedef size_t PetscFortranCallbackId;76,3113
-#define PETSC_SMALLEST_FORTRAN_CALLBACK 77,3152
-  void (*func)func82,3477
-  void *ctx;ctx83,3499
-} PetscFortranCallback;84,3512
-#define PETSC_MAX_OPTIONS_HANDLER 92,3784
-typedef struct _p_PetscObject 93,3820
-  PetscOps      bops[bops94,3852
-  PetscClassId  classid;95,3877
-  MPI_Comm      comm;96,3902
-  PetscObjectId id;97,3924
-  PetscInt      refct;98,4071
-  PetscErrorCode (*non_cyclic_references)non_cyclic_references99,4094
-  PetscInt64        cidx;100,4162
-  PetscMPIInt       tag;101,4188
-  PetscFunctionList qlist;102,4213
-  PetscObjectList   olist;103,4240
-  char             *class_name;class_name104,4267
-  char             *description;description105,4325
-  char             *mansec;mansec106,4358
-  char             *type_name;type_name107,4386
-  char             *name;name108,4484
-  char             *prefix;prefix109,4510
-  PetscInt          tablevel;110,4538
-  void             *cpp;cpp111,4568
-  PetscObjectState  state;112,4593
-  PetscInt          int_idmax,113,4620
-  PetscInt          int_idmax, intstar_idmax;113,4620
-  PetscObjectState *intcomposedstate,intcomposedstate114,4666
-  PetscObjectState *intcomposedstate, *intstarcomposedstate;intstarcomposedstate114,4666
-  PetscInt         *intcomposeddata,intcomposeddata115,4727
-  PetscInt         *intcomposeddata, **intstarcomposeddata;intstarcomposeddata115,4727
-  PetscInt          real_idmax,116,4787
-  PetscInt          real_idmax, realstar_idmax;116,4787
-  PetscObjectState *realcomposedstate,realcomposedstate117,4835
-  PetscObjectState *realcomposedstate, *realstarcomposedstate;realstarcomposedstate117,4835
-  PetscReal        *realcomposeddata,realcomposeddata118,4898
-  PetscReal        *realcomposeddata, **realstarcomposeddata;realstarcomposeddata118,4898
-  PetscInt          scalar_idmax,119,4960
-  PetscInt          scalar_idmax, scalarstar_idmax;119,4960
-  PetscObjectState *scalarcomposedstate,scalarcomposedstate120,5012
-  PetscObjectState *scalarcomposedstate, *scalarstarcomposedstate;scalarstarcomposedstate120,5012
-  PetscScalar      *scalarcomposeddata,scalarcomposeddata121,5079
-  PetscScalar      *scalarcomposeddata, **scalarstarcomposeddata;scalarstarcomposeddata121,5079
-  void (**fortran_func_pointers)fortran_func_pointers122,5145
-  PetscFortranCallbackId num_fortran_func_pointers;123,5280
-  PetscFortranCallback  *fortrancallback[fortrancallback124,5384
-  PetscFortranCallbackId num_fortrancallback[num_fortrancallback125,5458
-  void                  *python_context;python_context126,5536
-  PetscErrorCode (*python_destroy)python_destroy127,5577
-  PetscInt noptionhandler;129,5622
-  PetscErrorCode (*optionhandler[optionhandler130,5649
-  PetscErrorCode (*optiondestroy[optiondestroy131,5752
-  void *optionctx[optionctx132,5835
-  PetscBool amsmem;134,5910
-  PetscBool amspublishblock;135,6023
-  PetscOptions options;137,6144
-  PetscBool    optionsprinted;138,6216
-  PetscBool    donotPetscObjectPrintClassNamePrefixType;139,6247
-} _p_PetscObject;140,6304
-#define PETSCHEADER(142,6323
-#define PETSCFREEDHEADER 146,6405
-PETSC_EXTERN_TYPEDEF typedef PetscErrorCode (*PetscObjectDestroyFunction)PetscObjectDestroyFunction148,6434
-PETSC_EXTERN_TYPEDEF typedef PetscErrorCode (*PetscObjectViewFunction)PetscObjectViewFunction149,6585
-#define PetscHeaderCreate(280,11300
-#define PetscHeaderDestroy(341,13197
-  #define PetscCheckPointer(359,14414
-    #define PetscValidHeaderSpecific(367,14653
-    #define PetscValidHeaderSpecificType(371,14756
-    #define PetscValidHeader(375,14866
-    #define PetscValidPointer(379,14957
-    #define PetscValidCharPointer(383,15049
-    #define PetscValidIntPointer(387,15145
-    #define PetscValidInt64Pointer(391,15240
-    #define PetscValidCountPointer(395,15337
-    #define PetscValidBoolPointer(399,15434
-    #define PetscValidScalarPointer(403,15530
-    #define PetscValidRealPointer(407,15628
-    #define PetscValidFunction(411,15724
-    #define PetscValidHeaderSpecificType(419,15963
-    #define PetscValidPointer_Internal(427,16390
-    #define PetscValidHeaderSpecific(433,16790
-    #define PetscValidHeader(442,17270
-    #define PetscValidPointer(449,17789
-    #define PetscValidCharPointer(450,17888
-    #define PetscValidIntPointer(451,17985
-    #define PetscValidInt64Pointer(452,18085
-    #define PetscValidCountPointer(453,18187
-    #define PetscValidBoolPointer(454,18291
-    #define PetscValidScalarPointer(455,18393
-    #define PetscValidRealPointer(456,18499
-    #define PetscValidFunction(458,18602
-#define PetscSorted(492,19710
-    #define PetscCheckSameType(506,20037
-    #define PetscCheckTypeName(511,20161
-    #define PetscCheckTypeNames(515,20255
-    #define PetscValidType(519,20358
-    #define PetscCheckSameComm(523,20447
-    #define PetscCheckSameTypeAndComm(528,20571
-    #define PetscValidLogicalCollectiveScalar(533,20702
-    #define PetscValidLogicalCollectiveReal(538,20834
-    #define PetscValidLogicalCollectiveInt(543,20964
-    #define PetscValidLogicalCollectiveMPIInt(548,21093
-    #define PetscValidLogicalCollectiveBool(553,21225
-    #define PetscValidLogicalCollectiveEnum(558,21355
-    #define PetscCheckSorted(563,21485
-      #define PetscCheckSameType(581,22041
-      #define PetscCheckSameType(588,22528
-    #define PetscCheckTypeName(598,22704
-    #define PetscCheckTypeNames(605,23034
-    #define PetscValidType(615,23460
-    #define PetscCheckSameComm(620,23742
-    #define PetscCheckSameTypeAndComm(627,24191
-    #define PetscValidLogicalCollectiveScalar(633,24377
-    #define PetscValidLogicalCollectiveReal(650,25139
-    #define PetscValidLogicalCollectiveInt(664,25721
-    #define PetscValidLogicalCollectiveMPIInt(673,26169
-    #define PetscValidLogicalCollectiveBool(682,26636
-    #define PetscValidLogicalCollectiveEnum(691,27107
-    #define PetscCheckSorted(700,27578
-template <typename Ta,709,27868
-template <typename Ta,711,27947
-template <typename Ta,713,28016
-template <typename Ta, typename Tb,713,28016
-template <typename Ta,717,28153
-template <typename Ta,719,28232
-template <typename Ta,721,28318
-template <typename Ta,723,28407
-template <typename Ta,725,28494
-template <typename Ta,727,28580
-template <typename Ta,729,28669
-template <typename Ta,731,28756
-#define PetscTryMethod(762,30005
-#define PetscUseMethod(794,31301
-  #define PetscUseTypeMethod(816,32243
-  #define PetscTryTypeMethod(825,32664
-  #define PetscUseTypeMethod(858,33801
-  #define PetscTryTypeMethod(886,35128
-#define PetscObjectStateIncrease(929,36879
-PETSC_EXTERN PetscInt       PetscObjectComposedDataMax;940,37655
-#define PetscObjectComposedDataSetInt(968,38705
-#define PetscObjectComposedDataGetInt(998,39927
-#define PetscObjectComposedDataSetIntstar(1025,41097
-#define PetscObjectComposedDataGetIntstar(1056,42396
-#define PetscObjectComposedDataSetReal(1081,43479
-#define PetscObjectComposedDataGetReal(1109,44662
-#define PetscObjectComposedDataSetRealstar(1136,45919
-#define PetscObjectComposedDataGetRealstar(1167,47308
-  #define PetscObjectComposedDataSetScalar(1193,48548
-  #define PetscObjectComposedDataSetScalar(1195,48805
-  #define PetscObjectComposedDataGetScalar(1224,50023
-  #define PetscObjectComposedDataGetScalar(1226,50259
-  #define PetscObjectComposedDataSetScalarstar(1255,51502
-  #define PetscObjectComposedDataSetScalarstar(1258,51785
-  #define PetscObjectComposedDataGetScalarstar(1290,53119
-  #define PetscObjectComposedDataGetScalarstar(1292,53371
-PETSC_EXTERN PetscMPIInt Petsc_Counter_keyval;1295,53503
-PETSC_EXTERN PetscMPIInt Petsc_InnerComm_keyval;1296,53550
-PETSC_EXTERN PetscMPIInt Petsc_OuterComm_keyval;1297,53599
-PETSC_EXTERN PetscMPIInt Petsc_Seq_keyval;1298,53648
-PETSC_EXTERN PetscMPIInt Petsc_ShmComm_keyval;1299,53691
-PETSC_EXTERN PetscMPIInt Petsc_CreationIdx_keyval;1300,53738
-PETSC_EXTERN PetscMPIInt Petsc_Garbage_HMap_keyval;1301,53789
-struct PetscCommStash 1303,53842
-  struct PetscCommStash *next;next1304,53866
-  MPI_Comm               comm;1305,53897
-  PetscMPIInt            tag;1313,54089
-  PetscInt               refcount;1314,54151
-  PetscInt               namecount;1315,54261
-  PetscMPIInt           *iflags;iflags1316,54359
-  struct PetscCommStash *comms;comms1317,54502
-} PetscCommCounter;1318,54608
-  STATE_BEGIN,1321,54644
-  STATE_PENDING,1322,54659
-  STATE_END1323,54676
-} SRState;1324,54688
-  PETSC_SR_REDUCE_SUM 1327,54715
-  PETSC_SR_REDUCE_MAX 1328,54742
-  PETSC_SR_REDUCE_MIN 1329,54769
-} PetscSRReductionType;1330,54795
-  MPI_Comm     comm;1333,54837
-  MPI_Request  request;1334,54858
-  PetscBool    mix;1335,54882
-  PetscBool    async;1336,54902
-  PetscScalar *lvalues;lvalues1337,54924
-  PetscScalar *gvalues;gvalues1338,55016
-  void       **invecs;invecs1339,55086
-  PetscInt    *reducetype;reducetype1340,55171
-    PetscScalar v;1342,55258
-    PetscInt    i;1343,55277
-  }       *lvalues_mix,lvalues_mix1344,55296
-  }       *lvalues_mix, *gvalues_mix;gvalues_mix1344,55296
-  SRState  state;1345,55375
-  PetscInt maxops;1346,55458
-  PetscInt numopsbegin;1347,55545
-  PetscInt numopsend;1348,55633
-} PetscSplitReduction;1349,55726
-typedef ck_spinlock_t        PetscSpinlock;1366,56309
-static inline PetscErrorCode PetscSpinlockCreate(1367,56353
-static inline PetscErrorCode PetscSpinlockLock(1372,56479
-static inline PetscErrorCode PetscSpinlockUnlock(1377,56603
-static inline PetscErrorCode PetscSpinlockDestroy(1382,56731
-typedef omp_lock_t           PetscSpinlock;1389,56886
-static inline PetscErrorCode PetscSpinlockCreate(1390,56930
-static inline PetscErrorCode PetscSpinlockLock(1395,57047
-static inline PetscErrorCode PetscSpinlockUnlock(1400,57161
-static inline PetscErrorCode PetscSpinlockDestroy(1405,57279
-typedef int PetscSpinlock;1415,57518
-    #define PetscSpinlockCreate(1416,57545
-    #define PetscSpinlockLock(1417,57583
-    #define PetscSpinlockUnlock(1418,57621
-    #define PetscSpinlockDestroy(1419,57659
-PETSC_INTERN PetscSpinlock PetscViewerASCIISpinLockOpen;1423,57746
-PETSC_INTERN PetscSpinlock PetscViewerASCIISpinLockStdout;1424,57803
-PETSC_INTERN PetscSpinlock PetscViewerASCIISpinLockStderr;1425,57862
-PETSC_INTERN PetscSpinlock PetscCommSpinLock;1426,57921
-PETSC_EXTERN PetscLogEvent PETSC_Barrier;1430,57984
-PETSC_EXTERN PetscLogEvent PETSC_BuildTwoSided;1431,58026
-PETSC_EXTERN PetscLogEvent PETSC_BuildTwoSidedF;1432,58074
-PETSC_EXTERN PetscBool     use_gpu_aware_mpi;1433,58123
-PETSC_EXTERN PetscBool     PetscPrintFunctionList;1434,58169
-PETSC_EXTERN int64_t Petsc_adios_group;1437,58251
-PETSC_INTERN PetscBool      PetscBeganKokkos;1441,58330
-PETSC_EXTERN PetscBool      PetscKokkosInitialized;1442,58376
-PETSC_EXTERN PetscInt PetscNumOMPThreads;1448,58605
-
 include/petsc/private/pcpatchimpl.h,5634
 pcpatchimpl.h:^?pcpatchimpl.h^A,1
 #define PETSC_PCPATCHIMPL_H5,86
@@ -70943,222 +71522,6 @@
   #define KSPCheckDot(468,19446
   #define KSPCheckNorm(511,21278
 
-include/petsc/private/dmpleximpl.h,9985
-dmpleximpl.h:^?dmpleximpl.h^A,1
-#define _PLEXIMPL_H2,20
-PETSC_EXTERN PetscLogEvent DMPLEX_Interpolate;14,300
-PETSC_EXTERN PetscLogEvent DMPLEX_Partition;15,347
-PETSC_EXTERN PetscLogEvent DMPLEX_PartSelf;16,392
-PETSC_EXTERN PetscLogEvent DMPLEX_PartLabelInvert;17,436
-PETSC_EXTERN PetscLogEvent DMPLEX_PartLabelCreateSF;18,487
-PETSC_EXTERN PetscLogEvent DMPLEX_PartStratSF;19,540
-PETSC_EXTERN PetscLogEvent DMPLEX_CreatePointSF;20,587
-PETSC_EXTERN PetscLogEvent DMPLEX_Distribute;21,636
-PETSC_EXTERN PetscLogEvent DMPLEX_DistributeCones;22,682
-PETSC_EXTERN PetscLogEvent DMPLEX_DistributeLabels;23,733
-PETSC_EXTERN PetscLogEvent DMPLEX_DistributeSF;24,785
-PETSC_EXTERN PetscLogEvent DMPLEX_DistributeOverlap;25,833
-PETSC_EXTERN PetscLogEvent DMPLEX_DistributeField;26,886
-PETSC_EXTERN PetscLogEvent DMPLEX_DistributeData;27,937
-PETSC_EXTERN PetscLogEvent DMPLEX_Migrate;28,987
-PETSC_EXTERN PetscLogEvent DMPLEX_InterpolateSF;29,1030
-PETSC_EXTERN PetscLogEvent DMPLEX_GlobalToNaturalBegin;30,1079
-PETSC_EXTERN PetscLogEvent DMPLEX_GlobalToNaturalEnd;31,1135
-PETSC_EXTERN PetscLogEvent DMPLEX_NaturalToGlobalBegin;32,1189
-PETSC_EXTERN PetscLogEvent DMPLEX_NaturalToGlobalEnd;33,1245
-PETSC_EXTERN PetscLogEvent DMPLEX_Stratify;34,1299
-PETSC_EXTERN PetscLogEvent DMPLEX_Symmetrize;35,1343
-PETSC_EXTERN PetscLogEvent DMPLEX_Preallocate;36,1389
-PETSC_EXTERN PetscLogEvent DMPLEX_ResidualFEM;37,1436
-PETSC_EXTERN PetscLogEvent DMPLEX_JacobianFEM;38,1483
-PETSC_EXTERN PetscLogEvent DMPLEX_InterpolatorFEM;39,1530
-PETSC_EXTERN PetscLogEvent DMPLEX_InjectorFEM;40,1581
-PETSC_EXTERN PetscLogEvent DMPLEX_IntegralFEM;41,1628
-PETSC_EXTERN PetscLogEvent DMPLEX_CreateGmsh;42,1675
-PETSC_EXTERN PetscLogEvent DMPLEX_RebalanceSharedPoints;43,1721
-PETSC_EXTERN PetscLogEvent DMPLEX_CreateFromFile;44,1778
-PETSC_EXTERN PetscLogEvent DMPLEX_BuildFromCellList;45,1828
-PETSC_EXTERN PetscLogEvent DMPLEX_BuildCoordinatesFromCellList;46,1881
-PETSC_EXTERN PetscLogEvent DMPLEX_LocatePoints;47,1945
-PETSC_EXTERN PetscLogEvent DMPLEX_TopologyView;48,1993
-PETSC_EXTERN PetscLogEvent DMPLEX_LabelsView;49,2041
-PETSC_EXTERN PetscLogEvent DMPLEX_CoordinatesView;50,2087
-PETSC_EXTERN PetscLogEvent DMPLEX_SectionView;51,2138
-PETSC_EXTERN PetscLogEvent DMPLEX_GlobalVectorView;52,2185
-PETSC_EXTERN PetscLogEvent DMPLEX_LocalVectorView;53,2237
-PETSC_EXTERN PetscLogEvent DMPLEX_TopologyLoad;54,2288
-PETSC_EXTERN PetscLogEvent DMPLEX_LabelsLoad;55,2336
-PETSC_EXTERN PetscLogEvent DMPLEX_CoordinatesLoad;56,2382
-PETSC_EXTERN PetscLogEvent DMPLEX_SectionLoad;57,2433
-PETSC_EXTERN PetscLogEvent DMPLEX_GlobalVectorLoad;58,2480
-PETSC_EXTERN PetscLogEvent DMPLEX_LocalVectorLoad;59,2532
-PETSC_EXTERN PetscLogEvent DMPLEX_MetricEnforceSPD;60,2583
-PETSC_EXTERN PetscLogEvent DMPLEX_MetricNormalize;61,2635
-PETSC_EXTERN PetscLogEvent DMPLEX_MetricAverage;62,2686
-PETSC_EXTERN PetscLogEvent DMPLEX_MetricIntersection;63,2735
-PETSC_EXTERN PetscLogEvent DMPLEX_RebalBuildGraph;65,2790
-PETSC_EXTERN PetscLogEvent DMPLEX_RebalRewriteSF;66,2841
-PETSC_EXTERN PetscLogEvent DMPLEX_RebalGatherGraph;67,2891
-PETSC_EXTERN PetscLogEvent DMPLEX_RebalPartition;68,2943
-PETSC_EXTERN PetscLogEvent DMPLEX_RebalScatterPart;69,2993
-  int          index;73,3133
-  unsigned int zoneID;74,3177
-  unsigned int first;75,3200
-  unsigned int last;76,3222
-  int          type;77,3243
-  int          nd;78,3264
-  void        *data;data79,3315
-} FluentSection;80,3336
-struct _PetscGridHash 82,3354
-  PetscInt     dim;83,3378
-  PetscReal    lower[lower84,3398
-  PetscReal    upper[upper85,3454
-  PetscReal    extent[extent86,3511
-  PetscReal    h[h87,3558
-  PetscInt     n[n88,3608
-  PetscSection cellSection;89,3665
-  IS           cells;90,3731
-  DMLabel      cellsSparse;91,3794
-  PetscBool isotropic;95,3877
-  PetscBool uniform;96,3945
-  PetscBool restrictAnisotropyFirst;97,4011
-  PetscBool noInsert;98,4101
-  PetscBool noSwap;99,4190
-  PetscBool noMove;100,4270
-  PetscBool noSurf;101,4349
-  PetscReal h_min,102,4435
-  PetscReal h_min, h_max;102,4435
-  PetscReal a_max;103,4522
-  PetscReal targetComplexity;104,4594
-  PetscReal p;105,4662
-  PetscReal gradationFactor;106,4742
-  PetscReal hausdorffNumber;107,4835
-  PetscInt  numIter;108,4977
-  PetscInt  verbosity;109,5064
-} DMPlexMetricCtx;110,5170
-  PetscInt refct;125,5638
-  PetscSection coneSection;127,5657
-  PetscInt    *cones;cones128,5730
-  PetscInt    *coneOrientations;coneOrientations129,5789
-  PetscSection supportSection;130,5957
-  PetscInt    *supports;supports131,6030
-  PetscInt    *facesTmp;facesTmp132,6089
-  PetscBool refinementUniform;135,6183
-  char     *transformType;transformType136,6290
-  PetscReal refinementLimit;137,6410
-  PetscErrorCode (*refinementFunc)refinementFunc138,6516
-  DMPlexInterpolatedFlag interpolated;141,6665
-  DMPlexInterpolatedFlag interpolatedCollective;142,6704
-  DMPlexReorderDefaultFlag reorderDefault;144,6754
-  PetscBool distDefault;147,6851
-  PetscInt  overlap;148,6916
-  PetscInt  numOvLabels;149,7039
-  DMLabel   ovLabels[ovLabels150,7130
-  PetscInt  ovValues[ovValues151,7207
-  PetscInt  numOvExLabels;152,7290
-  DMLabel   ovExLabels[ovExLabels153,7366
-  PetscInt  ovExValues[ovExValues154,7449
-  char     *distributionName;distributionName155,7538
-  PetscBool regularRefinement;158,7646
-  char            *tetgenOpts;tetgenOpts161,7768
-  char            *triangleOpts;triangleOpts162,7799
-  PetscPartitioner partitioner;163,7832
-  PetscBool        partitionBalance;164,7864
-  PetscBool        remeshBd;165,7957
-  DMLabel          subpointMap;168,8003
-  IS               subpointIS;169,8141
-  PetscObjectState subpointState;170,8263
-  PetscObjectState depthState;173,8395
-  PetscObjectState celltypeState;174,8503
-  IS               globalVertexNumbers;175,8614
-  IS               globalCellNumbers;176,8654
-  PetscSection anchorSection;179,8713
-  IS           anchorIS;180,8799
-  PetscErrorCode (*createanchors)createanchors181,8881
-  PetscErrorCode (*computeanchormatrix)computeanchormatrix182,8989
-  PetscSection parentSection;185,9159
-  PetscInt    *parents;parents186,9224
-  PetscInt    *childIDs;childIDs187,9276
-  PetscSection childSection;188,9330
-  PetscInt    *children;children189,9392
-  DM           referenceTree;190,9446
-  PetscErrorCode (*getchildsymmetry)getchildsymmetry191,9523
-  PetscSection subdomainSection;194,9662
-  PetscBool useAnchors;197,9714
-  PetscErrorCode (*useradjacency)useradjacency198,9866
-  void *useradjacencyctx;useradjacencyctx199,9981
-  PetscInt maxProjectionHeight;202,10114
-  PetscInt activePoint;203,10208
-  PetscInt  vtkCellHeight;206,10296
-  PetscReal scale[scale207,10383
-  PetscBool     ignoreModel;210,10470
-  PetscReal     minradius;211,10570
-  PetscBool     useHashLocation;212,10670
-  PetscGridHash lbox;213,10762
-  void (*coordFunc)coordFunc214,10842
-  PetscMPIInt *neighbors;neighbors218,11261
-  DMPlexMetricCtx *metricCtx;metricCtx221,11303
-  PetscBool printSetValues;224,11352
-  PetscInt  printFEM;225,11380
-  PetscInt  printL2;226,11402
-  PetscInt  printLocate;227,11423
-  PetscReal printTol;228,11448
-} DM_Plex;229,11470
-struct _n_DMPlexStorageVersion 272,14446
-  int major,273,14479
-  int major, minor,273,14479
-  int major, minor, subminor;273,14479
-typedef struct _n_DMPlexStorageVersion *DMPlexStorageVersion;DMPlexStorageVersion275,14512
-static inline PetscInt DihedralInvert(352,22524
-static inline PetscInt DihedralCompose(357,22624
-static inline PetscInt DihedralSwap(363,22863
-static inline PetscInt DihedralInvert(375,23299
-static inline PetscInt DihedralCompose(395,23910
-static inline PetscInt DihedralSwap(415,24537
-static inline void DMPlex_Mult2D_Internal(444,26170
-static inline void DMPlex_Mult3D_Internal(451,26482
-static inline void DMPlex_MultTranspose2D_Internal(459,26903
-static inline void DMPlex_MultTranspose3D_Internal(466,27224
-static inline void DMPlex_Mult2DReal_Internal(474,27654
-static inline void DMPlex_Mult3DReal_Internal(481,27968
-static inline void DMPlex_MultAdd2DReal_Internal(489,28391
-static inline void DMPlex_MultAdd3DReal_Internal(496,28686
-static inline void DMPlex_MultTransposeReal_Internal(513,29233
-static inline void DMPlex_MultTranspose2DReal_Internal(525,29655
-static inline void DMPlex_MultTranspose3DReal_Internal(532,29978
-static inline void DMPlex_MatMult2D_Internal(541,30411
-#define PLEX_DIM__ 543,30547
-#undef PLEX_DIM__551,30838
-static inline void DMPlex_MatMult3D_Internal(553,30858
-#define PLEX_DIM__ 555,30994
-#undef PLEX_DIM__563,31285
-static inline void DMPlex_MatMultTranspose2D_Internal(565,31305
-#define PLEX_DIM__ 567,31450
-#undef PLEX_DIM__575,31750
-static inline void DMPlex_MatMultTranspose3D_Internal(577,31770
-#define PLEX_DIM__ 579,31915
-#undef PLEX_DIM__587,32215
-static inline void DMPlex_MatMultLeft2D_Internal(590,32236
-static inline void DMPlex_MatMultLeft3D_Internal(595,32510
-static inline void DMPlex_MatMultTransposeLeft2D_Internal(600,32784
-static inline void DMPlex_MatMultTransposeLeft3D_Internal(605,33058
-static inline void DMPlex_PTAP2DReal_Internal(611,33333
-static inline void DMPlex_PTAP3DReal_Internal(626,33795
-static inline void DMPlex_PTAPReal_Internal(642,34297
-static inline void DMPlex_Transpose2D_Internal(656,34709
-static inline void DMPlex_Transpose3D_Internal(663,34840
-static inline void DMPlex_Invert2D_Internal(677,35060
-static inline void DMPlex_Invert3D_Internal(688,35336
-static inline void DMPlex_Det2D_Internal(704,36313
-static inline void DMPlex_Det3D_Internal(710,36462
-static inline void DMPlex_Det2D_Scalar_Internal(716,36817
-static inline void DMPlex_Det3D_Scalar_Internal(722,37035
-static inline void DMPlex_WaxpyD_Internal(728,37624
-static inline PetscReal DMPlex_DotD_Internal(734,37818
-static inline PetscReal DMPlex_DotRealD_Internal(742,38039
-static inline PetscReal DMPlex_NormD_Internal(750,38247
-static inline PetscReal DMPlex_DistD_Internal(758,38447
-
 include/petsc/private/hashsetij.h,31
 hashsetij.h:^?hashsetij.h^A,1
 #define PETSC_HASHSETIJ_H2,26
@@ -71205,369 +71568,6 @@
   void        *ptr;ptr10,178
 } PetscGarbage;11,198
 
-include/petsc/private/dmnetworkimpl.h,4039
-dmnetworkimpl.h:^?dmnetworkimpl.h^A,1
-#define _NETWORKIMPL_H2,23
-PETSC_EXTERN PetscLogEvent DMNetwork_LayoutSetUp;9,283
-PETSC_EXTERN PetscLogEvent DMNetwork_SetUpNetwork;10,333
-PETSC_EXTERN PetscLogEvent DMNetwork_Distribute;11,384
-#define DMNETWORK_MAX_COMP_REGISTERED_DEFAULT 13,434
-#define DMNETWORK_MAX_COMP_AT_POINT_DEFAULT 14,483
-typedef struct _p_DMNetworkComponentHeader *DMNetworkComponentHeader;DMNetworkComponentHeader16,532
-struct _p_DMNetworkComponentHeader 17,602
-  PetscInt index;18,639
-  PetscInt subnetid;19,710
-  PetscInt ndata;20,755
-  PetscInt hsize;21,803
-  PetscInt maxcomps;22,849
-  PetscInt *size;size29,1288
-  PetscInt *key;key30,1348
-  PetscInt *offset;offset31,1395
-  PetscInt *nvar;nvar32,1458
-  PetscInt *offsetvarrel;offsetvarrel33,1528
-typedef struct _p_DMNetworkComponentValue *DMNetworkComponentValue;DMNetworkComponentValue36,1689
-struct _p_DMNetworkComponentValue 37,1757
-  void **data;data38,1793
-  char     name[name42,1899
-  PetscInt size;43,1939
-} DMNetworkComponent PETSC_ATTRIBUTEALIGNED(PetscMax(sizeof(double), sizeof(PetscScalar)44,1956
-  PetscSection           DofSection;48,2118
-  PetscSection           GlobalDofSection;49,2155
-  ISLocalToGlobalMapping mapping;50,2198
-  PetscSF                sf;51,2232
-} DMNetworkVertexInfo;52,2261
-  PetscSection           DofSection;55,2302
-  PetscSection           GlobalDofSection;56,2339
-  ISLocalToGlobalMapping mapping;57,2382
-  PetscSF                sf;58,2416
-} DMNetworkEdgeInfo;59,2445
-  PetscInt  gidx;72,3000
-  PetscInt  n;73,3070
-  PetscInt *sv;sv74,3155
-} SVtx;75,3240
-  SVNONE 77,3263
-  SVFROM 78,3278
-  SVTO 79,3292
-} SVtxType;80,3305
-  PetscInt  Nvtx,83,3335
-  PetscInt  Nvtx, nvtx;83,3335
-  PetscInt  Nedge,84,3399
-  PetscInt  Nedge, nedge;84,3399
-  PetscInt  eStart,85,3460
-  PetscInt  eStart, eEnd;85,3460
-  PetscInt  vStart,86,3529
-  PetscInt  vStart, vEnd;86,3529
-  PetscInt *edgelist;edgelist87,3600
-  PetscInt *vertices;vertices88,3773
-  PetscInt *edges;edges89,3896
-  char      name[name90,4014
-} DMSubnetwork;91,4055
-typedef struct _p_DMNetworkCloneShared *DMNetworkCloneShared;DMNetworkCloneShared100,4475
-struct _p_DMNetworkCloneShared 101,4537
-  PetscInt  refct;102,4570
-  PetscInt  NEdges,103,4646
-  PetscInt  NEdges, nEdges;103,4646
-  PetscInt  NVertices,104,4715
-  PetscInt  NVertices, nVertices;104,4715
-  PetscInt  pStart,105,4787
-  PetscInt  pStart, pEnd;105,4787
-  PetscInt  vStart,106,4872
-  PetscInt  vStart, vEnd;106,4872
-  PetscInt  eStart,107,4947
-  PetscInt  eStart, eEnd;107,4947
-  PetscBool distributecalled;108,5019
-  PetscInt *vltog;vltog109,5099
-  PetscInt      nsubnet,111,5210
-  PetscInt      nsubnet, Nsubnet;111,5210
-  DMSubnetwork *subnet;subnet112,5295
-  PetscInt     *subnetvtx,subnetvtx113,5353
-  PetscInt     *subnetvtx, *subnetedge;subnetedge113,5353
-  SVtx         *svtx;svtx114,5456
-  PetscInt      nsvtx,115,5542
-  PetscInt      nsvtx, Nsvtx;115,5542
-  PetscInt     *svertices;svertices116,5628
-  PetscInt     *sedgelist;sedgelist117,5732
-  PetscTable    svtable;118,5807
-  DMNetworkCloneShared cloneshared;122,5986
-  DM                   plex;123,6022
-  PetscSection         DataSection;125,6241
-  PetscSection         DofSection;126,6332
-  PetscSection         GlobalDofSection;127,6418
-  DMNetworkVertexInfo vertex;129,6485
-  DMNetworkEdgeInfo   edge;130,6515
-  PetscInt                           ncomponent;132,6544
-  DMNetworkComponent                *component;component133,6646
-  DMNetworkComponentHeader           header;134,6746
-  DMNetworkComponentValue            cvalue;135,6791
-  DMNetworkComponentGenericDataType *componentdataarray;componentdataarray136,6836
-  PetscBool                          componentsetup;137,6924
-  PetscInt                           max_comps_registered;138,7064
-  PetscBool userEdgeJacobian,140,7179
-  PetscBool userEdgeJacobian, userVertexJacobian;140,7179
-  Mat      *Je;Je141,7278
-  Mat      *Jv;Jv142,7410
-  PetscInt *Jvptr;Jvptr143,7553
-} DM_Network;148,7991
-
-include/petsc/private/dmimpl.h,11889
-dmimpl.h:^?dmimpl.h^A,1
-#define _DMIMPL_H3,19
-PETSC_EXTERN PetscBool      DMRegisterAllCalled;13,271
-typedef PetscErrorCode (*NullSpaceFunc)NullSpaceFunc15,369
-typedef struct _PetscHashAuxKey 17,479
-  DMLabel  label;18,513
-  PetscInt value;19,531
-  PetscInt part;20,549
-} PetscHashAuxKey;21,566
-#define PetscHashAuxKeyHash(23,586
-#define PetscHashAuxKeyEqual(25,739
-PETSC_HASH_MAP(27,872
-struct _n_DMGeneratorFunctionList 29,968
-  PetscErrorCode (*generate)generate30,1004
-  PetscErrorCode (*refine)refine31,1055
-  PetscErrorCode (*adapt)adapt32,1106
-  char                   *name;name33,1166
-  PetscInt                dim;34,1198
-  DMGeneratorFunctionList next;35,1229
-typedef struct _DMOps *DMOps;DMOps38,1265
-struct _DMOps 39,1295
-  PetscErrorCode (*view)view40,1311
-  PetscErrorCode (*load)load41,1354
-  PetscErrorCode (*clone)clone42,1397
-  PetscErrorCode (*setfromoptions)setfromoptions43,1434
-  PetscErrorCode (*setup)setup44,1494
-  PetscErrorCode (*createlocalsection)createlocalsection45,1525
-  PetscErrorCode (*createdefaultconstraints)createdefaultconstraints46,1569
-  PetscErrorCode (*createglobalvector)createglobalvector47,1619
-  PetscErrorCode (*createlocalvector)createlocalvector48,1670
-  PetscErrorCode (*getlocaltoglobalmapping)getlocaltoglobalmapping49,1720
-  PetscErrorCode (*createfieldis)createfieldis50,1769
-  PetscErrorCode (*createcoordinatedm)createcoordinatedm51,1837
-  PetscErrorCode (*createcoordinatefield)createcoordinatefield52,1887
-  PetscErrorCode (*getcoloring)getcoloring54,1946
-  PetscErrorCode (*creatematrix)creatematrix55,2013
-  PetscErrorCode (*createinterpolation)createinterpolation56,2058
-  PetscErrorCode (*createrestriction)createrestriction57,2121
-  PetscErrorCode (*createmassmatrix)createmassmatrix58,2175
-  PetscErrorCode (*createmassmatrixlumped)createmassmatrixlumped59,2228
-  PetscErrorCode (*hascreateinjection)hascreateinjection60,2283
-  PetscErrorCode (*createinjection)createinjection61,2340
-  PetscErrorCode (*refine)refine63,2393
-  PetscErrorCode (*coarsen)coarsen64,2441
-  PetscErrorCode (*refinehierarchy)refinehierarchy65,2490
-  PetscErrorCode (*coarsenhierarchy)coarsenhierarchy66,2547
-  PetscErrorCode (*extrude)extrude67,2605
-  PetscErrorCode (*globaltolocalbegin)globaltolocalbegin69,2655
-  PetscErrorCode (*globaltolocalend)globaltolocalend70,2721
-  PetscErrorCode (*localtoglobalbegin)localtoglobalbegin71,2785
-  PetscErrorCode (*localtoglobalend)localtoglobalend72,2851
-  PetscErrorCode (*localtolocalbegin)localtolocalbegin73,2915
-  PetscErrorCode (*localtolocalend)localtolocalend74,2980
-  PetscErrorCode (*destroy)destroy76,3044
-  PetscErrorCode (*computevariablebounds)computevariablebounds78,3078
-  PetscErrorCode (*createsubdm)createsubdm80,3136
-  PetscErrorCode (*createsuperdm)createsuperdm81,3213
-  PetscErrorCode (*createfielddecomposition)createfielddecomposition82,3277
-  PetscErrorCode (*createdomaindecomposition)createdomaindecomposition83,3363
-  PetscErrorCode (*createddscatters)createddscatters84,3457
-  PetscErrorCode (*getdimpoints)getdimpoints86,3561
-  PetscErrorCode (*locatepoints)locatepoints87,3633
-  PetscErrorCode (*getneighbors)getneighbors88,3706
-  PetscErrorCode (*getboundingbox)getboundingbox89,3778
-  PetscErrorCode (*getlocalboundingbox)getlocalboundingbox90,3844
-  PetscErrorCode (*locatepointssubdomain)locatepointssubdomain91,3915
-  PetscErrorCode (*projectfunctionlocal)projectfunctionlocal93,3984
-  PetscErrorCode (*projectfunctionlabellocal)projectfunctionlabellocal94,4161
-  PetscErrorCode (*projectfieldlocal)projectfieldlocal95,4408
-  PetscErrorCode (*projectfieldlabellocal)projectfieldlabellocal96,4799
-  PetscErrorCode (*projectbdfieldlabellocal)projectbdfieldlabellocal97,5260
-  PetscErrorCode (*computel2diff)computel2diff98,5742
-  PetscErrorCode (*computel2gradientdiff)computel2gradientdiff99,5913
-  PetscErrorCode (*computel2fielddiff)computel2fielddiff100,6130
-  PetscErrorCode (*getcompatibility)getcompatibility102,6307
-typedef struct _DMCoarsenHookLink *DMCoarsenHookLink;DMCoarsenHookLink111,6857
-struct _DMCoarsenHookLink 112,6911
-  PetscErrorCode (*coarsenhook)coarsenhook113,6939
-  PetscErrorCode (*restricthook)restricthook114,7046
-  void             *ctx;ctx115,7176
-  DMCoarsenHookLink next;116,7201
-typedef struct _DMRefineHookLink *DMRefineHookLink;DMRefineHookLink119,7231
-struct _DMRefineHookLink 120,7283
-  PetscErrorCode (*refinehook)refinehook121,7310
-  PetscErrorCode (*interphook)interphook122,7405
-  void            *ctx;ctx123,7523
-  DMRefineHookLink next;124,7547
-typedef struct _DMSubDomainHookLink *DMSubDomainHookLink;DMSubDomainHookLink127,7576
-struct _DMSubDomainHookLink 128,7634
-  PetscErrorCode (*ddhook)ddhook129,7664
-  PetscErrorCode (*restricthook)restricthook130,7708
-  void               *ctx;ctx131,7782
-  DMSubDomainHookLink next;132,7809
-typedef struct _DMGlobalToLocalHookLink *DMGlobalToLocalHookLink;DMGlobalToLocalHookLink135,7841
-struct _DMGlobalToLocalHookLink 136,7907
-  PetscErrorCode (*beginhook)beginhook137,7941
-  PetscErrorCode (*endhook)endhook138,8006
-  void                   *ctx;ctx139,8069
-  DMGlobalToLocalHookLink next;140,8100
-typedef struct _DMLocalToGlobalHookLink *DMLocalToGlobalHookLink;DMLocalToGlobalHookLink143,8136
-struct _DMLocalToGlobalHookLink 144,8202
-  PetscErrorCode (*beginhook)beginhook145,8236
-  PetscErrorCode (*endhook)endhook146,8301
-  void                   *ctx;ctx147,8364
-  DMLocalToGlobalHookLink next;148,8395
-  DMVEC_STATUS_IN,152,8446
-  DMVEC_STATUS_OUT153,8465
-} DMVecStatus;154,8484
-typedef struct _DMNamedVecLink *DMNamedVecLink;DMNamedVecLink155,8499
-struct _DMNamedVecLink 156,8547
-  Vec            X;157,8572
-  char          *name;name158,8592
-  DMVecStatus    status;159,8615
-  DMNamedVecLink next;160,8640
-typedef struct _DMWorkLink *DMWorkLink;DMWorkLink163,8667
-struct _DMWorkLink 164,8707
-  size_t     bytes;165,8728
-  void      *mem;mem166,8748
-  DMWorkLink next;167,8766
-#define DM_MAX_WORK_VECTORS 170,8789
-struct _n_DMLabelLink 172,8905
-  DMLabel                label;173,8929
-  PetscBool              output;174,8961
-  struct _n_DMLabelLink *next;next175,8994
-typedef struct _n_DMLabelLink *DMLabelLink;DMLabelLink177,9028
-typedef struct _n_Boundary *DMBoundary;DMBoundary179,9073
-struct _n_Boundary 181,9114
-  DSBoundary dsboundary;182,9135
-  DMLabel    label;183,9160
-  DMBoundary next;184,9180
-typedef struct _n_Field 187,9203
-  PetscObject disc;188,9229
-  DMLabel     label;189,9325
-  PetscBool   adjacency[adjacency190,9412
-  PetscBool   avoidTensor;191,9571
-} RegionField;192,9652
-typedef struct _n_Space 194,9668
-  PetscDS ds;195,9694
-  DMLabel label;196,9753
-  IS      fields;197,9839
-} DMSpace;198,9925
-struct _p_UniversalLabel 200,9937
-  DMLabel   label;201,9964
-  PetscInt  Nl;202,10011
-  char    **names;names203,10063
-  PetscInt *indices;indices204,10106
-  PetscInt  Nv;205,10170
-  PetscInt *bits;bits206,10238
-  PetscInt *masks;masks207,10303
-  PetscInt *offsets;offsets208,10380
-  PetscInt *values;values209,10455
-#define MAXDMMONITORS 214,10593
-  PetscInt dim;217,10635
-  DM       dm;218,10696
-  Vec      x;219,10743
-  Vec      xl;220,10802
-  DMField  field;221,10861
-} DMCoordinates;222,10918
-struct _p_DM 224,10936
-  PETSCHEADER(225,10951
-  Vec            localin[localin226,10981
-  Vec            localin[DM_MAX_WORK_VECTORS], localout[localout226,10981
-  Vec            globalin[globalin227,11059
-  Vec            globalin[DM_MAX_WORK_VECTORS], globalout[globalout227,11059
-  DMNamedVecLink namedglobal;228,11139
-  DMNamedVecLink namedlocal;229,11169
-  DMWorkLink     workin,230,11198
-  DMWorkLink     workin, workout;230,11198
-  DMLabelLink    labels;231,11232
-  DMLabel        depthLabel;232,11292
-  DMLabel        celltypeLabel;233,11362
-  void          *ctx;ctx234,11435
-  PetscErrorCode (*ctxdestroy)ctxdestroy235,11488
-  ISColoringType         coloringtype;236,11529
-  MatFDColoring          fd;237,11568
-  VecType                vectype;238,11597
-  MatType                mattype;239,11717
-  PetscInt               bind_below;240,11805
-  PetscInt               bs;241,11932
-  ISLocalToGlobalMapping ltogmap;242,11961
-  PetscBool              prealloc_skip;243,11995
-  PetscBool              prealloc_only;244,12140
-  PetscBool              structure_only;245,12273
-  PetscInt               levelup,246,12400
-  PetscInt               levelup, leveldown;246,12400
-  PetscBool              setupcalled;247,12584
-  PetscBool              setfromoptionscalled;248,12758
-  void                  *data;data249,12805
-  DM                      coarseMesh;251,12866
-  DM                      fineMesh;252,12904
-  DMCoarsenHookLink       coarsenhook;253,12940
-  DMRefineHookLink        refinehook;254,13041
-  DMSubDomainHookLink     subdomainhook;255,13079
-  DMGlobalToLocalHookLink gtolhook;256,13120
-  DMLocalToGlobalHookLink ltoghook;257,13156
-  PetscInt dim;259,13209
-  PetscHMapAux auxData;261,13280
-  PetscSF   sfMigration;263,13392
-  PetscSF   sf;264,13477
-  PetscSF   sectionSF;265,13538
-  PetscSF   sfNatural;266,13611
-  PetscBool useNatural;267,13679
-  PetscBool    adjacency[adjacency269,13774
-  PetscSection localSection;270,13870
-  PetscSection globalSection;271,13931
-  PetscLayout  map;272,13993
-    PetscSection section;275,14044
-    Mat          mat;276,14070
-    Vec          bias;277,14092
-  } defaultConstraint;278,14115
-  DM    transformDM;280,14167
-  Vec   transform;281,14227
-  void *transformCtx;transformCtx282,14285
-  PetscErrorCode (*transformSetUp)transformSetUp283,14342
-  PetscErrorCode (*transformDestroy)transformDestroy284,14390
-  PetscErrorCode (*transformGetMatrix)transformGetMatrix285,14440
-  DMCoordinates coordinates[coordinates287,14564
-  PetscReal *Lstart,Lstart289,14699
-  PetscReal *Lstart, *L,L289,14699
-  PetscReal *Lstart, *L, *maxCell;maxCell289,14699
-  PetscBool  sparseLocalize;290,14807
-  NullSpaceFunc nullspaceConstructors[nullspaceConstructors292,14992
-  NullSpaceFunc nearnullspaceConstructors[nearnullspaceConstructors293,15035
-  PetscInt     Nf;295,15124
-  RegionField *fields;fields296,15200
-  DMBoundary   boundary;297,15287
-  PetscInt     Nds;298,15346
-  DMSpace     *probs;probs299,15432
-  DM        dmBC;301,15515
-  PetscInt  outputSequenceNum;302,15601
-  PetscReal outputSequenceVal;303,15677
-  PetscErrorCode (*monitor[monitor304,15752
-  PetscErrorCode (*monitordestroy[monitordestroy305,15808
-  void    *monitorcontext[monitorcontext306,15868
-  PetscInt numbermonitors;307,15910
-  PetscObject dmksp,309,15938
-  PetscObject dmksp, dmsnes,309,15938
-  PetscObject dmksp, dmsnes, dmts;309,15938
-  Ceed                ceed;311,15999
-  CeedElemRestriction ceedERestrict;312,16058
-PETSC_EXTERN PetscLogEvent DM_Convert;316,16171
-PETSC_EXTERN PetscLogEvent DM_GlobalToLocal;317,16210
-PETSC_EXTERN PetscLogEvent DM_LocalToGlobal;318,16255
-PETSC_EXTERN PetscLogEvent DM_LocatePoints;319,16300
-PETSC_EXTERN PetscLogEvent DM_Coarsen;320,16344
-PETSC_EXTERN PetscLogEvent DM_Refine;321,16383
-PETSC_EXTERN PetscLogEvent DM_CreateInterpolation;322,16421
-PETSC_EXTERN PetscLogEvent DM_CreateRestriction;323,16472
-PETSC_EXTERN PetscLogEvent DM_CreateInjection;324,16521
-PETSC_EXTERN PetscLogEvent DM_CreateMatrix;325,16568
-PETSC_EXTERN PetscLogEvent DM_CreateMassMatrix;326,16612
-PETSC_EXTERN PetscLogEvent DM_Load;327,16660
-PETSC_EXTERN PetscLogEvent DM_AdaptInterpolator;328,16696
-static inline PetscErrorCode DMGetLocalOffset_Private(403,18927
-static inline PetscErrorCode DMGetLocalFieldOffset_Private(426,19714
-static inline PetscErrorCode DMGetGlobalOffset_Private(448,20556
-static inline PetscErrorCode DMGetGlobalFieldOffset_Private(474,21788
-
 include/petsc/private/characteristicimpl.h,2871
 characteristicimpl.h:^?characteristicimpl.h^A,1
 #define __CHARACTERISTICIMPL_H3,32
@@ -76255,33 +76255,33 @@
 #define PETSCDMDADEF_H6,116
 #define DMDAStencilType 13,287
 #define DMDALocalInfo 15,322
-#define DMDA_LOCAL_INFO_SIZE 20,522
-#define DMDA_LOCAL_INFO_DIM 21,554
-#define DMDA_LOCAL_INFO_DOF 22,584
-#define DMDA_LOCAL_INFO_MX 23,614
-#define DMDA_LOCAL_INFO_MY 24,643
-#define DMDA_LOCAL_INFO_MZ 25,672
-#define DMDA_LOCAL_INFO_XS 26,701
-#define DMDA_LOCAL_INFO_YS 27,730
-#define DMDA_LOCAL_INFO_ZS 28,759
-#define DMDA_LOCAL_INFO_XM 29,788
-#define DMDA_LOCAL_INFO_YM 30,818
-#define DMDA_LOCAL_INFO_ZM 31,848
-#define DMDA_LOCAL_INFO_GXS 32,878
-#define DMDA_LOCAL_INFO_GYS 33,909
-#define DMDA_LOCAL_INFO_GZS 34,940
-#define DMDA_LOCAL_INFO_GXM 35,971
-#define DMDA_LOCAL_INFO_GYM 36,1002
-#define DMDA_LOCAL_INFO_GZM 37,1033
-#define XG_RANGE 39,1065
-#define YG_RANGE 40,1156
-#define ZG_RANGE 41,1247
-#define X_RANGE 42,1338
-#define Y_RANGE 43,1425
-#define Z_RANGE 44,1512
-#define DMDAInterpolationType 46,1600
-#define DMDAElementType 47,1640
-#define PetscGLL 49,1675
+#define DMDA_LOCAL_INFO_SIZE 20,524
+#define DMDA_LOCAL_INFO_DIM 21,556
+#define DMDA_LOCAL_INFO_DOF 22,586
+#define DMDA_LOCAL_INFO_MX 23,616
+#define DMDA_LOCAL_INFO_MY 24,645
+#define DMDA_LOCAL_INFO_MZ 25,674
+#define DMDA_LOCAL_INFO_XS 26,703
+#define DMDA_LOCAL_INFO_YS 27,732
+#define DMDA_LOCAL_INFO_ZS 28,761
+#define DMDA_LOCAL_INFO_XM 29,790
+#define DMDA_LOCAL_INFO_YM 30,820
+#define DMDA_LOCAL_INFO_ZM 31,850
+#define DMDA_LOCAL_INFO_GXS 32,880
+#define DMDA_LOCAL_INFO_GYS 33,911
+#define DMDA_LOCAL_INFO_GZS 34,942
+#define DMDA_LOCAL_INFO_GXM 35,973
+#define DMDA_LOCAL_INFO_GYM 36,1004
+#define DMDA_LOCAL_INFO_GZM 37,1035
+#define XG_RANGE 39,1067
+#define YG_RANGE 40,1158
+#define ZG_RANGE 41,1249
+#define X_RANGE 42,1340
+#define Y_RANGE 43,1427
+#define Z_RANGE 44,1514
+#define DMDAInterpolationType 46,1602
+#define DMDAElementType 47,1642
+#define PetscGLL 49,1677
 
 include/petsc/finclude/petsctao.h,1077
 petsctao.h:^?petsctao.h^A,1
@@ -77133,6 +77133,30 @@
 #define AOMAPPING 15,305
 #define AOMEMORYSCALABLE 16,341
 
+config/configure.py,689
+configure.py:^?configure.py^A,1
+def fixLang(10,215
+def check_for_option_mistakes(24,512
+def check_for_unsupported_combinations(45,1729
+def check_for_option_changed(49,2016
+def check_petsc_arch(71,3115
+def chkenable(89,3767
+def chksynonyms(147,6172
+def chkwincompilerusinglink(197,8097
+def chkdosfiles(203,8287
+def chkcygwinlink(213,8855
+def chkbrokencygwin(224,9570
+def chkusingwindowspython(236,10212
+def chkcygwinpython(244,10577
+def chkcygwinwindowscompilers(262,11317
+def chkrhl9(273,11651
+def chktmpnoexec(291,12313
+def check_cray_modules(312,13527
+def check_broken_configure_log_links(329,14324
+def move_configure_log(336,14626
+def print_final_timestamp(374,16179
+def petsc_configure(381,16415
+
 config/testparse.py,457
 testparse.py:^?testparse.py^A,1
 def getDefaultOutputFileRoot(58,1760
@@ -77235,30 +77259,6 @@
   def write_db(1031,39502
 def main(1039,39714
 
-config/configure.py,688
-configure.py:^?configure.py^A,1
-def fixLang(9,190
-def check_for_option_mistakes(23,487
-def check_for_unsupported_combinations(44,1704
-def check_for_option_changed(48,1991
-def check_petsc_arch(70,3090
-def chkenable(88,3742
-def chksynonyms(146,6147
-def chkwincompilerusinglink(196,8072
-def chkdosfiles(202,8262
-def chkcygwinlink(212,8830
-def chkbrokencygwin(223,9545
-def chkusingwindowspython(235,10187
-def chkcygwinpython(243,10552
-def chkcygwinwindowscompilers(261,11292
-def chkrhl9(272,11626
-def chktmpnoexec(290,12288
-def check_cray_modules(311,13502
-def check_broken_configure_log_links(328,14299
-def move_configure_log(335,14601
-def print_final_timestamp(373,16154
-def petsc_configure(380,16390
-
 config/report_tests.py,154
 report_tests.py:^?report_tests.py^A,1
 def inInstallDir(11,212
@@ -77888,6 +77888,85 @@
 clean:clean17,383
 .PHONY:.PHONY20,430
 
+config/BuildSystem/config/framework.py,2472
+framework.py:^?framework.py^A,1
+class Framework(57,2461
+  def __init__(59,2634
+  def __getstate__(106,4356
+  def __setstate__(114,4620
+  def listDirs(121,4836
+  def getTmpDir(140,5457
+  def setTmpDir(146,5775
+  def getFileCreatePause(157,6142
+  def setFileCreatePause(161,6307
+  def setupHelp(165,6543
+  def getCleanup(184,8124
+  def setCleanup(189,8253
+  def setupArguments(194,8422
+  def outputBasics(205,9596
+    def logPrintFilesInPath(210,9760
+  def dumpConfFiles(226,10470
+  def saveHash(260,12076
+  def cleanup(272,12603
+  def printSummary(277,12693
+  def addChild(289,13268
+  def getChild(294,13398
+  def createChildren(326,14634
+  def require(341,15104
+  def requireModule(348,15432
+  def loadFramework(356,15713
+  def addPackageDependency(369,16086
+  def updatePackageDependencies(392,16906
+  def updateDependencies(409,17740
+  def setConfigureParent(414,17863
+  def filterPreprocessOutput(421,18025
+  def filterCompileOutput(456,19923
+  def filterLinkOutput(513,23417
+  def addSubstitutionFile(584,27735
+  def getPrefix(605,28425
+  def getHeaderPrefix(614,28667
+  def getSubstitutionPrefix(622,28927
+  def substituteName(630,29183
+  def substituteFile(659,30213
+  def substitute(674,30816
+  def dumpSubstitutions(680,30972
+  def storeSubstitutions(701,31773
+  def outputDefine(717,32685
+  def outputPoison(732,33521
+  def outputMakeMacro(738,33960
+  def outputMakeRule(742,34057
+  def outputMakeRules(752,34306
+  def outputMakeMacros(762,34740
+  def getFullDefineName(774,35216
+  def processDefines(779,35402
+  def outputDefines(794,36158
+  def outputPoisons(801,36416
+  def outputPkgVersion(805,36543
+  def outputTypedefs(839,38689
+  def outputPrototypes(850,39109
+  def outputMakeMacroHeader(859,39564
+  def outputMakeRuleHeader(884,40515
+  def processPackageListDefine(903,41088
+  def outputHeader(909,41320
+  def outputPkgHeader(957,43176
+  def outputCHeader(984,44069
+  def getOptionsString(1024,45437
+  def outputBanner(1035,45832
+  def configureExternalPackagesDir(1047,46349
+  def addBatchSetup(1055,46637
+  def addBatchInclude(1062,46831
+  def addBatchLib(1069,47053
+  def addBatchBody(1076,47247
+  def addBatchCleanup(1083,47477
+  def configureBatch(1090,47684
+  def parallelQueueEvaluation(1159,51324
+    def processChildren(1173,51864
+  def serialEvaluation(1287,57136
+    def findModule(1290,57194
+    def checkChildCxxDialectBounds(1300,57635
+  def processChildren(1389,62777
+  def configure(1405,63207
+
 config/BuildSystem/config/setCompilers.py,4407
 setCompilers.py:^?setCompilers.py^A,1
 def noCheck(11,263
@@ -78297,85 +78376,6 @@
   def checkMmap(179,7409
   def configure(185,7782
 
-config/BuildSystem/config/framework.py,2472
-framework.py:^?framework.py^A,1
-class Framework(57,2461
-  def __init__(59,2634
-  def __getstate__(106,4356
-  def __setstate__(114,4620
-  def listDirs(121,4836
-  def getTmpDir(140,5457
-  def setTmpDir(146,5775
-  def getFileCreatePause(157,6142
-  def setFileCreatePause(161,6307
-  def setupHelp(165,6543
-  def getCleanup(184,8124
-  def setCleanup(189,8253
-  def setupArguments(194,8422
-  def outputBasics(205,9596
-    def logPrintFilesInPath(210,9760
-  def dumpConfFiles(226,10470
-  def saveHash(260,12076
-  def cleanup(272,12603
-  def printSummary(277,12693
-  def addChild(289,13268
-  def getChild(294,13398
-  def createChildren(326,14634
-  def require(341,15104
-  def requireModule(348,15432
-  def loadFramework(356,15713
-  def addPackageDependency(369,16086
-  def updatePackageDependencies(392,16906
-  def updateDependencies(409,17740
-  def setConfigureParent(414,17863
-  def filterPreprocessOutput(421,18025
-  def filterCompileOutput(456,19923
-  def filterLinkOutput(513,23417
-  def addSubstitutionFile(582,27540
-  def getPrefix(603,28230
-  def getHeaderPrefix(612,28472
-  def getSubstitutionPrefix(620,28732
-  def substituteName(628,28988
-  def substituteFile(657,30018
-  def substitute(672,30621
-  def dumpSubstitutions(678,30777
-  def storeSubstitutions(699,31578
-  def outputDefine(715,32490
-  def outputPoison(730,33326
-  def outputMakeMacro(736,33765
-  def outputMakeRule(740,33862
-  def outputMakeRules(750,34111
-  def outputMakeMacros(760,34545
-  def getFullDefineName(772,35021
-  def processDefines(777,35207
-  def outputDefines(792,35963
-  def outputPoisons(799,36221
-  def outputPkgVersion(803,36348
-  def outputTypedefs(837,38494
-  def outputPrototypes(848,38914
-  def outputMakeMacroHeader(857,39369
-  def outputMakeRuleHeader(882,40320
-  def processPackageListDefine(901,40893
-  def outputHeader(907,41125
-  def outputPkgHeader(955,42981
-  def outputCHeader(982,43874
-  def getOptionsString(1022,45242
-  def outputBanner(1033,45637
-  def configureExternalPackagesDir(1045,46154
-  def addBatchSetup(1053,46442
-  def addBatchInclude(1060,46636
-  def addBatchLib(1067,46858
-  def addBatchBody(1074,47052
-  def addBatchCleanup(1081,47282
-  def configureBatch(1088,47489
-  def parallelQueueEvaluation(1157,51129
-    def processChildren(1171,51669
-  def serialEvaluation(1285,56941
-    def findModule(1288,56999
-    def checkChildCxxDialectBounds(1298,57440
-  def processChildren(1387,62582
-  def configure(1403,63012
-
 config/BuildSystem/config/compilersFortran.py,871
 compilersFortran.py:^?compilersFortran.py^A,1
 def remove_xcode_verbose(7,55
@@ -78761,6 +78761,13 @@
   def testLogName(46,1147
   def testFullDefaultConfigure(53,1400
 
+config/BuildSystem/config/packages/pARMS.py,97
+pARMS.py:^?pARMS.py^A,1
+class Configure(3,23
+  def __init__(4,64
+  def setupDependencies(16,610
+  def Install(24,997
+
 config/BuildSystem/config/packages/slepc.py,163
 slepc.py:^?slepc.py^A,1
 class Configure(3,23
@@ -79645,13 +79652,6 @@
   def setupDependencies(11,296
   def getSearchDirectories(17,512
 
-config/BuildSystem/config/packages/pARMS.py,97
-pARMS.py:^?pARMS.py^A,1
-class Configure(3,23
-  def __init__(4,64
-  def setupDependencies(16,609
-  def Install(24,996
-
 config/BuildSystem/config/packages/opencl.py,43
 opencl.py:^?opencl.py^A,1
 class Configure(4,34
@@ -80235,9 +80235,6 @@
 config/examples/arch-ci-linux-gcov.py,0
 arch-ci-linux-gcov.py:^?arch-ci-linux-gcov.py^A,1
 
-config/examples/arch-ci-linux-hip-double.py,0
-arch-ci-linux-hip-double.py:^?arch-ci-linux-hip-double.py^A,1
-
 config/examples/arch-ci-linux-intel-mkl-single.py,0
 arch-ci-linux-intel-mkl-single.py:^?arch-ci-linux-intel-mkl-single.py^A,1
 
@@ -80340,6 +80337,9 @@
 config/examples/arch-nersc-perlmutter-opt.py,0
 arch-nersc-perlmutter-opt.py:^?arch-nersc-perlmutter-opt.py^A,1
 
+config/examples/arch-ci-linux-hip-double.py,0
+arch-ci-linux-hip-double.py:^?arch-ci-linux-hip-double.py^A,1
+
 config/example_template.py,0
 example_template.py:^?example_template.py^A,1
 
-------------- next part --------------
diff -Nru --exclude '*doc*' petsc4py-3.18.4/debian/changelog petsc4py-3.18.5/debian/changelog
--- petsc4py-3.18.4/debian/changelog	2023-02-06 11:45:00.000000000 +0100
+++ petsc4py-3.18.5/debian/changelog	2023-03-06 11:15:53.000000000 +0100
@@ -1,3 +1,9 @@
+petsc4py (3.18.5-1) unstable; urgency=medium
+
+  * New upstream release.
+
+ -- Drew Parsons <dparsons at debian.org>  Mon, 06 Mar 2023 11:15:53 +0100
+
 petsc4py (3.18.4-1) unstable; urgency=medium
 
   * New upstream release.
diff -Nru --exclude '*doc*' petsc4py-3.18.4/petsc4py.egg-info/PKG-INFO petsc4py-3.18.5/petsc4py.egg-info/PKG-INFO
--- petsc4py-3.18.4/petsc4py.egg-info/PKG-INFO	2023-01-31 07:03:58.000000000 +0100
+++ petsc4py-3.18.5/petsc4py.egg-info/PKG-INFO	2023-02-27 23:31:15.000000000 +0100
@@ -1,9 +1,9 @@
 Metadata-Version: 2.1
 Name: petsc4py
-Version: 3.18.4
+Version: 3.18.5
 Summary: PETSc for Python
 Home-page: https://gitlab.com/petsc/petsc
-Download-URL: https://pypi.io/packages/source/p/petsc4py/petsc4py-3.18.4.tar.gz
+Download-URL: https://pypi.io/packages/source/p/petsc4py/petsc4py-3.18.5.tar.gz
 Author: Lisandro Dalcin
 Author-email: dalcinl at gmail.com
 Maintainer: Lisandro Dalcin
diff -Nru --exclude '*doc*' petsc4py-3.18.4/PKG-INFO petsc4py-3.18.5/PKG-INFO
--- petsc4py-3.18.4/PKG-INFO	2023-01-31 07:03:59.333307700 +0100
+++ petsc4py-3.18.5/PKG-INFO	2023-02-27 23:31:15.745930400 +0100
@@ -1,9 +1,9 @@
 Metadata-Version: 2.1
 Name: petsc4py
-Version: 3.18.4
+Version: 3.18.5
 Summary: PETSc for Python
 Home-page: https://gitlab.com/petsc/petsc
-Download-URL: https://pypi.io/packages/source/p/petsc4py/petsc4py-3.18.4.tar.gz
+Download-URL: https://pypi.io/packages/source/p/petsc4py/petsc4py-3.18.5.tar.gz
 Author: Lisandro Dalcin
 Author-email: dalcinl at gmail.com
 Maintainer: Lisandro Dalcin
diff -Nru --exclude '*doc*' petsc4py-3.18.4/src/__init__.py petsc4py-3.18.5/src/__init__.py
--- petsc4py-3.18.4/src/__init__.py	2023-01-31 06:19:48.000000000 +0100
+++ petsc4py-3.18.5/src/__init__.py	2023-02-27 23:11:05.000000000 +0100
@@ -21,7 +21,7 @@
 """
 
 __author__    = 'Lisandro Dalcin'
-__version__   = '3.18.4'
+__version__   = '3.18.5'
 __credits__   = 'PETSc Team <petsc-maint at mcs.anl.gov>'
 
 # --------------------------------------------------------------------
-------------- next part --------------
A non-text attachment was scrubbed...
Name: petsc_3.18.5.debdiff.bz2
Type: application/x-bzip2
Size: 2789999 bytes
Desc: not available
URL: <http://alioth-lists.debian.net/pipermail/debian-science-maintainers/attachments/20230306/2a00d426/attachment-0002.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: petsc4py_3.18.5.debdiff.bz2
Type: application/x-bzip2
Size: 10038 bytes
Desc: not available
URL: <http://alioth-lists.debian.net/pipermail/debian-science-maintainers/attachments/20230306/2a00d426/attachment-0003.bin>


More information about the debian-science-maintainers mailing list