re implementing ZED