% Installer: "generic_install.m"
% Created: 30-Jul-2002 14:27:49.

function bund_driver

% bund_driver -- Driver for "bund" bundles.
%  bund_driver (no arguments) contains Matlab commands
%   to inflate the instructions and files that are
%   encoded into the "bund_data" function of this package.
 
% Copyright (C) 2001 Dr. Charles R. Denham, ZYDECO.
%  All Rights Reserved.
%   Disclosure without explicit written consent from the
%    copyright owner does not constitute publication.
 
% Version of 14-Jun-2001 10:54:16.
% Updated    03-Aug-2001 13:43:17.

help(mfilename)

BINARY_TAG = '?';

CR = char(13);
LF = char(10);

comp = upper(computer);
if any(findstr(comp, 'PCWIN'))   % Windows.
	NL = [CR LF];
elseif any(findstr(comp, 'MAC2'))   % Macintosh.
	NL = CR;
else   % Unix.
	NL = LF;
end

c = zeros(1, 256);
c(abs('0'):abs('9')) = 0:9;
c(abs('a'):abs('f')) = 10:15;

disp([' '])
disp([' ## This installer is ready to expand its contents,'])
disp([' ## starting in the present directory: "' pwd '"'])
disp([' ## To abort, execute an interruption now.'])
disp([' ## Otherwise, to continue, press any key.'])
disp([' '])

try
	pause
catch
	disp([' ## Installation interrupted.'])
	disp([' '])
	return
end

tic

w = which(mfilename);

fin = fopen(w, 'r');
if fin < 0, return, end

found = ~~0;
while ~found
	s = fgetl(fin);
	if isequal(s, -1)
		fclose(fin);
		return
	end
	s = strrep(s, LF, '');  % Not necessary?
	s = strrep(s, CR, '');  % Not necessary?
	if isequal(s, 'function bund_data')
		found = ~~1;
	end
end

fout = -1;

done = ~~0;
while ~done
	s = fgetl(fin);
	if isequal(s, -1)
		fclose(fin);
		return
	end
	if length(s) > 0
		if s(1) ~= '%'
			f = findstr(s, 'bund_setdir');
			if any(f)
				theDir = eval(strrep(s, 'bund_setdir', ''));
				status = mkdir(theDir);
				switch status
				case 1
					disp([' ## Directory created: "' theDir '"'])
				case 2
					disp([' ## Directory exists: "' theDir '"'])
				otherwise
					error([' ## Error while making new directory.'])
				end
				
				try
					cd(theDir)
				catch
					error([' ## Unable to go to directory: "' theDir '"'])
				end
			else
				try
					eval(s);
				catch
					error([' ## Unable to evaluate: "' s '"'])
				end
			end
		elseif length(s) > 1 & s(2) == BINARY_TAG
			hx = double(s(3:end));   % Assume hex data.
			bin = 16*c(hx(1:2:end)) + c(hx(2:2:end));
			fwrite(fout, bin, 'uchar');
		else
			fprintf(fout, '%s', s(2:end));
			fprintf(fout, NL);
		end
	end
end

fclose(fin);

disp([' ## Elapsed time: ' num2str(fix(10*toc)/10) ' s.'])

function bund_data
bund_setdir('generic')

disp(' ## Installing: "fcopy.m" (text)')
fout = fopen('fcopy.m', 'w');
%function theResult = fcopy(theSource, theDestination, maxCharacters)
%
%% fcopy -- Copy (duplicate) a file.
%%  fcopy(theSource, theDestination, maxCharacters) copies the
%%   contents of theSource file into theDestination file,
%%   in increments of maxCharacters (default = 16K).  Each
%%   file can be specified by its name or by an existing
%%   file-pointer.
%%  fcopy (no arguments) demonstrates itself by copying
%%   "fcopy.m" to "junk.junk".
% 
%% Copyright (C) 1997 Dr. Charles R. Denham, ZYDECO.
%%  All Rights Reserved.
%%   Disclosure without explicit written consent from the
%%    copyright owner does not constitute publication.
% 
%% Version of 11-Jan-2000 21:24:20.
%% Updated    11-Jan-2000 21:24:20.
%
%if nargin < 1
%   help fcopy
%   fcopy('fcopy.m', 'junk.junk');
%   return
%end
%if nargin < 2, return, end
%if nargin < 3, maxCharacters = 1024 .* 16; end
%if ischar(maxCharacters), maxCharacters = eval(maxCharacters); end
%
%if isstr(theSource)
%   src = fopen(theSource, 'r');
%   if src < 0, error(' ## Source file not opened.'); end
%  else
%   src = theSource;
%end
%
%if isstr(theDestination)
%   dst = fopen(theDestination, 'w');
%   if dst < 0, error(' ## Destination file not opened.'); end
%  else
%   dst = theDestination;
%end
%
%while (1)
%   [s, inputCount] = fread(src, [1 maxCharacters], 'char');
%   if inputCount > 0, outputCount = fwrite(dst, s, 'char'); end
%   if inputCount < maxCharacters | outputCount < inputCount, break, end
%end
%
%if isstr(theDestination), result = fclose(dst); end
%if isstr(theSource), result = (fclose(src) | result); end
%
%if nargout > 0, theResult = result; end
fclose(fout);

disp(' ## Installing: "generic.doc" (text)')
fout = fopen('generic.doc', 'w');
%Generic Class -- Notes
%
%Dr. Charles R. Denham
%U.S. Geological Survey
%Woods Hole, MA 02543
%cdenham@usgs.gov
%http://crusty.er.usgs.gov/~cdenham
% 
%% Copyright (C) 1998 Dr. Charles R. Denham, ZYDECO.
%%  All Rights Reserved.
%%   Disclosure without explicit written consent from the
%%    copyright owner does not constitute publication.
% 
%% Version of 27-Oct-1998 09:43:15.
%% Updated    13-Nov-1998 09:33:16.
%
%Purpose of the Generic Class
%
%The "generic" class provides an interface for actions on
%custom-designed objects in Matlab.  Classes derived from
%"generic" are easy to construct, because "generic" traps
%all symbolic-operators and redirects them to "feval".
%This obviates the need for the derived class to overload
%all of the numerous operator methods that exist.  To open
%the door to all the symbolic-operators, users need only
%provide a dereferencing method called "value".
%
%This class is an example of an "Adaptor" design-pattern.
%
%Sub-classes of the "generic" class must overload the "value"
%method, whose purpose is to get and set the perceived value
%of an object.  The "generic" class methods pass all arguments
%to "generic/feval", which first calls "value" for each "generic"
%argument, and then calls "feval" to complete the requested
%action.  If the "generic" arguments dereference to themselves,
%then the "feval" method of the derived-class will be called.
%Like magic.
%
%Interestingly, the derived-class is free to overload any of the
%operators that require special attention.  The effect will be
%to by-pass the "generic" mechanism automatically and proceed
%directly to the derived-class method, just as one would expect.
%
%Our Matfile and Interval Toolboxes (see WWW page) are derived
%from the "generic" class.
%
%The Constructor
%
%To create a "generic" object, call the constructor with
%a single argument containing its intended value, as in:
%
%      "self = generic(anything)".
%
%Overloading the Value Method
%
%The "value" method should be overloaded in one of two ways,
%depending on the complexity of the underlying objects.
%
%1.	In the first scheme, "value(...)" returns a regular Matlab
%	entity, thereby causing Matlab's own "feval" function to
%	complete the task.  This style of programming is suitable
%	for situations where the value consists of only one entity.
%
%	The "Matfile Toolbox", in which each "matvar" object represents
%	just one Matlab entity, follows this strategy.
%
%2.	In the second scheme, where the value contains more than one
%	essential entity, the "value" method should return the object
%	intact, here called "self".  This will force the execution of
%	the "feval" method of the class of self, which MUST be
%	overloaded.
%
%	The "Interval Toolbox", which deals with entities consisting
%	of two items (lower and upper bound), takes this approach.
%	The simpler approach is not possible, because operations on
%	"interval" objects typically require two calls per argument,
%	followed by an adjustment procedure.
%
%Overloading Other Methods
%
%Users are encouraged, but not required, to overload other useful
%methods, especially "size", "length", "display", and "disp".
%(None is actually essential for the successful operation of a class.)
%
%Infinity Indexing
%
%We have added "infinity" indexing to the basic "generic"
%class.  The phrase "x(inf)" refers to the value of x in
%its original size.  This syntax is useful mainly on the
%righthand side of an equal-sign, to extract the full-size
%value without having to call the "value" method explicitly.
%(Matlab requires that custom-designed classes invoke some
%form of indexing in order to process an equal-sign using
%class-methods.)
%
%How the Generic Methods Work
%
%Except for "feval", "value", and "generic" (constructor),
%the methods in the "generic" class use exactly the same
%instructions, first to figure out their own name, and
%then to pass all their arguments to "feval".  All of
%the operators, plus numerous other functions, are made
%available through this mechanism.  See "methods generic"
%for their names.  Each method has "help".
%
%Adding Methods
%
%We have included "generic_make" with the toolbox, so that
%additions can be made.  For example, to add the "foo" method,
%add the name 'foo' to the list of methods in "generic_make.m".
%Then, execute "generic_make" at the Matlab prompt.  Finally,
%restart Matlab.
%
%No elementary or special mathematical functions are provided
%in the basic methods-list, though some are named, but not used,
%in the "generic_make" routine.
%
%Methods Deliberately Not Overloaded
%
%   class, cell, struct
fclose(fout);

