reconstruct UI workflow