more rewritinggg