class DefaultBuilder implements BodyBuilder {

		private final Object statusCode;

		private final HeaderMap headers;

		public DefaultBuilder(Object statusCode) {
			this(statusCode, new HeaderMap());
		}

		public DefaultBuilder(Object statusCode, HeaderMap headers) {
			this.statusCode = statusCode;
			this.headers = headers;
		}

		@Override
		public BodyBuilder contentType(MediaType contentType) {<FILL_FUNCTION_BODY>}

		@Override
		public <T> ResponseEntity<T> body(T body) {
			return new ResponseEntity<>(body, this.headers, this.statusCode);
		}
	}

			if(contentType != null) {
				this.headers.put(Headers.CONTENT_TYPE, contentType.toString());
			} else {
				this.headers.remove(Headers.CONTENT_TYPE);
			}
			return this;
		
<methods>public void <init>(T) ,public void <init>(HeaderMap) ,public void <init>(T, HeaderMap) ,public boolean equals(java.lang.Object) ,public T getBody() ,public HeaderMap getHeaders() ,public boolean hasBody() ,public int hashCode() ,public java.lang.String toString() <variables>public static final HttpEntity<?> EMPTY,private final non-sealed T body,private final non-sealed HeaderMap headers