This document discusses generating characterization tests for legacy code. It describes characterization tests as tests that characterize the actual behavior of code to act as change detectors and protect legacy code from unintended changes. It provides an example of a characterization test for a calculation method, and discusses how to find "pinch points" in code to focus testing and how to structure tests to replay inputs and outputs from recorded method executions. The document also introduces a framework for writing characterization tests by recording method inputs, outputs, and dependencies.