This is probably premature function splitting.