more backwards compatible dictionary construction