Only partial. Needs to be fixed up if this is a good direction.