Build sources only once :pig2:
:pig2: do not divide by zero
Make :pig2: more object oriented