code factorisation
check warnings too
check item registration too