add support to deep data structure