first cut at client scripts working