Perfect Number Notebook

In[]:=
$expandPerfectNumbers=False;
In[]:=
SetOptions[EvaluationNotebook[],​​{CellProlog:>($PrePrint=​​Function[expr,​​If[TrueQ[$expandPerfectNumbers]&&PerfectNumberQ[expr],​​Defer[Plus[##]]&@@Most@Divisors@expr,expr]]),​​CellEpilog:>($PrePrint=.)}​​   ]
8128
Out[]=
8128
$expandPerfectNumbers=True;​​8128
Out[]=
1+2+4+8+16+32+64+127+254+508+1016+2032+4064
%^2
Out[]=
66064384
x+8128
Out[]=
8128+x