function [b,a,b1,b2] = idabusfi(M,N)
% IDABUSFI: Intermediate DAubechies-BUtterworth Scaling FIlter
%
% [b,a,b1,b2] = idabusfi(M,N);
% input 
%   M : number of zeros contributing to passband flatness
%   N : number of poles
%   need : M>=0; N>=0; N even
% output
%   b/a : IIR filter
%   b   : numerator coefficients
%   a   : denominator coefficients
%   b   : b = conv(b1,b2); b1 contains all zeros at z=-1,
%           b2 contains all other zeros.
%
%  % Examples  
%	% Daubechies-10
%	[b,a,b1,b2] = idabusfi(4,0);
%
%	% Classical Butterworth
%       [b,a,b1,b2] = idabusfi(0,4);
%
%	% Intermediate Daubechies-Butterworth
%       [b,a,b1,b2] = idabusfi(2,2);

% Ivan W. Selesnick
% Rice University
%
% required subprograms: maxflat2.m, choose.m


[b,a,b1,b2] = maxflat2(M+N+1,M,N);



