00:03.00 |
CIA-13 |
BRL-CAD: 03brlcad * 10brlcad/include/bu.h:
remove the unnecessary time_t type from the public header so that
the dependency on time.h may be eliminated |
00:22.55 |
CIA-13 |
BRL-CAD: 03brlcad *
10brlcad/src/libbu/mappedfile.c: cast the time_t to a long so we
don't need to necessarily stash a time_t in the mappedfile
structure any more |
00:27.15 |
CIA-13 |
BRL-CAD: 03brlcad *
10brlcad/src/util/roots_example.c: add a simple example application
that shows how to use the root solver for solving polynomial roots
(up to 4th order shown) |
00:32.52 |
CIA-13 |
BRL-CAD: 03brlcad *
10brlcad/src/util/roots_example.c: might as well add a linear root
example too, fix type on rt_poly_roots() |
00:33.19 |
CIA-13 |
BRL-CAD: 03brlcad *
10brlcad/src/util/Makefile.am: add roots_example.c as a sample
application that uses the root solver |
00:35.46 |
CIA-13 |
BRL-CAD: 03brlcad *
10brlcad/src/util/.cvsignore: ignore the roots_example
binary |
00:37.35 |
CIA-13 |
BRL-CAD: 03brlcad * 10brlcad/NEWS: new example
root solving sample application |
00:38.45 |
CIA-13 |
BRL-CAD: 03brlcad * 10brlcad/NEWS: oops, put
roots_example into the right release block |
00:43.04 |
CIA-13 |
BRL-CAD: 03brlcad * 10brlcad/NEWS: 7.8 will
likely be released in february |
00:51.39 |
CIA-13 |
BRL-CAD: 03brlcad * 10brlcad/misc/Makefile.am:
don't include enigma's CVS directory in the distribution |
00:53.29 |
CIA-13 |
BRL-CAD: 03brlcad * 10brlcad/misc/Makefile.am:
scratch that, the test will be moved to the top-level makefile so
NO cvs dirs get included |
00:58.40 |
CIA-13 |
BRL-CAD: 03brlcad * 10brlcad/Makefile.am:
delete any CVS directories from our candidate distribution since we
don't want to ship them |
01:32.36 |
CIA-13 |
BRL-CAD: 03brlcad * 10brlcad/NEWS: mention the
name of the new root solving application, roots_example. |
01:42.12 |
CIA-13 |
BRL-CAD: 03brlcad * 10brlcad/NEWS: (log
message trimmed) |
01:42.12 |
CIA-13 |
BRL-CAD: Forgot to mention that considerable
time was spent profiling and |
01:42.12 |
CIA-13 |
BRL-CAD: optimizing the raytracer. in
particular, performance enhancements |
01:42.12 |
CIA-13 |
BRL-CAD: were made in support of reducing
large image overhead and some |
01:42.12 |
CIA-13 |
BRL-CAD: unnecessary pixel processing. this is
particularly important for |
01:42.13 |
CIA-13 |
BRL-CAD: background pixels, i.e. primary rays
that miss the model. performance |
01:42.17 |
CIA-13 |
BRL-CAD: observed varies based on number of
primary rays and the number that |
03:01.28 |
justin_ |
present and accounted for |
03:03.58 |
phcoder |
goodness - someone would think you have
nothing else to do ;-) |
03:12.47 |
*** join/#brlcad PrezKennedy
(n=Apathy@pcp010175pcs.dover01.de.comcast.net) |
03:56.44 |
brlcad |
there's something else to do? |
03:58.08 |
phcoder |
:-) |
03:58.32 |
phcoder |
yeah - don't ask *me* what ,
though... |
04:15.09 |
justin_ |
mmm, only 1 small piece of drywall
left |
04:42.40 |
kaol |
does http://www.kb.cert.org/vuls/id/378049
concern the version of urt included with brlcad? |
04:52.53 |
brlcad |
kaol: no, it doesn't |
04:53.46 |
brlcad |
kaol: that was fixed in brl-cad with release
7.0.4, January of last year iirc |
05:19.03 |
*** join/#brlcad PKMOBILE
(n=Apathy@pcp010175pcs.dover01.de.comcast.net) |
08:25.34 |
*** join/#brlcad DarkMaster
(n=Apathy@68.33.243.45) |
09:05.22 |
*** join/#brlcad clock_
(n=clock@84-72-63-231.dclient.hispeed.ch) |
11:08.41 |
kaol |
brlcad: ok, good to know. thanks. |
11:30.44 |
*** join/#brlcad phcoder
(n=phcoder@pcp0011650294pcs.aberdn01.md.comcast.net) |
14:33.05 |
pra5ad |
mm 16 hrs of sleep |
15:39.18 |
*** join/#brlcad ``Erik
(i=erik@pcp0011474399pcs.chrchv01.md.comcast.net) |
16:37.33 |
pra5ad |
brlcad, http://pastebin.com/516214 |
16:37.36 |
pra5ad |
7.7.0 |
16:37.56 |
pra5ad |
ack |
16:38.06 |
pra5ad |
co'd wrong vers |
16:38.07 |
pra5ad |
:D |
16:40.20 |
brlcad |
looking |
16:42.19 |
pra5ad |
what module name should i co? |
16:42.28 |
pra5ad |
since head is buggy |
16:42.35 |
pra5ad |
er tag |
16:43.57 |
pra5ad |
or is 7.7.0 head supposed to work |
16:44.03 |
brlcad |
it's not buggy, did you even read the error?
:) |
16:44.19 |
pra5ad |
course i didnt |
16:46.44 |
brlcad |
hm interesting that it's caring, but it's
valid.. missing a header |
16:47.09 |
brlcad |
add a #include "pkg.h" into
src/libfb/fb_generic.c before the #include "fb.h" |
16:47.41 |
pra5ad |
u gonna commit the change? |
16:49.12 |
pra5ad |
same thing in fb_log.c |
16:50.03 |
brlcad |
yeah, it needs to go into the header |
16:50.07 |
brlcad |
not the c files |
16:50.13 |
pra5ad |
in fb.h? |
16:50.14 |
brlcad |
add it to include/fb.h |
16:50.16 |
pra5ad |
k |
16:50.34 |
brlcad |
that's what I edited here, but still
testing |
16:51.28 |
pra5ad |
compile went thru |
16:52.12 |
CIA-13 |
BRL-CAD: 03brlcad * 10brlcad/include/fb.h:
framebuffer interface is presently tied to the network package
library due to a return type, should decouple that |
16:52.44 |
brlcad |
do you have an sf.net account? |
16:53.28 |
brlcad |
ah, never mind |
16:53.47 |
brlcad |
so yeah, you can just cvs up .. |
16:54.23 |
pra5ad |
yea |
16:54.53 |
pra5ad |
cvs commit -m"uh.. cos it didn't
work.." |
16:54.56 |
pra5ad |
;) |
16:55.17 |
brlcad |
actually it did, wierd |
16:55.25 |
brlcad |
what compiler? |
16:56.04 |
pra5ad |
gcc 4.0.2 |
16:57.06 |
pra5ad |
gcc version 4.0.2 20050808 (prerelease)
(Ubuntu 4.0.1-4ubuntu9) |
16:57.48 |
pra5ad |
hmm |
16:57.50 |
pra5ad |
yacc -d points_parse.y |
16:57.50 |
pra5ad |
make[4]: yacc: Command not found |
16:57.50 |
pra5ad |
make[4]: *** [points_parse.c] Error
127 |
16:57.58 |
pra5ad |
configure didnt complain.. |
16:59.48 |
brlcad |
ahhh, ubuntie |
17:00.06 |
brlcad |
yeah, configure doesn't abort, it just
defaults |
17:00.12 |
brlcad |
install bison |
17:00.25 |
brlcad |
and lex |
17:00.28 |
brlcad |
flex |
17:02.40 |
CIA-13 |
BRL-CAD: 03brlcad *
10brlcad/src/libfb/pkgswitch.c: pkg.h isn't a local
header |
17:03.19 |
CIA-13 |
BRL-CAD: 03brlcad *
10brlcad/src/libfb/fbserv_obj.c: pkgtypes.h is in current dir, no
need to couple to the directory name |
17:04.03 |
pra5ad |
http://pastebin.com/516246 |
17:04.45 |
brlcad |
pra5ad: what's YACC set to in your Makefile
s |
17:05.12 |
pra5ad |
top level Makefile? |
17:05.17 |
brlcad |
any of them |
17:05.31 |
pra5ad |
YACC = yacc |
17:05.38 |
brlcad |
and LEX ? |
17:05.54 |
pra5ad |
LEX = ${SHELL}
/home/prasad/brlcad/misc/missing --run flex |
17:06.20 |
brlcad |
grep YACC config.log |
17:06.56 |
pra5ad |
:. grep YACC config.log |
17:06.56 |
pra5ad |
YACC='yacc' |
17:07.17 |
brlcad |
ah, interesting |
17:07.40 |
pra5ad |
i installed bison and flex |
17:07.47 |
brlcad |
so I can add a test that shuts that part of
mged off if a yacc isn't installed based on that I think |
17:08.38 |
brlcad |
do the same grep for LEX |
17:09.15 |
pra5ad |
:. grep LEX config.log |
17:09.15 |
pra5ad |
LEX='${SHELL} /home/prasad/brlcad/misc/missing
--run flex' |
17:09.15 |
pra5ad |
LEXLIB='' |
17:09.15 |
pra5ad |
LEX_OUTPUT_ROOT='' |
17:10.08 |
brlcad |
that's what's causing the other
error |
17:10.11 |
brlcad |
LEX_OUTPUT_ROOT |
17:10.17 |
brlcad |
you don't have a lexer |
17:10.29 |
brlcad |
install flex |
17:10.36 |
brlcad |
(and bison if you didn't yet) |
17:10.44 |
pra5ad |
i did (read up) |
17:10.52 |
brlcad |
rerun autogen.sh/configure |
17:10.53 |
pra5ad |
but i guess i should have reconfed |
17:11.06 |
brlcad |
or forgo autogen.sh |
17:11.12 |
brlcad |
but rm -rf *cache* |
17:18.56 |
CIA-13 |
BRL-CAD: 03brlcad * 10brlcad/configure.ac: use
AC_PROG_LEX instead of AM_PROG_LEX since the latter attempts to use
the missing script to run flex but fails miserably due to the
assumptions by automake that LEX_OUTPUT_ROOT will be set to
something. |
17:22.06 |
pra5ad |
# |
17:22.06 |
pra5ad |
#ifdef __cplusplus |
17:22.06 |
pra5ad |
# |
17:22.06 |
pra5ad |
extern "C" { |
17:22.06 |
pra5ad |
# |
17:22.06 |
pra5ad |
#endif |
17:22.31 |
pra5ad |
is that acceptable for cross
platform? |
17:23.32 |
pra5ad |
seems redundant to me.. *shrug* |
17:27.04 |
brlcad |
redundant? |
17:27.07 |
brlcad |
where do you see that? |
17:27.50 |
brlcad |
you shouldn't have to do the extern thing --
there's some header missing its label |
17:28.12 |
brlcad |
as we already do that for most of the headers
if __cplusplus is defined |
17:28.23 |
brlcad |
albeit more cleanly than that |
17:28.35 |
pra5ad |
ah |
17:31.32 |
brlcad |
that's the "__BEGIN_DECLS" and "__END_DECLS"
in the headers |
17:31.48 |
brlcad |
if you can make the fix to the headers so you
don't have to do that in your code, commit the fix ;) |
17:32.20 |
pra5ad |
fix what |
17:32.41 |
brlcad |
i'd told you to add the extern "C" { #include
"blah" } |
17:33.15 |
brlcad |
now that you're working with head.. what file
does it abort on if you remove the extern "C" |
17:33.36 |
brlcad |
might as well fix the real problem |
17:35.24 |
pra5ad |
ohh the problem from yesterday |
17:35.38 |
pra5ad |
gimme sec |
17:36.58 |
pra5ad |
http://pastebin.com/516292 |
17:37.03 |
pra5ad |
(brlcad make) |
17:42.29 |
brlcad |
did you do a make clean there first |
17:42.32 |
brlcad |
looks dirty |
17:43.04 |
brlcad |
yyin and yylex are still flex/bison
issues |
17:43.12 |
pra5ad |
k |
18:13.07 |
pra5ad |
same thing |
18:13.09 |
pra5ad |
i did make clean |
18:17.21 |
``Erik |
try distclean? |
18:18.21 |
``Erik |
I had problems with that, too... on fbsd o.O
mged/points... |
18:18.31 |
``Erik |
I wonder if my 'fix' broke it on whatever
you're using :-/ |
18:18.57 |
``Erik |
that points shit is a shoddyassed piece of
shit anyways, we should figure out who wrote it and beat their ass
O:-D |
18:20.32 |
brlcad |
it's the shizzle |
18:20.35 |
brlcad |
fo rizzle |
18:20.51 |
brlcad |
going to add more parsers too |
18:21.04 |
brlcad |
most of the converters should have been
written as parsers |
18:21.46 |
pra5ad |
so whats the fix |
18:21.50 |
pra5ad |
try distclean? |
18:24.26 |
``Erik |
are you building "in dir" or "out of
dir"? |
18:25.25 |
brlcad |
hm |
18:25.31 |
brlcad |
send me your config.log |
18:25.48 |
brlcad |
and your src/mged/points/Makefile |
18:26.15 |
``Erik |
given the errors, I would ASSUME that the C
sean wrote makes assumptions about the output of lex, and your lex
is not producing appropriate output... perhaps a different version,
or a misassumed flag |
18:26.59 |
``Erik |
(like, maybe you're using classic lex, or
something other than flex...) |
18:26.59 |
brlcad |
i would think that too, cept he supposedly
installed flex and bison |
18:27.06 |
``Erik |
yeah, but |
18:27.18 |
``Erik |
a) did it find flex, or some other
lex |
18:27.20 |
``Erik |
and b) did it add the right flags to
lex |
18:27.28 |
brlcad |
true, why I wanted the config.log |
18:27.51 |
brlcad |
could be AC_PROG_LEX is busted for older
autoconfs |
18:28.01 |
``Erik |
additionally, more of the paste (like the lex
call, libtool call, etc) may be useful |
18:28.08 |
brlcad |
pra5ad: what version of
autoconf/automake/libtool are you using? |
18:28.24 |
``Erik |
lex, too |
18:28.42 |
brlcad |
12:35 * pra5ad is slow |
18:29.41 |
brlcad |
heh |
18:32.15 |
pra5ad |
yo back |
18:33.02 |
pra5ad |
2.59, 1.9.5, 1.5.6 |
18:33.21 |
pra5ad |
flex: 2.5.31 |
18:33.37 |
pra5ad |
bison 2.0 |
18:33.43 |
brlcad |
hmm, the versions are good, so should figure
out what's up |
18:33.45 |
``Erik |
those're all awfully recent |
18:33.55 |
brlcad |
can you get me a shell account? |
18:34.06 |
brlcad |
that'd make this worlds easier |
18:34.49 |
pra5ad |
no can do |
18:34.58 |
brlcad |
``Erik: yeah, i'm thinking that might be the
problem if something was changed in a never version (or if it's a
bonefide bug or a code assumption) |
18:35.07 |
pra5ad |
u want config.log and points/Makefile
? |
18:36.09 |
``Erik |
cd src/mged/points ; make clean ; make
2>&1 > something ; /dcc send brlcad
/path/too/src/mged/points/something |
18:36.11 |
``Erik |
? |
18:37.45 |
pra5ad |
blarg.. did distclean |
18:37.48 |
pra5ad |
gimme a few |
18:42.59 |
brlcad |
hmm BEP have a track that pra5ad should listen
to |
18:44.04 |
pra5ad |
'shut up' ? |
18:46.18 |
brlcad |
naope |
18:48.27 |
pra5ad |
'say goodbye' ? |
18:48.37 |
brlcad |
nope |
18:48.52 |
brlcad |
heh, nothing like that |
18:48.56 |
pra5ad |
'love wont wait' ? |
18:51.10 |
pra5ad |
'latin girls' |
18:51.10 |
pra5ad |
mmm |
18:51.50 |
brlcad |
it's in filipino |
18:52.01 |
brlcad |
bebot |
18:53.15 |
brlcad |
this might play it
http://sg1.allmusic.com/cg/smp.dll?r=20.asx&link=qten59muiakp2xuyu23dxhg |
18:53.22 |
pra5ad |
heard the itms preview |
18:53.26 |
pra5ad |
whatd i miss |
19:12.06 |
*** join/#brlcad pra5ad_
(n=pra5ad@pool-141-157-99-61.balt.east.verizon.net) |
19:12.16 |
pra5ad_ |
grr |
19:19.41 |
brlcad |
yay, real irc client |
19:20.31 |
justin_ |
heh |
19:25.28 |
pra5ad_ |
i was on this client b4.. |
19:30.38 |
CIA-13 |
BRL-CAD: 03brlcad * 10brlcad/src/mged/cmd.c:
disable the parse_points command conditionally depending on new
configure checks for yacc/lex, output a message if it was
disabled |
19:31.10 |
pra5ad |
well the distclean + make fixed it |
19:35.36 |
CIA-13 |
BRL-CAD: 03brlcad *
10brlcad/src/mged/Makefile.am: conditionally traverse into and link
against the points subdirectory based on whether WITH_PARSERS was
declared by configure after testing for yacc/lex. |
19:41.32 |
CIA-13 |
BRL-CAD: 03brlcad *
10brlcad/configure.ac: |
19:41.32 |
CIA-13 |
BRL-CAD: add tests to determine whether we
successfully found a system bison/flex |
19:41.32 |
CIA-13 |
BRL-CAD: yacc/lex tool pair for making
parsers. if either isn't found, the parsers that |
19:41.33 |
CIA-13 |
BRL-CAD: are written to utilize them are
disabled to prevent compile errors and a warning |
19:41.33 |
CIA-13 |
BRL-CAD: is output. if they are availabe
WITH_PARSERS is provided to the makefiles and |
19:41.35 |
CIA-13 |
BRL-CAD: BC_WITH_PARSERS is defined for code
to conditionally test against. |
19:58.35 |
brlcad |
pra5ad: does your
src/mged/points/points_parse.c have a previous_linebuffer
declaration near the top (and a full/usual brl-cad header and
#includes?)? |
20:00.19 |
``Erik |
"b4"? is 'efore' really that much more
difficult to type than the r-tard style '4'? o.O |
20:04.16 |
pra5ad |
brlcad, doesn't look like it |
20:04.50 |
pra5ad |
has the brlcad header + #includes |
20:05.12 |
brlcad |
what are the includes? |
20:05.52 |
pra5ad |
extern char previous_linebuffer[]; (found
this after the brlcad header) |
20:06.13 |
pra5ad |
#include "common.h" |
20:06.13 |
pra5ad |
#include <stdio.h> |
20:06.13 |
pra5ad |
#include <stdlib.h> |
20:06.13 |
pra5ad |
#include <string.h> |
20:06.13 |
pra5ad |
#include "./count.h" |
20:06.14 |
pra5ad |
#include "./process.h" |
20:06.23 |
brlcad |
ah, so you DO have it :P |
20:06.55 |
pra5ad |
eye-balled the stuff above the header
=) |
20:08.02 |
brlcad |
i think I see why it's complaining, but I
can't fathom why they'd do that |
20:08.40 |
brlcad |
or if that's even really what's going
on |
20:09.07 |
brlcad |
here's a better one, main.c -- you have an
extern FILE *yyin; at the top yes? |
20:10.33 |
pra5ad |
yes |
20:13.59 |
brlcad |
then the errors make no sense |
20:14.41 |
pra5ad |
well it does now (and i am able to compile it
successfully) |
20:14.46 |
pra5ad |
after the distclean |
20:17.51 |
CIA-13 |
BRL-CAD: 03brlcad * 10brlcad/src/mged/cmd.c:
er, if BC_WITH_PARSERS is NOT defined.. |
20:37.00 |
pra5ad |
brlcad, http://pastebin.com/516529 |
20:37.14 |
pra5ad |
(g-nmg -b -o bot.g t62.g component) |
20:42.01 |
brlcad |
``Erik: updating freshmeat to .4 before
updating to .6 just so you know |
20:42.33 |
brlcad |
pra5ad: thanks, looking |
20:48.10 |
CIA-13 |
BRL-CAD: 03brlcad * 10brlcad/src/conv/g-nmg.c:
ah, r may be null from td_r when traversing |
20:48.27 |
brlcad |
pra5ad: ah, same crash, protected wrong
var |
20:48.30 |
brlcad |
try that |
21:10.00 |
brlcad |
pra5ad: how's that? |
21:10.19 |
CIA-13 |
BRL-CAD: 03brlcad * 10brlcad/src/conv/ (11
files): a little less excitement about regions that evaluate to
nothing, still report it if we're verbose a little more
consistently. |
21:10.37 |
pra5ad |
worked |
21:11.00 |
brlcad |
did it convert correctly? |
21:11.01 |
pra5ad |
Tried 1009 regions, 1005 converted
successfully. 99.6036% |
21:11.12 |
brlcad |
interesting.. |
21:11.49 |
brlcad |
try this, g-nmg without the -b, then nmg-bot
instead |
21:12.23 |
brlcad |
how many succeed without the -b too |
21:13.17 |
pra5ad |
hmm in mged one of the left hubs is
missing |
21:13.28 |
pra5ad |
checking now |
21:15.39 |
pra5ad |
got this: |
21:15.44 |
pra5ad |
<PROTECTED> |
21:15.44 |
pra5ad |
<PROTECTED> |
21:15.44 |
pra5ad |
class_lu_vs_s: loop transits plane of
shell/face? |
21:15.44 |
pra5ad |
bu_bomb(): taking longjmp up to application
handler |
21:15.45 |
pra5ad |
FAILED: /r728 |
21:18.19 |
brlcad |
try just that region by itself, does it
succeed? |
21:18.49 |
pra5ad |
waiting for component to finish |
21:21.14 |
pra5ad |
Tried 1009 regions, 1006 converted
successfully. 99.7027% |
21:22.15 |
pra5ad |
Starting program: /usr/brlcad/bin/g-nmg -o
t62nmg.g t62.g r728 |
21:22.16 |
pra5ad |
[Thread debugging using libthread_db
enabled] |
21:22.16 |
pra5ad |
[New Thread -1214351680 (LWP 27581)] |
21:22.16 |
pra5ad |
<PROTECTED> |
21:22.16 |
pra5ad |
class_lu_vs_s: loop transits plane of
shell/face? |
21:22.17 |
pra5ad |
bu_bomb(): taking longjmp up to application
handler |
21:22.18 |
pra5ad |
FAILED: /r728 |
21:22.19 |
brlcad |
that difference of 1 is the one that was
causing the crash |
21:22.20 |
pra5ad |
Tried 1 regions, 0 converted successfully.
0% |
21:22.22 |
pra5ad |
Program exited normally. |
21:22.24 |
pra5ad |
(gdb) |
21:22.44 |
brlcad |
cool, so it's repeatable |
21:23.01 |
pra5ad |
eh? the output both times compoleted
successfully |
21:23.07 |
pra5ad |
completed* |
21:23.27 |
pra5ad |
the conversion i mean; without any
crashes |
21:25.49 |
brlcad |
well, not crashing doesn't mean it was
"successful" |
21:25.58 |
brlcad |
it should never crash |
21:26.02 |
brlcad |
even if it can't convert |
21:26.20 |
brlcad |
that crash was specific to the -b option, so
nobody noticed |
21:26.38 |
brlcad |
somehow it's a loopless non-empty
shell |
21:26.50 |
brlcad |
which shouldn't exist easily |
21:28.03 |
pra5ad |
so the converted .g should be valid, albeit
without the failed regions? |
21:29.27 |
brlcad |
right |
21:29.49 |
brlcad |
it that t62a perchance? |
21:30.49 |
pra5ad |
no |
21:30.57 |
pra5ad |
t62.g |
21:30.59 |
pra5ad |
used in m3 |
21:32.13 |
clock_ |
what is t62 and m3? tanks? |
21:33.52 |
brlcad |
t62 is a tank |
21:33.53 |
brlcad |
m3 is an analysis package |
21:33.53 |
pra5ad |
in a way; t62 IS a tank, while the other acts
like one |
21:33.53 |
brlcad |
heh |
21:34.06 |
pra5ad |
running nmg on havoc |
22:05.31 |
pra5ad |
good god havoc is still going |
22:28.00 |
*** join/#brlcad clock_
(n=clock@84-72-63-231.dclient.hispeed.ch) |
23:31.40 |
``Erik |
heh |
23:32.31 |
``Erik |
I will not call muves-3 "m3", it would sully
the awesomeness of my new machine. |
23:32.35 |
``Erik |
:D |
23:34.01 |
``Erik |
sean, there should probably be a brlcad
release checklist... to make sure every little tidbit is done, no?
(yeah, yeah, documented procedure... but the difference between
this and the klugefuck of moronity at work is that we're
documenting an existing procedure, not trying to dictate an
imaginary procedure via documentation...) |