@Override
        public Builder addMember(MemberShape member) {
            if (member.getMemberName().equals("key")) {
                return key(member);
            } else if (member.getMemberName().equals("value")) {
                return value(member);
            } else {
                String message = String.format("Map shapes may only have `key` and `value` members, but found `%s`",
                        member.getMemberName());
                throw new SourceException(message, member);
            }
        }
Builder used to create a {@link ListShape}.
smithy-model/src/main/java/software/amazon/smithy/model/shapes/MapShape.java