diff --git a/DrawVisitor.cpp b/DrawVisitor.cpp index e1a2eb4..f4a4a67 100644 --- a/DrawVisitor.cpp +++ b/DrawVisitor.cpp @@ -37,7 +37,8 @@ void DrawVisitor::visit(Group &n) // traverse children glm::mat4 mv = modelview_; for (NodeSet::iterator node = n.begin(); !done_ && node != n.end(); node++) { - (*node)->accept(*this); + if ( (*node)->visible_ ) + (*node)->accept(*this); modelview_ = mv; } } diff --git a/MediaPlayer.cpp b/MediaPlayer.cpp index 13ee9c9..62594cd 100644 --- a/MediaPlayer.cpp +++ b/MediaPlayer.cpp @@ -40,6 +40,7 @@ MediaPlayer::MediaPlayer(string name) : id_(name) seekable_ = false; isimage_ = false; interlaced_ = false; + enabled_ = true; need_loop_ = false; v_frame_is_full_ = false; rate_ = 1.0; @@ -271,10 +272,37 @@ GstClockTime MediaPlayer::position() return pos - start_position_; } +void MediaPlayer::enable(bool on) +{ + if ( enabled_ != on ) { + + enabled_ = on; + + GstState requested_state = GST_STATE_PAUSED; + + if (enabled_) { + requested_state = desired_state_; + } + + // apply state change + GstStateChangeReturn ret = gst_element_set_state (pipeline_, requested_state); + if (ret == GST_STATE_CHANGE_FAILURE) { + Log::Warning("MediaPlayer %s Failed to enable", gst_element_get_name(pipeline_)); + failed_ = true; + } + + } +} + +bool MediaPlayer::isEnabled() const +{ + return enabled_; +} + void MediaPlayer::play(bool on) { // cannot play an image - if (isimage_) + if (!enabled_ || isimage_) return; // request state @@ -299,7 +327,7 @@ void MediaPlayer::play(bool on) // all ready, apply state change immediately GstStateChangeReturn ret = gst_element_set_state (pipeline_, desired_state_); if (ret == GST_STATE_CHANGE_FAILURE) { - Log::Warning("MediaPlayer %s Failed to start", gst_element_get_name(pipeline_)); + Log::Warning("MediaPlayer %s Failed to play", gst_element_get_name(pipeline_)); failed_ = true; } #ifdef MEDIA_PLAYER_DEBUG @@ -317,7 +345,7 @@ void MediaPlayer::play(bool on) bool MediaPlayer::isPlaying(bool testpipeline) const { // image cannot play - if (isimage_) + if (!enabled_ || isimage_) return false; // if not ready yet, answer with requested state @@ -328,8 +356,6 @@ bool MediaPlayer::isPlaying(bool testpipeline) const GstState state; gst_element_get_state (pipeline_, &state, NULL, GST_CLOCK_TIME_NONE); return state == GST_STATE_PLAYING; - - // return desired_state == GST_STATE_PLAYING; } @@ -345,7 +371,7 @@ void MediaPlayer::setLoop(MediaPlayer::LoopMode mode) void MediaPlayer::rewind() { - if (!seekable_) + if (!enabled_ || !seekable_) return; if (rate_ > 0.0) @@ -360,7 +386,7 @@ void MediaPlayer::rewind() void MediaPlayer::seekNextFrame() { // useful only when Paused - if (isPlaying()) + if (!enabled_ || isPlaying()) return; if ( loop_ != LOOP_NONE) { @@ -376,7 +402,7 @@ void MediaPlayer::seekNextFrame() void MediaPlayer::seekTo(GstClockTime pos) { - if (!seekable_) + if (!enabled_ || !seekable_) return; // apply seek @@ -387,7 +413,7 @@ void MediaPlayer::seekTo(GstClockTime pos) void MediaPlayer::fastForward() { - if (!seekable_) + if (!enabled_ || !seekable_) return; double step = SIGN(rate_) * 0.01 * static_cast(duration_); @@ -459,6 +485,9 @@ void MediaPlayer::update() discoverer_ = nullptr; } + if (!enabled_) + return; + // apply texture if (v_frame_is_full_) { // first occurence; create texture diff --git a/MediaPlayer.h b/MediaPlayer.h index 520616f..f98e57c 100644 --- a/MediaPlayer.h +++ b/MediaPlayer.h @@ -119,6 +119,11 @@ public: * Must be called in update loop * */ void update(); + + void enable(bool on); + + bool isEnabled() const; + /** * Pause / Play * Can play backward if play speed is negative @@ -256,6 +261,7 @@ private: bool seekable_; bool isimage_; bool interlaced_; + bool enabled_; void execute_open(); void execute_loop_command(); diff --git a/MediaSource.cpp b/MediaSource.cpp index 8e4c8df..0ed15ed 100644 --- a/MediaSource.cpp +++ b/MediaSource.cpp @@ -11,7 +11,7 @@ #include "Visitor.h" #include "Log.h" -MediaSource::MediaSource() : Source(), path_("") +MediaSource::MediaSource() : Source(), path_(""), media_playing_(true) { // create media player mediaplayer_ = new MediaPlayer; @@ -35,7 +35,7 @@ void MediaSource::setPath(const std::string &p) { path_ = p; mediaplayer_->open(path_); - mediaplayer_->play(true); + mediaplayer_->play(media_playing_); Log::Notify("Opening %s", p.c_str()); } @@ -98,13 +98,30 @@ void MediaSource::init() } +void MediaSource::setActive (bool on) +{ + bool was_active = active_; + + Source::setActive(on); + + if ( active_ != was_active ) { + mediaplayer()->enable(active_); + } +} + +void MediaSource::update(float dt) +{ + // update video + mediaplayer_->update(); + + Source::update(dt); +} + void MediaSource::render() { if (!initialized_) init(); else { - // update video - mediaplayer_->update(); // render the media player into frame buffer static glm::mat4 projection = glm::ortho(-1.f, 1.f, 1.f, -1.f, -1.f, 1.f); diff --git a/MediaSource.h b/MediaSource.h index bb9951b..410d085 100644 --- a/MediaSource.h +++ b/MediaSource.h @@ -10,6 +10,8 @@ public: ~MediaSource(); // implementation of source API + void update (float dt) override; + void setActive (bool on) override; void render() override; bool failed() const override; uint texture() const override; @@ -27,6 +29,7 @@ protected: Surface *mediasurface_; std::string path_; MediaPlayer *mediaplayer_; + bool media_playing_; }; #endif // MEDIASOURCE_H diff --git a/Selection.cpp b/Selection.cpp index a72c939..f2c9ed6 100644 --- a/Selection.cpp +++ b/Selection.cpp @@ -26,7 +26,7 @@ void Selection::remove(Source *s) SourceList::iterator it = find(s); if (it != selection_.end()) { selection_.erase(it); - s->setMode(Source::NORMAL); + s->setMode(Source::VISIBLE); } } @@ -83,7 +83,7 @@ void Selection::add(SourceList l) void Selection::remove(SourceList l) { for(auto it = l.begin(); it != l.end(); it++) - (*it)->setMode(Source::NORMAL); + (*it)->setMode(Source::VISIBLE); // generate new set as difference of current selection and give list SourceList result; @@ -95,7 +95,7 @@ void Selection::remove(SourceList l) void Selection::clear() { for(auto it = selection_.begin(); it != selection_.end(); it++) - (*it)->setMode(Source::NORMAL); + (*it)->setMode(Source::VISIBLE); selection_.clear(); } diff --git a/SessionSource.cpp b/SessionSource.cpp index 225bf66..b9dc673 100644 --- a/SessionSource.cpp +++ b/SessionSource.cpp @@ -131,18 +131,25 @@ void SessionSource::init() } } + +void SessionSource::update(float dt) +{ + // delete a source which failed + if (session()->failedSource() != nullptr) + session()->deleteSource(session()->failedSource()); + + // update video + if (active_) + session_->update(dt); + + Source::update(dt); +} + void SessionSource::render() { if (!initialized_) init(); else { - // update session - session_->update(dt_); - - // delete a source which failed - if (session()->failedSource() != nullptr) - session()->deleteSource(session()->failedSource()); - // render the sesion into frame buffer static glm::mat4 projection = glm::ortho(-1.f, 1.f, 1.f, -1.f, -1.f, 1.f); renderbuffer_->begin(); diff --git a/SessionSource.h b/SessionSource.h index e90d4fc..cd4281d 100644 --- a/SessionSource.h +++ b/SessionSource.h @@ -11,6 +11,7 @@ public: ~SessionSource(); // implementation of source API + void update (float dt) override; void render() override; bool failed() const override; uint texture() const override; diff --git a/Source.cpp b/Source.cpp index 9923424..ac3b60c 100644 --- a/Source.cpp +++ b/Source.cpp @@ -15,12 +15,13 @@ #include "ImageShader.h" #include "ImageProcessingShader.h" #include "Log.h" +#include "Mixer.h" -Source::Source() : initialized_(false), need_update_(true) +Source::Source() : initialized_(false), active_(true), need_update_(true) { sprintf(initials_, "__"); name_ = "Source"; - mode_ = Source::HIDDEN; + mode_ = Source::UNINITIALIZED; // create groups and overlays for each view @@ -168,20 +169,23 @@ Source::Mode Source::mode() const void Source::setMode(Source::Mode m) { - mode_ = m; + // make visible on first time + if ( mode_ == Source::UNINITIALIZED ) { + for (auto g = groups_.begin(); g != groups_.end(); g++) + (*g).second->visible_ = true; + } - bool visible = mode_ != Source::HIDDEN; - for (auto g = groups_.begin(); g != groups_.end(); g++) - (*g).second->visible_ = visible; - - uint index_frame = mode_ == Source::NORMAL ? 0 : 1; + // choose frame if selected + uint index_frame = m == Source::SELECTED ? 1 : 0; for (auto f = frames_.begin(); f != frames_.end(); f++) (*f).second->setActive(index_frame); - bool current = mode_ == Source::CURRENT; + // show overlay if current + bool current = m == Source::CURRENT; for (auto o = overlays_.begin(); o != overlays_.end(); o++) (*o).second->visible_ = current; + mode_ = m; } // test update callback @@ -228,8 +232,23 @@ void Source::attach(FrameBuffer *renderbuffer) // groups_[View::GEOMETRY]->update_callbacks_.push_front(fix_ar); // make the source visible - if ( mode_ == HIDDEN ) - setMode(NORMAL); + if ( mode_ == UNINITIALIZED ) + setMode(VISIBLE); +} + +void Source::setActive (bool on) +{ + active_ = on; + + for(auto clone = clones_.begin(); clone != clones_.end(); clone++) { + if ( (*clone)->active() ) + active_ = true; + } + + groups_[View::RENDERING]->visible_ = active_; + groups_[View::GEOMETRY]->visible_ = active_; + groups_[View::LAYER]->visible_ = active_; + } void Source::update(float dt) @@ -246,6 +265,9 @@ void Source::update(float dt) float alpha = 1.0 - CLAMP( ( dist.x * dist.x ) + ( dist.y * dist.y ), 0.f, 1.f ); blendingshader_->color.a = alpha; + // CHANGE update status based on limbo + setActive( glm::length(dist) < 1.3f ); + // MODIFY geometry based on GEOMETRY node groups_[View::RENDERING]->translation_ = groups_[View::GEOMETRY]->translation_; groups_[View::RENDERING]->rotation_ = groups_[View::GEOMETRY]->rotation_; @@ -359,6 +381,17 @@ void CloneSource::init() } } +void CloneSource::setActive (bool on) +{ + active_ = on; + + groups_[View::RENDERING]->visible_ = active_; + groups_[View::GEOMETRY]->visible_ = active_; + groups_[View::LAYER]->visible_ = active_; + + origin_->touch(); +} + void CloneSource::render() { if (!initialized_) diff --git a/Source.h b/Source.h index 6f883d5..4a740c5 100644 --- a/Source.h +++ b/Source.h @@ -38,42 +38,47 @@ public: // manipulate name of source void setName (const std::string &name); inline std::string name () const { return name_; } - inline const char *initials() const { return initials_; } + inline const char *initials () const { return initials_; } // cloning mechanism - virtual CloneSource *clone(); + virtual CloneSource *clone (); // Display mode typedef enum { - HIDDEN = 0, - NORMAL = 1, + UNINITIALIZED = 0, + VISIBLE = 1, SELECTED = 2, CURRENT = 3 } Mode; - Mode mode() const; - void setMode(Mode m); + Mode mode () const; + void setMode (Mode m); + // get handle on the nodes used to manipulate the source in a view - inline Group *group(View::Mode m) const { return groups_.at(m); } - inline Node *groupNode(View::Mode m) const { return static_cast(groups_.at(m)); } + inline Group *group (View::Mode m) const { return groups_.at(m); } + inline Node *groupNode (View::Mode m) const { return static_cast(groups_.at(m)); } // tests if a given node is part of the source - bool contains(Node *node) const; + bool contains (Node *node) const; // a Source has a shader to control image processing effects - inline ImageProcessingShader *processingShader() const { return rendershader_; } + inline ImageProcessingShader *processingShader () const { return rendershader_; } // a Source has a shader to control mixing effects - inline ImageShader *blendingShader() const { return blendingshader_; } + inline ImageShader *blendingShader () const { return blendingshader_; } // every Source has a frame buffer from the renderbuffer - virtual FrameBuffer *frame() const; + virtual FrameBuffer *frame () const; // touch to request update - inline void touch() { need_update_ = true; } + inline void touch () { need_update_ = true; } // a Source shall be updated before displayed (Mixing, Geometry and Layer) - void update (float dt); + virtual void update (float dt); + + // update mode + virtual void setActive (bool on); + inline bool active () { return active_; } // accept all kind of visitors virtual void accept (Visitor& v); @@ -143,6 +148,7 @@ protected: Handles *handle_[4]; // update + bool active_; bool need_update_; float dt_; Group *stored_status_; @@ -161,6 +167,7 @@ public: ~CloneSource(); // implementation of source API + void setActive (bool on) override; void render() override; uint texture() const override { return origin_->texture(); } bool failed() const override { return origin_ == nullptr; } diff --git a/UserInterfaceManager.cpp b/UserInterfaceManager.cpp index c48613f..7c632ca 100644 --- a/UserInterfaceManager.cpp +++ b/UserInterfaceManager.cpp @@ -795,7 +795,7 @@ void UserInterface::RenderMediaPlayer() } ImGui::SetCursorScreenPos(draw_pos); - if (mp->duration() != GST_CLOCK_TIME_NONE) { + if ( mp->isEnabled() && mp->duration() != GST_CLOCK_TIME_NONE) { if (ImGui::Button(ICON_FA_FAST_BACKWARD)) mp->rewind(); diff --git a/View.cpp b/View.cpp index 25c0a46..97fae2e 100644 --- a/View.cpp +++ b/View.cpp @@ -145,7 +145,7 @@ void View::select(glm::vec2 A, glm::vec2 B) } -MixingView::MixingView() : View(MIXING) +MixingView::MixingView() : View(MIXING), limbo_scale_(1.3f) { // read default settings if ( Settings::application.views[mode_].name.empty() ) { @@ -162,7 +162,12 @@ MixingView::MixingView() : View(MIXING) scene.bg()->attach(disk); Mesh *circle = new Mesh("mesh/circle.ply"); - circle->shader()->color = glm::vec4( COLOR_FRAME, 1.f ); + circle->shader()->color = glm::vec4( COLOR_FRAME, 0.9f ); + scene.bg()->attach(circle); + + circle = new Mesh("mesh/circle.ply"); + circle->scale_ = glm::vec3(limbo_scale_, limbo_scale_, 1.f); + circle->shader()->color = glm::vec4( COLOR_LIMBO_CIRCLE, 0.6f ); scene.bg()->attach(circle); } diff --git a/View.h b/View.h index 9f4c90d..01587ea 100644 --- a/View.h +++ b/View.h @@ -89,9 +89,11 @@ public: Cursor grab (Source *s, glm::vec2 from, glm::vec2 to, std::pair) override; void setAlpha (Source *s); + inline float limboScale() { return limbo_scale_; } private: uint textureMixingQuadratic(); + float limbo_scale_; }; class RenderView : public View diff --git a/defines.h b/defines.h index 78e1215..a4dca5c 100644 --- a/defines.h +++ b/defines.h @@ -57,6 +57,7 @@ #define COLOR_DEFAULT_SOURCE 0.8f, 0.8f, 0.8f #define COLOR_HIGHLIGHT_SOURCE 1.f, 1.f, 1.f #define COLOR_FRAME 0.8f, 0.f, 0.8f +#define COLOR_LIMBO_CIRCLE 0.7f, 0.7f, 0.7f // from glmixer #define TEXTURE_REQUIRED_MAXIMUM 2048 @@ -84,7 +85,7 @@ #define COLOR_CIRCLE_MOVE 230, 30, 230 #define COLOR_DRAWINGS 180, 180, 180 #define COLOR_LIMBO 35, 35, 35 -#define COLOR_LIMBO_CIRCLE 210, 160, 210 +//#define COLOR_LIMBO_CIRCLE 210, 160, 210 #define COLOR_FADING 25, 25, 25 #define COLOR_FLASHING 250, 250, 250 #define COLOR_FRAME_MOVE 230, 30, 230 diff --git a/rsc/mesh/circle.ply b/rsc/mesh/circle.ply index 1e1abaa..668f780 100644 --- a/rsc/mesh/circle.ply +++ b/rsc/mesh/circle.ply @@ -1,7 +1,7 @@ ply format ascii 1.0 -comment Created by Blender 2.82 (sub 7) - www.blender.org, source file: 'circle.blend' -element vertex 192 +comment Created by Blender 2.83.0 - www.blender.org, source file: 'circle_simple.blend' +element vertex 384 property float x property float y property float z @@ -9,201 +9,393 @@ property uchar red property uchar green property uchar blue property uchar alpha -element face 256 +element face 512 property list uchar uint vertex_indices end_header --0.961670 -0.291719 0.000000 255 255 255 255 --0.921437 -0.381671 0.000000 255 255 255 0 --0.928456 -0.384579 0.000000 255 255 255 255 --0.893037 -0.477338 0.000000 255 255 255 0 --0.835589 -0.558322 0.000000 255 255 255 255 --0.841959 -0.562579 0.000000 255 255 255 0 -0.782753 0.642390 0.000000 255 255 255 0 -0.835588 0.558323 0.000000 255 255 255 255 -0.776830 0.637529 0.000000 255 255 255 255 -0.099252 1.007728 0.000000 255 255 255 0 -0.196055 0.985644 0.000000 255 255 255 255 -0.098501 1.000103 0.000000 255 255 255 255 --0.642389 0.782753 0.000000 255 255 255 0 --0.710610 0.710610 0.000000 255 255 255 255 --0.716027 0.716027 0.000000 255 255 255 0 --0.291719 -0.961670 0.000000 255 255 255 255 --0.381671 -0.921437 0.000000 255 255 255 0 --0.289514 -0.954399 0.000000 255 255 255 0 -0.637529 -0.776830 0.000000 255 255 255 255 -0.554102 -0.829271 0.000000 255 255 255 0 -0.632709 -0.770957 0.000000 255 255 255 0 -1.000103 -0.098501 0.000000 255 255 255 255 -0.978192 -0.194574 0.000000 255 255 255 0 -0.992542 -0.097756 0.000000 255 255 255 0 -0.829271 0.554102 0.000000 255 255 255 0 -0.770957 0.632710 0.000000 255 255 255 0 --0.776831 -0.637528 0.000000 255 255 255 255 --0.829271 -0.554101 0.000000 255 255 255 0 --0.770958 -0.632709 0.000000 255 255 255 0 --0.637528 -0.776831 0.000000 255 255 255 255 --0.705237 -0.705237 0.000000 255 255 255 0 --0.632709 -0.770958 0.000000 255 255 255 0 -1.000103 0.098503 0.000000 255 255 255 255 -0.997356 0.000001 0.000000 255 255 255 0 -0.992542 0.097758 0.000000 255 255 255 0 --0.473726 -0.886280 0.000000 255 255 255 255 --0.554101 -0.829271 0.000000 255 255 255 0 --0.470145 -0.879579 0.000000 255 255 255 0 -0.961669 0.291720 0.000000 255 255 255 255 -0.978192 0.194576 0.000000 255 255 255 0 -0.954399 0.289515 0.000000 255 255 255 0 --0.098501 -1.000103 0.000000 255 255 255 255 --0.194574 -0.978192 0.000000 255 255 255 0 --0.097757 -0.992542 0.000000 255 255 255 0 -0.194573 0.978193 0.000000 255 255 255 0 -0.097756 0.992542 0.000000 255 255 255 0 -0.098502 -1.000103 0.000000 255 255 255 255 -0.000000 -0.997356 0.000000 255 255 255 0 -0.097757 -0.992542 0.000000 255 255 255 0 -0.637527 0.776832 0.000000 255 255 255 255 -0.705236 0.705238 0.000000 255 255 255 0 -0.632708 0.770959 0.000000 255 255 255 0 -0.473725 0.886280 0.000000 255 255 255 255 -0.554100 0.829272 0.000000 255 255 255 0 -0.470144 0.879580 0.000000 255 255 255 0 -0.776831 -0.637528 0.000000 255 255 255 255 -0.705238 -0.705237 0.000000 255 255 255 0 -0.770958 -0.632708 0.000000 255 255 255 0 --0.961670 0.291719 0.000000 255 255 255 255 --0.921437 0.381672 0.000000 255 255 255 0 --0.954399 0.289514 0.000000 255 255 255 0 -0.291720 -0.961669 0.000000 255 255 255 255 -0.194575 -0.978192 0.000000 255 255 255 0 -0.289514 -0.954399 0.000000 255 255 255 0 -0.886280 -0.473726 0.000000 255 255 255 255 -0.829272 -0.554101 0.000000 255 255 255 0 -0.879580 -0.470144 0.000000 255 255 255 0 -0.381670 0.921437 0.000000 255 255 255 0 -0.384578 0.928457 0.000000 255 255 255 255 --0.000000 0.997356 0.000000 255 255 255 0 --0.000000 1.004954 0.000000 255 255 255 255 -0.710609 0.710610 0.000000 255 255 255 255 --0.099252 -1.007728 0.000000 255 255 255 0 -0.000000 -1.004954 0.000000 255 255 255 255 -0.000000 -1.012616 0.000000 255 255 255 0 -0.099253 -1.007728 0.000000 255 255 255 0 -0.196057 -0.985644 0.000000 255 255 255 255 -0.197552 -0.993158 0.000000 255 255 255 0 -0.642390 -0.782753 0.000000 255 255 255 0 -0.558323 -0.835588 0.000000 255 255 255 255 --0.293943 -0.969002 0.000000 255 255 255 0 --0.196057 -0.985644 0.000000 255 255 255 255 --0.197551 -0.993159 0.000000 255 255 255 0 -0.477339 -0.893037 0.000000 255 255 255 0 -0.384580 -0.928456 0.000000 255 255 255 255 -0.473727 -0.886280 0.000000 255 255 255 255 --0.642389 -0.782753 0.000000 255 255 255 0 --0.558322 -0.835589 0.000000 255 255 255 255 --0.562579 -0.841959 0.000000 255 255 255 0 --0.782753 -0.642389 0.000000 255 255 255 0 --0.710610 -0.710610 0.000000 255 255 255 255 --0.716027 -0.716027 0.000000 255 255 255 0 --0.969001 -0.293943 0.000000 255 255 255 0 --0.935535 -0.387511 0.000000 255 255 255 0 --0.384579 -0.928456 0.000000 255 255 255 255 --1.007728 -0.099252 0.000000 255 255 255 0 --0.985644 -0.196057 0.000000 255 255 255 255 --0.993159 -0.197551 0.000000 255 255 255 0 -0.558321 0.835589 0.000000 255 255 255 255 --1.000103 -0.098501 0.000000 255 255 255 255 --0.997356 0.000000 0.000000 255 255 255 0 --0.992542 -0.097757 0.000000 255 255 255 0 --0.978192 -0.194574 0.000000 255 255 255 0 --0.954399 -0.289514 0.000000 255 255 255 0 -0.921437 0.381673 0.000000 255 255 255 0 -0.928456 0.384580 0.000000 255 255 255 255 --1.000103 0.098502 0.000000 255 255 255 255 --0.978192 0.194575 0.000000 255 255 255 0 --0.992542 0.097757 0.000000 255 255 255 0 -0.293944 -0.969001 0.000000 255 255 255 0 -0.782754 -0.642389 0.000000 255 255 255 0 -0.710610 -0.710609 0.000000 255 255 255 255 --0.477338 -0.893037 0.000000 255 255 255 0 --0.387511 -0.935535 0.000000 255 255 255 0 -0.969002 -0.293943 0.000000 255 255 255 0 -0.985644 -0.196056 0.000000 255 255 255 255 -0.993159 -0.197551 0.000000 255 255 255 0 -0.642388 0.782754 0.000000 255 255 255 0 --0.293943 0.969001 0.000000 255 255 255 0 --0.196057 0.985644 0.000000 255 255 255 255 --0.291719 0.961670 0.000000 255 255 255 255 -0.893037 -0.477337 0.000000 255 255 255 0 -0.928457 -0.384578 0.000000 255 255 255 255 -0.935535 -0.387510 0.000000 255 255 255 0 -0.969001 0.293944 0.000000 255 255 255 0 -0.985644 0.196058 0.000000 255 255 255 255 --0.099253 1.007728 0.000000 255 255 255 0 --0.098502 1.000103 0.000000 255 255 255 255 -0.562580 -0.841959 0.000000 255 255 255 0 -0.835589 -0.558322 0.000000 255 255 255 255 -0.841960 -0.562578 0.000000 255 255 255 0 -0.893036 0.477339 0.000000 255 255 255 0 -0.886279 0.473727 0.000000 255 255 255 255 -0.961670 -0.291718 0.000000 255 255 255 255 -1.007728 0.099254 0.000000 255 255 255 0 -1.004954 0.000001 0.000000 255 255 255 255 -0.387512 -0.935535 0.000000 255 255 255 0 -1.007728 -0.099252 0.000000 255 255 255 0 -0.716028 -0.716027 0.000000 255 255 255 0 --0.969001 0.293943 0.000000 255 255 255 0 --0.928456 0.384579 0.000000 255 255 255 255 --0.384579 0.928456 0.000000 255 255 255 255 --0.387511 0.935535 0.000000 255 255 255 0 --0.893037 0.477338 0.000000 255 255 255 0 --0.835589 0.558322 0.000000 255 255 255 255 --0.886280 0.473726 0.000000 255 255 255 255 -0.841958 0.562580 0.000000 255 255 255 0 -0.935534 0.387512 0.000000 255 255 255 0 --0.782753 0.642389 0.000000 255 255 255 0 --0.776831 0.637529 0.000000 255 255 255 255 -0.993158 0.197553 0.000000 255 255 255 0 --0.558322 0.835589 0.000000 255 255 255 255 --0.637528 0.776831 0.000000 255 255 255 255 -1.012616 0.000001 0.000000 255 255 255 0 --0.477338 0.893037 0.000000 255 255 255 0 --0.473726 0.886280 0.000000 255 255 255 255 -0.477337 0.893037 0.000000 255 255 255 0 -0.293942 0.969002 0.000000 255 255 255 0 -0.291718 0.961670 0.000000 255 255 255 255 --0.197552 0.993158 0.000000 255 255 255 0 --0.000000 1.012616 0.000000 255 255 255 0 --0.935535 0.387511 0.000000 255 255 255 0 --0.886280 -0.473726 0.000000 255 255 255 255 -0.197550 0.993159 0.000000 255 255 255 0 --1.004954 0.000000 0.000000 255 255 255 255 --0.841959 0.562579 0.000000 255 255 255 0 --1.007728 0.099253 0.000000 255 255 255 0 --0.985644 0.196057 0.000000 255 255 255 255 -0.387510 0.935535 0.000000 255 255 255 0 -0.716026 0.716028 0.000000 255 255 255 0 -0.562578 0.841960 0.000000 255 255 255 0 --0.562579 0.841959 0.000000 255 255 255 0 --0.194575 0.978192 0.000000 255 255 255 0 --0.705237 0.705237 0.000000 255 255 255 0 --0.829271 0.554101 0.000000 255 255 255 0 --0.879579 -0.470145 0.000000 255 255 255 0 --1.012616 0.000000 0.000000 255 255 255 0 --0.993158 0.197552 0.000000 255 255 255 0 --0.381672 0.921437 0.000000 255 255 255 0 -0.381672 -0.921437 0.000000 255 255 255 0 --0.289514 0.954399 0.000000 255 255 255 0 -0.470145 -0.879579 0.000000 255 255 255 0 --0.470145 0.879579 0.000000 255 255 255 0 --0.770958 0.632709 0.000000 255 255 255 0 -0.289512 0.954400 0.000000 255 255 255 0 -0.921437 -0.381671 0.000000 255 255 255 0 --0.097757 0.992542 0.000000 255 255 255 0 --0.554101 0.829271 0.000000 255 255 255 0 --0.632709 0.770958 0.000000 255 255 255 0 -0.954399 -0.289513 0.000000 255 255 255 0 --0.879579 0.470145 0.000000 255 255 255 0 -0.879579 0.470146 0.000000 255 255 255 0 +-0.887385 -0.474317 0.000000 255 255 255 255 +-0.860611 -0.515685 0.000000 255 255 255 255 +-0.859843 -0.522526 0.000000 255 255 255 255 +0.777798 0.638324 0.000000 255 255 255 255 +0.805772 0.597758 0.000000 255 255 255 255 +0.775370 0.636331 0.000000 255 255 255 255 +0.098624 1.001350 0.000000 255 255 255 255 +0.147088 0.992445 0.000000 255 255 255 255 +0.098316 0.998223 0.000000 255 255 255 255 +-0.638323 0.777799 0.000000 255 255 255 255 +-0.673673 0.743469 0.000000 255 255 255 255 +-0.680233 0.741382 0.000000 255 255 255 255 +-0.098624 -1.001350 0.000000 255 255 255 255 +-0.049353 -1.002071 0.000000 255 255 255 255 +-0.043238 -1.005233 0.000000 255 255 255 255 +0.098625 -1.001350 0.000000 255 255 255 255 +0.147090 -0.992445 0.000000 255 255 255 255 +0.153704 -0.994353 0.000000 255 255 255 255 +0.638324 -0.777799 0.000000 255 255 255 255 +0.597757 -0.805772 0.000000 255 255 255 255 +0.636330 -0.775370 0.000000 255 255 255 255 +-0.292083 -0.962869 0.000000 255 255 255 255 +-0.243899 -0.973188 0.000000 255 255 255 255 +-0.238519 -0.977482 0.000000 255 255 255 255 +0.474318 -0.887384 0.000000 255 255 255 255 +0.429073 -0.906906 0.000000 255 255 255 255 +0.472836 -0.884613 0.000000 255 255 255 255 +-0.638323 -0.777799 0.000000 255 255 255 255 +-0.597757 -0.805772 0.000000 255 255 255 255 +-0.594429 -0.811799 0.000000 255 255 255 255 +-0.777799 -0.638323 0.000000 255 255 255 255 +-0.743469 -0.673673 0.000000 255 255 255 255 +-0.741382 -0.680233 0.000000 255 255 255 255 +0.049354 -1.002071 0.000000 255 255 255 255 +0.098317 -0.998223 0.000000 255 255 255 255 +-0.147089 -0.992445 0.000000 255 255 255 255 +-0.098316 -0.998223 0.000000 255 255 255 255 +-0.962869 -0.292083 0.000000 255 255 255 255 +-0.944680 -0.337879 0.000000 255 255 255 255 +-0.945261 -0.344739 0.000000 255 255 255 255 +-0.337879 -0.944680 0.000000 255 255 255 255 +-0.291171 -0.959862 0.000000 255 255 255 255 +-1.001350 -0.098624 0.000000 255 255 255 255 +-0.992445 -0.147089 0.000000 255 255 255 255 +-0.994353 -0.153703 0.000000 255 255 255 255 +0.292083 -0.962868 0.000000 255 255 255 255 +0.243900 -0.973188 0.000000 255 255 255 255 +0.291171 -0.959862 0.000000 255 255 255 255 +0.777800 -0.638323 0.000000 255 255 255 255 +0.743470 -0.673673 0.000000 255 255 255 255 +0.775371 -0.636329 0.000000 255 255 255 255 +-0.474317 -0.887385 0.000000 255 255 255 255 +-0.429072 -0.906906 0.000000 255 255 255 255 +-0.424633 -0.912168 0.000000 255 255 255 255 +0.962869 -0.292082 0.000000 255 255 255 255 +0.973188 -0.243898 0.000000 255 255 255 255 +0.977483 -0.238518 0.000000 255 255 255 255 +0.638322 0.777800 0.000000 255 255 255 255 +0.673672 0.743470 0.000000 255 255 255 255 +0.636329 0.775371 0.000000 255 255 255 255 +-0.292083 0.962868 0.000000 255 255 255 255 +-0.243899 0.973188 0.000000 255 255 255 255 +-0.291171 0.959862 0.000000 255 255 255 255 +0.887385 -0.474316 0.000000 255 255 255 255 +0.906907 -0.429072 0.000000 255 255 255 255 +0.912168 -0.424633 0.000000 255 255 255 255 +0.962868 0.292084 0.000000 255 255 255 255 +0.973188 0.243900 0.000000 255 255 255 255 +0.959861 0.291172 0.000000 255 255 255 255 +-0.098624 1.001350 0.000000 255 255 255 255 +-0.049353 1.002071 0.000000 255 255 255 255 +-0.098316 0.998223 0.000000 255 255 255 255 +0.515686 -0.860611 0.000000 255 255 255 255 +0.522527 -0.859843 0.000000 255 255 255 255 +0.805773 -0.597756 0.000000 255 255 255 255 +0.811799 -0.594429 0.000000 255 255 255 255 +0.887384 0.474318 0.000000 255 255 255 255 +0.906906 0.429073 0.000000 255 255 255 255 +0.884613 0.472837 0.000000 255 255 255 255 +0.944680 -0.337879 0.000000 255 255 255 255 +0.959862 -0.291170 0.000000 255 255 255 255 +1.001350 0.098625 0.000000 255 255 255 255 +1.002071 0.049354 0.000000 255 255 255 255 +0.998223 0.098317 0.000000 255 255 255 255 +0.860611 -0.515684 0.000000 255 255 255 255 +0.884614 -0.472835 0.000000 255 255 255 255 +0.337880 -0.944679 0.000000 255 255 255 255 +0.344739 -0.945261 0.000000 255 255 255 255 +1.001350 -0.098623 0.000000 255 255 255 255 +0.992445 -0.147089 0.000000 255 255 255 255 +0.998223 -0.098315 0.000000 255 255 255 255 +0.673674 -0.743469 0.000000 255 255 255 255 +0.680233 -0.741381 0.000000 255 255 255 255 +-0.962868 0.292083 0.000000 255 255 255 255 +-0.944679 0.337880 0.000000 255 255 255 255 +-0.959862 0.291171 0.000000 255 255 255 255 +-0.337880 0.944679 0.000000 255 255 255 255 +-0.344739 0.945261 0.000000 255 255 255 255 +-0.887385 0.474317 0.000000 255 255 255 255 +-0.860611 0.515685 0.000000 255 255 255 255 +-0.884614 0.472836 0.000000 255 255 255 255 +0.860610 0.515686 0.000000 255 255 255 255 +0.859842 0.522527 0.000000 255 255 255 255 +0.944679 0.337881 0.000000 255 255 255 255 +0.945261 0.344740 0.000000 255 255 255 255 +-0.777799 0.638323 0.000000 255 255 255 255 +-0.743469 0.673673 0.000000 255 255 255 255 +-0.775370 0.636330 0.000000 255 255 255 255 +0.992445 0.147090 0.000000 255 255 255 255 +0.994353 0.153704 0.000000 255 255 255 255 +-0.597757 0.805772 0.000000 255 255 255 255 +-0.636330 0.775370 0.000000 255 255 255 255 +1.002071 -0.049352 0.000000 255 255 255 255 +1.005233 -0.043238 0.000000 255 255 255 255 +-0.474317 0.887385 0.000000 255 255 255 255 +-0.429072 0.906906 0.000000 255 255 255 255 +-0.472836 0.884614 0.000000 255 255 255 255 +0.474316 0.887385 0.000000 255 255 255 255 +0.515684 0.860611 0.000000 255 255 255 255 +0.472835 0.884614 0.000000 255 255 255 255 +0.292082 0.962869 0.000000 255 255 255 255 +0.337878 0.944680 0.000000 255 255 255 255 +0.291169 0.959862 0.000000 255 255 255 255 +-0.147089 0.992445 0.000000 255 255 255 255 +-0.153703 0.994353 0.000000 255 255 255 255 +0.049353 1.002071 0.000000 255 255 255 255 +0.043238 1.005233 0.000000 255 255 255 255 +-0.906906 0.429072 0.000000 255 255 255 255 +-0.912168 0.424633 0.000000 255 255 255 255 +-0.906906 -0.429072 0.000000 255 255 255 255 +-0.884614 -0.472836 0.000000 255 255 255 255 +0.243898 0.973189 0.000000 255 255 255 255 +0.238518 0.977483 0.000000 255 255 255 255 +-1.002071 -0.049353 0.000000 255 255 255 255 +-0.998223 -0.098316 0.000000 255 255 255 255 +-0.973188 -0.243899 0.000000 255 255 255 255 +-0.959862 -0.291171 0.000000 255 255 255 255 +-0.805772 0.597757 0.000000 255 255 255 255 +-0.811799 0.594429 0.000000 255 255 255 255 +-1.001350 0.098624 0.000000 255 255 255 255 +-0.992445 0.147089 0.000000 255 255 255 255 +-0.998223 0.098316 0.000000 255 255 255 255 +0.429071 0.906907 0.000000 255 255 255 255 +0.424632 0.912168 0.000000 255 255 255 255 +0.743468 0.673674 0.000000 255 255 255 255 +0.741381 0.680234 0.000000 255 255 255 255 +0.597756 0.805773 0.000000 255 255 255 255 +0.594428 0.811800 0.000000 255 255 255 255 +-0.515685 0.860611 0.000000 255 255 255 255 +-0.522526 0.859843 0.000000 255 255 255 255 +-0.515685 -0.860611 0.000000 255 255 255 255 +-0.472836 -0.884614 0.000000 255 255 255 255 +-1.002071 0.049353 0.000000 255 255 255 255 +-1.005233 0.043239 0.000000 255 255 255 255 +-0.973188 0.243899 0.000000 255 255 255 255 +-0.977482 0.238519 0.000000 255 255 255 255 +-0.805772 -0.597757 0.000000 255 255 255 255 +-0.775370 -0.636330 0.000000 255 255 255 255 +-0.673673 -0.743469 0.000000 255 255 255 255 +-0.636330 -0.775370 0.000000 255 255 255 255 +0.811798 0.594430 0.000000 255 255 255 255 +0.153702 0.994354 0.000000 255 255 255 255 +0.594430 -0.811798 0.000000 255 255 255 255 +0.424634 -0.912167 0.000000 255 255 255 255 +0.043239 -1.005233 0.000000 255 255 255 255 +-0.153703 -0.994353 0.000000 255 255 255 255 +-0.344739 -0.945261 0.000000 255 255 255 255 +0.238519 -0.977482 0.000000 255 255 255 255 +0.741382 -0.680232 0.000000 255 255 255 255 +0.680232 0.741382 0.000000 255 255 255 255 +-0.238519 0.977482 0.000000 255 255 255 255 +0.977482 0.238520 0.000000 255 255 255 255 +-0.043239 1.005233 0.000000 255 255 255 255 +0.912167 0.424634 0.000000 255 255 255 255 +0.945261 -0.344738 0.000000 255 255 255 255 +1.005233 0.043240 0.000000 255 255 255 255 +0.859843 -0.522525 0.000000 255 255 255 255 +0.994353 -0.153703 0.000000 255 255 255 255 +-0.945261 0.344739 0.000000 255 255 255 255 +-0.859843 0.522526 0.000000 255 255 255 255 +-0.741382 0.680233 0.000000 255 255 255 255 +-0.594429 0.811799 0.000000 255 255 255 255 +-0.424633 0.912168 0.000000 255 255 255 255 +0.522525 0.859844 0.000000 255 255 255 255 +0.344737 0.945261 0.000000 255 255 255 255 +-0.912168 -0.424633 0.000000 255 255 255 255 +-1.005233 -0.043239 0.000000 255 255 255 255 +-0.977482 -0.238519 0.000000 255 255 255 255 +-0.994353 0.153704 0.000000 255 255 255 255 +-0.522526 -0.859843 0.000000 0 0 0 255 +-0.811799 -0.594429 0.000000 255 255 255 255 +-0.680233 -0.741382 0.000000 255 255 255 255 +-0.710166 -0.710166 0.000000 255 255 255 255 +-0.707716 -0.707716 0.000000 255 255 255 255 +-0.711964 -0.711964 0.000000 255 255 255 255 +-0.835067 -0.557974 0.000000 255 255 255 255 +-0.832186 -0.556049 0.000000 255 255 255 255 +-0.837181 -0.559386 0.000000 255 255 255 255 +-0.968943 0.249083 0.000000 255 255 255 255 +-0.981630 0.195258 0.000000 255 255 255 255 +-0.957428 0.290433 0.000000 255 255 255 255 +-0.998919 0.055265 0.000000 255 255 255 255 +-1.000862 0.000000 0.000000 255 255 255 255 +-0.995692 0.098067 0.000000 255 255 255 255 +-0.557974 -0.835067 0.000000 255 255 255 255 +-0.556049 -0.832186 0.000000 255 255 255 255 +-0.559386 -0.837181 0.000000 255 255 255 255 +-0.509018 0.861274 0.000000 255 255 255 255 +-0.556049 0.832186 0.000000 255 255 255 255 +-0.471637 0.882371 0.000000 255 255 255 255 +0.600920 0.799868 0.000000 255 255 255 255 +0.556048 0.832187 0.000000 255 255 255 255 +0.634716 0.773405 0.000000 255 255 255 255 +0.745420 0.667265 0.000000 255 255 255 255 +0.707715 0.707717 0.000000 255 255 255 255 +0.773404 0.634718 0.000000 255 255 255 255 +0.433327 0.901732 0.000000 255 255 255 255 +0.383012 0.924676 0.000000 255 255 255 255 +0.471636 0.882372 0.000000 255 255 255 255 +-0.985028 0.195934 0.000000 255 255 255 255 +-0.987522 0.196430 0.000000 255 255 255 255 +-0.799867 0.600921 0.000000 255 255 255 255 +-0.832186 0.556049 0.000000 255 255 255 255 +-0.773404 0.634717 0.000000 255 255 255 255 +-0.985028 -0.195934 0.000000 255 255 255 255 +-0.981630 -0.195258 0.000000 255 255 255 255 +-0.987523 -0.196430 0.000000 255 255 255 255 +-1.004326 0.000000 0.000000 255 255 255 255 +-1.006869 0.000000 0.000000 255 255 255 255 +0.249081 0.968944 0.000000 255 255 255 255 +0.195257 0.981631 0.000000 255 255 255 255 +0.290431 0.957429 0.000000 255 255 255 255 +-0.927876 -0.384339 0.000000 255 255 255 255 +-0.924675 -0.383013 0.000000 255 255 255 255 +-0.930226 -0.385312 0.000000 255 255 255 255 +-0.901732 0.433328 0.000000 255 255 255 255 +-0.924675 0.383013 0.000000 255 255 255 255 +-0.882371 0.471637 0.000000 255 255 255 255 +0.055265 0.998919 0.000000 255 255 255 255 +-0.000000 1.000862 0.000000 255 255 255 255 +0.098066 0.995692 0.000000 255 255 255 255 +-0.140676 0.990507 0.000000 255 255 255 255 +-0.195258 0.981630 0.000000 255 255 255 255 +-0.098067 0.995692 0.000000 255 255 255 255 +0.384338 0.927877 0.000000 255 255 255 255 +0.385311 0.930226 0.000000 255 255 255 255 +0.557973 0.835067 0.000000 255 255 255 255 +0.559385 0.837182 0.000000 255 255 255 255 +-0.384339 0.927876 0.000000 255 255 255 255 +-0.383013 0.924675 0.000000 255 255 255 255 +-0.385312 0.930226 0.000000 255 255 255 255 +0.998919 -0.055264 0.000000 255 255 255 255 +1.000861 0.000001 0.000000 255 255 255 255 +0.995692 -0.098066 0.000000 255 255 255 255 +-0.557974 0.835067 0.000000 255 255 255 255 +-0.559387 0.837181 0.000000 255 255 255 255 +0.990507 0.140677 0.000000 255 255 255 255 +0.981630 0.195259 0.000000 255 255 255 255 +0.995692 0.098068 0.000000 255 255 255 255 +-0.710166 0.710166 0.000000 255 255 255 255 +-0.707716 0.707716 0.000000 255 255 255 255 +-0.711964 0.711964 0.000000 255 255 255 255 +0.944029 0.331212 0.000000 255 255 255 255 +0.924675 0.383014 0.000000 255 255 255 255 +0.957428 0.290434 0.000000 255 255 255 255 +0.861274 0.509019 0.000000 255 255 255 255 +0.832185 0.556050 0.000000 255 255 255 255 +0.882370 0.471638 0.000000 255 255 255 255 +-0.835067 0.557974 0.000000 255 255 255 255 +-0.837181 0.559386 0.000000 255 255 255 255 +-0.331211 0.944030 0.000000 255 255 255 255 +-0.290433 0.957428 0.000000 255 255 255 255 +-0.927876 0.384339 0.000000 255 255 255 255 +-0.930226 0.385312 0.000000 255 255 255 255 +0.667264 -0.745420 0.000000 255 255 255 255 +0.707716 -0.707716 0.000000 255 255 255 255 +0.634717 -0.773404 0.000000 255 255 255 255 +0.985028 -0.195933 0.000000 255 255 255 255 +0.981630 -0.195258 0.000000 255 255 255 255 +0.987523 -0.196430 0.000000 255 255 255 255 +0.331212 -0.944030 0.000000 255 255 255 255 +0.383014 -0.924675 0.000000 255 255 255 255 +0.290433 -0.957428 0.000000 255 255 255 255 +0.835067 -0.557973 0.000000 255 255 255 255 +0.832186 -0.556048 0.000000 255 255 255 255 +0.837182 -0.559386 0.000000 255 255 255 255 +1.004326 0.000001 0.000000 255 255 255 255 +1.006869 0.000001 0.000000 255 255 255 255 +0.927877 -0.384338 0.000000 255 255 255 255 +0.924676 -0.383012 0.000000 255 255 255 255 +0.930226 -0.385311 0.000000 255 255 255 255 +0.927876 0.384340 0.000000 255 255 255 255 +0.930225 0.385313 0.000000 255 255 255 255 +0.799867 -0.600920 0.000000 255 255 255 255 +0.773405 -0.634716 0.000000 255 255 255 255 +0.509019 -0.861274 0.000000 255 255 255 255 +0.556049 -0.832186 0.000000 255 255 255 255 +0.471637 -0.882371 0.000000 255 255 255 255 +-0.000000 1.004326 0.000000 255 255 255 255 +-0.000000 1.006869 0.000000 255 255 255 255 +0.985028 0.195935 0.000000 255 255 255 255 +0.987522 0.196431 0.000000 255 255 255 255 +0.901732 -0.433328 0.000000 255 255 255 255 +0.882371 -0.471636 0.000000 255 255 255 255 +-0.195934 0.985028 0.000000 255 255 255 255 +-0.196430 0.987522 0.000000 255 255 255 255 +0.710165 0.710167 0.000000 255 255 255 255 +0.711963 0.711965 0.000000 255 255 255 255 +0.968943 -0.249082 0.000000 255 255 255 255 +0.957428 -0.290432 0.000000 255 255 255 255 +-0.433328 -0.901732 0.000000 255 255 255 255 +-0.383013 -0.924675 0.000000 255 255 255 255 +-0.471637 -0.882371 0.000000 255 255 255 255 +0.710166 -0.710165 0.000000 255 255 255 255 +0.711965 -0.711964 0.000000 255 255 255 255 +0.195935 -0.985028 0.000000 255 255 255 255 +0.195259 -0.981630 0.000000 255 255 255 255 +0.196431 -0.987522 0.000000 255 255 255 255 +-0.990507 -0.140676 0.000000 255 255 255 255 +-0.995692 -0.098067 0.000000 255 255 255 255 +-0.384339 -0.927876 0.000000 255 255 255 255 +-0.385312 -0.930226 0.000000 255 255 255 255 +-0.944030 -0.331211 0.000000 255 255 255 255 +-0.957428 -0.290433 0.000000 255 255 255 255 +-0.195934 -0.985028 0.000000 255 255 255 255 +-0.195258 -0.981630 0.000000 255 255 255 255 +-0.196430 -0.987523 0.000000 255 255 255 255 +0.000000 -1.004326 0.000000 255 255 255 255 +0.000000 -1.000861 0.000000 255 255 255 255 +0.000000 -1.006869 0.000000 255 255 255 255 +-0.745421 -0.667264 0.000000 255 255 255 255 +-0.773404 -0.634717 0.000000 255 255 255 255 +-0.600921 -0.799867 0.000000 255 255 255 255 +-0.634717 -0.773404 0.000000 255 255 255 255 +0.384339 -0.927876 0.000000 255 255 255 255 +0.385313 -0.930226 0.000000 255 255 255 255 +-0.249083 -0.968943 0.000000 255 255 255 255 +-0.290432 -0.957428 0.000000 255 255 255 255 +0.557974 -0.835066 0.000000 255 255 255 255 +0.559387 -0.837181 0.000000 255 255 255 255 +0.140676 -0.990507 0.000000 255 255 255 255 +0.098067 -0.995692 0.000000 255 255 255 255 +-0.055265 -0.998919 0.000000 255 255 255 255 +-0.098067 -0.995692 0.000000 255 255 255 255 +-0.667264 0.745421 0.000000 255 255 255 255 +-0.634717 0.773404 0.000000 255 255 255 255 +0.195933 0.985029 0.000000 255 255 255 255 +0.196429 0.987523 0.000000 255 255 255 255 +0.835066 0.557975 0.000000 255 255 255 255 +0.837180 0.559388 0.000000 255 255 255 255 +-0.861274 -0.509018 0.000000 255 255 255 255 +-0.882371 -0.471637 0.000000 255 255 255 255 +-0.667264 -0.745421 0.000000 255 255 255 255 +-0.799867 -0.600921 0.000000 255 255 255 255 +-0.509018 -0.861275 0.000000 255 255 255 255 +-0.990507 0.140676 0.000000 255 255 255 255 +-0.968943 -0.249083 0.000000 255 255 255 255 +-0.998919 -0.055265 0.000000 255 255 255 255 +-0.901732 -0.433328 0.000000 255 255 255 255 +0.331210 0.944030 0.000000 255 255 255 255 +0.509017 0.861275 0.000000 255 255 255 255 +-0.433328 0.901732 0.000000 255 255 255 255 +-0.600921 0.799867 0.000000 255 255 255 255 +-0.745421 0.667264 0.000000 255 255 255 255 +-0.861274 0.509018 0.000000 255 255 255 255 +-0.944030 0.331211 0.000000 255 255 255 255 +0.990507 -0.140675 0.000000 255 255 255 255 +0.861275 -0.509017 0.000000 255 255 255 255 +0.998919 0.055266 0.000000 255 255 255 255 +0.944030 -0.331210 0.000000 255 255 255 255 +0.901731 0.433329 0.000000 255 255 255 255 +-0.055265 0.998919 0.000000 255 255 255 255 +0.968943 0.249084 0.000000 255 255 255 255 +-0.249083 0.968943 0.000000 255 255 255 255 +0.667263 0.745422 0.000000 255 255 255 255 +0.745421 -0.667263 0.000000 255 255 255 255 +0.249083 -0.968943 0.000000 255 255 255 255 +-0.331211 -0.944030 0.000000 255 255 255 255 +-0.140676 -0.990507 0.000000 255 255 255 255 +0.055266 -0.998919 0.000000 255 255 255 255 +0.433329 -0.901731 0.000000 255 255 255 255 +0.600922 -0.799867 0.000000 255 255 255 255 +0.140675 0.990507 0.000000 255 255 255 255 +0.799866 0.600922 0.000000 255 255 255 255 3 0 1 2 3 3 4 5 3 6 7 8 @@ -212,251 +404,507 @@ end_header 3 15 16 17 3 18 19 20 3 21 22 23 -3 8 24 25 -3 26 27 28 -3 29 30 31 -3 32 33 34 -3 35 36 37 -3 38 39 40 -3 41 42 43 -3 11 44 45 -3 46 47 48 -3 49 50 51 -3 52 53 54 -3 55 56 57 -3 58 59 60 -3 61 62 63 -3 64 65 66 -3 52 67 68 -3 11 69 70 -3 8 50 71 -3 72 73 74 -3 75 76 77 -3 78 79 18 -3 80 81 82 -3 83 84 85 -3 86 87 88 -3 89 90 91 -3 75 73 46 -3 72 81 41 -3 92 2 93 -3 80 94 15 -3 95 96 97 -3 49 53 98 -3 99 100 101 -3 0 102 103 -3 38 104 105 -3 106 107 108 -3 109 76 61 -3 110 111 55 -3 112 94 113 +3 24 25 26 +3 27 28 29 +3 30 31 32 +3 15 33 34 +3 12 35 36 +3 37 38 39 +3 21 40 41 +3 42 43 44 +3 45 46 47 +3 48 49 50 +3 51 52 53 +3 54 55 56 +3 57 58 59 +3 60 61 62 +3 63 64 65 +3 66 67 68 +3 69 70 71 +3 24 72 73 +3 48 74 75 +3 76 77 78 +3 54 79 80 +3 81 82 83 +3 63 84 85 +3 45 86 87 +3 88 89 90 +3 18 91 92 +3 93 94 95 +3 60 96 97 +3 98 99 100 +3 76 101 102 +3 66 103 104 +3 105 106 107 +3 81 108 109 +3 9 110 111 +3 88 112 113 3 114 115 116 -3 117 71 49 -3 118 119 120 -3 121 122 123 -3 124 125 38 -3 126 70 127 -3 83 79 128 -3 110 129 130 -3 131 105 132 -3 114 122 133 -3 134 135 32 -3 121 129 64 -3 109 84 136 -3 137 115 21 -3 78 111 138 -3 139 140 58 -3 118 141 142 -3 143 144 145 -3 131 7 146 -3 124 105 147 -3 148 13 149 -3 134 125 150 -3 12 151 152 -3 137 135 153 -3 154 141 155 -3 156 98 52 -3 157 68 158 -3 126 119 159 -3 9 70 160 -3 143 140 161 -3 3 2 162 -3 157 10 163 -3 95 164 99 -3 92 96 0 -3 148 144 165 -3 166 167 106 -3 156 68 168 -3 6 71 169 -3 117 98 170 -3 154 151 171 -3 127 172 119 -3 152 173 13 -3 149 174 144 -3 162 1 175 -3 112 87 35 -3 166 164 176 -3 139 167 177 -3 89 4 26 -3 86 90 29 -3 120 178 141 -3 132 24 7 -3 85 19 79 -3 99 102 96 -3 61 179 84 -3 35 16 94 -3 120 172 180 -3 85 179 181 -3 155 178 182 -3 149 173 183 -3 158 67 184 -3 162 27 4 -3 64 185 122 -3 106 100 164 -3 41 47 73 -3 32 39 125 -3 133 22 115 -3 127 69 186 -3 155 187 151 -3 26 30 90 -3 152 187 188 -3 158 44 10 -3 46 62 76 -3 18 56 111 -3 21 33 135 -3 29 36 87 -3 133 185 189 -3 58 107 167 -3 55 65 129 -3 145 174 190 -3 145 59 140 -3 132 104 191 -3 15 42 81 -3 0 103 1 -3 3 162 4 -3 6 146 7 -3 9 163 10 -3 12 152 13 -3 15 94 16 -3 18 79 19 -3 21 115 22 -3 8 7 24 -3 26 4 27 -3 29 90 30 -3 32 135 33 -3 35 87 36 -3 38 125 39 -3 41 81 42 -3 11 10 44 -3 46 73 47 -3 49 71 50 -3 52 98 53 -3 55 111 56 -3 58 140 59 -3 61 76 62 -3 64 129 65 -3 52 54 67 -3 11 45 69 -3 8 25 50 -3 72 41 73 -3 75 46 76 -3 78 128 79 -3 80 15 81 -3 83 136 84 -3 86 29 87 -3 89 26 90 -3 75 74 73 -3 72 82 81 -3 92 0 2 -3 80 113 94 -3 95 99 96 -3 49 51 53 -3 99 164 100 -3 0 96 102 -3 38 40 104 -3 106 167 107 -3 109 77 76 -3 110 138 111 -3 112 35 94 -3 114 133 115 -3 117 169 71 -3 118 159 119 -3 121 64 122 -3 124 150 125 -3 126 160 70 -3 83 85 79 -3 110 55 129 -3 131 147 105 -3 114 123 122 -3 134 153 135 -3 121 130 129 -3 109 61 84 -3 137 116 115 -3 78 18 111 -3 139 161 140 -3 118 120 141 -3 143 165 144 -3 131 132 7 -3 124 38 105 -3 148 14 13 -3 134 32 125 -3 12 171 151 -3 137 21 135 -3 154 142 141 -3 156 170 98 -3 157 168 68 -3 126 127 119 -3 9 11 70 -3 143 145 140 -3 3 93 2 -3 157 158 10 -3 95 176 164 -3 92 97 96 -3 148 149 144 -3 166 177 167 -3 156 52 68 -3 6 8 71 -3 117 49 98 -3 154 155 151 -3 127 186 172 -3 152 188 173 -3 149 183 174 -3 162 2 1 -3 112 88 87 -3 166 106 164 -3 139 58 167 -3 89 5 4 -3 86 91 90 -3 120 180 178 -3 132 191 24 -3 85 181 19 -3 99 101 102 -3 61 63 179 -3 35 37 16 -3 120 119 172 -3 85 84 179 -3 155 141 178 -3 149 13 173 -3 158 68 67 -3 162 175 27 -3 64 66 185 -3 106 108 100 -3 41 43 47 -3 32 34 39 -3 133 189 22 -3 127 70 69 -3 155 182 187 -3 26 28 30 -3 152 151 187 -3 158 184 44 -3 46 48 62 -3 18 20 56 -3 21 23 33 -3 29 31 36 -3 133 122 185 -3 58 60 107 -3 55 57 65 -3 145 144 174 -3 145 190 59 -3 132 105 104 -3 15 17 42 +3 117 118 119 +3 120 121 122 +3 69 123 124 +3 6 125 126 +3 98 127 128 +3 0 129 130 +3 120 131 132 +3 42 133 134 +3 37 135 136 +3 105 137 138 +3 139 140 141 +3 117 142 143 +3 3 144 145 +3 57 146 147 +3 114 148 149 +3 51 150 151 +3 139 152 153 +3 93 154 155 +3 30 156 157 +3 27 158 159 +3 0 130 1 +3 3 160 4 +3 6 161 7 +3 9 111 10 +3 12 36 13 +3 15 34 16 +3 18 162 19 +3 21 41 22 +3 24 163 25 +3 27 159 28 +3 30 157 31 +3 15 164 33 +3 12 165 35 +3 37 136 38 +3 21 166 40 +3 42 134 43 +3 45 167 46 +3 48 168 49 +3 51 151 52 +3 54 80 55 +3 57 169 58 +3 60 170 61 +3 63 85 64 +3 66 171 67 +3 69 172 70 +3 24 26 72 +3 48 50 74 +3 76 173 77 +3 54 174 79 +3 81 175 82 +3 63 176 84 +3 45 47 86 +3 88 177 89 +3 18 20 91 +3 93 178 94 +3 60 62 96 +3 98 179 99 +3 76 78 101 +3 66 68 103 +3 105 180 106 +3 81 83 108 +3 9 181 110 +3 88 90 112 +3 114 182 115 +3 117 183 118 +3 120 184 121 +3 69 71 123 +3 6 8 125 +3 98 100 127 +3 0 185 129 +3 120 122 131 +3 42 186 133 +3 37 187 135 +3 105 107 137 +3 139 188 140 +3 117 119 142 +3 3 5 144 +3 57 59 146 +3 114 116 148 +3 51 189 150 +3 139 141 152 +3 93 95 154 +3 30 190 156 +3 27 191 158 +3 158 192 193 +3 158 191 192 +3 191 194 192 +3 156 195 196 +3 156 190 195 +3 190 197 195 +3 154 198 199 +3 154 95 198 +3 95 200 198 +3 152 201 202 +3 152 141 201 +3 141 203 201 +3 150 204 205 +3 150 189 204 +3 189 206 204 +3 148 207 208 +3 148 116 207 +3 116 209 207 +3 146 210 211 +3 146 59 210 +3 59 212 210 +3 144 213 214 +3 144 5 213 +3 5 215 213 +3 142 216 217 +3 142 119 216 +3 119 218 216 +3 140 219 199 +3 140 188 219 +3 188 220 219 +3 137 221 222 +3 137 107 221 +3 107 223 221 +3 135 224 225 +3 135 187 224 +3 187 226 224 +3 133 227 202 +3 133 186 227 +3 186 228 227 +3 131 229 230 +3 131 122 229 +3 122 231 229 +3 129 232 233 +3 129 185 232 +3 185 234 232 +3 127 235 236 +3 127 100 235 +3 100 237 235 +3 125 238 239 +3 125 8 238 +3 8 240 238 +3 123 241 242 +3 123 71 241 +3 71 243 241 +3 121 244 217 +3 121 184 244 +3 184 245 244 +3 118 246 211 +3 118 183 246 +3 183 247 246 +3 115 248 249 +3 115 182 248 +3 182 250 248 +3 112 251 252 +3 112 90 251 +3 90 253 251 +3 110 254 208 +3 110 181 254 +3 181 255 254 +3 108 256 257 +3 108 83 256 +3 83 258 256 +3 106 259 260 +3 106 180 259 +3 180 261 259 +3 103 262 263 +3 103 68 262 +3 68 264 262 +3 101 265 266 +3 101 78 265 +3 78 267 265 +3 99 268 222 +3 99 179 268 +3 179 269 268 +3 96 270 249 +3 96 62 270 +3 62 271 270 +3 94 272 236 +3 94 178 272 +3 178 273 272 +3 91 274 275 +3 91 20 274 +3 20 276 274 +3 89 277 278 +3 89 177 277 +3 177 279 277 +3 86 280 281 +3 86 47 280 +3 47 282 280 +3 84 283 284 +3 84 176 283 +3 176 285 283 +3 82 286 252 +3 82 175 286 +3 175 287 286 +3 79 288 289 +3 79 174 288 +3 174 290 288 +3 77 291 263 +3 77 173 291 +3 173 292 291 +3 74 293 284 +3 74 50 293 +3 50 294 293 +3 72 295 296 +3 72 26 295 +3 26 297 295 +3 70 298 239 +3 70 172 298 +3 172 299 298 +3 67 300 257 +3 67 171 300 +3 171 301 300 +3 64 302 289 +3 64 85 302 +3 85 303 302 +3 61 304 242 +3 61 170 304 +3 170 305 304 +3 58 306 214 +3 58 169 306 +3 169 307 306 +3 55 308 278 +3 55 80 308 +3 80 309 308 +3 52 310 311 +3 52 151 310 +3 151 312 310 +3 49 313 275 +3 49 168 313 +3 168 314 313 +3 46 315 316 +3 46 167 315 +3 167 317 315 +3 43 318 225 +3 43 134 318 +3 134 319 318 +3 40 320 311 +3 40 166 320 +3 166 321 320 +3 38 322 233 +3 38 136 322 +3 136 323 322 +3 35 324 325 +3 35 165 324 +3 165 326 324 +3 33 327 328 +3 33 164 327 +3 164 329 327 +3 31 330 193 +3 31 157 330 +3 157 331 330 +3 28 332 205 +3 28 159 332 +3 159 333 332 +3 25 334 281 +3 25 163 334 +3 163 335 334 +3 22 336 325 +3 22 41 336 +3 41 337 336 +3 19 338 296 +3 19 162 338 +3 162 339 338 +3 16 340 316 +3 16 34 340 +3 34 341 340 +3 13 342 328 +3 13 36 342 +3 36 343 342 +3 10 344 260 +3 10 111 344 +3 111 345 344 +3 7 346 230 +3 7 161 346 +3 161 347 346 +3 4 348 266 +3 4 160 348 +3 160 349 348 +3 1 350 196 +3 1 130 350 +3 130 351 350 +3 159 352 333 +3 159 158 352 +3 158 193 352 +3 157 353 331 +3 157 156 353 +3 156 196 353 +3 155 219 220 +3 155 154 219 +3 154 199 219 +3 153 227 228 +3 153 152 227 +3 152 202 227 +3 151 354 312 +3 151 150 354 +3 150 205 354 +3 149 254 255 +3 149 148 254 +3 148 208 254 +3 147 246 247 +3 147 146 246 +3 146 211 246 +3 145 306 307 +3 145 144 306 +3 144 214 306 +3 143 244 245 +3 143 142 244 +3 142 217 244 +3 141 355 203 +3 141 140 355 +3 140 199 355 +3 138 268 269 +3 138 137 268 +3 137 222 268 +3 136 356 323 +3 136 135 356 +3 135 225 356 +3 134 357 319 +3 134 133 357 +3 133 202 357 +3 132 346 347 +3 132 131 346 +3 131 230 346 +3 130 358 351 +3 130 129 358 +3 129 233 358 +3 128 272 273 +3 128 127 272 +3 127 236 272 +3 126 298 299 +3 126 125 298 +3 125 239 298 +3 124 304 305 +3 124 123 304 +3 123 242 304 +3 122 359 231 +3 122 121 359 +3 121 217 359 +3 119 360 218 +3 119 118 360 +3 118 211 360 +3 116 361 209 +3 116 115 361 +3 115 249 361 +3 113 286 287 +3 113 112 286 +3 112 252 286 +3 111 362 345 +3 111 110 362 +3 110 208 362 +3 109 300 301 +3 109 108 300 +3 108 257 300 +3 107 363 223 +3 107 106 363 +3 106 260 363 +3 104 291 292 +3 104 103 291 +3 103 263 291 +3 102 348 349 +3 102 101 348 +3 101 266 348 +3 100 364 237 +3 100 99 364 +3 99 222 364 +3 97 248 250 +3 97 96 248 +3 96 249 248 +3 95 365 200 +3 95 94 365 +3 94 236 365 +3 92 313 314 +3 92 91 313 +3 91 275 313 +3 90 366 253 +3 90 89 366 +3 89 278 366 +3 87 334 335 +3 87 86 334 +3 86 281 334 +3 85 367 303 +3 85 84 367 +3 84 284 367 +3 83 368 258 +3 83 82 368 +3 82 252 368 +3 80 369 309 +3 80 79 369 +3 79 289 369 +3 78 370 267 +3 78 77 370 +3 77 263 370 +3 75 283 285 +3 75 74 283 +3 74 284 283 +3 73 338 339 +3 73 72 338 +3 72 296 338 +3 71 371 243 +3 71 70 371 +3 70 239 371 +3 68 372 264 +3 68 67 372 +3 67 257 372 +3 65 288 290 +3 65 64 288 +3 64 289 288 +3 62 373 271 +3 62 61 373 +3 61 242 373 +3 59 374 212 +3 59 58 374 +3 58 214 374 +3 56 277 279 +3 56 55 277 +3 55 278 277 +3 53 320 321 +3 53 52 320 +3 52 311 320 +3 50 375 294 +3 50 49 375 +3 49 275 375 +3 47 376 282 +3 47 46 376 +3 46 316 376 +3 44 224 226 +3 44 43 224 +3 43 225 224 +3 41 377 337 +3 41 40 377 +3 40 311 377 +3 39 232 234 +3 39 38 232 +3 38 233 232 +3 36 378 343 +3 36 35 378 +3 35 325 378 +3 34 379 341 +3 34 33 379 +3 33 328 379 +3 32 192 194 +3 32 31 192 +3 31 193 192 +3 29 204 206 +3 29 28 204 +3 28 205 204 +3 26 380 297 +3 26 25 380 +3 25 281 380 +3 23 324 326 +3 23 22 324 +3 22 325 324 +3 20 381 276 +3 20 19 381 +3 19 296 381 +3 17 315 317 +3 17 16 315 +3 16 316 315 +3 14 327 329 +3 14 13 327 +3 13 328 327 +3 11 259 261 +3 11 10 259 +3 10 260 259 +3 8 382 240 +3 8 7 382 +3 7 230 382 +3 5 383 215 +3 5 4 383 +3 4 266 383 +3 2 195 197 +3 2 1 195 +3 1 196 195