first cut at compute