puddle chemistry