Let me take a stab at that. From the efficiency point of view it may not be as efficient as the current implementation, though.