Ikat: Techniques for Designing and Weaving Warp, Weft, Double, and Compound Ikat