added layout functions