fill missing functions