###### ##..... #(.....################# .(....b'...w.<....('..$# .......################# ......g ......[ ....... #...... #....%. .gw....