added "strict" and small improvements