Changed the method signatures to allow for multiple entry points. The
code still assumes one - the first one