isEmptyconsxxsfalseisEmptyniltrueisZero0trueisZerosxfalseheadconsxxsxtailconsxxsxstailnilnilpssxspsxps00p00incsxsincxinc0s0sumListxsyifisEmptyxsisZeroheadxsytailxsconspheadxstailxsincyiftruebyxsysxyiffalsetrueyxsysxsumListxsyiffalsefalseyxsysxsumListysxsumxssumListxs0