slightly odd issue introduced by undeferring subs early