base layout + lib