This paper deals with the problem of motion blending by introducing "registration curves" -- a data structure that allows them to align according to timing, local coordinate frame and input constraints. To align according to timing, they construct a 2D grid containing the root-mean-squared distances between individual frames of each motion sequence. They then greedily construct a path along this grid that has minimum total distance, and which is also continuous, causal and doesn't have too-large timewarps. To fix the problem of coordinate frame misalignment, they note that motion isn't fundamentally changed by rotations about a vertical axis or translations along the floor plane. So in their data structure for a given motion, they store an alignment curve that contains local alignment as a function of time and use it to later realign blended motion. To identify constraint matches they use the heuristic that 1) each constraint match must contain exactly one constraint from each motion and 2) the union of all the constraint matches must form a single constraint. Finally, they show some techniques for using their data structure to interpolate and transition between two or more motions.