footer impl