added a ton of affine frame math