When frozen objects are proxied, the proxy should also act similar to a frozen object. When the proxy violates these invariants a TypeError will be thrown. Example: modifying an existing value on a proxy with a frozen target will throw an error. Decide whether to stick to the standard behavior or look for a workaround so that frozen objects can be proxied.