Controls are generated by functions at render time
Control functions accept session argument