add in value func and only use display func when displaying