maybe an api procedural style