disp(' ## Installing: "generic_bundle.m" (text)')
fout = fopen('generic_bundle.m', 'w');
%function generic_bundle
%
%% generic_bundle -- Bundle the Generic Toolbox.
% 
%% Copyright (C) 1999 Dr. Charles R. Denham, ZYDECO.
%%  All Rights Reserved.
%%   Disclosure without explicit written consent from the
%%    copyright owner does not constitute publication.
% 
%% Version of 22-Apr-1999 09:11:21.
%% Updated    18-Apr-2000 23:35:16.
%
%setdef(mfilename)
%
%dst_name = 'generic_install';
%
%fclose('all');
%delete([dst_name '.m'])
%delete([dst_name '.p'])
%
%theMFiles = {
%	mfilename
%	'fcopy'
%	'setdef'
%	'generic.doc'
%	'generic_make'
%	'value'
%};
%
%theMFiles = sort(theMFiles);
%
%theClasses = {
%	'generic'
%};
%
%for i = 1:length(theClasses)
%	newversion(theClasses{i})
%end
%
%theMessage = {
%	' '
%	' ## Place "generic" in your Matlab path,';
%	' ## then restart Matlab.'
%	' '
%};
%
%if (0)
%	self = bundle(dst_name, 'new');
%	self = add_makedir(self, 'generic');
%	self = add_setdir(self, 'generic');
%	self = add_mfile(self, theMFiles);
%	self = add_mfile(self, theClasses);
%	self = add_message(self, theMessage);
%	self = make_pcode(self);
%end
%
%bund new generic
%bund setdir generic
%bund('mfile', theMFiles)
%bund('class', theClasses)
%bund cd ..
%bund('disp', theMessage)
%bund close
fclose(fout);

