First (rough) attempt.