#7: not to locking log when alreacy locked
#7: empty uses Collectons empty because of clear()
#7: Overriding and EmptyString uses inline lambda