hard parts functional js foundations

1 2 3 4