%%%%%%%%%%%%%%%%%%%%%%%%%%
%
% Package delims 
% source code
% Version 2.0
% 2016-02-14
% Colin C. Graham
% Haines Junction Yukon Canada
% ccgraham@alum.mit.edu
%
% Revision history:
%  20156/02/01
% a) Added the next 3 lines
%    This material is subject to the LaTeX Project Public License 1.3. See
%    http://www.ctan.org/tex-archive/help/Catalogue/licenses.lppl.html for the
%    details of that license.
% b) Tidied up the code visually & added some explanatory comments
% c) Added the \llgg set of delimiters (5 sizes in plain and bold. No
%    two sided versions.
% d) Added \valentine and \diamondsgbf.
% e) Added L and R macros for one-sided (easier to read); 
%    retained earlier versions
% f) Added  \bnom
% g) Added \D... versions (no sizing; no BF)
%
%%%%%%%%%%%%%%%%%%%%%%
% paired round parens
\newcommand\prn[1]{(#1)}
\newcommand\prnb[1]{\big{(}{#1}{\big)}}
\newcommand\prnbb[1]{\Big{(}{#1}{\Big)}}
\newcommand\prnbbb[1]{\bigg{(}{#1}{\bigg)}}
\newcommand\prnbbbb[1]{\Bigg{(}{#1}{\Bigg)}}
%%%%%%%%%%%%%
%  paired square braces
\newcommand\sqpr[1]{{[}{#1}{]}}
\newcommand\sqprb[1]{\big{[}{#1}{\big]}}
\newcommand\sqprbb[1]{\Big{[}{#1}{\Big]}}
\newcommand\sqprbbb[1]{\bigg{[}{#1}{\bigg]}}
\newcommand\sqprbbbb[1]{\Bigg{[}{#1}{\Bigg]}}
%%%%%%%%%%%%%%%%
% paired curly braces
\newcommand\crl[1]{{ \{ }{#1}{ \} }}
\newcommand\crlb[1]{\big{\{}{#1}\big{\}}}
\newcommand\crlbb[1]{\Big{\{ }{#1}\Big{\} }}
\newcommand\crlbbb[1]{\bigg{\{ }{#1}\bigg{\} }}
\newcommand\crlbbbb[1]{\Bigg{\{ }{#1}\Bigg{\} }}
%%%%%%%%%%
%% langle and rangle
\newcommand\ngl[1]{{ \langle }{#1}{\rangle}}
\newcommand\nglb[1]{\big{\langle}{#1}\big{\rangle}}
\newcommand\nglbb[1]{\Big{\langle}{#1}\Big{\rangle}}
\newcommand\nglbbb[1]{\bigg{\langle}{#1}\bigg{\rangle}}
\newcommand\nglbbbb[1]{\Bigg{\langle}{#1}\Bigg{\rangle}}
%%%%%%%%%%%%%%
%% floor
\newcommand\flr[1]{{ \lfloor }{#1}{\rfloor }}
\newcommand\flrb[1]{\big{\lfloor}{#1}\big{\lfloor}}
\newcommand\flrbb[1]{\Big{\lfloor}{#1}\Big{\rfloor}}
\newcommand\flrbbb[1]{\bigg{\lfloor}{#1}\bigg{\rfloor}}
\newcommand\flrbbbb[1]{\Bigg{\lfloor}{#1}\Bigg{\rfloor}}
%%%%%%%%%%%%%%%%%
% ceil
\newcommand\ceil[1]{{ \lceil }{#1}{\rceil }}
\newcommand\ceilb[1]{\big{\lceil}{#1}\big{\lceil}}
\newcommand\ceilbb[1]{\Big{\lceil}{#1}\Big{\rceil}}
\newcommand\ceilbbb[1]{\bigg{\lceil}{#1}\bigg{\rceil}}
\newcommand\ceilbbbb[1]{\Bigg{\lceil}{#1}\Bigg{\rceil}}
%%%%%%%%%%%%%%%%%%%%%%
%% vert
\newcommand\abs[1]{{ \vert }{#1}{\vert }}
\newcommand\absb[1]{\big{\vert}{#1}\big{\vert}}
\newcommand\absbb[1]{\Big{\vert}{#1}\Big{\vert}}
\newcommand\absbbb[1]{\bigg{\vert}{#1}\bigg{\vert}}
\newcommand\absbbbb[1]{\Bigg{\vert}{#1}\Bigg{\vert}}
%%%%%%%%%%%%%%%%%%%
%% Vert
\newcommand\nrm[1]{{ \Vert }{#1}{\Vert }}
\newcommand\nrmb[1]{\big{\Vert}{#1}\big{\Vert}}
\newcommand\nrmbb[1]{\Big{\Vert}{#1}\Big{\Vert}}
\newcommand\nrmbbb[1]{\bigg{\Vert}{#1}\bigg{\Vert}}
\newcommand\nrmbbbb[1]{\Bigg{\Vert}{#1}\Bigg{\Vert}}
%%%%%%%%%%%%%%%%%%%%
%Left delimeters
\newcommand \lprn{(} 
\newcommand \lprnb{\big{(}}
\newcommand \lprnbb{\Big{(}} 
\newcommand \lprnbbb{\bigg{(}} 
\newcommand \lprnbbbb{\Bigg{(}}
%
\newcommand \lsqpr{[}   
\newcommand \lsqprb{\big{[}  }
\newcommand \lsqprbb{\Big{[} }
\newcommand \lsqprbbb{\bigg{[}}
\newcommand \lsqprbbbb{\Bigg{[}}
%
\newcommand\lcrl{ \{ }
\newcommand\lcrlb{\big{ \{ }}
\newcommand\lcrlbb{\Big{ \{ }}
\newcommand\lcrlbbb{\bigg{ \{ }}
\newcommand\lcrlbbbb{\Bigg{ \{ }}
%
\newcommand\lceilb{\big{\lceil}}
\newcommand\lceilbb{\Big{\lceil}}
\newcommand\lceilbbb{\bigg{\lceil}}
\newcommand\lceilbbbb{\Bigg{\lceil}}
%
\newcommand\lflr{\lfloor}
\newcommand\lflrb{\big\lfloor}
\newcommand\lflrbb{\Big\lfloor}
\newcommand\lflrbbb{\bigg\lfloor}
\newcommand\lflrbbbb{\Bigg\lfloor}
%
\newcommand\lngl{\langle}
\newcommand\lnglb{\big\langle}
\newcommand\lnglbb{\Big\langle}
\newcommand\lnglbbb{\bigg\langle}
\newcommand\lnglbbbb{\Bigg\langle}
%
\newcommand\labs{\vert}  
\newcommand\labsb{\big\vert}  
\newcommand\labsbb{\Big\vert}  
\newcommand\labsbbb{\bigg\vert}  
\newcommand\labsbbbb{\Bigg\vert}  
%
\newcommand\lnrm{\Vert}  
\newcommand\lnrmb{\big\Vert}  
\newcommand\lnrmbb{\bigg\Vert}  
\newcommand\lnrmbbb{\bigg\Vert}  
\newcommand\lnrmbbbb{\Bigg\Vert}  
%
%Left delimeters - cap L
\newcommand\Lprn{(}
\newcommand\Lprnb{\big{(}}
\newcommand\Lprnbb{\Big{(}}
\newcommand\Lprnbbb{\bigg{(}}
\newcommand\Lprnbbbb{\Bigg{(}}
%
\newcommand\Lsqpr{[}
\newcommand\Lsqprb{\big{[}}
\newcommand\Lsqprbb{\Big{[}}
\newcommand\Lsqprbbb{\bigg{[}}
\newcommand\Lsqprbbbb{\Bigg{[}}
%
\newcommand\Lcrl{\{}
\newcommand\Lcrlb{\big{\{}}
\newcommand\Lcrlbb{\Big{\{}}
\newcommand\Lcrlbbb{\bigg{\{}}
\newcommand\Lcrlbbbb{\Bigg{\{}}
%
\newcommand\Lceilb{\big{\lceil}}
\newcommand\Lceilbb{\Big{\lceil}}
\newcommand\Lceilbbb{\bigg{\lceil}}
\newcommand\Lceilbbbb{\Bigg{\lceil}}
%
\newcommand\Lflr{\lfloor}
\newcommand\Lflrb{\big\lfloor}
\newcommand\Lflrbb{\Big\lfloor}
\newcommand\Lflrbbb{\bigg\lfloor}
\newcommand\Lflrbbbb{\Bigg\lfloor}
%
\newcommand\Lngl{\langle}
\newcommand\Lnglb{\big\langle}
\newcommand\Lnglbb{\Big\langle}
\newcommand\Lnglbbb{\bigg\langle}
\newcommand\Lnglbbbb{\Bigg\langle}
%
\newcommand\Labs{\vert}
\newcommand\Labsb{\big\vert}
\newcommand\Labsbb{\Big\vert}
\newcommand\Labsbbb{\bigg\vert}
\newcommand\Labsbbbb{\Bigg\vert}
%
\newcommand\Lnrm{\Vert}
\newcommand\Lnrmb{\big\Vert}
\newcommand\Lnrmbb{\bigg\Vert}
\newcommand\Lnrmbbb{\bigg\Vert}
\newcommand\Lnrmbbbb{\Bigg\Vert}
%
%Right delimeters
\newcommand\rprn{)}
\newcommand\rprnb{\big{)}}
\newcommand\rprnbb{\Big{)}}
\newcommand\rprnbbb{\bigg{)}}
\newcommand\rprnbbbb{\Bigg{)}}
%
\newcommand\rsqpr{]}
\newcommand\rsqprb{\big]}
\newcommand\rsqprbb{\Big]}
\newcommand\rsqprbbb{\bigg]}
\newcommand\rsqprbbbb{\Bigg]}
%
\newcommand\rcrl{\}}
\newcommand\rcrlb{\big{\}}}
\newcommand\rcrlbb{\Big{\}}}
\newcommand\rcrlbbb{\bigg{\}}}
\newcommand\rcrlbbbb{\Bigg{\}}}
%
\newcommand\rceilb{\big{\rceil}}
\newcommand\rceilbb{\Big{\rceil}}
\newcommand\rceilbbb{\bigg{\rceil}}
\newcommand\rceilbbbb{\Bigg{\rceil}}
%
\newcommand\rflr{\rfloor}
\newcommand\rflrb{\big\rfloor}
\newcommand\rflrbb{\Big\rfloor}
\newcommand\rflrbbb{\bigg\rfloor}
\newcommand\rflrbbbb{\Bigg\rfloor}
%
\newcommand\rngl{\rangle}
\newcommand\rnglb{\big\rangle}
\newcommand\rnglbb{\Big\rangle}
\newcommand\rnglbbb{\bigg\rangle}
\newcommand\rnglbbbb{\Bigg\rangle}
%
\newcommand\rabs{\vert}
\newcommand\rabsb{\big\vert}
\newcommand\rabsbb{\Big\vert}
\newcommand\rabsbbb{\bigg\vert}
\newcommand\rabsbbbb{\Bigg\vert}
%
\newcommand\rnrm{\Vert}
\newcommand\rnrmb{\big\Vert}
\newcommand\rnrmbb{\bigg\Vert}
\newcommand\rnrmbbb{\bigg\Vert}
\newcommand\rnrmbbbb{\Bigg\Vert}
%
%Right delimeters - R versions
\newcommand\Rprn{)}
\newcommand\Rprnb{\big{)}}
\newcommand\Rprnbb{\Big{)}}
\newcommand\Rprnbbb{\bigg{)}}
\newcommand\Rprnbbbb{\Bigg{)}}
%
\newcommand\Rsqpr{]}
\newcommand\Rsqprb{\big]}
\newcommand\Rsqprbb{\Big]}
\newcommand\Rsqprbbb{\bigg]}
\newcommand\Rsqprbbbb{\Bigg]}
%
\newcommand\Rcrl{\}}
\newcommand\Rcrlb{\big{\}}}
\newcommand\Rcrlbb{\Big{\}}}
\newcommand\Rcrlbbb{\bigg{\}}}
\newcommand\Rcrlbbbb{\Bigg{\}}}
%
\newcommand\Rceilb{\big{\rceil}}
\newcommand\Rceilbb{\Big{\rceil}}
\newcommand\Rceilbbb{\bigg{\rceil}}
\newcommand\Rceilbbbb{\Bigg{\rceil}}
%
\newcommand\Rflr{\rfloor}
\newcommand\Rflrb{\big\rfloor}
\newcommand\Rflrbb{\Big\rfloor}
\newcommand\Rflrbbb{\bigg\rfloor}
\newcommand\Rflrbbbb{\Bigg\rfloor}
%
\newcommand\Rngl{\rangle}
\newcommand\Rnglb{\big\rangle}
\newcommand\Rnglbb{\Big\rangle}
\newcommand\Rnglbbb{\bigg\rangle}
\newcommand\Rnglbbbb{\Bigg\rangle}
%
\newcommand\Rabs{\vert}
\newcommand\Rabsb{\big\vert}
\newcommand\Rabsbb{\Big\vert}
\newcommand\Rabsbbb{\bigg\vert}
\newcommand\Rabsbbbb{\Bigg\vert}
%
\newcommand\Rnrm{\Vert}
\newcommand\Rnrmb{\big\Vert}
\newcommand\Rnrmbb{\bigg\Vert}
\newcommand\Rnrmbbb{\bigg\Vert}
\newcommand\Rnrmbbbb{\Bigg\Vert}
%
%boldfaceddelims
%    Bold left delimeters
\newcommand\Blprn{\pmb{{(}}}
\newcommand\Blprnb{\pmb{\big{(}}}
\newcommand\Blprnbb{\pmb{\Big{(}}}
\newcommand\Blprnbbb{\pmb{\bigg{(}}}
\newcommand\Blprnbbbb{\pmb{\Bigg{(}}}
%
\newcommand\Blsqpr{\pmb{{[}}}
\newcommand\Blsqprb{\pmb{\big{[}}}
\newcommand\Blsqprbb{\pmb{\Big{[}}}
\newcommand\Blsqprbbb{\pmb{\bigg{[}}}
\newcommand\Blsqprbbbb{\pmb{\Bigg{[}}}
%
\newcommand\Blcrl{\pmb{{\{}}}
\newcommand\Blcrlb{\pmb{\big{\{}}}
\newcommand\Blcrlbb{\pmb{\Big{\{}}}
\newcommand\Blcrlbbb{\pmb{\bigg{\{}}}
\newcommand\Blcrlbbbb{\pmb{\Bigg{\{}}}
%
\newcommand\Blceil{\pmb{{\lceil}}}
\newcommand\Blceilb{\pmb{\big{\lceil}}}
\newcommand\Blceilbb{\pmb{\Big{\lceil}}}
\newcommand\Blceilbbb{\pmb{\bigg{\lceil}}}
\newcommand\Blceilbbbb{\pmb{\Bigg{\lceil}}}
%
\newcommand\Blflr{\pmb{\lfloor}}
\newcommand\Blflrb{\pmb{\big\lfloor}}
\newcommand\Blflrbb{\pmb{\Big\lfloor}}
\newcommand\Blflrbbb{\pmb{\bigg\lfloor}}
\newcommand\Blflrbbbb{\pmb{\Bigg\lfloor}}
%
\newcommand\Blngl{\pmb{\langle}}
\newcommand\Blnglb{\pmb{\big\langle}}
\newcommand\Blnglbb{\pmb{\Big\langle}}
\newcommand\Blnglbbb{\pmb{\bigg\langle}}
\newcommand\Blnglbbbb{\pmb{\Bigg\langle}}
%
\newcommand\Blabs{\pmb{\vert}}
\newcommand\Blabsb{\pmb{\big\vert}}
\newcommand\Blabsbb{\pmb{\Big\vert}}
\newcommand\Blabsbbb{\pmb{\bigg\vert}}
\newcommand\Blabsbbbb{\pmb{\Bigg\vert}}
%
\newcommand\Blnrm{\pmb{\Vert}}
\newcommand\Blnrmb{\pmb{\big\Vert}}
\newcommand\Blnrmbb{\pmb{\bigg\Vert}}
\newcommand\Blnrmbbb{\pmb{\bigg\Vert}}
\newcommand\Blnrmbbbb{\pmb{\Bigg\Vert}}
%
%    Bold left delimeters - L version
\newcommand\BLprn{\pmb{{(}}}
\newcommand\BLprnb{\pmb{\big{(}}}
\newcommand\BLprnbb{\pmb{\Big{(}}}
\newcommand\BLprnbbb{\pmb{\bigg{(}}}
\newcommand\BLprnbbbb{\pmb{\Bigg{(}}}
%
\newcommand\BLsqpr{\pmb{{[}}}
\newcommand\BLsqprb{\pmb{\big{[}}}
\newcommand\BLsqprbb{\pmb{\Big{[}}}
\newcommand\BLsqprbbb{\pmb{\bigg{[}}}
\newcommand\BLsqprbbbb{\pmb{\Bigg{[}}}
%
\newcommand\BLcrl{\pmb{{\{}}}
\newcommand\BLcrlb{\pmb{\big{\{}}}
\newcommand\BLcrlbb{\pmb{\Big{\{}}}
\newcommand\BLcrlbbb{\pmb{\bigg{\{}}}
\newcommand\BLcrlbbbb{\pmb{\Bigg{\{}}}
%
\newcommand\BLceil{\pmb{{\lceil}}}
\newcommand\BLceilb{\pmb{\big{\lceil}}}
\newcommand\BLceilbb{\pmb{\Big{\lceil}}}
\newcommand\BLceilbbb{\pmb{\bigg{\lceil}}}
\newcommand\BLceilbbbb{\pmb{\Bigg{\lceil}}}
%
\newcommand\BLflr{\pmb{\lfloor}}
\newcommand\BLflrb{\pmb{\big\lfloor}}
\newcommand\BLflrbb{\pmb{\Big\lfloor}}
\newcommand\BLflrbbb{\pmb{\bigg\lfloor}}
\newcommand\BLflrbbbb{\pmb{\Bigg\lfloor}}
%
\newcommand\BLngl{\pmb{\langle}}
\newcommand\BLnglb{\pmb{\big\langle}}
\newcommand\BLnglbb{\pmb{\Big\langle}}
\newcommand\BLnglbbb{\pmb{\bigg\langle}}
\newcommand\BLnglbbbb{\pmb{\Bigg\langle}}
%
\newcommand\BLabs{\pmb{\vert}}
\newcommand\BLabsb{\pmb{\big\vert}}
\newcommand\BLabsbb{\pmb{\Big\vert}}
\newcommand\BLabsbbb{\pmb{\bigg\vert}}
\newcommand\BLabsbbbb{\pmb{\Bigg\vert}}
%
\newcommand\BLnrm{\pmb{\Vert}}
\newcommand\BLnrmb{\pmb{\big\Vert}}
\newcommand\BLnrmbb{\pmb{\bigg\Vert}}
\newcommand\BLnrmbbb{\pmb{\bigg\Vert}}
\newcommand\BLnrmbbbb{\pmb{\Bigg\Vert}}
%
%BF Right delimeters
\newcommand\Brprn{\pmb{)}}
\newcommand\Brprnb{\pmb{\big{)}}}
\newcommand\Brprnbb{\pmb{\Big{)}}}
\newcommand\Brprnbbb{\pmb{\bigg{)}}}
\newcommand\Brprnbbbb{\pmb{\Bigg{)}}}
%
\newcommand\Brsqpr{\pmb{]}}
\newcommand\Brsqprb{\pmb{\big]}}
\newcommand\Brsqprbb{\pmb{\Big]}}
\newcommand\Brsqprbbb{\pmb{\bigg]}}
\newcommand\Brsqprbbbb{\pmb{\Bigg]}}
%
\newcommand\Brcrl{\pmb{\}}}
\newcommand\Brcrlb{\pmb{\big{\}}}}
\newcommand\Brcrlbb{\pmb{\Big{\}}}}
\newcommand\Brcrlbbb{\pmb{\bigg{\}}}}
\newcommand\Brcrlbbbb{\pmb{\Bigg{\}}}}
%
\newcommand\Brceil{\pmb{{\rceil}}}
\newcommand\Brceilb{\pmb{\big{\rceil}}}
\newcommand\Brceilbb{\pmb{\Big{\rceil}}}
\newcommand\Brceilbbb{\pmb{\bigg{\rceil}}}
\newcommand\Brceilbbbb{\pmb{\Bigg{\rceil}}}
%
\newcommand\Brflr{\pmb{\rfloor}}
\newcommand\Brflrb{\pmb{\big\rfloor}}
\newcommand\Brflrbb{\pmb{\Big\rfloor}}
\newcommand\Brflrbbb{\pmb{\bigg\rfloor}}
\newcommand\Brflrbbbb{\pmb{\Bigg\rfloor}}
%
\newcommand\Brngl{\pmb{\rangle}}
\newcommand\Brnglb{\pmb{\big\rangle}}
\newcommand\Brnglbb{\pmb{\Big\rangle}}
\newcommand\Brnglbbb{\pmb{\bigg\rangle}}
\newcommand\Brnglbbbb{\pmb{\Bigg\rangle}}
%
\newcommand\Brabs{\pmb{\vert}}
\newcommand\Brabsb{\pmb{\big\vert}}
\newcommand\Brabsbb{\pmb{\Big\vert}}
\newcommand\Brabsbbb{\pmb{\bigg\vert}}
\newcommand\Brabsbbbb{\pmb{\Bigg\vert}}
%
\newcommand\Brnrm{\pmb{\Vert}}
\newcommand\Brnrmb{\pmb{\big\Vert}}
\newcommand\Brnrmbb{\pmb{\bigg\Vert}}
\newcommand\Brnrmbbb{\pmb{\bigg\Vert}}
\newcommand\Brnrmbbbb{\pmb{\Bigg\Vert}}
%
%BFRightdelimeters -R versions
\newcommand\BRprn{\pmb{)}}
\newcommand\BRprnb{\pmb{\big{)}}}
\newcommand\BRprnbb{\pmb{\Big{)}}}
\newcommand\BRprnbbb{\pmb{\bigg{)}}}
\newcommand\BRprnbbbb{\pmb{\Bigg{)}}}
%
\newcommand\BRsqpr{\pmb{]}}
\newcommand\BRsqprb{\pmb{\big]}}
\newcommand\BRsqprbb{\pmb{\Big]}}
\newcommand\BRsqprbbb{\pmb{\bigg]}}
\newcommand\BRsqprbbbb{\pmb{\Bigg]}}
%
\newcommand\BRcrl{\pmb{\}}}
\newcommand\BRcrlb{\pmb{\big{\}}}}
\newcommand\BRcrlbb{\pmb{\Big{\}}}}
\newcommand\BRcrlbbb{\pmb{\bigg{\}}}}
\newcommand\BRcrlbbbb{\pmb{\Bigg{\}}}}
%
\newcommand\BRceil{\pmb{{\rceil}}}
\newcommand\BRceilb{\pmb{\big{\rceil}}}
\newcommand\BRceilbb{\pmb{\Big{\rceil}}}
\newcommand\BRceilbbb{\pmb{\bigg{\rceil}}}
\newcommand\BRceilbbbb{\pmb{\Bigg{\rceil}}}
%
\newcommand\BRflr{\pmb{\rfloor}}
\newcommand\BRflrb{\pmb{\big\rfloor}}
\newcommand\BRflrbb{\pmb{\Big\rfloor}}
\newcommand\BRflrbbb{\pmb{\bigg\rfloor}}
\newcommand\BRflrbbbb{\pmb{\Bigg\rfloor}}
%
\newcommand\BRngl{\pmb{\rangle}}
\newcommand\BRnglb{\pmb{\big\rangle}}
\newcommand\BRnglbb{\pmb{\Big\rangle}}
\newcommand\BRnglbbb{\pmb{\bigg\rangle}}
\newcommand\BRnglbbbb{\pmb{\Bigg\rangle}}
%
\newcommand\BRabs{\pmb{\vert}}
\newcommand\BRabsb{\pmb{\big\vert}}
\newcommand\BRabsbb{\pmb{\Big\vert}}
\newcommand\BRabsbbb{\pmb{\bigg\vert}}
\newcommand\BRabsbbbb{\pmb{\Bigg\vert}}
%
\newcommand\BRnrm{\pmb{\Vert}}
\newcommand\BRnrmb{\pmb{\big\Vert}}
\newcommand\BRnrmbb{\pmb{\bigg\Vert}}
\newcommand\BRnrmbbb{\pmb{\bigg\Vert}}
\newcommand\BRnrmbbbb{\pmb{\Bigg\Vert}}
%
%boldfacetwosided delimeters
% BF paired round parens
\newcommand\Bprn[1]{\pmb{(}#1\pmb{)}}
\newcommand\Bprnb[1]{\pmb{\big{(}}{#1}{\pmb{\big)}}}
\newcommand\Bprnbb[1]{\pmb{\Big{(}}{#1}{\pmb{\Big)}}}
\newcommand\Bprnbbb[1]{\pmb{\bigg{(}}{#1}\pmb{\pmb{\bigg)}}}
\newcommand\Bprnbbbb[1]{\pmb{\Bigg{(}}{#1}\pmb{\pmb{\Bigg)}}}
%%%%%%%%%%%%%
%BFpaired square braces
\newcommand\Bsqpr[1]{\pmb{[}{#1}\pmb{]}}
\newcommand\Bsqprb[1]{\pmb{\big{[}}{#1}\pmb{\pmb{\big]}}}
\newcommand\Bsqprbb[1]{\pmb{\Big{[}}{#1}\pmb{\pmb{\Big]}}}
\newcommand\Bsqprbbb[1]{\pmb{\bigg{[}}{#1}\pmb{\pmb{\bigg]}}}
\newcommand\Bsqprbbbb[1]{\pmb{\Bigg{[}}{#1}\pmb{\pmb{\Bigg]}}}
%%%%%%%%%%%%%%%%
%BF paired curly braces
\newcommand\Bcrl[1]{\pmb{\{}{#1}\pmb{\}}}
\newcommand\Bcrlb[1]{\pmb{\big{\{}}{#1}\pmb{\big{\}}}}
\newcommand\Bcrlbb[1]{\pmb{\Big{\{}}{#1}\pmb{\Big{\}}}}
\newcommand\Bcrlbbb[1]{\pmb{\bigg{\{}}{#1}\pmb{\bigg{\}}}}
\newcommand\Bcrlbbbb[1]{\pmb{\Bigg{\{}}{#1}\pmb{\Bigg{\}}}}
%%%%%%%%%%
%% BF langle and rangle
\newcommand\Bngl[1]{\pmb{\langle}{#1}\pmb{\rangle}}
\newcommand\Bnglb[1]{\pmb{\big{\langle}}{#1}\pmb{\big{\rangle}}}
\newcommand\Bnglbb[1]{\pmb{\Big{\langle}}{#1}\pmb{\Big{\rangle}}}
\newcommand\Bnglbbb[1]{\pmb{\bigg{\langle}}{#1}\pmb{\bigg{\rangle}}}
\newcommand\Bnglbbbb[1]{\pmb{\Bigg{\langle}}{#1}\pmb{\Bigg{\rangle}}}
%%%%%%%%%%%%%%
%%BFfloor
\newcommand\Bflr[1]{\pmb{\lfloor}{#1}\pmb{\rfloor}}
\newcommand\Bflrb[1]{\pmb{\big{\lfloor}}{#1}\pmb{\big{\lfloor}}}
\newcommand\Bflrbb[1]{\pmb{\Big{\lfloor}}{#1}\pmb{\Big{\rfloor}}}
\newcommand\Bflrbbb[1]{\pmb{\bigg{\lfloor}}{#1}\pmb{\bigg{\rfloor}}}
\newcommand\Bflrbbbb[1]{\pmb{\Bigg{\lfloor}}{#1}\pmb{\Bigg{\rfloor}}}
%%%%%%%%%%%%%%%%%
% BF ceil
\newcommand\Bceil[1]{\pmb{\lceil}{#1}\pmb{\rceil}}
\newcommand\Bceilb[1]{\pmb{\big{\lceil}}{#1}\pmb{\big{\lceil}}}
\newcommand\Bceilbb[1]{\pmb{\Big{\lceil}}{#1}\pmb{\Big{\rceil}}}
\newcommand\Bceilbbb[1]{\pmb{\bigg{\lceil}}{#1}\pmb{\bigg{\rceil}}}
\newcommand\Bceilbbbb[1]{\pmb{\Bigg{\lceil}}{#1}\pmb{\Bigg{\rceil}}}
%%%%%%%%%%%%%%%%%%%%%%
%% BF vert
\newcommand\Babs[1]{\pmb{\vert}{#1}\pmb{\vert}}
\newcommand\Babsb[1]{\pmb{\big{\vert}}{#1}\pmb{\big{\vert}}}
\newcommand\Babsbb[1]{\pmb{\Big{\vert}}{#1}\pmb{\Big{\vert}}}
\newcommand\Babsbbb[1]{\pmb{\bigg{\vert}}{#1}\pmb{\bigg{\vert}}}
\newcommand\Babsbbbb[1]{\pmb{\Bigg{\vert}}{#1}\pmb{\Bigg{\vert}}}
%%%%%%%%%%%%%%%%%%%
%% BF Vert
\newcommand\Bnrm[1]{\pmb{\Vert}{#1}\pmb{\Vert}}
\newcommand\Bnrmb[1]{\pmb{\big{\Vert}}{#1}\pmb{\big{\Vert}}}
\newcommand\Bnrmbb[1]{\pmb{\Big{\Vert}}{#1}\pmb{\Big{\Vert}}}
\newcommand\Bnrmbbb[1]{\pmb{\bigg{\Vert}}{#1}\pmb{\bigg{\Vert}}}
\newcommand\Bnrmbbbb[1]{\pmb{\Bigg{\Vert}}{#1}\pmb{\Bigg{\Vert}}}
%
%%%%%%%%%%%%%%%%
%reversed round parens
\newcommand\nrp[1]{{)}#1{(}}
\newcommand\nrpb[1]{\big{)}{#1}{\big(}}
\newcommand\nrpbb[1]{\Big{)}{#1}{\Big(}}
\newcommand\nrpbbb[1]{\bigg{)}{#1}{\bigg(}}
\newcommand\nrpbbbb[1]{\Bigg{)}{#1}{\Bigg(}}
%
%%%%%%%%%%%%%
%  reversed paired square braces
\newcommand\rpqs[1]{{]}{#1}{[}}
\newcommand\rpqsb[1]{\big{]}{#1}{\big[}}
\newcommand\rpqsbb[1]{\Big{]}{#1}{\Big[}}
\newcommand\rpqsbbb[1]{\bigg{]}{#1}{\bigg[}}
\newcommand\rpqsbbbb[1]{\Bigg{]}{#1}{\Bigg[}}
%
% reversed bold paired round parens
\newcommand\Bnrp[1]{\pmb{)}#1\pmb{(}}
\newcommand\Bnrpb[1]{\pmb{\big{)}}{#1}{\pmb{\big(}}}
\newcommand\Bnrpbb[1]{\pmb{\Big{)}}{#1}{\pmb{\Big(}}}
\newcommand\Bnrpbbb[1]{\pmb{\bigg{)}}{#1}\pmb{\pmb{\bigg(}}}
\newcommand\Bnrpbbbb[1]{\pmb{\Bigg{)}}{#1}\pmb{\pmb{\Bigg(}}}
%
%%%%%%%%%%%%%
%  reverse bold paired square braces
\newcommand\Brpqs[1]{\pmb{]}{#1}\pmb{[}}
\newcommand\Brpqsb[1]{\pmb{\big{]}}{#1}\pmb{\pmb{\big[}}}
\newcommand\Brpqsbb[1]{\pmb{\Big{]}}{#1}\pmb{\pmb{\Big[}}}
\newcommand\Brpqsbbb[1]{\pmb{\bigg{]}}{#1}\pmb{\pmb{\bigg[}}}
\newcommand\Brpqsbbbb[1]{\pmb{\Bigg{]}}{#1}\pmb{\pmb{\Bigg[}}}
%
%paired lessthan greaterthan
\newcommand\stgt[1]{{<#1{>}}}
\newcommand\stgtb[1]{\big{<}{#1}{\big{>}}}
\newcommand\stgtbb[1]{\Big{<}{#1}{\Big{>}}}
\newcommand\stgtbbb[1]{\bigg{<}{#1}{\bigg{>}}}
\newcommand\stgtbbbb[1]{\Bigg{<}{#1}{\Bigg{>}}}
%
\newcommand\Bstgt[1]{\pmb{<}#1{\pmb{>}}}
\newcommand\Bstgtb[1]{\pmb{\big{<}}{#1}\pmb{\big>}}
\newcommand\Bstgtbb[1]{\pmb{\Big{<}}{#1}\pmb{\Big>}}
\newcommand\Bstgtbbb[1]{\pmb{\bigg{<}}{#1}\pmb{\bigg>}}
\newcommand\Bstgtbbbb[1]{\pmb{\Bigg{<}}{#1}\pmb{\Bigg>}}
%
% left lessthan greaterthan
\newcommand\lstgt{{<}}
\newcommand\lstgtb{\big{<}}
\newcommand\lstgtbb{\Big{<}}
\newcommand\lstgtbbb{\bigg{<}}
\newcommand\lstgtbbbb{\Bigg{<}}
%%
\newcommand\Blstgt{\pmb{<}}
\newcommand\Blstgtb{\pmb{\big{<}}}
\newcommand\Blstgtbb{\pmb{\Big{<}}}
\newcommand\Blstgtbbb{\pmb{\bigg{<}}}
\newcommand\Blstgtbbbb{\pmb{\Bigg{<}}}
%
% right stgt's
\newcommand\rstgt{{>}}
\newcommand\rstgtb{\big{>}}
\newcommand\rstgtbb{\Big{>}}
\newcommand\rstgtbbb{\bigg{>}}
\newcommand\rstgtbbbb{\Bigg{>}}
%%
\newcommand\Brstgt{\pmb{>}}
\newcommand\Brstgtb{\pmb{\big{>}}}
\newcommand\Brstgtbb{\pmb{\Big{>}}}
\newcommand\Brstgtbbb{\pmb{\bigg{>}}}
\newcommand\Brstgtbbbb{\pmb{\Bigg{>}}}%
%
% \bigb, etc
% easier to modify and remember than LaTeX built-ins
% \big % single b - already exists
\newcommand\bigb{\Big}% double b in delimiter commands
\newcommand\bigbb{\bigg}% triple b
\newcommand\bigbbb{\Bigg}% quadruple b
%
% muchlessthan muchmorethan
% \big\ll does not exist; hence the kerning of <<, etc.
% kerning was uneven without all the curly braces to isolate items. The blanks don't seem
%   to matter and are left in to show how I debugged the commands.
%
\newcommand\llgg[1]{{<}\kern-4pt{<}{#1}{>}\kern-4pt{>}}
% Could probably have done the first one with \ll \gg but wanted to be consistent.
%
\newcommand\llggb[1]{{\big{<}}\kern-2pt{\big{<}}{#1}{\big{>}}\kern-2pt{\big{>}}}
\newcommand\llggbb[1]{{\bigb{<}}\kern-3pt{\bigb{<}}{#1}{\bigb{>}}\kern-3pt{\bigb{>}}}
\newcommand\llggbbb[1]{{\bigbb{<}}\kern-4pt{\bigbb{<}}{#1}{\bigbb{>}}\kern-4pt{\bigbb{>}}}
\newcommand\llggbbbb[1]{{\bigbbb{<}}\kern-5pt{\bigbbb{<}}{#1}{\bigbbb{>}}\kern-5p{\bigbbb{>}}}
%
%BFmuchlessthanmuchmorethan
\newcommand\Bllgg[1]{{\pmb{{<}}}\kern-4pt{\pmb{{<}}}{#1}{\pmb{{>}}}\kern-4pt{\pmb{>}}}
% Could probably have done the first one with \ll \gg but wanted to be consistent.
\newcommand\Bllggb[1]{{\pmb{\big{<}}}\kern-2pt{\pmb{\big{<}}}{#1}{\pmb{\big{>}}}\kern-2pt{\pmb{\big{>}}}}
\newcommand\Bllggbb[1]{{\pmb{\bigb{<}}}\kern-3pt{\pmb{\bigb{<}}}{#1}{\pmb{\bigb{>}}}\kern-3pt{\pmb{\bigb{>}}}}
\newcommand\Bllggbbb[1]{{\pmb{\bigbb{<}}}\kern-4pt{\pmb{\bigbb{<}}}{#1}{\pmb{\bigbb{>}}}\kern-4pt{\pmb{\bigbb{>}}}}
\newcommand\Bllggbbbb[1]{{\pmb{\bigbbb{<}}}\kern-5pt{\pmb{\bigbbb{<}}}{#1}{\pmb{\bigbbb{>}}}\kern-5pt{\pmb{\bigbbb{>}}}}
%
%
% Valentine macros%
% First 2 \defs (\length and \getlength) are adapted from 
% TeXBook, p. 219, adding \mylen to avoid changing one of 
% TeX's built-in counters and deleting "\number\mylen" to 
% suppress printing of the value by \length.
% Used \global to ensure value of \mylen is available outside
% of \length and \getlength.
%
\newcount\mylen%define it outside where modified so it's global
%
\def\length#1{{\global\mylen=0\getlength#1\end}}%\number\mylen}}
%
\def\getlength#1{\ifx#1\end\let\next=\relax
\else\global\advance\mylen by1 \let\next=\getlength\fi\next}
%
% \valentine 
%
% puts one heart above an below name for each
% letter/number in #1.
% Use only in Math mode (because of \overset and \underset)
% Since Math mode ignores spaces, if your beloved's name has spaces
% you will need to protect them with a backslash.
\newcommand\valentine[1]{
\length{#1}
\def\myhearts{}%make empty string
\ifnum\mylen<1\def\myhearts{\heartsuit}%one heart for no name
\else
\ifnum\mylen=2
\def\myhearts{\heartsuit\heartsuit}
% maybe could do a loop but that would mean writing a string
%   concatenation routine
\else
\ifnum\mylen=3
\def\myhearts{\heartsuit\heartsuit\heartsuit}
\else
\ifnum\mylen=4
\def\myhearts{\heartsuit\heartsuit\heartsuit\heartsuit}
\else
\ifnum\mylen=5
\def\myhearts{\heartsuit\heartsuit\heartsuit\heartsuit\heartsuit}
\else
\ifnum\mylen=6
\def\myhearts{\heartsuit\heartsuit\heartsuit\heartsuit\heartsuit\heartsuit} \else
\ifnum\mylen=7
\def\myhearts{\heartsuit\heartsuit\heartsuit\heartsuit\heartsuit\heartsuit\heartsuit}
\else
\ifnum\mylen=8
\def\myhearts{\heartsuit\heartsuit\heartsuit\heartsuit\heartsuit\heartsuit\heartsuit\heartsuit}
\else
\ifnum\mylen=9
\def\myhearts{\heartsuit\heartsuit\heartsuit\heartsuit\heartsuit\heartsuit\heartsuit\heartsuit\heartsuit}
\else
\ifnum\mylen=10
\def\myhearts{\heartsuit\heartsuit\heartsuit\heartsuit\heartsuit\heartsuit\heartsuit\heartsuit\heartsuit\heartsuit}
\else
\ifnum\mylen=11
\def\myhearts{\heartsuit\heartsuit\heartsuit\heartsuit\heartsuit\heartsuit\heartsuit\heartsuit\heartsuit\heartsuit\heartsuit}
\else
\ifnum\mylen=12
\def\myhearts{\heartsuit\heartsuit\heartsuit\heartsuit\heartsuit\heartsuit\heartsuit\heartsuit\heartsuit\heartsuit\heartsuit\heartsuit}
\else
\ifnum\mylen=13
\def\myhearts{\heartsuit\heartsuit\heartsuit\heartsuit\heartsuit\heartsuit\heartsuit\heartsuit\heartsuit\heartsuit\heartsuit\heartsuit\heartsuit}
\else
\ifnum\mylen>13\def\myhearts{\heartsuit\heartsuit\heartsuit\heartsuit\heartsuit\heartsuit\heartsuit\heartsuit\heartsuit\heartsuit\heartsuit\heartsuit\heartsuit}
% if your beloved has a really long name, add a few more \ifnums \else\fi to
% this
\fi\fi\fi\fi
\fi\fi\fi\fi
\fi\fi\fi\fi
\fi\fi
\heartsuit\underset{\myhearts}{\overset{\myhearts}{#1}}\heartsuit
}
%
% Diamonds are a girl's best friend
% Just like \valentine but puts \diamondsuit(s) around the name.
% See \valentine code above for explanatory comments.
\newcommand\diamondsgbf[1]{
\length{#1}
\def\myhearts{}%make empty string
\ifnum\mylen<1\def\myhearts{\heartsuit}% one heart for no name
\else
\ifnum\mylen=2
% maybe could do a loop but that would mean writing a string
 %concatenation routine
\def\myhearts{\diamondsuit\diamondsuit}
\else
\ifnum\mylen=3
\def\myhearts{\diamondsuit\diamondsuit\diamondsuit}
\else
\ifnum\mylen=4
\def\myhearts{\diamondsuit\diamondsuit\diamondsuit\diamondsuit}
\else
\ifnum\mylen=5
\def\myhearts{\diamondsuit\diamondsuit\diamondsuit\diamondsuit\diamondsuit}
\else
\ifnum\mylen=6
\def\myhearts{\diamondsuit\diamondsuit\diamondsuit\diamondsuit\diamondsuit\diamondsuit}\else
\ifnum\mylen=7
\def\myhearts{\diamondsuit\diamondsuit\diamondsuit\diamondsuit\diamondsuit\diamondsuit\diamondsuit}
\else
\ifnum\mylen=8
\def\myhearts{\diamondsuit\diamondsuit\diamondsuit\diamondsuit\diamondsuit\diamondsuit\diamondsuit\diamondsuit}
\else
\ifnum\mylen=9
\def\myhearts{\diamondsuit\diamondsuit\diamondsuit\diamondsuit\diamondsuit\diamondsuit\diamondsuit\diamondsuit\diamondsuit}
\else
\ifnum\mylen=10
\def\myhearts{\diamondsuit\diamondsuit\diamondsuit\diamondsuit\diamondsuit\diamondsuit\diamondsuit\diamondsuit\diamondsuit\diamondsuit}
\else
\ifnum\mylen=11
\def\myhearts{\diamondsuit\diamondsuit\diamondsuit\diamondsuit\diamondsuit\diamondsuit\diamondsuit\diamondsuit\diamondsuit\diamondsuit\diamondsuit}
\else
\ifnum\mylen=12
\def\myhearts{\diamondsuit\diamondsuit\diamondsuit\diamondsuit\diamondsuit\diamondsuit\diamondsuit\diamondsuit\diamondsuit\diamondsuit\diamondsuit\diamondsuit}
\else
\ifnum\mylen=13
\def\myhearts{\diamondsuit\diamondsuit\diamondsuit\diamondsuit\diamondsuit\diamondsuit\diamondsuit\diamondsuit\diamondsuit\diamondsuit\diamondsuit\diamondsuit\diamondsuit}
\else
\ifnum\mylen>13
\def\myhearts{\diamondsuit\diamondsuit\diamondsuit\diamondsuit\diamondsuit\diamondsuit\diamondsuit\diamondsuit\diamondsuit\diamondsuit\diamondsuit\diamondsuit\diamondsuit}
\fi\fi\fi\fi
\fi\fi\fi\fi
\fi\fi\fi\fi
\fi\fi
\diamondsuit\underset{\myhearts}{\overset{\myhearts}{#1}}\diamondsuit
}
%
% better binomial coefficients
\newcommand\bnom[2]{\prn{{{#1}\atop{#2}}}}
\newcommand\bnomb[2]{\prnb{{#1}\atop{#2}}}
\newcommand\bnombb[2]{\prnbb{{#1}\atop{#2}}}
\newcommand\bnombbb[2]{\prnbbb{{#1}\atop{#2}}}
\newcommand\bnombbbb[2]{\prnbbbb{{#1}\atop{#2}}}
\newcommand\Bbnom[2]{\Bprn{{{#1}\atop{#2}}}}
\newcommand\Bbnomb[2]{\Bprnb{{#1}\atop{#2}}}
\newcommand\Bbnombb[2]{\Bprnbb{{#1}\atop{#2}}}
\newcommand\Bbnombbb[2]{\Bprnbbb{{#1}\atop{#2}}}
\newcommand\Bbnombbbb[2]{\Bprnbbbb{{#1}\atop{#2}}}
%
%variations on the theme
\newcommand\bnomsq[2]{\sqpr{{{#1}\atop{#2}}}}
\newcommand\bnomsqb[2]{\sqprb{{#1}\atop{#2}}}
\newcommand\bnomsqbb[2]{\sqprbb{{#1}\atop{#2}}}
\newcommand\bnomsqbbb[2]{\sqprbbb{{#1}\atop{#2}}}
\newcommand\bnomsqbbbb[2]{\sqprbbbb{{#1}\atop{#2}}}
\newcommand\Bbnomsq[2]{\Bsqpr{{{#1}\atop{#2}}}}
\newcommand\Bbnomsqb[2]{\Bsqprb{{#1}\atop{#2}}}
\newcommand\Bbnomsqbb[2]{\Bsqprbb{{#1}\atop{#2}}}
\newcommand\Bbnomsqbbb[2]{\Bsqprbbb{{#1}\atop{#2}}}
\newcommand\Bbnomsqbbbb[2]{\Bprnbbbb{{#1}\atop{#2}}}
%
\newcommand\bnomcrl[2]{\crl{{{#1}\atop{#2}}}}
\newcommand\bnomcrlb[2]{\crlb{{#1}\atop{#2}}}
\newcommand\bnomcrlbb[2]{\crlbb{{#1}\atop{#2}}}
\newcommand\bnomcrlbbb[2]{\crlbbb{{#1}\atop{#2}}}
\newcommand\bnomcrlbbbb[2]{\crlbbbb{{#1}\atop{#2}}}
\newcommand\Bbnomcrl[2]{\Bcrl{{{#1}\atop{#2}}}}
\newcommand\Bbnomcrlb[2]{\Bcrlb{{#1}\atop{#2}}}
\newcommand\Bbnomcrlbb[2]{\Bcrlbb{{#1}\atop{#2}}}
\newcommand\Bbnomcrlbbb[2]{\Bcrlbbb{{#1}\atop{#2}}}
\newcommand\Bbnomcrlbbbb[2]{\Bcrlbbbb{{#1}\atop{#2}}}
%
\newcommand\bnomngl[2]{\ngl{{{#1}\atop{#2}}}} %\bnomngl
\newcommand\bnomnglb[2]{\nglb{{#1}\atop{#2}}}
\newcommand\bnomnglbb[2]{\nglbb{{#1}\atop{#2}}}
\newcommand\bnomnglbbb[2]{\nglbbb{{#1}\atop{#2}}}
\newcommand\bnomnglbbbb[2]{\nglbbbb{{#1}\atop{#2}}}
\newcommand\Bbnomngl[2]{\Bngl{{{#1}\atop{#2}}}}
\newcommand\Bbnomnglb[2]{\Bnglb{{#1}\atop{#2}}}
\newcommand\Bbnomnglbb[2]{\Bnglbb{{#1}\atop{#2}}}
\newcommand\Bbnomnglbbb[2]{\Bnglbbb{{#1}\atop{#2}}}
\newcommand\Bbnomnglbbbb[2]{\Bnglbbbb{{#1}\atop{#2}}}
%
%leave it to LaTeX
\newcommand\Dprn[1]{\left(#1\right)}
\newcommand\Dsqpr[1]{\left[#1\right]}
\newcommand\Dcrl[1]{\left\{#1\right\}}
\newcommand\Dngl[1]{\left\langle#1\right\rangle}
\newcommand\Dceil[1]{\left\lceil#1\right\rceil}
\newcommand\Dabs[1]{\left\vert#1\right\vert}
\newcommand\Dnrm[1]{\left\Vert#1\right\Vert}
\newcommand\Dflr[1]{\left\lfloor#1\right\rfloor}
\newcommand\Dstgt[1]{\left<#1\right>}
%
% \left...\right does not like \pmb, \mathbf or \boldsymbol
\endinput
%
% 
% \big\ll   does not exist