Model-Based Depth With Applications To Functional Data