improving
almost almost works