背景介绍
本项目设计用于将用户输入的数字系统转换为ASCII字符,同时通过散点图展示数据分布。该应用可独立部署于本地环境,无需依赖第三方框架,重点实现前端交互、后端服务逻辑以及数据可视化技术。
思路分析
前端实现要点
- 数字转换逻辑:使用JavaScript处理数组转换,通过
map函数实现数据映射 - 数据存储:将结果存储为JSON对象,用于后续可视化展示
- 事件响应:添加数字输入事件监听器,处理用户交互
后端实现要点
- API接口设计:使用
GET请求获取数据并返回结果 - 数据处理逻辑:通过Python函数处理输入数组,返回ASCII字符和散点图
数据可视化技术
- Matplotlib散点图:使用
scatter函数绘制数据分布,支持自定义样式 - 坐标系统设置:定义x/y轴范围,使用默认颜色填充散点
代码实现
前端交互实现
“`html
<h2>数字转换与数据可视化 Web 应用</h2>
输入一组数字,系统将转换为ASCII字符并显示。数据可视化散点图展示数据分布。
<input type="range" id="digitRange" min="1" max="5" value="1-5" />
<input type="number" id="digitInput" min="1" max="5" />
<div class="output-container">
<p id="outputInfo">ASCII字符:3 → 3、2 → 2、1 → 1、4 → 4、5 → 5</p>
<canvas id="scatterPlot" width="600" height="400"></canvas>
</div>
<script>
const digitInput = document.getElementById('digitInput');
const digitRange = document.getElementById('digitRange');
const outputInfo = document.getElementById('outputInfo');
digitInput.addEventListener('input', () => {
const digits = [...digitRange.value];
const asciiChars = digits.map(d => {
return String.fromCharCode(d);
});
outputInfo.textContent = `ASCII字符:${asciiChars.join(', ')}`;
});
const scatterPlot = document.getElementById('scatterPlot');
const data = JSON.parse('{"digits": [' + digits.join(',') + '}"]');
scatterPlot.addEventListener('click', () => {
const x = data.digits.map(d => d);
const y = data.digits.map(d => d);
const points = x.map((x, i) => ({ x: x, y: y[i])));
const fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig = fig =