disp(' ## Installing: "generic_make.m" (text)')
fout = fopen('generic_make.m', 'w');
%function generic_make
%
%% generic_make -- Generate generic methods.
%%  generic_make (no argument) generates methods
%%   for the "generic" class by copying the
%%   pre-existing "fcn" function to each method-name.
%%
%%   The "generic" class is a simple object-oriented
%%   interface for entities that can be related easily
%%   to the basic Matlab data-types.  All of the methods
%%   operate through the pre-existing "feval" function.
%%   The user must provide a "value" method, which returns
%%   a value from the original object, suitable for the
%%   requested operation.
% 
%% Copyright (C) 1998 Dr. Charles R. Denham, ZYDECO.
%%  All Rights Reserved.
%%   Disclosure without explicit written consent from the
%%    copyright owner does not constitute publication.
% 
%% Version of 27-Oct-1998 06:28:38.
%
%here = which(mfilename);
%f = find(here == filesep);
%here = here(1:f(end));
%cd(here)
%
%theClassPrefix = '@';
%if any(findstr(lower(computer), 'vms'))
%	theClassPrefix = '#';
%end
%
%theGenericClass = 'generic';
%
%theGenericMethod = 'fcn';
%
%% Basic operators.
%
%theMethods = { ...
%	'char', 'double', 'logical', 'uint8', ...
%	'sparse', 'full', ...
%	'real', 'imag', ...
%	'size', 'length', ...
%	'isnan', 'isinf', 'isfinite', 'isreal', ...
%	'and', 'or', 'not', ...
%	'lt', 'le', 'eq', 'ne', 'ge', 'gt', 'isequal', ...
%	'plus', 'uplus', 'minus', 'uminus', ...
%	'times', 'mtimes', ...
%	'ldivide', 'rdivide', 'mldivide', 'mrdivide', ...
%	'power', 'mpower', ...
%	'transpose', 'ctranspose', ...
%	'horzcat', 'vertcat', ...
%	'subsasgn', 'subsindex', 'subsref', ...
%	'colon', ...
%	'display', 'disp', ...
%	'any', 'all', ...
%};
%
%% Some elementary functions, if desired.
%
%if (0)
%	theMethods = [theMethods, { ...
%		'sqrt', 'exp', 'log', ...
%		'sin', 'cos', 'tan', ...
%		'asin', 'acos', 'atan', 'atan2', ...
%		'sinh', 'cosh', 'tanh', ...
%		'asinh', 'acosh', 'atanh', ...
%		'abs', 'norm' ...
%	}
%end
%
%cd([theClassPrefix theGenericClass])
%
%src = [theGenericMethod '.m'];
%	
%for i = 1:length(theMethods)
%	dst = [theMethods{i} '.m'];
%	dst = strrep(dst, ':', filesep);
%	disp([' ## ' src ' ==> ' dst])
%	fcopy(src, dst)
%end
%
%cd(here)
fclose(fout);

disp(' ## Installing: "setdef.m" (text)')
fout = fopen('setdef.m', 'w');
%function setdef(theFunction)
%
%% setdef -- Switch to directory of a function.
%%  setdef(theFunction) switches to the directory
%%   that contains theFunction.
%%  setdef (no argument) displays pwd.
%
%% Copyright (C) 1996 Dr. Charles R. Denham, ZYDECO.
%%  All Rights Reserved.
%%   Disclosure without written consent from the
%%    copyright owner does not constitute publication.
%
%if nargin > 0
%   w = which(theFunction);
%   f = findstr(w, filesep);
%   if any(f)
%      w = w(1:f(length(f)));
%      eval(['cd(''' w(1:f(length(f))) ''')'])
%   end
%end
%disp([' ## ' pwd])
fclose(fout);

disp(' ## Installing: "value.m" (text)')
fout = fopen('value.m', 'w');
%function theResult = value(x, newValue)
%
%% value -- Value of an entity.
%%  value(x) returns the value of self.
%%  value(x, newValue) assigns the newValue
%%   to the value of x.
% 
%% Copyright (C) 1998 Dr. Charles R. Denham, ZYDECO.
%%  All Rights Reserved.
%%   Disclosure without explicit written consent from the
%%    copyright owner does not constitute publication.
% 
%% Version of 27-Nov-1998 16:10:09.
%
%if nargin < 1, help(mfilename), return, end
%
%if nargin < 2
%	result = x;
%else
%	result = x;
%end
%
%if nargout > 0
%	theResult = result;
%else
%	disp(result)
%end
fclose(fout);
bund_setdir('@generic')

disp(' ## Installing: "all.m" (text)')
fout = fopen('all.m', 'w');
%function [varargout] = fcn(varargin)
%
%% generic/fcn -- Generic function.
%%  fcn(....) performs the function corresponding
%%   to the actual name of this M-file.  At least one of
%%   the arguments must be a "generic" object.
% 
%% Copyright (C) 1998 Dr. Charles R. Denham, ZYDECO.
%%  All Rights Reserved.
%%   Disclosure without explicit written consent from the
%%    copyright owner does not constitute publication.
% 
%% Version of 25-Oct-1998 19:12:45.
%
%if nargin < 1, help(mfilename), return, end
%
%if nargout > 0
%	varargout = cell(1, nargout);
%	[varargout{:}] = feval(mfilename, varargin{:});
%else
%	feval(mfilename, varargin{:});
%end
fclose(fout);

disp(' ## Installing: "and.m" (text)')
fout = fopen('and.m', 'w');
%function [varargout] = fcn(varargin)
%
%% generic/fcn -- Generic function.
%%  fcn(....) performs the function corresponding
%%   to the actual name of this M-file.  At least one of
%%   the arguments must be a "generic" object.
% 
%% Copyright (C) 1998 Dr. Charles R. Denham, ZYDECO.
%%  All Rights Reserved.
%%   Disclosure without explicit written consent from the
%%    copyright owner does not constitute publication.
% 
%% Version of 25-Oct-1998 19:12:45.
%
%if nargin < 1, help(mfilename), return, end
%
%if nargout > 0
%	varargout = cell(1, nargout);
%	[varargout{:}] = feval(mfilename, varargin{:});
%else
%	feval(mfilename, varargin{:});
%end
fclose(fout);

disp(' ## Installing: "any.m" (text)')
fout = fopen('any.m', 'w');
%function [varargout] = fcn(varargin)
%
%% generic/fcn -- Generic function.
%%  fcn(....) performs the function corresponding
%%   to the actual name of this M-file.  At least one of
%%   the arguments must be a "generic" object.
% 
%% Copyright (C) 1998 Dr. Charles R. Denham, ZYDECO.
%%  All Rights Reserved.
%%   Disclosure without explicit written consent from the
%%    copyright owner does not constitute publication.
% 
%% Version of 25-Oct-1998 19:12:45.
%
%if nargin < 1, help(mfilename), return, end
%
%if nargout > 0
%	varargout = cell(1, nargout);
%	[varargout{:}] = feval(mfilename, varargin{:});
%else
%	feval(mfilename, varargin{:});
%end
fclose(fout);

disp(' ## Installing: "char.m" (text)')
fout = fopen('char.m', 'w');
%function [varargout] = fcn(varargin)
%
%% generic/fcn -- Generic function.
%%  fcn(....) performs the function corresponding
%%   to the actual name of this M-file.  At least one of
%%   the arguments must be a "generic" object.
% 
%% Copyright (C) 1998 Dr. Charles R. Denham, ZYDECO.
%%  All Rights Reserved.
%%   Disclosure without explicit written consent from the
%%    copyright owner does not constitute publication.
% 
%% Version of 25-Oct-1998 19:12:45.
%
%if nargin < 1, help(mfilename), return, end
%
%if nargout > 0
%	varargout = cell(1, nargout);
%	[varargout{:}] = feval(mfilename, varargin{:});
%else
%	feval(mfilename, varargin{:});
%end
fclose(fout);

disp(' ## Installing: "colon.m" (text)')
fout = fopen('colon.m', 'w');
%function [varargout] = fcn(varargin)
%
%% generic/fcn -- Generic function.
%%  fcn(....) performs the function corresponding
%%   to the actual name of this M-file.  At least one of
%%   the arguments must be a "generic" object.
% 
%% Copyright (C) 1998 Dr. Charles R. Denham, ZYDECO.
%%  All Rights Reserved.
%%   Disclosure without explicit written consent from the
%%    copyright owner does not constitute publication.
% 
%% Version of 25-Oct-1998 19:12:45.
%
%if nargin < 1, help(mfilename), return, end
%
%if nargout > 0
%	varargout = cell(1, nargout);
%	[varargout{:}] = feval(mfilename, varargin{:});
%else
%	feval(mfilename, varargin{:});
%end
fclose(fout);

disp(' ## Installing: "ctranspose.m" (text)')
fout = fopen('ctranspose.m', 'w');
%function [varargout] = fcn(varargin)
%
%% generic/fcn -- Generic function.
%%  fcn(....) performs the function corresponding
%%   to the actual name of this M-file.  At least one of
%%   the arguments must be a "generic" object.
% 
%% Copyright (C) 1998 Dr. Charles R. Denham, ZYDECO.
%%  All Rights Reserved.
%%   Disclosure without explicit written consent from the
%%    copyright owner does not constitute publication.
% 
%% Version of 25-Oct-1998 19:12:45.
%
%if nargin < 1, help(mfilename), return, end
%
%if nargout > 0
%	varargout = cell(1, nargout);
%	[varargout{:}] = feval(mfilename, varargin{:});
%else
%	feval(mfilename, varargin{:});
%end
fclose(fout);

disp(' ## Installing: "disp.m" (text)')
fout = fopen('disp.m', 'w');
%function [varargout] = fcn(varargin)
%
%% generic/fcn -- Generic function.
%%  fcn(....) performs the function corresponding
%%   to the actual name of this M-file.  At least one of
%%   the arguments must be a "generic" object.
% 
%% Copyright (C) 1998 Dr. Charles R. Denham, ZYDECO.
%%  All Rights Reserved.
%%   Disclosure without explicit written consent from the
%%    copyright owner does not constitute publication.
% 
%% Version of 25-Oct-1998 19:12:45.
%
%if nargin < 1, help(mfilename), return, end
%
%if nargout > 0
%	varargout = cell(1, nargout);
%	[varargout{:}] = feval(mfilename, varargin{:});
%else
%	feval(mfilename, varargin{:});
%end
fclose(fout);

disp(' ## Installing: "display.m" (text)')
fout = fopen('display.m', 'w');
%function [varargout] = fcn(varargin)
%
%% generic/fcn -- Generic function.
%%  fcn(....) performs the function corresponding
%%   to the actual name of this M-file.  At least one of
%%   the arguments must be a "generic" object.
% 
%% Copyright (C) 1998 Dr. Charles R. Denham, ZYDECO.
%%  All Rights Reserved.
%%   Disclosure without explicit written consent from the
%%    copyright owner does not constitute publication.
% 
%% Version of 25-Oct-1998 19:12:45.
%
%if nargin < 1, help(mfilename), return, end
%
%if nargout > 0
%	varargout = cell(1, nargout);
%	[varargout{:}] = feval(mfilename, varargin{:});
%else
%	feval(mfilename, varargin{:});
%end
fclose(fout);

disp(' ## Installing: "double.m" (text)')
fout = fopen('double.m', 'w');
%function [varargout] = fcn(varargin)
%
%% generic/fcn -- Generic function.
%%  fcn(....) performs the function corresponding
%%   to the actual name of this M-file.  At least one of
%%   the arguments must be a "generic" object.
% 
%% Copyright (C) 1998 Dr. Charles R. Denham, ZYDECO.
%%  All Rights Reserved.
%%   Disclosure without explicit written consent from the
%%    copyright owner does not constitute publication.
% 
%% Version of 25-Oct-1998 19:12:45.
%
%if nargin < 1, help(mfilename), return, end
%
%if nargout > 0
%	varargout = cell(1, nargout);
%	[varargout{:}] = feval(mfilename, varargin{:});
%else
%	feval(mfilename, varargin{:});
%end
fclose(fout);

disp(' ## Installing: "end.m" (text)')
fout = fopen('end.m', 'w');
%function theResult = end(self, k, n)
%
%% generic/end -- Evaluate "end" as an index.
%%  end(self, k, n) returns the value of "end"
%%   that has been used as the k-th index in
%%   a list of n indices, on behalf of "self",
%%   a "generic" object.
% 
%% Copyright (C) 1999 Dr. Charles R. Denham, ZYDECO.
%%  All Rights Reserved.
%%   Disclosure without explicit written consent from the
%%    copyright owner does not constitute publication.
% 
%% Version of 21-Apr-1999 08:50:46.
%
%if nargin < 1, help(mfilename), return, end
%
%s = size(self);
%
%if k == 1 & n == 1
%	result = prod(s);
%elseif k <= length(s)
%	result = s(k);
%else
%	result = 0;
%end
%
%if nargout > 0
%	theResult = result;
%else
%	disp(result)
%end
fclose(fout);

disp(' ## Installing: "eq.m" (text)')
fout = fopen('eq.m', 'w');
%function [varargout] = fcn(varargin)
%
%% generic/fcn -- Generic function.
%%  fcn(....) performs the function corresponding
%%   to the actual name of this M-file.  At least one of
%%   the arguments must be a "generic" object.
% 
%% Copyright (C) 1998 Dr. Charles R. Denham, ZYDECO.
%%  All Rights Reserved.
%%   Disclosure without explicit written consent from the
%%    copyright owner does not constitute publication.
% 
%% Version of 25-Oct-1998 19:12:45.
%
%if nargin < 1, help(mfilename), return, end
%
%if nargout > 0
%	varargout = cell(1, nargout);
%	[varargout{:}] = feval(mfilename, varargin{:});
%else
%	feval(mfilename, varargin{:});
%end
fclose(fout);

disp(' ## Installing: "fcn.m" (text)')
fout = fopen('fcn.m', 'w');
%function [varargout] = fcn(varargin)
%
%% generic/fcn -- Generic function.
%%  fcn(....) performs the function corresponding
%%   to the actual name of this M-file.  At least one of
%%   the arguments must be a "generic" object.
% 
%% Copyright (C) 1998 Dr. Charles R. Denham, ZYDECO.
%%  All Rights Reserved.
%%   Disclosure without explicit written consent from the
%%    copyright owner does not constitute publication.
% 
%% Version of 25-Oct-1998 19:12:45.
%
%if nargin < 1, help(mfilename), return, end
%
%if nargout > 0
%	varargout = cell(1, nargout);
%	[varargout{:}] = feval(mfilename, varargin{:});
%else
%	feval(mfilename, varargin{:});
%end
fclose(fout);

disp(' ## Installing: "feval.m" (text)')
fout = fopen('feval.m', 'w');
%function [varargout] = feval(theFcn, varargin)
%
%% generic/feval -- Evaluate function by string-name.
%%  feval('theFcn', ....) performs the function 'theFcn'
%%   on the arguments, at least one of which must be a
%%   "generic" object.  The function-name may be given
%%   in the form of an mfilename: 'class/method'.
%%
%%   Except for "subsasgn", the outputs are not
%%   "generic" objects themselves, but rather
%%   correspond to the classes of the values
%%   of the inputs, typically "double".  To
%%   cast to "generic", wrap "generic(...)"
%%   around the answer.
%%
%%   A single infinity (inf) subscript on the right
%%   of an equal-sign denotes the full size of the
%%   value of self.  On the left, it signifies that
%%   the value of self is to be completely replaced
%%   by the right side, regardless of size or type.
% 
%% Copyright (C) 1998 Dr. Charles R. Denham, ZYDECO.
%%  All Rights Reserved.
%%   Disclosure without explicit written consent from the
%%    copyright owner does not constitute publication.
% 
%% Version of 25-Oct-1998 19:12:45.
%% Updated    25-Jul-2002 16:40:55.
%
%if nargin < 1, help(mfilename), return, end
%
%theClass = mfilename;
%f = find(theClass == '/');
%if any(f), theClass(f(1):end) = ''; end
%
%self = varargin{1};
%
%for i = 1:length(varargin)
%	if isa(varargin{i}, theClass)
%		varargin{i} = value(varargin{i});
%	end
%end
%
%f = find(theFcn == '/');
%if any(f)
%	theFcn(1:f(1)) = '';
%end
%
%% Process "infinity" syntax: We use "inf"
%%  as a index to force the "subsref" method
%%  to return the fully-sized value.  With
%%  "subsasgn", it serves as ":".
%
%switch theFcn
%case 'subsref'
%	theStruct = varargin{2};
%	theType = theStruct(1).type;
%	theSubs = theStruct(1).subs;
%	if ~iscell(theSubs), theSubs = {theSubs}; end
%	if isequal(theSubs{1}, inf)
%		if length(theStruct) == 1
%			varargout{1} = varargin{1};
%			theFcn = '';   % Done.
%		else
%			theStruct(1) = [];
%			varargin{2} = theStruct;
%		end
%	end
%case 'subsasgn'
%	theStruct = varargin{2};
%	theType = theStruct(1).type;
%	theSubs = theStruct(1).subs;
%	if ~iscell(theSubs), theSubs = {theSubs}; end
%	if isequal(theSubs{1}, inf)
%		if length(theStruct) == 1
%			varargout{1} = value(self, varargin{3});
%			theFcn = '';   % Done.
%		else
%			theStruct(1).subs = {':'};   % {...} required.
%			varargin{2} = theStruct;
%		end
%	end
%end
%
%switch theFcn
%case ''
%case 'subsindex'
%	varargout{1} = varargin{i} - 1;
%case 'subsref'
%	varargout{1} = feval(theFcn, varargin{:});
%case 'subsasgn'
%	result = feval(theFcn, varargin{:});
%	varargout{1} = value(self, result);
%case 'horzcat'
%	varargout{1} = [varargin{:}];
%case 'vertcat'
%	for i = 1:length(varargin)
%		varargin{i} = varargin{i}.';
%	end
%	varargout{1} = [varargin{:}].';
%otherwise
%	if nargout > 0
%		varargout = cell(1, nargout);
%		[varargout{:}] = feval(theFcn, varargin{:});
%	else
%		feval(theFcn, varargin{:});
%	end
%end
fclose(fout);

disp(' ## Installing: "full.m" (text)')
fout = fopen('full.m', 'w');
%function [varargout] = fcn(varargin)
%
%% generic/fcn -- Generic function.
%%  fcn(....) performs the function corresponding
%%   to the actual name of this M-file.  At least one of
%%   the arguments must be a "generic" object.
% 
%% Copyright (C) 1998 Dr. Charles R. Denham, ZYDECO.
%%  All Rights Reserved.
%%   Disclosure without explicit written consent from the
%%    copyright owner does not constitute publication.
% 
%% Version of 25-Oct-1998 19:12:45.
%
%if nargin < 1, help(mfilename), return, end
%
%if nargout > 0
%	varargout = cell(1, nargout);
%	[varargout{:}] = feval(mfilename, varargin{:});
%else
%	feval(mfilename, varargin{:});
%end
fclose(fout);

disp(' ## Installing: "ge.m" (text)')
fout = fopen('ge.m', 'w');
%function [varargout] = fcn(varargin)
%
%% generic/fcn -- Generic function.
%%  fcn(....) performs the function corresponding
%%   to the actual name of this M-file.  At least one of
%%   the arguments must be a "generic" object.
% 
%% Copyright (C) 1998 Dr. Charles R. Denham, ZYDECO.
%%  All Rights Reserved.
%%   Disclosure without explicit written consent from the
%%    copyright owner does not constitute publication.
% 
%% Version of 25-Oct-1998 19:12:45.
%
%if nargin < 1, help(mfilename), return, end
%
%if nargout > 0
%	varargout = cell(1, nargout);
%	[varargout{:}] = feval(mfilename, varargin{:});
%else
%	feval(mfilename, varargin{:});
%end
fclose(fout);

disp(' ## Installing: "generic.m" (text)')
fout = fopen('generic.m', 'w');
%function theResult = generic(theValue)
%
%% generic/generic -- Generic constructor.
%%  generic(theValue) returns a "generic" object,
%%   whose value is theValue, or [] if none is
%%   given.
% 
%% Copyright (C) 1998 Dr. Charles R. Denham, ZYDECO.
%%  All Rights Reserved.
%%   Disclosure without explicit written consent from the
%%    copyright owner does not constitute publication.
% 
%% Version of 25-Oct-1998 19:12:45.
%% Updated    03-Apr-2002 16:27:53.
%
%if nargin < 1 & nargout < 1
%	help(mfilename)
%	return
%end
%
%if nargin < 1, theValue = []; end
%
%theStruct.itsValue = [];
%
%self = class(theStruct, 'generic');
%
%self = value(self, theValue);
%
%if nargout > 0
%	theResult = self;
%else
%	disp(result)
%end
fclose(fout);

disp(' ## Installing: "gt.m" (text)')
fout = fopen('gt.m', 'w');
%function [varargout] = fcn(varargin)
%
%% generic/fcn -- Generic function.
%%  fcn(....) performs the function corresponding
%%   to the actual name of this M-file.  At least one of
%%   the arguments must be a "generic" object.
% 
%% Copyright (C) 1998 Dr. Charles R. Denham, ZYDECO.
%%  All Rights Reserved.
%%   Disclosure without explicit written consent from the
%%    copyright owner does not constitute publication.
% 
%% Version of 25-Oct-1998 19:12:45.
%
%if nargin < 1, help(mfilename), return, end
%
%if nargout > 0
%	varargout = cell(1, nargout);
%	[varargout{:}] = feval(mfilename, varargin{:});
%else
%	feval(mfilename, varargin{:});
%end
fclose(fout);

disp(' ## Installing: "horzcat.m" (text)')
fout = fopen('horzcat.m', 'w');
%function [varargout] = fcn(varargin)
%
%% generic/fcn -- Generic function.
%%  fcn(....) performs the function corresponding
%%   to the actual name of this M-file.  At least one of
%%   the arguments must be a "generic" object.
% 
%% Copyright (C) 1998 Dr. Charles R. Denham, ZYDECO.
%%  All Rights Reserved.
%%   Disclosure without explicit written consent from the
%%    copyright owner does not constitute publication.
% 
%% Version of 25-Oct-1998 19:12:45.
%
%if nargin < 1, help(mfilename), return, end
%
%if nargout > 0
%	varargout = cell(1, nargout);
%	[varargout{:}] = feval(mfilename, varargin{:});
%else
%	feval(mfilename, varargin{:});
%end
fclose(fout);

disp(' ## Installing: "imag.m" (text)')
fout = fopen('imag.m', 'w');
%function [varargout] = fcn(varargin)
%
%% generic/fcn -- Generic function.
%%  fcn(....) performs the function corresponding
%%   to the actual name of this M-file.  At least one of
%%   the arguments must be a "generic" object.
% 
%% Copyright (C) 1998 Dr. Charles R. Denham, ZYDECO.
%%  All Rights Reserved.
%%   Disclosure without explicit written consent from the
%%    copyright owner does not constitute publication.
% 
%% Version of 25-Oct-1998 19:12:45.
%
%if nargin < 1, help(mfilename), return, end
%
%if nargout > 0
%	varargout = cell(1, nargout);
%	[varargout{:}] = feval(mfilename, varargin{:});
%else
%	feval(mfilename, varargin{:});
%end
fclose(fout);

disp(' ## Installing: "isequal.m" (text)')
fout = fopen('isequal.m', 'w');
%function [varargout] = fcn(varargin)
%
%% generic/fcn -- Generic function.
%%  fcn(....) performs the function corresponding
%%   to the actual name of this M-file.  At least one of
%%   the arguments must be a "generic" object.
% 
%% Copyright (C) 1998 Dr. Charles R. Denham, ZYDECO.
%%  All Rights Reserved.
%%   Disclosure without explicit written consent from the
%%    copyright owner does not constitute publication.
% 
%% Version of 25-Oct-1998 19:12:45.
%
%if nargin < 1, help(mfilename), return, end
%
%if nargout > 0
%	varargout = cell(1, nargout);
%	[varargout{:}] = feval(mfilename, varargin{:});
%else
%	feval(mfilename, varargin{:});
%end
fclose(fout);

disp(' ## Installing: "isfinite.m" (text)')
fout = fopen('isfinite.m', 'w');
%function [varargout] = fcn(varargin)
%
%% generic/fcn -- Generic function.
%%  fcn(....) performs the function corresponding
%%   to the actual name of this M-file.  At least one of
%%   the arguments must be a "generic" object.
% 
%% Copyright (C) 1998 Dr. Charles R. Denham, ZYDECO.
%%  All Rights Reserved.
%%   Disclosure without explicit written consent from the
%%    copyright owner does not constitute publication.
% 
%% Version of 25-Oct-1998 19:12:45.
%
%if nargin < 1, help(mfilename), return, end
%
%if nargout > 0
%	varargout = cell(1, nargout);
%	[varargout{:}] = feval(mfilename, varargin{:});
%else
%	feval(mfilename, varargin{:});
%end
fclose(fout);

disp(' ## Installing: "isinf.m" (text)')
fout = fopen('isinf.m', 'w');
%function [varargout] = fcn(varargin)
%
%% generic/fcn -- Generic function.
%%  fcn(....) performs the function corresponding
%%   to the actual name of this M-file.  At least one of
%%   the arguments must be a "generic" object.
% 
%% Copyright (C) 1998 Dr. Charles R. Denham, ZYDECO.
%%  All Rights Reserved.
%%   Disclosure without explicit written consent from the
%%    copyright owner does not constitute publication.
% 
%% Version of 25-Oct-1998 19:12:45.
%
%if nargin < 1, help(mfilename), return, end
%
%if nargout > 0
%	varargout = cell(1, nargout);
%	[varargout{:}] = feval(mfilename, varargin{:});
%else
%	feval(mfilename, varargin{:});
%end
fclose(fout);

disp(' ## Installing: "isnan.m" (text)')
fout = fopen('isnan.m', 'w');
%function [varargout] = fcn(varargin)
%
%% generic/fcn -- Generic function.
%%  fcn(....) performs the function corresponding
%%   to the actual name of this M-file.  At least one of
%%   the arguments must be a "generic" object.
% 
%% Copyright (C) 1998 Dr. Charles R. Denham, ZYDECO.
%%  All Rights Reserved.
%%   Disclosure without explicit written consent from the
%%    copyright owner does not constitute publication.
% 
%% Version of 25-Oct-1998 19:12:45.
%
%if nargin < 1, help(mfilename), return, end
%
%if nargout > 0
%	varargout = cell(1, nargout);
%	[varargout{:}] = feval(mfilename, varargin{:});
%else
%	feval(mfilename, varargin{:});
%end
fclose(fout);

disp(' ## Installing: "isreal.m" (text)')
fout = fopen('isreal.m', 'w');
%function [varargout] = fcn(varargin)
%
%% generic/fcn -- Generic function.
%%  fcn(....) performs the function corresponding
%%   to the actual name of this M-file.  At least one of
%%   the arguments must be a "generic" object.
% 
%% Copyright (C) 1998 Dr. Charles R. Denham, ZYDECO.
%%  All Rights Reserved.
%%   Disclosure without explicit written consent from the
%%    copyright owner does not constitute publication.
% 
%% Version of 25-Oct-1998 19:12:45.
%
%if nargin < 1, help(mfilename), return, end
%
%if nargout > 0
%	varargout = cell(1, nargout);
%	[varargout{:}] = feval(mfilename, varargin{:});
%else
%	feval(mfilename, varargin{:});
%end
fclose(fout);

disp(' ## Installing: "ldivide.m" (text)')
fout = fopen('ldivide.m', 'w');
%function [varargout] = fcn(varargin)
%
%% generic/fcn -- Generic function.
%%  fcn(....) performs the function corresponding
%%   to the actual name of this M-file.  At least one of
%%   the arguments must be a "generic" object.
% 
%% Copyright (C) 1998 Dr. Charles R. Denham, ZYDECO.
%%  All Rights Reserved.
%%   Disclosure without explicit written consent from the
%%    copyright owner does not constitute publication.
% 
%% Version of 25-Oct-1998 19:12:45.
%
%if nargin < 1, help(mfilename), return, end
%
%if nargout > 0
%	varargout = cell(1, nargout);
%	[varargout{:}] = feval(mfilename, varargin{:});
%else
%	feval(mfilename, varargin{:});
%end
fclose(fout);

disp(' ## Installing: "le.m" (text)')
fout = fopen('le.m', 'w');
%function [varargout] = fcn(varargin)
%
%% generic/fcn -- Generic function.
%%  fcn(....) performs the function corresponding
%%   to the actual name of this M-file.  At least one of
%%   the arguments must be a "generic" object.
% 
%% Copyright (C) 1998 Dr. Charles R. Denham, ZYDECO.
%%  All Rights Reserved.
%%   Disclosure without explicit written consent from the
%%    copyright owner does not constitute publication.
% 
%% Version of 25-Oct-1998 19:12:45.
%
%if nargin < 1, help(mfilename), return, end
%
%if nargout > 0
%	varargout = cell(1, nargout);
%	[varargout{:}] = feval(mfilename, varargin{:});
%else
%	feval(mfilename, varargin{:});
%end
fclose(fout);

disp(' ## Installing: "length.m" (text)')
fout = fopen('length.m', 'w');
%function [varargout] = fcn(varargin)
%
%% generic/fcn -- Generic function.
%%  fcn(....) performs the function corresponding
%%   to the actual name of this M-file.  At least one of
%%   the arguments must be a "generic" object.
% 
%% Copyright (C) 1998 Dr. Charles R. Denham, ZYDECO.
%%  All Rights Reserved.
%%   Disclosure without explicit written consent from the
%%    copyright owner does not constitute publication.
% 
%% Version of 25-Oct-1998 19:12:45.
%
%if nargin < 1, help(mfilename), return, end
%
%if nargout > 0
%	varargout = cell(1, nargout);
%	[varargout{:}] = feval(mfilename, varargin{:});
%else
%	feval(mfilename, varargin{:});
%end
fclose(fout);

disp(' ## Installing: "logical.m" (text)')
fout = fopen('logical.m', 'w');
%function [varargout] = fcn(varargin)
%
%% generic/fcn -- Generic function.
%%  fcn(....) performs the function corresponding
%%   to the actual name of this M-file.  At least one of
%%   the arguments must be a "generic" object.
% 
%% Copyright (C) 1998 Dr. Charles R. Denham, ZYDECO.
%%  All Rights Reserved.
%%   Disclosure without explicit written consent from the
%%    copyright owner does not constitute publication.
% 
%% Version of 25-Oct-1998 19:12:45.
%
%if nargin < 1, help(mfilename), return, end
%
%if nargout > 0
%	varargout = cell(1, nargout);
%	[varargout{:}] = feval(mfilename, varargin{:});
%else
%	feval(mfilename, varargin{:});
%end
fclose(fout);

disp(' ## Installing: "lt.m" (text)')
fout = fopen('lt.m', 'w');
%function [varargout] = fcn(varargin)
%
%% generic/fcn -- Generic function.
%%  fcn(....) performs the function corresponding
%%   to the actual name of this M-file.  At least one of
%%   the arguments must be a "generic" object.
% 
%% Copyright (C) 1998 Dr. Charles R. Denham, ZYDECO.
%%  All Rights Reserved.
%%   Disclosure without explicit written consent from the
%%    copyright owner does not constitute publication.
% 
%% Version of 25-Oct-1998 19:12:45.
%
%if nargin < 1, help(mfilename), return, end
%
%if nargout > 0
%	varargout = cell(1, nargout);
%	[varargout{:}] = feval(mfilename, varargin{:});
%else
%	feval(mfilename, varargin{:});
%end
fclose(fout);

disp(' ## Installing: "minus.m" (text)')
fout = fopen('minus.m', 'w');
%function [varargout] = fcn(varargin)
%
%% generic/fcn -- Generic function.
%%  fcn(....) performs the function corresponding
%%   to the actual name of this M-file.  At least one of
%%   the arguments must be a "generic" object.
% 
%% Copyright (C) 1998 Dr. Charles R. Denham, ZYDECO.
%%  All Rights Reserved.
%%   Disclosure without explicit written consent from the
%%    copyright owner does not constitute publication.
% 
%% Version of 25-Oct-1998 19:12:45.
%
%if nargin < 1, help(mfilename), return, end
%
%if nargout > 0
%	varargout = cell(1, nargout);
%	[varargout{:}] = feval(mfilename, varargin{:});
%else
%	feval(mfilename, varargin{:});
%end
fclose(fout);

disp(' ## Installing: "mldivide.m" (text)')
fout = fopen('mldivide.m', 'w');
%function [varargout] = fcn(varargin)
%
%% generic/fcn -- Generic function.
%%  fcn(....) performs the function corresponding
%%   to the actual name of this M-file.  At least one of
%%   the arguments must be a "generic" object.
% 
%% Copyright (C) 1998 Dr. Charles R. Denham, ZYDECO.
%%  All Rights Reserved.
%%   Disclosure without explicit written consent from the
%%    copyright owner does not constitute publication.
% 
%% Version of 25-Oct-1998 19:12:45.
%
%if nargin < 1, help(mfilename), return, end
%
%if nargout > 0
%	varargout = cell(1, nargout);
%	[varargout{:}] = feval(mfilename, varargin{:});
%else
%	feval(mfilename, varargin{:});
%end
fclose(fout);

disp(' ## Installing: "mpower.m" (text)')
fout = fopen('mpower.m', 'w');
%function [varargout] = fcn(varargin)
%
%% generic/fcn -- Generic function.
%%  fcn(....) performs the function corresponding
%%   to the actual name of this M-file.  At least one of
%%   the arguments must be a "generic" object.
% 
%% Copyright (C) 1998 Dr. Charles R. Denham, ZYDECO.
%%  All Rights Reserved.
%%   Disclosure without explicit written consent from the
%%    copyright owner does not constitute publication.
% 
%% Version of 25-Oct-1998 19:12:45.
%
%if nargin < 1, help(mfilename), return, end
%
%if nargout > 0
%	varargout = cell(1, nargout);
%	[varargout{:}] = feval(mfilename, varargin{:});
%else
%	feval(mfilename, varargin{:});
%end
fclose(fout);

disp(' ## Installing: "mrdivide.m" (text)')
fout = fopen('mrdivide.m', 'w');
%function [varargout] = fcn(varargin)
%
%% generic/fcn -- Generic function.
%%  fcn(....) performs the function corresponding
%%   to the actual name of this M-file.  At least one of
%%   the arguments must be a "generic" object.
% 
%% Copyright (C) 1998 Dr. Charles R. Denham, ZYDECO.
%%  All Rights Reserved.
%%   Disclosure without explicit written consent from the
%%    copyright owner does not constitute publication.
% 
%% Version of 25-Oct-1998 19:12:45.
%
%if nargin < 1, help(mfilename), return, end
%
%if nargout > 0
%	varargout = cell(1, nargout);
%	[varargout{:}] = feval(mfilename, varargin{:});
%else
%	feval(mfilename, varargin{:});
%end
fclose(fout);

disp(' ## Installing: "mtimes.m" (text)')
fout = fopen('mtimes.m', 'w');
%function [varargout] = fcn(varargin)
%
%% generic/fcn -- Generic function.
%%  fcn(....) performs the function corresponding
%%   to the actual name of this M-file.  At least one of
%%   the arguments must be a "generic" object.
% 
%% Copyright (C) 1998 Dr. Charles R. Denham, ZYDECO.
%%  All Rights Reserved.
%%   Disclosure without explicit written consent from the
%%    copyright owner does not constitute publication.
% 
%% Version of 25-Oct-1998 19:12:45.
%
%if nargin < 1, help(mfilename), return, end
%
%if nargout > 0
%	varargout = cell(1, nargout);
%	[varargout{:}] = feval(mfilename, varargin{:});
%else
%	feval(mfilename, varargin{:});
%end
fclose(fout);

disp(' ## Installing: "ne.m" (text)')
fout = fopen('ne.m', 'w');
%function [varargout] = fcn(varargin)
%
%% generic/fcn -- Generic function.
%%  fcn(....) performs the function corresponding
%%   to the actual name of this M-file.  At least one of
%%   the arguments must be a "generic" object.
% 
%% Copyright (C) 1998 Dr. Charles R. Denham, ZYDECO.
%%  All Rights Reserved.
%%   Disclosure without explicit written consent from the
%%    copyright owner does not constitute publication.
% 
%% Version of 25-Oct-1998 19:12:45.
%
%if nargin < 1, help(mfilename), return, end
%
%if nargout > 0
%	varargout = cell(1, nargout);
%	[varargout{:}] = feval(mfilename, varargin{:});
%else
%	feval(mfilename, varargin{:});
%end
fclose(fout);

disp(' ## Installing: "not.m" (text)')
fout = fopen('not.m', 'w');
%function [varargout] = fcn(varargin)
%
%% generic/fcn -- Generic function.
%%  fcn(....) performs the function corresponding
%%   to the actual name of this M-file.  At least one of
%%   the arguments must be a "generic" object.
% 
%% Copyright (C) 1998 Dr. Charles R. Denham, ZYDECO.
%%  All Rights Reserved.
%%   Disclosure without explicit written consent from the
%%    copyright owner does not constitute publication.
% 
%% Version of 25-Oct-1998 19:12:45.
%
%if nargin < 1, help(mfilename), return, end
%
%if nargout > 0
%	varargout = cell(1, nargout);
%	[varargout{:}] = feval(mfilename, varargin{:});
%else
%	feval(mfilename, varargin{:});
%end
fclose(fout);

disp(' ## Installing: "numel.m" (text)')
fout = fopen('numel.m', 'w');
%function theResult = numel(varargin)
%
%% class/numel -- Overloaded NUMEL.
%%  numel(varargin) is called by Matlab 6.1+ during SUBSREF
%%   and SUBSASGN operations to figure out how many output
%%   and input arguments to expect, respectively.  We
%%   believe the answer should always be 1, in keeping
%%   with the way we have traditionally programmed.
% 
%% Copyright (C) 2001 Dr. Charles R. Denham, ZYDECO.
%%  All Rights Reserved.
%%   Disclosure without explicit written consent from the
%%    copyright owner does not constitute publication.
% 
%% Version of 30-Jul-2001 15:45:20.
%% Updated    30-Jul-2001 15:45:20.
%
%theResult = numel_default(varargin{:});
fclose(fout);

disp(' ## Installing: "or.m" (text)')
fout = fopen('or.m', 'w');
%function [varargout] = fcn(varargin)
%
%% generic/fcn -- Generic function.
%%  fcn(....) performs the function corresponding
%%   to the actual name of this M-file.  At least one of
%%   the arguments must be a "generic" object.
% 
%% Copyright (C) 1998 Dr. Charles R. Denham, ZYDECO.
%%  All Rights Reserved.
%%   Disclosure without explicit written consent from the
%%    copyright owner does not constitute publication.
% 
%% Version of 25-Oct-1998 19:12:45.
%
%if nargin < 1, help(mfilename), return, end
%
%if nargout > 0
%	varargout = cell(1, nargout);
%	[varargout{:}] = feval(mfilename, varargin{:});
%else
%	feval(mfilename, varargin{:});
%end
fclose(fout);

disp(' ## Installing: "plus.m" (text)')
fout = fopen('plus.m', 'w');
%function [varargout] = fcn(varargin)
%
%% generic/fcn -- Generic function.
%%  fcn(....) performs the function corresponding
%%   to the actual name of this M-file.  At least one of
%%   the arguments must be a "generic" object.
% 
%% Copyright (C) 1998 Dr. Charles R. Denham, ZYDECO.
%%  All Rights Reserved.
%%   Disclosure without explicit written consent from the
%%    copyright owner does not constitute publication.
% 
%% Version of 25-Oct-1998 19:12:45.
%
%if nargin < 1, help(mfilename), return, end
%
%if nargout > 0
%	varargout = cell(1, nargout);
%	[varargout{:}] = feval(mfilename, varargin{:});
%else
%	feval(mfilename, varargin{:});
%end
fclose(fout);

disp(' ## Installing: "power.m" (text)')
fout = fopen('power.m', 'w');
%function [varargout] = fcn(varargin)
%
%% generic/fcn -- Generic function.
%%  fcn(....) performs the function corresponding
%%   to the actual name of this M-file.  At least one of
%%   the arguments must be a "generic" object.
% 
%% Copyright (C) 1998 Dr. Charles R. Denham, ZYDECO.
%%  All Rights Reserved.
%%   Disclosure without explicit written consent from the
%%    copyright owner does not constitute publication.
% 
%% Version of 25-Oct-1998 19:12:45.
%
%if nargin < 1, help(mfilename), return, end
%
%if nargout > 0
%	varargout = cell(1, nargout);
%	[varargout{:}] = feval(mfilename, varargin{:});
%else
%	feval(mfilename, varargin{:});
%end
fclose(fout);

disp(' ## Installing: "rdivide.m" (text)')
fout = fopen('rdivide.m', 'w');
%function [varargout] = fcn(varargin)
%
%% generic/fcn -- Generic function.
%%  fcn(....) performs the function corresponding
%%   to the actual name of this M-file.  At least one of
%%   the arguments must be a "generic" object.
% 
%% Copyright (C) 1998 Dr. Charles R. Denham, ZYDECO.
%%  All Rights Reserved.
%%   Disclosure without explicit written consent from the
%%    copyright owner does not constitute publication.
% 
%% Version of 25-Oct-1998 19:12:45.
%
%if nargin < 1, help(mfilename), return, end
%
%if nargout > 0
%	varargout = cell(1, nargout);
%	[varargout{:}] = feval(mfilename, varargin{:});
%else
%	feval(mfilename, varargin{:});
%end
fclose(fout);

disp(' ## Installing: "real.m" (text)')
fout = fopen('real.m', 'w');
%function [varargout] = fcn(varargin)
%
%% generic/fcn -- Generic function.
%%  fcn(....) performs the function corresponding
%%   to the actual name of this M-file.  At least one of
%%   the arguments must be a "generic" object.
% 
%% Copyright (C) 1998 Dr. Charles R. Denham, ZYDECO.
%%  All Rights Reserved.
%%   Disclosure without explicit written consent from the
%%    copyright owner does not constitute publication.
% 
%% Version of 25-Oct-1998 19:12:45.
%
%if nargin < 1, help(mfilename), return, end
%
%if nargout > 0
%	varargout = cell(1, nargout);
%	[varargout{:}] = feval(mfilename, varargin{:});
%else
%	feval(mfilename, varargin{:});
%end
fclose(fout);

disp(' ## Installing: "size.m" (text)')
fout = fopen('size.m', 'w');
%function [varargout] = fcn(varargin)
%
%% generic/fcn -- Generic function.
%%  fcn(....) performs the function corresponding
%%   to the actual name of this M-file.  At least one of
%%   the arguments must be a "generic" object.
% 
%% Copyright (C) 1998 Dr. Charles R. Denham, ZYDECO.
%%  All Rights Reserved.
%%   Disclosure without explicit written consent from the
%%    copyright owner does not constitute publication.
% 
%% Version of 25-Oct-1998 19:12:45.
%
%if nargin < 1, help(mfilename), return, end
%
%if nargout > 0
%	varargout = cell(1, nargout);
%	[varargout{:}] = feval(mfilename, varargin{:});
%else
%	feval(mfilename, varargin{:});
%end
fclose(fout);

disp(' ## Installing: "sparse.m" (text)')
fout = fopen('sparse.m', 'w');
%function [varargout] = fcn(varargin)
%
%% generic/fcn -- Generic function.
%%  fcn(....) performs the function corresponding
%%   to the actual name of this M-file.  At least one of
%%   the arguments must be a "generic" object.
% 
%% Copyright (C) 1998 Dr. Charles R. Denham, ZYDECO.
%%  All Rights Reserved.
%%   Disclosure without explicit written consent from the
%%    copyright owner does not constitute publication.
% 
%% Version of 25-Oct-1998 19:12:45.
%
%if nargin < 1, help(mfilename), return, end
%
%if nargout > 0
%	varargout = cell(1, nargout);
%	[varargout{:}] = feval(mfilename, varargin{:});
%else
%	feval(mfilename, varargin{:});
%end
fclose(fout);

disp(' ## Installing: "subsasgn.m" (text)')
fout = fopen('subsasgn.m', 'w');
%function [varargout] = fcn(varargin)
%
%% generic/fcn -- Generic function.
%%  fcn(....) performs the function corresponding
%%   to the actual name of this M-file.  At least one of
%%   the arguments must be a "generic" object.
% 
%% Copyright (C) 1998 Dr. Charles R. Denham, ZYDECO.
%%  All Rights Reserved.
%%   Disclosure without explicit written consent from the
%%    copyright owner does not constitute publication.
% 
%% Version of 25-Oct-1998 19:12:45.
%
%if nargin < 1, help(mfilename), return, end
%
%if nargout > 0
%	varargout = cell(1, nargout);
%	[varargout{:}] = feval(mfilename, varargin{:});
%else
%	feval(mfilename, varargin{:});
%end
fclose(fout);

disp(' ## Installing: "subsindex.m" (text)')
fout = fopen('subsindex.m', 'w');
%function [varargout] = fcn(varargin)
%
%% generic/fcn -- Generic function.
%%  fcn(....) performs the function corresponding
%%   to the actual name of this M-file.  At least one of
%%   the arguments must be a "generic" object.
% 
%% Copyright (C) 1998 Dr. Charles R. Denham, ZYDECO.
%%  All Rights Reserved.
%%   Disclosure without explicit written consent from the
%%    copyright owner does not constitute publication.
% 
%% Version of 25-Oct-1998 19:12:45.
%
%if nargin < 1, help(mfilename), return, end
%
%if nargout > 0
%	varargout = cell(1, nargout);
%	[varargout{:}] = feval(mfilename, varargin{:});
%else
%	feval(mfilename, varargin{:});
%end
fclose(fout);

disp(' ## Installing: "subsref.m" (text)')
fout = fopen('subsref.m', 'w');
%function [varargout] = fcn(varargin)
%
%% generic/fcn -- Generic function.
%%  fcn(....) performs the function corresponding
%%   to the actual name of this M-file.  At least one of
%%   the arguments must be a "generic" object.
% 
%% Copyright (C) 1998 Dr. Charles R. Denham, ZYDECO.
%%  All Rights Reserved.
%%   Disclosure without explicit written consent from the
%%    copyright owner does not constitute publication.
% 
%% Version of 25-Oct-1998 19:12:45.
%
%if nargin < 1, help(mfilename), return, end
%
%if nargout > 0
%	varargout = cell(1, nargout);
%	[varargout{:}] = feval(mfilename, varargin{:});
%else
%	feval(mfilename, varargin{:});
%end
fclose(fout);

disp(' ## Installing: "times.m" (text)')
fout = fopen('times.m', 'w');
%function [varargout] = fcn(varargin)
%
%% generic/fcn -- Generic function.
%%  fcn(....) performs the function corresponding
%%   to the actual name of this M-file.  At least one of
%%   the arguments must be a "generic" object.
% 
%% Copyright (C) 1998 Dr. Charles R. Denham, ZYDECO.
%%  All Rights Reserved.
%%   Disclosure without explicit written consent from the
%%    copyright owner does not constitute publication.
% 
%% Version of 25-Oct-1998 19:12:45.
%
%if nargin < 1, help(mfilename), return, end
%
%if nargout > 0
%	varargout = cell(1, nargout);
%	[varargout{:}] = feval(mfilename, varargin{:});
%else
%	feval(mfilename, varargin{:});
%end
fclose(fout);

disp(' ## Installing: "transpose.m" (text)')
fout = fopen('transpose.m', 'w');
%function [varargout] = fcn(varargin)
%
%% generic/fcn -- Generic function.
%%  fcn(....) performs the function corresponding
%%   to the actual name of this M-file.  At least one of
%%   the arguments must be a "generic" object.
% 
%% Copyright (C) 1998 Dr. Charles R. Denham, ZYDECO.
%%  All Rights Reserved.
%%   Disclosure without explicit written consent from the
%%    copyright owner does not constitute publication.
% 
%% Version of 25-Oct-1998 19:12:45.
%
%if nargin < 1, help(mfilename), return, end
%
%if nargout > 0
%	varargout = cell(1, nargout);
%	[varargout{:}] = feval(mfilename, varargin{:});
%else
%	feval(mfilename, varargin{:});
%end
fclose(fout);

disp(' ## Installing: "uint32.m" (text)')
fout = fopen('uint32.m', 'w');
%function [varargout] = fcn(varargin)
%
%% generic/fcn -- Generic function.
%%  fcn(....) performs the function corresponding
%%   to the actual name of this M-file.  At least one of
%%   the arguments must be a "generic" object.
% 
%% Copyright (C) 1998 Dr. Charles R. Denham, ZYDECO.
%%  All Rights Reserved.
%%   Disclosure without explicit written consent from the
%%    copyright owner does not constitute publication.
% 
%% Version of 25-Oct-1998 19:12:45.
%
%if nargin < 1, help(mfilename), return, end
%
%if nargout > 0
%	varargout = cell(1, nargout);
%	[varargout{:}] = feval(mfilename, varargin{:});
%else
%	feval(mfilename, varargin{:});
%end
fclose(fout);

disp(' ## Installing: "uint8.m" (text)')
fout = fopen('uint8.m', 'w');
%function [varargout] = fcn(varargin)
%
%% generic/fcn -- Generic function.
%%  fcn(....) performs the function corresponding
%%   to the actual name of this M-file.  At least one of
%%   the arguments must be a "generic" object.
% 
%% Copyright (C) 1998 Dr. Charles R. Denham, ZYDECO.
%%  All Rights Reserved.
%%   Disclosure without explicit written consent from the
%%    copyright owner does not constitute publication.
% 
%% Version of 25-Oct-1998 19:12:45.
%
%if nargin < 1, help(mfilename), return, end
%
%if nargout > 0
%	varargout = cell(1, nargout);
%	[varargout{:}] = feval(mfilename, varargin{:});
%else
%	feval(mfilename, varargin{:});
%end
fclose(fout);

disp(' ## Installing: "uminus.m" (text)')
fout = fopen('uminus.m', 'w');
%function [varargout] = fcn(varargin)
%
%% generic/fcn -- Generic function.
%%  fcn(....) performs the function corresponding
%%   to the actual name of this M-file.  At least one of
%%   the arguments must be a "generic" object.
% 
%% Copyright (C) 1998 Dr. Charles R. Denham, ZYDECO.
%%  All Rights Reserved.
%%   Disclosure without explicit written consent from the
%%    copyright owner does not constitute publication.
% 
%% Version of 25-Oct-1998 19:12:45.
%
%if nargin < 1, help(mfilename), return, end
%
%if nargout > 0
%	varargout = cell(1, nargout);
%	[varargout{:}] = feval(mfilename, varargin{:});
%else
%	feval(mfilename, varargin{:});
%end
fclose(fout);

disp(' ## Installing: "uplus.m" (text)')
fout = fopen('uplus.m', 'w');
%function [varargout] = fcn(varargin)
%
%% generic/fcn -- Generic function.
%%  fcn(....) performs the function corresponding
%%   to the actual name of this M-file.  At least one of
%%   the arguments must be a "generic" object.
% 
%% Copyright (C) 1998 Dr. Charles R. Denham, ZYDECO.
%%  All Rights Reserved.
%%   Disclosure without explicit written consent from the
%%    copyright owner does not constitute publication.
% 
%% Version of 25-Oct-1998 19:12:45.
%
%if nargin < 1, help(mfilename), return, end
%
%if nargout > 0
%	varargout = cell(1, nargout);
%	[varargout{:}] = feval(mfilename, varargin{:});
%else
%	feval(mfilename, varargin{:});
%end
fclose(fout);

disp(' ## Installing: "value.m" (text)')
fout = fopen('value.m', 'w');
%function theResult = value(self, theValue)
%
%% generic/value -- Value of an object.
%%  theResult = value(self) returns the value associated
%%   with self, an object in a "generic" sub-class.
%%   The value must be suitable for the operation
%%   in which the object is embedded.
%%  theResult = value(self, theValue) updates self
%%   with theValue.  Self is returned.
%%
%%  Overload this method in derived classes.
% 
%% Copyright (C) 1998 Dr. Charles R. Denham, ZYDECO.
%%  All Rights Reserved.
%%   Disclosure without explicit written consent from the
%%    copyright owner does not constitute publication.
% 
%% Version of 27-Oct-1998 07:04:51.
%% Updated    03-Apr-2002 16:34:14.
%
%if nargin < 1, help(mfilename), return, end
%
%if nargin == 1
%	result = self.itsValue;
%elseif nargin == 2
%	self.itsValue = theValue;
%	result = self;
%end
%
%if nargout > 0
%	theResult = result;
%else
%	disp(result)
%end
fclose(fout);

disp(' ## Installing: "version.m" (text)')
fout = fopen('version.m', 'w');
%function version(self)
%
%% Version of 30-Jul-2002 14:27:48.
%
%helpdlg(help(mfilename), 'generic')
fclose(fout);

disp(' ## Installing: "vertcat.m" (text)')
fout = fopen('vertcat.m', 'w');
%function [varargout] = fcn(varargin)
%
%% generic/fcn -- Generic function.
%%  fcn(....) performs the function corresponding
%%   to the actual name of this M-file.  At least one of
%%   the arguments must be a "generic" object.
% 
%% Copyright (C) 1998 Dr. Charles R. Denham, ZYDECO.
%%  All Rights Reserved.
%%   Disclosure without explicit written consent from the
%%    copyright owner does not constitute publication.
% 
%% Version of 25-Oct-1998 19:12:45.
%
%if nargin < 1, help(mfilename), return, end
%
%if nargout > 0
%	varargout = cell(1, nargout);
%	[varargout{:}] = feval(mfilename, varargin{:});
%else
%	feval(mfilename, varargin{:});
%end
fclose(fout);
cd ('..')
cd ('..')
disp(' ')
disp(' ## Place "generic" in your Matlab path,')
disp(' ## then restart Matlab.')
disp(' ')