generating ui layer