this won't pass lint, declaration needs to be moved up