first version.  works more or less