optional fields support