diff --git a/Gemfile b/Gemfile index a7f15b9..7b6168c 100644 --- a/Gemfile +++ b/Gemfile @@ -1,73 +1,41 @@ source 'https://rubygems.org' -# Bundle edge Rails instead: gem 'rails', github: 'rails/rails' -gem 'rails', '4.0.0' - +gem 'rails', '4.1.4' +gem 'bcrypt', '~> 3.1.7' -gem 'bcrypt-ruby', '~> 3.0.0' -# Use sqlite3 as the database for Active Record gem 'sqlite3' -gem 'mysql2' - -# Use Uglifier as compressor for JavaScript assets +gem 'sass-rails', '~> 4.0.3' gem 'uglifier', '>= 1.3.0' - -# Use CoffeeScript for .js.coffee assets and views gem 'coffee-rails', '~> 4.0.0' -# See https://github.com/sstephenson/execjs#readme for more supported runtimes -# gem 'therubyracer', platforms: :ruby - -# Use jquery as the JavaScript library gem 'jquery-rails' - -# Turbolinks makes following links in your web application faster. Read more: https://github.com/rails/turbolinks gem 'turbolinks' +gem 'jbuilder', '~> 2.0' -# Build JSON APIs with ease. Read more: https://github.com/rails/jbuilder -gem 'jbuilder', '~> 1.0.1' +gem 'sdoc', '~> 0.4.0', group: :doc -gem "therubyracer" -gem "less-rails" , "2.3.3" -gem "twitter-bootstrap-rails" +gem 'spring', group: :development gem 'haml-rails' -gem 'nokogiri' -gem 'acts_as_tree' -gem 'formtastic', :git => 'git://github.com/justinfrench/formtastic.git' - -gem 'kaminari-bootstrap' - - -gem "htmlentities" - -gem 'carrierwave' -gem 'rmagick' - -group :doc do - # bundle exec rake doc:rails generates the API under doc/api. - gem 'sdoc', require: false -end - -gem "capistrano", group: :development -gem "rvm-capistrano", group: :development - -# Use ActiveModel has_secure_password -# gem 'bcrypt-ruby', '~> 3.0.0' - -# Use unicorn as the app server gem 'unicorn' -gem "nokogiri" +gem "capistrano", '2.15.5', group: :development +gem "rvm-capistrano",'1.4.1', group: :development +gem 'net-ssh', '~>2.7.0' + +gem "therubyracer" + + +gem 'carrierwave' +gem 'rmagick', :require => 'RMagick' +gem 'acts_as_tree' +gem 'formtastic', "2.3.0" + +gem "twitter-bootstrap-rails" +gem 'formtastic-bootstrap' gem 'kaminari-bootstrap' - gem 'acts_as_commentable' - -# Use debugger -# gem 'debugger', group: [:development, :test] - - -gem 'net-ssh', '2.7.0' +gem "mysql2" \ No newline at end of file diff --git a/Gemfile.lock b/Gemfile.lock index fc3cace..6238a5d 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -1,43 +1,38 @@ -GIT - remote: git://github.com/justinfrench/formtastic.git - revision: c79e46560d1516c6c3c0ef85fb29bed8e36068ac - specs: - formtastic (2.3.0.rc3) - actionpack (>= 3.2.13) - GEM remote: https://rubygems.org/ specs: - actionmailer (4.0.0) - actionpack (= 4.0.0) - mail (~> 2.5.3) - actionpack (4.0.0) - activesupport (= 4.0.0) - builder (~> 3.1.0) - erubis (~> 2.7.0) + actionmailer (4.1.4) + actionpack (= 4.1.4) + actionview (= 4.1.4) + mail (~> 2.5.4) + actionpack (4.1.4) + actionview (= 4.1.4) + activesupport (= 4.1.4) rack (~> 1.5.2) rack-test (~> 0.6.2) - activemodel (4.0.0) - activesupport (= 4.0.0) - builder (~> 3.1.0) - activerecord (4.0.0) - activemodel (= 4.0.0) - activerecord-deprecated_finders (~> 1.0.2) - activesupport (= 4.0.0) - arel (~> 4.0.0) - activerecord-deprecated_finders (1.0.3) - activesupport (4.0.0) - i18n (~> 0.6, >= 0.6.4) - minitest (~> 4.2) - multi_json (~> 1.3) + actionview (4.1.4) + activesupport (= 4.1.4) + builder (~> 3.1) + erubis (~> 2.7.0) + activemodel (4.1.4) + activesupport (= 4.1.4) + builder (~> 3.1) + activerecord (4.1.4) + activemodel (= 4.1.4) + activesupport (= 4.1.4) + arel (~> 5.0.0) + activesupport (4.1.4) + i18n (~> 0.6, >= 0.6.9) + json (~> 1.7, >= 1.7.7) + minitest (~> 5.1) thread_safe (~> 0.1) - tzinfo (~> 0.3.37) - acts_as_commentable (4.0.1) - acts_as_tree (1.5.1) + tzinfo (~> 1.1) + acts_as_commentable (4.0.2) + acts_as_tree (2.1.0) activerecord (>= 3.0.0) - arel (4.0.2) - bcrypt-ruby (3.0.1) - builder (3.1.4) + arel (5.0.1.20140414130214) + bcrypt (3.1.7) + builder (3.2.2) capistrano (2.15.5) highline net-scp (>= 1.0.0) @@ -52,94 +47,98 @@ GEM coffee-rails (4.0.1) coffee-script (>= 2.2.0) railties (>= 4.0.0, < 5.0) - coffee-script (2.2.0) + coffee-script (2.3.0) coffee-script-source execjs - coffee-script-source (1.7.0) - commonjs (0.2.7) + coffee-script-source (1.8.0) erubis (2.7.0) - execjs (2.0.2) + execjs (2.2.1) + formtastic (2.3.0) + actionpack (>= 3.0) + formtastic-bootstrap (3.0.0) + formtastic (>= 2.2) haml (4.0.5) tilt - haml-rails (0.5.1) - actionpack (~> 4.0.0) - activesupport (~> 4.0.0) + haml-rails (0.5.3) + actionpack (>= 4.0.1) + activesupport (>= 4.0.1) haml (>= 3.1, < 5.0) - railties (~> 4.0.0) + railties (>= 4.0.1) highline (1.6.21) hike (1.2.3) - htmlentities (4.3.1) - i18n (0.6.9) - jbuilder (1.0.2) - activesupport (>= 3.0.0) - jquery-rails (3.1.0) + i18n (0.6.11) + jbuilder (2.1.3) + activesupport (>= 3.0.0, < 5) + multi_json (~> 1.2) + jquery-rails (3.1.2) railties (>= 3.0, < 5.0) thor (>= 0.14, < 2.0) json (1.8.1) - kaminari (0.15.1) + kaminari (0.16.1) actionpack (>= 3.0.0) activesupport (>= 3.0.0) kaminari-bootstrap (3.0.1) kaminari (>= 0.13.0) rails kgio (2.9.2) - less (2.3.3) - commonjs (~> 0.2.6) - less-rails (2.3.3) - actionpack (>= 3.1) - less (~> 2.3.1) - libv8 (3.16.14.3) + libv8 (3.16.14.7) mail (2.5.4) mime-types (~> 1.16) treetop (~> 1.4.8) mime-types (1.25.1) - mini_portile (0.5.3) - minitest (4.7.5) - multi_json (1.9.2) - mysql2 (0.3.15) - net-scp (1.2.0) + minitest (5.4.2) + multi_json (1.10.1) + mysql2 (0.3.16) + net-scp (1.2.1) net-ssh (>= 2.6.5) net-sftp (2.1.2) net-ssh (>= 2.6.5) net-ssh (2.7.0) net-ssh-gateway (1.2.0) net-ssh (>= 2.6.5) - nokogiri (1.6.1) - mini_portile (~> 0.5.0) - polyglot (0.3.4) + polyglot (0.3.5) rack (1.5.2) rack-test (0.6.2) rack (>= 1.0) - rails (4.0.0) - actionmailer (= 4.0.0) - actionpack (= 4.0.0) - activerecord (= 4.0.0) - activesupport (= 4.0.0) + rails (4.1.4) + actionmailer (= 4.1.4) + actionpack (= 4.1.4) + actionview (= 4.1.4) + activemodel (= 4.1.4) + activerecord (= 4.1.4) + activesupport (= 4.1.4) bundler (>= 1.3.0, < 2.0) - railties (= 4.0.0) - sprockets-rails (~> 2.0.0) - railties (4.0.0) - actionpack (= 4.0.0) - activesupport (= 4.0.0) + railties (= 4.1.4) + sprockets-rails (~> 2.0) + railties (4.1.4) + actionpack (= 4.1.4) + activesupport (= 4.1.4) rake (>= 0.8.7) thor (>= 0.18.1, < 2.0) raindrops (0.13.0) - rake (10.3.0) - rdoc (4.1.1) + rake (10.3.2) + rdoc (4.1.2) json (~> 1.4) ref (1.0.5) - rmagick (2.13.2) - rvm-capistrano (1.5.1) - capistrano (~> 2.15.4) - sdoc (0.4.0) - json (~> 1.8) - rdoc (~> 4.0, < 5.0) - sprockets (2.12.0) + rmagick (2.13.3) + rvm-capistrano (1.4.1) + capistrano (>= 2.0.0) + sass (3.2.19) + sass-rails (4.0.3) + railties (>= 4.0.0, < 5.0) + sass (~> 3.2.0) + sprockets (~> 2.8, <= 2.11.0) + sprockets-rails (~> 2.0) + sdoc (0.4.1) + json (~> 1.7, >= 1.7.7) + rdoc (~> 4.0) + spring (1.1.3) + sprockets (2.11.0) hike (~> 1.2) multi_json (~> 1.0) rack (~> 1.0) tilt (~> 1.1, != 1.3.0) - sprockets-rails (2.0.1) + sprockets-rails (2.1.4) actionpack (>= 3.0) activesupport (>= 3.0) sprockets (~> 2.8) @@ -148,23 +147,24 @@ GEM libv8 (~> 3.16.14.0) ref thor (0.19.1) - thread_safe (0.3.3) + thread_safe (0.3.4) tilt (1.4.1) treetop (1.4.15) polyglot polyglot (>= 0.3.1) - turbolinks (2.2.2) + turbolinks (2.4.0) coffee-rails - twitter-bootstrap-rails (2.2.8) - actionpack (>= 3.1) - execjs - rails (>= 3.1) - railties (>= 3.1) - tzinfo (0.3.39) - uglifier (2.5.0) + twitter-bootstrap-rails (3.2.0) + actionpack (~> 4.1) + execjs (~> 2.2) + rails (~> 4.1) + railties (~> 4.1) + tzinfo (1.2.2) + thread_safe (~> 0.1) + uglifier (2.5.3) execjs (>= 0.3.0) json (>= 1.8.0) - unicorn (4.8.2) + unicorn (4.8.3) kgio (~> 2.6) rack raindrops (~> 0.7) @@ -175,24 +175,24 @@ PLATFORMS DEPENDENCIES acts_as_commentable acts_as_tree - bcrypt-ruby (~> 3.0.0) - capistrano + bcrypt (~> 3.1.7) + capistrano (= 2.15.5) carrierwave coffee-rails (~> 4.0.0) - formtastic! + formtastic (= 2.3.0) + formtastic-bootstrap haml-rails - htmlentities - jbuilder (~> 1.0.1) + jbuilder (~> 2.0) jquery-rails kaminari-bootstrap - less-rails (= 2.3.3) mysql2 - net-ssh (= 2.7.0) - nokogiri - rails (= 4.0.0) + net-ssh (~> 2.7.0) + rails (= 4.1.4) rmagick - rvm-capistrano - sdoc + rvm-capistrano (= 1.4.1) + sass-rails (~> 4.0.3) + sdoc (~> 0.4.0) + spring sqlite3 therubyracer turbolinks diff --git a/Rakefile b/Rakefile index accce03..ba6b733 100644 --- a/Rakefile +++ b/Rakefile @@ -3,4 +3,4 @@ require File.expand_path('../config/application', __FILE__) -CMSnb::Application.load_tasks +Rails.application.load_tasks diff --git a/vendor/assets/javascripts/.keep b/app/assets/images/.keep similarity index 100% rename from vendor/assets/javascripts/.keep rename to app/assets/images/.keep diff --git a/app/assets/images/bird1.png b/app/assets/images/bird1.png deleted file mode 100644 index a4ab126..0000000 Binary files a/app/assets/images/bird1.png and /dev/null differ diff --git a/app/assets/images/bird2.png b/app/assets/images/bird2.png deleted file mode 100644 index 14c9fc7..0000000 Binary files a/app/assets/images/bird2.png and /dev/null differ diff --git a/app/assets/images/boutique.png b/app/assets/images/boutique.png deleted file mode 100644 index 2105126..0000000 Binary files a/app/assets/images/boutique.png and /dev/null differ diff --git a/app/assets/images/f.png b/app/assets/images/f.png deleted file mode 100644 index 5141406..0000000 Binary files a/app/assets/images/f.png and /dev/null differ diff --git a/app/assets/images/fond.jpg b/app/assets/images/fond.jpg new file mode 100644 index 0000000..142b5ea Binary files /dev/null and b/app/assets/images/fond.jpg differ diff --git a/app/assets/images/hr.png b/app/assets/images/hr.png deleted file mode 100644 index 52ee5f3..0000000 Binary files a/app/assets/images/hr.png and /dev/null differ diff --git a/app/assets/images/images/bx_loader.gif b/app/assets/images/images/bx_loader.gif new file mode 100644 index 0000000..f4ff40e Binary files /dev/null and b/app/assets/images/images/bx_loader.gif differ diff --git a/app/assets/images/images/controls.png b/app/assets/images/images/controls.png new file mode 100644 index 0000000..1397245 Binary files /dev/null and b/app/assets/images/images/controls.png differ diff --git a/app/assets/images/mail.png b/app/assets/images/mail.png deleted file mode 100644 index b50b617..0000000 Binary files a/app/assets/images/mail.png and /dev/null differ diff --git a/app/assets/images/plus.png b/app/assets/images/plus.png deleted file mode 100644 index 3d24a43..0000000 Binary files a/app/assets/images/plus.png and /dev/null differ diff --git a/app/assets/images/smiley.png b/app/assets/images/smiley.png deleted file mode 100644 index c724f8f..0000000 Binary files a/app/assets/images/smiley.png and /dev/null differ diff --git a/app/assets/images/t.png b/app/assets/images/t.png deleted file mode 100644 index 6a92f7e..0000000 Binary files a/app/assets/images/t.png and /dev/null differ diff --git a/app/assets/images/trefle.png b/app/assets/images/trefle.png deleted file mode 100644 index 7a49524..0000000 Binary files a/app/assets/images/trefle.png and /dev/null differ diff --git a/app/assets/javascripts/admin.coffee b/app/assets/javascripts/admin.coffee index 196be3a..7f8ba3a 100644 --- a/app/assets/javascripts/admin.coffee +++ b/app/assets/javascripts/admin.coffee @@ -1,21 +1,14 @@ #= require jquery #= require jquery_ujs - -#= require shared/forms -#= require event_form - -#= require twitter/bootstrap -#= require vendor/jquery-sortable - -#= require vendor/jquery.event.drag.js - # require turbolinks -#= require vendor/bootstrap-slider -#= require vendor/bootstrap-datepicker -#= require vendor/bootstrap-timepicker +#= require event_form +#= require bootstrap +#= require vendor/jquery-sortable +#= require vendor/jquery.event.drag.js +#= require vendor/bootstrap-slider #= require vendor/jquery.ui.widget #= require vendor/tmpl.min #= require vendor/jquery.iframe-transport @@ -31,97 +24,159 @@ #= require redactor +#= require redactor_plugins/fontsize +#= require redactor_plugins/fontfamily +#= require redactor_plugins/fontcolor #= require nested_fields - -@init_categories_list = -> +portlet_to_move = false +content_type_to_move =false +@open_collapse3 = -> + $("#collapse3 .panel").show() + $("#collapse3").show() - if $(".prevv_folder").length > 0 +@reset_edit_pane = -> + $("#element_form").html() + $("#collapse3").hide() + +@unselect_portlet = -> + $(".portlet.active").removeClass("active") + reset_edit_pane() + +@cancel_move_portlet = -> + $(".move_message").show() + $(".cancel_message").hide() + + $(".move").removeClass("move") + $(".portlet_placeholder").remove() + portlet_to_move = false + +$(document).ready -> + + $(document).on 'click', 'input.datepicker', -> + $(this).datetimepicker( + language: 'fr' + pickTime: false + ).focus(); + + $(document).on 'click', 'input.datetimepicker', -> + $(this).datetimepicker( + use24hours: true + format: 'DD/MM/YYYY hh:mm' + minuteStepping:15 + language: 'fr' + ).focus(); + + + $(document).on 'click', 'input.timepicker', -> + $(this).datetimepicker( + use24hours: true + format: 'DD/MM/YYYY hh:mm' + minuteStepping:15 + pickDate: false + language: 'fr' + ).focus(); + + - $(".prevv_folder").sortable({ - group:"categories", - containerSelector :".receptable", - itemSelector:".category_row", - handle: ".handle", - nested:false, - placeholder:"
", + + $(document).on "click", ".portlet", (event) -> + if !$(this).hasClass("active") and portlet_to_move == false + + $(".portlet.active").removeClass("active") + $(this).addClass("active") + + + $.ajax({url : $(this).data("edit-link"), type: "GET"}); + $("#collapse3 .trash").attr("href", $(this).data("show-link")); + + event.stopPropagation(); + + $(document).on "click", ".block_portlets", (event) -> + portlet_to_move = false + content_type_to_move = false + $("#element_form").html("") + + $(".portlet.active").removeClass("active") + + + + + + $(document).on "click", "#content_types .content_type", -> + cancel_move_portlet() + unselect_portlet() + reset_edit_pane() + + + type = $(this).data("type") + content_type_to_move = type + init_portlets_place_holder() + $(this).addClass("move") + false + + + + $(document).on "click", ".portlet_handle", -> + if portlet_to_move == false + + $(".move_message").hide() + $(".cancel_message").show() + + + id = $(this).data("portlet-id") + portlet_to_move = $("#portlet_"+id) + init_portlets_place_holder() + portlet_to_move.addClass("move") + false + else + cancel_move_portlet() + + false + + $(document).on "click", ".portlet_placeholder", -> + if portlet_to_move != false + $(this).after portlet_to_move + $(".move").removeClass("move") + $(".portlet_placeholder").remove() + update_block_portlet_order(portlet_to_move.closest(".block_portlets").data("block_id")) + cancel_move_portlet() + else + + block_id = $(this).closest(".block_portlets").data("block_id") + + + $(this).replaceWith('
'); + + $.ajax({ + url:"/portlet/portlets/new.js", + type: "GET", + data: { + block_id : block_id, + position : $(this).attr("data_position"), + content_type : content_type_to_move + } + }) - oldContainer = "" - $("#sortable_category").sortable({ - group:"categories", - containerSelector :".receptable", - itemSelector:".category_row", - handle: ".handle", - nested:true, - placeholder:"
", - afterMove: (placeholder, container) -> - if oldContainer != container and container.el.hasClass("prevv_folder") - if oldContainer - oldContainer.el.removeClass("active") - container.el.addClass("active") - oldContainer = container - onDrop: (item, Container, _super) -> + content_type_to_move = false + $(".portlet_placeholder").remove() - if Container - - parent_id = Container.el.data("parent-id") - menu_id = Container.el.data("menu-id") - id = item.data("menu-item-id") - $.ajax({ - url:"/admin/categories/"+id+".js", - type: "PUT", - data: { - reorder : true, - category : { - parent_id : parent_id, - menu_id : menu_id - } - }, - success : -> - - - _super(item) - item.remove() - - }) - - - - - - else + + +@init_portlets_place_holder = -> + placeholder = '
' + $(".block_portlets").each -> + $(this).find(".portlet_placeholder").remove() + $(this).prepend(placeholder) + $(this).find(".portlet").each -> + $(this).after(placeholder) - - - _super(item) - - sortable_data = {parent_id :$("#sortable_category").data("parent-id"), menu_id :$("#sortable_category").data("menu-id") , categories_ids : []} - - $("#sortable_category").find(".category_row").each -> - sortable_data.categories_ids.push $(this).data("menu-item-id") - - - $.ajax({url : "/admin/categories/reorder", data : sortable_data, type: "POST"}); - }) - - - - - - - - - - - - - @flash_delay = -> $("#flashs").find(".alert").each -> @@ -226,6 +281,7 @@ $.ajax({url : "/portlet/portlets/reorder", data : {blocks:return_order}, type: "POST"}) + jQuery -> @@ -273,68 +329,7 @@ jQuery -> item_catched = "" - $(".block_portlets_sortable").sortable({ - nested:true, - handle: ".handle", - group : "block_portlets", - containerSelector :".block_portlets", - itemSelector:".portlet", - placeholder:"
", - onDrop: ($item, container, _super) -> - - $item.removeClass("dragged").removeAttr("style") - $("body").removeClass("dragging") - - - if $item.data("portlet_id") - - block_portlet_id = $item.closest(".block_portlets").data('block_id') - - update_block_portlet_order block_portlet_id - - - else - $("#content_types").html item_catched - - block_id = container.el.data("block_id") - - - $item.replaceWith('
'); - - $.ajax({ - url:"/portlet/portlets/new.js", - type: "GET", - data: { - block_id : $(this).attr("data_block_id"), - position : $(this).attr("data_position"), - content_type : $item.attr("data_type") - } - - }) - - - - isValidTarget: ($item, container) -> - - if container.el.attr("id") != "content_types" - return true - - onDragStart: ($item, container, _super) -> - item_catched = $("#content_types").html() - - - $item.css({ - height: $item.height(), - width: $item.width() - }) - $item.addClass("dragged") - $("body").addClass("dragging") - - - - }) - - + adjustment = "" @@ -379,15 +374,27 @@ jQuery -> }) + $(document).on "scroll", () -> - if( $(this).scrollTop() <= 40 ) - top = 40 - $(this).scrollTop() + if( $(this).scrollTop() <= 52 ) + top = 52 - $(this).scrollTop() else top = 0 $("#toolbar-text, #menu_item_informations").css top : top + +$(document).on "click", "#menu_item_informations .save", -> + $(this).closest(".panel").find("form").submit() + return false + +$(document).on "click", "#menu_item_informations h4", -> + $(this).next(".panel").toggle() + return false + + + diff --git a/app/assets/javascripts/bootstrap.js b/app/assets/javascripts/bootstrap.js new file mode 100644 index 0000000..3f2bca0 --- /dev/null +++ b/app/assets/javascripts/bootstrap.js @@ -0,0 +1,13 @@ +//= require bootstrap/affix +//= require bootstrap/alert +//= require bootstrap/button +//= require bootstrap/carousel + +//= require bootstrap/dropdown +//= require bootstrap/tab +//= require bootstrap/transition +//= require bootstrap/scrollspy +//= require bootstrap/modal +//= require bootstrap/tooltip +//= require bootstrap/popover +//= require bootstrap/datetimepicker diff --git a/app/assets/javascripts/bootstrap/affix.js b/app/assets/javascripts/bootstrap/affix.js new file mode 100644 index 0000000..05c909e --- /dev/null +++ b/app/assets/javascripts/bootstrap/affix.js @@ -0,0 +1,137 @@ +/* ======================================================================== + * Bootstrap: affix.js v3.1.1 + * http://getbootstrap.com/javascript/#affix + * ======================================================================== + * Copyright 2011-2014 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * ======================================================================== */ + + ++function ($) { + 'use strict'; + + // AFFIX CLASS DEFINITION + // ====================== + + var Affix = function (element, options) { + this.options = $.extend({}, Affix.DEFAULTS, options) + this.$window = $(window) + .on('scroll.bs.affix.data-api', $.proxy(this.checkPosition, this)) + .on('click.bs.affix.data-api', $.proxy(this.checkPositionWithEventLoop, this)) + + this.$element = $(element) + this.affixed = + this.unpin = + this.pinnedOffset = null + + this.checkPosition() + } + + Affix.RESET = 'affix affix-top affix-bottom' + + Affix.DEFAULTS = { + offset: 0 + } + + Affix.prototype.getPinnedOffset = function () { + if (this.pinnedOffset) return this.pinnedOffset + this.$element.removeClass(Affix.RESET).addClass('affix') + var scrollTop = this.$window.scrollTop() + var position = this.$element.offset() + return (this.pinnedOffset = position.top - scrollTop) + } + + Affix.prototype.checkPositionWithEventLoop = function () { + setTimeout($.proxy(this.checkPosition, this), 1) + } + + Affix.prototype.checkPosition = function () { + if (!this.$element.is(':visible')) return + + var scrollHeight = $(document).height() + var scrollTop = this.$window.scrollTop() + var position = this.$element.offset() + var offset = this.options.offset + var offsetTop = offset.top + var offsetBottom = offset.bottom + + if (this.affixed == 'top') position.top += scrollTop + + if (typeof offset != 'object') offsetBottom = offsetTop = offset + if (typeof offsetTop == 'function') offsetTop = offset.top(this.$element) + if (typeof offsetBottom == 'function') offsetBottom = offset.bottom(this.$element) + + var affix = this.unpin != null && (scrollTop + this.unpin <= position.top) ? false : + offsetBottom != null && (position.top + this.$element.height() >= scrollHeight - offsetBottom) ? 'bottom' : + offsetTop != null && (scrollTop <= offsetTop) ? 'top' : false + + if (this.affixed === affix) return + if (this.unpin) this.$element.css('top', '') + + var affixType = 'affix' + (affix ? '-' + affix : '') + var e = $.Event(affixType + '.bs.affix') + + this.$element.trigger(e) + + if (e.isDefaultPrevented()) return + + this.affixed = affix + this.unpin = affix == 'bottom' ? this.getPinnedOffset() : null + + this.$element + .removeClass(Affix.RESET) + .addClass(affixType) + .trigger($.Event(affixType.replace('affix', 'affixed'))) + + if (affix == 'bottom') { + this.$element.offset({ top: scrollHeight - offsetBottom - this.$element.height() }) + } + } + + + // AFFIX PLUGIN DEFINITION + // ======================= + + var old = $.fn.affix + + $.fn.affix = function (option) { + return this.each(function () { + var $this = $(this) + var data = $this.data('bs.affix') + var options = typeof option == 'object' && option + + if (!data) $this.data('bs.affix', (data = new Affix(this, options))) + if (typeof option == 'string') data[option]() + }) + } + + $.fn.affix.Constructor = Affix + + + // AFFIX NO CONFLICT + // ================= + + $.fn.affix.noConflict = function () { + $.fn.affix = old + return this + } + + + // AFFIX DATA-API + // ============== + + $(window).on('load', function () { + $('[data-spy="affix"]').each(function () { + var $spy = $(this) + var data = $spy.data() + + data.offset = data.offset || {} + + if (data.offsetBottom) data.offset.bottom = data.offsetBottom + if (data.offsetTop) data.offset.top = data.offsetTop + + $spy.affix(data) + }) + }) + +}(jQuery); diff --git a/app/assets/javascripts/bootstrap/alert.js b/app/assets/javascripts/bootstrap/alert.js new file mode 100644 index 0000000..516fe4f --- /dev/null +++ b/app/assets/javascripts/bootstrap/alert.js @@ -0,0 +1,88 @@ +/* ======================================================================== + * Bootstrap: alert.js v3.1.1 + * http://getbootstrap.com/javascript/#alerts + * ======================================================================== + * Copyright 2011-2014 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * ======================================================================== */ + + ++function ($) { + 'use strict'; + + // ALERT CLASS DEFINITION + // ====================== + + var dismiss = '[data-dismiss="alert"]' + var Alert = function (el) { + $(el).on('click', dismiss, this.close) + } + + Alert.prototype.close = function (e) { + var $this = $(this) + var selector = $this.attr('data-target') + + if (!selector) { + selector = $this.attr('href') + selector = selector && selector.replace(/.*(?=#[^\s]*$)/, '') // strip for ie7 + } + + var $parent = $(selector) + + if (e) e.preventDefault() + + if (!$parent.length) { + $parent = $this.hasClass('alert') ? $this : $this.parent() + } + + $parent.trigger(e = $.Event('close.bs.alert')) + + if (e.isDefaultPrevented()) return + + $parent.removeClass('in') + + function removeElement() { + $parent.trigger('closed.bs.alert').remove() + } + + $.support.transition && $parent.hasClass('fade') ? + $parent + .one($.support.transition.end, removeElement) + .emulateTransitionEnd(150) : + removeElement() + } + + + // ALERT PLUGIN DEFINITION + // ======================= + + var old = $.fn.alert + + $.fn.alert = function (option) { + return this.each(function () { + var $this = $(this) + var data = $this.data('bs.alert') + + if (!data) $this.data('bs.alert', (data = new Alert(this))) + if (typeof option == 'string') data[option].call($this) + }) + } + + $.fn.alert.Constructor = Alert + + + // ALERT NO CONFLICT + // ================= + + $.fn.alert.noConflict = function () { + $.fn.alert = old + return this + } + + + // ALERT DATA-API + // ============== + + $(document).on('click.bs.alert.data-api', dismiss, Alert.prototype.close) + +}(jQuery); diff --git a/app/assets/javascripts/bootstrap/button.js b/app/assets/javascripts/bootstrap/button.js new file mode 100644 index 0000000..f4d8d8b --- /dev/null +++ b/app/assets/javascripts/bootstrap/button.js @@ -0,0 +1,107 @@ +/* ======================================================================== + * Bootstrap: button.js v3.1.1 + * http://getbootstrap.com/javascript/#buttons + * ======================================================================== + * Copyright 2011-2014 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * ======================================================================== */ + + ++function ($) { + 'use strict'; + + // BUTTON PUBLIC CLASS DEFINITION + // ============================== + + var Button = function (element, options) { + this.$element = $(element) + this.options = $.extend({}, Button.DEFAULTS, options) + this.isLoading = false + } + + Button.DEFAULTS = { + loadingText: 'loading...' + } + + Button.prototype.setState = function (state) { + var d = 'disabled' + var $el = this.$element + var val = $el.is('input') ? 'val' : 'html' + var data = $el.data() + + state = state + 'Text' + + if (!data.resetText) $el.data('resetText', $el[val]()) + + $el[val](data[state] || this.options[state]) + + // push to event loop to allow forms to submit + setTimeout($.proxy(function () { + if (state == 'loadingText') { + this.isLoading = true + $el.addClass(d).attr(d, d) + } else if (this.isLoading) { + this.isLoading = false + $el.removeClass(d).removeAttr(d) + } + }, this), 0) + } + + Button.prototype.toggle = function () { + var changed = true + var $parent = this.$element.closest('[data-toggle="buttons"]') + + if ($parent.length) { + var $input = this.$element.find('input') + if ($input.prop('type') == 'radio') { + if ($input.prop('checked') && this.$element.hasClass('active')) changed = false + else $parent.find('.active').removeClass('active') + } + if (changed) $input.prop('checked', !this.$element.hasClass('active')).trigger('change') + } + + if (changed) this.$element.toggleClass('active') + } + + + // BUTTON PLUGIN DEFINITION + // ======================== + + var old = $.fn.button + + $.fn.button = function (option) { + return this.each(function () { + var $this = $(this) + var data = $this.data('bs.button') + var options = typeof option == 'object' && option + + if (!data) $this.data('bs.button', (data = new Button(this, options))) + + if (option == 'toggle') data.toggle() + else if (option) data.setState(option) + }) + } + + $.fn.button.Constructor = Button + + + // BUTTON NO CONFLICT + // ================== + + $.fn.button.noConflict = function () { + $.fn.button = old + return this + } + + + // BUTTON DATA-API + // =============== + + $(document).on('click.bs.button.data-api', '[data-toggle^=button]', function (e) { + var $btn = $(e.target) + if (!$btn.hasClass('btn')) $btn = $btn.closest('.btn') + $btn.button('toggle') + e.preventDefault() + }) + +}(jQuery); diff --git a/app/assets/javascripts/bootstrap/carousel.js b/app/assets/javascripts/bootstrap/carousel.js new file mode 100644 index 0000000..19e9af1 --- /dev/null +++ b/app/assets/javascripts/bootstrap/carousel.js @@ -0,0 +1,205 @@ +/* ======================================================================== + * Bootstrap: carousel.js v3.1.1 + * http://getbootstrap.com/javascript/#carousel + * ======================================================================== + * Copyright 2011-2014 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * ======================================================================== */ + + ++function ($) { + 'use strict'; + + // CAROUSEL CLASS DEFINITION + // ========================= + + var Carousel = function (element, options) { + this.$element = $(element) + this.$indicators = this.$element.find('.carousel-indicators') + this.options = options + this.paused = + this.sliding = + this.interval = + this.$active = + this.$items = null + + this.options.pause == 'hover' && this.$element + .on('mouseenter', $.proxy(this.pause, this)) + .on('mouseleave', $.proxy(this.cycle, this)) + } + + Carousel.DEFAULTS = { + interval: 5000, + pause: 'hover', + wrap: true + } + + Carousel.prototype.cycle = function (e) { + e || (this.paused = false) + + this.interval && clearInterval(this.interval) + + this.options.interval + && !this.paused + && (this.interval = setInterval($.proxy(this.next, this), this.options.interval)) + + return this + } + + Carousel.prototype.getActiveIndex = function () { + this.$active = this.$element.find('.item.active') + this.$items = this.$active.parent().children() + + return this.$items.index(this.$active) + } + + Carousel.prototype.to = function (pos) { + var that = this + var activeIndex = this.getActiveIndex() + + if (pos > (this.$items.length - 1) || pos < 0) return + + if (this.sliding) return this.$element.one('slid.bs.carousel', function () { that.to(pos) }) + if (activeIndex == pos) return this.pause().cycle() + + return this.slide(pos > activeIndex ? 'next' : 'prev', $(this.$items[pos])) + } + + Carousel.prototype.pause = function (e) { + e || (this.paused = true) + + if (this.$element.find('.next, .prev').length && $.support.transition) { + this.$element.trigger($.support.transition.end) + this.cycle(true) + } + + this.interval = clearInterval(this.interval) + + return this + } + + Carousel.prototype.next = function () { + if (this.sliding) return + return this.slide('next') + } + + Carousel.prototype.prev = function () { + if (this.sliding) return + return this.slide('prev') + } + + Carousel.prototype.slide = function (type, next) { + var $active = this.$element.find('.item.active') + var $next = next || $active[type]() + var isCycling = this.interval + var direction = type == 'next' ? 'left' : 'right' + var fallback = type == 'next' ? 'first' : 'last' + var that = this + + if (!$next.length) { + if (!this.options.wrap) return + $next = this.$element.find('.item')[fallback]() + } + + if ($next.hasClass('active')) return this.sliding = false + + var e = $.Event('slide.bs.carousel', { relatedTarget: $next[0], direction: direction }) + this.$element.trigger(e) + if (e.isDefaultPrevented()) return + + this.sliding = true + + isCycling && this.pause() + + if (this.$indicators.length) { + this.$indicators.find('.active').removeClass('active') + this.$element.one('slid.bs.carousel', function () { + var $nextIndicator = $(that.$indicators.children()[that.getActiveIndex()]) + $nextIndicator && $nextIndicator.addClass('active') + }) + } + + if ($.support.transition && this.$element.hasClass('slide')) { + $next.addClass(type) + $next[0].offsetWidth // force reflow + $active.addClass(direction) + $next.addClass(direction) + $active + .one($.support.transition.end, function () { + $next.removeClass([type, direction].join(' ')).addClass('active') + $active.removeClass(['active', direction].join(' ')) + that.sliding = false + setTimeout(function () { that.$element.trigger('slid.bs.carousel') }, 0) + }) + .emulateTransitionEnd($active.css('transition-duration').slice(0, -1) * 1000) + } else { + $active.removeClass('active') + $next.addClass('active') + this.sliding = false + this.$element.trigger('slid.bs.carousel') + } + + isCycling && this.cycle() + + return this + } + + + // CAROUSEL PLUGIN DEFINITION + // ========================== + + var old = $.fn.carousel + + $.fn.carousel = function (option) { + return this.each(function () { + var $this = $(this) + var data = $this.data('bs.carousel') + var options = $.extend({}, Carousel.DEFAULTS, $this.data(), typeof option == 'object' && option) + var action = typeof option == 'string' ? option : options.slide + + if (!data) $this.data('bs.carousel', (data = new Carousel(this, options))) + if (typeof option == 'number') data.to(option) + else if (action) data[action]() + else if (options.interval) data.pause().cycle() + }) + } + + $.fn.carousel.Constructor = Carousel + + + // CAROUSEL NO CONFLICT + // ==================== + + $.fn.carousel.noConflict = function () { + $.fn.carousel = old + return this + } + + + // CAROUSEL DATA-API + // ================= + + $(document).on('click.bs.carousel.data-api', '[data-slide], [data-slide-to]', function (e) { + var $this = $(this), href + var $target = $($this.attr('data-target') || (href = $this.attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '')) //strip for ie7 + var options = $.extend({}, $target.data(), $this.data()) + var slideIndex = $this.attr('data-slide-to') + if (slideIndex) options.interval = false + + $target.carousel(options) + + if (slideIndex = $this.attr('data-slide-to')) { + $target.data('bs.carousel').to(slideIndex) + } + + e.preventDefault() + }) + + $(window).on('load', function () { + $('[data-ride="carousel"]').each(function () { + var $carousel = $(this) + $carousel.carousel($carousel.data()) + }) + }) + +}(jQuery); diff --git a/app/assets/javascripts/bootstrap/collapse.js b/app/assets/javascripts/bootstrap/collapse.js new file mode 100644 index 0000000..7130282 --- /dev/null +++ b/app/assets/javascripts/bootstrap/collapse.js @@ -0,0 +1,170 @@ +/* ======================================================================== + * Bootstrap: collapse.js v3.1.1 + * http://getbootstrap.com/javascript/#collapse + * ======================================================================== + * Copyright 2011-2014 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * ======================================================================== */ + + ++function ($) { + 'use strict'; + + // COLLAPSE PUBLIC CLASS DEFINITION + // ================================ + + var Collapse = function (element, options) { + this.$element = $(element) + this.options = $.extend({}, Collapse.DEFAULTS, options) + this.transitioning = null + + if (this.options.parent) this.$parent = $(this.options.parent) + if (this.options.toggle) this.toggle() + } + + Collapse.DEFAULTS = { + toggle: true + } + + Collapse.prototype.dimension = function () { + var hasWidth = this.$element.hasClass('width') + return hasWidth ? 'width' : 'height' + } + + Collapse.prototype.show = function () { + if (this.transitioning || this.$element.hasClass('in')) return + + var startEvent = $.Event('show.bs.collapse') + this.$element.trigger(startEvent) + if (startEvent.isDefaultPrevented()) return + + var actives = this.$parent && this.$parent.find('> .panel > .in') + + if (actives && actives.length) { + var hasData = actives.data('bs.collapse') + if (hasData && hasData.transitioning) return + actives.collapse('hide') + hasData || actives.data('bs.collapse', null) + } + + var dimension = this.dimension() + + this.$element + .removeClass('collapse') + .addClass('collapsing') + [dimension](0) + + this.transitioning = 1 + + var complete = function () { + this.$element + .removeClass('collapsing') + .addClass('collapse in') + [dimension]('auto') + this.transitioning = 0 + this.$element.trigger('shown.bs.collapse') + } + + if (!$.support.transition) return complete.call(this) + + var scrollSize = $.camelCase(['scroll', dimension].join('-')) + + this.$element + .one($.support.transition.end, $.proxy(complete, this)) + .emulateTransitionEnd(350) + [dimension](this.$element[0][scrollSize]) + } + + Collapse.prototype.hide = function () { + if (this.transitioning || !this.$element.hasClass('in')) return + + var startEvent = $.Event('hide.bs.collapse') + this.$element.trigger(startEvent) + if (startEvent.isDefaultPrevented()) return + + var dimension = this.dimension() + + this.$element + [dimension](this.$element[dimension]()) + [0].offsetHeight + + this.$element + .addClass('collapsing') + .removeClass('collapse') + .removeClass('in') + + this.transitioning = 1 + + var complete = function () { + this.transitioning = 0 + this.$element + .trigger('hidden.bs.collapse') + .removeClass('collapsing') + .addClass('collapse') + } + + if (!$.support.transition) return complete.call(this) + + this.$element + [dimension](0) + .one($.support.transition.end, $.proxy(complete, this)) + .emulateTransitionEnd(350) + } + + Collapse.prototype.toggle = function () { + this[this.$element.hasClass('in') ? 'hide' : 'show']() + } + + + // COLLAPSE PLUGIN DEFINITION + // ========================== + + var old = $.fn.collapse + + $.fn.collapse = function (option) { + return this.each(function () { + var $this = $(this) + var data = $this.data('bs.collapse') + var options = $.extend({}, Collapse.DEFAULTS, $this.data(), typeof option == 'object' && option) + + if (!data && options.toggle && option == 'show') option = !option + if (!data) $this.data('bs.collapse', (data = new Collapse(this, options))) + if (typeof option == 'string') data[option]() + }) + } + + $.fn.collapse.Constructor = Collapse + + + // COLLAPSE NO CONFLICT + // ==================== + + $.fn.collapse.noConflict = function () { + $.fn.collapse = old + return this + } + + + // COLLAPSE DATA-API + // ================= + + $(document).on('click.bs.collapse.data-api', '[data-toggle=collapse]', function (e) { + var $this = $(this), href + var target = $this.attr('data-target') + || e.preventDefault() + || (href = $this.attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '') //strip for ie7 + var $target = $(target) + var data = $target.data('bs.collapse') + var option = data ? 'toggle' : $this.data() + var parent = $this.attr('data-parent') + var $parent = parent && $(parent) + + if (!data || !data.transitioning) { + if ($parent) $parent.find('[data-toggle=collapse][data-parent="' + parent + '"]').not($this).addClass('collapsed') + $this[$target.hasClass('in') ? 'addClass' : 'removeClass']('collapsed') + } + + $target.collapse(option) + }) + +}(jQuery); diff --git a/app/assets/javascripts/bootstrap/datetimepicker.js b/app/assets/javascripts/bootstrap/datetimepicker.js new file mode 100755 index 0000000..7465e36 --- /dev/null +++ b/app/assets/javascripts/bootstrap/datetimepicker.js @@ -0,0 +1,3652 @@ +//! moment.js +//! version : 2.5.1 +//! authors : Tim Wood, Iskren Chernev, Moment.js contributors +//! license : MIT +//! momentjs.com + +(function (undefined) { + + /************************************ + Constants + ************************************/ + + var moment, + VERSION = "2.5.1", + global = this, + round = Math.round, + i, + + YEAR = 0, + MONTH = 1, + DATE = 2, + HOUR = 3, + MINUTE = 4, + SECOND = 5, + MILLISECOND = 6, + + // internal storage for language config files + languages = {}, + + // moment internal properties + momentProperties = { + _isAMomentObject: null, + _i : null, + _f : null, + _l : null, + _strict : null, + _isUTC : null, + _offset : null, // optional. Combine with _isUTC + _pf : null, + _lang : null // optional + }, + + // check for nodeJS + hasModule = (typeof module !== 'undefined' && module.exports && typeof require !== 'undefined'), + + // ASP.NET json date format regex + aspNetJsonRegex = /^\/?Date\((\-?\d+)/i, + aspNetTimeSpanJsonRegex = /(\-)?(?:(\d*)\.)?(\d+)\:(\d+)(?:\:(\d+)\.?(\d{3})?)?/, + + // from http://docs.closure-library.googlecode.com/git/closure_goog_date_date.js.source.html + // somewhat more in line with 4.4.3.2 2004 spec, but allows decimal anywhere + isoDurationRegex = /^(-)?P(?:(?:([0-9,.]*)Y)?(?:([0-9,.]*)M)?(?:([0-9,.]*)D)?(?:T(?:([0-9,.]*)H)?(?:([0-9,.]*)M)?(?:([0-9,.]*)S)?)?|([0-9,.]*)W)$/, + + // format tokens + formattingTokens = /(\[[^\[]*\])|(\\)?(Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|YYYYYY|YYYYY|YYYY|YY|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|mm?|ss?|S{1,4}|X|zz?|ZZ?|.)/g, + localFormattingTokens = /(\[[^\[]*\])|(\\)?(LT|LL?L?L?|l{1,4})/g, + + // parsing token regexes + parseTokenOneOrTwoDigits = /\d\d?/, // 0 - 99 + parseTokenOneToThreeDigits = /\d{1,3}/, // 0 - 999 + parseTokenOneToFourDigits = /\d{1,4}/, // 0 - 9999 + parseTokenOneToSixDigits = /[+\-]?\d{1,6}/, // -999,999 - 999,999 + parseTokenDigits = /\d+/, // nonzero number of digits + parseTokenWord = /[0-9]*['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+|[\u0600-\u06FF\/]+(\s*?[\u0600-\u06FF]+){1,2}/i, // any word (or two) characters or numbers including two/three word month in arabic. + parseTokenTimezone = /Z|[\+\-]\d\d:?\d\d/gi, // +00:00 -00:00 +0000 -0000 or Z + parseTokenT = /T/i, // T (ISO separator) + parseTokenTimestampMs = /[\+\-]?\d+(\.\d{1,3})?/, // 123456789 123456789.123 + + //strict parsing regexes + parseTokenOneDigit = /\d/, // 0 - 9 + parseTokenTwoDigits = /\d\d/, // 00 - 99 + parseTokenThreeDigits = /\d{3}/, // 000 - 999 + parseTokenFourDigits = /\d{4}/, // 0000 - 9999 + parseTokenSixDigits = /[+-]?\d{6}/, // -999,999 - 999,999 + parseTokenSignedNumber = /[+-]?\d+/, // -inf - inf + + // iso 8601 regex + // 0000-00-00 0000-W00 or 0000-W00-0 + T + 00 or 00:00 or 00:00:00 or 00:00:00.000 + +00:00 or +0000 or +00) + isoRegex = /^\s*(?:[+-]\d{6}|\d{4})-(?:(\d\d-\d\d)|(W\d\d$)|(W\d\d-\d)|(\d\d\d))((T| )(\d\d(:\d\d(:\d\d(\.\d+)?)?)?)?([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/, + + isoFormat = 'YYYY-MM-DDTHH:mm:ssZ', + + isoDates = [ + ['YYYYYY-MM-DD', /[+-]\d{6}-\d{2}-\d{2}/], + ['YYYY-MM-DD', /\d{4}-\d{2}-\d{2}/], + ['GGGG-[W]WW-E', /\d{4}-W\d{2}-\d/], + ['GGGG-[W]WW', /\d{4}-W\d{2}/], + ['YYYY-DDD', /\d{4}-\d{3}/] + ], + + // iso time formats and regexes + isoTimes = [ + ['HH:mm:ss.SSSS', /(T| )\d\d:\d\d:\d\d\.\d{1,3}/], + ['HH:mm:ss', /(T| )\d\d:\d\d:\d\d/], + ['HH:mm', /(T| )\d\d:\d\d/], + ['HH', /(T| )\d\d/] + ], + + // timezone chunker "+10:00" > ["10", "00"] or "-1530" > ["-15", "30"] + parseTimezoneChunker = /([\+\-]|\d\d)/gi, + + // getter and setter names + proxyGettersAndSetters = 'Date|Hours|Minutes|Seconds|Milliseconds'.split('|'), + unitMillisecondFactors = { + 'Milliseconds' : 1, + 'Seconds' : 1e3, + 'Minutes' : 6e4, + 'Hours' : 36e5, + 'Days' : 864e5, + 'Months' : 2592e6, + 'Years' : 31536e6 + }, + + unitAliases = { + ms : 'millisecond', + s : 'second', + m : 'minute', + h : 'hour', + d : 'day', + D : 'date', + w : 'week', + W : 'isoWeek', + M : 'month', + y : 'year', + DDD : 'dayOfYear', + e : 'weekday', + E : 'isoWeekday', + gg: 'weekYear', + GG: 'isoWeekYear' + }, + + camelFunctions = { + dayofyear : 'dayOfYear', + isoweekday : 'isoWeekday', + isoweek : 'isoWeek', + weekyear : 'weekYear', + isoweekyear : 'isoWeekYear' + }, + + // format function strings + formatFunctions = {}, + + // tokens to ordinalize and pad + ordinalizeTokens = 'DDD w W M D d'.split(' '), + paddedTokens = 'M D H h m s w W'.split(' '), + + formatTokenFunctions = { + M : function () { + return this.month() + 1; + }, + MMM : function (format) { + return this.lang().monthsShort(this, format); + }, + MMMM : function (format) { + return this.lang().months(this, format); + }, + D : function () { + return this.date(); + }, + DDD : function () { + return this.dayOfYear(); + }, + d : function () { + return this.day(); + }, + dd : function (format) { + return this.lang().weekdaysMin(this, format); + }, + ddd : function (format) { + return this.lang().weekdaysShort(this, format); + }, + dddd : function (format) { + return this.lang().weekdays(this, format); + }, + w : function () { + return this.week(); + }, + W : function () { + return this.isoWeek(); + }, + YY : function () { + return leftZeroFill(this.year() % 100, 2); + }, + YYYY : function () { + return leftZeroFill(this.year(), 4); + }, + YYYYY : function () { + return leftZeroFill(this.year(), 5); + }, + YYYYYY : function () { + var y = this.year(), sign = y >= 0 ? '+' : '-'; + return sign + leftZeroFill(Math.abs(y), 6); + }, + gg : function () { + return leftZeroFill(this.weekYear() % 100, 2); + }, + gggg : function () { + return leftZeroFill(this.weekYear(), 4); + }, + ggggg : function () { + return leftZeroFill(this.weekYear(), 5); + }, + GG : function () { + return leftZeroFill(this.isoWeekYear() % 100, 2); + }, + GGGG : function () { + return leftZeroFill(this.isoWeekYear(), 4); + }, + GGGGG : function () { + return leftZeroFill(this.isoWeekYear(), 5); + }, + e : function () { + return this.weekday(); + }, + E : function () { + return this.isoWeekday(); + }, + a : function () { + return this.lang().meridiem(this.hours(), this.minutes(), true); + }, + A : function () { + return this.lang().meridiem(this.hours(), this.minutes(), false); + }, + H : function () { + return this.hours(); + }, + h : function () { + return this.hours() % 12 || 12; + }, + m : function () { + return this.minutes(); + }, + s : function () { + return this.seconds(); + }, + S : function () { + return toInt(this.milliseconds() / 100); + }, + SS : function () { + return leftZeroFill(toInt(this.milliseconds() / 10), 2); + }, + SSS : function () { + return leftZeroFill(this.milliseconds(), 3); + }, + SSSS : function () { + return leftZeroFill(this.milliseconds(), 3); + }, + Z : function () { + var a = -this.zone(), + b = "+"; + if (a < 0) { + a = -a; + b = "-"; + } + return b + leftZeroFill(toInt(a / 60), 2) + ":" + leftZeroFill(toInt(a) % 60, 2); + }, + ZZ : function () { + var a = -this.zone(), + b = "+"; + if (a < 0) { + a = -a; + b = "-"; + } + return b + leftZeroFill(toInt(a / 60), 2) + leftZeroFill(toInt(a) % 60, 2); + }, + z : function () { + return this.zoneAbbr(); + }, + zz : function () { + return this.zoneName(); + }, + X : function () { + return this.unix(); + }, + Q : function () { + return this.quarter(); + } + }, + + lists = ['months', 'monthsShort', 'weekdays', 'weekdaysShort', 'weekdaysMin']; + + function defaultParsingFlags() { + // We need to deep clone this object, and es5 standard is not very + // helpful. + return { + empty : false, + unusedTokens : [], + unusedInput : [], + overflow : -2, + charsLeftOver : 0, + nullInput : false, + invalidMonth : null, + invalidFormat : false, + userInvalidated : false, + iso: false + }; + } + + function padToken(func, count) { + return function (a) { + return leftZeroFill(func.call(this, a), count); + }; + } + function ordinalizeToken(func, period) { + return function (a) { + return this.lang().ordinal(func.call(this, a), period); + }; + } + + while (ordinalizeTokens.length) { + i = ordinalizeTokens.pop(); + formatTokenFunctions[i + 'o'] = ordinalizeToken(formatTokenFunctions[i], i); + } + while (paddedTokens.length) { + i = paddedTokens.pop(); + formatTokenFunctions[i + i] = padToken(formatTokenFunctions[i], 2); + } + formatTokenFunctions.DDDD = padToken(formatTokenFunctions.DDD, 3); + + + /************************************ + Constructors + ************************************/ + + function Language() { + + } + + // Moment prototype object + function Moment(config) { + checkOverflow(config); + extend(this, config); + } + + // Duration Constructor + function Duration(duration) { + var normalizedInput = normalizeObjectUnits(duration), + years = normalizedInput.year || 0, + months = normalizedInput.month || 0, + weeks = normalizedInput.week || 0, + days = normalizedInput.day || 0, + hours = normalizedInput.hour || 0, + minutes = normalizedInput.minute || 0, + seconds = normalizedInput.second || 0, + milliseconds = normalizedInput.millisecond || 0; + + // representation for dateAddRemove + this._milliseconds = +milliseconds + + seconds * 1e3 + // 1000 + minutes * 6e4 + // 1000 * 60 + hours * 36e5; // 1000 * 60 * 60 + // Because of dateAddRemove treats 24 hours as different from a + // day when working around DST, we need to store them separately + this._days = +days + + weeks * 7; + // It is impossible translate months into days without knowing + // which months you are are talking about, so we have to store + // it separately. + this._months = +months + + years * 12; + + this._data = {}; + + this._bubble(); + } + + /************************************ + Helpers + ************************************/ + + + function extend(a, b) { + for (var i in b) { + if (b.hasOwnProperty(i)) { + a[i] = b[i]; + } + } + + if (b.hasOwnProperty("toString")) { + a.toString = b.toString; + } + + if (b.hasOwnProperty("valueOf")) { + a.valueOf = b.valueOf; + } + + return a; + } + + function cloneMoment(m) { + var result = {}, i; + for (i in m) { + if (m.hasOwnProperty(i) && momentProperties.hasOwnProperty(i)) { + result[i] = m[i]; + } + } + + return result; + } + + function absRound(number) { + if (number < 0) { + return Math.ceil(number); + } else { + return Math.floor(number); + } + } + + // left zero fill a number + // see http://jsperf.com/left-zero-filling for performance comparison + function leftZeroFill(number, targetLength, forceSign) { + var output = '' + Math.abs(number), + sign = number >= 0; + + while (output.length < targetLength) { + output = '0' + output; + } + return (sign ? (forceSign ? '+' : '') : '-') + output; + } + + // helper function for _.addTime and _.subtractTime + function addOrSubtractDurationFromMoment(mom, duration, isAdding, ignoreUpdateOffset) { + var milliseconds = duration._milliseconds, + days = duration._days, + months = duration._months, + minutes, + hours; + + if (milliseconds) { + mom._d.setTime(+mom._d + milliseconds * isAdding); + } + // store the minutes and hours so we can restore them + if (days || months) { + minutes = mom.minute(); + hours = mom.hour(); + } + if (days) { + mom.date(mom.date() + days * isAdding); + } + if (months) { + mom.month(mom.month() + months * isAdding); + } + if (milliseconds && !ignoreUpdateOffset) { + moment.updateOffset(mom); + } + // restore the minutes and hours after possibly changing dst + if (days || months) { + mom.minute(minutes); + mom.hour(hours); + } + } + + // check if is an array + function isArray(input) { + return Object.prototype.toString.call(input) === '[object Array]'; + } + + function isDate(input) { + return Object.prototype.toString.call(input) === '[object Date]' || + input instanceof Date; + } + + // compare two arrays, return the number of differences + function compareArrays(array1, array2, dontConvert) { + var len = Math.min(array1.length, array2.length), + lengthDiff = Math.abs(array1.length - array2.length), + diffs = 0, + i; + for (i = 0; i < len; i++) { + if ((dontConvert && array1[i] !== array2[i]) || + (!dontConvert && toInt(array1[i]) !== toInt(array2[i]))) { + diffs++; + } + } + return diffs + lengthDiff; + } + + function normalizeUnits(units) { + if (units) { + var lowered = units.toLowerCase().replace(/(.)s$/, '$1'); + units = unitAliases[units] || camelFunctions[lowered] || lowered; + } + return units; + } + + function normalizeObjectUnits(inputObject) { + var normalizedInput = {}, + normalizedProp, + prop; + + for (prop in inputObject) { + if (inputObject.hasOwnProperty(prop)) { + normalizedProp = normalizeUnits(prop); + if (normalizedProp) { + normalizedInput[normalizedProp] = inputObject[prop]; + } + } + } + + return normalizedInput; + } + + function makeList(field) { + var count, setter; + + if (field.indexOf('week') === 0) { + count = 7; + setter = 'day'; + } + else if (field.indexOf('month') === 0) { + count = 12; + setter = 'month'; + } + else { + return; + } + + moment[field] = function (format, index) { + var i, getter, + method = moment.fn._lang[field], + results = []; + + if (typeof format === 'number') { + index = format; + format = undefined; + } + + getter = function (i) { + var m = moment().utc().set(setter, i); + return method.call(moment.fn._lang, m, format || ''); + }; + + if (index != null) { + return getter(index); + } + else { + for (i = 0; i < count; i++) { + results.push(getter(i)); + } + return results; + } + }; + } + + function toInt(argumentForCoercion) { + var coercedNumber = +argumentForCoercion, + value = 0; + + if (coercedNumber !== 0 && isFinite(coercedNumber)) { + if (coercedNumber >= 0) { + value = Math.floor(coercedNumber); + } else { + value = Math.ceil(coercedNumber); + } + } + + return value; + } + + function daysInMonth(year, month) { + return new Date(Date.UTC(year, month + 1, 0)).getUTCDate(); + } + + function daysInYear(year) { + return isLeapYear(year) ? 366 : 365; + } + + function isLeapYear(year) { + return (year % 4 === 0 && year % 100 !== 0) || year % 400 === 0; + } + + function checkOverflow(m) { + var overflow; + if (m._a && m._pf.overflow === -2) { + overflow = + m._a[MONTH] < 0 || m._a[MONTH] > 11 ? MONTH : + m._a[DATE] < 1 || m._a[DATE] > daysInMonth(m._a[YEAR], m._a[MONTH]) ? DATE : + m._a[HOUR] < 0 || m._a[HOUR] > 23 ? HOUR : + m._a[MINUTE] < 0 || m._a[MINUTE] > 59 ? MINUTE : + m._a[SECOND] < 0 || m._a[SECOND] > 59 ? SECOND : + m._a[MILLISECOND] < 0 || m._a[MILLISECOND] > 999 ? MILLISECOND : + -1; + + if (m._pf._overflowDayOfYear && (overflow < YEAR || overflow > DATE)) { + overflow = DATE; + } + + m._pf.overflow = overflow; + } + } + + function isValid(m) { + if (m._isValid == null) { + m._isValid = !isNaN(m._d.getTime()) && + m._pf.overflow < 0 && + !m._pf.empty && + !m._pf.invalidMonth && + !m._pf.nullInput && + !m._pf.invalidFormat && + !m._pf.userInvalidated; + + if (m._strict) { + m._isValid = m._isValid && + m._pf.charsLeftOver === 0 && + m._pf.unusedTokens.length === 0; + } + } + return m._isValid; + } + + function normalizeLanguage(key) { + return key ? key.toLowerCase().replace('_', '-') : key; + } + + // Return a moment from input, that is local/utc/zone equivalent to model. + function makeAs(input, model) { + return model._isUTC ? moment(input).zone(model._offset || 0) : + moment(input).local(); + } + + /************************************ + Languages + ************************************/ + + + extend(Language.prototype, { + + set : function (config) { + var prop, i; + for (i in config) { + prop = config[i]; + if (typeof prop === 'function') { + this[i] = prop; + } else { + this['_' + i] = prop; + } + } + }, + + _months : "January_February_March_April_May_June_July_August_September_October_November_December".split("_"), + months : function (m) { + return this._months[m.month()]; + }, + + _monthsShort : "Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"), + monthsShort : function (m) { + return this._monthsShort[m.month()]; + }, + + monthsParse : function (monthName) { + var i, mom, regex; + + if (!this._monthsParse) { + this._monthsParse = []; + } + + for (i = 0; i < 12; i++) { + // make the regex if we don't have it already + if (!this._monthsParse[i]) { + mom = moment.utc([2000, i]); + regex = '^' + this.months(mom, '') + '|^' + this.monthsShort(mom, ''); + this._monthsParse[i] = new RegExp(regex.replace('.', ''), 'i'); + } + // test the regex + if (this._monthsParse[i].test(monthName)) { + return i; + } + } + }, + + _weekdays : "Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"), + weekdays : function (m) { + return this._weekdays[m.day()]; + }, + + _weekdaysShort : "Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"), + weekdaysShort : function (m) { + return this._weekdaysShort[m.day()]; + }, + + _weekdaysMin : "Su_Mo_Tu_We_Th_Fr_Sa".split("_"), + weekdaysMin : function (m) { + return this._weekdaysMin[m.day()]; + }, + + weekdaysParse : function (weekdayName) { + var i, mom, regex; + + if (!this._weekdaysParse) { + this._weekdaysParse = []; + } + + for (i = 0; i < 7; i++) { + // make the regex if we don't have it already + if (!this._weekdaysParse[i]) { + mom = moment([2000, 1]).day(i); + regex = '^' + this.weekdays(mom, '') + '|^' + this.weekdaysShort(mom, '') + '|^' + this.weekdaysMin(mom, ''); + this._weekdaysParse[i] = new RegExp(regex.replace('.', ''), 'i'); + } + // test the regex + if (this._weekdaysParse[i].test(weekdayName)) { + return i; + } + } + }, + + _longDateFormat : { + LT : "h:mm A", + L : "MM/DD/YYYY", + LL : "MMMM D YYYY", + LLL : "MMMM D YYYY LT", + LLLL : "dddd, MMMM D YYYY LT" + }, + longDateFormat : function (key) { + var output = this._longDateFormat[key]; + if (!output && this._longDateFormat[key.toUpperCase()]) { + output = this._longDateFormat[key.toUpperCase()].replace(/MMMM|MM|DD|dddd/g, function (val) { + return val.slice(1); + }); + this._longDateFormat[key] = output; + } + return output; + }, + + isPM : function (input) { + // IE8 Quirks Mode & IE7 Standards Mode do not allow accessing strings like arrays + // Using charAt should be more compatible. + return ((input + '').toLowerCase().charAt(0) === 'p'); + }, + + _meridiemParse : /[ap]\.?m?\.?/i, + meridiem : function (hours, minutes, isLower) { + if (hours > 11) { + return isLower ? 'pm' : 'PM'; + } else { + return isLower ? 'am' : 'AM'; + } + }, + + _calendar : { + sameDay : '[Today at] LT', + nextDay : '[Tomorrow at] LT', + nextWeek : 'dddd [at] LT', + lastDay : '[Yesterday at] LT', + lastWeek : '[Last] dddd [at] LT', + sameElse : 'L' + }, + calendar : function (key, mom) { + var output = this._calendar[key]; + return typeof output === 'function' ? output.apply(mom) : output; + }, + + _relativeTime : { + future : "in %s", + past : "%s ago", + s : "a few seconds", + m : "a minute", + mm : "%d minutes", + h : "an hour", + hh : "%d hours", + d : "a day", + dd : "%d days", + M : "a month", + MM : "%d months", + y : "a year", + yy : "%d years" + }, + relativeTime : function (number, withoutSuffix, string, isFuture) { + var output = this._relativeTime[string]; + return (typeof output === 'function') ? + output(number, withoutSuffix, string, isFuture) : + output.replace(/%d/i, number); + }, + pastFuture : function (diff, output) { + var format = this._relativeTime[diff > 0 ? 'future' : 'past']; + return typeof format === 'function' ? format(output) : format.replace(/%s/i, output); + }, + + ordinal : function (number) { + return this._ordinal.replace("%d", number); + }, + _ordinal : "%d", + + preparse : function (string) { + return string; + }, + + postformat : function (string) { + return string; + }, + + week : function (mom) { + return weekOfYear(mom, this._week.dow, this._week.doy).week; + }, + + _week : { + dow : 0, // Sunday is the first day of the week. + doy : 6 // The week that contains Jan 1st is the first week of the year. + }, + + _invalidDate: 'Invalid date', + invalidDate: function () { + return this._invalidDate; + } + }); + + // Loads a language definition into the `languages` cache. The function + // takes a key and optionally values. If not in the browser and no values + // are provided, it will load the language file module. As a convenience, + // this function also returns the language values. + function loadLang(key, values) { + values.abbr = key; + if (!languages[key]) { + languages[key] = new Language(); + } + languages[key].set(values); + return languages[key]; + } + + // Remove a language from the `languages` cache. Mostly useful in tests. + function unloadLang(key) { + delete languages[key]; + } + + // Determines which language definition to use and returns it. + // + // With no parameters, it will return the global language. If you + // pass in a language key, such as 'en', it will return the + // definition for 'en', so long as 'en' has already been loaded using + // moment.lang. + function getLangDefinition(key) { + var i = 0, j, lang, next, split, + get = function (k) { + if (!languages[k] && hasModule) { + try { + require('./lang/' + k); + } catch (e) { } + } + return languages[k]; + }; + + if (!key) { + return moment.fn._lang; + } + + if (!isArray(key)) { + //short-circuit everything else + lang = get(key); + if (lang) { + return lang; + } + key = [key]; + } + + //pick the language from the array + //try ['en-au', 'en-gb'] as 'en-au', 'en-gb', 'en', as in move through the list trying each + //substring from most specific to least, but move to the next array item if it's a more specific variant than the current root + while (i < key.length) { + split = normalizeLanguage(key[i]).split('-'); + j = split.length; + next = normalizeLanguage(key[i + 1]); + next = next ? next.split('-') : null; + while (j > 0) { + lang = get(split.slice(0, j).join('-')); + if (lang) { + return lang; + } + if (next && next.length >= j && compareArrays(split, next, true) >= j - 1) { + //the next array item is better than a shallower substring of this one + break; + } + j--; + } + i++; + } + return moment.fn._lang; + } + + /************************************ + Formatting + ************************************/ + + + function removeFormattingTokens(input) { + if (input.match(/\[[\s\S]/)) { + return input.replace(/^\[|\]$/g, ""); + } + return input.replace(/\\/g, ""); + } + + function makeFormatFunction(format) { + var array = format.match(formattingTokens), i, length; + + for (i = 0, length = array.length; i < length; i++) { + if (formatTokenFunctions[array[i]]) { + array[i] = formatTokenFunctions[array[i]]; + } else { + array[i] = removeFormattingTokens(array[i]); + } + } + + return function (mom) { + var output = ""; + for (i = 0; i < length; i++) { + output += array[i] instanceof Function ? array[i].call(mom, format) : array[i]; + } + return output; + }; + } + + // format date using native date object + function formatMoment(m, format) { + + if (!m.isValid()) { + return m.lang().invalidDate(); + } + + format = expandFormat(format, m.lang()); + + if (!formatFunctions[format]) { + formatFunctions[format] = makeFormatFunction(format); + } + + return formatFunctions[format](m); + } + + function expandFormat(format, lang) { + var i = 5; + + function replaceLongDateFormatTokens(input) { + return lang.longDateFormat(input) || input; + } + + localFormattingTokens.lastIndex = 0; + while (i >= 0 && localFormattingTokens.test(format)) { + format = format.replace(localFormattingTokens, replaceLongDateFormatTokens); + localFormattingTokens.lastIndex = 0; + i -= 1; + } + + return format; + } + + + /************************************ + Parsing + ************************************/ + + + // get the regex to find the next token + function getParseRegexForToken(token, config) { + var a, strict = config._strict; + switch (token) { + case 'DDDD': + return parseTokenThreeDigits; + case 'YYYY': + case 'GGGG': + case 'gggg': + return strict ? parseTokenFourDigits : parseTokenOneToFourDigits; + case 'Y': + case 'G': + case 'g': + return parseTokenSignedNumber; + case 'YYYYYY': + case 'YYYYY': + case 'GGGGG': + case 'ggggg': + return strict ? parseTokenSixDigits : parseTokenOneToSixDigits; + case 'S': + if (strict) { return parseTokenOneDigit; } + /* falls through */ + case 'SS': + if (strict) { return parseTokenTwoDigits; } + /* falls through */ + case 'SSS': + if (strict) { return parseTokenThreeDigits; } + /* falls through */ + case 'DDD': + return parseTokenOneToThreeDigits; + case 'MMM': + case 'MMMM': + case 'dd': + case 'ddd': + case 'dddd': + return parseTokenWord; + case 'a': + case 'A': + return getLangDefinition(config._l)._meridiemParse; + case 'X': + return parseTokenTimestampMs; + case 'Z': + case 'ZZ': + return parseTokenTimezone; + case 'T': + return parseTokenT; + case 'SSSS': + return parseTokenDigits; + case 'MM': + case 'DD': + case 'YY': + case 'GG': + case 'gg': + case 'HH': + case 'hh': + case 'mm': + case 'ss': + case 'ww': + case 'WW': + return strict ? parseTokenTwoDigits : parseTokenOneOrTwoDigits; + case 'M': + case 'D': + case 'd': + case 'H': + case 'h': + case 'm': + case 's': + case 'w': + case 'W': + case 'e': + case 'E': + return parseTokenOneOrTwoDigits; + default : + a = new RegExp(regexpEscape(unescapeFormat(token.replace('\\', '')), "i")); + return a; + } + } + + function timezoneMinutesFromString(string) { + string = string || ""; + var possibleTzMatches = (string.match(parseTokenTimezone) || []), + tzChunk = possibleTzMatches[possibleTzMatches.length - 1] || [], + parts = (tzChunk + '').match(parseTimezoneChunker) || ['-', 0, 0], + minutes = +(parts[1] * 60) + toInt(parts[2]); + + return parts[0] === '+' ? -minutes : minutes; + } + + // function to convert string input to date + function addTimeToArrayFromToken(token, input, config) { + var a, datePartArray = config._a; + + switch (token) { + // MONTH + case 'M' : // fall through to MM + case 'MM' : + if (input != null) { + datePartArray[MONTH] = toInt(input) - 1; + } + break; + case 'MMM' : // fall through to MMMM + case 'MMMM' : + a = getLangDefinition(config._l).monthsParse(input); + // if we didn't find a month name, mark the date as invalid. + if (a != null) { + datePartArray[MONTH] = a; + } else { + config._pf.invalidMonth = input; + } + break; + // DAY OF MONTH + case 'D' : // fall through to DD + case 'DD' : + if (input != null) { + datePartArray[DATE] = toInt(input); + } + break; + // DAY OF YEAR + case 'DDD' : // fall through to DDDD + case 'DDDD' : + if (input != null) { + config._dayOfYear = toInt(input); + } + + break; + // YEAR + case 'YY' : + datePartArray[YEAR] = toInt(input) + (toInt(input) > 68 ? 1900 : 2000); + break; + case 'YYYY' : + case 'YYYYY' : + case 'YYYYYY' : + datePartArray[YEAR] = toInt(input); + break; + // AM / PM + case 'a' : // fall through to A + case 'A' : + config._isPm = getLangDefinition(config._l).isPM(input); + break; + // 24 HOUR + case 'H' : // fall through to hh + case 'HH' : // fall through to hh + case 'h' : // fall through to hh + case 'hh' : + datePartArray[HOUR] = toInt(input); + break; + // MINUTE + case 'm' : // fall through to mm + case 'mm' : + datePartArray[MINUTE] = toInt(input); + break; + // SECOND + case 's' : // fall through to ss + case 'ss' : + datePartArray[SECOND] = toInt(input); + break; + // MILLISECOND + case 'S' : + case 'SS' : + case 'SSS' : + case 'SSSS' : + datePartArray[MILLISECOND] = toInt(('0.' + input) * 1000); + break; + // UNIX TIMESTAMP WITH MS + case 'X': + config._d = new Date(parseFloat(input) * 1000); + break; + // TIMEZONE + case 'Z' : // fall through to ZZ + case 'ZZ' : + config._useUTC = true; + config._tzm = timezoneMinutesFromString(input); + break; + case 'w': + case 'ww': + case 'W': + case 'WW': + case 'd': + case 'dd': + case 'ddd': + case 'dddd': + case 'e': + case 'E': + token = token.substr(0, 1); + /* falls through */ + case 'gg': + case 'gggg': + case 'GG': + case 'GGGG': + case 'GGGGG': + token = token.substr(0, 2); + if (input) { + config._w = config._w || {}; + config._w[token] = input; + } + break; + } + } + + // convert an array to a date. + // the array should mirror the parameters below + // note: all values past the year are optional and will default to the lowest possible value. + // [year, month, day , hour, minute, second, millisecond] + function dateFromConfig(config) { + var i, date, input = [], currentDate, + yearToUse, fixYear, w, temp, lang, weekday, week; + + if (config._d) { + return; + } + + currentDate = currentDateArray(config); + + //compute day of the year from weeks and weekdays + if (config._w && config._a[DATE] == null && config._a[MONTH] == null) { + fixYear = function (val) { + var int_val = parseInt(val, 10); + return val ? + (val.length < 3 ? (int_val > 68 ? 1900 + int_val : 2000 + int_val) : int_val) : + (config._a[YEAR] == null ? moment().weekYear() : config._a[YEAR]); + }; + + w = config._w; + if (w.GG != null || w.W != null || w.E != null) { + temp = dayOfYearFromWeeks(fixYear(w.GG), w.W || 1, w.E, 4, 1); + } + else { + lang = getLangDefinition(config._l); + weekday = w.d != null ? parseWeekday(w.d, lang) : + (w.e != null ? parseInt(w.e, 10) + lang._week.dow : 0); + + week = parseInt(w.w, 10) || 1; + + //if we're parsing 'd', then the low day numbers may be next week + if (w.d != null && weekday < lang._week.dow) { + week++; + } + + temp = dayOfYearFromWeeks(fixYear(w.gg), week, weekday, lang._week.doy, lang._week.dow); + } + + config._a[YEAR] = temp.year; + config._dayOfYear = temp.dayOfYear; + } + + //if the day of the year is set, figure out what it is + if (config._dayOfYear) { + yearToUse = config._a[YEAR] == null ? currentDate[YEAR] : config._a[YEAR]; + + if (config._dayOfYear > daysInYear(yearToUse)) { + config._pf._overflowDayOfYear = true; + } + + date = makeUTCDate(yearToUse, 0, config._dayOfYear); + config._a[MONTH] = date.getUTCMonth(); + config._a[DATE] = date.getUTCDate(); + } + + // Default to current date. + // * if no year, month, day of month are given, default to today + // * if day of month is given, default month and year + // * if month is given, default only year + // * if year is given, don't default anything + for (i = 0; i < 3 && config._a[i] == null; ++i) { + config._a[i] = input[i] = currentDate[i]; + } + + // Zero out whatever was not defaulted, including time + for (; i < 7; i++) { + config._a[i] = input[i] = (config._a[i] == null) ? (i === 2 ? 1 : 0) : config._a[i]; + } + + // add the offsets to the time to be parsed so that we can have a clean array for checking isValid + input[HOUR] += toInt((config._tzm || 0) / 60); + input[MINUTE] += toInt((config._tzm || 0) % 60); + + config._d = (config._useUTC ? makeUTCDate : makeDate).apply(null, input); + } + + function dateFromObject(config) { + var normalizedInput; + + if (config._d) { + return; + } + + normalizedInput = normalizeObjectUnits(config._i); + config._a = [ + normalizedInput.year, + normalizedInput.month, + normalizedInput.day, + normalizedInput.hour, + normalizedInput.minute, + normalizedInput.second, + normalizedInput.millisecond + ]; + + dateFromConfig(config); + } + + function currentDateArray(config) { + var now = new Date(); + if (config._useUTC) { + return [ + now.getUTCFullYear(), + now.getUTCMonth(), + now.getUTCDate() + ]; + } else { + return [now.getFullYear(), now.getMonth(), now.getDate()]; + } + } + + // date from string and format string + function makeDateFromStringAndFormat(config) { + + config._a = []; + config._pf.empty = true; + + // This array is used to make a Date, either with `new Date` or `Date.UTC` + var lang = getLangDefinition(config._l), + string = '' + config._i, + i, parsedInput, tokens, token, skipped, + stringLength = string.length, + totalParsedInputLength = 0; + + tokens = expandFormat(config._f, lang).match(formattingTokens) || []; + + for (i = 0; i < tokens.length; i++) { + token = tokens[i]; + parsedInput = (string.match(getParseRegexForToken(token, config)) || [])[0]; + if (parsedInput) { + skipped = string.substr(0, string.indexOf(parsedInput)); + if (skipped.length > 0) { + config._pf.unusedInput.push(skipped); + } + string = string.slice(string.indexOf(parsedInput) + parsedInput.length); + totalParsedInputLength += parsedInput.length; + } + // don't parse if it's not a known token + if (formatTokenFunctions[token]) { + if (parsedInput) { + config._pf.empty = false; + } + else { + config._pf.unusedTokens.push(token); + } + addTimeToArrayFromToken(token, parsedInput, config); + } + else if (config._strict && !parsedInput) { + config._pf.unusedTokens.push(token); + } + } + + // add remaining unparsed input length to the string + config._pf.charsLeftOver = stringLength - totalParsedInputLength; + if (string.length > 0) { + config._pf.unusedInput.push(string); + } + + // handle am pm + if (config._isPm && config._a[HOUR] < 12) { + config._a[HOUR] += 12; + } + // if is 12 am, change hours to 0 + if (config._isPm === false && config._a[HOUR] === 12) { + config._a[HOUR] = 0; + } + + dateFromConfig(config); + checkOverflow(config); + } + + function unescapeFormat(s) { + return s.replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g, function (matched, p1, p2, p3, p4) { + return p1 || p2 || p3 || p4; + }); + } + + // Code from http://stackoverflow.com/questions/3561493/is-there-a-regexp-escape-function-in-javascript + function regexpEscape(s) { + return s.replace(/[-\/\\^$*+?.()|[\]{}]/g, '\\$&'); + } + + // date from string and array of format strings + function makeDateFromStringAndArray(config) { + var tempConfig, + bestMoment, + + scoreToBeat, + i, + currentScore; + + if (config._f.length === 0) { + config._pf.invalidFormat = true; + config._d = new Date(NaN); + return; + } + + for (i = 0; i < config._f.length; i++) { + currentScore = 0; + tempConfig = extend({}, config); + tempConfig._pf = defaultParsingFlags(); + tempConfig._f = config._f[i]; + makeDateFromStringAndFormat(tempConfig); + + if (!isValid(tempConfig)) { + continue; + } + + // if there is any input that was not parsed add a penalty for that format + currentScore += tempConfig._pf.charsLeftOver; + + //or tokens + currentScore += tempConfig._pf.unusedTokens.length * 10; + + tempConfig._pf.score = currentScore; + + if (scoreToBeat == null || currentScore < scoreToBeat) { + scoreToBeat = currentScore; + bestMoment = tempConfig; + } + } + + extend(config, bestMoment || tempConfig); + } + + // date from iso format + function makeDateFromString(config) { + var i, l, + string = config._i, + match = isoRegex.exec(string); + + if (match) { + config._pf.iso = true; + for (i = 0, l = isoDates.length; i < l; i++) { + if (isoDates[i][1].exec(string)) { + // match[5] should be "T" or undefined + config._f = isoDates[i][0] + (match[6] || " "); + break; + } + } + for (i = 0, l = isoTimes.length; i < l; i++) { + if (isoTimes[i][1].exec(string)) { + config._f += isoTimes[i][0]; + break; + } + } + if (string.match(parseTokenTimezone)) { + config._f += "Z"; + } + makeDateFromStringAndFormat(config); + } + else { + config._d = new Date(string); + } + } + + function makeDateFromInput(config) { + var input = config._i, + matched = aspNetJsonRegex.exec(input); + + if (input === undefined) { + config._d = new Date(); + } else if (matched) { + config._d = new Date(+matched[1]); + } else if (typeof input === 'string') { + makeDateFromString(config); + } else if (isArray(input)) { + config._a = input.slice(0); + dateFromConfig(config); + } else if (isDate(input)) { + config._d = new Date(+input); + } else if (typeof(input) === 'object') { + dateFromObject(config); + } else { + config._d = new Date(input); + } + } + + function makeDate(y, m, d, h, M, s, ms) { + //can't just apply() to create a date: + //http://stackoverflow.com/questions/181348/instantiating-a-javascript-object-by-calling-prototype-constructor-apply + var date = new Date(y, m, d, h, M, s, ms); + + //the date constructor doesn't accept years < 1970 + if (y < 1970) { + date.setFullYear(y); + } + return date; + } + + function makeUTCDate(y) { + var date = new Date(Date.UTC.apply(null, arguments)); + if (y < 1970) { + date.setUTCFullYear(y); + } + return date; + } + + function parseWeekday(input, language) { + if (typeof input === 'string') { + if (!isNaN(input)) { + input = parseInt(input, 10); + } + else { + input = language.weekdaysParse(input); + if (typeof input !== 'number') { + return null; + } + } + } + return input; + } + + /************************************ + Relative Time + ************************************/ + + + // helper function for moment.fn.from, moment.fn.fromNow, and moment.duration.fn.humanize + function substituteTimeAgo(string, number, withoutSuffix, isFuture, lang) { + return lang.relativeTime(number || 1, !!withoutSuffix, string, isFuture); + } + + function relativeTime(milliseconds, withoutSuffix, lang) { + var seconds = round(Math.abs(milliseconds) / 1000), + minutes = round(seconds / 60), + hours = round(minutes / 60), + days = round(hours / 24), + years = round(days / 365), + args = seconds < 45 && ['s', seconds] || + minutes === 1 && ['m'] || + minutes < 45 && ['mm', minutes] || + hours === 1 && ['h'] || + hours < 22 && ['hh', hours] || + days === 1 && ['d'] || + days <= 25 && ['dd', days] || + days <= 45 && ['M'] || + days < 345 && ['MM', round(days / 30)] || + years === 1 && ['y'] || ['yy', years]; + args[2] = withoutSuffix; + args[3] = milliseconds > 0; + args[4] = lang; + return substituteTimeAgo.apply({}, args); + } + + + /************************************ + Week of Year + ************************************/ + + + // firstDayOfWeek 0 = sun, 6 = sat + // the day of the week that starts the week + // (usually sunday or monday) + // firstDayOfWeekOfYear 0 = sun, 6 = sat + // the first week is the week that contains the first + // of this day of the week + // (eg. ISO weeks use thursday (4)) + function weekOfYear(mom, firstDayOfWeek, firstDayOfWeekOfYear) { + var end = firstDayOfWeekOfYear - firstDayOfWeek, + daysToDayOfWeek = firstDayOfWeekOfYear - mom.day(), + adjustedMoment; + + + if (daysToDayOfWeek > end) { + daysToDayOfWeek -= 7; + } + + if (daysToDayOfWeek < end - 7) { + daysToDayOfWeek += 7; + } + + adjustedMoment = moment(mom).add('d', daysToDayOfWeek); + return { + week: Math.ceil(adjustedMoment.dayOfYear() / 7), + year: adjustedMoment.year() + }; + } + + //http://en.wikipedia.org/wiki/ISO_week_date#Calculating_a_date_given_the_year.2C_week_number_and_weekday + function dayOfYearFromWeeks(year, week, weekday, firstDayOfWeekOfYear, firstDayOfWeek) { + var d = makeUTCDate(year, 0, 1).getUTCDay(), daysToAdd, dayOfYear; + + weekday = weekday != null ? weekday : firstDayOfWeek; + daysToAdd = firstDayOfWeek - d + (d > firstDayOfWeekOfYear ? 7 : 0) - (d < firstDayOfWeek ? 7 : 0); + dayOfYear = 7 * (week - 1) + (weekday - firstDayOfWeek) + daysToAdd + 1; + + return { + year: dayOfYear > 0 ? year : year - 1, + dayOfYear: dayOfYear > 0 ? dayOfYear : daysInYear(year - 1) + dayOfYear + }; + } + + /************************************ + Top Level Functions + ************************************/ + + function makeMoment(config) { + var input = config._i, + format = config._f; + + if (input === null) { + return moment.invalid({nullInput: true}); + } + + if (typeof input === 'string') { + config._i = input = getLangDefinition().preparse(input); + } + + if (moment.isMoment(input)) { + config = cloneMoment(input); + + config._d = new Date(+input._d); + } else if (format) { + if (isArray(format)) { + makeDateFromStringAndArray(config); + } else { + makeDateFromStringAndFormat(config); + } + } else { + makeDateFromInput(config); + } + + return new Moment(config); + } + + moment = function (input, format, lang, strict) { + var c; + + if (typeof(lang) === "boolean") { + strict = lang; + lang = undefined; + } + // object construction must be done this way. + // https://github.com/moment/moment/issues/1423 + c = {}; + c._isAMomentObject = true; + c._i = input; + c._f = format; + c._l = lang; + c._strict = strict; + c._isUTC = false; + c._pf = defaultParsingFlags(); + + return makeMoment(c); + }; + + // creating with utc + moment.utc = function (input, format, lang, strict) { + var c; + + if (typeof(lang) === "boolean") { + strict = lang; + lang = undefined; + } + // object construction must be done this way. + // https://github.com/moment/moment/issues/1423 + c = {}; + c._isAMomentObject = true; + c._useUTC = true; + c._isUTC = true; + c._l = lang; + c._i = input; + c._f = format; + c._strict = strict; + c._pf = defaultParsingFlags(); + + return makeMoment(c).utc(); + }; + + // creating with unix timestamp (in seconds) + moment.unix = function (input) { + return moment(input * 1000); + }; + + // duration + moment.duration = function (input, key) { + var duration = input, + // matching against regexp is expensive, do it on demand + match = null, + sign, + ret, + parseIso; + + if (moment.isDuration(input)) { + duration = { + ms: input._milliseconds, + d: input._days, + M: input._months + }; + } else if (typeof input === 'number') { + duration = {}; + if (key) { + duration[key] = input; + } else { + duration.milliseconds = input; + } + } else if (!!(match = aspNetTimeSpanJsonRegex.exec(input))) { + sign = (match[1] === "-") ? -1 : 1; + duration = { + y: 0, + d: toInt(match[DATE]) * sign, + h: toInt(match[HOUR]) * sign, + m: toInt(match[MINUTE]) * sign, + s: toInt(match[SECOND]) * sign, + ms: toInt(match[MILLISECOND]) * sign + }; + } else if (!!(match = isoDurationRegex.exec(input))) { + sign = (match[1] === "-") ? -1 : 1; + parseIso = function (inp) { + // We'd normally use ~~inp for this, but unfortunately it also + // converts floats to ints. + // inp may be undefined, so careful calling replace on it. + var res = inp && parseFloat(inp.replace(',', '.')); + // apply sign while we're at it + return (isNaN(res) ? 0 : res) * sign; + }; + duration = { + y: parseIso(match[2]), + M: parseIso(match[3]), + d: parseIso(match[4]), + h: parseIso(match[5]), + m: parseIso(match[6]), + s: parseIso(match[7]), + w: parseIso(match[8]) + }; + } + + ret = new Duration(duration); + + if (moment.isDuration(input) && input.hasOwnProperty('_lang')) { + ret._lang = input._lang; + } + + return ret; + }; + + // version number + moment.version = VERSION; + + // default format + moment.defaultFormat = isoFormat; + + // This function will be called whenever a moment is mutated. + // It is intended to keep the offset in sync with the timezone. + moment.updateOffset = function () {}; + + // This function will load languages and then set the global language. If + // no arguments are passed in, it will simply return the current global + // language key. + moment.lang = function (key, values) { + var r; + if (!key) { + return moment.fn._lang._abbr; + } + if (values) { + loadLang(normalizeLanguage(key), values); + } else if (values === null) { + unloadLang(key); + key = 'en'; + } else if (!languages[key]) { + getLangDefinition(key); + } + r = moment.duration.fn._lang = moment.fn._lang = getLangDefinition(key); + return r._abbr; + }; + + // returns language data + moment.langData = function (key) { + if (key && key._lang && key._lang._abbr) { + key = key._lang._abbr; + } + return getLangDefinition(key); + }; + + // compare moment object + moment.isMoment = function (obj) { + return obj instanceof Moment || + (obj != null && obj.hasOwnProperty('_isAMomentObject')); + }; + + // for typechecking Duration objects + moment.isDuration = function (obj) { + return obj instanceof Duration; + }; + + for (i = lists.length - 1; i >= 0; --i) { + makeList(lists[i]); + } + + moment.normalizeUnits = function (units) { + return normalizeUnits(units); + }; + + moment.invalid = function (flags) { + var m = moment.utc(NaN); + if (flags != null) { + extend(m._pf, flags); + } + else { + m._pf.userInvalidated = true; + } + + return m; + }; + + moment.parseZone = function (input) { + return moment(input).parseZone(); + }; + + /************************************ + Moment Prototype + ************************************/ + + + extend(moment.fn = Moment.prototype, { + + clone : function () { + return moment(this); + }, + + valueOf : function () { + return +this._d + ((this._offset || 0) * 60000); + }, + + unix : function () { + return Math.floor(+this / 1000); + }, + + toString : function () { + return this.clone().lang('en').format("ddd MMM DD YYYY HH:mm:ss [GMT]ZZ"); + }, + + toDate : function () { + return this._offset ? new Date(+this) : this._d; + }, + + toISOString : function () { + var m = moment(this).utc(); + if (0 < m.year() && m.year() <= 9999) { + return formatMoment(m, 'YYYY-MM-DD[T]HH:mm:ss.SSS[Z]'); + } else { + return formatMoment(m, 'YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]'); + } + }, + + toArray : function () { + var m = this; + return [ + m.year(), + m.month(), + m.date(), + m.hours(), + m.minutes(), + m.seconds(), + m.milliseconds() + ]; + }, + + isValid : function () { + return isValid(this); + }, + + isDSTShifted : function () { + + if (this._a) { + return this.isValid() && compareArrays(this._a, (this._isUTC ? moment.utc(this._a) : moment(this._a)).toArray()) > 0; + } + + return false; + }, + + parsingFlags : function () { + return extend({}, this._pf); + }, + + invalidAt: function () { + return this._pf.overflow; + }, + + utc : function () { + return this.zone(0); + }, + + local : function () { + this.zone(0); + this._isUTC = false; + return this; + }, + + format : function (inputString) { + var output = formatMoment(this, inputString || moment.defaultFormat); + return this.lang().postformat(output); + }, + + add : function (input, val) { + var dur; + // switch args to support add('s', 1) and add(1, 's') + if (typeof input === 'string') { + dur = moment.duration(+val, input); + } else { + dur = moment.duration(input, val); + } + addOrSubtractDurationFromMoment(this, dur, 1); + return this; + }, + + subtract : function (input, val) { + var dur; + // switch args to support subtract('s', 1) and subtract(1, 's') + if (typeof input === 'string') { + dur = moment.duration(+val, input); + } else { + dur = moment.duration(input, val); + } + addOrSubtractDurationFromMoment(this, dur, -1); + return this; + }, + + diff : function (input, units, asFloat) { + var that = makeAs(input, this), + zoneDiff = (this.zone() - that.zone()) * 6e4, + diff, output; + + units = normalizeUnits(units); + + if (units === 'year' || units === 'month') { + // average number of days in the months in the given dates + diff = (this.daysInMonth() + that.daysInMonth()) * 432e5; // 24 * 60 * 60 * 1000 / 2 + // difference in months + output = ((this.year() - that.year()) * 12) + (this.month() - that.month()); + // adjust by taking difference in days, average number of days + // and dst in the given months. + output += ((this - moment(this).startOf('month')) - + (that - moment(that).startOf('month'))) / diff; + // same as above but with zones, to negate all dst + output -= ((this.zone() - moment(this).startOf('month').zone()) - + (that.zone() - moment(that).startOf('month').zone())) * 6e4 / diff; + if (units === 'year') { + output = output / 12; + } + } else { + diff = (this - that); + output = units === 'second' ? diff / 1e3 : // 1000 + units === 'minute' ? diff / 6e4 : // 1000 * 60 + units === 'hour' ? diff / 36e5 : // 1000 * 60 * 60 + units === 'day' ? (diff - zoneDiff) / 864e5 : // 1000 * 60 * 60 * 24, negate dst + units === 'week' ? (diff - zoneDiff) / 6048e5 : // 1000 * 60 * 60 * 24 * 7, negate dst + diff; + } + return asFloat ? output : absRound(output); + }, + + from : function (time, withoutSuffix) { + return moment.duration(this.diff(time)).lang(this.lang()._abbr).humanize(!withoutSuffix); + }, + + fromNow : function (withoutSuffix) { + return this.from(moment(), withoutSuffix); + }, + + calendar : function () { + // We want to compare the start of today, vs this. + // Getting start-of-today depends on whether we're zone'd or not. + var sod = makeAs(moment(), this).startOf('day'), + diff = this.diff(sod, 'days', true), + format = diff < -6 ? 'sameElse' : + diff < -1 ? 'lastWeek' : + diff < 0 ? 'lastDay' : + diff < 1 ? 'sameDay' : + diff < 2 ? 'nextDay' : + diff < 7 ? 'nextWeek' : 'sameElse'; + return this.format(this.lang().calendar(format, this)); + }, + + isLeapYear : function () { + return isLeapYear(this.year()); + }, + + isDST : function () { + return (this.zone() < this.clone().month(0).zone() || + this.zone() < this.clone().month(5).zone()); + }, + + day : function (input) { + var day = this._isUTC ? this._d.getUTCDay() : this._d.getDay(); + if (input != null) { + input = parseWeekday(input, this.lang()); + return this.add({ d : input - day }); + } else { + return day; + } + }, + + month : function (input) { + var utc = this._isUTC ? 'UTC' : '', + dayOfMonth; + + if (input != null) { + if (typeof input === 'string') { + input = this.lang().monthsParse(input); + if (typeof input !== 'number') { + return this; + } + } + + dayOfMonth = this.date(); + this.date(1); + this._d['set' + utc + 'Month'](input); + this.date(Math.min(dayOfMonth, this.daysInMonth())); + + moment.updateOffset(this); + return this; + } else { + return this._d['get' + utc + 'Month'](); + } + }, + + startOf: function (units) { + units = normalizeUnits(units); + // the following switch intentionally omits break keywords + // to utilize falling through the cases. + switch (units) { + case 'year': + this.month(0); + /* falls through */ + case 'month': + this.date(1); + /* falls through */ + case 'week': + case 'isoWeek': + case 'day': + this.hours(0); + /* falls through */ + case 'hour': + this.minutes(0); + /* falls through */ + case 'minute': + this.seconds(0); + /* falls through */ + case 'second': + this.milliseconds(0); + /* falls through */ + } + + // weeks are a special case + if (units === 'week') { + this.weekday(0); + } else if (units === 'isoWeek') { + this.isoWeekday(1); + } + + return this; + }, + + endOf: function (units) { + units = normalizeUnits(units); + return this.startOf(units).add((units === 'isoWeek' ? 'week' : units), 1).subtract('ms', 1); + }, + + isAfter: function (input, units) { + units = typeof units !== 'undefined' ? units : 'millisecond'; + return +this.clone().startOf(units) > +moment(input).startOf(units); + }, + + isBefore: function (input, units) { + units = typeof units !== 'undefined' ? units : 'millisecond'; + return +this.clone().startOf(units) < +moment(input).startOf(units); + }, + + isSame: function (input, units) { + units = units || 'ms'; + return +this.clone().startOf(units) === +makeAs(input, this).startOf(units); + }, + + min: function (other) { + other = moment.apply(null, arguments); + return other < this ? this : other; + }, + + max: function (other) { + other = moment.apply(null, arguments); + return other > this ? this : other; + }, + + zone : function (input) { + var offset = this._offset || 0; + if (input != null) { + if (typeof input === "string") { + input = timezoneMinutesFromString(input); + } + if (Math.abs(input) < 16) { + input = input * 60; + } + this._offset = input; + this._isUTC = true; + if (offset !== input) { + addOrSubtractDurationFromMoment(this, moment.duration(offset - input, 'm'), 1, true); + } + } else { + return this._isUTC ? offset : this._d.getTimezoneOffset(); + } + return this; + }, + + zoneAbbr : function () { + return this._isUTC ? "UTC" : ""; + }, + + zoneName : function () { + return this._isUTC ? "Coordinated Universal Time" : ""; + }, + + parseZone : function () { + if (this._tzm) { + this.zone(this._tzm); + } else if (typeof this._i === 'string') { + this.zone(this._i); + } + return this; + }, + + hasAlignedHourOffset : function (input) { + if (!input) { + input = 0; + } + else { + input = moment(input).zone(); + } + + return (this.zone() - input) % 60 === 0; + }, + + daysInMonth : function () { + return daysInMonth(this.year(), this.month()); + }, + + dayOfYear : function (input) { + var dayOfYear = round((moment(this).startOf('day') - moment(this).startOf('year')) / 864e5) + 1; + return input == null ? dayOfYear : this.add("d", (input - dayOfYear)); + }, + + quarter : function () { + return Math.ceil((this.month() + 1.0) / 3.0); + }, + + weekYear : function (input) { + var year = weekOfYear(this, this.lang()._week.dow, this.lang()._week.doy).year; + return input == null ? year : this.add("y", (input - year)); + }, + + isoWeekYear : function (input) { + var year = weekOfYear(this, 1, 4).year; + return input == null ? year : this.add("y", (input - year)); + }, + + week : function (input) { + var week = this.lang().week(this); + return input == null ? week : this.add("d", (input - week) * 7); + }, + + isoWeek : function (input) { + var week = weekOfYear(this, 1, 4).week; + return input == null ? week : this.add("d", (input - week) * 7); + }, + + weekday : function (input) { + var weekday = (this.day() + 7 - this.lang()._week.dow) % 7; + return input == null ? weekday : this.add("d", input - weekday); + }, + + isoWeekday : function (input) { + // behaves the same as moment#day except + // as a getter, returns 7 instead of 0 (1-7 range instead of 0-6) + // as a setter, sunday should belong to the previous week. + return input == null ? this.day() || 7 : this.day(this.day() % 7 ? input : input - 7); + }, + + get : function (units) { + units = normalizeUnits(units); + return this[units](); + }, + + set : function (units, value) { + units = normalizeUnits(units); + if (typeof this[units] === 'function') { + this[units](value); + } + return this; + }, + + // If passed a language key, it will set the language for this + // instance. Otherwise, it will return the language configuration + // variables for this instance. + lang : function (key) { + if (key === undefined) { + return this._lang; + } else { + this._lang = getLangDefinition(key); + return this; + } + } + }); + + // helper for adding shortcuts + function makeGetterAndSetter(name, key) { + moment.fn[name] = moment.fn[name + 's'] = function (input) { + var utc = this._isUTC ? 'UTC' : ''; + if (input != null) { + this._d['set' + utc + key](input); + moment.updateOffset(this); + return this; + } else { + return this._d['get' + utc + key](); + } + }; + } + + // loop through and add shortcuts (Month, Date, Hours, Minutes, Seconds, Milliseconds) + for (i = 0; i < proxyGettersAndSetters.length; i ++) { + makeGetterAndSetter(proxyGettersAndSetters[i].toLowerCase().replace(/s$/, ''), proxyGettersAndSetters[i]); + } + + // add shortcut for year (uses different syntax than the getter/setter 'year' == 'FullYear') + makeGetterAndSetter('year', 'FullYear'); + + // add plural methods + moment.fn.days = moment.fn.day; + moment.fn.months = moment.fn.month; + moment.fn.weeks = moment.fn.week; + moment.fn.isoWeeks = moment.fn.isoWeek; + + // add aliased format methods + moment.fn.toJSON = moment.fn.toISOString; + + /************************************ + Duration Prototype + ************************************/ + + + extend(moment.duration.fn = Duration.prototype, { + + _bubble : function () { + var milliseconds = this._milliseconds, + days = this._days, + months = this._months, + data = this._data, + seconds, minutes, hours, years; + + // The following code bubbles up values, see the tests for + // examples of what that means. + data.milliseconds = milliseconds % 1000; + + seconds = absRound(milliseconds / 1000); + data.seconds = seconds % 60; + + minutes = absRound(seconds / 60); + data.minutes = minutes % 60; + + hours = absRound(minutes / 60); + data.hours = hours % 24; + + days += absRound(hours / 24); + data.days = days % 30; + + months += absRound(days / 30); + data.months = months % 12; + + years = absRound(months / 12); + data.years = years; + }, + + weeks : function () { + return absRound(this.days() / 7); + }, + + valueOf : function () { + return this._milliseconds + + this._days * 864e5 + + (this._months % 12) * 2592e6 + + toInt(this._months / 12) * 31536e6; + }, + + humanize : function (withSuffix) { + var difference = +this, + output = relativeTime(difference, !withSuffix, this.lang()); + + if (withSuffix) { + output = this.lang().pastFuture(difference, output); + } + + return this.lang().postformat(output); + }, + + add : function (input, val) { + // supports only 2.0-style add(1, 's') or add(moment) + var dur = moment.duration(input, val); + + this._milliseconds += dur._milliseconds; + this._days += dur._days; + this._months += dur._months; + + this._bubble(); + + return this; + }, + + subtract : function (input, val) { + var dur = moment.duration(input, val); + + this._milliseconds -= dur._milliseconds; + this._days -= dur._days; + this._months -= dur._months; + + this._bubble(); + + return this; + }, + + get : function (units) { + units = normalizeUnits(units); + return this[units.toLowerCase() + 's'](); + }, + + as : function (units) { + units = normalizeUnits(units); + return this['as' + units.charAt(0).toUpperCase() + units.slice(1) + 's'](); + }, + + lang : moment.fn.lang, + + toIsoString : function () { + // inspired by https://github.com/dordille/moment-isoduration/blob/master/moment.isoduration.js + var years = Math.abs(this.years()), + months = Math.abs(this.months()), + days = Math.abs(this.days()), + hours = Math.abs(this.hours()), + minutes = Math.abs(this.minutes()), + seconds = Math.abs(this.seconds() + this.milliseconds() / 1000); + + if (!this.asSeconds()) { + // this is the same as C#'s (Noda) and python (isodate)... + // but not other JS (goog.date) + return 'P0D'; + } + + return (this.asSeconds() < 0 ? '-' : '') + + 'P' + + (years ? years + 'Y' : '') + + (months ? months + 'M' : '') + + (days ? days + 'D' : '') + + ((hours || minutes || seconds) ? 'T' : '') + + (hours ? hours + 'H' : '') + + (minutes ? minutes + 'M' : '') + + (seconds ? seconds + 'S' : ''); + } + }); + + function makeDurationGetter(name) { + moment.duration.fn[name] = function () { + return this._data[name]; + }; + } + + function makeDurationAsGetter(name, factor) { + moment.duration.fn['as' + name] = function () { + return +this / factor; + }; + } + + for (i in unitMillisecondFactors) { + if (unitMillisecondFactors.hasOwnProperty(i)) { + makeDurationAsGetter(i, unitMillisecondFactors[i]); + makeDurationGetter(i.toLowerCase()); + } + } + + makeDurationAsGetter('Weeks', 6048e5); + moment.duration.fn.asMonths = function () { + return (+this - this.years() * 31536e6) / 2592e6 + this.years() * 12; + }; + + + /************************************ + Default Lang + ************************************/ + + + // Set default language, other languages will inherit from English. + moment.lang('en', { + ordinal : function (number) { + var b = number % 10, + output = (toInt(number % 100 / 10) === 1) ? 'th' : + (b === 1) ? 'st' : + (b === 2) ? 'nd' : + (b === 3) ? 'rd' : 'th'; + return number + output; + } + }); + + /* EMBED_LANGUAGES */ + + /************************************ + Exposing Moment + ************************************/ + + function makeGlobal(deprecate) { + var warned = false, local_moment = moment; + /*global ender:false */ + if (typeof ender !== 'undefined') { + return; + } + // here, `this` means `window` in the browser, or `global` on the server + // add `moment` as a global object via a string identifier, + // for Closure Compiler "advanced" mode + if (deprecate) { + global.moment = function () { + if (!warned && console && console.warn) { + warned = true; + console.warn( + "Accessing Moment through the global scope is " + + "deprecated, and will be removed in an upcoming " + + "release."); + } + return local_moment.apply(null, arguments); + }; + extend(global.moment, local_moment); + } else { + global['moment'] = moment; + } + } + + // CommonJS module is defined + if (hasModule) { + module.exports = moment; + makeGlobal(true); + } else if (typeof define === "function" && define.amd) { + define("moment", function (require, exports, module) { + if (module.config && module.config() && module.config().noGlobal !== true) { + // If user provided noGlobal, he is aware of global + makeGlobal(module.config().noGlobal === undefined); + } + + return moment; + }); + } else { + makeGlobal(); + } +}).call(this); + + +/* +Version 3.0.0 +========================================================= +bootstrap-datetimepicker.js +https://github.com/Eonasdan/bootstrap-datetimepicker +========================================================= +The MIT License (MIT) + +Copyright (c) 2014 Jonathan Peterson + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. +*/ +; (function (factory) { + if (typeof define === 'function' && define.amd) { + // AMD is used - Register as an anonymous module. + define(['jquery', 'moment'], factory); + } else { + // AMD is not used - Attempt to fetch dependencies from scope. + if (!jQuery) { + throw 'bootstrap-datetimepicker requires jQuery to be loaded first'; + } else if (!moment) { + throw 'bootstrap-datetimepicker requires moment.js to be loaded first'; + } else { + factory(jQuery, moment); + } + } +} + +(function ($, moment) { + if (typeof moment === 'undefined') { + alert("momentjs is requried"); + throw new Error('momentjs is required'); + }; + + var dpgId = 0, + + pMoment = moment, + +// ReSharper disable once InconsistentNaming + DateTimePicker = function (element, options) { + var defaults = $.fn.datetimepicker.defaults, + + icons = { + time: 'fa fa-clock-o', + date: 'fa fa-calendar', + up: 'fa fa-chevron-up', + down: 'fa fa-chevron-down' + }, + + picker = this, + + init = function () { + + var icon = false, i, dDate, longDateFormat; + picker.options = $.extend({}, defaults, options); + picker.options.icons = $.extend({}, icons, picker.options.icons); + + picker.element = $(element); + + dataToOptions(); + + if (!(picker.options.pickTime || picker.options.pickDate)) + throw new Error('Must choose at least one picker'); + + picker.id = dpgId++; + pMoment.lang(picker.options.language); + picker.date = pMoment(); + picker.unset = false; + picker.isInput = picker.element.is('input'); + picker.component = false; + + if (picker.element.hasClass('input-group')) { + if (picker.element.find('.datepickerbutton').size() == 0) {//in case there is more then one 'input-group-addon' Issue #48 + picker.component = picker.element.find("[class^='input-group-']"); + } + else { + picker.component = picker.element.find('.datepickerbutton'); + } + } + picker.format = picker.options.format; + + longDateFormat = pMoment()._lang._longDateFormat; + + if (!picker.format) { + picker.format = (picker.options.pickDate ? longDateFormat.L : ''); + if (picker.options.pickDate && picker.options.pickTime) picker.format += ' '; + picker.format += (picker.options.pickTime ? longDateFormat.LT : ''); + if (picker.options.useSeconds) { + if (~longDateFormat.LT.indexOf(' A')) { + picker.format = picker.format.split(" A")[0] + ":ss A"; + } + else { + picker.format += ':ss'; + } + } + } + picker.use24hours = picker.format.toLowerCase().indexOf("a") < 1; + + if (picker.component) icon = picker.component.find('span'); + + if (picker.options.pickTime) { + if (icon) icon.addClass(picker.options.icons.time); + } + if (picker.options.pickDate) { + if (icon) { + icon.removeClass(picker.options.icons.time); + icon.addClass(picker.options.icons.date); + } + } + + picker.widget = $(getTemplate()).appendTo('body'); + + if (picker.options.useSeconds && !picker.use24hours) { + picker.widget.width(300); + } + + picker.minViewMode = picker.options.minViewMode || 0; + if (typeof picker.minViewMode === 'string') { + switch (picker.minViewMode) { + case 'months': + picker.minViewMode = 1; + break; + case 'years': + picker.minViewMode = 2; + break; + default: + picker.minViewMode = 0; + break; + } + } + picker.viewMode = picker.options.viewMode || 0; + if (typeof picker.viewMode === 'string') { + switch (picker.viewMode) { + case 'months': + picker.viewMode = 1; + break; + case 'years': + picker.viewMode = 2; + break; + default: + picker.viewMode = 0; + break; + } + } + + picker.options.disabledDates = indexGivenDates(picker.options.disabledDates); + picker.options.enabledDates = indexGivenDates(picker.options.enabledDates); + + picker.startViewMode = picker.viewMode; + picker.setMinDate(picker.options.minDate); + picker.setMaxDate(picker.options.maxDate); + fillDow(); + fillMonths(); + fillHours(); + fillMinutes(); + fillSeconds(); + update(); + showMode(); + attachDatePickerEvents(); + if (picker.options.defaultDate !== "" && getPickerInput().val() == "") picker.setValue(picker.options.defaultDate); + if (picker.options.minuteStepping !== 1) { + var rInterval = picker.options.minuteStepping; + picker.date.minutes((Math.round(picker.date.minutes() / rInterval) * rInterval) % 60).seconds(0); + } + }, + + getPickerInput = function () { + if (picker.isInput) { + return picker.element; + } else { + return dateStr = picker.element.find('input'); + } + }, + + dataToOptions = function () { + var eData + if (picker.element.is('input')) { + eData = picker.element.data(); + } + else { + eData = picker.element.data(); + } + if (eData.dateFormat !== undefined) picker.options.format = eData.dateFormat; + if (eData.datePickdate !== undefined) picker.options.pickDate = eData.datePickdate; + if (eData.datePicktime !== undefined) picker.options.pickTime = eData.datePicktime; + if (eData.dateUseminutes !== undefined) picker.options.useMinutes = eData.dateUseminutes; + if (eData.dateUseseconds !== undefined) picker.options.useSeconds = eData.dateUseseconds; + if (eData.dateUsecurrent !== undefined) picker.options.useCurrent = eData.dateUsecurrent; + if (eData.dateMinutestepping !== undefined) picker.options.minuteStepping = eData.dateMinutestepping; + if (eData.dateMindate !== undefined) picker.options.minDate = eData.dateMindate; + if (eData.dateMaxdate !== undefined) picker.options.maxDate = eData.dateMaxdate; + if (eData.dateShowtoday !== undefined) picker.options.showToday = eData.dateShowtoday; + if (eData.dateCollapse !== undefined) picker.options.collapse = eData.dateCollapse; + if (eData.dateLanguage !== undefined) picker.options.language = eData.dateLanguage; + if (eData.dateDefaultdate !== undefined) picker.options.defaultDate = eData.dateDefaultdate; + if (eData.dateDisableddates !== undefined) picker.options.disabledDates = eData.dateDisableddates; + if (eData.dateEnableddates !== undefined) picker.options.enabledDates = eData.dateEnableddates; + if (eData.dateIcons !== undefined) picker.options.icons = eData.dateIcons; + if (eData.dateUsestrict !== undefined) picker.options.useStrict = eData.dateUsestrict; + if (eData.dateDirection !== undefined) picker.options.direction = eData.dateDirection; + if (eData.dateSidebyside !== undefined) picker.options.sideBySide = eData.dateSidebyside; + }, + + place = function () { + var position = 'absolute', + offset = picker.component ? picker.component.offset() : picker.element.offset(), $window = $(window); + picker.width = picker.component ? picker.component.outerWidth() : picker.element.outerWidth(); + offset.top = offset.top + picker.element.outerHeight(); + + var placePosition; + if (picker.options.direction === 'up') { + placePosition = 'top' + } else if (picker.options.direction === 'bottom') { + placePosition = 'bottom' + } else if (picker.options.direction === 'auto') { + if (offset.top + picker.widget.height() > $window.height() + $window.scrollTop() && picker.widget.height() + picker.element.outerHeight() < offset.top) { + placePosition = 'top'; + } else { + placePosition = 'bottom'; + } + }; + if (placePosition === 'top') { + offset.top -= picker.widget.height() + picker.element.outerHeight() + 15; + picker.widget.addClass('top').removeClass('bottom'); + } else { + offset.top += 1; + picker.widget.addClass('bottom').removeClass('top'); + } + + if (picker.options.width !== undefined) { + picker.widget.width(picker.options.width); + } + + if (picker.options.orientation === 'left') { + picker.widget.addClass('left-oriented'); + offset.left = offset.left - picker.widget.width() + 20; + } + + if (isInFixed()) { + position = 'fixed'; + offset.top -= $window.scrollTop(); + offset.left -= $window.scrollLeft(); + } + + if ($window.width() < offset.left + picker.widget.outerWidth()) { + offset.right = $window.width() - offset.left - picker.width; + offset.left = 'auto'; + picker.widget.addClass('pull-right'); + } else { + offset.right = 'auto'; + picker.widget.removeClass('pull-right'); + } + + picker.widget.css({ + position: position, + top: offset.top, + left: offset.left, + right: offset.right + }); + }, + + notifyChange = function (oldDate, eventType) { + if (pMoment(picker.date).isSame(pMoment(oldDate))) return; + picker.element.trigger({ + type: 'dp.change', + date: pMoment(picker.date), + oldDate: pMoment(oldDate) + }); + + if (eventType !== 'change') + picker.element.change(); + }, + + notifyError = function (date) { + picker.element.trigger({ + type: 'dp.error', + date: pMoment(date) + }); + }, + + update = function (newDate) { + pMoment.lang(picker.options.language); + var dateStr = newDate; + if (!dateStr) { + dateStr = getPickerInput().val(); + if (dateStr) picker.date = pMoment(dateStr, picker.format, picker.options.useStrict); + if (!picker.date) picker.date = pMoment(); + } + picker.viewDate = pMoment(picker.date).startOf("month"); + fillDate(); + fillTime(); + }, + + fillDow = function () { + pMoment.lang(picker.options.language); + var html = $(''), weekdaysMin = pMoment.weekdaysMin(), i; + if (pMoment()._lang._week.dow == 0) { // starts on Sunday + for (i = 0; i < 7; i++) { + html.append('' + weekdaysMin[i] + ''); + } + } else { + for (i = 1; i < 8; i++) { + if (i == 7) { + html.append('' + weekdaysMin[0] + ''); + } else { + html.append('' + weekdaysMin[i] + ''); + } + } + } + picker.widget.find('.datepicker-days thead').append(html); + }, + + fillMonths = function () { + pMoment.lang(picker.options.language); + var html = '', i = 0, monthsShort = pMoment.monthsShort(); + while (i < 12) { + html += '' + monthsShort[i++] + ''; + } + picker.widget.find('.datepicker-months td').append(html); + }, + + fillDate = function () { + if(!picker.options.pickDate) return; + pMoment.lang(picker.options.language); + var year = picker.viewDate.year(), + month = picker.viewDate.month(), + startYear = picker.options.minDate.year(), + startMonth = picker.options.minDate.month(), + endYear = picker.options.maxDate.year(), + endMonth = picker.options.maxDate.month(), + currentDate, + prevMonth, nextMonth, html = [], row, clsName, i, days, yearCont, currentYear, months = pMoment.months(); + + picker.widget.find('.datepicker-days').find('.disabled').removeClass('disabled'); + picker.widget.find('.datepicker-months').find('.disabled').removeClass('disabled'); + picker.widget.find('.datepicker-years').find('.disabled').removeClass('disabled'); + + picker.widget.find('.datepicker-days th:eq(1)').text( + months[month] + ' ' + year); + + prevMonth = pMoment(picker.viewDate).subtract("months", 1); + days = prevMonth.daysInMonth(); + prevMonth.date(days).startOf('week'); + if ((year == startYear && month <= startMonth) || year < startYear) { + picker.widget.find('.datepicker-days th:eq(0)').addClass('disabled'); + } + if ((year == endYear && month >= endMonth) || year > endYear) { + picker.widget.find('.datepicker-days th:eq(2)').addClass('disabled'); + } + + nextMonth = pMoment(prevMonth).add(42, "d"); + while (prevMonth.isBefore(nextMonth)) { + if (prevMonth.weekday() === pMoment().startOf('week').weekday()) { + row = $(''); + html.push(row); + } + clsName = ''; + if (prevMonth.year() < year || (prevMonth.year() == year && prevMonth.month() < month)) { + clsName += ' old'; + } else if (prevMonth.year() > year || (prevMonth.year() == year && prevMonth.month() > month)) { + clsName += ' new'; + } + if (prevMonth.isSame(pMoment({ y: picker.date.year(), M: picker.date.month(), d: picker.date.date() }))) { + clsName += ' active'; + } + if (isInDisableDates(prevMonth) || !isInEnableDates(prevMonth)) { + clsName += ' disabled'; + } + if (picker.options.showToday === true) { + if (prevMonth.isSame(pMoment(), 'day')) { + clsName += ' today'; + } + } + if (picker.options.daysOfWeekDisabled) { + for (i in picker.options.daysOfWeekDisabled) { + if (prevMonth.day() == picker.options.daysOfWeekDisabled[i]) { + clsName += ' disabled'; + break; + } + } + } + row.append('' + prevMonth.date() + ''); + + currentDate = prevMonth.date(); + prevMonth.add(1, "d"); + + if (currentDate == prevMonth.date()) { + prevMonth.add(1, "d"); + } + } + picker.widget.find('.datepicker-days tbody').empty().append(html); + currentYear = picker.date.year(), months = picker.widget.find('.datepicker-months') + .find('th:eq(1)').text(year).end().find('span').removeClass('active'); + if (currentYear === year) { + months.eq(picker.date.month()).addClass('active'); + } + if (currentYear - 1 < startYear) { + picker.widget.find('.datepicker-months th:eq(0)').addClass('disabled'); + } + if (currentYear + 1 > endYear) { + picker.widget.find('.datepicker-months th:eq(2)').addClass('disabled'); + } + for (i = 0; i < 12; i++) { + if ((year == startYear && startMonth > i) || (year < startYear)) { + $(months[i]).addClass('disabled'); + } else if ((year == endYear && endMonth < i) || (year > endYear)) { + $(months[i]).addClass('disabled'); + } + } + + html = ''; + year = parseInt(year / 10, 10) * 10; + yearCont = picker.widget.find('.datepicker-years').find( + 'th:eq(1)').text(year + '-' + (year + 9)).end().find('td'); + picker.widget.find('.datepicker-years').find('th').removeClass('disabled'); + if (startYear > year) { + picker.widget.find('.datepicker-years').find('th:eq(0)').addClass('disabled'); + } + if (endYear < year + 9) { + picker.widget.find('.datepicker-years').find('th:eq(2)').addClass('disabled'); + } + year -= 1; + for (i = -1; i < 11; i++) { + html += '' + year + ''; + year += 1; + } + yearCont.html(html); + }, + + fillHours = function () { + pMoment.lang(picker.options.language); + var table = picker.widget.find('.timepicker .timepicker-hours table'), html = '', current, i, j; + table.parent().hide(); + if (picker.use24hours) { + current = 0; + for (i = 0; i < 6; i += 1) { + html += ''; + for (j = 0; j < 4; j += 1) { + html += '' + padLeft(current.toString()) + ''; + current++; + } + html += ''; + } + } + else { + current = 1; + for (i = 0; i < 3; i += 1) { + html += ''; + for (j = 0; j < 4; j += 1) { + html += '' + padLeft(current.toString()) + ''; + current++; + } + html += ''; + } + } + table.html(html); + }, + + fillMinutes = function () { + var table = picker.widget.find('.timepicker .timepicker-minutes table'), html = '', current = 0, i, j, step = picker.options.minuteStepping; + table.parent().hide(); + if (step == 1) step = 5; + for (i = 0; i < Math.ceil(60 / step / 4) ; i++) { + html += ''; + for (j = 0; j < 4; j += 1) { + if (current < 60) { + html += '' + padLeft(current.toString()) + ''; + current += step; + } else { + html += ''; + } + } + html += ''; + } + table.html(html); + }, + + fillSeconds = function () { + var table = picker.widget.find('.timepicker .timepicker-seconds table'), html = '', current = 0, i, j; + table.parent().hide(); + for (i = 0; i < 3; i++) { + html += ''; + for (j = 0; j < 4; j += 1) { + html += '' + padLeft(current.toString()) + ''; + current += 5; + } + html += ''; + } + table.html(html); + }, + + fillTime = function () { + if (!picker.date) return; + var timeComponents = picker.widget.find('.timepicker span[data-time-component]'), + hour = picker.date.hours(), + period = 'AM'; + if (!picker.use24hours) { + if (hour >= 12) period = 'PM'; + if (hour === 0) hour = 12; + else if (hour != 12) hour = hour % 12; + picker.widget.find('.timepicker [data-action=togglePeriod]').text(period); + } + timeComponents.filter('[data-time-component=hours]').text(padLeft(hour)); + timeComponents.filter('[data-time-component=minutes]').text(padLeft(picker.date.minutes())); + timeComponents.filter('[data-time-component=seconds]').text(padLeft(picker.date.second())); + }, + + click = function (e) { + e.stopPropagation(); + e.preventDefault(); + picker.unset = false; + var target = $(e.target).closest('span, td, th'), month, year, step, day, oldDate = pMoment(picker.date); + if (target.length === 1) { + if (!target.is('.disabled')) { + switch (target[0].nodeName.toLowerCase()) { + case 'th': + switch (target[0].className) { + case 'switch': + showMode(1); + break; + case 'prev': + case 'next': + step = dpGlobal.modes[picker.viewMode].navStep; + if (target[0].className === 'prev') step = step * -1; + picker.viewDate.add(step, dpGlobal.modes[picker.viewMode].navFnc); + fillDate(); + break; + } + break; + case 'span': + if (target.is('.month')) { + month = target.parent().find('span').index(target); + picker.viewDate.month(month); + } else { + year = parseInt(target.text(), 10) || 0; + picker.viewDate.year(year); + } + if (picker.viewMode === picker.minViewMode) { + picker.date = pMoment({ + y: picker.viewDate.year(), + M: picker.viewDate.month(), + d: picker.viewDate.date(), + h: picker.date.hours(), + m: picker.date.minutes(), + s: picker.date.seconds() + }); + notifyChange(oldDate, e.type); + set(); + } + showMode(-1); + fillDate(); + break; + case 'td': + if (target.is('.day')) { + day = parseInt(target.text(), 10) || 1; + month = picker.viewDate.month(); + year = picker.viewDate.year(); + if (target.is('.old')) { + if (month === 0) { + month = 11; + year -= 1; + } else { + month -= 1; + } + } else if (target.is('.new')) { + if (month == 11) { + month = 0; + year += 1; + } else { + month += 1; + } + } + picker.date = pMoment({ + y: year, + M: month, + d: day, + h: picker.date.hours(), + m: picker.date.minutes(), + s: picker.date.seconds() + } + ); + picker.viewDate = pMoment({ + y: year, M: month, d: Math.min(28, day) + }); + fillDate(); + set(); + notifyChange(oldDate, e.type); + } + break; + } + } + } + }, + + actions = { + incrementHours: function () { + checkDate("add", "hours", 1); + }, + + incrementMinutes: function () { + checkDate("add", "minutes", picker.options.minuteStepping); + }, + + incrementSeconds: function () { + checkDate("add", "seconds", 1); + }, + + decrementHours: function () { + checkDate("subtract", "hours", 1); + }, + + decrementMinutes: function () { + checkDate("subtract", "minutes", picker.options.minuteStepping); + }, + + decrementSeconds: function () { + checkDate("subtract", "seconds", 1); + }, + + togglePeriod: function () { + var hour = picker.date.hours(); + if (hour >= 12) hour -= 12; + else hour += 12; + picker.date.hours(hour); + }, + + showPicker: function () { + picker.widget.find('.timepicker > div:not(.timepicker-picker)').hide(); + picker.widget.find('.timepicker .timepicker-picker').show(); + }, + + showHours: function () { + picker.widget.find('.timepicker .timepicker-picker').hide(); + picker.widget.find('.timepicker .timepicker-hours').show(); + }, + + showMinutes: function () { + picker.widget.find('.timepicker .timepicker-picker').hide(); + picker.widget.find('.timepicker .timepicker-minutes').show(); + }, + + showSeconds: function () { + picker.widget.find('.timepicker .timepicker-picker').hide(); + picker.widget.find('.timepicker .timepicker-seconds').show(); + }, + + selectHour: function (e) { + var period = picker.widget.find('.timepicker [data-action=togglePeriod]').text(), hour = parseInt($(e.target).text(), 10); + if (period == "PM") hour += 12 + picker.date.hours(hour); + actions.showPicker.call(picker); + }, + + selectMinute: function (e) { + picker.date.minutes(parseInt($(e.target).text(), 10)); + actions.showPicker.call(picker); + }, + + selectSecond: function (e) { + picker.date.seconds(parseInt($(e.target).text(), 10)); + actions.showPicker.call(picker); + } + }, + + doAction = function (e) { + var oldDate = pMoment(picker.date), action = $(e.currentTarget).data('action'), rv = actions[action].apply(picker, arguments); + stopEvent(e); + if (!picker.date) picker.date = pMoment({ y: 1970 }); + set(); + fillTime(); + notifyChange(oldDate, e.type); + return rv; + }, + + stopEvent = function (e) { + e.stopPropagation(); + e.preventDefault(); + }, + + change = function (e) { + pMoment.lang(picker.options.language); + var input = $(e.target), oldDate = pMoment(picker.date), newDate = pMoment(input.val(), picker.format, picker.options.useStrict); + if (newDate.isValid() && !isInDisableDates(newDate) && isInEnableDates(newDate)) { + update(); + picker.setValue(newDate); + notifyChange(oldDate, e.type); + set(); + } + else { + picker.viewDate = oldDate; + notifyChange(oldDate, e.type); + notifyError(newDate); + picker.unset = true; + } + }, + + showMode = function (dir) { + if (dir) { + picker.viewMode = Math.max(picker.minViewMode, Math.min(2, picker.viewMode + dir)); + } + var f = dpGlobal.modes[picker.viewMode].clsName; + picker.widget.find('.datepicker > div').hide().filter('.datepicker-' + dpGlobal.modes[picker.viewMode].clsName).show(); + }, + + attachDatePickerEvents = function () { + var $this, $parent, expanded, closed, collapseData; + picker.widget.on('click', '.datepicker *', $.proxy(click, this)); // this handles date picker clicks + picker.widget.on('click', '[data-action]', $.proxy(doAction, this)); // this handles time picker clicks + picker.widget.on('mousedown', $.proxy(stopEvent, this)); + if (picker.options.pickDate && picker.options.pickTime) { + picker.widget.on('click.togglePicker', '.accordion-toggle', function (e) { + e.stopPropagation(); + $this = $(this); + $parent = $this.closest('ul'); + expanded = $parent.find('.in'); + closed = $parent.find('.collapse:not(.in)'); + + if (expanded && expanded.length) { + collapseData = expanded.data('collapse'); + if (collapseData && collapseData.date - transitioning) return; + expanded.collapse('hide'); + closed.collapse('show'); + $this.find('span').toggleClass(picker.options.icons.time + ' ' + picker.options.icons.date); + picker.element.find('.input-group-addon span').toggleClass(picker.options.icons.time + ' ' + picker.options.icons.date); + } + }); + } + if (picker.isInput) { + picker.element.on({ + 'focus': $.proxy(picker.show, this), + 'change': $.proxy(change, this), + 'blur': $.proxy(picker.hide, this) + }); + } else { + picker.element.on({ + 'change': $.proxy(change, this) + }, 'input'); + if (picker.component) { + picker.component.on('click', $.proxy(picker.show, this)); + } else { + picker.element.on('click', $.proxy(picker.show, this)); + } + } + }, + + attachDatePickerGlobalEvents = function () { + $(window).on( + 'resize.datetimepicker' + picker.id, $.proxy(place, this)); + if (!picker.isInput) { + $(document).on( + 'mousedown.datetimepicker' + picker.id, $.proxy(picker.hide, this)); + } + }, + + detachDatePickerEvents = function () { + picker.widget.off('click', '.datepicker *', picker.click); + picker.widget.off('click', '[data-action]'); + picker.widget.off('mousedown', picker.stopEvent); + if (picker.options.pickDate && picker.options.pickTime) { + picker.widget.off('click.togglePicker'); + } + if (picker.isInput) { + picker.element.off({ + 'focus': picker.show, + 'change': picker.change + }); + } else { + picker.element.off({ + 'change': picker.change + }, 'input'); + if (picker.component) { + picker.component.off('click', picker.show); + } else { + picker.element.off('click', picker.show); + } + } + }, + + detachDatePickerGlobalEvents = function () { + $(window).off('resize.datetimepicker' + picker.id); + if (!picker.isInput) { + $(document).off('mousedown.datetimepicker' + picker.id); + } + }, + + isInFixed = function () { + if (picker.element) { + var parents = picker.element.parents(), inFixed = false, i; + for (i = 0; i < parents.length; i++) { + if ($(parents[i]).css('position') == 'fixed') { + inFixed = true; + break; + } + } + ; + return inFixed; + } else { + return false; + } + }, + + set = function () { + pMoment.lang(picker.options.language); + var formatted = '', input; + if (!picker.unset) formatted = pMoment(picker.date).format(picker.format); + getPickerInput().val(formatted); + picker.element.data('date', formatted); + if (!picker.options.pickTime) picker.hide(); + }, + + checkDate = function (direction, unit, amount) { + pMoment.lang(picker.options.language); + var newDate; + if (direction == "add") { + newDate = pMoment(picker.date); + if (newDate.hours() == 23) newDate.add(amount, unit); + newDate.add(amount, unit); + } + else { + newDate = pMoment(picker.date).subtract(amount, unit); + } + if (isInDisableDates(pMoment(newDate.subtract(amount, unit))) || isInDisableDates(newDate)) { + notifyError(newDate.format(picker.format)); + return; + } + + if (direction == "add") { + picker.date.add(amount, unit); + } + else { + picker.date.subtract(amount, unit); + } + picker.unset = false; + }, + + isInDisableDates = function (date) { + pMoment.lang(picker.options.language); + if (date.isAfter(picker.options.maxDate) || date.isBefore(picker.options.minDate)) return true; + if (picker.options.disabledDates === false) { + return false; + } + return picker.options.disabledDates[pMoment(date).format("YYYY-MM-DD")] === true; + }, + isInEnableDates = function (date) { + pMoment.lang(picker.options.language); + if (picker.options.enabledDates === false) { + return true; + } + return picker.options.enabledDates[pMoment(date).format("YYYY-MM-DD")] === true; + }, + + indexGivenDates = function (givenDatesArray) { + // Store given enabledDates and disabledDates as keys. + // This way we can check their existence in O(1) time instead of looping through whole array. + // (for example: picker.options.enabledDates['2014-02-27'] === true) + var givenDatesIndexed = {}; + var givenDatesCount = 0; + for (i = 0; i < givenDatesArray.length; i++) { + dDate = pMoment(givenDatesArray[i]); + if (dDate.isValid()) { + givenDatesIndexed[dDate.format("YYYY-MM-DD")] = true; + givenDatesCount++; + } + } + if (givenDatesCount > 0) { + return givenDatesIndexed; + } + return false; + }, + + padLeft = function (string) { + string = string.toString(); + if (string.length >= 2) return string; + else return '0' + string; + }, + + getTemplate = function () { + if (picker.options.pickDate && picker.options.pickTime) { + var ret = ''; + ret = ''; + return ret; + } else if (picker.options.pickTime) { + return ( + '' + ); + } else { + return ( + '' + ); + } + }, + + dpGlobal = { + modes: [ + { + clsName: 'days', + navFnc: 'month', + navStep: 1 + }, + { + clsName: 'months', + navFnc: 'year', + navStep: 1 + }, + { + clsName: 'years', + navFnc: 'year', + navStep: 10 + }], + headTemplate: + '' + + '' + + '‹›' + + '' + + '', + contTemplate: + '' + }, + + tpGlobal = { + hourTemplate: '', + minuteTemplate: '', + secondTemplate: '' + }; + + dpGlobal.template = + '
' + + '' + dpGlobal.headTemplate + '
' + + '
' + + '
' + + '' + dpGlobal.headTemplate + dpGlobal.contTemplate + '
' + + '
' + + '
' + + '' + dpGlobal.headTemplate + dpGlobal.contTemplate + '
' + + '
'; + + tpGlobal.getTemplate = function () { + return ( + '
' + + '' + + '' + + '' + + '' + + '' + + (picker.options.useSeconds ? + '' : '') + + (picker.use24hours ? '' : '') + + '' + + '' + + ' ' + + '' + + ' ' + + (picker.options.useSeconds ? + '' : '') + + (picker.use24hours ? '' : '' + + '') + + '' + + '' + + '' + + '' + + '' + + (picker.options.useSeconds ? + '' : '') + + (picker.use24hours ? '' : '') + + '' + + '
' + (picker.options.useMinutes ? '' : '') + '
' + tpGlobal.hourTemplate + ':' + (picker.options.useMinutes ? tpGlobal.minuteTemplate : '00') + ':' + tpGlobal.secondTemplate + '
' + (picker.options.useMinutes ? '' : '') + '
' + + '
' + + '
' + + '
' + + '
' + + '
' + + '
' + + '
' + + (picker.options.useSeconds ? + '
' : '') + ); + }; + + picker.destroy = function () { + detachDatePickerEvents(); + detachDatePickerGlobalEvents(); + picker.widget.remove(); + picker.element.removeData('DateTimePicker'); + if (picker.component) + picker.component.removeData('DateTimePicker'); + }; + + picker.show = function (e) { + if (picker.options.useCurrent) { + if (getPickerInput().val() == '') { + if (picker.options.minuteStepping !== 1) { + var mDate = pMoment(), + rInterval = picker.options.minuteStepping; + mDate.minutes((Math.round(mDate.minutes() / rInterval) * rInterval) % 60) + .seconds(0); + picker.setValue(mDate.format(picker.format)) + } else { + picker.setValue(pMoment().format(picker.format)) + } + }; + } + if (picker.widget.hasClass("picker-open")) { + picker.widget.hide(); + picker.widget.removeClass("picker-open"); + } + else { + picker.widget.show(); + picker.widget.addClass("picker-open"); + } + picker.height = picker.component ? picker.component.outerHeight() : picker.element.outerHeight(); + place(); + picker.element.trigger({ + type: 'dp.show', + date: pMoment(picker.date) + }); + attachDatePickerGlobalEvents(); + if (e) { + stopEvent(e); + } + }, + + picker.disable = function () { + var input = picker.element.find('input'); + if (input.prop('disabled')) return; + + input.prop('disabled', true); + detachDatePickerEvents(); + }, + + picker.enable = function () { + var input = picker.element.find('input'); + if (!input.prop('disabled')) return; + + input.prop('disabled', false); + attachDatePickerEvents(); + }, + + picker.hide = function (event) { + if (event && $(event.target).is(picker.element.attr("id"))) + return; + // Ignore event if in the middle of a picker transition + var collapse = picker.widget.find('.collapse'), i, collapseData; + for (i = 0; i < collapse.length; i++) { + collapseData = collapse.eq(i).data('collapse'); + if (collapseData && collapseData.date - transitioning) + return; + } + picker.widget.hide(); + picker.widget.removeClass("picker-open"); + picker.viewMode = picker.startViewMode; + showMode(); + picker.element.trigger({ + type: 'dp.hide', + date: pMoment(picker.date) + }); + detachDatePickerGlobalEvents(); + }, + + picker.setValue = function (newDate) { + pMoment.lang(picker.options.language); + if (!newDate) { + picker.unset = true; + set(); + } else { + picker.unset = false; + } + if (!pMoment.isMoment(newDate)) newDate = pMoment(newDate, picker.format); + if (newDate.isValid()) { + picker.date = newDate; + set(); + picker.viewDate = pMoment({ y: picker.date.year(), M: picker.date.month() }); + fillDate(); + fillTime(); + } + else { + notifyError(newDate); + } + }, + + picker.getDate = function () { + if (picker.unset) return null; + return picker.date; + }, + + picker.setDate = function (date) { + var oldDate = pMoment(picker.date); + if (!date) { + picker.setValue(null); + } else { + picker.setValue(date); + } + notifyChange(oldDate, "function"); + }, + + picker.setDisabledDates = function (dates) { + picker.options.disabledDates = indexGivenDates(dates); + if (picker.viewDate) update(); + }, + picker.setEnabledDates = function (dates) { + picker.options.enabledDates = indexGivenDates(dates); + if (picker.viewDate) update(); + }, + + picker.setMaxDate = function (date) { + if (date == undefined) return; + picker.options.maxDate = pMoment(date); + if (picker.viewDate) update(); + }, + + picker.setMinDate = function (date) { + if (date == undefined) return; + picker.options.minDate = pMoment(date); + if (picker.viewDate) update(); + }; + + init(); + }; + + $.fn.datetimepicker = function (options) { + return this.each(function () { + var $this = $(this), data = $this.data('DateTimePicker'); + if (!data) $this.data('DateTimePicker', new DateTimePicker(this, options)); + }); + }; + + $.fn.datetimepicker.defaults = { + pickDate: true, + pickTime: true, + useMinutes: true, + useSeconds: false, + useCurrent: true, + minuteStepping: 1, + minDate: new pMoment({ y: 1900 }), + maxDate: new pMoment().add(100, "y"), + showToday: true, + collapse: true, + language: "en", + defaultDate: "", + disabledDates: false, + enabledDates: false, + icons: {}, + useStrict: false, + direction: "auto", + sideBySide: false, + daysOfWeekDisabled: false + }; + +})); + + + + + +// moment.js language configuration +// language : french (fr) +// author : John Fischer : https://github.com/jfroffice + +(function (factory) { + if (typeof define === 'function' && define.amd) { + define(['moment'], factory); // AMD + } else if (typeof exports === 'object') { + module.exports = factory(require('../moment')); // Node + } else { + factory(window.moment); // Browser global + } +}(function (moment) { + return moment.lang('fr', { + months : "janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre".split("_"), + monthsShort : "janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.".split("_"), + weekdays : "dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi".split("_"), + weekdaysShort : "dim._lun._mar._mer._jeu._ven._sam.".split("_"), + weekdaysMin : "Di_Lu_Ma_Me_Je_Ve_Sa".split("_"), + longDateFormat : { + LT : "HH:mm", + L : "DD/MM/YYYY", + LL : "D MMMM YYYY", + LLL : "D MMMM YYYY LT", + LLLL : "dddd D MMMM YYYY LT" + }, + calendar : { + sameDay: "[Aujourd'hui à] LT", + nextDay: '[Demain à] LT', + nextWeek: 'dddd [à] LT', + lastDay: '[Hier à] LT', + lastWeek: 'dddd [dernier à] LT', + sameElse: 'L' + }, + relativeTime : { + future : "dans %s", + past : "il y a %s", + s : "quelques secondes", + m : "une minute", + mm : "%d minutes", + h : "une heure", + hh : "%d heures", + d : "un jour", + dd : "%d jours", + M : "un mois", + MM : "%d mois", + y : "un an", + yy : "%d ans" + }, + ordinal : function (number) { + return number + (number === 1 ? 'er' : ''); + }, + week : { + dow : 1, // Monday is the first day of the week. + doy : 4 // The week that contains Jan 4th is the first week of the year. + } + }); +})); + + diff --git a/app/assets/javascripts/bootstrap/dropdown.js b/app/assets/javascripts/bootstrap/dropdown.js new file mode 100644 index 0000000..43d7ae3 --- /dev/null +++ b/app/assets/javascripts/bootstrap/dropdown.js @@ -0,0 +1,147 @@ +/* ======================================================================== + * Bootstrap: dropdown.js v3.1.1 + * http://getbootstrap.com/javascript/#dropdowns + * ======================================================================== + * Copyright 2011-2014 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * ======================================================================== */ + + ++function ($) { + 'use strict'; + + // DROPDOWN CLASS DEFINITION + // ========================= + + var backdrop = '.dropdown-backdrop' + var toggle = '[data-toggle=dropdown]' + var Dropdown = function (element) { + $(element).on('click.bs.dropdown', this.toggle) + } + + Dropdown.prototype.toggle = function (e) { + var $this = $(this) + + if ($this.is('.disabled, :disabled')) return + + var $parent = getParent($this) + var isActive = $parent.hasClass('open') + + clearMenus() + + if (!isActive) { + if ('ontouchstart' in document.documentElement && !$parent.closest('.navbar-nav').length) { + // if mobile we use a backdrop because click events don't delegate + $(' - -     \ No newline at end of file diff --git a/pages/archives/eft-news-dec-2007.php b/pages/archives/eft-news-dec-2007.php deleted file mode 100644 index 3aaffae..0000000 --- a/pages/archives/eft-news-dec-2007.php +++ /dev/null @@ -1,99 +0,0 @@ - - -

Courrier du mois de Décembre 2007

- - -

- -Bonjour à tous, - -

-Voici une année qui s'achève. Les illuminations vont se mettre en place, les décorations vont entrer dans nos habitations vous allez être bien occupés aux dernières emplettes pour faire plaisir autour de vous.
-Peut-être commencerez-vous à réfléchir aux bonnes résolutions de l'année nouvelle qui s'annonce. -

-Mais je vous propose aujourd'hui de bien terminer l'année, avec une grande nouvelle : -

-Les premières traductions des videos de Gary Craig sont maintenant disponibles. Comme vous l'imaginez certainement il s'agit là d'un travail de titan qui demande énormément de temps et d'argent afin de mener à bien ce projet dans les meilleures conditions. -
C'est également un grand espoir pour tous les utilisateurs de la Technique EFT. Vous pourrez vous aussi bénéficier de la meilleure formation EFT qui existe en visionnant et en comprenant cette fois les heures d'enregistrement sur DVD que Gary Craig a amassées durant toutes ces années. Pour vous procurez ces DVD cliquez ici :

-

Videos de Gary Craig

- -

Je suis très heureuse de relayer cette information et je ne manquerai pas de vous informer régulièrement de l'avancement de cette gigantesque entreprise.
-Pour en savoir plus et acquérir les premières traductions des videos de Gary Craig, suivez ce lien : -

-Traductions des vidéos du cours EFT de Gary Craig -

-

-C'est bientôt Noël, et qui dit Noël dit cadeau. Que diriez-vous d'une réduction de 20% sur les ebooks disponibles sur le site de la Technique-EFT.com ? -Voici le lien pour accéder au prix spécial Noël

-

Tarif Spécial Noël

-

Et toujours la video en français de Louise Gervais à offrir ou à s'offrir. -

- -De nouvelles dates de formation EFT ont été ajoutées sur le site. Pensez à vous inscrire dès que possible afin de vous assurer de pouvoir participer à l'atelier répondant le mieux à vos disponibilités.

-Pour en savoir plus et acquérir les premières traductions des videos de Gary Craig, suivez ce lien :

-

Stages de formation EFT

-Je vous souhaite d'excellentes fêtes de fin d'année.
-
-Bien amicalement

- -Geneviève

-

**************************

-

-Bonjour à tous, -

-J’ai choisi pour vous ce mois-ci des histoires d’E.F.T. très diverses, emblématiques de la variété des applications de cette toujours étonnante technique. Dans plusieurs histoires c’est l’auteur qui a l’a utilisée avec succès pour lui-même, vous verrez aussi un très sérieux avocat new-yorkais « traiter » un client venu le consulter pour un problème juridique ! -

-Commençons par une affection physique récidivante extrêmement pénible, et vérifiez à nouveau combien nos émotions, dont la culpabilité, nous coûtent cher, si on ne les élimine pas. Par contre en « tapotant » tout simplement sur les symptômes physiques, il se produit des prises de conscience grâce à l’E.F.T. : elles font souvent découvrir la cause émotionnelle, que l’on peut ensuite traiter par les tapotements : -

-Une crise de cystite se révèle être une crise de culpabilité -

-La courte histoire suivante parle d’un cas de schizophrénie : il s’agit là de maladies à réserver aux spécialistes, bien sûr, mais il y a beaucoup de leçons à en tirer. Je connais des personnes qui ont pu apaiser des enfants hors d’eux ou des adultes agités, de façon indirecte, comme l’a fait Lorraine Blum. C’est à tester (prudemment !) lorsqu’on se trouve confronté à l’agressivité, et après avoir assuré sa sécurité : -

-Lorraine tapote avec succès pour son fils schizophrène -

-Si vous ne pouvez vous empêchez d’apporter l’aide de l’E.F.T. à votre entourage, et que vous êtes parfois tentés de l’introduire dans votre cadre professionnel, voyez comme cet avocat s’y prend : il est même organisé pour le faire couramment ! -

-Un avocat libère son client d’une peine ancienne avec l’E.F.T. -

-Etonnante, la phobie racontée ci-dessous ! Il est vrai qu’il y a une liste interminable de sortes de phobies. Dans son livre « Cinq minutes pour traiter vos phobies », Editions du Souffle d’Or, Roger Callahan, le grand-père de l’E.F.T., en répertorie quelques 200 ! Depuis la sidérophobie (peur des étoiles) jusqu’à la gallophobie (peur des Français !) en passant par la peur de la symétrie (symétrophobie) ! Mais je parie que vous ne devinerez pas ce que redoute la cliente de Jim Burdick : -

-Phobie très intense guérie après la découverte du problème de fond -

-Les violences familiales, et conjugales en particulier : on commence seulement à découvrir le nombre de leurs victimes et les médias en parlent en ce moment. Je vous laisse découvrir ce récit : -

-E.F.T. et conséquences de violences conjugales -

-Ann Peck avait déjà l’habitude d’avoir recours à l’E.F.T., c’est pourquoi elle a eu le réflexe de tapoter, dans une situation grave. J’ai déjà insisté là-dessus, mais je le rappelle : plus vous prendrez l’habitude de traiter par l’E.F.T. vos maux émotionnels ou physiques, plus vous aurez le réflexe de vous en servir en cas d’urgence, pour vous ou votre entourage. Comme beaucoup, j’ai mis du temps à acquérir ce réflexe, mais ensuite, quelle économie de stress, et de douleurs de toutes sortes ! -

-Un conseil supplémentaire : si vous voulez améliorer votre pratique de l’E.F.T., après une première lecture de ces différents récits, relisez-les attentivement, et vous mémoriserez les savoir-faire de leurs auteurs. Vous vous surprendrez à les intégrer et à les utiliser vous-mêmes. -

-Bien amicalement, -

-Martine Mauvais - -

- - - - - - -
- -

-

- - - - - - - - - - - - - - -

\ No newline at end of file diff --git a/pages/archives/eft-news-dec-2008.php b/pages/archives/eft-news-dec-2008.php deleted file mode 100644 index 357a6e7..0000000 --- a/pages/archives/eft-news-dec-2008.php +++ /dev/null @@ -1,327 +0,0 @@ - -

Technique-EFT.comCourrier -de la Technique-EFT.com. Edition de Décembre 2008.

-
    -
  1. Message de -Geneviève -BALLY
  2. -
  3. Le courrier de Martine -MAUVAIS
  4. -
  5. Calendrier des formations -EFT
  6. -
  7. Divers
  8. -
-
-

1-Message -de Geneviève BALLY

-

-Bonjour à tous !

-
Tout d'abord je voudrais -vous remercier pour cet élan de -générosité qui s'est mis en place pour -soutenir
-
-
Louise et Dave dans -leurs soucis rencontrés sur le sol français. Je -suis très touchée que vous ayez -répondu si nombreux et si rapidement.
-Sachez que toutes les démarches qui pouvaient être -faites, l'ont été, -avant de lancer cet appel à tous. Elles continuent encore -aujourd'hui, afin d'obtenir ce qui est possible dans pareille situation.
-Bien sûr, j'ai hésité avant d'envoyer -cette édition spéciale concernant Louise Gervais, -puis j'ai pensé que -c'était important que vous puissiez être -informés, et que c'était à chacun de -vous de -choisir ce que vous ferez de ce message.
-Louise et Dave rentreront très bientôt en -Nouvelle-Ecosse, pour la suite de ses examens et très -certainement subir une intervention chirurgicale.
-
-A ma connaissance, deux personnes se sont chargées de -récolter les fonds : Manou et Hervé GEORGES (mais -eux ne font qu'un) sur Grenoble, puis Chantal Haussaire-Niquet dans les -Yvelines.
-La somme récoltée à ce jour, -s'élève à :
-
-
-Je suis ravie de vous présenter des textes de -Véronique WAUMANS, Praticienne EFT  Niveau 3 et -réflexologue sur Grenoble.
-Véronique intervient dans le cadre d'une association, AGARO, -auprès de personnes ateintes de cancer.
-Pour plus de renseignements sur ses activités vous pouvez -visiter sa page personnelle sur le site Technique-EFT.com à -cette adresse : http://veronique-waumans.technique-eft.com/   - et suivre également le lien menant à -son site.
-
-Avec ce premier article vous comprendrez qu'au-delà du mot -"cancer" d'autres aspects sont à prendre en -considération également. C'est à mon -avis, ce qui pourra faire la différence entre un traitement -vécu avec le moins de souffrances possibles, et un autre. Je -suis sûre que de cette façon une personne -acceptant mieux son traitement, ressentira moins d'effets secondaires, -et augmentera considérablement ses chances de -guérison totale.
- -Véronique nous décrit ici le cas d'un jeune homme -en "bad trip" depuis sa dernière consommation  de -canabis en 2001. Voyez elle met comme l'accent sur les ressentis -physiques vient pour traiter le mal-être de ce jeune homme.
- -
-
-Je vous souhaite à toutes et à tous de belles -fêtes de fin d 'année et je vous -retrouve...l'année prochaine 
-
-Bien -amicalement
-
-Geneviève -

2-Le -courrier de Martine Mauvais

-Bonjour à toutes et à tous,
-
-
Les problèmes -d’argent intéressent presque tout le monde. Des -praticiens en EFT très réputés se -spécialisent dans le domaine de l’Abondance en -général, telle Carol Look qui publie -régulièrement une lettre qui lui est -consacrée,
-
-
-
Quel rapport y a-t-il entre -l’EFT et l’Abondance ?
-
-

-Dans le PALAIS DES POSSIBLES, auquel Gary Craig a consacré -130 pages, c’est dire s’il lui tient à -cœur, il nous montre comment nous créons notre -réalité à partir des -« mots qui sont écrits sur nos -murs », métaphore pour -« notre discours -intérieur », exemples : -« Je suis nul », -« Je ne mérite pas de -réussir », « Dans ma -famille on est tous fauchés ». Les mots -qui sont écrits sur nos murs proviennent de bien des -sources, entre autre de notre culture familiale, et  -l’EFT est précieuse pour éradiquer nos -croyances limitantes.
-
-En voici un bel exemple, avec cet article que Céline Bouillaguet -a traduit pour vous :
-
-
- -

-Une séance d’EFT peut nécessiter de -l’intuition et un travail de détective. La -récompense en est la découverte de la cause -profonde d’un problème, et elle peut -être très surprenante ! C’est
- Jasmine Mir qui nous a traduit cette histoire peu -banale :
-
- -
-Voici deux articles sur l’autisme, un problème -très lourd pour les familles comme pour la personne -touchée. Il semblerait que les cas -d’autisme soient loin de régresser et les causes -en sont mal connues. C’est encore Jasmine qui a traduit le -bel article suivant, sur le cas d’une adolescente autiste. -L’EFT lui permet de faire de magnifiques progrès, -notamment de moins souffrir de son handicap, et de pouvoir mieux -communiquer :
-
-
- -

-Le second article sur cette question concerne un petit enfant de 2 ans, -j’ai été -émerveillée par les progrès -qu’il a fait dès la première -séance, il faut dire que le praticien fait un travail -remarquable et qu’il est très -persévérant. C’est une belle -leçon, il y a beaucoup à en apprendre de. Cela -ouvre des perspectives nouvelles pour ces enfants et leurs -familles ! Et quel encouragement à les traiter -aussi jeunes que possible :
-
-
- -

-Bonne lecture, et très bonnes Fêtes de -Noël !
-
-Bien amicalement,
-
-Martine Mauvais
-
-
-
-

3-Calendrier -des formations EFT

-

Toutes -les  formations -EFT que Martine et moi vous -proposons d'ici la fin de cette année sont -complètes.
-Le calendrier des -formations des différents niveaux que nous animerons -au  premier semestre 2009 est en -ligne. Si vous êtes intéressé pour -suivre une -formation ne vous fiez pas à la date -éloignée des -stages proposés et retenez dès à -présent -votre place car il nous sera difficile de rajouter des stages -à -ceux prévus.

-

-Pour vous inscrire aux stages de Geneviève, aller -à
-http://www.technique-eft.com/formations-eft-EFTbyWorkshop-France.php -et cliquez sur le lien dans la colonne de gauche afin d'en -découvrir les prix et -modalités d'inscription.
-
-Pour avoir les dépliants et tarifs des stages de Martine -MAUVAIS, -contactez-la directement à cette adresse : MMauv@aol.com
-
-Même si c'est le retour de votre contrat de formation -complété et signé -accompagné du versement -de votre acompte qui -officialise votre réservation, sachez que cet acompte ne -sera encaissé que 3 à 4 semaines avant la date du -stage. Si votre formation doit être prise en charge par votre -employeur pensez à nous demander une convention de formation -dans les meilleurs délais. Ce type de démarche -est -toujours plus longue que celle d'un contrat de formation individuel.
-
-

-
-

3-Divers -EFT

-
    -
  •  Vous avez rejoint  le site -récemment
  • -
-        -    Vous pouvez -retrouvez les précédentes newsletters du site -à -cette adresse :
-       -      http://www.technique-eft.com/archives/index.php    -
-
    -
  • Les vidéos
  • -

    La première -vidéo EFT en français est toujours disponible sur -le site de la Technique-EFT à l'adresse suivante : Vidéo -en français EFT
    -

    -
-
    -


    -Vous pourrez également commander les vidéos en -anglais de Gary Craig en cliquant ci-après. Un tarif -dégressif vous est réservé selon le -nombre de DVD commandé.Vidéos -en anglais de Gary Craig
    -
    -Ces vidéos représentent des heures de tournage -sur de nombreux sujets traités lors des -séminaires qu'organise Gary Craig.
    -
    -Ces vidéos sont en cours de traduction et vous pourrez -obtenir les premiers textes en français en les commandant -à cette adresse

    -

    :http://www.psycho-energie.fr/index.php?option=com_content&task=view&id=28&Itemid=27%20")

    -

    La nouvelle -vidéo EFT "Try It On -Everything" -est disponible à la vente en copiant ce lien dans la barre -adresse de votre navigateur : -http://www.tryitoneverything.com/cmd.php?af=822326" -ou -en passant par le site www.Technique-EFT.com -et en visitant la page réservée aux -"Vidéos EFT".
    -

    -
  • L'animation d'une ronde -d'EFT en images
  • -

    Pour vous aider dans vos -premiers pas avec l'EFT une animation en dessins est -présente sur le site.Animation -d'une session en images
    -
    -Pensez bien à la mentionner aux personnes à qui -vous parlez de l'EFT afin qu'ils en -bénéficient eux aussi pour leurs premiers pas -avec cette merveilleuse technique.

    -
  • Les prestations disponibles -sur le site
  • -

    Vous le savez l'EFT -peut également s'appliquer à distance. -Pour cela vous trouverez plusieurs prestations directement par le biais -de l'Internet, que ce soit pour vous aider dans la -construction de votre première phrase EFT, pour un court -accompagnement ou pour un suivi plus long qui vous permettra -d'avancer considérablement dans votre -démarche personnelle.
    -
    -Vous trouverez de plus amples renseignements à cette adresse -: -Besoin -d'aide

    -
-
-
\ No newline at end of file diff --git a/pages/archives/eft-news-dec-2009.php b/pages/archives/eft-news-dec-2009.php deleted file mode 100644 index 9d1ad92..0000000 --- a/pages/archives/eft-news-dec-2009.php +++ /dev/null @@ -1,254 +0,0 @@ -
Si ce courrier ne s'affiche pas correctement vous pourrez le retrouver en cliquant sur ce lien :
- -
-
-
 
-
-
-
-
-
-
-
-
-
-

Technique-EFT.comCourrier de la Technique-EFT.com. -Edition de Décembre 2009

-
    -
  1. Le courrier de Geneviève Gagos
  2. -
  3. Le courrier de Martine Mauvais
  4. -
  5. Calendrier des formations -EFT
  6. -
  7. Divers
-
-

1-Message de -Geneviève Gagos

-

Bonjour à toutes et à tous!

-

Je n'ai pas vu passer cette année, tellement riche en événements, que déjà il faut se préparer à la suivante.

-

J'ai été inondé de courrier suite à l'"édition spéciale départ de Gary Craig", envoyée ces jours. 

-

J'ai reçu de nombreux témoignages pour souligner la grandeur du travail de Gary et pour me demander de continuer à oeuvrer pour l'EFT. Des encouragements aussi pour l'association récemment créée. Je vous remercie pour tous ces mails et vous prie de m'excuser si je n'ai pas encore répondu à tous. 

-


-

-

Un peu de douceur...

-

Avant cette annonce, un courrier a attiré mon attention par la douceur de l'intention de son auteur : "Merci de me répondre, car je ne sais plus quoi faire pour enfin la caresser et lui donner de la tendresse et de l'amour."

-

Je vous propose de partager cet instant de douceur. Je n'ai pas pu résister à demander à V, l'autorisation de vous proposer notre court échange par mail. 

-

"Bonjour Geneviève,

-

Je suis arrivée, par hasard, sur votre site en surfant sur les sites de communicateurs animaliers.

-

Pour un problème émotionnel avec ma petite chatte, j'ai eu recours à un communicateur et son comportement s'est un peu amélioré. Nous avons cette petite chatte depuis un an (elle était bébé) et depuis son arrivée nous n'avons jamais pu la caresser. Les 2 communications qu'elle a eu lui on fait beaucoup de bien et lui ont redonné confiance en elle, mais elle reste terrorisée en voyant un humain s'approcher d'elle. (ses frères et soeurs on été tués et elle s'en est sorti vivante mais traumatisée).

-

Je me demandais donc si la technique EFT pourrait lui venir en aide et comment ?

-

Merci de me répondre, car je ne sais plus quoi faire pour enfin la caresser et lui donner de la tendresse et de l'amour.

-

V

-

***

-

Bonsoir,

-

effectivement je pense que vous pouvez tenter l'EFT sur votre petite chatte.

-

En la gardant dans vos bras si possible, ou à proximité de vous, en tapotant sur vous,

-

avec intention, une phrase du style :

-

"Même si tu as terriblement peur des humains et je te comprends puisqu'ils t ont pris tes frères et soeurs, je t'aime et je t'accepte complètement"

-

Phrase de rappel : "cette terrible peur des humains"

-

Ensuite tapotez selon ce que vous ressentez lorsque vous la regardez. Laissez vous guider par votre intuition.

-

Bon tapotements !

-

Tenez moi au courant.

-

Geneviève

-


-

-

***20:31 le 07 décembre 2009

-

Merci beaucoup pour votre conseil.

-

J'espère de tout coeur que cela va marcher. Je vous tiens au courant de l'évolution.

-

Merci encore.

-

Cordialement

-

V

-


-

-

***19:06 le 08 décembre 2009

-

Bonsoir Geneviève,

-

Merci, merci,merci du fond du coeur je n'arrive pas encore à y croire. Je viens de caresser Mélusine pendant au moins 10 mn. Ce partage nous a fait extrêmement du bien à toutes les deux.

-

Merci encore.

-

Cordialement

-

V"

-

******

-

Pour continuer dans le même registre, j'ai moi-même, utilisé l'EFT, très récemment, sur ma petite chienne.

-

Ouatine (11 ans) souffrait d'une infection de la matrice. Quelques semaines auparavant, la remplaçante de son vétérinaire habituel, avait pensé l'opérer,  après avoir découvert à la radio, des masses sombres, non identifiables. Il n'y avait pas de pronostic vital et nous avions préféré attendre le retour de son vétérinaire. Entre temps, elle avait eu un traitement afin de provoquer ses chaleurs, bloquées depuis déjà, plusieurs mois et pouvant être à l'origine de son infection.

-

 Un soir, alors qu'elle avait la truffe sèche, le ventre dur et chaud, son vétérinaire alors consulté en urgence, a annoncé :

-

"Je ne peux rien faire ce soir, à part une piqûre pour lui faire baisser sa fièvre. Les autres piqûres ont été inefficaces. Il faudra me la ramener, demain, à 8h30. Je lui ferai une échographie. Selon ce que je trouverais,... je l'opérerais. Et selon ce que je découvrirais,... je la réveillerais... ou pas. Je ferai comme si c'était la mienne!"

-

Notre totale confiance en ce vétérinaire, ne nous laissait pas grand espoir.

-

J'ai décidé alors de tapoter sur elle, puis sur moi, lorsqu'elle écartait sa tête, agacée par mes tapotements. J'étais complètement avec elle, et je n'ai pas utilisé de phrases. Je tapotais seulement.

-

Le lendemain, je l'ai emmenée à son rendez-vous. La fièvre était tombée et elle paraissait plus vive. 

-

Son vétérinaire l'a trouvé mieux. Nous avons pensé que la piqûre avait bien agi sur sa fièvre et lui avait redonné un peu de vigueur. Sa truffe était à nouveau humide.

-

Dans son cabinet, lors de l'examen, un liquide pas très sympathique coulait de sa vulve.

-

"Vous avez vu toutes les toxines qui sortent là? Elles sortent par voie naturelle. Elle est débloquée. Je n'ai plus besoin de lui faire d'échographie, pas besoin de l'opérer non plus!

-

Je ne sais ce qu'il s'est passé, je ne comprends pas... mais l'essentiel c'est qu'elle se débloque! Je ne vous cache pas que je n'ai pas beaucoup dormi cette nuit. Je me faisais du souci pour elle! Je craignais ce que j'allais trouver ce matin!"

-

En effet, il la suit depuis ses toutes premières semaines et l'a toujours beaucoup aimée. il faut dire qu'elle est géniale et super gentille ma petite Ouatine! (eh! pourrais-je dire autre chose ?)

-

Puis, je lui ai dit : "je vous avais parlé il y a quelques mois d'une petite technique que j'utilise... je l'ai tentée sur Ouatine, hier soir! Je ne sais pas si c'est cela...

-

-ah! je comprends mieux! C'est votre technique qui a fait la différence! Mes piqûres n'ont pas fonctionné et hier c'était une piqûre, uniquement pour faire baisser la fièvre. Aucune action sur son blocage!"

-

Une fois de plus, et comme le dit Gary Craig, utiliser l'EFT sur tout!... bien sûr, en ce qui concerne les cas sérieux,... dans la limite de vos compétences! Le bon sens est toujours de mise, et certaines affections demandent la compétence d'un médecin qui seul, pourra intervenir le cas échéant.

-

L'EFT ne remplace pas l'avis médical!

-

Continuez à tapoter, à vous aimez et à vous acceptez complètement!...

-


-

-

-
Le jour où je me suis aimé pour vrai, j'ai commencé à me libérer
-
de tout ce qui ne m'était pas salutaire ... 
-
Personnes, situations, tout ce qui baissait mon énergie.
-
Au début, ma raison appelait cela de l'égoïsme.
-
Aujourd'hui, je sais que ça s'appelle ...
-
Amour Propre.
-

-
-
Charlie Chaplin
-
1889-1977
-


-

-
    IMPORTANT : Les vidéos de Gary Craig ne seront disponibles plus que jusqu'à épuisement des stocks. Vous pouvez encore, les commander en cliquant ci-après. Un tarif dégressif vous est réservé selon le nombre de DVD commandé. Vidéos en anglais de Gary Craig 
    -
    Ces vidéos représentent des heures de tournage sur de nombreux sujets traités lors des séminaires qu'organise Gary Craig.
-

    -
-

Bonnes fêtes de fin d'année !

-

Bien amicalement

-

Geneviève

-

-
-
-
-

2-Message de -Martine Mauvais

-
-
-

Bonjour à toutes et à tous,

-

Je vous ai choisi un sujet d'actualité : une histoire de rhume ( ! ) dont l'intérêt particulier est que son auteur, se décourageait habituellement très vite et renonçait à tapoter, se disant que les autres arrivaient à traiter leurs problèmes physiques, mais pas elle :

-

EFT dès les premiers symptômes de rhume : la persévérance paie !

-

C'est encore grâce à sa persévérance et au traitement soigneux des événements spécifiques que Carmen obtient un beau résultat avec les maux de têtes récurrents d'une jeune fille : décidément ce sont des révisions de points fondamentaux de l'EFT que j'ai sélectionnés pour la fin du trimestre scolaire !

-

Cas de maux de tête chroniques traité avec méthode

-

La recherche des causes racines est un autre volet de l'EFT qui mérite toute notre attention : Sonya Sophia a mis au point un questionnaire « prêt-à-porter » pour tenter de faciliter cette recherche lors des séances en groupe. Cela peut vous aider, mais ne remplace pas toujours le questionnement « sur mesure » que l'on peut mener en séance individuelle :

-

Méthode pour découvrir les problèmes de fond, même avec des groupes

-

Après ces « révisions », je vous rappelle que l'EFT peut vous permettre de mieux digérer les repas de fête !... Et encore mieux, à condition de l'utiliser préventivement, de rester raisonnables !

-

Je vous souhaite de très belles fêtes, de paix et d'amour, je vous envoie toute mon amitié, et vous dis « A l'année prochaine ! ».

-

Martine Mauvais

-
-

3-Calendrier des -formations EFT

-

Pour vous inscrire aux stages de -Geneviève (désormais à Lyon part Dieu), réservés aux Professionnels de la Santé et de la relation d'Aide, aller à
-

-

http://www.technique-eft.com/formations-eft-EFTbyWorkshop-France.php et -cliquez sur le lien dans la colonne de gauche afin d'en -découvrir les prix et modalités -d'inscription.

-

Pour les personnes souhaitant apprendre l'EFT, pour leur développement personnel, pour elles-mêmes et leur entourage immédiat, retrouver le calendrier des formations de Véronique Waumans à cette adresse :  http://www.technique-eft.com/formations-eft-EFTbyWorkshop-France.php  
-
- - - -Pour avoir les dépliants et tarifs des stages de Martine -MAUVAIS, contactez-la directement à cette adresse : martine.mauvais@sfr.fr
-
- - - -Même si c'est le retour de votre contrat de formation -complété et signé -accompagné du versement -de votre acompte qui officialise votre réservation, sachez -que -cet acompte ne sera encaissé que 3 à 4 semaines -avant la -date du stage. Si votre formation doit être prise en charge -par -votre employeur pensez à nous demander une convention de -formation dans les meilleurs délais. Ce type de -démarche -est toujours plus longue que celle d'un contrat de formation individuel.
-

-
-

4-Divers EFT

-
    -
  • Vous avez rejoint le site -récemment
- - - -Vous pouvez -retrouvez les précédentes newsletters du site -à -cette adresse :
- http://www.technique-eft.com/archives/index.php -
-
    -
  • Les vidéos
  • -

    La première -vidéo EFT en -français est toujours disponible sur le site de la -Technique-EFT -à l'adresse suivante : Vidéo -en français EFT

-
    - - - -Vous pourrez également commander les vidéos en -anglais de -Gary Craig en cliquant ci-après. Un tarif -dégressif vous -est réservé selon le nombre de DVD -commandé. Vidéos -en anglais de Gary Craig
    -
    - - - -Ces vidéos représentent des heures de tournage -sur de -nombreux sujets traités lors des séminaires -qu'organise -Gary Craig.
    -
    - - - -Ces vidéos sont en cours de traduction et vous pourrez -obtenir -les premiers textes en français en les commandant -à cette -adresse -
    http://www.psycho-energie.fr/index.php?option=com_content&view=category&id=58:traductions-des-dvd-de-gary-craig&Itemid=57&layout=default
    -

    La nouvelle -vidéo EFT "Try It On -Everything" est disponible à la vente en copiant ce lien -dans la -barre adresse de votre navigateur : -http://www.tryitoneverything.com/cmd.php?af=822326" ou en passant par -le site www.Technique-EFT.com et -en visitant la page réservée aux -"Vidéos EFT".
    -

    -
  • L'animation d'une ronde d'EFT en images
  • -

    Pour vous aider dans vos premiers pas -avec l'EFT une animation en dessins est présente sur le site. Animation -d'une session en images
    -
    - - - -Pensez bien à la mentionner aux personnes à qui -vous -parlez de l'EFT afin qu'ils en bénéficient eux -aussi pour -leurs premiers pas avec cette merveilleuse technique.

    -
  • Les prestations disponibles sur le site
  • -

    Vous le savez l'EFT peut -également -s'appliquer à distance. Pour cela vous trouverez plusieurs -prestations directement par le biais de l'Internet, que ce soit pour -vous aider dans la construction de votre première phrase -EFT, -pour un court accompagnement ou pour un suivi plus long qui vous -permettra d'avancer considérablement dans votre -démarche -personnelle.
    -
    - - - -Vous trouverez de plus amples renseignements à cette adresse -: Besoin -d'aide


-
diff --git a/pages/archives/eft-news-dec-2010.php b/pages/archives/eft-news-dec-2010.php deleted file mode 100644 index d32f877..0000000 --- a/pages/archives/eft-news-dec-2010.php +++ /dev/null @@ -1,253 +0,0 @@ - -

Technique-EFT.comCourrier de la Technique-EFT.com. Edition de Décembre 2010

-
    -
  1. Le courrier de Geneviève Gagos
  2. -
  3. Le courrier de Martine Mauvais
  4. -
  5. Calendrier des formations -EFT
  6. -
  7. Divers
-
-

1-Message de -Geneviève Gagos

-

-

-

-

Bonjour à tous,

-


-

-

-

En -cette fin d'année, je voudrais aborder avec vous la Gamme des 9 -actions de la séquence de base EFT. Pour la retrouver, rendez-vous sur www.Technique-EFT.com et visionnez la petite vidéo au bas de la page d'accueil du site. 

-

Cette gamme qui -en fait sourire plus d'un avec son «murmurez une chanson», nous -permet de faire passer les informations du cerveau droit au cerveau -gauche et vice versa.

-

Mais -quel rôle ont ces deux cerveaux ? Pourquoi les différencions-nous -ainsi ?

-

Je -vous invite pour cela à visionner l'excellente vidéo de Jill -Bolte Taylor qui saura vous faire sentir la différence entre ces -deux parties de notre cerveau.

-

C'est -à cette adresse :

-

http://www.dailymotion.com/video/x8agq2_jill-bolte-taylor-sous-titre-franca_tech

-

Je -suis ravie de vous annoncer la naissance du site de -l'Ecole -EFT France. -Ce site est entièrement consacré aux formations EFT. Vous y -trouverez le programme de chaque module proposé par l'Ecole EFT France, le calendrier, la -présentation des formateurs, ainsi que les premiers -témoignages de médecins qui ont choisi de suivre notre formation. 

-

En -voici le lien :

-

www.Ecole-EFT-France.fr

-

En -cette période de l'année, propice aux cadeaux, j'ai reçu d'une -de mes étudiantes un mail dont je vous joins un petit extrait :

-

«Comme -je te l'avais dit, je pratique l'EFT tous les jours, et presque -tous les jours avec ma fille Mélody qui vient d'avoir 4 ans.

-

Ce -matin, je lui ai donné une paire de collants à mettre et elle n'y -arrivait pas et s'est énervée. Quand je suis passée devant la -salle de bains, elle était assise parterre en train de tapoter : -«  même si je n'arrive pas à mettre les collants, je m'aime -et je m'accepte complètement ».

-

J'ai -trouvé ça trop « chou » et émouvant pour moi, sa -maman...» Faïrouz R.

-

N'est-ce -pas déjà un cadeau ?

-

Imaginez -un instant, cette enfant grandir en continuant ainsi à utiliser -l'EFT lorsque quelque chose la dérange... Waow ! j'espère que -j'aurais l'occasion de la rencontrer lorsqu'elle sera adulte !

-

Alors, -ouvrez les yeux ! Des cadeaux comme celui-ci, il y en a chaque jour -pour chacun de nous, mais parfois nous sommes trop concentrés sur ce -qui ne va pas pour pouvoir saisir ces belles occasions de bonheur !

-

Je -vous souhaite de passer de belles fêtes de fin d'année et de -savoir oublier ce que l'année 2010 n'a su vous apporter, -pour mieux vous concentrer sur cette nouvelle année pleine de -promesses qui pointe son nez !

-

A -l'année prochaine !

-

Bien -amicalement

-

Geneviève

-

genevieve.gagos@technique-eft.com

-

 

-
-
-
-

2-Message de -Martine Mauvais

-
-

-

-

Bonjour -à toutes et à tous,

-

De -nombreuses personnes connaissent la Loi de l'Attraction et son -principe de base, à savoir que les énergies semblables s'attirent -et que les pensées « positives » ou « négatives » -n'échappent pas à cette loi. Des pensées de peur, par exemple, -attirent ce qui est redouté. Il parait donc très souhaitable -d'entretenir des pensées « positives » !

-

La -connaissance de cette « loi », a pu être une cause de -confusion, et maintenant j'entends de plus en plus souvent la -question : « Pourquoi, avec l'EFT ne tapote-t-on pas sur -des phrases positives plutôt que sur des phrases-problèmes ? ».

-

Reportez-vous -au Manuel de Gary Craig pour y relire ses explications pages 22 à 24 -en ce qui concerne l' « Affirmation-Découverte » -qui est le fondement de l'EFT.

-

LE -PALAIS DES POSIBILITES, texte très important de Gary Craig, de -quelques 110 pages, que l'on aborde en Module d'Approfondissement, -répond à toutes ces préoccupations et au-delà. Il a été écrit, -me semble-t-il, avant la vulgarisation de la Loi d'Attraction.

-

Il est logique d'évacuer,avant tout, -les perturbations gênantes. C'est ce qui fait l'efficacité de -l'EFT. Quant à la mise en oeuvre éventuelle de techniques pour -installer « du positif », elle vient forcément en second -lieu, si c'est pertinent.

-

Une -comparaison prosaïque comme je les affectionne, pour s'en -souvenir : «  On balaye le sol AVANT de le cirer ! ». -(J'avais bien dit « prosaïque » !)

-

VOICI -2 ARTICLES SUR L'EMPLOI DE L'EFT EN CLASSE DE CM2, EN GROUPE

-

aussi -intéressants pour les professeurs que pour les parents qui peuvent -s'en inspirer.

-

Dans -le premier, une maîtresse de CM 2 fait tapoter ses élèves en -groupe, sans connaître l'évènement qu'ils choisissent, pour -respecter leur pudeur :

-

EFT -en classe

-

Dans -le deuxième, deux professionnels très compétents en EFT (l'une -ayant des responsabilités au niveau de l'Académie) -« déstressent » rapidement, en une séance, les élèves -qui vont entrer en 6ème. -Ils avaient déjà initié cette classe à l'EFT, grâce à quoi -les élèves avaient pu vivre plus sereinement les évaluations de la -fin du CM2.

-

C'est -un merveilleux exemple, car le stress à l'école est bel et bien -courant, et il peut avoir des conséquences sérieuses aux plans -émotionnels et physiques, les « petits » traumatismes -non traités de cette période de la vie, ont des effets à long -terme : croyance que l'on est nul, que l'on est rejeté par -les groupes, manque de confiance en soi, difficulté pour aborder les -situations nouvelles, pour s'adresser à des personnes d'autorité, -etc...

-

EFT -avec des élèves de 11 ans : nouvelle séance

-

Il -faut si peu de temps pour traiter avec l'EFT ces craintes -d'écoliers, et les bénéfices sont si grands ! Les adultes -qu'ils seront ne se douteront pas de l'ampleur de ces bénéfices, -mais nous, nous en sommes conscients, et nous sommes beaucoup à -espérer en faire profiter les écoliers et les collégiens. Quelques -enseignants y viennent mais pour le moment il nous faut encore -généralement nous contenter de former les parents et d'apprivoiserles autorités, -pourtant :

-
    -
  • -

    L'EFT -officiellement enseignée à l'école et au collège ? Ce -n'est plus un rêve impossible :

-

Une -de mes élèves m'a fait une très -belle surprise lorsqu'elle -m'a annoncé fièrement : « Tu sais, l'EFT est entrée -au Rectorat de l'Académie de X....! ». Il faut dire qu'elle -avait le moyen d'apprivoiserle Rectorat, -justement : c'est une professeure en retraite, qu'elle a -prise en avance, très dynamique, très bien vue du Rectorat qui -voulait la garder et qui lui demande de continuer les formations -qu'elle y donnait avant sa retraite, formations où l'EFT avait -déjà une petite place ! Auparavant elle donnait des heures de -soutien personnalisé aux élèves en perdition du lycée où elle -exerçait et elle proposait déjà discrètement l'EFT à certains -élèves.

-

Pour -moi c'est déjà un cadeau de Noël... qui approche ! Alors je -vous souhaite

-

Très -Bon Noël

-

&

-

Excellente -Année !

-

Bien -amicalement,

-

Martine -Mauvais

-

-
-

 3-Calendrier des -formations EFT

-

Pour vous inscrire aux stages de -Geneviève ( à Lyon part Dieu), suivez les liens selon votre profil de départ  :
-

-

Ecole EFT France

-


-

-

Même si c'est le retour de votre contrat de formation complété et signé accompagné du versement de votre acompte qui officialise votre réservation, sachez que cet acompte ne sera encaissé que 3 à 4 semaines avant la date du stage. Si votre formation doit être prise en charge par votre employeur pensez à nous demander une convention de formation dans les meilleurs délais. Ce type de démarche est toujours plus longue que celle d'un contrat de formation individuel.

-


- - - -Pour les dépliants et tarifs des stages de Martine -Mauvais, contactez-la directement à cette adresse : martine.mauvais@sfr.fr. 

-


-

-
-

4-Divers EFT

-
    -
  • Vous avez rejoint le site -récemment
- - - -Vous pouvez -retrouvez les précédentes newsletters du site -à -cette adresse :
-
http://www.technique-eft.com/archives/index.php -
-
    -
  • Les vidéos
-

-

-
diff --git a/pages/archives/eft-news-fev-2008.php b/pages/archives/eft-news-fev-2008.php deleted file mode 100644 index d74f33e..0000000 --- a/pages/archives/eft-news-fev-2008.php +++ /dev/null @@ -1,185 +0,0 @@ - - -

Courrier de la Technique-EFT.com. Edition de Février 2008.

- - -
  1. Message de Geneviève BALLY
  2. -
  3. Traductions du site de Gary Craig par Martine Mauvais
  4. -
  5. Calendrier des formations EFT
  6. -
  7. Divers
-
- -

1-Message de Geneviève BALLY

-

- -Bonjour à tous ! -

-Cette fois 2008 est bien lancée. Vous avez commencé l'année avec mon petit exercice et vous êtes maintenant ouvert à l'idée de profiter au maximum de cette année. -Tant mieux car l'un de vous m'a fait passer une information que je me dépêche de partager. -En effet j'attendais avec impatience la sortie du film LE SECRET tiré du livre The SECRET en version française. C'est aujourd'hui chose faite. -

-

Vous pourrez commander ce DVD en cliquant sur le nom "Le Secret" (ci-dessus) ou "Le Secret" (ci-dessous) -

Pour ceux qui ne le connaissent pas.LE SECRET est un film (je dirais plus un reportage qui se regarde très facilement) sur la Loi d'Attraction dont on parle de plus en plus. Cette fameuse loi qui dit depuis la nuit des temps que l'on attire ce que l'on pense.
-Vous l'avez certainement remarqué à maintes fois, votre voisin a une chance miraculeuse et vous avez l'impression de n'attirer que la malchance. Tout semble lui réussir sans fournir d'efforts, et vous galérez sans cesse et sans obtenir les résultats escomptés.
-Sachez qu'il ne s'agit pas d'une fatalité et que vous pouvez agir et modifier les choses. -

-« Ah oui Geneviève, je te vois venir avec les pensées positives... Mais j'ai déjà essayé et cela ne fonctionne pas pour moi. » -

-Mais rassurez-vous pour moi non plus cela ne marche pas si je n'utilise pas l'EFT pour supprimer tous les "oui mais" qu'il y a autour.
-Oui bien sûr l'EFT pour supprimer les pensées parasites qui m'empêchent de réaliser mes rêves. -

-Alors comment allier l'EFT à la Loi d'Attraction pour que cela fonctionne ? Pour que les pensées positives marchent ? -

-Voici un petit exercice qui vous aidera dans ce sens. -

-Imaginez-vous avec le fruit de votre désir. Choisissez un moment calme et fermez peut-être les yeux pour mieux évaluer votre ressenti. -

-Peut-être pensez-vous :
-« Je veux une belle maison » -

-Oui mais pas facile à croire que l'on l'obtiendra lorque l'on habite au neuvième étage d'un immeuble de dix-sept étages... Je comprends votre réticence. -

-Voyez maintenant ce qui vous empêche de croire à cette belle maison. -

-« Je ne gagne que 1200€, je ne pourrais jamais avoir une belle maison... » -

-Effectivement avec cette limite en tête votre rêve aura du mal à se concrétiser. Et c'est là qu'intervient l'EFT. -

-« Même si je ne gagne que 1200€ actuellement je veux trouver le moyen de m'offrir la maison de mes rêves. » -

-Soyez précis ! Décrivez, imaginez réellement la maison que vous souhaitez.
-Bien sûr si vos ambitions paraissent réellement démesurées il vous faudra envisager une étape intermédiaire afin que la réalisation vous paraisse possible , mais prévoyez tout de même une nette amélioration à votre situation du moment. -

-Travaillez sur toutes les limites de ce « J'ai une belle maison » et vous verrez que les choses se mettront en place d'elles-mêmes de manière bien souvent très subtiles d'ailleurs.
-Difficile à croire ? -

-« Je n'ai jamais eu de chance je ne vois pas comment ton truc pourrait marcher ? » -

-Très bien vous avez déjà votre première phrase :
-« Même si , je n'ai jamais eu de chance je ne vois pas comment ton truc pourrait marcher... » -

-Je pense que vous avez compris le principe.
-Voyez comme l'expression "on peut si on le veut" prend une nouvelle dimension ici. J'aurai envie d'ajouter "si on se le permet" également.

- -Comment pourriez-vous augmenter vos revenus pour obtenir cette belle maison si pour vous les gens qui ont de l'argent ne sont que de mauvaises personnes ? S'il est impossible d'avoir tout l'argent que l'on souhaite honnêtement.

-Comment pourriez-vous accéder à cette belle maison si vous pensez que vous ne méritez pas de l'obtenir ? ou de gagner l'argent nécessaire pour cela ?

-Traitez tous les "oui mais" qui se présentent à vous et vous gagnerez! -

-Alors qui de vous est prêt à tenter l'aventure ? -

- -Amicalement -

-Geneviève -

-

2-Traductions du site de Gary Craig par Martine Mauvais

-

- - -Bonjour à toutes et à tous ! -

-Lorsque je choisis des textes pour vous sur le site de Gary Craig, j’ai au moins 2 objectifs : celui de vous montrer toute la palette des problèmes que l’on peut aborder avec l’EFT et celui de vous aider à commencer à vraiment vous en servir. Pour ce dernier je recherche les articles qui montrent différentes façons de travailler avec l’EFT, et il y en a autant que d’utilisateurs, et surtout des articles où vous puissiez trouver des réponses à vos questions, des solutions aux obstacles que vous rencontrez et qui risquent de vous décourager. -

-L’obstacle que l’on me cite très souvent est de savoir « par où commencer » ! -

-La réponse pourrait être « Par n’importe quoi, du moment que vous commencez ! ». Lorsque l’on travaille tout seul avec l’EFT, on peut le faire de différentes façons. On peut faire une liste de tous les évènements que l’on aurait préféré ne pas vivre dans sa vie, et de toutes les personnes que l’on aurait préféré ne pas rencontrer, puis traiter un élément par jour : c’est le Processus de la Paix Personnelle. On peut aussi traiter les problèmes aigus lorsqu’ils se présentent. Mais souvent, et c’est là qu’est la difficulté, on peut éprouver des sensations ou des sentiments si vagues que l’on ne sait même pas les nommer. Et pourtant notre malaise peut être fort. Alors que faire ? Tout simplement s’en tenir à la réalité, et par exemple tapoter sur : -

-

-Même si j’ai ce malaise vague ...
-Même si je me sens dans le brouillard...
-Même si je ne sais même pas comment je me sens ...
-Même si je ne comprends pas du tout ce qu’il se passe en moi...
-Même si je n’ai pas les mots pour dire comment je me sens ...
-Même si je suis dans la confusion…

-

-Et je parie que vous aurez la surprise au bout de quelques séquences de voir votre sensation vague se préciser, qu’elle cède la place à un sentiment inattendu, qu’il vous vienne un problème précis, comme une évidence, ou bien une phrase qui vous mette sur une piste, ou encore qu’un souvenir oublié refasse surface. C’est à peu près ce qui se produit dans l’article suivant, bien que dans ce cas la personne puisse quand même mettre un mot sur son sentiment : -

-Comment traiter un « sentiment vague » avec l’EFT -

-L’article suivant montre une façon de traiter les dépendances, au tabac en l’occurrence, en posant des questions sur les circonstances qui ont entouré la mise en place de cette dépendance, et …en étant persévérant dans ce travail de détective. Vous verrez comme il s’avère payant, et l’on en oublie presque que le héros de cette histoire a été auparavant débarrassé très rapidement de douleurs intenses aux jambes qu’il avait depuis 15 ans suite à un accident ! -

-Fin d’une forte dépendance aux cigarettes avec l’EFT -

-Encore un traitement réussi de la douleur, où l’on voit l’influence que peuvent avoir sur nous les phrases « négatives » entendues dans notre enfance, et en tous cas l’interprétation que nous avons fait, enfants, de ce que nous avons entendu. Une raison de plus de traiter les évènements passés et les croyances que nous avons intégrées : -

-Après 35 ans de règles douloureuses, 20 minutes d’EFT font cesser la malédiction -

-Cet article court est très encourageant en ce qui concerne les maladies graves, invalidantes et douloureuses : pouvoir faire baisser facilement et rapidement l’intensité de la douleur, sans médicaments, quand elle est quotidienne et semble devenir inéluctable, est une vraie bénédiction. Lisez : -

-Présentation de l’EFT à des personnes atteintes de Sclérose en Plaques -

-Il existe des degrés divers de troubles chez les petits autistes : Jason, 11 ans, est assez handicapé, mais il a la chance d’avoir une monitrice d’équitation qui sait utiliser l’EFT avec pertinence. Elle emploie des phrases toutes simples, qui décrivent les symptômes de l’enfant, et malgré les difficultés particulières d’applications, comme vous le verrez, elle obtient de très beaux résultats : -

-L’EFT aide un jeune cavalier autiste à se concentrer -

-Je suis sûre que vous trouverez dans ces récits des modèles à adapter, des idées d’application, et en tous cas des encouragements à tapoter pour vous, pour vos proches ou pour vos clients. Comme Gary le fait souvent, je vous rappelle que 2 clés importantes de la réussite, sont la persévérance et l’intuition. « Je n’ai pas d’intuition ! » pourriez-vous me dire : vous verrez que plus vous tapoterez, plus elle se développera, ou plutôt, plus vous saurez être à l’écoute de sa petite voix. -

-A bientôt ! -

-Martine Mauvais - - -

-

3-Calendrier des formations EFT

-

Les dates de formation pour le premier semestre 2008 sont en ligne. Les dates pour le second semestre sont en préparation.
-Vous les trouverez en visitant la page http://www.technique-eft.com/formations-eft.php et en cliquant sur la date qui convient le mieux à votre emploi du temps. -

-Sachez toutefois que les inscriptions sont très vite closes pour une date donnée et que c’est le versement de votre acompte qui officialise votre réservation.
-Martine et moi proposons des stages de formation dont le contenu est approuvé par Gary Craig.
-Vous trouverez sur le site de emofree.com, les directives s’y rapportant. C’est à cette adresse : -workshop-guidelines -

- -Pourquoi opter pour un contenu approuvé ? -

-Au début de l'EFT Gary Craig disait :"Enseignez tout ce que vous voulez!". Au vu du nombre de personnes se lançant dans les formations EFT et proposant un contenu très disparate d'un animateur à l'autre Gary Craig a revu son opinion et a mis en place un certain nombre de directives.
-Désormais seuls les stages de formation EFT approuvés ont le droit d'utiliser le logo EFT mis à disposition par Gary Craig.
-Vous opterez pour un contenu approuvé afin d’être assuré de recevoir les mêmes bases pour chacun des niveaux de formation EFT et ceci quelque soit le pays dans lequel vous suivrez votre formation. C'est pour vous l'assurance d'obtenir une formation de qualité conforme aux directives de Gary Craig. -

- -

-

4-Matériel EFT

- -
  • Les vidéos
  • -

    La première vidéo EFT en fançais est toujours disponible sur le site de la Technique-EFT à l’adresse suivante : -Vidéo en français EFT - -

    -VOus pourrez également commander les vidéos en anglais de Gary Craig en cliquant ci-après. Un tarif dégressif vous est réservé selon le nombre de DVD commandé. -Vidéos en anglais de Gary Craig -

    -Ces vidéos représentent des heures de tournage sur de nombreux sujets traités lors des séminaires qu’organise Gary Craig. -

    -Ces vidéos sont en cours de traduction et vous pourrez obtenir les premiers textes en français en les commandant ici : -Premières traductions en français des vidéos de Gary Craig -

    - -
  • Les ebooks disponibles sur le site
  • - -

    « Maigrir Durablement avec EFT ». Une véritable prise en mains de votre problème de poids. Vous y trouverez tout ce qu'il est nécessaire de savoir pour vous libérer de votre souci, ainsi qu'un nombre impressionnant de phrases déjà prêtes que vous pourrez adapter précisément à votre cas en passant par la partie interactive présente dans l'ebook. Des liens vous mèneront sur le site dans un fichier privé réservé aux seuls lecteurs de Maigrir Durablement avec l'EFT. Il ne vous restera plus qu'à appliquer la méthode sur vous. - -

    -Votre problème est le tabac ? - - « Arrêter de Fumer avec l’EFT »vous aidera à retrouver la liberté de respirer à pleins poumons. A cette liberté de respirer pour vous et votre entourage, s'ajoute depuis ce début d'année votre liberté de libre circulation. En effet, avec l'application de la loi sur le tabac dans les endroits publics il ne vous est plus autorisé de vous rendre n'importe où avec une cigarette à la main. Pourquoi ne profiteriez-vous pas de cette aubaine pour retrouver le bonheur de vivre pleinement votre vie ?
    - - « Arrêter de Fumer avec l’EFT » vous prend en mains pas à pas pour gagner ce challenge. -

    - -Pour vous aider dans vos premiers pas avec l'EFT une animation en dessins est présente sur le site. Animation d'une session en images -

    -Pensez bien à la mentionner aux personnes à qui vous parlez de l’EFT afin qu’ils en bénéficient eux aussi pour leurs premiers pas avec cette merveilleuse technique. -

    -
  • Les prestations disponibles sur le site
  • -

    Vous le savez l’EFT peut également s’appliquer à distance. Pour cela vous trouverez plusieurs prestations directement par le biais de l’Internet, que ce soit pour vous aider dans la construction de votre première phrase EFT, pour un court accompagnement ou pour un suivi plus long qui vous permettra d’avancer considérablement dans votre démarche personnelle. - -

    -Vous trouverez de plus amples renseignements à cette adresse : -Besoin d'aide -

    -Au mois prochain

    -Amicalement -

    -Geneviève -

    - diff --git a/pages/archives/eft-news-fev-2009.php b/pages/archives/eft-news-fev-2009.php deleted file mode 100644 index f636c12..0000000 --- a/pages/archives/eft-news-fev-2009.php +++ /dev/null @@ -1,564 +0,0 @@ -

    Technique-EFT.comCourrier de la Technique-EFT.com. -Edition de Février 2009.

    - - - -
      - - - -
    1. Message de -Geneviève GAGOS-BALLY
    2. - - - -
    3. Le courrier de Martine -MAUVAIS
    4. - - - -
    5. Calendrier des formations -EFT
    6. - - - -
    7. Divers
    8. - - - -
    - - - -
    -

    1-Message de -Geneviève GAGOS-BALLY

    - - - -Bonjour à tous,
    - - - -
    - -L'EFT grandit en France est c'est un vrai bonheur. En cette -période de profonde évolution où l'on entend -parler de l'élévation de notre planète à -brève échéance, où l'on parle de crise, et -où tout un panel de peurs s'installe dans notre quotidien, une -technique comme l'EFT a sa place pour nous accompagner dans ces grands -bouleversements.
    - -
    - -Une première en France.
    - -
    - -
    En ce début d’année j’ai eu la chance -d’animer une formation auprès de différents -services rattachés au centre pénitentiaire de Ducos -(Martinique).
    - -
    - -Cette formation prise en charge d’une part par le SPIP Martinique -(Service Pénitentiaire d'Insertion et de Probation -rattaché au ministère de la justice), et d’autre -part par l’hôpital psychiatrique Colson s’inscrit -dans le cadre d’une recherche de solution pour éviter les -récidives.
    - -La collaboration entre les différents services a permis de -réunir plusieurs catégories de personnel en contact avec -les détenus.
    - -
    - -C’est le Dr Mehdi Zaazoua qui a présenté ce projet -EFT tout d’abord à son chef de service, le Dr Jean-Daniel -Even.
    - -Le Dr Even après avoir étudié ce dossier a -recherché une solution pour que cette formation puisse avoir -lieu sur site.
    - -C’est en associant ses efforts avec le Directeur du SPIP -Martinique, Mr Philippe Catherine, que les soignants du SMPR -(psychiatres, psychologues, infirmiers) , des conseillers -d’insertion du SPIP(de Martinique et de Guyane), et la -Présidente de l’Association des Visiteurs de prison, ont -bénéficié de cette formation EFT.
    - -
    - -Outre un accueil chaleureux, il m’a été très -agréable de voir ce que pouvait faire ensemble plusieurs -services intervenant chacun à différents moments -auprès des détenus.
    - -Une très belle collaboration que je tiens à saluer au passage!
    - -
    - -Avant même que j’ai repris l’avion pour la -Métropole, des séances EFT étaient -déjà prescrites au centre de Ducos et appliquées -avec un succès notable.
    - -Les premiers groupes vont être mis en place en ce mois de -février afin de faire un travail de groupe avec les -détenus. L’espoir est de faire naître chez eux -ensuite, une démarche individuelle leur permettant de -s’alléger de quelques vieux schémas les emmenant -à la première occasion, irrémédiablement en -prison .
    - -
    - -J’espère que cette expérience sera la -première d’une longue série dans ce milieu -où la souffrance est souvent bien plus grande que nous le -pensons.
    - -Les conditions d’incarcération ne sont pas des meilleures, -même en France. Les cellules prévues pour deux -détenus en abritent deux fois plus. Cela dégradent -forcément les conditions de cohabitation et -d’hygiène.
    - -Le bruit omniprésent de jour comme de nuit perturbe le sommeil -de chacun, et augmente le risque d’accrochage entre -détenus.
    - -
    - -La loi française dit que : “ tant que l’on -n’est pas jugé coupable on est présumé -innocent...” mais cela n’empêche pas d’attendre -en prison, ce fameux jugement, parfois de nombreux mois, et sans -choisir ses codétenus.
    - -
    - -Lors de mon séjour, j’ai rencontré un -prévenu au SMPR, en compagnie du Dr Mehdi Zaazoua . Nous avons -fait une séance ensemble. (pour lire la suite....)
    - -
    - -Le Dr Mehdi Zaazoua nous offre également le récit de -deux rencontres au SMPR. Je le cite car je ne saurais mieux vous faire -partager son ressenti :
    - -"Je te transmets ces quelques notes . . . rencontres éclairs, -rencontres légères, où l’EFT m’a -permis de me dégager de situations de détresse en offrant -un réel soulagement.
    - -Les notes sont aussi brèves que les séances d’EFT . -. . elles laissent le lecteur avec un goût -d’inachevé . . . les deux cas que je rapporte , -m’ont fait découvrir l’efficacité de cet -outil . . . je suis encore sous l’effet du charme agissant de -cette technique . . . un moment de rêve . . . souplesse , -rapidité . . . à user sans modération." - (pour lire la suite...)
    - -
    -Nouvelle vidéo EFT de Gary Craig (en anglais)
    -
    - -Il y a quelques semaines je vous ai parlé de la nouvelle -vidéo que Gary Craig est en train de peaufiner pour nous tous.
    - -Vous trouverez en cliquant sur ce lien un extrait de celle-ci.
    - - - -Même si vous ne comprenez pas l'anglais vous pourrez observer la transformation qui se produit pour ses
    - -vétérans d'Irak ou du Vietnam.
    -
    -EFT et Alzheimer
    -
    -
    La maladie d'Alzheimer est une maladie très difficile -à vivre pour l'entourage notamment. Ce qui très souvent -nous  oblige à  placer ces personnes, en milieu -spécialisé.
    -Merci à Christine Disant -(Irlande), qui  a traduit pour nous ce texte montrant -l'utilisation de l'EFT pour améliorer la mémoire à -court terme d'une personne atteinte de cette maladie.
    -Un plus non négligeable pour qui choisit d'accompagner malgré tout, ses aînés.
    - - -
    - -Bien amicalement
    - -
    - -
    - - - -Geneviève
    - - - -
    - -
    - - - - - - -

    2-Le courrier -de Martine Mauvais

    -Bonjour à tous et à toutes,
    -
    -Je demande l’indulgence des personnes qui auraient essayé -de me joindre par téléphone ou par e-mail, car je suis en -attente d’un raccordement à l’ADSL, ma ligne -téléphonique est suspendue pour le moment et je ne suis -pas encore reliée à l’internet. Numéro de -téléphone et adresse e-mail ne devraient pas changer.
    -
    -Ce mois-ci j’ai choisi de vous présenter ces 4 cas :
    -
    -Cette histoire est ce que les praticiens en EFT appellent un -« miracle-minute », je vous laisse le -découvrir :
    -
    - -
    -Ce n’est pas le premier article concernant la dyslexie que je -vous propose : je l’ai choisi pour sa simplicité qui -pourra vous encourager à vous « lancer ».
    -Etudiez-le : la façon de présenter l’EFT et -les questions simples posées au début de la séance -sont essentielles et permettent déjà une nette -amélioration. Quoi de plus simple que la phrase de -préparation « Même si j’ai cette peur de -lire … ».
    -Mais c’est le travail sur les évènements -spécifiques qui permet l’avancée décisive, -même et peut-être surtout sur -l’évènement que le client préfère ne -pas raconter et dont la personne qui le guide ne saura rien :
    -
    - -
    -Le travail « à distance » (ou pour le -compte d’une autre personne) avec l’EFT soulève -toujours beaucoup de questions. L’expérience de Lena Chen -avec son fils répondra à quelques unes :
    -
    - -
    -Dans certains cas on n’est pas sûr que c’est -l’EFT qui a « marché », alors que -dire de celui-ci !!!... Après tout, expérimentons et -amusons-nous !
    -
    - -
    -Le mois prochain un des articles rassurera ceux qui se croient -« nuls » en pratique de l’EFT parce -qu’ils ne voient pas le moindre petit miracle-minute, et trop -rarement des améliorations  importantes. Faites de belles -expériences et …persistez !
    -
    -Bien amicalement,
    -
    -Martine Mauvais
    -
    -
    -
    - - - -

    - - - -
    - - - -
    - - - -
    -

    3-Calendrier des -formations EFT

    - - - -

    Toutes les  formations -EFT que Martine et moi vous proposons d'ici la fin -de cette année sont complètes.
    - - - -Le calendrier des formations des différents niveaux que nous -animerons au  premier semestre 2009 est en ligne. Si vous -êtes intéressé pour suivre une -formation ne vous -fiez pas à la date éloignée des stages -proposés et retenez dès à -présent votre -place car il nous sera difficile de rajouter des stages à -ceux -prévus.

    - - - -

    Pour vous inscrire aux stages de -Geneviève, aller à
    - - - -http://www.technique-eft.com/formations-eft-EFTbyWorkshop-France.php et -cliquez sur le lien dans la colonne de gauche afin d'en -découvrir les prix et modalités -d'inscription. 
    - - - -
    - - - -Pour avoir les dépliants et tarifs des stages de Martine -MAUVAIS, contactez-la directement à cette adresse : -MMauv@aol.com
    - - - -
    - - - -Même si c'est le retour de votre contrat de formation -complété et signé -accompagné du versement -de votre acompte qui officialise votre réservation, sachez -que -cet acompte ne sera encaissé que 3 à 4 semaines -avant la -date du stage. Si votre formation doit être prise en charge -par -votre employeur pensez à nous demander une convention de -formation dans les meilleurs délais. Ce type de -démarche -est toujours plus longue que celle d'un contrat de formation individuel.
    - - - -
    - - - -

    - - - -
    -

    3-Divers EFT

    - - - -
      - - - -
    •  Vous avez rejoint  le site -récemment
    • - - - -
    - - - -        -    Vous pouvez -retrouvez les précédentes newsletters du site -à -cette adresse :
    - - - -       -      http://www.technique-eft.com/archives/index.php    -
    -
      - - - -
    • Les vidéos
    • - - - - - -

      La première -vidéo EFT en -français est toujours disponible sur le site de la -Technique-EFT -à l'adresse suivante : Vidéo -en français EFT
      - - - -

      - - - -
    - - - -
      - - - - - -


      - - - -Vous pourrez également commander les vidéos en -anglais de -Gary Craig en cliquant ci-après. Un tarif -dégressif vous -est réservé selon le nombre de DVD -commandé.Vidéos -en anglais de Gary Craig
      - - - -
      - - - -Ces vidéos représentent des heures de tournage -sur de -nombreux sujets traités lors des séminaires -qu'organise -Gary Craig.
      - - - -
      - - - -Ces vidéos sont en cours de traduction et vous pourrez -obtenir -les premiers textes en français en les commandant -à cette -adresse

      - - - - - -

      :http://www.psycho-energie.fr/index.php?option=com_content&task=view&id=28&Itemid=27%20")

      - - - - - -

      La nouvelle -vidéo EFT "Try It On -Everything" est disponible à la vente en copiant ce lien -dans la -barre adresse de votre navigateur : -http://www.tryitoneverything.com/cmd.php?af=822326" ou en passant par -le site www.Technique-EFT.com et -en visitant la page réservée aux -"Vidéos EFT".
      - - - -

      - - - -
    • L'animation d'une ronde d'EFT en images
    • - - - - - -

      Pour vous aider dans vos premiers pas -avec l'EFT une animation en dessins est présente sur le site.Animation -d'une session en images
      - - - -
      - - - -Pensez bien à la mentionner aux personnes à qui -vous -parlez de l'EFT afin qu'ils en bénéficient eux -aussi pour -leurs premiers pas avec cette merveilleuse technique.

      - - - -
    • Les prestations disponibles sur le site
    • - - - - - -

      Vous le savez l'EFT peut -également -s'appliquer à distance. Pour cela vous trouverez plusieurs -prestations directement par le biais de l'Internet, que ce soit pour -vous aider dans la construction de votre première phrase -EFT, -pour un court accompagnement ou pour un suivi plus long qui vous -permettra d'avancer considérablement dans votre -démarche -personnelle.
      - - - -
      - - - -Vous trouverez de plus amples renseignements à cette adresse -: Besoin -d'aide

      - - - -
    - - - -
    - - - - diff --git a/pages/archives/eft-news-fev-2010.php b/pages/archives/eft-news-fev-2010.php deleted file mode 100644 index a718f47..0000000 --- a/pages/archives/eft-news-fev-2010.php +++ /dev/null @@ -1,183 +0,0 @@ -

    Technique-EFT.comCourrier de la Technique-EFT.com. -Edition de Février 2010

    -
      -
    1. Le courrier de Geneviève Gagos
    2. -
    3. Le courrier de Martine Mauvais
    4. -
    5. Calendrier des formations -EFT
    6. -
    7. Divers
    -
    -

    1-Message de -Geneviève Gagos

    -

    Bonjour, -
    -
    - -Le dernier courrier de Gary Craig nous informe du report au 1er juin de l'arrêt de son site. En effet, faute d'avoir trouver une solution satisfaisante pour son site, Gary repousse la fermeture de son site, et nous laisse entrevoir, toutefois, qu'il recherche encore à en laisser une partie en consultation. J'espère ainsi, que ses archives resteront à disposition car elle est une source d'inspiration inestimable pour chacun de nous. -
    -
    - -Vous y trouverez d'ailleurs cet article que Maria Annell, EFT Cert-I, a traduit, du site officiel de l'EFT, emofree. com. -Je sais que vous serez nombreux à vous intéresser à ce sujet qui rassemble les problèmes de ronflements aux problèmes d'allergies et vous donneront des pistes pour l'un et l'autre. Egalement voyez la façon créative qu'utilise Lily Alexander pour récupérer le ressenti de la personne afin d'utiliser ses mots pour construire les phrases à tapoter. -

    - -

    Ronflements et Allergies

    - - -

    -j'ai reçu ce courrier d'une personne venue me consulter trois fois. Elle souhaite partager avec nous quelques expériences EFT. J'aime beaucoup son témoignage car il nous montre à quel point l'EFT est une technique qui rend la personne, autonome, lui permettant de reprendre sa vie en mains.
    - -Je tiens vraiment à saluer le travail personnel qu'elle a réalisé entre chaque séance; les séances n'intervenant que lorsqu'elle se sentait bloquée.
    - -Je tiens à attirer votre attention sur le fait que Marie (un pseudo) a adjoint l'EFT à un suivi médical classique, et que l'EFT intervient en complément de celui-ci afin d'en alléger les effets indésirables et en aucun cas, en remplacement de celui-ci.
    - -Voyez également comment l'EFT peut travailler en collaboration avec d'autres techniques.
    - -Je vous laisse apprécier :
    - -

    - -

    EFT et cancer

    -

    - -Après les vidéos de Gary Craig, c'est la vidéo EFT en français, de Louise Gervais qui reste toujours disponible également jusqu'à épuisement du stock sur le site de la Technique-EFT à l'adresse suivante : Vidéo en français EFT -
    -
    - - -A très bientôt
    - -Bien amicalement -

    - -Geneviève

    -
    -

    2-Message de -Martine Mauvais

    -

    - -Bonjour à toutes et à tous, -

    - -En relisant les articles du site de Gary Craig, je suis tombée sur celui-ci, de Rehanna Webster : elle donne un témoignage très éclairant sur la façon dont s'installe un état émotionnel pénible, alors même que l'origine en a été oubliée. Cela concerne souvent des états dépressifs « chroniques". -C'est en outre une vraie leçon d'EFT, car elle prend le soin de mettre en évidence les étapes du travail qu'elle fait avec sa cliente...Lisez-le attentivement. -De plus sa Technique du Mur de Briques, qu'elle présente ensuite de façon détaillée, est pleine de bon sens, et très efficace pour expliquer la démarche de l'EFT pour les problèmes de fond. Je trouve aussi qu'elle a l'avantage de rassurer le client (ou nous-même !) : elle montre bien qu'il n'y aura pas à travailler sur TOUS les évènements reliés à un problème de fond donné. -

    - -

    La cliente qui n'est « Jamais Assez Bien » et la Technique du Mur de Briques

    -

    -Témoignage : L'EFT à l'école.
    - -Une de mes élèves, Y.V. m'a donné tout à l'heure par téléphone un témoignage qu'elle m'autorise à vous transmettre, en changeant certains détails qui pourraient permettre aux personnes impliquées de se reconnaître.
    - -Y.V. est professeur des écoles.
    - -La classe voisine de la sienne est un CE1 : les enfants y ont donc 7 ans. Dernièrement la maman du petit Joël avait rendez-vous, le soir à la fin de la classe, avec la « maîtresse », pour faire un bilan du travail de l'enfant. La maîtresse a donné à Joël un exercice à faire et lui qui a de pourtant de bons résultats scolaires a « bloqué » dessus. Il était très mal, très triste, à l'idée de cette rencontre, à un point tel que la maîtresse s'en est aperçue et a décidé de recevoir la maman seule. Elle a donc demandé à Y.V. de garder l'enfant auprès d'elle pendant l'entretien.
    - -Y.V. a l'habitude d'utiliser l'EFT avec ses propres élèves et elle a demandé à Joël si elle pouvait lui faire des petits « massages » pour le soulager, pendant qu'ils parlaient de ce qui n'allait pas. Il a accepté, et pendant qu'elle tapotait sur lui, elle lui a demandé comment il se sentait.
    - -J. - Je ne peux pas faire l'exercice, je me trouve nul.
    - -Y.V. - Qu'est-ce qui fait que tu te sens comme ça ?
    - -J. - C'est parce que Maman vient.
    - -Y.V. - Pourquoi ?
    - -J. - J'ai peur de me faire gronder.
    - -Y.V. - Et de te faire taper ? (Y.V. sait que la maman est ...dure, ce qu'ignore encore sa jeune collègue).
    - -J. - Oui.
    - -Etc...
    - -Puis il a dit - Ca va, je peux aller faire mon exercice.
    - -Quand par la suite Y.V. lui a demandé comment ça s'était passé, il a répondu simplement « La maîtresse m'a dit que c'était bien ».
    - -Y.V. espère avoir la possibilité de parler à sa collègue de ces drôles de petits massages calmants qui aident les enfants, et, qui sait, de les lui apprendre...
    - -Bien amicalement,
    - -Martine Mauvais

    - -

    martine.mauvais@sfr.fr

    -

    -
    -

    3-Calendrier des -formations EFT

    -

    Pour vous inscrire aux stages de -Geneviève (désormais à Lyon part Dieu), réservés aux Professionnels de la Santé et de la relation d'Aide, aller à
    -

    -

    http://www.technique-eft.com/formations-eft-EFTbyWorkshop-France.php et -cliquez sur le lien dans la colonne de gauche afin d'en -découvrir les prix et modalités -d'inscription.

    -

    Pour les personnes souhaitant apprendre l'EFT, pour leur développement personnel, pour elles-mêmes et leur entourage immédiat, retrouver le calendrier des formations de Véronique Waumans à cette adresse :  http://www.technique-eft.com/formations-eft-EFTbyWorkshop-France.php  
    -
    - - - -Pour avoir les dépliants et tarifs des stages de Martine -MAUVAIS, contactez-la directement à cette adresse : martine.mauvais@sfr.fr
    -
    - - - -Même si c'est le retour de votre contrat de formation -complété et signé -accompagné du versement -de votre acompte qui officialise votre réservation, sachez -que -cet acompte ne sera encaissé que 3 à 4 semaines -avant la -date du stage. Si votre formation doit être prise en charge -par -votre employeur pensez à nous demander une convention de -formation dans les meilleurs délais. Ce type de -démarche -est toujours plus longue que celle d'un contrat de formation individuel.
    -

    -
    -

    4-Divers EFT

    -
      -
    • Vous avez rejoint le site -récemment
    - - - -Vous pouvez -retrouvez les précédentes newsletters du site -à -cette adresse :
    - http://www.technique-eft.com/archives/index.php -
    -
      -
    • Les vidéos
    • -

      La première -vidéo EFT en -français est toujours disponible (jusqu'à épuisement du stock) sur le site de la -Technique-EFT -à l'adresse suivante : Vidéo -en français EFT

    -

      -Même si aujourd'hui les vidéos de Gary Craig (en anglais) ne sont plus disponibles (stock épuisé et non renouvelé) ces vidéos sont en cours de traduction. Vous pourrez -obtenir -les premiers textes en français en les commandant -à cette -adresse -
      http://www.psycho-energie.fr/index.php?option=com_content&view=category&id=58:traductions-des-dvd-de-gary-craig&Itemid=57&layout=default
      -
    • L'animation d'une ronde d'EFT en images
    • -

      Pour vous aider dans vos premiers pas -avec l'EFT une animation en dessins est présente sur le site. Animation -d'une session en images
      -
      - - - -Pensez bien à la mentionner aux personnes à qui -vous -parlez de l'EFT afin qu'ils en bénéficient eux -aussi pour -leurs premiers pas avec cette merveilleuse technique.

      \ No newline at end of file diff --git a/pages/archives/eft-news-jan-2008.php b/pages/archives/eft-news-jan-2008.php deleted file mode 100644 index f61b3c2..0000000 --- a/pages/archives/eft-news-jan-2008.php +++ /dev/null @@ -1,194 +0,0 @@ - - -

      Courrier de la Technique-EFT.com. Edition de janvier 2008.

      - - -
      1. Message de Geneviève BALLY
      2. -
      3. Traductions du site de Gary Craig par Martine Mauvais
      4. -
      5. Calendrier des formations EFT
      6. -
      7. Divers
      -
      - -

      Message de Geneviève BALLY

      -

      - -Bonjour à tous ! -

      -J’ai toujours mis beaucoup d’énergie et placé beaucoup d’espoir à l’approche d’une nouvelle année. Une sorte de renouveau qui se présente chaque année (en plus de celui du printemps !)
      -Bien entendu c’est une croyance que j’ai développée depuis mon enfance. Je me souviens que déjà petite je pensais que ce que je faisais le premier jour de l’année je le ferais toute l’année.
      -Lorsqu’il s’agissait de bonnes choses pas de problèmes mais lorsque je démarrais l’année avec une bronchite par exemple je me disais que l’année commençais trop mal pour qu’elle puisse être bonne.
      -Et lorsque l’on me souhaitait une bonne année je ne pouvais m’empêcher de dire : « malheureusement elle commence mal … »
      -Autant vous dire que tout se passait comme prévu et cette année là je la passais bien souvent chez le médecin. -

      -Tout ceci pour vous dire que nos croyances ont une influence primordiale sur notre vie, qu’elles dirigent nos vies.
      -Si vous pensez que vous n’avez jamais de chance il est certain que tout se mettra de travers afin de vous prouver qu’effectivement vous êtes malchanceux. C’est cette fameuse loi de l’attraction dont on parle de plus en plus. -

      -Mais au fait qu’est-ce qu’une croyance ? -

      -Une croyance, c’est une idée qui germe tout d’abord dans notre tête et à laquelle on attache une grande importance. Tellement d’importance que l’on pense, respire et vibre comme elle et qu’elle devient réalité, notre réalité. -

      -C’est ainsi que nous dirons : -

      -« pour moi cette année ne sera pas meilleure que la précédente »
      -« même mes meilleurs projets je n’arrive jamais à les réaliser »
      -« ce n’est pas un changement d’année qui va me permettre d’obtenir cette promotion »
      -« je n’arrive jamais à rien »
      -« je suis nul »
      -« chaque année se ressemble »... -

      -mais aussi -

      -« Génial voici une nouvelle année qui commence, comme une belle couche de neige toute neuve sans traces »
      -« 2007 s’en va 2008 arrive et je vais pouvoir concrétiser mes projets »…
      -…Lorsque les années précédentes n’ont pas été merveilleuses pour nous ou inversement si nous avons pour habitude de réussir ce que nous entreprenons, nous nous réjouirons de l’année nouvelle qui arrive. -

      -Mais j’ai envie de dire que cette année sera vraiment un nouveau tournant pour vous même si cela n’a pas toujours été le cas jusqu’ici. Pourquoi ? Parce que désormais vous avez l’EFT pour vous aider à vous libérer de toutes ces pensées et croyances négatives et vous permettre d’avancer et de construire votre nouvelle réalité. -

      -Il vous reste quelques jours pour vous préparer à accueillir cette nouvelle année d’une façon plus positive et je vous invite à le faire dès à présent. -

      -Accordez-vous un petit moment et concentrez-vous sur cette nouvelle année.
      -Quelles pensées vous viennent à l’esprit immédiatement ?
      -Sont -elles des pensées négatives ?
      -Si oui appliquez l’EFT immédiatement dessus. Voici un exemple en utilisant une des phrases citées plus haut: -

      -Même si « pour moi cette année ne sera pas meilleure que la précédente » je veux rester calme et confiant. -

      -Evaluez votre phrase sur une échelle de 0 à 10 et travaillez cette phrase avec le trio de choix que vous trouverez expliqué sur le site à cette adresse : -http://www.technique-eft.com/trio-de-choix.php -

      -Faites autant de rondes que nécessaires afin d’arriver à une pensée du type :
      -« Mais finalement pourquoi ne serait-elle pas meilleure que d’habitude ? » ou « on verra bien pourquoi parler de ce que je ne connais pas encore » -

      -Ce serait dommage de s’arrêter en si bon chemin et je vous propose de continuer cet exercice au moins pendant les 7 premiers jours de janvier. -

      -A chaque fois que vous aurez une pensée, une émotion, une croyance, négatives arrêtez-vous et tapotez. -

      -Il y a fort à parier qu’avec ce petit exercice quotidien votre année se présente sous de meilleurs auspices que vous ne l’imaginiez avant de lire ce courrier. -

      -Je vous souhaite une excellente année 2008 ! -

      -Amicalement -

      -Geneviève -

      -

      Traductions du site de Gary Craig par Martine Mauvais

      -

      -Bonjour à toutes et à tous, -

      -Voici les cinq premiers articles que j’ai traduits à votre intention pour ce début d’année 2008. -

      -Certains de ces récits seront mieux compris, et donc plus profitable, si l’on a déjà de bonnes bases en EFT. J’ai pensé que ces articles étaient néanmoins intéressants pour tous. -

      -Première histoire courte : auriez-vous cru, quand vous aviez mal aux pieds à force d’être debout, que cela pouvait avoir un aspect émotionnel, et donc céder avec l’EFT ?... Essayez-le vraiment sur tout ! -

      -

      -Oh, que j’ai mal aux pieds !

      -

      -Un mal qui amène bien souvent chez le chirurgien, peut aussi disparaître très vite avec l’EFT, si vite que …vous verrez, à la fin, la réaction de la bénéficiaire ! Remarquez l’heureux effet de l’aménagement de la phrase de préparation.. -

      -

      -Canal carpien : un miracle-minute

      -

      -L’EFT a commencé à être réputée pour le traitement des phobies. Voici deux articles à ce sujet.
      -Dans le premier, Manuel S. se guérit tout seul : il combine l’EFT avec le jeu de rôle d’une manière très efficace, c’est un exemple à suivre, en particulier sa façon de mettre beaucoup d’énergie dans sa voix. C’est aussi un excellent exemple de l’efficacité du Processus de Paix Personnelle recommandé par Gary Craig. Il consiste à traiter tous les évènements spécifiques dérangeants de notre vie : ce sont eux, en effet, qui sont à l’origine de la plupart de nos problèmes émotionnels et physiques. -

      -

      -Un débutant en EFT se guérit lui-même de sa peur du monde -

      -Ce deuxième article sur les phobies nous donne des indications très intéressantes pour traiter les phobies qui ne cèdent pas facilement avec l’EFT : -

      -

      -Deborah Lindsey nous donne son avis sur trois grandes peurs et phobies -

      -Jeanne Ranger est maintenant une praticienne expérimentée en EFT : elle le pratique et l’enseigne avec enthousiasme et conviction. Mais auparavant, c’est un ami qui lui en avait parlé, et elle a pu se libérer toute seule en une seule séance des séquelles d’un viol subi dans son adolescence. Dès ses débuts, l’EFT a d’ailleurs également été connu pour son efficacité dans le traitement du SSPT ou Syndrome de Stress Post-Traumatique. -

      -

      -L’EFT guérit le traumatisme d’un viol vécu dans l’adolescence -

      -C’était un sujet bien sérieux pour terminer, mais je suis sûre qu’il en aidera plus d’une, victime de viol ou d’attouchements, encore dans l’attente de la libération émotionnelle qui lui permettra enfin de vivre pleinement. -

      -Et je vous propose pour conclure une citation qui me semble appropriée : -

      -« Tout est, soit une occasion de grandir, soit un obstacle pour vous empêcher de grandir. A vous de choisir. ». Dr Wayne Dyer -

      -Je vous dis à toutes et à tous : -

      -Très Heureuse Année à vous !
      -Et je vous envoie mes meilleures pensées. -

      - Martine Mauvais - -

      -

      Calendrier des formations EFT

      -

      Les nouvelles dates de formation pour le premier semestre 2008 sont maintenant en ligne.
      -Vous les trouverez en visitant la page http://www.technique-eft.com/formations-eft.php et en cliquant sur la date qui convient le mieux à votre emploi du temps. -

      -Sachez toutefois que les inscriptions sont très vite closes pour une date donnée et que c’est le versement de votre acompte qui officialise votre réservation.
      -Martine et moi proposons des stages de formation dont le contenu est approuvé par Gary Craig.
      -Vous trouverez sur le site de emofree.com, les directives s’y rapportant. C’est à cette adresse : -workshop-guidelines -

      -Nous vous proposerons très rapidement une traduction de ces directives. -

      -Pourquoi opter pour un contenu approuvé ? -

      -Vous opterez pour un contenu approuvé afin d’être assuré de recevoir les mêmes bases pour chacun des niveaux de formation EFT et ceci quelque soit le pays dans lequel vous suivrez votre formation. Aussi ne vous privez pas d’une formation parce que vous devez bientôt déménager. Avec ce système vous pourrez très bien suivre un Niveau 2 approuvé après avoir suivi un Niveau 1 approuvé auprès d’un autre formateur. -

      -Comment savoir qui propose des contenus approuvés ? -

      -Sur le site de la Technique-EFT.com nous vous annonçons dans le calendrier des formations les praticiens inscrits à l’annuaire qui proposent ce type de contenu. Vous pourrez également les retrouver sur le site de Gary Craig à cette adresse : Formations approuvées -

      -

      Divers

      -

      -Vous avez été très nombreux à demander votre vidéo afin de la glisser sous votre sapin de Noël . Plusieurs d’entre vous m’ont également fait part de la réception de leur vidéo dès le lendemain.
      -Un grand merci à La Poste qui a bien relayé cette opération spéciale Noël.
      -

      -Sachez que cette opération a eu un autre effet positif.
      -Je vous rappelle que l’équipe de Louise est « rémunérée » sur la vente de cette vidéo car ils ont tous fait ce travail bénévolement au moment de son tournage. Grâce à vos nombreuses commandes j’ai pu faire un virement à Louise juste avant les fêtes afin qu’elle puisse à son tour faire le père Noël. -

      -Cette vidéo est toujours disponible sur le site à l’adresse suivante : -Vidéo en français de Louise Gervais -

      -Et il n’est jamais trop tard pour faire des heureux même si Noël est passé maintenant. -

      -Sachez que vous pourrez également vous procurer par le site de la Technique-EFT.com les vidéos en anglais de Gary Craig. -Vidéos en anglais de Gary Craig -

      -Ces vidéos représentent des heures de tournage sur de nombreux sujets traités lors des séminaires qu’organise Gary Craig. -

      -Ces vidéos comme je vous l’ai signalé dans mon précédent courrier sont en cours de traduction et vous pourrez obtenir les premiers textes en français en les commandant ici : -Premières traductions en français des vidéos de Gary Craig -

      - -Après les fêtes on repense à prendre soin de soi et vous trouverez très certainement l’ebook qui convient à votre situation en suivant les liens ci-après.
      -L’année nouvelle est aussi l’occasion de prendre de bonnes résolutions et je suivrais également ce conseil car malgré une perte de 35kg avec l’EFT et mon programme - -« Maigrir Durablement avec EFT » - -, je n’ai pas encore fini mon travail. Comme on le dit c’est souvent le cordonnier le plus mal chaussé.
      -Cette nouvelle année sera également pour moi l’occasion de reprendre ce travail laissé de côté à cause d’un ennui de santé au printemps dernier qui a mobilisé toute mon attention. -

      -Pour ceux qui le souhaitent il vous sera également possible d’ - - « Arrêter de Fumer avec l’EFT »et de retrouver ainsi la liberté de respirer à plein poumons. -

      - -Vous êtes toujours très enthousiastes concernant l’animation en dessins présente sur le site. Animation d'une session en images -

      -En fait elle est là maintenant depuis plusieurs années et elle rend toujours autant service finalement. Cela me fait un grand plaisir.
      -Pensez bien à la mentionner aux personnes à qui vous parlez de l’EFT afin qu’ils en bénéficient eux aussi pour leurs premiers pas avec cette merveilleuse technique. -

      -Vous le savez l’EFT peut également s’appliquer à distance. Pour cela vous trouverez plusieurs prestations directement par le biais de l’Internet, que ce soit pour vous aider dans la construction de votre première phrase EFT, pour un cours accompagnement ou pour un suivi plus long qui vous permettra d’avancer considérablement dans votre démarche personnelle. -

      -Je ne compte plus les suivis de 7 jours qui ont vu la résolution de leur problème bien avant la fin de cet accompagnement. -

      -Vous trouverez de plus amples renseignements à cette adresse : -Besoin d'aide -

      -Mettez toutes les chances de votre côté afin que cet 2008 soit la première des plus merveilleuses années de votre vie. -

      -Amicalement -

      -Geneviève -

      - diff --git a/pages/archives/eft-news-jan-2009.php b/pages/archives/eft-news-jan-2009.php deleted file mode 100644 index 063b25e..0000000 --- a/pages/archives/eft-news-jan-2009.php +++ /dev/null @@ -1,475 +0,0 @@ - -

      Technique-EFT.comCourrier de la Technique-EFT.com. -Edition de Décembre 2008.

      -
        -
      1. Message de -Geneviève BALLY
      2. -
      3. Le courrier de Martine -MAUVAIS
      4. -
      5. Calendrier des formations -EFT
      6. -
      7. Divers
      -
      -

      1-Message de -Geneviève BALLY

      -Bonjour à tous,
      -
      -
      -
      j'ai -reçu des messages -étonnants pour cette nouvelle année. -J'en suis -encore toute émue.
      -Ces messages sortaient des traditionnels voeux que chacun peut exprimer -en pareille période, et j'ai -été très -touchée par ce sentiment de sincérité, -cette -profondeur, cette volonté de partage et d'amour, -ces -encouragements, qu'ils transportaient.
      - Le monde change aujourd'hui et face aux -difficultés -que chacun rencontre, une belle volonté de -solidarité se -met en place. C'est très encourageant.
      -Ce qui m'a interpellée aussi, c'est que -ces voeux -venaient de tous horizons, jeunes, moins jeunes, personnes ayant -traversé des moments difficiles en 2008 et -malgré tout, pleines d'espoir et de vie pour l'année -à -venir. Certains ont pensé à toutes ces personnes -que -l'on oublie bien trop souvent dans ces -moments-là... -j'ai été impressionnée et -heureuse de -constater que vous êtes nombreux à vous mobiliser -pour la -vie, la paix, le partage, la compassion.
      -Aussi je me trouve sans voix, pour à mon tour, vous -présenter mes voeux pour cette nouvelle -année. 
      -
      -Comment puis-je vous transmettre de la manière la plus -complète ce que je vous souhaite ?
      -Bien sûr que je vous souhaite, joie, bonheur, -prospérité, santé... mais il y a plus -que cela.
      -
      -Les expériences que nous vivons, bonnes ou difficiles, nous -apportent toujours quelque chose de plus dans notre vie. -J'aimerais que chacun de vous puisse trouver en lui cette -faculté de les voir, d'accepter que ce sont, -justement, -des expériences, et que vous en apprendrez toujours quelque -chose.
      -Oh bien sûr, cela ne vous sautera pas toujours aux yeux, mais -acceptez simplement de vous ouvrir à la -possibilité que -vous comprendrez un jour le message de ce que vous avez -traversé. Ayez confiance en l'avenir. C'est déjà plus de -la -moitié du chemin réalisé.
      -Recherchez toujours le message positif dans ce que vous vivez, -même si cela vous paraît impossible dans -l'immédiat. Accordez-vous le temps -nécessaire pour -cela. Nul besoin d'y penser vraiment, mais acceptez que tout -n'est pas négatif et laissez venir... Cela devient rapidement un -automatisme -et chaque expérience vous permet d'avancer -d'un pas -de géant dans la vie.
      -
      -Depuis que je connais l'EFT, j'ai appris que le -hasard -n'existait pas ou,  pour ceux qui -préféreraient, que le hasard faisait bien les -choses. -D'ailleurs, ma rencontre même avec l'EFT, -a -été très soudaine et au moment -d'une -expérience très difficile.
      -Le "hasard" met sur votre route les personnes -qu'il -faut au bon moment. N'avez vous jamais remarqué -cela ?
      -
      -2008 a été pour moi une année riche en -événements EFT et je sais que 2009 continuera sur -cette -lancée. L'EFT connaît une progression -rapide en -France et je pense que cet élan ne -s'arrêtera pas -là. C'est pour beaucoup, grâce -à vous tous qui -pratiquez, qui parlez et qui diffusez cette belle technique autour de vous. Un -effet boule de neige qui s'amplifie de jour en jour, et qui -s'étend encore plus vite grâce -à l'Internet.
      -
      -L'an passé pour commencer -l'année je vous ai -proposé un petit exercice pour lequel j'ai eu de -nombreux -retours favorables. Je vous propose cette année un autre -petit -exercice qui vous permettra de vous connecter à votre moi -intérieur pour y trouver réponses à -vos questions. -Bizarre ? non pas vraiment ! Vous connaissez déjà -la -plupart des réponses à vos questions, mais vous -n'êtes plus vraiment à -l'écoute. Le -stress, la course contre la montre, et surtout le fait de ne pas vous -occuper de vous, ne vous permettent pas ce dialogue -intérieur pour le moment.
      -
      -Apprenez à écouter les réponses de -votre corps. -Avez-vous déjà fait cette expérience ?
      -Installez-vous confortablement, et fermez les yeux. Respirez calmement -et faites le vide un instant. Oubliez pour quelques minutes ce qui se -passe autour de vous et accordez-vous ce court instant, juste pour -vous. Pas besoin de musique qui pourrait vous distraire.
      -
      -Posez-vous une question clairement. Ne vous laissez pas aller -à -quelque ambiguïté. Soyez précis. Ne -diriger pas -votre question. Soyez franc avec vous-même. Concentrez-vous -bien -sur cette question et imaginez-vous dans la situation.
      -
      Par exemple, vous avez une décision à -prendre -et vous hésitez.
      -Imaginez chacune des réponses et ressentez-les dans votre -corps.
      -Cherchez les sensations physiques dans votre corps.
      -Ah!? vous ressentez un petit serrement à la gorge, un poids -sur la poitrine ? la réponse est claire, non ?
      -Au contraire vous avez la sensation que votre poitrine -s'ouvre en grand? Eh bien, n'est-ce pas le signe que vous êtes sur la bonne voie ?
      -
      Une émotion monte ? est-ce une émotion -négative ? -une émotion positive ? Chacune d'elle vous -éclairera également.
      -Apprenez à vous écouter. Vous avez les -réponses à la majorité de vos -questions.
      -
      -Parfois vous vous laissez envahir par des "oui -mais!".
      -Identifiez-les!
      -
      Est-ce vos vraies sensations ou est-ce celles -empruntées aux croyances, aux valeurs, aux -réflexions de -vos éducateurs, aux "on dit",  -aux -"qu'en dira-t-on ?" ... à ce -que -d'autres vous ont inculquées ?
      -Soyez vrais ! acceptez d'être vous-même. -Ne vous -fabriquez pas un personnage pour plaire à Pierre, Paul, -Jacques -mais ressentez les choses et agissez comme vous le sentez, pour vous et -non pour convenir à d'autres. Votre bonheur en -dépend.
      -C'est de l'égoïsme ? -Effectivement c'est -ce que l'on nous a bien souvent -répété. Mais -dites-moi : que donnerez-vous aux autres, si vous -n'êtes -pas bien vous-même ?
      -Et dans ce cas, quelle solution avez-vous, pour être bien, -afin -de mieux vous tourner vers les autres, si ce n'est de vous -occuper de vous, avant tout ? Est-ce cela -l'égoïsme ?
      -
      -Et l'EFT dans tout ça ?
      -L'EFT est là pour vous aider à vous -occuper de tous -ces "oui mais" qui vous empêchent -d'avancer, -qui vous empêchent d'être -vous-même. Pour faire -tomber ces croyances et données obsolètes qui ne -font -qu'entraver votre liberté d'action.
      -
      -...Et si 2009 était l'année de la -réalisation de tous vos souhaits, la réalisation -de qui -Vous Etes vraiment !
      -

      -Belle et Heureuse Année à Tous !
      -
      -Bien amicalement
      -
      -Geneviève
      -
      -PS : ci-joint un petit diaporama pour éclairer votre -année.
      - -

      2-Le courrier -de Martine Mauvais

      -Bonjour à tous,
      -
      -
      Je vous souhaite une Très -Bonne Année 2009, -pleine de joie et de bonheurs multiples, dont celui de commencer -à voir se réaliser vos rêves les plus -chers. La -pratique de l'EFT nous familiarise avec la notion que tout -vrai -bonheur vient de l'intérieur : alors -continuons -à explorer l'EFT, qui nous réserve -encore bien des -surprises. Je m'en émerveille toujours autant.
      -
      -Nous ne connaissons pas la proportion de professionnels et de -« particuliers » parmi -les  nombreux -abonnés de cette lettre : je serais -intéressée de le savoir, pour le choix des -articles que -je traduis pour vous. Car parmi mes critères actuels de -choix il -y a le fait qu'un article peut être -intéressant et -accessible pour tout public, et j'ai tendance à -écarter ceux qui sont plus techniques ou plus particuliers, -qui -concerneraient plus les praticiens, et qui risqueraient de -déconcerter les non-professionnels.
      -
      -Alors que les professionnels n'hésitent pas -à nous signaler leurs besoins particuliers !
      -
      LES 3 ARTICLES DE CE MOIS -DE JANVIER :
      -
      -J'en ai lu beaucoup pour les sélectionner, et ils -ont tous -les caractéristiques que je recherchai -particulièrement -cette fois-ci, et qui sont celles de l'EFT :
      -
      -Ils sont simples, accessibles à tous, l'EFT -s'y -montre rapidement efficace, douce, et le déroulement du -processus y est exemplaire. De plus les problèmes -traités -m'ont tous émue à des titres divers.
      -
      1er -article : Traitement de la douleur :
      -
      -Diminuer ou arrêter la douleur, voilà un immense -et -magnifique champ d'application de l'EFT. -D'autres -articles ont déjà abordé cet aspect, -je crois que -ce cas-ci vous touchera et vous fera rêver aussi de voir se -répandre l'EFT, y compris dans les milieux -médicaux :
      -
      -
      -
      2ème -article : Accompagnement des derniers instants d'un -être cher :
      -
      -Je ne crois pas avoir déjà lu de -témoignage sur ce -sujet. C'est la propre fille du père -âgé qui -va s'éteindre qui pratique spontanément -l'EFT -pour lui et pour elle. Je vous laisse découvrir ce -récit -émouvant, qui peut nous inspirer pour aider les malades en -fin -de vie :
      -
      -
      -
      3ème -article : -Une jeune fille perturbée peut rapidement envisager une vie -« normale » :
      -
      -J'aime dans cette histoire-là que l'on y -voit -l'évolution rapide d'une jeune-fille qui -était déjà très -« médicalisée » -pour -dépression, anxiété, cauchemars et -insomnies. -Voyez comment Ida Kiss, la thérapeute, s'y prend -pour -présenter cette technique -« bizarre » -qu'est l'EFT à cette -adolescente : une -présentation moins prudente aurait pu la rebuter -d'entrée. Ce temps de mise en confiance est -très -important. Ensuite Ida Kiss suit avec beaucoup de rigueur -différentes techniques classiques de -l'EFT : une -belle leçon !

      -
      -
      -Beau mois de Janvier, et à bientôt !
      -
      -Avec toute mon amitié,
      -
      -Martine Mauvais
      -MMauv@aol.com
      -
      -

      -
      -
      -

      3-Calendrier des -formations EFT

      -

      Toutes les  formations -EFT que Martine et moi vous proposons d'ici la fin -de cette année sont complètes.
      -Le calendrier des formations des différents niveaux que nous -animerons au  premier semestre 2009 est en ligne. Si vous -êtes intéressé pour suivre une -formation ne vous -fiez pas à la date éloignée des stages -proposés et retenez dès à -présent votre -place car il nous sera difficile de rajouter des stages à -ceux -prévus.

      -

      Pour vous inscrire aux stages de -Geneviève, aller à
      -
      http://www.technique-eft.com/formations-eft-EFTbyWorkshop-France.php et -cliquez sur le lien dans la colonne de gauche afin d'en -découvrir les prix et modalités -d'inscription. 
      -
      -Pour avoir les dépliants et tarifs des stages de Martine -MAUVAIS, contactez-la directement à cette adresse : -MMauv@aol.com
      -
      -Même si c'est le retour de votre contrat de formation -complété et signé -accompagné du versement -de votre acompte qui officialise votre réservation, sachez -que -cet acompte ne sera encaissé que 3 à 4 semaines -avant la -date du stage. Si votre formation doit être prise en charge -par -votre employeur pensez à nous demander une convention de -formation dans les meilleurs délais. Ce type de -démarche -est toujours plus longue que celle d'un contrat de formation individuel.
      -

      -
      -

      3-Divers EFT

      -
        -
      •  Vous avez rejoint  le site -récemment
      -        -    Vous pouvez -retrouvez les précédentes newsletters du site -à -cette adresse :
      -       -      
      http://www.technique-eft.com/archives/index.php    -
      -
        -
      • Les vidéos
      • -

        La première -vidéo EFT en -français est toujours disponible sur le site de la -Technique-EFT -à l'adresse suivante : Vidéo -en français EFT
        -

      -
        -


        -Vous pourrez également commander les vidéos en -anglais de -Gary Craig en cliquant ci-après. Un tarif -dégressif vous -est réservé selon le nombre de DVD -commandé.
        Vidéos -en anglais de Gary Craig
        -
        -Ces vidéos représentent des heures de tournage -sur de -nombreux sujets traités lors des séminaires -qu'organise -Gary Craig.
        -
        -Ces vidéos sont en cours de traduction et vous pourrez -obtenir -les premiers textes en français en les commandant -à cette -adresse

        -

        :http://www.psycho-energie.fr/index.php?option=com_content&task=view&id=28&Itemid=27%20")

        -

        La nouvelle -vidéo EFT "Try It On -Everything" est disponible à la vente en copiant ce lien -dans la -barre adresse de votre navigateur : -http://www.tryitoneverything.com/cmd.php?af=822326" ou en passant par -le site www.Technique-EFT.com et -en visitant la page réservée aux -"Vidéos EFT".
        -

        -
      • L'animation d'une ronde d'EFT en images
      • -

        Pour vous aider dans vos premiers pas -avec l'EFT une animation en dessins est présente sur le site.Animation -d'une session en images
        -
        -Pensez bien à la mentionner aux personnes à qui -vous -parlez de l'EFT afin qu'ils en bénéficient eux -aussi pour -leurs premiers pas avec cette merveilleuse technique.

        -
      • Les prestations disponibles sur le site
      • -

        Vous le savez l'EFT peut -également -s'appliquer à distance. Pour cela vous trouverez plusieurs -prestations directement par le biais de l'Internet, que ce soit pour -vous aider dans la construction de votre première phrase -EFT, -pour un court accompagnement ou pour un suivi plus long qui vous -permettra d'avancer considérablement dans votre -démarche -personnelle.
        -
        -Vous trouverez de plus amples renseignements à cette adresse -:
         Besoin -d'aide


      -       
    -

     
diff --git a/pages/archives/eft-news-jan-2010.php b/pages/archives/eft-news-jan-2010.php deleted file mode 100644 index 8d9bd3a..0000000 --- a/pages/archives/eft-news-jan-2010.php +++ /dev/null @@ -1,301 +0,0 @@ -Courrier de la Technique-EFT.com. -Edition de Janvier 2010 -
    -
  1. Le courrier de Geneviève Gagos
  2. -
  3. Le courrier de Martine Mauvais
  4. -
  5. Calendrier des formations -EFT
  6. -
  7. Divers
-
-

1-Message de -Geneviève Gagos

-

Bonjour !

-

En ce début d'année, je vous souhaite une très belle et heureuse année 2010. Que cette année vous apporte joie, bonheur, santé et prospérité et qu'elle soit l'année de la réalisation de vos voeux les plus chers. 

-

Pour vous aider en ce sens vous trouverez ci-après une petite trousse de secours. Usez-en et abusez-en! A consommer sans modération!

- -
 
-
Le mois passé nous vous faisions part du départ à la retraite de Gary Craig, le fondateur de la technique EFT, qui nous réunit tous, ici.
-

A la suite des nombreuses réactions de la communauté EFT, Gary Craig a accordé une interview à Gary Williams (http://www.eftworldmagazine.com) dont vous trouverez le message original à cette adresse : : http://www.thetappinghub.com/GaryCraigTribute2010.mp3

-

Je remercie Danielle Riche qui a traduit cet entretien pour nous tous. Vous pourrez le lire en cliquant sur ce lien :  http://www.technique-eft.com/gary-craig-interview-11-01-2009.php 

-

 

-


-

-
    IMPORTANT : Les vidéos de Gary Craig ne seront disponibles plus que jusqu'à épuisement des stocks. Vous pouvez encore, les commander en cliquant ci-après. Un tarif dégressif vous est réservé selon le nombre de DVD commandé. Vidéos en anglais de Gary Craig 
    -
    Ces vidéos représentent des heures de tournage sur de nombreux sujets traités lors des séminaires qu'organise Gary Craig.
-

    -
-

Bien amicalement

-
Geneviève
-

-
-
-
-

2-Message de -Martine Mauvais

-

Bonjour -à toutes et à tous,

-
-
-

-

Je -vous souhaite une excellente année, que vos plus beaux rêves se -réalisent, ou plutôt que VOUS réalisiez vos plus beaux rêves ! -Après tout, vous avez la baguette magique de l’EFT !

-

Vous -rappelez-vous le témoignage d’Evelyne, dans la lettre de Novembre, -qui avait pu, en tapotant, ramener sa poitrine à un volume plus -acceptable pour elle ?

-

Elle -disait « Au moment de la ménopause, ma poitrine a pris -du volume et cela m’était insupportable, je trouvais cela -disgracieux, inconfortable. J’ai pensé à faire de l’EFT et -après une séance, le lendemain matin mon entourage a remarqué une -différence. J’ai fait quelques séances supplémentaires et cela -m’a réconciliée avec mon corps ».

-

Une -lectrice de la lettre mensuelle lui a demandé des précisions sur la -façon dont elle avait utilisé l’EFT.

-

Evelyne -m’a autorisée à vous communiquer la réponse qu’elle lui a -faite :

-

Bonjour -J…….,

-

Martine -Mauvais m'a transmis votre mail et je vous explique comme cela s'est -passé pour moi.

-

Très -gênée par l'augmentation du volume de ma poitrine, j'ai eu l'idée -de pratiquer l'EFT, un peu comme un défit à cette technique, je -dois dire, mais j'ai néanmoins essayé d'appliquer strictement le -cheminement, je suis partie des mots qui réellement étaient -ressentis sur les plans physique et émotionnel :

-

même si ma poitrine est -lourde, je m'aime ...

-

a -tout de suite donné un résultat dès le premier tour. Mais j'ai -poursuivi avec :

-

même si ma poitrine est trop -volumineuse, je m'aime ....

-

même si j'ai honte de ma -poitrine, je m'aime ...

-

même si je trouve ma -poitrine trop voyante, je m'aime ...

-

même si ma poitrine alourdit -ma silhouette, je m'aime ...

-

Par -ailleurs une de mes amies m'avait offert le livre de Lise Bourbeau -sur les 5 Blessures, et j'avais compris que les rondeurs de toutes -sortes : poids, poitrine, sont souvent en lien avec une blessure -d'humiliation ; après avoir conclu que oui, il y avait des -blessures d'humiliation dans mon enfance, j'ai décidé de travailler -aussi cet aspect :

-

même si j'ai été humiliée -dans mon enfance, je m'aime ...

-

Je -dois dire que cela a été efficace dès les premières formulations, -c'est à dire que cela a généré des effets visibles pour mon -entourage immédiatement.

-

Il -m'arrive de temps en temps d'avoir le sentiment que ma poitrine se -fait à nouveau trop présente et je recommence sans aller plus loin -que les phrases citées plus haut et vraiment je suis toujours -émerveillée de ce qui se passe et de la libération que cela -engendre.

-

Je -pense souvent que ce qui est un frein dans la transformation réside -dans nos résistances et il suffit d'aller les traquer, peut-être en -ce qui concerne cette problématique en particulier du côté de -l'image maternelle ou de la lignée féminine dans la famille : j'y -suis allée aussi :

-

même si les femmes de ma -lignée pensent qu'une forte poitrine est un facteur de féminité ou -de beauté ou de qualité maternelle ... je m'aime ... et je décide -qu'une petite poitrine me convient parfaitement .

-

Voilà -j'espère que j'aurai pu vous aider à trouver des pistes pour vos -formulations et vous communiquer la confiance en la réussite pour ce -sujet là aussi.

-

En -toute amitié

-

Evelyne -BOSSUT

-

 

-

Mon -commentaire : Le livre de Lise -Bourbeau a mis Evelyne sur la piste des humiliations subies. Tant -mieux. Mais, si l’on n’a pas ce genre d’information ? Nous -avons la Procédure de Paix Personnelle qui nous permet à tous, -quand nous travaillons pour nous-mêmes, de rechercher et traiter par -l’EFT les évènements passés que nous aurions préféré ne pas -vivre, dont ceux qui nous ont fait ressentir de l’humiliation. Et -c’est en travaillant sur ces évènements spécifiques de son -enfance qu’Evelyne pourrait obtenir que le résultat devienne -permanent.

-

Evelyne a -aussi tapoté sur les croyances à propos de la féminité véhiculées -par sa famille : « ce qui est écrit sur nos murs » -comme le dit Gary. Très efficace !

-

 

-

Cet exemple -de travail personnel est particulièrement inspirant : je parie -que beaucoup de femmes parmi nous n’auraient pas pensé à tapoter -sur ce problème-là ! Evelyne a appliqué à la lettre la -devise « Essayez-le sur tout ! ». Fantastique !

-

 

-

*********************

-

L’article -du site de Gary Craig que vous lirez ci-dessous, raconte un succès -parmi les plus rapides et étonnants de tous ceux que j’ai lus. -Vous allez voir ce que peut permettre la technique EFT la plus -basique !

-

L’EFT -sauve une vie : traitement éclair d’un suicidaire

-

Attention : -l’auteur de l’article est peut-être novice en EFT mais il sait, -professionnellement, gérer les réactions les plus fortes de ses -clients. La prudence et le bon sens veulent que nous restions dans -notre domaine de compétence. Ceci dit, dans ces cas d’urgence où -aucune autre personne plus qualifiée que nous ne peut intervenir -assez vite, l’EFT est vraiment d’un grand secours ! -Rappelez-vous l’article « Choc -anaphylactique – sous ses yeux l’enflure se mit à diminuer » : -un très beau succès obtenu par une débutante en attendant les -secours.

-

 

-

Portez-vous -bien,

-

Bien -amicalement,

-

Martine -Mauvais

-

martine.mauvais@sfr.fr

-

-
-

3-Calendrier des -formations EFT

-

Pour vous inscrire aux stages de -Geneviève (désormais à Lyon part Dieu), réservés aux Professionnels de la Santé et de la relation d'Aide, aller à
-

-

http://www.technique-eft.com/formations-eft-EFTbyWorkshop-France.php et -cliquez sur le lien dans la colonne de gauche afin d'en -découvrir les prix et modalités -d'inscription.

-

Pour les personnes souhaitant apprendre l'EFT, pour leur développement personnel, pour elles-mêmes et leur entourage immédiat, retrouver le calendrier des formations de Véronique Waumans à cette adresse :  http://www.technique-eft.com/formations-eft-EFTbyWorkshop-France.php  
-
- - - -Pour avoir les dépliants et tarifs des stages de Martine -MAUVAIS, contactez-la directement à cette adresse : martine.mauvais@sfr.fr
-
- - - -Même si c'est le retour de votre contrat de formation -complété et signé -accompagné du versement -de votre acompte qui officialise votre réservation, sachez -que -cet acompte ne sera encaissé que 3 à 4 semaines -avant la -date du stage. Si votre formation doit être prise en charge -par -votre employeur pensez à nous demander une convention de -formation dans les meilleurs délais. Ce type de -démarche -est toujours plus longue que celle d'un contrat de formation individuel.
-

-
-

4-Divers EFT

-
    -
  • Vous avez rejoint le site -récemment
- - - -Vous pouvez -retrouvez les précédentes newsletters du site -à -cette adresse :
- http://www.technique-eft.com/archives/index.php -
-
    -
  • Les vidéos
  • -

    La première -vidéo EFT en -français est toujours disponible sur le site de la -Technique-EFT -à l'adresse suivante : Vidéo -en français EFT

-
    - - - -Vous pourrez également commander les vidéos en -anglais de -Gary Craig en cliquant ci-après. Un tarif -dégressif vous -est réservé selon le nombre de DVD -commandé. Vidéos -en anglais de Gary Craig
    -
    - - - -Ces vidéos représentent des heures de tournage -sur de -nombreux sujets traités lors des séminaires -qu'organise -Gary Craig.
    -
    - - - -Ces vidéos sont en cours de traduction et vous pourrez -obtenir -les premiers textes en français en les commandant -à cette -adresse -
    http://www.psycho-energie.fr/index.php?option=com_content&view=category&id=58:traductions-des-dvd-de-gary-craig&Itemid=57&layout=default
    -

    La nouvelle -vidéo EFT "Try It On -Everything" est disponible à la vente en copiant ce lien -dans la -barre adresse de votre navigateur : -http://www.tryitoneverything.com/cmd.php?af=822326" ou en passant par -le site www.Technique-EFT.com et -en visitant la page réservée aux -"Vidéos EFT".
    -

    -
  • L'animation d'une ronde d'EFT en images
  • -

    Pour vous aider dans vos premiers pas -avec l'EFT une animation en dessins est présente sur le site. Animation -d'une session en images
    -
    - - - -Pensez bien à la mentionner aux personnes à qui -vous -parlez de l'EFT afin qu'ils en bénéficient eux -aussi pour -leurs premiers pas avec cette merveilleuse technique.

    -
  • Les prestations disponibles sur le site
  • -

    Vous le savez l'EFT peut -également -s'appliquer à distance. Pour cela vous trouverez plusieurs -prestations directement par le biais de l'Internet, que ce soit pour -vous aider dans la construction de votre première phrase -EFT, -pour un court accompagnement ou pour un suivi plus long qui vous -permettra d'avancer considérablement dans votre -démarche -personnelle.
    -
    - - - -Vous trouverez de plus amples renseignements à cette adresse -: Besoin -d'aide


-
diff --git a/pages/archives/eft-news-juil-2008.php b/pages/archives/eft-news-juil-2008.php deleted file mode 100644 index 78be467..0000000 --- a/pages/archives/eft-news-juil-2008.php +++ /dev/null @@ -1,179 +0,0 @@ - - -

Courrier de la Technique-EFT.com. Edition de Juillet 2008.

- - -
  1. Message de Geneviève BALLY
  2. -
  3. Traductions du site de Gary Craig par Martine Mauvais
  4. -
  5. Calendrier des formations EFT
  6. -
  7. Divers
-
- -

1-Message de Geneviève BALLY

-

- -Bonjour à tous ! -

-Un mois de Juin riche en événements pour l'EFT -

-Une certification officielle EFT.
-C'est chose faite. Gary Craig a développé son programme officiel de certification EFT.

-
  • Une certification EFT universitaire en trois niveaux
  • -
  • Un très beau certificat conçu pour chaque niveau , signé personnellement par Gary Craig
  • -
  • Une liste sur le site officiel de l'EFT (emofree.com) exclusivement réservé aux praticiens EFT certifiés.
-

-NIVEAU fondamental (EFTCert-I): prix 300 $
-Exigences:

-
    -
  • Au moins une année d'expérience
  • -
  • Appliquer l'EFT dans des séances individuelles à au moins 100 personnes
  • -
  • Passer un examen fondé sur l'étude des DVD "EFT Foundational" et un guide d'étude
- -

-NIVEAU INTERMEDIAIRE (EFTCert-II): prix 400 $
-Exigences:

- -
    -
  • certification EFT niveau de base
  • -
  • Au moins deux années d'expérience EFT avec au moins 200 personnes en séances individuelles.
  • -
  • Passer un examen fondé sur l'étude des DVD "EFT Intermediate" et un guide d'étude
- -

-NIVEAU honneurs (EFTCert-Honneurs): prix 500 $
-Exigences:

- -
    -
  • certification EFT niveau intermédiaire
  • -
  • Au moins trois années d'expérience EFT et au moins 300 personnes en séances individuelles.
  • -
  • Passer un examen fondé sur l'étude des DVD "EFT Honors"et un guide d'étude
-

Le 06 Juin Gary Craig a annoncé son programme de certification EFT.

- - -Aujourd'hui et comme on pouvait le prévoir depuis déjà plusieurs mois Gary Craig a décidé d'augmenter les exigences concernant la diffusion de l'EFT. Ce n'est pas par regret de trop de générosité mais plutôt par une prise de conscience nécessaire afin que l'EFT continue à progresser de manière honorable partout dans le monde.
-En effet jusqu'au 27 juin le site de Gary Craig abritait plus de 2000 personnes s'étant inscrites comme "praticiens". Hors Gary a reçu un certain nombre de plaintes émanant de clients déçus voire même parfois littéralement abusés par quelques uns.

-" Notre liste de praticiens compte près de 2000 personnes. Alors que certains font un travail remarquable pour diffuser l'EFT, d'autres sont à l'origine de plaintes de clients. Ces plaintes vont de "le praticien connait peu ou pas grand chose au sujet de l'EFT" à "le praticien utilise plus l'hypnose (ou d'autres méthodes) que l'EFT" jusqu'à même "des attouchements sexuels sur un client". De toute évidence, nous ne pouvons être derrière chaque praticien alors nous choisissons de prendre des mesures responsables, nous l'espérons, pour minimiser ces problèmes". -

-La liste de praticiens présente sur le site emofree.com a donc été supprimée afin d'être remplacée au fil du temps par une liste de praticiens répondant à des critères plus sélectifs. -

-Une nouvelle annonce le 13 Juin
-"En ce qui concerne les ateliers: les ateliers approuvés (niveaux 1, 2 et 3) se sont révélés être une catastrophe. Bien que certains présentateurs ont fait un travail excellent, d'autres oscillent entre misérable et pathétique. Cela nuit à la crédibilité de l'EFT et doit être supprimé. -
- L'idée initiale était de fournir des directives pour les différents niveaux et l'hypothèse était que les gens enseigneraient ces notions de manière crédible. Au lieu de cela, certains présentateurs ont enseigné leurs propres versions de l'EFT et y ont ajouté d'autres méthodes. D'autres présentateurs n'ont pas enseigné l' EFT et simplement "appâtés" les clients vers une autre technique. Certains présentateurs utilisent ce temps pour vendre leurs livres, faire la promotion de leurs propres outils, organiser des ventes multi-niveaux, etc... d'autres encore ne savent tout simplement pas très bien utiliser la technique. Même parmi les meilleurs animateurs il y a une grande diversité d'enseignements et, par conséquent, la normalisation est en baisse bien en deçà des niveaux acceptables."
- Gary précise : "Pour ces raisons après le 1er Octobre 2008, nous ne soutiendrons plus d'ateliers "approuvés" niveaux 1, 2 et 3. Toutefois les formateurs sont toujours invités à télécharger les lignes directrices pour les niveaux 1, 2 et 3 et à enseigner leur contenu.
Ceux qui ont obtenu des certificats ou autres titres de ces ateliers seront toujours en mesure de les utiliser. Cependant, ils perdront de l'importance au fil du temps remplacés par la progression de la certification officielle Gary Craig. -"

-Afin de respecter le souhait de Gary Craig, vous ne verrez donc plus apparaître sur le site Technique-EFT.com et sur les certificats remis à l'issue des formations le logo "Approuvé" et ce, à compter du 1er Octobre 2008. Par contre, Martine Mauvais et moi-même continuerons à appliquer ses directives comme nous l'avons toujours fait jusqu'à présent. -

- - -Pour ceux qui prennent leurs vacances en Juillet.... belles et bonnes vacances !

-Bien amicalement

-Geneviève - - -

- -

2-Traductions du site de Gary Craig par Martine Mauvais

-

-Bonjour à tous, - -

-Le premier article que j’ai choisi pour vous m’a passionnée pour plusieurs raisons :

-
  1. Il montre d’une façon magistrale à quel point il est vrai que l’on peut aider une personne avec l’EFT sans qu’elle raconte son problème.
  2. - - -
  3. Le « client » ne parlant pas, c’est la thérapeute qui parle pour lui : les phrases qu’elle emploie pour l’associer en permanence à son problème sont à étudier de près et à copier !
  4. -
  5. Le « client » a de toute évidence des problèmes importants : lrapidité du soulagement obtenue sans lui faire raconter l’évènement traité est d’autant plus spectaculaire.
  6. -
  7. L’EFT commence à être utilisée en milieu carcéral aux USA, en Nelle Zélande, mais pas seulement, et je trouve que dans ce cadre-là elle peut rendre des services immenses, en apaisant les tensions en détention, en allégeant la souffrance émotionnelle des détenus, et pas comme le craignent certains, en « atténuant leurs remords », bien au contraire, car on voit des gens, libérés de la culpabilité paralysante et improductive, accéder à la vraie responsabilité, à l’acceptation de la sanction, et donc à un début de reconstruction qui ne peut qu’améliorer l’état d’esprit dans lequel ils sortiront … dans le plus grand intérêt de tous :
-

- -Quand un détenu ne veut pas parler de son problème -

- -Un autre article m’a également passionnée et émue, c’est celui choisi et traduit pour nous par Monique Withers : l’histoire remarquable d’une femme qui nous fait une magnifique démonstration de l’importance de PERSEVERERquand on travaille avec l’EFT. Voila un article à partager avec les personnes de notre connaissance qui « subissent » des chimiothérapies, et toutes celles, en général, qui se sentent condamnées par la médecine. Je ne vous en dis pas plus, je vous laisse lire : -

- -Une rémission de cancer réussie. -

- - Une cliente déclare « J’ai déconcerté les blouses blanches, encore, encore et encore, en utilisant l’EFT. » -Monique Withers, et je l’en remercie vivement, nous donne un deuxième article, qui complète son précédent article sur une insomnie sévère. Celui-ci nous propose un moyen facile de calmer la farandole des folles pensées, négatives le plus souvent, qui nous empêchent de nous endormir ou de nous rendormir : -

- -Calmez votre esprit avec l’EFT et vous pourrez dormir -

- - -Travailler avec l’EFT pour les problèmes physiques est souvent simple et efficace : c’est une bonne façon de démontrer l’efficacité de l’EFT à des nouveaux venus à cette approche. Lorsqu’on rencontre des cas complexes, l’emploi de métaphores est d’une efficacité étonnante, car, curieusement, nos maux physiques incarnent, traduisent, fidèlement nos ressentis et nos états d’esprit, parfois littéralement. -Remarquez dans l’article suivant comme la thérapeute, qui est très attentive aux propres mots de sa cliente, voit très vite le parti qu’elle peut tirer de la réponse que lui fait celle-ci. Et …bingo ! Si vous accompagnez des personnes avec l’EFT, écoutez attentivement les mots qu’elles utilisent : elles vous donnent souvent elles-mêmes, inconsciemment, la clé du problème. Ecoutez aussi les vôtres ! Par exemple : J’en ai plein le dos, ça me tue, Il me prend la tête, ça m’est resté en travers de la gorge, elle m’étouffe, etc… -

- -2 séquences d’EFT mettent fin à 12 ans d’engourdissement facial -

- - -Voici maintenant deux cas de TOCs bien particuliers : la manie d’accumuler des objets. La thérapeute EFT démontre un beau savoir-faire : je vous laisse l’apprécier…et le « modéliser ». Si vous avez quelque tendance à accumuler, vous tirerez facilement partie, en les adaptant, des recadrages qu’elle emploie ! -

- -L’eft et la manie d’accumuler les choses (TOC) -

-) -l’EFT s’emploie aussi pour les problèmes de poids, et vous pourrez mettre à profit la période des vacances pour tester la procédure EFT présentée ci-dessous : -

- -Suggestions de tapotements quotidiens d’EFT pour mincir -

- -Tenez-nous au courant des résultats obtenus ! Bel été à vous !

-Bien amicalement,

-Martine Mauvais - - -

-

3-Calendrier des formations EFT

-

-Vous trouverez les formations que nous vous proposons en visitant la page http://www.technique-eft.com/formations-eft.php et en cliquant sur la date qui convient le mieux à votre emploi du temps afin d'en découvrir les prix et modalités d'inscription. -

-Même si c’est le versement de votre acompte qui officialise votre réservation, sachez que cet acompte ne sera encaissé que 3 à 4 semaines avant la date du stage.

-Pour avoir les dépliants et tarifs des stages de Martine, contactez-la directement à cette adresse : MMauv@aol.com

-Martine et moi avons choisi de vous proposer des stages de formation dont le contenu est approuvé par Gary Craig.
-Vous trouverez sur le site de emofree.com, les directives s’y rapportant. C’est à cette adresse : -workshop-guidelines et pour consulter la liste des formations approuvées par Gary Craig c'est à cette adresse : - -

- - -

-
-

4-Divers EFT

- -
  • Les vidéos
  • -

    La première vidéo EFT en fançais est toujours disponible sur le site de la Technique-EFT à l’adresse suivante : -Vidéo en français EFT - -

    -Vous pourrez également commander les vidéos en anglais de Gary Craig en cliquant ci-après. Un tarif dégressif vous est réservé selon le nombre de DVD commandé. -Vidéos en anglais de Gary Craig -

    -Ces vidéos représentent des heures de tournage sur de nombreux sujets traités lors des séminaires qu’organise Gary Craig. -

    -Ces vidéos sont en cours de traduction et vous pourrez obtenir les premiers textes en français en les commandant ici : -Premières traductions en français des vidéos de Gary Craig -

    - -
  • L'animation d'une ronde d'EFT en images
  • -

    - -Pour vous aider dans vos premiers pas avec l'EFT une animation en dessins est présente sur le site. Animation d'une session en images -

    -Pensez bien à la mentionner aux personnes à qui vous parlez de l’EFT afin qu’ils en bénéficient eux aussi pour leurs premiers pas avec cette merveilleuse technique. -

    -
  • Les prestations disponibles sur le site
  • -

    Vous le savez l’EFT peut également s’appliquer à distance. Pour cela vous trouverez plusieurs prestations directement par le biais de l’Internet, que ce soit pour vous aider dans la construction de votre première phrase EFT, pour un court accompagnement ou pour un suivi plus long qui vous permettra d’avancer considérablement dans votre démarche personnelle. - -

    -Vous trouverez de plus amples renseignements à cette adresse : -Besoin d'aide - -

    - - diff --git a/pages/archives/eft-news-juillet-2009.php b/pages/archives/eft-news-juillet-2009.php deleted file mode 100644 index 869661b..0000000 --- a/pages/archives/eft-news-juillet-2009.php +++ /dev/null @@ -1,402 +0,0 @@ -
    -
    -
     
    - - - - -
    -
    -
     
    -
    -
    -
     
    -
    -
    -
     
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -

    Technique-EFT.comCourrier de la Technique-EFT.com. -Edition de Juillet 2009.

    -
      -
    1. Message de -Geneviève GAGOS
    2. -
    3. Le courrier de Martine -MAUVAIS
    4. -
    5. Calendrier des formations -EFT
    6. -
    7. Divers
    -
    -

    1-Message de -Geneviève Gagos

    -
    Bonjour à tous!
    -
     
    -
    Décidément, tout va vraiment très vite.... et je n'ai pas vu passer le mois de Juin.
    -

    -
    -
    Stage Italie:
    -
    Il faut dire, qu'avec Amanda, nous étions très occupée à préparer notre formation franco-italienne.
    -
    C'est maintenant, chose faite, et tous les documents sont aujourd'hui, traduits en italien.
    -
    Si vous souhaitez participer à cette aventure, sachez qu'il ne reste plus que 3 places.
    -
    Pour ceux qui souhaiteraient nous rejoindre, je vous invite à consulter la page "spéciale Italie" rassemblant les informations utiles pour cette escapade.
    - -

    -
    -
    Nouvelles directives de Gary Craig
    -
    Si vous recevez les newsletters de "emofree.com", le site officiel du fondateur de l'EFT, vous savez que Gary Craig revoit actuellement ses directives.
    -
    En effet, il ré-affirme son indépendance par rapport à toutes les techniques cousines nées depuis l'EFT, et rejette toute responsabilité dans tout ce qui a pu être mis en place partout dans le monde concernant l'EFT. Il ne s'agit là, que d'une pure logique. 
    -
    Chacun de nous a sa propre vision, compréhension de l'EFT et personne ne peut affirmer transmettre la technique exactement, comme le fait Gary Craig. Pour reprendre un terme qui lui est cher, nous avons tous nos "propres écritures sur nos murs".
    -
    De ce fait, lorsque nous transmettons la technique, de nombreux aspects entrent en considération: notre vécu, notre sensibilité, notre personnalité, la source de notre apprentissage, notre pratique, etc... font de nous des personnes uniques, avec une manière unique d'enseigner l'EFT.
    -
    C'est ainsi que Gary demande que chacun de nous précise, visiblement, sur nos sites,  documents de formation, et tout autre écrit parlant de l'EFT, qu'il s'agit de notre version de l'EFT et non pas de celle de Gary Craig, et que les informations complètes peuvent être trouvées sur son site : emofree.com.
    -

    -
    -
    Vous pourrez découvrir l'article complet sur le site de Gary, emofree.com, à l'adresse suivante : 
    - -

    -
    -
    Formations professionnelles et autres :
    -
    J'ai animé ma dernière formation sur le site de Voiron, à l'hôtel Kyriad, en 
    -
    cette fin juin. Non pas que je ne sois pas satisfaite de cet endroit que je quitte 
    -
    avec un petit pincement au coeur, car j'ai apprécié leur accueil chaleureux 
    -
    durant ces dix huit mois passés, mais tout simplement parce que j'habite 
    -
    désormais à Meyzieu, près de Lyon. C'est donc à Lyon Part Dieu que je 
    -
    vous retrouverai à présent, avec une variante toutefois c'est qu'à partir de 
    -
    ce jour, (et au vu des disponibilités actuelles, à partir des formations de 
    -
    novembre) je me concentrerai sur l'enseignement à destination des 
    -
    professionnels de la santé et de la relation d'aide.
    -
    Cela ne veut pas dire que les autres personnes ne pourront recevoir ce 
    -
    type de formation. En effet, à partir du mois de janvier, Véronique 
    -
    Waumans, prend le relais sur Grenoble, pour toutes les personnes qui 
    -
    souhaitent se former à l'EFT, dans le cadre de leur développement personnel.
    -
    Vous trouverez sur le site www.Technique-EFT.com, à la rubrique 
    -
    formation, son calendrier, dès à présent, pour ses premières dates.
    -

    -
    -
    Bon été à tous!
    -
    -

    -
    -
    A très bientôt
    -
    -
     
    -
    - -Bien amicalement
    -
    -

    - - - -Geneviève
    -
    -

    2-Le courrier -de Martine Mauvais

    -

    Bonjour -à tous,

    -


    -

    -

    Ma -saison de stages EFT, calquée sur l'année scolaire (!) se -termine, et j'ai pu prendre le temps de traduire 3 articles à -votre intention :

    -

    Pour -commencer, voici une séance étonnante, faite vraiment « au -pied levé », au cours de laquelle le guide réutilise d'abord -parfaitement bien les mots mêmes employés par le client, Il le -prévient ensuite qu'il va abandonner la stricte reformulation pour -faire des propositions plus provocantes, qui lui semblent a priori -devoir « lever des lièvres » :

    -

    Guérison ultra rapide d'un coeur brisé grâce à l'EFT

    -

    Voici -maintenant un article capital pour les accidents physiques -de tous -ordres, et je pèse mes -mots : dans cette histoire le moment-clé est celui où Baerbel -se rappelle qu'il faut absolument qu'elle s'adresse de façon -positive à son corps tout en tapotant immédiatement.

    -

    Lorsqu'on -y réfléchit, la réaction habituelle dans un tel cas, est plutôt -de se dire : « Aïe, me voilà bien, je me suis sûrement -cassé quelque chose, ça ne va pas être drôle, je vais -déguster ! ». Ce faisant, on ignore complètement que -notre inconscient, notre corps, risquent fort de nous « obéir » -et on néglige nos stupéfiantes facultés de récupération !

    -

    Alors -je vous souhaite vivement de mémoriser ce cas tout simple, il pourra -vous être très utile, à vous et aux personnes qui vous entourent, -et vous aurez maintes occasions d'expérimenter à quel point vos -pensées influencent votre corps :

    -

    Importance -d'appliquer l'EFT immédiatement après un accident !

    -

    Encore -un problème de douleur physique intense, mais cette fois, il est -ancien, et vous verrez à quel point la recherche du problème de -fond est nécessaire dans ce genre de cas :

    -


    -

    -

    La -souffrance de toute une vie disparaît après la découverte du -problème de fond

    -


    -

    -

    Le -quatrième article a été traduit par Marie Moysset : j'ai -d'abord trouvé son titre déconcertant et même provocateur, mais -il s'agit d'une séance originale pour un fumeur qui va cesser de -fumer : elle est « futée » et inhabituelle :

    -


    -

    -

    EFT -pour un fumeur très intelligent - 2 mois sans avoir besoin d'une -cigarette

    -

    ( -traduction d'un article de la lettre de Gary Craig du 25.05.2009)

    -


    -

    -

    D'autre -part un témoignage de Marie Moysset :

    -

    -

    Qu'elle -en soit remerciée.

    -

    -

    1/ -Tapoter par téléphone sur une douleur de Coccyx avec la technique -du récit

    -

    -

    J'avais découvert l'EFT quatre -mois auparavant lorsque j'ai eu l'expérience téléphonique -suivante :

    -

    -

    Je travaille avec une technique -d'ostéopathie énergétique, sans toucher, à quelques dizaines de -centimètres de la personne. Une après-midi, je reçois un coup de -fil pour une urgence.

    -

    -

    Une mère appelait pour sa fille de 13 -ans qui était tombée sur le coccyx le matin même lors d'une -bousculade à l'école. Je pouvais entendre la jeune adolescente -pleurer de douleur pendant que sa mère tentait de m'expliquer la -situation, en reprenant tant bien que mal les indications de sa -fille. J'entendais aussi que la fille ne se sentait pas comprise -dans sa douleur par sa mère, du moins de la manière dont elle le -désirait.

    -

    Je demandai à la mère de me passer sa -fille directement en ligne, ce que cette dernière accepta. Je lui -demandai si elle accepterait de me raconter ce qu'il s'était -passé, ce qu'elle fit. Je commençai à tapoter pour elle tandis -qu'elle m'expliquait les détails de sa chute.

    -

    -

    Après 2 à 3 minutes, j'ai noté, -par le ton de sa voix, qu'elle se calmait. Je lui ai donc proposé -de tapoter sur elle-même, en même temps que moi, en lui expliquant -qu'elle se sentirait mieux, en attendant que je lui rende visite le -lendemain matin pour une séance d'ostéopathie énergétique, pour -approfondir le soin. A ma grande surprise, elle a aussitôt accepté -et a très vite compris où tapoter, avec mon guidage.

    -

    -

    Après deux rondes d'EFT, elle me -dit : « je peux sentir que ça marche, mon coccyx me fait -moins mal ».

    -

    Je lui suggérai d'utiliser la -technique à n'importe quel moment du reste de la journée, en -restant concentrée sur la douleur, même si ça paraissait étrange -et un peu ridicule. Elle accepta de nouveau et elle me -répondit : « C'est pas ridicule, je me sens mieux, -comme si la douleur et les pleurs dans ma gorge étaient partis, le -tapotement les a fait disparaître, je le sens !»

    -

    -

    C'était ma première expérience de -tapotement par téléphone et j'étais abasourdie du résultat ! -Tout ceci n'a duré en tout et pour tout qu'une dizaine de -minutes.

    -

    -

    Le lendemain, je suis allée la voir, -pour la séance d'ostéo énergétique. Elle n'avait pratiquement -plus mal au point qu'on a failli annuler le soin. Je n'ai -travaillé dans ma technique que quelques minutes, et nous avons -profité du reste du temps pour approfondir sa compréhension de -l'EFT. J'ai su par la suite qu'elle l'avait montrée à ses -amies du collège, et qu'elles tapotaient ensemble sur leurs -problèmes.

    -

    -

    C'est un bel exemple de transmission -de cette technique magique. Merci à Martine Mauvais, ma professeur, -ainsi qu'à Gary Craig.

    -

    -

    Marie-Laurence Moysset

    -

    Mai 2009

    -


    -

    -

    -

    Je -vous souhaite un bel été, et j'attends avec plaisir vos -témoignages et traductions. Pour celles-ci, veuillez me communiquer -les références du texte original !

    -

    -

    Pensez -à tapoter pour les piqûres d'insectes et tous les bobos propres -aux vacances, et, comme vous l'avez vu, dans les cas d'urgence, -après avoir pris les mesures de sécurité qui s'imposent.

    -


    -

    -

    Bonne -lecture et bel été à vous.

    -

    -

    Bien -amicalement,

    -

    -

    Martine -Mauvais

    -

    -

     

    -

     

    -
    -
    -

    3-Calendrier des -formations EFT

    -

    Pour vous inscrire aux stages de -Geneviève (désormais à Lyon part Dieu), réservés aux Professionnels de la Santé et de la relation d'Aide, aller à
    -

    -

    http://www.technique-eft.com/formations-eft-EFTbyWorkshop-France.php et -cliquez sur le lien dans la colonne de gauche afin d'en -découvrir les prix et modalités -d'inscription.

    -

    Pour les personnes souhaitant apprendre l'EFT, pour leur développement personnel, pour elles-mêmes et leur entourage immédiat, retrouver le calendrier des formations de Véronique Waumans à cette adresse : http://www.technique-eft.com/formations-eft-EFTbyWorkshop-France.php 
    -
    - - - -Pour avoir les dépliants et tarifs des stages de Martine -MAUVAIS, contactez-la directement à cette adresse : martine.mauvais@sfr.fr
    -
    - - - -Même si c'est le retour de votre contrat de formation -complété et signé -accompagné du versement -de votre acompte qui officialise votre réservation, sachez -que -cet acompte ne sera encaissé que 3 à 4 semaines -avant la -date du stage. Si votre formation doit être prise en charge -par -votre employeur pensez à nous demander une convention de -formation dans les meilleurs délais. Ce type de -démarche -est toujours plus longue que celle d'un contrat de formation individuel.
    -

    -
    -

    3-Divers EFT

    -
      -
    • Vous avez rejoint le site -récemment
    - - - - -Vous pouvez -retrouvez les précédentes newsletters du site -à -cette adresse :
    -
    http://www.technique-eft.com/archives/index.php -
    -
      -
    • Les vidéos
    • -

      La première -vidéo EFT en -français est toujours disponible sur le site de la -Technique-EFT -à l'adresse suivante : Vidéo -en français EFT
      -

    -
      -


      - - - -Vous pourrez également commander les vidéos en -anglais de -Gary Craig en cliquant ci-après. Un tarif -dégressif vous -est réservé selon le nombre de DVD -commandé.
      Vidéos -en anglais de Gary Craig
      -
      - - - -Ces vidéos représentent des heures de tournage -sur de -nombreux sujets traités lors des séminaires -qu'organise -Gary Craig.
      -
      - - - -Ces vidéos sont en cours de traduction et vous pourrez -obtenir -les premiers textes en français en les commandant -à cette -adresse

      -

      -
      http://www.psycho-energie.fr/index.php?option=com_content&view=category&id=58:traductions-des-dvd-de-gary-craig&Itemid=57&layout=default
      -

      La nouvelle -vidéo EFT "Try It On -Everything" est disponible à la vente en copiant ce lien -dans la -barre adresse de votre navigateur : -http://www.tryitoneverything.com/cmd.php?af=822326" ou en passant par -le site www.Technique-EFT.com et -en visitant la page réservée aux -"Vidéos EFT".
      -

      -
    • L'animation d'une ronde d'EFT en images
    • -

      Pour vous aider dans vos premiers pas -avec l'EFT une animation en dessins est présente sur le site.Animation -d'une session en images
      -
      - - - -Pensez bien à la mentionner aux personnes à qui -vous -parlez de l'EFT afin qu'ils en bénéficient eux -aussi pour -leurs premiers pas avec cette merveilleuse technique.

      -
    • Les prestations disponibles sur le site
    • -

      Vous le savez l'EFT peut -également -s'appliquer à distance. Pour cela vous trouverez plusieurs -prestations directement par le biais de l'Internet, que ce soit pour -vous aider dans la construction de votre première phrase -EFT, -pour un court accompagnement ou pour un suivi plus long qui vous -permettra d'avancer considérablement dans votre -démarche -personnelle.
      -
      - - - -Vous trouverez de plus amples renseignements à cette adresse -:
      Besoin -d'aide


    -
    -
    - -

     


    -
    - - 
    \ No newline at end of file diff --git a/pages/archives/eft-news-juillet-2010.php b/pages/archives/eft-news-juillet-2010.php deleted file mode 100644 index d6a1f7c..0000000 --- a/pages/archives/eft-news-juillet-2010.php +++ /dev/null @@ -1,240 +0,0 @@ -&Itemid

    Technique-EFT.comCourrier de la Technique-EFT.com. -Edition de Juillet 2010

    -
      -
    1. Le courrier de Geneviève Gagos
    2. -
    3. Le courrier de Martine Mauvais
    4. -
    5. Calendrier des formations -EFT
    6. -
    7. Divers
    -
    - -

    1-Message de Geneviève Gagos

    - -
      - -
    1. Message de Geneviève Gagos
    2. -

      Bonjour à tous,

      - -Je n'ai jamais rencontré plus de personnes tristes et déprimées, qu'en cet été. Mais que se passe-t-il ? Est-ce là, le prix à payer pour l'élévation de la conscience ?  -

      - -Bien sûr, la configuration planétaire du moment, n'est pas la meilleure. La terre se déchaîne dans bien des endroits. Mais n'est-ce pas pour nous, le meilleur moment pour avancer ?
      -Devons-nous rester là, à nous lamenter ?
      -Et si toute cette énergie, était plutôt utilisée à bon escient ? -

      - -Mère Theresa disait à ceux qui l'invitaient à manifester contre la guerre :
      -"Appelez-moi quand vous manifesterez pour la paix et je serai à vos côtés !" -

      - -Ce qui est sûr, c'est que chacun crée sa propre réalité et que si vous pensez que rien ne va plus... vous avez raison! De même, si vous pensez que tout est pour le mieux... vous avez également raison! 
      -Ce sont vos pensées qui donnent le ton à votre vécu.  -

      - -Gary Craig le dit lui même : "Vos pensées d'aujourd'hui, créent votre réalité de demain."
      -... Et ma devise est, et je dis, persiste et signe : "La vie doit être douce!" -

      - -

      - -

      Mais je ne peux pas m'empêcher de penser que je suis seul(e), que ma(mon) femme(mari) m'a quitté(e), que j'ai perdu mon travail, que je ne sais pas comment faire pour... 

      -Vous avez mille raisons d'être déprimé ? Vous avez donc mille raisons d'utiliser l'EFT! -

      - -Et si vous gardiez à l'esprit que tous ces événements ne sont là que pour vous permettre de passer à autre chose... voilà déjà, une autre façon de regarder la situation, et de rebondir, plutôt que de la subir. Mettez votre énergie à ce que vous pouvez faire maintenant.
      -Effectivement, vous ne changerez pas l'événement, mais en changeant votre regard sur cet événement, vous en sortirez glorieux. -

      - -Le secret ici, est de rester dans l'instant présent. Pas dans le passé ou tourné vers l'avenir, mais juste dans le moment présent. -

      Oui mais, justement, dans l'instant présent, je suis seul puisque ma femme m'a quitté!

      - -C'est une manière de penser, car d'autres pourraient dire :"Chouette, me voilà libre de faire ce que je veux et d'aller où je veux, maintenant!" -

      - -

      - -Alors, qu'est-ce qui vous fait réagir de cette manière ?  -

      -C'est de vous concentrer sur ce que vous n'avez pas, ce que vous ne voulez pas ou plus.  Bien sûr, cela a un lien avec vos événements passés, car, comment pourriez-vous savoir ce que vous ne voulez pas ou plus si vous ne l'avez pas déjà expérimenté ? -

      - -

      Mais je ne sais pas par où commencer ?

      - -Très bien! Commencez par là ! 
      -"Même si je ne sais pas par où commencer..." -

      - -

      Comment m'en sortir ?

      - -Etablissez une liste, à la manière de l'exercice de la paix personnelle sur le thème qui vous préoccupe, et commencez à tapoter, sur tout ce qui remonte! -

      - -

      -Posez-vous des questions telles que : -

      - -Que représente (son prénom) pour moi ? (si l'on reste sur l'exemple cité plus haut)
      -C'est l'amour de ma vie !
      -Hum! En êtes-vous bien sûr ? 
      -J'ai bien souvent eu à traiter ce problème en consultation, et à chaque fois, cela a mis en évidence, une séparation (peut-être un simple départ en colonies de vacances mal vécu, la première journée à l'école, ou chez la nounou, etc...), un sentiment d'abandon, ou un deuil pas fait, vécu dans l'enfance, ou l'adolescence, que l'événement actuel venait réveiller. -

      - -

      -Traitez cet événement du passé et vous retrouverez le sourire! -

      -Je me rappelle une séance par téléphone, où Alain (pas son vrai prénom) me disait qu'il voulait se supprimer, parce que sa compagne venait de le quitter.
      -Après 50 mn d'EFT, il se sentait serein, protégé et heureux de vivre! 
      -Il m'a dit : "Eh dire que j'ai failli me foutre en l'air à cause de cette pétasse!" 
      -Désolée, mais ce sont ses propres termes.
      -
Derrière, il y avait un deuil pas fait. Ses parents, voulant bien faire, ne l'avait pas autorisé à assister aux obsèques de sa grand-mère, décédée quand il avait cinq ans. -

      - -D'autres fois, il s'agit d'un manque d'affection maternelle ou paternelle. Mais ne vous limitez pas à ces seules exemples. Voyez ce qui vous parle le plus. -

      - -Voici le cas de Marc (pas son vrai prénom, même s'il m'a autorisée à citer cette perle de l'EFT) qui se plaignait du manque de tendresse de sa compagne. Il en était vraiment malheureux. Pour lui, elle devait lui apporter toutes les attentions et caresses que sa mère n'avait pas eues pour lui. 
      -S'agissant de son ressenti, nous avons pris cette piste, quand il a tout à coup, pensé que sa mère était l'opposée de sa grand-mère. Ah, les grands-mères !
      -Je lui ai demandé de m'en dire un peu plus sur sa grand-mère. Là, l'émotion est montée. Nous tenions la vraie raison de son problème : encore un deuil pas fait. Sa grand-mère, qui représentait toute la tendresse de la terre, était décédée alors qu'il était encore bien jeune, et bien sûr, n'ayant pas intégré son départ, il revivait ce manque à travers sa relation amoureuse.
      -Mais je vous ai parlé de "perle EFT".  En effet, lorsque nous avons pu mettre les mots justes sur son désarroi, une des phrases de rappel s'est trouvée être : "Ma grand-mère est morte..." et là, Marc a éclaté de rire, en me disant : "Vous savez ce qui m'est venu ?... c'est : ... Je n'ai plus de feu!"
      -Autant vous dire que l'émotion négative n'était plus qu'un vieux souvenir, maintenant! -

      - -

      -Quels besoins comblait-elle (ou il) ?

      -Pas de saines relations, si elles sont fondées sur des besoins. Nous sommes capables de subvenir nous-mêmes à tous nos besoins. Si besoin, il y a, il y a manques. S'il y a manques, il y a de l'EFT dans l'air !
      -Notez ces besoins et travaillez-les avec l'EFT.
      -Vous en ressortirez renforcé et votre prochaine relation n'en sera que plus riche... ou, il n'est jamais trop tard pour bien faire : peut-être devez-vous y penser dès à présent, dans votre relation actuelle. -

      - -

      -Quelles intentions derrière une décision, un choix ?

      -Là aussi vous serez surpris de ce qui peut se cacher derrière votre mal-être.
      -Si vos intentions ne sont pas louables, vous ne vous sentirez pas bien. Débusquez-les, traitez-les avec l'EFT et la joie de vivre reviendra. -

      - -

      - -Qu'est-ce que je pense de moi ? Quelles sont mes croyances ? -

      - -Toutes les pensées toxiques sont à travailler avec l'EFT. Comment arriver à mettre votre projet en route, si vous croyez fermement que vous n'y arriverez pas, ou que ce n'est pas fait pour vous ? -

      - -

      L'EFT est magique!

      -

      - -Eh non! L'EFT n'est pas magique, car s'il s'avère qu'une chose n'est vraiment pas pour vous, ou  que vous vous trompez de direction, cela vous viendra en conscience. -

      - -En voici quelques exemples : -Je veux arrêter de fumer pour faire plaisir à mon mari, ou parce que mon mari me le demande.
      -Très vite en tapotant, vous vous rendrez compte, que ce plaisir que vous voulez pour quelqu'un d'autre que vous, ne vous satisfait pas et que vous ne voulez pas vraiment arrêter de fumer. L'EFT ne fera pas le travail à votre place, mais mettra en évidence cette réalité. -

      - -Je veux me débarrasser de mes TOC, mais si je n'ai plus mes TOC, je devrais trouver une autre façon d'attirer l'attention à moi, ou je serai obligé de reprendre ce travail qui ne me convient pas.... Là non plus, l'EFT ne fera pas le travail à votre place, mais mettra en évidence cette réalité. -

      - -Mais, attention ! Je n’ai pas dit que pour chaque souhait d’arrêter de fumer, ou de se débarrasser de TOC, il en est ainsi. Ce sont juste des illustrations de ce que l’on peut rencontrer. -

      -Ensuite, à vous de décider!  -

      -Ok, j'accepte de me remettre au travail, mais j'ai besoin d'un peu plus de motivation!
      -Une fois le choix fait, l'EFT peut à nouveau entrer en action.  - -

      - -L'EFT n'est pas un outil d'apprenti sorcier! -

      -J'ai reçu un appel, ces jours, d'une personne qui me demandait si l'EFT pouvait l'aider à perdre du poids, car rien n'y faisait.
      - -Après lui avoir expliqué l'aide que pouvait lui apporter l'EFT, elle m'a demandé : "Si je vous envoyais une photo, pourriez-vous travailler à distance ?"
      -Que pensez-vous que j'ai répondu ? -

      - -

      - -Alors au travail ! -

      -Pensez que tout ce que vous vivez aujourd'hui, aussi dur cela puisse vous paraître sur le moment, n'est là que pour vous donner l'occasion de progresser, d'aller plus loin, de vous surpasser, d'expérimenter de nouveaux horizons. -

      - -Demain, en vous retournant, vous en remarquerez les bienfaits! -

      - -D'ailleurs, combien de vous avez traversé de lourdes épreuves et en êtes ressortis grandis ? - -

      - -Alors à vos crayons, à vos tapotements et reprenez les rênes de votre vie. -

      - -Bien amicalement, -

      - -Geneviève -

      - -

      Seconde intervision de l'Association Française EFT

      La seconde Intervision organisée par l'Association Française EFT se déroulera les Samedi 16 et Dimanche 17 Octobre 2010 à Lyon.

      -


      -

      -

      Pour les modalités d'inscription, lieu et tarifs, suivez l'onglet "Intervision" puis "Intervision 2010".

      -

      VIDEOS EFT en français : 

      -


      -

      -

      Plus que quelques exemplaires de la vidéo EFT en français de Louise Gervais.

      -

      Cette vidéo ne sera plus disponible après épuisement des stocks. Pour la commander, cliquez sur ce lien : 

      -

      Vidéo en français de Louise Gervais

      -

       

      - - - - -

      2-Message de Martine Mauvais

      -

      Bonjour à toutes et à tous,

      -  -Pensons-nous toujours à utiliser l'EFT pour nos « chères » vieilles mauvaises habitudes, nos comportements peu agréables pour autrui ... et pour nous-mêmes ? En effet parmi nos problèmes émotionnels, il n'y a pas que les traumatismes caractérisés ni les fortes angoisses qui nous gâchent la vie.
      -Arinda a pris conscience qu'une réaction fréquente, récurrente chez elle, ne « lui rendait pas service », comme l'on dit familièrement, et elle s'y est attaquée avec l'EFT, lorsqu'elle a réalisé à quel point cela la bloquait.
      -C'est un exemple à imiter : à la liste des évènements et des personnes que nous aurions pu éviter, que nous faisons pour la Procédure de Paix Personnelle, nous pourrions ajouter les réactions émotionnelles fréquentes dont la disparition nous libérerait et améliorerait notre vie.
      -Elle progresse dans son autotraitement parce qu'elle est attentive à son ressenti, et qu'elle tient compte de ses « glissements » pour modifier les phrases qu'elle formule : -

      EFT pour une juste colère -

      A expérimenter, n'est-ce pas ? - 

      -Bien amicalement à vous,

      -Martine Mauvais

      - - - - -

      3-Calendrier des formations EFT

      -

      Pour vous inscrire aux stages de Geneviève (désormais à Lyon part Dieu), réservés aux Professionnels de la Santé et de la relation d'Aide, aller à 

      -

      http://www.technique-eft.com/formations-eft-EFTbyWorkshop-France.php et cliquez sur le lien dans la colonne de gauche afin d'en découvrir les prix et modalités d'inscription.

      -

      Pour les personnes souhaitant apprendre l'EFT, pour leur développement personnel, pour elles-mêmes et leur entourage immédiat, retrouver le calendrier des formations de Véronique Waumans à cette adresse :  http://www.technique-eft.com/formations-eft-EFTbyWorkshop-France.php  
      -
      -Pour avoir les dépliants et tarifs des stages de Martine MAUVAIS, contactez-la directement par téléphone au 06 89 33 61 59 ou au 03 81 84 05 18. Son mail est actuellement indisponible.
      -
      -Même si c'est le retour de votre contrat de formation complété et signé accompagné du versement de votre acompte qui officialise votre réservation, sachez que cet acompte ne sera encaissé que 3 à 4 semaines avant la date du stage. Si votre formation doit être prise en charge par votre employeur pensez à nous demander une convention de formation dans les meilleurs délais. Ce type de démarche est toujours plus longue que celle d'un contrat de formation individuel.
      -

      -


      -

      -

      4-Divers EFT

      -

      -
    3. Vous avez rejoint le site récemment -

      Vous pouvez retrouvez les précédentes newsletters du site à cette adresse :

      -

      http://www.technique-eft.com/archives/index.php

      -

    4. -
    5. Les vidéos -

    6. -
    7. Il reste encore quelques exemplaires de la première vidéo EFT en français (jusqu'à épuisement du stock) sur le site de la Technique-EFT à l'adresse suivante : Vidéo en français EFT -

    8. -
    9. -

    10. -
    11. Même si aujourd'hui les vidéos de Gary Craig (en anglais) ne sont plus disponibles (stock épuisé et non renouvelé) ces vidéos sont en cours de traduction. Vous pourrez obtenir les premiers textes en français en les commandant à cette adresse http://www.psycho-energie.fr/index.php?option=com_content&view=category&id=58:traductions-des-dvd-de-gary-craig&Itemid=57&layout=default -

    12. -
    13. L'animation d'une ronde d'EFT en images -

    14. -
    15. Pour vous aider dans vos premiers pas avec l'EFT une animation en dessins est présente sur le site. Animation d'une session en images
      -
      -Pensez bien à la mentionner aux personnes à qui vous parlez de l'EFT afin qu'ils en bénéficient eux aussi pour leurs premiers pas avec cette merveilleuse technique. -

      -
      -

      Maigrir avec EFT     Arrêter de Fumer avec EFT     Cas concrets     Annuaire praticiens EFT     Archives     Infos Légales     Nous contacter

diff --git a/pages/archives/eft-news-juin-2008.php b/pages/archives/eft-news-juin-2008.php deleted file mode 100644 index 4e6a643..0000000 --- a/pages/archives/eft-news-juin-2008.php +++ /dev/null @@ -1,164 +0,0 @@ - -

Courrier de la Technique-EFT.com. Edition de Juin 2008.

- - -
  1. Message de Geneviève BALLY
  2. -
  3. Traductions du site de Gary Craig par Martine Mauvais
  4. -
  5. Calendrier des formations EFT
  6. -
  7. Divers
-
- -

1-Message de Geneviève BALLY

-

- -Bonjour à tous ! -

- - - -Nous voici déjà à la moitié de l'année, nos enfants se préparent à passer leurs examens. Beaucoup de stress dans l'air que l'EFT saura très vite calmer pour peu que l'on pense à s'en servir.

-Patricia Carrington s'est penchée sur la difficulté et les raisons qui peuvent nous empêcher d'utiliser l'EFT dans certaines situations de stress et d'émotion intense. -Un article que je vous invite à lire et à relire afin d'identifier vos facteurs déclencheurs de stress et de vous y préparer efficacement : -

- -Le Recours à EFT dans des Situations de Stress

- -

Le mois passé vous avez découvert notre nouvelle amie traductrice « Pluchette ». Ce mois-ci Pluchette vous propose la traduction de la Section 1 du « Palace des Possibilités ». Il s 'agit là de la première partie d'un document immense que Gary Craig propose sur son site, un véritable livre pour vous permettre de progresser dans la vie grâce à l'EFT. Cette traduction demandera au moins un an de travail afin de vous proposer la lecture de ce manuscrit en français. Nous procèderons par épisode au fil de l'avancement de ce fastidieux ouvrage.

-Vous savez que l'EFT vous permet de vous libérer de toutes émotions, croyances parasites etc... Découvrez maintenant comment utiliser l'EFT pour aller de l'avant. -

- -PALACE SECTION 1.pdf

- -

Ce document est protégé conformément au souhait de Pluchette. Je vous rappelle que vous pouvez retrouver Pluchette sur le nouveau forum « Les Amis de Simba » -

-Dana Chivers vous a proposé il y a quelques semaines une traduction qui a intéressé de nombreux lecteurs. Il s'agissait de la traduction proposant d'optimiser les facultés de notre cerveau.
-Aujourd'hui il vous propose d'atteindre vos objectifs grâce à l'EFT avec ce texte qui met en pratique quelques notions du Palace des Possibilités de Gary Craig. -

- -Atteindre ses objectifs grâce à l'EFT

- - -

Certains d'entre vous souffrent. Certaines douleurs sont quasi permanentes depuis de nombreux mois voire même, années. Voici un texte également traduit par Dana montrant les résultats obtenus par une praticienne n'ayant que quelques mois d'expérience. Je suis sûre que vous apprécierez ! -

- -Douleurs partout

- -

Je tiens à remercier les personnes qui proposent des traductions auprès de Martine. Sachez tous que votre aide est très précieuse car nous savons le temps que vous demande ce travail. Nous apprécions votre participation à proposer toujours plus de textes en français. C'est encourageant de voir comme chacun se sent concerné pour apporter sa pierre à ce bel édifice qu'est l'EFT. -

-Merci à tous. -

-A très bientôt -

-Amicalement -

-Geneviève -

- -

2-Traductions du site de Gary Craig par Martine Mauvais

-

- -Bonjour à toutes et à tous, -

-On parle quelquefois de « miracle-minute » à propos des résultats qu’obtient souvent l’EFT, d’une façon si radicale et rapide, qu’elle tranche complètement avec ce que nous avons l’habitude de voir avec les méthodes conventionnelles. En voici un bel exemple, avec un jeune dyslexique. Les praticiens en EFT ne prétendent pas être des spécialistes, et n’ont pas besoin de l’être, bien souvent, pour soulager sans risque quelqu’un qui est suivi médicalement par ailleurs, mais reste en détresse. -

- - Dyslexie : un garçon de 14 ans a de bons résultats scolaires après l’EFT. Un professeur l’appelle « Mon jeune Einstein » -

- - - -Steve Wells, d’Australie, qui pratique et enseigne l’EFT, s’en sert ici pour lui-même. Il découvre, ou redécouvre, qu’il n’y a pas à proprement parler d’émotions « négatives ». En fin ce compte toutes nos émotions sont à notre service : il suffit de les accepter même lorsqu’elles sont fortes, bouleversantes, de les écouter, et l’EFT nous offre un excellent moyen de les traverser plus vite et plus confortablement, tout en recevant les beaux cadeaux qu’elles recèlent et qui nous aident à évoluer. - -

- - Tapoter sur le chagrin mène à une compréhension et à un soulagement incroyables - -

- -Vous n’avez certainement pas résisté au désir d’aider vos proches dès le début de votre apprentissage de l’EFT : quel bonheur que de pouvoir les soulager, bien souvent, et quel amusement aussi de voir leur mine ébahie. Ron Ball n’a pas perdu son temps en allant voir ses vieux amis en Californie, comme vous allez le voir. Quelle chance d’avoir cet outil si pratique pour soulager la douleur. Comme il a de l’expérience il a su, pour une amie dont la convalescence était anormalement longue, en trouver les causes et les traiter. Mais pour les deux autres exemples, un débutant aurait très bien pu « faire le travail ». -

- - Gain de mobilité et douleur soulagée pour les amis de Ron Ball - -

- - -Lisez attentivement l’article suivant : Gabriele sait écouter les paroles de sa cliente, et elle se sert d’une approche originale pour découvrir la cause de ses maux de tête qui remontent à l’enfance, elle emploie ensuite l’EFT avec la technique du récit, le tout avec beaucoup de finesse. -

- -Utilisation de la couleur pour aller au problème de fond derrière des maux de tête - - -

- -20 minutes pour faire disparaître durablement PAR TELEPHONE une douleur constante très intense, qui dure depuis 8 mois et qui gâche la vie ! Voyez le « travail de détective » que mène avec persévérance Aileen Nobles pour découvrir la cause émotionnelle de cette douleur, car elle présuppose que quelque chose de spécial a dû se passer dans la vie de sa cliente au moment où la douleur s’est installée. C’est Marie Moysset qui nous offre la traduction de cet article : -

- - Huit mois de douleurs chroniques terminées en 20 minutes par téléphone : la cause était un problème émotionnel -

- - -Et c’est Monique Withers qui nous offre la traduction de l’article suivant : il avait attiré son attention parce qu’elle venait de se traiter une affection identique avec l’EFT ! Je lui ai demandé de nous raconter ce qu’elle avait fait elle-même pour se soulager de ce problème ennuyeux qu’est l’herpès, et les phrases qu’elle a employées vous intéresseront, j’en suis sûre. Son récit fait suite à l’article du site de Gary Craig. -

- - Utiliser l’EFT pour soulager un bouton de fièvre (Herpès HSV-1) - - -

- -J’ai observé que chaque personne qui avait eu de bons résultats avec cette « drôle » de technique qu’est l’EFT s’empressait de la proposer à ses proches et même parfois dans son milieu professionnel. J’ai été souvent surprise et ravie de constater à quelle vitesse l’information concernant l’EFT se propageait, chaque personne en parle à plusieurs, et chacune …etc…etc… Certaines en savent trois fois rien et obtiennent quand même quelques résultats. Etonnant, non ? Donc, soyez rassurés, nous n’aurons bientôt même plus l’air d’originaux quand nous tapoterons. Steve Wells, vous l’avez-lu, lui, qui co-anime un important site sur l’EFT en AUSTRALIE, a carrément tapoté sur son chagrin dans la rue ! -

-Bel encouragement à continuer à partager cette « drôle de petite technique ! ». -

-Beau mois de Juin ! Bien amicalement, -

-Martine Mauvais -

-

3-Calendrier des formations EFT

-

-Vous trouverez les formations que nous vous proposons en visitant la page http://www.technique-eft.com/formations-eft.php et en cliquant sur la date qui convient le mieux à votre emploi du temps afin d'en découvrir les prix et modalités d'inscription. -

-Même si c’est le versement de votre acompte qui officialise votre réservation, sachez que cet acompte ne sera encaissé que 3 à 4 semaines avant la date du stage.

-Pour avoir les dépliants et tarifs des stages de Martine, contactez-la directement à cette adresse : MMauv@aol.com

-Martine et moi avons choisi de vous proposer des stages de formation dont le contenu est approuvé par Gary Craig.
-Vous trouverez sur le site de emofree.com, les directives s’y rapportant. C’est à cette adresse : -workshop-guidelines et pour consulter la liste des formations approuvées par Gary Craig c'est à cette adresse : - -

- - -

-
-

4-Divers EFT

- -
  • Les vidéos
  • -

    La première vidéo EFT en fançais est toujours disponible sur le site de la Technique-EFT à l’adresse suivante : -Vidéo en français EFT - -

    -Vous pourrez également commander les vidéos en anglais de Gary Craig en cliquant ci-après. Un tarif dégressif vous est réservé selon le nombre de DVD commandé. -Vidéos en anglais de Gary Craig -

    -Ces vidéos représentent des heures de tournage sur de nombreux sujets traités lors des séminaires qu’organise Gary Craig. -

    -Ces vidéos sont en cours de traduction et vous pourrez obtenir les premiers textes en français en les commandant ici : -Premières traductions en français des vidéos de Gary Craig -

    - -
  • L'animation d'une ronde d'EFT en images
  • -

    - -Pour vous aider dans vos premiers pas avec l'EFT une animation en dessins est présente sur le site. Animation d'une session en images -

    -Pensez bien à la mentionner aux personnes à qui vous parlez de l’EFT afin qu’ils en bénéficient eux aussi pour leurs premiers pas avec cette merveilleuse technique. -

    -
  • Les prestations disponibles sur le site
  • -

    Vous le savez l’EFT peut également s’appliquer à distance. Pour cela vous trouverez plusieurs prestations directement par le biais de l’Internet, que ce soit pour vous aider dans la construction de votre première phrase EFT, pour un court accompagnement ou pour un suivi plus long qui vous permettra d’avancer considérablement dans votre démarche personnelle. - -

    -Vous trouverez de plus amples renseignements à cette adresse : -Besoin d'aide - -

    - - diff --git a/pages/archives/eft-news-juin-2009.php b/pages/archives/eft-news-juin-2009.php deleted file mode 100644 index e0021fe..0000000 --- a/pages/archives/eft-news-juin-2009.php +++ /dev/null @@ -1,33 +0,0 @@ -
    - - - - -
    Bonjour,
    -
     
    -
    Lors de notre dernier courrier, nous vous annoncions une formation franco-italienne : "Les Bases de l'EFT". 
    -
    Cette formation sera traduite simultanément, du français vers l'italien, afin de réunir aussi bien des français (ou francophones) que des italiens. 
    -
    Bien sûr tous les documents papier seront également traduits pour nos amis italiens présents à ce stage. 
    -
    Ce fastidieux travail, je le dois tout d'abord, à Amanda,... et également à Lucia et à Chiara, qui ont grandement participé à la relecture et aux préparatifs. Merci à ce beau trio!
    -
     
    -
    Cette formation, en tout point identique à celles que vous pouviez suivre à Voiron jusqu'à présent, et que vous pourrez suivre, à Lyon dès septembre, se distingue par son lieu qui fleure bon les vacances, et les deux pauses "relaxation" post-déjeuner, qui ponctueront le stage afin de profiter au maximum de cet endroit fortement énergétique.
    -
     
    -
    En effet, nous avons pensé, qu'en période estivale, il serait sympathique de joindre l'utile à l'agréable.
    -
     
    -
    Vous trouverez à cette page http://www.technique-eft.com/stage-italie.php toutes les informations pratiques concernant ce stage de formation, maintenant au point, ainsi qu'un lien vous permettant de découvrir la région.
    -
     
    -
    Amanda et moi-même, nous tenons à votre disposition pour tout renseignement complémentaire.
    -
     
    -
    Comme toutes les formations que j'anime, les places sont limitées, afin que chacun bénéficie au mieux de l'enseignement de la technique. 
    -
    Aussi, si cette aventure vous tente, je vous invite à remplir rapidement, le formulaire présent au bas de la page http://www.technique-eft.com/stage-italie.php,  pour une inscription en ligne.
    -
     
    -
    Dans l'attente du plaisir de faire votre connaissance,
    -
     
    -
    Bien amicalement
    -
     
    -
    Geneviève
    -
     
    -
     
    -
     
    - -
    \ No newline at end of file diff --git a/pages/archives/eft-news-juin-2010.php b/pages/archives/eft-news-juin-2010.php deleted file mode 100644 index 654d83d..0000000 --- a/pages/archives/eft-news-juin-2010.php +++ /dev/null @@ -1,341 +0,0 @@ -

    Technique-EFT.comCourrier de la Technique-EFT.com. -Edition de Juin 2010

    -
      -
    1. Le courrier de Geneviève Gagos
    2. -
    3. Le courrier de Martine Mauvais
    4. -
    5. Calendrier des formations -EFT
    6. -
    7. Divers
    -
    -

    1-Message de -Geneviève Gagos

    -

    Bonjour à tous,

    -

    Ce début de mois de juin, voit se concrétiser le départ de Gary Craig. Dans son dernier courrier, très bref, il nous donne rendez-vous pour son annonce, ce 4 juin. Le temps pour lui, de terminer la mise en place des sections de son site qu'il laissera à disposition, après son départ.  

    -

    Par contre, Il a clôturé la certification, au 31 mai 2010.  Vous pouvez encore consulter la liste des praticiens certifiés par Gary Craig, sur son site emofree.com, en choisissant : EFT Practitioner Listing, (ou http://www.emofree.com/Practitioners/) puis le pays dans lequel vous recherchez un praticien certifié.

    Rendez-vous au 4 Juin 2010, pour l'annonce de Gary Craig. - -

    -


    -

    -

    Je vous propose une petite parenthèse sur le thème "Je m'aime et je m'accepte complètement", cette partie de phrase parfois délicate, pour certains. 

    -
    -


    -

    -

    Je m'aime et je m'accepte complètement

    -


    -

    -

    2- Puis un autre sujet qui me tient particulièrement à coeur sur l'EFT et sa pérennité. 

    -


    -

    -

    Pour ce faire, je vous joins une présentation de l'association Amavie. 

    -


    -

    -

    Amavie qui a pour président Nicolas Lemoine, est un trait d'union entre les techniques alternatives et les assurances et mutuelles. Elle est, à mon avis, une des portes d'entrée pour l'EFT, pour la prise en compte par tous, de cette technique qui nous tient à coeur. 

    -


    -

    -

    En unissant notre action avec celle de Amavie, nous gravirons une nouvelle marche pour la diffusion de l'EFT, à un plus large public, encore, et vers sa reconnaissance comme une technique des plus prometteuses. Je laisse la parole à Nicolas Lemoine pour vous présenter :

    -


    -

    -

    l' Association AMAVIE

    -


    -

    -


    -

    -

    Ce dernier point concerne les vidéos de Gary Craig.

    -


    -

    -

    Le système mis en place sur le site de l'Association Française EFT fonctionne très bien. Vous êtes déjà nombreux à avoir pu profiter de ces copies de vidéos.

    -


    -

    -

    Lutz Foerster me fait part d'une possibilité intéressante, au sujet de ce travail de copie. Car il faut bien l'avouer s'en est un. Cela demande beaucoup de temps et d'application.

    -

    Lutz a découvert une astuce pour ne copier que les fichiers importants. Ce qui fera gagner un temps considérable, aux bonnes volontés qui se sont engagées dans ce travail de partage de vidéos.

    -


    -

    -

    Vous trouverez à cette page la description de ce "raccourci". Merci à Lutz.

    -


    -

    -

    Pour copier les vidéos de Gary Craig

    -

    A très bientôt pour la suite de l'aventure EFT...

    -

    Bien amicalement 

    -


    -

    -

    Geneviève

    -


    -

    -

    "Je m'aime et je m'accepte complètement"

    -

    J'ai reçu ces jours, le mail de ce nouveau programme. J'ai beaucoup aimé ! J'ai donc, souhaité le partager avec vous.

    -

    J'ai demandé à la personne qui me l'avait envoyé, quel en était l'auteur. Elle m'a répondu que l'auteur était inconnu. Dommage ! car je l'aurais volontiers, cité.

    -


    -

    -

    Ce nouveau programme revêt le premier requis afin de s'ouvrir aux autres : commencer par s'aimer soi-même.

    -


    -

    -

    Vous savez, c'est ce qui dans l'EFT et si difficile à dire, ... au début en tout cas. Car très vite, on sent les barrières se lever, et nous progressons dans cet amour et cette acceptation de soi.

    -


    -

    -

    Bien sûr, cela bouscule, nos croyances : s'aimer soi-même, quel égoïsme !

    -


    -

    -

    Mais si être égoïste veut dire : je fais le nécessaire pour être bien, afin d'être ainsi, mieux avec les autres, plus à l'écoute, plus en empathie, alors moi, je prends ! Vive l'égoïsme ! 

    -

    En fait, en d'autres termes, les mêmes qui parleraient d'égoïsme, vous direz de balayer d'abord, devant votre porte, si vous tentiez un conseil en leur direction. Alors, finalement, tout le monde est d'accord !

    -


    -

    -

    Voici ce mail  (si vous préférez passer directement à la suite du message cliquez ici : "suite", mais dommage, car c'est très sympathique)

    -


    -

    -

    « Client : Oui ? Le service Clientèle ?

    -


    -
    Employé : Oui, bonjour ! Que puis-je faire pour vous ?

    -


    -C : En révisant mon système, j'ai trouvé un logiciel appelé AMOUR, mais je ne sais pas comment il fonctionne. Pouvez-vous m'aider ?

    -


    -
    E : Bien sûr ! Mais je ne peux pas vous l'installer. Vous devrez le faire vous-même. Je vous donnerai les instructions par téléphone, d'accord ?

    -


    -C : Oui, je peux essayer. Je ne m'y connais pas beaucoup en informatique, mais je suis prêt à l'installer maintenant.

    -

    Par où dois-je commencer ?

    -


    -
    E : Le premier pas est d'ouvrir votre COEUR. L'avez-vous trouvé ?

    -


    -
    C : Oui, voilà. Mais il y a plusieurs programmes qui tournent maintenant.

    -

    Est-ce qu'il a un problème pour l'installer pendant qu'ils continuent ?

    -


    -
    E : Quels programmes ?

    -

     

    -

    C : Un petit instant, je regarde.

    -

    PEINE PASSEE.EXE, BASSE ESTIME.EXE, COLERE.EXE et RESSENTIMENT.COM tournent à ce moment.

    -


    -
    E : Pas de problème. AMOUR effacera automatiquement PEINE PASSEE.EXE de votre système d'exploitation actuel. Il se peut qu'il reste dans le disque dur, mais il n'affectera plus d'autres programmes. AMOUR finira par remplacer BASSE ESTIME.EXE avec un programme incorporé appelé HAUTE ESTIME.EXE. Cependant, vous devez désactiver complètement les programmes COLERE.EXE et RESSENTIMENT.COM. Ces programmes empêchent l'installation correcte de "AMOUR".

    -

    Pouvez-vous les arrêter maintenant ?

    -


    -C : Je ne sais pas comment. Pouvez-vous me dire comment les arrêter ?

    -


    -
    E : Avec plaisir. Allez au menu DEMARRER et activez PARDON.EXE. Exécutez-le autant de fois que nécessaire jusqu'à ce que COLERE.EXE et RESSENTIMENT.COM soient complètement effacés.

    -


    -
    C : C'est fait ! AMOUR a commencé à s'installer automatiquement. Est-ce normal ?

    -


    -
    E : Oui. Vous aurez bientôt un message disant qu'AMOUR sera actif aussi longtemps que COEUR subsiste.

    -

    Avez-vous ce message ?

    -


    -C : Oui, je l'ai ! Est-ce que l'installation est finie ?

    -


    -
    E : Oui, mais souvenez-vous que vous n'avez que le programme de base. Vous devez maintenant commencer à vous connecter à d'autres COEURS pour recevoir des actualisations.

    -


    -C : Oh là là ! Je reçois un message d'erreur. Qu'est-ce que je fais ?

    -


    -
    E : Que dit le message d'erreur ?

    -


    -C : Il dit : "ERREUR 412 - PROGRAMME NON ACTIF EN COMPOSANTES INTERNES". Qu'est-ce que cela veut dire?

    -


    -
    E : Pas de panique ! C'est un problème courant. Cela signifie que "AMOUR" est configuré pour l'exécution avec des COEURS extérieurs, mais n'a pas été exécuté dans votre propre COEUR. C'est une étape un peu complexe de la programmation, mais dit en mots simples, cela veut dire que vous devez "AIMER" votre propre système avant de pouvoir "AIMER" les autres.

    -


    -C : Alors, que dois-je faire ?

    -


    -
    E : Pouvez-vous localiser le logiciel "AUTO ACCUSATION" ?

    -


    -C : Oui, je l'ai.

    -


    -
    E : Formidable. Vous apprenez vite !

    -


    -C : Merci.

    -


    -
    E : De rien. Cliquez dans les fichiers suivants pour les copier dans votre répertoire COEUR : AUTO-PARDON.DOC, AUTO-ESTIME.TXT, VALEUR.INF et RÉALISATION.HTM. Le système remplacera tout fichier incompatible et activera une restauration de tout fichier défectueux.

    -

     

    -

    Egalement, vous devez effacer AUTO-CRITIQUE.EXE de tous vos répertoires, et vous pouvez effacer tous les fichiers temporaires de la corbeille, pour vous assurer qu'il soit totalement effacé et ne puisse jamais se réactiver.

    -


    -
    C : Compris ! Hé ! MON COEUR est en train d'activer des fichiers très jolis ! SOURIRE.MPG s'active sur le moniteur et indique que CHALEUR.COM, PAIX.EXE et BONHEUR.COM se copient dans mon répertoire COEUR.

    -


    -
    E : Cela indique que "AMOUR" est en train de s'installer et de s'exécuter. Maintenant vous pouvez vous débrouiller par vous-même.

    -

    Encore une chose, avant de vous quitter...

    -


    -C : OUI ?

    -


    -
    E : AMOUR est un logiciel gratuit. Assurez-vous de le donner, avec tous ses modules, à toute personne que vous connaissez. A leur tour, ils vont le partager à d'autres, et vous recevrez des modules très agréables en retour.

    -


    -
    C : Je vais le faire. Merci de votre aide ! »

    -

    (fin de citation)

    -


    -

    -

    ....Eh oui ! il faut donner, pour recevoir ! 

    -


    -

    -

    Vous l'aurez compris, tous les programmes parasites tels que : basse.estime.exe ; peine.passee.exe ; colere.exe ; ressentiment.exe : peuvent être efficacement, effacés par l'EFT... et c'est ce que je vous invite à faire en ces périodes où tout semble s'accélérer. 

    -


    -

    -


    -

    -

    Mais je débute en EFT, et je ne peux vraiment pas dire : "je m'aime et je m'accepte complètement".

    -


    -

    -

    Tout d'abord, sachez qu'il n'est pas nécessaire de croire cette partie de la phrase pour qu'elle fonctionne. Toutefois, dans ma pratique, j'ai pu constater, que lorsque cette portion de phrase était difficile à dire, la personne ne pouvait se concentrer sur le problème qu'elle souhaitait résoudre.

    -


    -

    -

    Vous pourrez donc, sans empiéter sur l'efficacité de l'EFT, utiliser une formule, plus acceptable pour vous, comme :

    -


    -

    -

    Je veux bien essayer de m'accepter,

    -

    Je choisis* d'accepter mes sentiments,

    -

    Je choisis* de l'accepter finalement

    -

    Je choisis* d'être ok, avec ce sujet,

    -

    Je choisis* d'accepter certaines parties

    -

    Je choisis* d'accepter ce que je ressens...

    -


    -

    -

    Ou tout autre formule, permettant cette phrase ce début d'acceptation de soi, avec le problème.

    -


    -

    -


    -

    -

    *Notez, ici, qu'il ne s'agit pas, de la technique dite "le trio de choix de Patricia Carrington" mais d'une adaptation correcte, de la partie de la phrase d'installation :"Je m'aime et je m'accepte complètement".

    -


    -

    -

    L'expression "je choisis" est puissante, car on aime tous, avoir le choix.

    -


    -

    -


    -

    -

    Association Amavie

    -

    -
    -
    -

    Madame, Monsieur, Docteur,

    -

     

    -

    Notre objectif principal est d'obtenir la reconnaissance des médecines naturelles et leur participation au débat sur la santé en France.

    -

     

    -

    Le moyen choisi pour y parvenir est d'apporter une visibilité aux mutuelles et compagnies d'assurances qui souhaitent, à la demande de leurs adhérents, s'investir dans des offres santé intégrant ces médecines naturelles pour les particuliers et les entreprises.

    -

     

    -

    La Mutuelle CCMO nous a fait confiance. Un grand groupe d'assurances et les mutuelles qu'ils réassurent vont s'engager et signer un partenariat avec nous.

    -

     

    -

    Aujourd'hui, notre annuaire est ce lien de transparence entre les praticiens et les mutuelles et compagnies d'assurances.

    -

     

    -

    Nous vous invitons à devenir adhérent de l'association en remplissant les conditions demandées à la rubrique « Devenez adhérent » sur notre site www.amavie.org.

    -

     

    -

    Aussitôt votre enregistrement confirmé par e-mail, votre nom et vos coordonnées s'afficheront sur l'annuaire et vous recevrez la plaquette « membre agréé »  à apposer dans votre salle d'attente.

    -

     

    -

    Dans l'attente de vous compter parmi nos membres, je vous prie d'agréer mes sincères salutations.

    -

     

    -

    Nicolas Lemoine
    -Président de l'association amavie
    -
    nicolas.lemoine@amavie.org
    -tel : 09 65 24 06 37
    -mobile : 06 98 24 21 10

    -


    -

    -

    -

    Siret : 510 715 998 00025

    -

    Chemin de l'Aube 26150 DIE

    -

    -
    -

    -
    -
    VIDEOS EFT en français : 
    -

    -
    Les 50 derniers exemplaires de la vidéo EFT en français de Louise Gervais.
-
    Cette vidéo ne sera plus disponible après épuisement des stocks. Pour la commander, cliquez sur ce lien : 
-
Vidéo en français de Louise Gervais
-
-
 
-
A très bientôt
-

Bien amicalement

-
Geneviève
-

-
-
-
-

2-Message de -Martine Mauvais

-

-

Vous rencontrez souvent des personnes sceptiques au sujet de l'EFT ? Madeleine Allen a reçu un client dans cet état d'esprit, et comme elle était débutante en EFT elle a bien failli abandonner tant il trouvait cette technique stupide, et il n'était pas spécialement docile. Cet article vous encouragera, je le crois, à ne plus vous émouvoir des rires moqueurs !

-


-

-

Le court commentaire de Gary Craig insiste une fois de plus sur son leitmotive favori ...et justifié : recherchez et traitez un événement spécifique antérieur au problème. Car, même lorsqu'on obtient un résultat satisfaisant en ne le faisant pas, il peut n'être pas durable si on n'a pas traité le problème de fond.

-


-

-

EFT et colère au travail

-


-

-

Profitez tant que vous le pouvez de ce beau Printemps !

-

Bien amicalement à vous, 

-

Martine -Mauvais

-
-
-

martine.mauvais@sfr.fr

-

-
-

3-Calendrier des -formations EFT

-

Pour vous inscrire aux stages de -Geneviève (désormais à Lyon part Dieu), réservés aux Professionnels de la Santé et de la relation d'Aide, aller à
-

-

http://www.technique-eft.com/formations-eft-EFTbyWorkshop-France.php et -cliquez sur le lien dans la colonne de gauche afin d'en -découvrir les prix et modalités -d'inscription.

-

Pour les personnes souhaitant apprendre l'EFT, pour leur développement personnel, pour elles-mêmes et leur entourage immédiat, retrouver le calendrier des formations de Véronique Waumans à cette adresse :  http://www.technique-eft.com/formations-eft-EFTbyWorkshop-France.php  
-
- - - -Pour avoir les dépliants et tarifs des stages de Martine -MAUVAIS, contactez-la directement à cette adresse : martine.mauvais@sfr.fr
-
- - - -Même si c'est le retour de votre contrat de formation -complété et signé -accompagné du versement -de votre acompte qui officialise votre réservation, sachez -que -cet acompte ne sera encaissé que 3 à 4 semaines -avant la -date du stage. Si votre formation doit être prise en charge -par -votre employeur pensez à nous demander une convention de -formation dans les meilleurs délais. Ce type de -démarche -est toujours plus longue que celle d'un contrat de formation individuel.
-

-
-

4-Divers EFT

-
    -
  • Vous avez rejoint le site -récemment
- - - -Vous pouvez -retrouvez les précédentes newsletters du site -à -cette adresse :
-
http://www.technique-eft.com/archives/index.php -
-
    -
  • Les vidéos
  • -

    Il reste encore quelques exemplaires de la première -vidéo EFT en -français (jusqu'à épuisement du stock) sur le site de la -Technique-EFT -à l'adresse suivante : Vidéo -en français EFT

-

-
- diff --git a/pages/archives/eft-news-mai-2008.php b/pages/archives/eft-news-mai-2008.php deleted file mode 100644 index 6818727..0000000 --- a/pages/archives/eft-news-mai-2008.php +++ /dev/null @@ -1,152 +0,0 @@ - -

Courrier de la Technique-EFT.com. Edition de Mai 2008.

- - -
  1. Message de Geneviève BALLY
  2. -
  3. Traductions du site de Gary Craig par Martine Mauvais
  4. -
  5. Calendrier des formations EFT
  6. -
  7. Divers
-
- -

1-Message de Geneviève BALLY

-

- -Bonjour à tous ! -

- -Vous avez très certainement remarqué qu’un forum avait vu le jour sur le site de la Technique-EFT.com. Beaucoup ont été déçus de constater qu’il était uniquement réservé aux professionnels de l’EFT ayant suivi un « Niveau 3 Approuvé ».
-Je n’ai malheureusement pas le temps de modérer un forum ouvert à tous et ce choix a été fait afin d’offrir aux stagiaires « Niveau 3 Approuvé » un moyen de mettre en commun leur expérience professionnelle. -

-Mais si je vous parle de cela maintenant ce n’est pas pour vous ennuyer mais pour faire le lien avec un forum qui lui par contre est ouvert à tous et vous attend. Il s’agit de : « Les Amis de Simba » -

-Pluchette qui anime ce forum a rejoint le site de la Technique-EFT.com afin de nous proposer les traductions qu’elle a réunies au cours de ces trois dernières années.
-Vous trouverez désormais sur le site de la Technique-EFT également des textes traduits par « Pluchette » comme elle a choisi de se nommer.
-Ses traductions sont d’une belle qualité et elle n’hésite pas à s’adresser à Gary Craig lorsqu’elle rencontre un mot plus difficile à cerner afin d’être sûre de le traduire le plus fidèlement possible. -

-Je vous propose donc dès à présent de découvrir trois de ses traductions qui je suis sûre intéressera bon nombre d’entre vous. -

-Jamala Rose est une de ces personnes qui ont tellement souffert que l’on pourrait croire que rien ni personne ne saurait l’aider. Jamala s’est prise elle-même en main et a utilisé l’EFT sur tout ce qui lui venait à l’esprit, elle a persisté, persisté, persisté…découvrez les résultats ainsi obtenus. -

-Une novice en EFT élimine ses propres Syndromes de Stress Post-Traumatiques -

-Heureusement nous n’avons pas tous la même histoire que Jamala, bien que je sais que beaucoup se reconnaîtront malgré tout. -Je vous invite ici à prendre le temps, prendre le temps d’utiliser l’EFT en tout conscience afin d’obtenir des résultats magnifiques.
-A travers ce texte de Silvia Hartmann-Kent vous apprendrez une autre manière de s’appliquer l’EFT à soi-même tout en couvrant un maximum d’aspects autour du même problème. - -

-EFT en douceur pour se traiter soi-même -

-Depuis ce début d’année 2008 nous avons beaucoup parlé de la Loi d’Attraction aussi je vous propose ici un texte également transmis et traduit par Pluchette. Voyez comme 68 secondes peuvent avoir une influencer bénéfiquement votre manière de pensée et mettez à profit l’espace paisible libéré par l’EFT pour construire votre avenir. - -

- -Combiner EFT et création consciente - -

- - - - - - -

Pour satisfaire vos demandes

-

Vu le nombre de demandes pour continuer la formation EFT et faire unniveau 2 j'ai modifié la spécificité de la première formation de septembre. Cette modification a été approuvé par Gary Craig. Les formations de septembre sont de ce fait : -13 et 14 Septembre Niveau 2 Approuvé, et 27 et 28 Septembre Niveau 1 Approuvé. Même si ces dates vous paraissent encoreloin pensez bien à réserver vos places rapidement si ces formations vous intéressent.
-Sachez toutefois que si les chèques d'acompte permettent de confirmer votre inscription ils ne sont encaissés que trois ou quatre semaines avant la date du stage.

-Amicalement -

-Geneviève - -

-

2-Traductions du site de Gary Craig par Martine Mauvais

-

-Bonjour à toutes et à tous, -

-Voici les articles que j’ai choisis et traduits pour vous, sauf le dernier qui a été choisi et traduit par une nouvelle venue à l’EFT, qui l’apprécie beaucoup, et souhaite ainsi participer à sa diffusion. -

-Le premier article nous montre que le traitement d’une dépendance doit prendre en compte non seulement les causes de son installation, mais aussi tous les facteurs qui ont entourés les diverses tentatives de sevrage. Notez qu’elle travaille sur elle-même, en pleine crise de manque, avec la procédure EFT : -

- - Comment un besoin de cigarettes a conduit à une très importante libération émotionnelle -

- -Nous avons parlé de la loi d’attraction le mois dernier : voici un bel exemple de sa pertinence. Cette histoire peut-être utile aux personnes qui vivent des échecs à répétition dans un domaine ou l’autre de leur vie. -Remarquez que la praticienne pose à sa cliente ce qui est souvent LA question clé : quelle est la première fois où (elle a eu ce problème) ?
-Cette courte histoire présente un autre aspect exemplaire : la cliente va tapoter sur les phrases qu’elle a entendues et prises pour « argent comptant », qui sont à l’origine de ses croyances limitantes et donc de son comportement gênant : -

- - La jeune femme qui quittait tous ses emplois -

- -Qui d’entre vous n’a rêvé, sans oser essayer de le faire, de convaincre un professionnel de santé de l’efficacité de l’EFT ? …Ah, vous aussi ? Alors je suis sûre que vous apprécierez l’histoire suivante, régalez-vous ! -

- - Un médecin sceptique voit disparaître son besoin compulsif de sucreries -

- -L’insomnie est un gros problème pour de nombreuses personnes, c’est pourquoi Monique a choisi de vous offrir cette histoire. Vous pourriez être étonnés de l’humour qu’emploie magnifiquement la praticienne : il est provocateur, mais se révèle très efficace : -

- - Jérôme finit par dormir après trois ans d’insomnie sévère -

- -L’étude attentive des exemples d’emploi de l’EFT vous aidera à améliorer votre pratique, à faire davantage confiance à votre intuition et à votre créativité, en adaptant la procédure de base à votre usage et aux cas très divers que vous pourrez rencontrer. -

-A ce propos, je ne résiste pas au plaisir de terminer sur une citation : -

-« La folie, c’est de faire et refaire continuellement la même chose en s’attendant -à obtenir des résultats différents.» Albert Einstein -

-Beau mois de Mai, -

-Bien amicalement, -

-Martine MAUVAIS - -

-

3-Calendrier des formations EFT

-

Les dates de formation pour le second semestre 2008 sont en ligne. Il reste encore quelques petites places pour le premier semestre.
-Vous les trouverez en visitant la page http://www.technique-eft.com/formations-eft.php et en cliquant sur la date qui convient le mieux à votre emploi du temps afin d'en découvrir les prix et modalités d'inscription. -

-Même si c’est le versement de votre acompte qui officialise votre réservation, sachez que cet acompte ne sera encaissé que 3 à 4 semaines avant la date du stage.

-Pour avoir les dépliants et tarifs des stages de Martine, contactez-la directement à cette adresse : MMauv@aol.com

-Martine et moi avons choisi de vous proposer des stages de formation dont le contenu est approuvé par Gary Craig.
-Vous trouverez sur le site de emofree.com, les directives s’y rapportant. C’est à cette adresse : -workshop-guidelines -

- - -

-
-

4-Divers EFT

- -
  • Les vidéos
  • -

    La première vidéo EFT en fançais est toujours disponible sur le site de la Technique-EFT à l’adresse suivante : -Vidéo en français EFT - -

    -Vous pourrez également commander les vidéos en anglais de Gary Craig en cliquant ci-après. Un tarif dégressif vous est réservé selon le nombre de DVD commandé. -Vidéos en anglais de Gary Craig -

    -Ces vidéos représentent des heures de tournage sur de nombreux sujets traités lors des séminaires qu’organise Gary Craig. -

    -Ces vidéos sont en cours de traduction et vous pourrez obtenir les premiers textes en français en les commandant ici : -Premières traductions en français des vidéos de Gary Craig -

    - -
  • L'animation d'une ronde d'EFT en images
  • -

    - -Pour vous aider dans vos premiers pas avec l'EFT une animation en dessins est présente sur le site. Animation d'une session en images -

    -Pensez bien à la mentionner aux personnes à qui vous parlez de l’EFT afin qu’ils en bénéficient eux aussi pour leurs premiers pas avec cette merveilleuse technique. -

    -
  • Les prestations disponibles sur le site
  • -

    Vous le savez l’EFT peut également s’appliquer à distance. Pour cela vous trouverez plusieurs prestations directement par le biais de l’Internet, que ce soit pour vous aider dans la construction de votre première phrase EFT, pour un court accompagnement ou pour un suivi plus long qui vous permettra d’avancer considérablement dans votre démarche personnelle. - -

    -Vous trouverez de plus amples renseignements à cette adresse : -Besoin d'aide - -

    - diff --git a/pages/archives/eft-news-mai-2009.php b/pages/archives/eft-news-mai-2009.php deleted file mode 100644 index 53a8c99..0000000 --- a/pages/archives/eft-news-mai-2009.php +++ /dev/null @@ -1,474 +0,0 @@ - - - - - -
    -

    Technique-EFT.comCourrier de la Technique-EFT.com. -Edition de Mai 2009.

    -
      -
    1. Message de -Geneviève GAGOS-BALLY
    2. -
    3. Le courrier de Martine -MAUVAIS
    4. -
    5. Calendrier des formations -EFT
    6. -
    7. Divers
    -
    -

    1-Message de -Geneviève Gagos-Bally

    -
    Bonjour à tous!
    -
     
    -
    Je ne sais pas ce qu'il en est pour vous, mais ici, le temps passe à une vitesse grand V. Déjà la fin du mois de Mai, alors que nous profitons tout juste, de belles journées ensoleillées.
    -
     
    -
    Heureusement les projets EFT fleurissent à la même vitesse, même si certains demanderont encore un peu de temps pour se concrétiser. 
    -
     
    -
    Avec l'approche du mois de juin, et des mois d'été, on commence à penser aux vacances.
    -
    A ce sujet, si vous ne savez pas encore que faire durant cette période, je vous invite à vous pencher sur cette proposition.
    -
    En effet, avec Amanda Castello, (dont vous avez fait connaissance il y a quelques semaines déjà) nous vous concoctons un stage de formation "Les bases de l'EFT " couplé avec des moments de relaxation comme elle en a le secret, et ceci... dans un cadre des plus agréables. Eh oui! qui dit vacances, dit: "on oublie le train-train quotidien!"
    -
    Alors que diriez-vous de conjuguer, plaisir, et apprentissages à La Bagnata, à Bettola, en Italie ? 
    -
    Vous pourrez profiter du déplacement pour rester quelques jours et visiter cette belle région d'Italie.
    -
    Ce stage spécial sera en traduction simultanée, franco-italienne, et rassemblera bien sûr, français et italiens.
    -
    Les dates arrêtées sont : du vendredi 24 juillet - fin d'après-midi, pour une prise de contact et la distribution des lieux de séjour dans les gîtes tout autour, au lundi 27 juillet midi. Les repas du midi seront pris ensemble à "La Bagnata". Ceux du soir, seront libres.
    -
     
    -
    Si vous êtes intéressé, par cette première en Italie, vous pouvez dès à présent vous faire connaître. Soit auprès d'Amanda ( amandaprimavera@aim.com) soit auprès de moi-même (genevieve.gagos@technique-eft.com). Nous vous ferons parvenir toutes les informations nécessaires dans les meilleurs délais. 
    -
    Comme à l'habitude, lors d'une formation EFT respectant les directives de Gary Craig, les places sont limitées afin que chacun profite au maximum de l'enseignement. 
    -
    Donc, à vos agendas et réservez votre place dès maintenant, pour faire partie de cette belle aventure italienne !
    -
     
    -
    Témoignage : 
    -
    Le printemps est un moment où les allergies foisonnent : les nez coulent, les yeux pleurent, les salves d'éternuements se font entendre, les réactions cutanées se multiplient... Mais aujourd'hui, vous pouvez décider de vous passer de ces misères...
    -
    J'ai eu l'occasion dernièrement de travailler à distance par échange de mails avec une personne atteinte d'une réaction cutanée datant d'un an déjà. Une année entière, à être gênée par cette allergie, que les traitements appliqués jusqu'alors, n'ont pas résolue. Je vous propose le retranscrit de ce suivi, bien sûr, en accord avec la personne concernée par ce travail.
    -
     
    - -
     
    -
    A très bientôt
    -
     
    -
    - -Bien amicalement
    -
    -

    - - - -Geneviève
    -
    -

    2-Le courrier -de Martine Mauvais

    -

     

    -

    Bonjour -à tous,

    -

    Mon -appel a été entendu ! Voici d'autres témoignages français -sur l'EFT ! Une preuve de plus que l'EFT commence vraiment à -s'enraciner en France et à s'y répandre. Rien ne peut me faire -plus plaisir, et je me réjouis de les partager avec vous.

    -

    Marie-Laurence -Moysset, de Haute-Savoie, m'a envoyé le récit de son tout récent -et cuisant contact avec des méduses tropicales. Voici -le récit de son expérience personnelle de l'efficacité de -l'EFT sur des brûlures de méduses.

    -

     

    -

    Brûlures -de méduses aux Philippines et EFT

    -

     
    -J'étais -aux Philippines pendant quelques semaines et j'ai passé une -journée à la mer durant mon séjour. j'étais ravie de pouvoir -me baigner en eau chaude, mais on m'avait prévenue dès mon arrivée -de la présence de méduses, c'était "la saison des -méduses".
    -On me conseillait plutôt la piscine...

    -

    Zut!

    -

     
    -Mais -mon envie d'eau salée a été la plus forte. Mon premier bain s'est -parfaitement passé. Le second a rapidement été douloureux: à -peine 5 brasses et je ressentais une brûlure intense sur la -cuisse puis immédiatement une 2e sur le mollet et la 3e sur le -poignet. je suis sortie très rapidement de l'eau et sur la plage, -j'ai immédiatement tapoté en EFT en disant les phrases suivantes -sur le point de karaté:

    -"Même si je me suis fait -brûler par les filaments d'une méduse, même si je sais que -son poison peut être plus fort que celui des méduses de chez -nous (d'eau tempérée), même si j'ai peur que la brûlure se -transforme en plaie purulente (à cause de la chaleur) qui aura du -mal à cicatriser, même si j'ai peur de devoir porter des vêtements -qui vont frotter sur ces brûlures et les transformer en plaie, je -m'accepte et je me pardonne de ne pas avoir écouté les conseils que -l'on m'avait pourtant bien donnés".

    -


    -et -j'ai tapoté 3 ou 4 passages raccourcis: "ces brûlures" -comme mots de rappel.

    -et j'ai continué avec mes phrases -sur le point de karaté:

    -

     
    -"Même -si ça brûle, que ça gonfle et que ça pique je m'aime et je -m'accepte profondément et complètement".

    -


    -"ça -brûle, ça pique" comme mot de rappel

    -la sensation -de brûlure commençait déjà à s'amoindrir.

    -J'ai -continué en regardant la mer avec:
    -"Même si j'ai peur de me -remettre à l'eau, même si je t'en veux à toi, la Mer, de ne pas -m'avoir protégée, je m'accepte et je me pardonne de ressentir cette -rancoeur ridicule".

    -

    -mot -de rappel: "cette rancoeur, cette peur"

    -La -brûlure avait disparu. Elle se transformait en démangeaison qui, à -chaque passage, s'amoindrissait.

    -Je continuais en -regardant les 3 zones touchées (ma cuisse, mon mollet, mon -poignet):

    -"Même si ça me démange encore, j'ai -confiance que ça va continuer à partir, et que je n'aurai pas de -brûlure, ni plaie, ni boursouflure".
    -mots de rappel: -"confiance que ça va partir", "confiance", -"démangeaison".

    -En 10 mn toute sensation de -brûlure, de démangeaison et de grosses boursouflures avait -disparu. Une merveille.
    -Plus tard je me suis douchée, séchée -et frottée avec une serviette, habillée sans penser à ces -brûlures, ou en y jetant un coup d'oeil amusé de constater que le -poison n'avait pas eu prise sur moi.

    -Plus tard dans la -soirée, plusieurs des personnes qui m'accompagnaient et qui avaient -été témoins de ma session d'EFT d'urgence sont venues me demander -des nouvelles de ma santé; je ne comprenais pas de crois ils -voulaient parler. Il a fallu qu`ils me demandent: "les méduses" -?!! Et je leur montrais les marques à peine visibles et sans -aucune douleur ou gêne physique. durant les jours qui ont suivi, le -reste de marques de la cuisse s'est peu à peu envolé (celles -du mollet et du poignet sont parties le jour même).

    -Merci -à Gary et sa merveilleuse technique. Merci de me conforter dans la -confiance que je développe de l'efficacité de l'EFT, si j'en -doutais encore.

    -Marie-Laurence Moysset (élève de -Martine Mauvais)

    -

    Marie-Laurence -m'a aussi raconté l'histoire suivante et je lui ai demandé de -l'écrire pour vous : sans cet outil « portatif » -qu'est l'EFT à sa disposition qu'aurait-elle pu faire pour -aider cette maman paniquée avec son bébé d'environ 8 mois, pris -de convulsions, loin des secours :

    -

     

    -

    EFT -sur un bébé pris de convulsions dont la mère panique

    -


    -Je -rentrais chez moi un soir vers 21h, par une nuit d'hiver sur une -route peu fréquentée à cette heure. Au détour d'un virage, je -vois une voiture garée en travers, la portière ouverte, à -moitié sur la route et le bas côté, avec une femme affolée qui -faisait de grands gestes avec les bras pour appeler au secours.
    -je -m'arrête et m'avance vers elle. Elle était paniquée, parlait vite -et en étant à peine compréhensible, tellement elle perdait ses -moyens.
    -Elle me dit: "mon bébé a des convulsions, il fait -une crise, là, maintenant, je l'ai vu dans le rétroviseur". -"il est entrain de partir, je le vois, il perd -connaissance"...
    -Je lui demande de m'expliquer ce qu'il se -passe."On sort de l'hôpital où il est resté en observation -toute la journée, il a des accès de fièvre violente depuis -plusieurs semaines, et quand la fièvre est trop haute, il a des -convulsions... Et si la fièvre et les convulsions continuent, ça -peut endommager son cerveau... Ils ont fait des examens mais -m'ont dit qu'ils ne pouvaient rien faire pour arrêter le -problème, on est resté toute la journée à l'hôpital pour -rien. Ils nous ont dit de rentrer à la maison, et -là la fièvre remonte et j'ai vu qu'il partait en -convulsion".

    -Tout ceci a été dit en 20 secondes -et pendant ce temps, je constatais l'état de panique de la mère -d'une part, et le bébé qui était pris de convulsions, par -intermittence, d'autre part.

    -Je propose à la mère -paniquée: je connais une technique qui peut peut-être aider votre -bébé et faire cesser les crises, est-ce que vous accepteriez -d'essayer?
    -Sa réponse dans la panique: "Oui, mais qu'est-ce -que c'est?"
    -- C'est une technique qui stimule des points -d'énergie, en douceur, et je vais vous montrer en commençant sur -vous si vous permettez. Vous me direz ensuite si vous voulez que je -le fasse sur votre bébé.

    -Entre temps, elle avait sorti -le petit de son siège et le tenait dans ses bras. Elle me dit : "OK, -je veux bien essayer"

    -J'ai tapoté sur la -mère, sans même dire les phrases d'EFT qui auraient -pu la destabiliser encore plus. après 2 ou 3 rondes sur -les points raccourcis disponibles à travers ses vêtements d'hiver, -sa panique est devenue plus gérable, son débit de parole plus -lent, et elle m'a permis de "tapoter" sur -son bébé, qu'elle tenait toujours.
    -Les convultions étaient -visibles, le petit avait les yeux mi-clos, voire révulsés. Du bout -de l'index, j'ai tapoté sur le haut du crâne, entre les 2 sourcils, -le coin de l'oeil, sous l'oeil, sous le nez, sous la bouche -et à travers ses vêtements sur la zone des clavicules. Je -parlais pour lui, disant intérieurement:
    -"Même si j'ai des -convulsions, que j'ai peur, que je ressens la panique de ma mère, je -suis un super petit bébé et je vais aller mieux"
    -"Même -si je ne comprends pas ce qu'il se passe, j'ai ma mère là pour moi, -qui m'aime"

    -J'ai tapoté ainsi sur le petit environ -une minute ou 2 en continu, et les convulsions se sont calmées, puis -ont disparu.

    -La mère s'était aussi calmée. On a pu -reprendre le dialogue: "Que voulez-vous faire? Retourner à -l'hôpital, le ramener en observation? Voulez-vous que je vous -accompagne?"
    -- Non, ça va aller, je vais rentrer chez moi, -j'habite à un quart d'heure.
    -- Voulez-vous que je vous -accompagne?
    -- Non merci, ça va maintenant, mon mari nous attend à -la maison, on va rentrer.

    -Le petit était calme, -fatigué, mais il avait retrouvé ses esprits et était à moitié -endormi, contre sa mère. Elle l'a tranquillement réinstallé dans -son siège bébé, et elle a repris sa route, apaisée.

    -Je -n'ai jamais revu cette femme, je ne sais donc pas ce qu'il s'est -passé ensuite. Mais j'ai simplement constaté que ça lui a -permis de reprendre la route et de rentrer chez elle, avec un bébé -calmé.

    -Avril 2009 Marie-LaurenceMoysset

    -

    J'avais -noté que Marie m'avait dit avoir laissé ses coordonnées à la -maman pour le cas où elle ait encore besoin d'elle.
    -

    -

    Un -stagiaire de Haute-Savoie, Hypnothérapeute, m'a envoyé le récit -d'une expérience faite juste au retour du stage de niveau 1 du 18 -Avril dernier en Haute-Savoie : elle l'a étonné et a -renforcé son désir de continuer la formation :

    -

     

    -

    Mauvaise -digestion de pâtes arrosées de coca-cola ... et EFT

    -

     

    -

    Bonjour -Martine,

    -

    Ce -petit mot pour te raconter une histoire toute fraîche d'EFT.

    -

    Je -reçois un client habituel d'une quarantaine d'année à 16h30. En -préambule il -me fait part qu'il a l'estomac lourd et tendu. Il aurait trop mangé -de pâtes -à midi et beaucoup trop vite.

    -

    Il -a bien essayé de boire de grandes quantités de Coca et cela a -empiré son état. -De plus, ce soir il a des examens pratiques pour l'obtention d'un brevet -de maître nageur, ce qui le rend très soucieux.

    -

    Avant -de continuer, je lui propose de faire disparaître sa lourdeur stomacale -pour être à l'aise pour le reste de la séance. Je lui ai demandé -à quelle intensité était son problème, il me répondit 7.

    -

    1ère -séquence de tapotage = 6

    -

    « Très -bien, vous voyez que c'est déjà mieux ! »

    -

    2ème -passage = 4 puis 3ème -= 1

    -

    4ème -= Curieusement il me demande d'aller aux toilettes : une « -urgence ».

    -

    Quand -il revient, il se sent à l'aise et tout sourire. Ses problèmes d'estomac -ont disparu comme « par magie », selon ses dires.

    -

    Je -me suis dit qu'il serait dommage de ne pas partager cette petite -histoire d'un débutant EFT. Surtout que cela a pris à peine 15 -minutes.

    -

    Très -cordialement.

    -

    Renato -Spinetti www.hypnonature.ch

    -

    Les -débutants en EFT obtiennent déjà de beaux résultats. Cela les -encouragent à travailler ... pour en obtenir de plus en plus.

    -

    Bien -amicalement,

    -

    Martine -Mauvais
    -


    -
    -

    -
    -
    -

    3-Calendrier des -formations EFT

    -

    Pour vous inscrire aux stages de -Geneviève (désormais à Lyon part Dieu), aller à
    -

    -

    http://www.technique-eft.com/formations-eft-EFTbyWorkshop-France.php et -cliquez sur le lien dans la colonne de gauche afin d'en -découvrir les prix et modalités -d'inscription.
    -
    - - - -Pour avoir les dépliants et tarifs des stages de Martine -MAUVAIS, contactez-la directement à cette adresse : -MMauv@aol.com
    -
    - - - -Même si c'est le retour de votre contrat de formation -complété et signé -accompagné du versement -de votre acompte qui officialise votre réservation, sachez -que -cet acompte ne sera encaissé que 3 à 4 semaines -avant la -date du stage. Si votre formation doit être prise en charge -par -votre employeur pensez à nous demander une convention de -formation dans les meilleurs délais. Ce type de -démarche -est toujours plus longue que celle d'un contrat de formation individuel.
    -

    -
    -

    3-Divers EFT

    -
      -
    • Vous avez rejoint le site -récemment
    - - - - -Vous pouvez -retrouvez les précédentes newsletters du site -à -cette adresse :
    -
    http://www.technique-eft.com/archives/index.php -
    -
      -
    • Les vidéos
    • -

      La première -vidéo EFT en -français est toujours disponible sur le site de la -Technique-EFT -à l'adresse suivante : Vidéo -en français EFT
      -

    -
      -


      - - - -Vous pourrez également commander les vidéos en -anglais de -Gary Craig en cliquant ci-après. Un tarif -dégressif vous -est réservé selon le nombre de DVD -commandé.
      Vidéos -en anglais de Gary Craig
      -
      - - - -Ces vidéos représentent des heures de tournage -sur de -nombreux sujets traités lors des séminaires -qu'organise -Gary Craig.
      -
      - - - -Ces vidéos sont en cours de traduction et vous pourrez -obtenir -les premiers textes en français en les commandant -à cette -adresse

      -

      -
      http://www.psycho-energie.fr/index.php?option=com_content&view=category&id=58:traductions-des-dvd-de-gary-craig&Itemid=57&layout=default
      -

      La nouvelle -vidéo EFT "Try It On -Everything" est disponible à la vente en copiant ce lien -dans la -barre adresse de votre navigateur : -http://www.tryitoneverything.com/cmd.php?af=822326" ou en passant par -le site www.Technique-EFT.com et -en visitant la page réservée aux -"Vidéos EFT".
      -

      -
    • L'animation d'une ronde d'EFT en images
    • -

      Pour vous aider dans vos premiers pas -avec l'EFT une animation en dessins est présente sur le site.Animation -d'une session en images
      -
      - - - -Pensez bien à la mentionner aux personnes à qui -vous -parlez de l'EFT afin qu'ils en bénéficient eux -aussi pour -leurs premiers pas avec cette merveilleuse technique.

      -
    • Les prestations disponibles sur le site
    • -

      Vous le savez l'EFT peut -également -s'appliquer à distance. Pour cela vous trouverez plusieurs -prestations directement par le biais de l'Internet, que ce soit pour -vous aider dans la construction de votre première phrase -EFT, -pour un court accompagnement ou pour un suivi plus long qui vous -permettra d'avancer considérablement dans votre -démarche -personnelle.
      -
      - - - -Vous trouverez de plus amples renseignements à cette adresse -:
      Besoin -d'aide


    -
    -
    - -

     


    - - \ No newline at end of file diff --git a/pages/archives/eft-news-mai-2010.php b/pages/archives/eft-news-mai-2010.php deleted file mode 100644 index 50adc8e..0000000 --- a/pages/archives/eft-news-mai-2010.php +++ /dev/null @@ -1,175 +0,0 @@ -

    Courrier de la Technique-EFT.com. Edition de Mai 2010

    -
      -
    1. Le courrier de Geneviève Gagos
    2. -
    3. Calendrier des formations -EFT
    4. -
    5. Divers
    -
    -

    1-Message de -Geneviève Gagos

    -

    -

    Bonjour à tous,

    -


    -

    -

    L'EFT continue de progresser partout en France et dans le monde, et c'est tant mieux !Toutefois, vous brûlant parfois les ailes, vous êtes de plus en plus nombreux à me demander de vous conseiller un "bon" praticien. 

    -


    -

    -

    Mais qu'est-ce qu'un bon praticien ?

    -

    De toute évidence, un bon praticien est un praticien qui a suivi une formation correcte et qui continue d'approfondir ses connaissances de la technique par une pratique supervisée.

    -


    -

    -

    Effectivement, l'EFT apparaît comme une technique tellement simple, que beaucoup ont pensé qu'il suffisait de lire le manuel de Gary Craig, pour s'installer en tant que praticien. 

    -

    D'ailleurs certains "formateurs" encouragent également leurs stagiaires à s'installer en tant que praticien, après une simple présentation de la durée d'un week-end.

    -

    Soyons sérieux ! 

    -

    Comment pouvez-vous croire aider une personne correctement, après 2 jours de théorie ?

    -


    -

    -

    Rappelons-nous que les patients/clients qui viennent à l'EFT ont bien souvent essayé de nombreuses solutions, qui ne leur ont pas apporté de réponse à leur problématique et qui se tournent vers l'EFT, comme une ultime tentative.

    -


    -

    -

    L'EFT, bien qu'utilisant toujours les mêmes points, est bien plus qu'une petite technique de cabaret. Vous pouvez obtenir des résultats ultra superficiels, comme des résultats profonds et définitifs lorsqu'elle est appliquée par un praticien, sérieux, expérimenté, et correctement formé à la technique.

    -

    Aussi, soyez vigilant dans le choix de votre accompagnant. 

    -


    -

    -

    Interrogez-vous sur sa formation, son expérience, et n'hésitez-pas à en changer s'il ne vous convient pas ou vous paraît non fiable.  

    -


    -

    -

    L'EFT a de longues et belles années devant elle, pour qui lui reconnaîtra sa vraie valeur, et approfondira sa pratique. 

    -


    -

    -

    Même si Gary Craig dit :

    -

    "Essayez l'EFT sur tout !"

    -


    -

    -

    il précise quand même :

    -

    "Bien que notre fascination pour ces procédures nous donne beaucoup d'enthousiasme et pour cause!, nous devons ponctuer notre enthousiasme de quelques mises en garde de bon sens".

    -


    -

    -

    "N'allez pas là où cela ne vous appartient pas d'aller"

    -


    -

    - -


    -

    -


    -

    -


    -

    -


    -

    -

    Ce mois-ci Christine, d'Irlande, nous propose des articles sur le thème de la maladie de Parkinson, traduits du site officiel de Gary Craig, www.emofree.com. Bien que ces articles parlent d'une maladie particulière, j'ai choisi de publier ces traductions, pour leur possibilité d'adaptation dans la vie de tous.

    -


    -

    -

    EFT et Parkinson

    -

    Maladie de Parkinson

    -


    -

    -

    Maria Annell, nous propose dans cette traduction d'utiliser l'EFT par procuration :

    -


    -

    -

    EFT et le sommeil de Bébé

    -


    -

    -

    Vous trouverez, également, dans le même registre, ce témoignage d'une stagiaire de Martine Mauvais

    -


    -

    -

    "Voici un petit témoignage:

    -


    -

    -

    Mon compagnon a une maladie cardio-vasculaire. Il a été opéré il y a 2 ans. Je l'ai toujours connu stressé, mais il n'a jamais été malade. Depuis son opération il est beaucoup plus stressé et il fait des crises d'angoisses épouvantables, presque tous les jours.

    -


    -

    -

    J'ai fait mon 1er stage EFT il y a un an, et il n'a jamais voulu essayer trouvant sans doute trop "simpliste" cette technique. Lui qui est d'habitude ouvert à différentes thérapies. Mais il était trop mal pour entendre.

    -


    -

    -

    J'ai fait le second niveau EFT fin mars,et juste après sa maman a eu  un grave accident. Aussi quand il a appris la nouvelle au téléphone, il a eu un choc émotionnel très intense, il s'est effondré en pleurs.

    -

    Sans lui demander son avis cette fois, j'ai moi même tapoté sur lui:

    -


    -

    -

    même si j'ai peur pour ma maman je m'aime et je m'accepte complètement...

    -


    -

    -

    A son grand étonnement il a tout de suite été mieux, j'ai continué :

    -


    -

    -

    même si ma maman a failli mourir je m'aime......

    -

    Et nous avons découvert le fond du problème: c'était la peur de la mort qui le paralysait depuis 2 ans :

    -


    -

    -

    même si j'ai peur de la mort je m'aime.....

    -


    -

    -

    Depuis il va très bien. Il trouve que l' EFT c'est génial !!!

    -


    -

    -

    Voilà mon témoignage Martine

    -

    Bises , Fr..... "

    -


    -

    -


    -

    -

    L'EFT par procuration

    -


    -

    -

    Ceci nous amène à ouvrir ce débat de l'utilisation de l'EFT par procuration.

    -


    -

    -

    Cette question m'est souvent posée lors des formations que j'anime.

    -


    -

    -

    Peut-on utiliser l'EFT à la place d'une personne ?

    -


    -

    -

    Je pense que c'est à chacun de nous, de trouver notre propre réponse. Par contre, il me paraît essentiel, de se poser quelques questions avant d' utiliser l'EFT à la place de quelqu'un d'autre :

    -

    -
      -
    •    Pourquoi est-ce que je souhaite utiliser l'EFT sur Untel ? 
    • -
    •    Qu'est-ce qui me dérange, moi, sur ce qui arrive à Untel ?
    • -
    •     Que se passerait-il si je n'utilisais pas l'EFT, à sa palce ? Que penserais-je de moi ?
    -

    Voici sans aucun doute, déjà, du travail pour chacun de nous, lorsque l'idée d'utiliser l'EFT par procuration se présente. Après cela, demandez-vous si vous souhaitez toujours utiliser l'EFT pour l'autre personne ?

    -


    -

    -

    Si oui ! Je vous invite à lire l'article que Gary Craig propose sur ce sujet, sur son site, à l'adresse suivante : http://www.emofree.com/faq/surrogate.htm

    -


    -

    -

     

    -

    Plus que quelques exemplaires :

    -

    Il reste encore quelques exemplaires de la vidéo EFT en français, de Louise Gervais et ceci  jusqu'à épuisement du stock. Vous pouvez commander cette vidéo, en vous rendant sur le site de la Technique-EFT à l'adresse suivante : Vidéo en français EFT

    -

    -

    Bon mois de Mai et bons tapotements !

    -


    -

    -

    A très bientôt

    -

    Geneviève

    -

     

    -

    2-Calendrier des -formations EFT

    -

    Pour vous inscrire aux stages de Geneviève (désormais à Lyon part Dieu), réservés aux Professionnels de la Santé et de la relation d'Aide, aller à 

    -

    http://www.technique-eft.com/formations-eft-EFTbyWorkshop-France.php et cliquez sur le lien dans la colonne de gauche afin d'en découvrir les prix et modalités d'inscription.

    -

    Pour les personnes souhaitant apprendre l'EFT, pour leur développement personnel, pour elles-mêmes et leur entourage immédiat, retrouver le calendrier des formations de Véronique Waumans à cette adresse :  http://www.technique-eft.com/formations-eft-EFTbyWorkshop-France.php  
    -
    -Pour avoir les dépliants et tarifs des stages de Martine MAUVAIS, contactez-la directement à cette adresse : martine.mauvais@sfr.fr
    -
    -Même si c'est le retour de votre contrat de formation complété et signé accompagné du versement de votre acompte qui officialise votre réservation, sachez que cet acompte ne sera encaissé que 3 à 4 semaines avant la date du stage. Si votre formation doit être prise en charge par votre employeur pensez à nous demander une convention de formation dans les meilleurs délais. Ce type de démarche est toujours plus longue que celle d'un contrat de formation individuel.

    -


    -

    -

    3-Divers EFT

    -
  • Vous avez rejoint le site récemment
  • Vous pouvez retrouvez les précédentes newsletters du site à cette adresse :
    -http://www.technique-eft.com/archives/index.php
    -
  • Les vidéos
  • -
  • La première vidéo EFT en français est toujours disponible (jusqu'à épuisement du stock) sur le site de la Technique-EFT à l'adresse suivante : Vidéo en français EFT
  • -
  • Les vidéos de Gary Craig (en anglais) ne sont plus disponibles (stock épuisé et non renouvelé) sur le site officiel de l'EFT, www.emofree.com, toutefois l'Association Française EFT a mis en place un service permettant de mettre en relation les personnes possédant ces vidéos originales et acceptant de les partager (jusqu'à 100 copies autorisées par Gary) avec celles souhaitant se les procurer. 
  • -
  • Ces vidéos sont en cours de traduction. Vous pourrez obtenir les premiers textes en français en les commandant à cette adresse
    -http://www.psycho-energie.fr/index.php?option=com_content&view=category&id=58:traductions-des-dvd-de-gary-craig&Itemid=57&layout=default
  • -
  • L'animation d'une ronde d'EFT en images
  • -
  • Pour vous aider dans vos premiers pas avec l'EFT une animation en dessins est présente sur le site. Animation d'une session en images
    -
    -Pensez bien à la mentionner aux personnes à qui vous parlez de l'EFT afin qu'ils en bénéficient eux aussi pour leurs premiers pas avec cette merveilleuse technique. -


    -

    -


    -

    -

    Maigrir avec EFT     Arrêter de Fumer avec EFT     Cas concrets     Annuaire praticiens EFT     Archives     Infos Légales     Nous contacter

    -

    -

    -
diff --git a/pages/archives/eft-news-mar-2008.php b/pages/archives/eft-news-mar-2008.php deleted file mode 100644 index b8a0c4b..0000000 --- a/pages/archives/eft-news-mar-2008.php +++ /dev/null @@ -1,152 +0,0 @@ - - -

Courrier de la Technique-EFT.com. Edition de Mars 2008.

- - -
  1. Message de Geneviève BALLY
  2. -
  3. Traductions du site de Gary Craig par Martine Mauvais
  4. -
  5. Calendrier des formations EFT
  6. -
  7. Divers
-
- -

1-Message de Geneviève BALLY

-

- -Bonjour à tous ! -

-Nous voici déjà au mois de Mars et le printemps pointe son nez. Les merles ont recommencés à chanter, les oiseaux font leur nid, -les premières fleurs éclosent déjà, encouragées par la douceur du mois de février que nous venons de passer.

- -Les magazines féminins vont à nouveau afficher toutes sortes de régimes afin de retrouver la ligne avant l'été et certains se jetteront dans des aventures déstabilisantes pour leur santé.
-Tous les régimes sont efficaces, ce qui ne veut pas dire qu'ils sont tous conseillés pour rester en forme.
-Le meilleur à mon sens est de se faire accompagner par votre médecin traitant qui prendra régulièrement votre tension, vos pulsations et vérifiera que tout se passe bien, que vous ne manquez de rien.

-Mais voilà, vous connaissez déjà. Ce n'est pas la première fois que vous décidez de mincir et c'est à chaque fois la même chose. Après avoir allégé votre corps les kilos reviennent inexorablement.

-Avec l'EFT vous pouvez obtenir les changements qui s'imposent dans votre alimentation (je mange trop de produits sucrés, je ne peux m'empêcher de saucer un plat etc..., dans vos habitudes (je mange quand je suis contrariée), dans vos croyances (on est tous gros dans la famille c'est héréditaire), et aussi éviter le retour en force des kilos. Avec EFT vous traiterez toutes les émotions négatives qui vous empêchent d'avancer, qui vous retiennent dans un poids qui ne vous convient pas.

Ces kilos en trop vous les avez commandés inconsciemment bien entendu, dans un but bien précis.
Pour certains ils représentent une protection, une distance de sécurité entre le monde ou certaines personnes et vous-même. Pour d'autres il s'agit d'exister, lorsque l'on a été trop souvent ignoré, pour d'autres encore la nourriture est un compagnon de fortune qui les aide à passer les caps difficiles de leur existence...

-Toutes ces raisons de conserver un surpoids et les outils pour vous en libérer, vous les trouverez dans l'ebook/programme "Maigrir Durablement avec l'EFT" un ebook qui vous accompagne pas à pas dans votre démarche pour retrouver un corps qui vous satisfait.

Pour que ce mois de mars vous soit encore plus plaisant je vous propose de bénéficier d'un tarif préférentiel afin de -reprendre en main votre santé.

-Pour cela, cliquez sur le lien ci-dessous afin d'en profiter dès à présent :

-

Offre spéciale Printemps
- Maigrir Durablement avec l'EFT -

-Votre problème c'est la cigarette ! C'est le printemps qui s'annonce et avec, les offres spéciales fleurissent.

-Là aussi vous profiterez durant le mois de mars d'un tarif préférentiel afin de vous aider dans votre retour à la liberté de respirer à pleins poumons. Pour cela, cliquez ci-après sur le lien correspondant à une offre à moins de 20% sur le tarif habituel.

-

Offre spéciale Printemps
- Arrêter de Fumer avec l'EFT -

- -Le site Technique-EFT.com s'enrichie chaque mois de nouvelles traductions que Martine nous offre, et je lui en suis particulièrement reconnaissante.
-Une petite note avant certains articles sera ajoutée désormais afin d'attirer votre attention sur le fait que certains de ces textes sont plutôt destinés à des EFT'rs expérimentés. Ce qui sous-entend que vous avez suivi les formations Niveau 1 et Niveau 2 comme nous les proposons dans notre rubrique formation, afin de mieux appréhender les sujets traités dans ces exemples.
-Rappelez-vous que le bon sens et de mise et que ces traductions ne sont pas destinées à vous faire aller là où il ne vous appartient pas d'aller.

L'EFT est un outil puissant qui demande une maîtrise particulière pour aborder certains sujets sans souffrances inutiles.

Gary Craig multiplie ses messages d'attention car l'EFT se répand partout dans le monde. Certains pays comme le Royaume-Uni le reconnaisse auprès de leur service de santé et il serait désolant de priver l'humanité de l'efficacité de la technique à cause de personnes faisant preuve d'irresponsabilité. -

-Je voudrais remercier ce mois-ci également Christiane Essertier qui nous fait partager un texte -qu'elle a traduit.
Christiane nous propose d'emmener "Le Secret en promenade" avec ce texte de Ryan Harrison.

-Vous rencontrerez ici une manière originale d'utiliser Le Secret et de traiter avec l'EFT les croyances limitantes qui vous empêche de croire à la réalisation de certains de vos projets.

-Je sais que vous êtes nombreux malgré tout à comprendre l'anglais, et je profite de cette occasion pour vous rappeler que toute -participation à la vie du site est la bienvenue.
Ce site est un site de partage permettant à chacun de découvrir, d'apprendre ou d'approfondir l'EFT en langue française. -

- - -Amicalement -

-Geneviève -

-

2-Traductions du site de Gary Craig par Martine Mauvais

-

- - -Bonjour à toutes et à tous ! -

-Voici d’abord 3 articles sur le traitement de la douleur avec l’EFT : -

-En premier lieu le récit tout simple de l’adaptation de l’EFT à une toute petite fille qui perce ses dents, et Dieu sait si ce problème universel tourmente la plupart des humains, je pense, dans leur tout jeune âge. Il peut gâcher la vie de toute une famille, et perturber le repos nécessaire des parents qui doivent pourtant se lever le lendemain pour aller travailler. C’est pourquoi j’ai pensé que cet article pourrait être utile. Et je suis sûre que, comme moi, vous serez émerveillés par la fin de l’histoire.
-De plus elle m’a rappelé l’intérêt d’apprendre aux enfants, même petits, à faire confiance à leur ressenti, à se prendre en charge eux-mêmes chaque fois que c’est possible, à réfléchir avant d’associer automatiquement mal-être et produits, comportement qui mène trop souvent à des dépendances.

- -

EFT et douleurs de la dentition

-

-Voici maintenant le récit d’un traitement miracle éclair, courant avec l’EFT, mais qui ouvre aussi une réflexion approfondie sur les problèmes liés à la douleur, notamment sur le rôle de nos croyances à son propos, entretenues par les on-dit et, involontairement, par certains professionnels de santé eux-mêmes :

- -

- -Douleur et limitation de mouvement

- -L’auteur du précédent article, nous propose un moyen on ne peut plus simple d’appliquer l’EFT à la douleur, lorsque la zone touchée est facilement accessible :

- -

- -Douleur difficile à décrire et EFT

-

- -Dans le domaine professionnel , le niveau de stress ne cesse d'augmenter, en causant des troubles divers, émotionnels et physiques, et l’EFT peut être d’un grand secours pour améliorer les choses. Les commerciaux, entre autres, vivent de grandes tensions, ils sont habitués à les dissimuler plus que les autres et en souffrent d’autant plus, ils pourraient cependant en être délivrés. Voyez le cas de « Dean » :

- -

- -L’EFT permet à un vendeur de doubler ses ventes

-

- -Une dépendance aux produits peut cesser en peu de temps, c’est encourageant de le constater, même si ce peut être plus compliqué. Et c’est une débutante en EFT qui en fait l’expérience alors qu’elle « sniffe » depuis plus de 10 ans. Au cours de ses tapotements elle fait aussi une prise de conscience importante, comme cela arrive souvent :

- -

- -L’EFT met fin à une dépendance à l’inhalation de produits et traite un problème de fond

-

- -Dans chacun de ces articles il y a des « trucs » à modéliser, vous pourrez vous inspirer de ceux dont vous avez besoin… du moins c’est ce que j’espère ! -

-N’hésitez pas à m’indiquer quelles sortes de sujets vous aimeriez voir abordés, je trouverai sûrement de quoi vous satisfaire dans l’immense variété des archives du site de Gary Craig. Bonne lecture en attendant, et au mois prochain ! -

-Bien amicalement, -

-Martine Mauvais
-MMauv@aol.com - - -

-

3-Calendrier des formations EFT

-

Les dates de formation pour le second semestre 2008 sont maintenant en ligne. Il reste quelques petites places pour le premier semestre, mais dépêchez-vous si vous êtes intéressé par une formation EFT car elles seront vite comblées.
-Vous les trouverez en visitant la page http://www.technique-eft.com/formations-eft.php et en cliquant sur la date qui convient le mieux à votre emploi du temps afin d'en découvrir les prix et modalités d'inscription. -

-Même si c’est le versement de votre acompte qui officialise votre réservation, sachez que cet acompte ne sera encaissé que 3 à 4 semaines avant la date du stage.
-Martine et moi proposons des stages de formation dont le contenu est approuvé par Gary Craig.
-Vous trouverez sur le site de emofree.com, les directives s’y rapportant. C’est à cette adresse : -workshop-guidelines -

- -Pourquoi opter pour un contenu approuvé ? -

-Au début de l'EFT Gary Craig disait :"Enseignez tout ce que vous voulez!". Au vu du nombre de personnes se lançant dans les formations EFT et proposant un contenu très disparate d'un animateur à l'autre Gary Craig a revu son opinion et a mis en place un certain nombre de directives.
-Désormais seuls les stages de formation EFT approuvés ont le droit d'utiliser le logo EFT mis à disposition par Gary Craig.
-Vous opterez pour un contenu approuvé afin d’être assuré de recevoir les mêmes bases pour chacun des niveaux de formation EFT et ceci quelque soit le pays dans lequel vous suivrez votre formation. C'est pour vous l'assurance d'obtenir une formation de qualité conforme aux directives de Gary Craig. -

- -

-

4-Divers EFT

- -
  • Les vidéos
  • -

    La première vidéo EFT en fançais est toujours disponible sur le site de la Technique-EFT à l’adresse suivante : -Vidéo en français EFT - -

    -Vous pourrez également commander les vidéos en anglais de Gary Craig en cliquant ci-après. Un tarif dégressif vous est réservé selon le nombre de DVD commandé. -Vidéos en anglais de Gary Craig -

    -Ces vidéos représentent des heures de tournage sur de nombreux sujets traités lors des séminaires qu’organise Gary Craig. -

    -Ces vidéos sont en cours de traduction et vous pourrez obtenir les premiers textes en français en les commandant ici : -Premières traductions en français des vidéos de Gary Craig -

    - -
  • L'animation d'une ronde d'EFT en images
  • -

    - -Pour vous aider dans vos premiers pas avec l'EFT une animation en dessins est présente sur le site. Animation d'une session en images -

    -Pensez bien à la mentionner aux personnes à qui vous parlez de l’EFT afin qu’ils en bénéficient eux aussi pour leurs premiers pas avec cette merveilleuse technique. -

    -
  • Les prestations disponibles sur le site
  • -

    Vous le savez l’EFT peut également s’appliquer à distance. Pour cela vous trouverez plusieurs prestations directement par le biais de l’Internet, que ce soit pour vous aider dans la construction de votre première phrase EFT, pour un court accompagnement ou pour un suivi plus long qui vous permettra d’avancer considérablement dans votre démarche personnelle. - -

    -Vous trouverez de plus amples renseignements à cette adresse : -Besoin d'aide -

    -Au mois prochain

    -Amicalement -

    -Geneviève -

    \ No newline at end of file diff --git a/pages/archives/eft-news-mars-2009.php b/pages/archives/eft-news-mars-2009.php deleted file mode 100644 index f3e302a..0000000 --- a/pages/archives/eft-news-mars-2009.php +++ /dev/null @@ -1,365 +0,0 @@ -

    Technique-EFT.comCourrier de la Technique-EFT.com. -Edition de Mars 2009.

    -
      -
    1. Message de -Geneviève GAGOS-BALLY
    2. -
    3. Le courrier de Martine -MAUVAIS
    4. -
    5. Calendrier des formations -EFT
    6. -
    7. Divers
    -
    -

    1-Message de -Geneviève Gagos-Bally

    -Bonjour à tous !
    -
    -Peut-être l'avez-vous déjà -remarqué : le site www.Technique-EFT.com a changé -de look. C'était nécessaire. -L'EFT est une technique qui bouge et qui progresse -constamment il fallait suivre cette mouvance. -J'espère que vous aussi, vous aimerez cette -nouvelle présentation, plus gaie, plus actuelle.
    -Ce travail, je l'ai confié à mon fils -Nicolas, nouvellement installé en tant que -"Concepteur de sites internet". Pour toute -étude ou demande de devis, vous pouvez joindre Nicolas Bally à info@nicolasbally.com .
    -

    -    Clin d'oeil -à un praticien EFT.
    -Chaque mois, dans cette nouvelle rubrique je vous -présenterais un praticien EFT que j'ai eu la -chance de rencontrer durant mes stages de formation.
    -
    -Ce mois-ci je vous invite à suivre plusieurs -études de cas que Amanda Castello m'a -envoyées dans le cadre d'un suivi post-formation.
    -Amanda est française et vit en Italie. Elle a choisi de -suivre sa formation EFT sur Voiron, pour ma plus grande joie, car cela -m'a permis d'apprécier sa -générosité, sa gentillesse, et de -découvrir une personne engagée pour de nombreuses -acauses. Vous trouverez quelques unes de ses actions en visitant son -site : http://www.associazionepauloparra-art.it/
    -Je vous propose ici, plusieurs sujets qu'elle a retranscrits -pour partager avec nous son expérience de l'EFT
    -Pour contacter Amanda :  amandaprimavera@aim.com
    -
    -Pour le premier cas vous verrez l'accompagnement -d'une personne souffrant d'appréhension -à l'idée d'assister -à une réunion qui pourrait tourner à -son désavantage :
    -
    -
    -C'est un travail qui est habituellement très -rapide car il est souvent lié à des -émotions que la personne arrive à convoquer. Dans -cet exemple le traitement a été fait sur -l'idée de cette réunion prochaine.
    -
    -Vous voyagez parfois et vous avez sans doute entendu parlé -de la Turista, ce désagrément que beaucoup -redoute. Voyez comment cette patiente à qui Amanda a -transmis l'EFT s'en sort -lorsqu'à son tour elle est prise de Turista.
    -
    -Le dentiste. Ah rien qu'à -l'évocation de ce corps de métier, je -suis sûre que plusieurs d'entre vous se contractent -déjà. Détendez-vous, vous avez -l'EFT maintenant.
    -
    - -Bien sûr vous pourrez également utiliser -l'EFT pour toute autre intervention chirurgicale, quelle soit -banale ou plus compliquée. Une bonne préparation -vous permettra toujours un meilleur rétablissement. Ne -dit-on pas que l'on se réveille comme l'on -s'endort?
    -
    -Certaines personnes sont obsédées par la maladie -et se voit agressée et contaminée -n'importe où. Voici deux exemples où -l'EFT a permis de se débarrasser de peurs -obsessionnelles de tomber malade.
    -
    -
    -Pas toujours facile d'être parent et encore moins -lorsque que l'on doit assumer seul, la charge d'un -ou plusieurs enfants. Le désir de bien faire et de subvenir -à tous les besoins de nos enfants sont parfois lourds et -nous empêchent de vivre pleinement ces -expériences. Les aléas de la vie ne nous -permettent pas toujours d'être là -où nous préférerions être -à un moment précis. Voyez encore ici comme -l'EFT est d'un grand secours dans pareille -situation.
    -
    -A l'inverse il n'est pas toujours facile -d'être un enfant, et même lorsque -l'enfant est devenu grand, il subsiste bien souvent des -émotions négatives qui parasitent encore -l'adulte.
    -
    -La sexualité est un thème souvent -abordé dans les consultations EFT. Vous trouverez ici le cas -d'une femme qui a vécu -éloignée de tous partages amoureux et sexuel -depuis tellement longtemps qu'elle doute de ses -possibilités aujourd'hui à renouer avec -sa capacité à retrouver ce bonheur.
    -
    -Un sujet que chacun de nous a rencontré un jour ou -l'autre. Parfois on se sent tellement perdu que plus rien -n'a d'importance. Sachez que là aussi -l'EFT peut vous aider.
    -
    -Nous terminerons par un sujet délicat. -L'avortement, une décision pas très -facile à prendre. Vu de l'extérieur on -peut penser que jamais on ne choisira cette solution car on a tous -notre idée sur le sujet, mais dans certaines circonstances -ce choix peut s'avérer le seul possible pour une -personne ou pour un couple.
    -Qu'en est-il des personnes qui entourent les personnes -vraiment concernées ?
    -Lorsqu'il se passe quelque chose qui ne nous convient pas, -avant de vouloir changer le monde, il nous faut d'abord -accepter que si cela nous dérange, c'est que cela -vient heurter nos croyances, notre vécu, notre -éducation, notre religion peut-être... Alors le -bon réflexe est d'accepter de se traiter -soi-même avant tout.  Et c'est ce que fait -ici une proche du couple, que la situation dérange. Une -belle utilisation de l'EFT pour remettre les choses -à leur place et ne se mêler que de la partie qui -nous incombe vraiment : soi-même.
    -
    -
    -Au mois prochain pour une nouvelle rencontre avec un praticien EFT.
    -
    -Vous avez déjà eu le loisir de lire des -traductions de Christine Disant -(christine.disant@practicallearners.com) dans ce courrier.
    -Pour mémoire Christine vit en Irlande et nous propose les -articles du site de Gary Craig qu'elle traduit au fil des -besoins rencontrés. Je la remercie de nous faire ainsi -partager son travail.
    -Voici un article d'une récente newsletter de Gary, -que je vous laisse découvrir.
    -
    -

    2-Le courrier -de Martine Mauvais

    -Bonjour à tous et à toutes,
    -
    -Je vous avais annoncé le mois -dernier un article réconfortant pour ceux d'entre -nous qui ont -l'impression que TOUS LES AUTRES obtiennent des -résultats fantastiques -avec l'EFT, sauf eux ! Même s'il -faut toujours améliorer notre façon de -travailler, n'oublions pas en cours de route de savourer tous -les -bénéfices que nous ne remarquons même -plus, tant l'EFT nous -« gâte » !
    -Je suis sûre que cette lecture vous aidera à -reconsidérer votre pratique et vous encouragera à -...persister, bien sûr !
    -
    -
    -Dans -l'article suivant sont réunis les -éléments d'« un cas -d'école » avec -l'EFT, me semble-t-il : un état -émotionnel très fortement négatif, -dangereux et persistant, traité en une fois, la technique du -film -appliquée à un évènement -spécifique, et l'utilisation de -l'association -sensation physique/émotion. « Beau -travail » comme dit Gary, qui ne -manque jamais de nous rappeler la puissance du travail sur les -évènements spécifiques !
    -
    -
    -Au -cours d'une séance d'EFT peuvent -survenir des évènements-cadeaux : des -prises de conscience, souvent, parfois la fin d'une -amnésie liée à un -traumatisme, quelquefois des souvenirs TRES anciens qu'on ne -pensait -même possible d'avoir consciemment : -c'est le cas dans cet article :
    -
    Tapoter -sur une peur fait remonter automatiquement un problème de -fond : un traumatisme à la naissance.
    -
    -Nombreuses -sont les personnes qui ne supportent pas d'avoir le cou -serré : il peut -être très utile pour elles de travailler sur les -difficultés de leur -naissance, sur le cordon enroulé autour de leur cou, sur -leur peur de -mourir étouffé à ce -moment-là. Elles pourraient bien en retirer -d'autres bénéfices que celui de -supporter un col montant ou une écharpe.
    -
    -Portez-vous bien, et savourez les premiers signes de -l'arrivée du Printemps,
    -
    -Bien amicalement, 
    -
    -Martine Mauvais
    -
    -
    -

    3-Calendrier des -formations EFT

    -

    Geneviève Gagos-Bally et -Martine Mauvais vous propose des formations EFT qui suivent les -directives de Gary Craig.

    -

    Vous pouvez vous inscrire aux stages -de -Geneviève, en allant à
    -http://www.technique-eft.com/formations-eft-EFTbyWorkshop-France.php et -en cliquant sur le lien dans la colonne de gauche afin d'en -découvrir les prix et modalités -d'inscription. 

    -

    A compter du second semestre 2009, -Geneviève proposera ses formations EFT principalement sur -Lyon.

    -

     Même si c'est le -retour de votre contrat de formation -complété et signé -accompagné du versement -de votre acompte qui officialise votre réservation, sachez -que -cet acompte ne sera encaissé que 3 à 4 semaines -avant la -date du stage. Si votre formation doit être prise en charge -par -votre employeur pensez à nous demander une convention de -formation dans les meilleurs délais. Ce type de -démarche -est toujours plus longue que celle d'un contrat de formation individuel.

    -

    Pour avoir les dépliants et -tarifs des stages de Martine Mauvais, contactez-la directement à cette adresse
    -martine.mauvais@sfr.fr
    -

    -

    -
    -

    3-Divers EFT

    -
      -
    •  Vous avez rejoint  le site Technique-EFT.com récemment
    -        -    Vous pouvez -retrouvez les précédentes newsletters du site -à -cette adresse :
    -       -      http://www.technique-eft.com/archives/index.php    -
    -
      -
    • Les vidéos
    • -

      La première -vidéo EFT en -français est toujours disponible sur le site de la -Technique-EFT -à l'adresse suivante : Vidéo -en français EFT
      -

    -
      -


      -Vous pourrez également commander les vidéos en -anglais de -Gary Craig en cliquant ci-après. Un tarif -dégressif vous -est réservé selon le nombre de DVD -commandé.Vidéos -en anglais de Gary Craig
      -
      -Ces vidéos représentent des heures de tournage -sur de -nombreux sujets traités lors des séminaires -qu'organise -Gary Craig.
      -
      -Ces vidéos sont en cours de traduction et vous pourrez -obtenir -les premiers textes en français en les commandant -auprès de Daniel Lehmuller à cette -adresse : daniel.lehmuller@orange.fr

      -

      La nouvelle -vidéo EFT "Try It On -Everything" est disponible à la vente en copiant ce lien -dans la -barre adresse de votre navigateur : -http://www.tryitoneverything.com/cmd.php?af=822326" ou en passant par -le site www.Technique-EFT.com et -en visitant la page réservée aux -"Vidéos EFT".
      -

      -
    • L'animation d'une ronde d'EFT en images
    • -

      Pour vous aider dans vos premiers pas -avec l'EFT une animation en dessins est présente sur le site.Animation -d'une session en images
      -
      -Pensez bien à la mentionner aux personnes à qui -vous -parlez de l'EFT afin qu'ils en bénéficient eux -aussi pour -leurs premiers pas avec cette merveilleuse technique.

      -
    • Les prestations disponibles sur le site
    • -

      Vous le savez l'EFT peut -également -s'appliquer à distance. Pour cela vous trouverez plusieurs -prestations directement par le biais de l'Internet, que ce soit pour -vous aider dans la construction de votre première phrase -EFT, -pour un court accompagnement ou pour un suivi plus long qui vous -permettra d'avancer considérablement dans votre -démarche -personnelle.
      -
      -Vous trouverez de plus amples renseignements à cette adresse -: Besoin -d'aide


    -       
-

 
- -
\ No newline at end of file diff --git a/pages/archives/eft-news-nov-2007.php b/pages/archives/eft-news-nov-2007.php deleted file mode 100644 index bb4c08b..0000000 --- a/pages/archives/eft-news-nov-2007.php +++ /dev/null @@ -1,91 +0,0 @@ - - -

Courrier du mois de Novembre 2007

- - -

- -Bonjour à toutes et à tous, - -

-La question des effets secondaires possibles de l’EFT est parfois posée, et à juste titre. J’ai relu l’article de fonds de Gary Craig sur ce sujet et je le résume ainsi : on parle de moins d’un cas sur mille présentant des effets secondaires gênant, et encore aucun ne semble avéré, mais la vigilance s’impose toujours et il faut garder son bon sens : suivre l’avis du médecin ou du professionnel de santé, tenir compte de ses limites, ne pas traiter de cas graves quand on n’en a pas les compétences, les laisser aux praticiens expérimentés. Ainsi, les personnes qui ont des troubles mentaux sérieux peuvent avoir des abréactions que seuls les professionnels habilités savent gérer. - -

-Justement, grâce à une question que l’on m’a posé récemment quant aux risques éventuels de l’emploi de l’EFT pendant la grossessse, j’ai recherché pour vous, sur le site de Gary Craig, www.emofree.com des informations sur ce sujet. Et j’ai constaté une fois de plus que Gary avait toujours une démarche très scientifique et ne prenait pas le moindre risque. - -

-Soyez rassurés : un seul point pourrait présenter des risques si on l’utilisait pendant la grossesse ou l’accouchement, il ne fait pas partie de la séquence de base en EFT mais a été proposé par un intervenant sur un DVD et est donc utilisé par un certain nombre de personnes. Voici sur ce sujet l’article très documenté de Mary Lawton : - -

-

-Utilisation de l’EFT pendant la grossesse et l’accouchement -

-

-Dans cet article Mary Lawton fait allusion à une rubrique de Questions/Réponses du site de Gary, dans lequel celui-ci mène une enquête sur ces risques éventuels auprès des spécialistes les plus expérimentés, qui lui ont répondu avec une grande honnêteté, comme vous le verrez dans l’article suivant : - -

-

-Est-t-il dangereux d’employer l’EFT pendant la grossesse ? - -

-

-Outre le grand intérêt de ces informations, j’ai plaisir à «goùter » dans ce dernier texte l’esprit de partage et de coopération qui prévaut entre les praticiens de l’EFT et des « techniques cousines », comme les appelle Gary, et auxquelles il consacre une rubrique sur son site. Cet esprit d’ouverture me semble être l’une des caractéristiques communes aux approches humanistes du XXIème siècle dans tous les domaines. - -

-L’EFT et la douleur : l’EFT est à expérimenter de plus en plus pour le soulagement de la douleur, même très intense, il y a même un exemple impressionnant de réussite pour des névralgies faciales sur le site www.emofree.com . -Voici l’expérience incroyable qu’a eue Jane Jones avec sa propre mère : - -

-

-Un anévrisme cause des maux de tête chroniques déclarés incurables par les médecins …disparus depuis 5 ans grâce à l’EFT «à distance ». -

-

-Il y a un certain nombre d’enfants qui refusent de retourner à l’école, et/ou qui en tombent malades. Mais EFT rime vraiment bien avec créativité : voyez comment s’y prend cette praticienne expérimentée avec un petit garçon qui ne veut plus aller à l’école : - -

-

-L’EFT et le nounours « Tapoty » aident un petit garçon timide à aller à l’école maternelle. - -

-

-Je me promettais, après les articles sur l’EFT pour les chiens, de vous donner un exemple de travail avec un chat. J’ai adoré celui-ci et je me réjouis de vous le proposer : - -

-

-Un succès de l’EFT : les chats aussi ont des besoins ! -

-

-J’espère que ces articles vous auront plu. Si certains sujets vous intéressent particulièrement, faites-en part à Geneviève Bally ou bien à moi. Il y en aura certainement qui répondront à votre attente dans les archives de Gary Craig, nombreuses et variées. - -

-Bon mois de Novembre et à bientôt ! - -

-Amicalement, -

- Martine Mauvais

- - - - - - -
- -

-

- - - - - - - - - - - - - - -

\ No newline at end of file diff --git a/pages/archives/eft-news-nov-2008.php b/pages/archives/eft-news-nov-2008.php deleted file mode 100644 index 58a88df..0000000 --- a/pages/archives/eft-news-nov-2008.php +++ /dev/null @@ -1,605 +0,0 @@ - -

Courrier -de la Technique-EFT.com. Edition de Novembre 2008.

-
    -
  1. Message de -Geneviève -BALLY
  2. -
  3. Le courrier de Martine -MAUVAIS
  4. -
  5. Calendrier des formations -EFT
  6. -
  7. Divers
  8. -
-
-

1-Message -de Geneviève BALLY

-

-Bonjour à tous !

-

L'EFT continue à se mettre -en place partout en France et dans différents domaines et -c'est un grand bien pour tout le monde. -Bénéficier de cette technique qui peut apporter -une solution à de nombreuses problématiques est -un vrai cadeau.

-

Les projets se multiplient et se -concrétisent au fil des semaines. Je vous en dirais un peu -plus le mois prochain. 

-

Chaque chose se met en place en temps -et en heure mais d 'une manière tellement naturelle qu'on ne -peut que penser que, cela se fait parce que c'est juste, tout -simplement. Bien évidemment je suis très -reconnaissante envers Gary Craig, fondateur de cette technique qui nous -apporte autant de douceur dans notre vie. 

-
     Gary Craig qui revient -avec une nouvelle vidéo dont vous trouverez  un -avant-goût à cette adresse : (in english, of -course).
-
- -

Cette vidéo a -été tournée sur 5 jours -auprès de vétérans du Vietnam -et d'Irak.

-

Gary Craig nous annonce la version -longue pour dans trois mois. Nous ne manquerons pas de vous en informer -dès sa sortie.
-

-

Je voudrais profiter de ce courrier -pour remercier toutes les personnes qui se joignent à nous -pour apporter une aide toujours très précieuse -à -la Technique-EFT. Sachez que toute contribution aussi minime qu'elle -puisse vous paraître, est la bienvenue et contribue -à -faire connaître toujours un peu plus l'EFT .

-

-Leonida Granon et François -Mousnier-Lompré ont rejoint -récemment l'équipe de traducteurs des -vidéos de Gary Craig. J'en profite pour vous -présenter l'équipe actuelle  :
-
-Leonida et François habitent tous deux dans la -région Rhône-Alpes :
-Leonida a créé un site que vous pourrez visiter -à cette adresse http://www.sansmaux.vpweb.fr/ -.
-François est psychologue-clinicien et exerce à -Villefontaine dans l'Isère.

-

Martine Mauvais que -vous connaissez déjà et que vous retrouvez chaque -mois dans la newsletter du site Technique-EFT.com est, avec Daniel Lehmuller, -un pilier de cette équipe. C'est leur rencontre qui -nous  -permet de disposer des premières traductions des -vidéos. -Dans cette description on ne peut oublier Louise Gervais -qui  a  introduit l'EFT en France, a traduit le -manuel de -Gary Craig en français et a fourni à notre -équipe, ses premiers fichiers de -vidéos traduites, afin que tout le monde puisse profiter du -travail déjà effectué.

-
-

-Nous avons -besoin de toutes les bonnes volontés afin de proposer -à -tous les -non-anglophones un matériel de qualité, comme le -sont ces - vidéos. Si -vous aussi vous souhaitez partager un peu de votre temps, -n'hésitez pas -à me contacter.  C'est à nous tous que -nous -arriverons à faire -progresser l'EFT en France, mais aussi dans tous les pays où -résident des francophones, qui je sais, sont nombreux -à -visiter ce site.
-Grâce à cette belle équipe nous -pourrons très bientôt -vous annoncer de nouveaux fichiers disponibles en français.
-
-Au fil des mois d'autres personnes apportent leur pierre à -l'édifice soit en nous envoyant un article traduit soit en -témoignant de leur pratique de l'EFT .

-
-

Ce mois-ci c'est Chantal qui nous -apporte un -témoignage de l'EFT en -détention. Ce n'est -pas un milieu facile à aborder car la souffrance y est -importante et Chantal fait un beau travail dans cette prison de femmes. -D'autres actions sont en cours actuellement sur différents -sites -et j'espère qu'elles se généraliseront -très -vites dans les autres centres de détention.

-

J'attends aussi vos -témoignages  sur toutes vos interventions -auprès des -enfants, un autre domaine qui me tient particulièrement -à -coeur. Que vous soyez parents, instituteurs, professeurs, -éducateurs, ou tout autre professionnel dans le domaine de -l'enfance ou plus simplement que vous ayez utilisé l'EFT -pour -aider un enfant de votre entourage, n'hésitez pas -à -m'envoyer un courriel.
-Nos enfants sont les adultes de demain.
-Quel praticien ne vérifie pas chaque jour, que nos -maux d'aujourd'hui ont leur origine dans notre enfance ?

-
-

-Je vous dis au mois prochain.
-
-Bien -amicalement
-
-Geneviève

-

2-Le -courrier de Martine Mauvais

-

Bonjour à tous,
-
-Voici ce que j’ai le plaisir de vous proposer ce -mois-ci :
-
-

-Articles du site de Gary Craig, traduits :  

-

- EFT & problèmes physiques :

-
    -
  • 1.Maux de dents persistants
  • -
  • 2.Sciatique et pouce handicapé
  • -
-

-EFT & problèmes émotionnels :

-
    -
  • 3.Culpabilité de toute une vie
  • -
  • 4.Troubles de stress post-traumatique -sévères, avec -insomnie et cauchemars, d’une femme militaire : un -article -de 5 pages, « fort » et riche -d’enseignements pour l’application de -l’EFT, et -…d’espoir
  • -
-

-Témoignage reçu d'une région en France -:    

-       EFT en -détention : Une -de mes stagiaires nous dit comment elle utilise -régulièrement et avec succès -l’EFT dans le -cadre d’une maison d’arrêt et comment -elle apprend -aux personnes qui s’y trouvent à se secourir -mutuellement -et à s’aider elles-mêmes -après leur sortie.
-

-

-******************************************

- -

-Articles du site de Gary Craig, traduits :  

-

- EFT & problèmes physiques :
-
-Je vous avoue que j’ai mis longtemps, lorsque j’ai -eu un -problème ou une douleur physique, à avoir le -réflexe d’utiliser l’EFT, que je -réservais -auparavant aux problèmes émotionnels. Je -n’avais -pas pris la mesure du « slogan » -de style -publicitaire de l’EFT « ESSAYEZ-LE SUR -TOUT » ! Eh oui, on peut le prendre le plus -littéralement du monde, et c’est une bonne -nouvelle.
-
-J’ai commencé à le vérifier -timidement avec -des douleurs qui traînent du genre tendinite, des -piqûres -de moustique, des bobos divers, petites brûlures, -etc…et -je l’ai fait essayer à des proches pour des maux -d’estomac, des maux de tête, etc… mais -je -n’avais pas encore LE réflexe.
-
-Maintenant lorsque je me pince ou me brûle, je -tapote ! Il -n’est pas difficile de trouver les mots : ainsi -dernièrement je suis tombée lourdement sur un -genou, et -avant même d’essayer de me relever j’ai -tapoté -en disant : Même si j’ai très -mal à ce -genou ……  puis Mal au genou, mal au -genou … -pendant plusieurs séquences jusqu’à ce -que -l’intensité soit à 1 ou 0,. Puis -Même si -j’ai peur que cette douleur s’installe -…( en somme, -sur ce qui me venait spontanément ) et enfin sur Je demande -à mon corps de guérir parfaitement toute cette -zone en -douceur et en toute sécurité.
-Et la douleur, de 6 ou 7, est tombée très vite -à -0, même au toucher il n’y avait plus rien. Aucune -suite -depuis lors.
-
-Voici donc l’article sur l’EFT et le mal de dent -que je -vous annonçais le mois dernier, même le mal de -dent peut -céder à l’EFT, c’est -intéressant de -s’en souvenir quand, ayant fait faire le -nécessaire par le -dentiste, on s’apprête à chercher un -remède -anti-douleur dans sa pharmacie familiale.

- -

L’EFT -soulage des maux de dent  auxquels le dentiste ne pouvait plus -rien

- -

-Un autre exemple pour les problèmes physiques, la sciatique -et -un pouce inutilisable depuis une blessure survenue plusieurs -années auparavant. C’est Céline -BOUILLAGUET, -premier niveau d’EFT, qui a traduit pour vous cet -article : -

-

-EFT pour une sciatique et un pouce blessé il y a 6 ans

- -

-Conseil pour le traitement des problèmes physiques (parus -dans -la lettre du site de Gary Craig du 28.03.08) que je crois utile de -rappeler :
-« Si vous ne faites pas de progrès -satisfaisants pour -un problème physique, rechercher ses causes -émotionnelles. Demandez « Si ces -symptômes -avaient une cause émotionnelle, quelle pourrait-elle -être ? ». Vous pourriez aussi -demander -« Quand avez-vous remarqué ces -symptômes pour -la première fois et quels problèmes -émotionnels -pourriez-vous avoir rencontrés avant ce -moment-là ? » Cela vous conduira -souvent -à des pistes utiles. »
-
- -EFT & problèmes émotionnels :
-
-On trouve très souvent de la culpabilité dans -toutes -sortes de problèmes, même sans cause objective et -elle -empoisonne la vie : quel soulagement de s’en -libérer -grâce à l’EFT, comme vous le lirez dans -l’article suivant : -

-

-Comment traiter la culpabilité de toute une vie avec -l’EFT

- -

-Avant de diffuser l’EFT à grande -échelle pour le -partager avec le plus de monde possible, Gary Craig a fait un ultime -test pour vérifier son efficacité dans les cas -les plus -graves. C’est ainsi qu’il a passé 6 -jours à -l’Administration des Vétérans du -Vietnam, et -qu’avec une collaboratrice ils ont -débarrassé 2 -vétérans des symptômes invalidants de -stress -post-traumatique dont certains souffraient depuis 25 ans. Vous pourrez -visionner de larges extraits de ce magnifique travail sur une -vidéo d’un DVD de la première section -édités par Gary. Vous pouvez vous les procurer, -avec la -traduction en français des premiers (dont celui-ci) sur le -site -de Geneviève Bally www.technique-eft.com
- Depuis lors l’EFT a été -utilisé avec -bien d’autres vétérans (IRAQ, -etc…), -notamment par des praticiens bénévoles. Lisez le -cas -exemplaire ci-dessous -

-

-Ancienne militaire souffrant de troubles de stress post-traumatique -sévères : bons résultats avec -l’EFT

- -

-Dans l’article que vous venez de lire, vous avez pu voir les -beaux résultats obtenus sur l’insomnie. -« Joanna » a de -nombreux  souvenirs -très douloureux : elle n’a pas -été -obligée de les raconter ni de les revivre, et -c’est un des -grands mérites de l’EFT. Quand le moment sera venu -de les -traiter, Ingrid Dinter pourra le faire avec douceur, grâce -à La technique sans larme.
-
-Gary en décrit les grandes lignes dans le conseil -qu’il -donne dans sa lettre du 14.04.08 : « Quand -vous traitez -un problème émotionnel potentiellement intense, -essayez -« L’Approche en douceur - ». -C’est-à-dire que vous allez commencer par une -approche -très globale du problème, pour devenir peu -à peu -plus spécifique. Au début, essayez quelque chose -du genre -« Même si j’ai un -problème… ». Ensuite lorsque -le client donne -des signes d’une plus grande détente, essayez -quelque -chose d’un peu plus ciblé tel que -« Même -si j’ai eu un accident il y a 12 -ans… ». Pour -finir vous pouvez devenir très spécifique et -habituellement vous pourrez achever de régler le -problème -avec un minimum de souffrance -émotionnelle. » -

-

Témoignage reçu d'une région -en France :    

-

Je suis heureuse de pouvoir vous faire partager un -témoignage -que je viens tout juste de recevoir d’une de mes stagiaires -de -niveau 1.
-L’envoi de Chantal me touche d’autant plus -qu’elle a -eu ces expériences avant de suivre le stage de niveau 1, et -après seulement un atelier de 4 heures, que -j’avais -animé pour des personnes en cours de formation aux relations -d’aide. J’avais insisté -auprès d’elle -pour qu’elle rédige à votre intention -le -témoignage oral qu’elle avait fait lors -d’une -conférence que j’avais donnée -à -Besançon.

-

-EFT en détention

- -

-Gary Craig, avec un assistant, a expérimenté -lui-même pendant plusieurs jours l’EFT  -dans une -prison californienne pour condamnés à de -très -longues peines, et, après des débuts assez -…rugueux, a obtenu des résultats parfois -bouleversants : l’on vérifie une fois de -plus, avec -ce public particulier, que ses émotions -« négatives » une fois -traitées, -une personne ne perd pas le sentiment de sa responsabilité, -bien -au contraire, elle trouve la sanction juste et normale, et elle a de -meilleures chances d’évoluer et de sortir de -prison plus -apte qu’avant à se respecter et à -respecter les -autres, et à se reconstruire. Toute question -d’humanité mise à part, la -société -n’a-t-elle pas intérêt à ce -que ce ne soit -pas des fauves n’ayant plus rien à perdre qui -sortent de -prison ?
-
-
-Avec toute mon amitié,
-
-Martine Mauvais
-MMauv@aol.com

-


-
-

-
-

3-Calendrier -des formations EFT

-

Toutes -les  formations -EFT que Martine et moi vous -proposons d'ici la fin de cette année sont -complètes.
-Le calendrier des -formations des différents niveaux que nous animerons -au  premier semestre 2009 est en -ligne. Si vous êtes intéressé pour -suivre une -formation ne vous fiez pas à la date -éloignée des -stages proposés et retenez dès à -présent -votre place car il nous sera difficile de rajouter des stages -à -ceux prévus.

-

-Pour vous inscrire aux stages de Geneviève, aller -à http://www.technique-eft.com/formations-eft-EFTbyWorkshop-France.php -et cliquez sur le lien dans la colonne de gauche afin d'en -découvrir les prix et -modalités d'inscription.
-
-Pour avoir les dépliants et tarifs des stages de Martine -MAUVAIS, -contactez-la directement à cette adresse : MMauv@aol.com
-
-Même si c'est le retour de votre contrat de formation -complété et signé -accompagné du versement -de votre acompte qui -officialise votre réservation, sachez que cet acompte ne -sera encaissé que 3 à 4 semaines avant la date du -stage. Si votre formation doit être prise en charge par votre -employeur pensez à nous demander une convention de formation -dans les meilleurs délais. Ce type de démarche -est -toujours plus longue que celle d'un contrat de formation individuel.
-
-

-
-

3-Divers -EFT

-
    -
  •  Vous avez rejoint  le site -récemment
  • -
-        -    Vous pouvez -retrouvez les précédentes newsletters du site -à -cette adresse :
-       -      http://www.technique-eft.com/archives/index.php    -
-
    -
  • Les vidéos
  • -

    La première -vidéo EFT en français est toujours disponible sur -le site de la Technique-EFT à l'adresse suivante : Vidéo -en français EFT
    -

    -
-
    -


    -Vous pourrez également commander les vidéos en -anglais de Gary Craig en cliquant ci-après. Un tarif -dégressif vous est réservé selon le -nombre de DVD commandé.Vidéos -en anglais de Gary Craig
    -
    -Ces vidéos représentent des heures de tournage -sur de nombreux sujets traités lors des -séminaires qu'organise Gary Craig.
    -
    -Ces vidéos sont en cours de traduction et vous pourrez -obtenir les premiers textes en français en les commandant -ici : Premières -traductions en français des vidéos de Gary Craig

    -

    La nouvelle -vidéo EFT "Try It On -Everything" -est disponible à la vente en cliquant sur ce lien Try It On -Everything -ou -en passant par le site www.Technique-EFT.com -et en visitant la page réservée aux -"Vidéos EFT".
    -

    -
  • L'animation d'une ronde -d'EFT en images
  • -

    Pour vous aider dans vos -premiers pas avec l'EFT une animation en dessins est -présente sur le site.Animation -d'une session en images
    -
    -Pensez bien à la mentionner aux personnes à qui -vous parlez de l'EFT afin qu'ils en -bénéficient eux aussi pour leurs premiers pas -avec cette merveilleuse technique.

    -
  • Les prestations disponibles -sur le site
  • -

    Vous le savez l'EFT -peut également s'appliquer à distance. -Pour cela vous trouverez plusieurs prestations directement par le biais -de l'Internet, que ce soit pour vous aider dans la -construction de votre première phrase EFT, pour un court -accompagnement ou pour un suivi plus long qui vous permettra -d'avancer considérablement dans votre -démarche personnelle.
    -
    -Vous trouverez de plus amples renseignements à cette adresse -: -Besoin -d'aide

    -
-
-
    -
  •  Vous avez rejoint  le site -récemment
  • -
-        -    Vous pouvez -retrouvez les précédentes newsletters du site -à -cette adresse :
-       -      http://www.technique-eft.com/archives/index.php    -        \ No newline at end of file diff --git a/pages/archives/eft-news-nov-2009.php b/pages/archives/eft-news-nov-2009.php deleted file mode 100644 index a6f854c..0000000 --- a/pages/archives/eft-news-nov-2009.php +++ /dev/null @@ -1,250 +0,0 @@ - - - -

Technique-EFT.comCourrier de la Technique-EFT.com. -Edition de Novembre 2009

-
    -
  1. Le courrier de Geneviève Gagos
  2. -
  3. Le courrier de Martine Mauvais
  4. -
  5. Calendrier des formations -EFT
  6. -
  7. Divers
-
-

1-Message de -Geneviève Gagos

-

Bonjour à tous,

-


-

-

Du nouveau dans le monde EFT!

-

La première Intervision EFT a rassemblé, les 17 et 18 octobre dernier, les praticiens niveaux II et III,(modules de base et approfondissement EFT) formés à l'EFT et supervisés par Martine Mauvais ou moi-même.

-

Ces journées ont permis de rassembler les praticiens ayant la volonté de proposer à leur patients/clients un réel accompagnement EFT dans les règles de l'art.

-

Lors de cette intervision, plusieurs intervenants étaient invités à présenter leur pratique, chacun dans des milieux différents, afin d'élargir les horizons des participants.

-

EFT en psychiatrie, par Frédéric Rosenfeld, médecin psychiatre à la Clinique Lyon Lumière, de Meyzieu (Rhône)

-

EFT et son Palais des Possibilités, par Martine Mauvais,

-

EFT, cancer et douleurs, par Véronique Waumans

-

EFT et les prisons, par Marie-France Dionisi, 

-

EFT en soins palliatifs et fin de vie, par Amanda Castello,

-

EFT contrôlé par physioscan par Danielle Riche.

-


-

-

Le 17 octobre 2009, à l'issue de la première journée d'intervision, l'équipe fondatrice de l'Association Française EFT s'est réunie, en assemblée constitutive.

-

L'Association Française EFT est née, à la demande de bon nombre de praticiens EFT soucieux de la grandeur de cette technique dans l'aide à autrui.

-


-L'Association Française EFT a pour objectif :

-

De regrouper les praticiens EFT en France, dans le respect de la technique telle que enseignée par son fondateur, Gary Craig, et d'un code de déontologie permettant de contribuer à la protection des usagers de la technique, notamment en fournissant un registre des praticiens EFT ayant suivi une formation conforme aux dispositions de l'article 61

-

 des statuts de l'association.

-
    -
  • -

    D'établir et de faire respecter les critères de formations des praticiens EFT en France.

  • -
  • -

    De promouvoir et d'assurer les études et la recherche sur l'EFT dans toutes ses applications cliniques et théoriques.

  • -
  • -

    De diffuser l'information scientifique et clinique relative à l'EFT par tous les moyens appropriés.

  • -
  • -

    De prendre toute mesure adaptée, au profit du développement de l'EFT en France, selon les décisions du Conseil d'Administration de l'Association.

  • -
  • -

    De contribuer à l'information du public.

-


-

-

Ainsi, vous le comprendrez, l'Association Française EFT, n'a pas pour mission d'amasser des adhérents, mais de fournir aux utilisateurs de la technique, une liste de praticiens sérieux, ayant suivi une formation EFT, rigoureuse et supervisée.

-

De même, elle s'engage à servir l'EFT et à oeuvrer dans sa reconnaissance officielle, par son éthique et le respect du code de déontologie soumis à chacun des praticiens adhérents.

-


-

-

Fondateurs et membres du premier Conseil d'Administration :

-

Présidente : Geneviève Gagos

-

Vice-Président : Frédéric Rosenfeld

-

Vice-Présidente : Martine Mauvais

-

Secrétaire générale : Véronique Waumans

-

Secrétaire adjointe : Hélène Canet

-

trésorière générale : Rahma Chermitti

-

Corinne Ardouin,

-

Amanda Castello

-

Danielle Riche

-


-

-

Mais ce n'est pas tout!

-

Le 05 Octobre 2009 a eu lieu la première émission,  "spéciale EFT" sur la radio "Ici et Maintenant". Lors de l'émission présentée par Laurent Fendt, c'est durant une heure et demie d'antenne, que Geneviève Gagos et Claire Bracq, ont présenté l'EFT, aux auditeurs.

-

je sais que cette émission a été très suivie, au vu de vos nombreux témoignages enthousiastes, et appels téléphoniques, juste après l'émission et dans les jours qui ont suivi.

-

Nous vous informerons bien sûr, de nos prochaines interventions.

-

A très bientôt

-

-Amicalement

-

Geneviève

-


-

-

-
-
1 extrait de l’art 6 : praticiens professionnels EFT, justifiant d’une formation reconnue par l’Association Française EFT, d’une pratique dans cette discipline, d’une participation régulière à la formation permanente et aux intervisions  telle que cette formation est définie par le Code de Déontologie, et ayant signé ce Code de Déontologie. 
-

-
-
-
-
-

2-Message de -Martine Mauvais

-
-

-

Bonjour à tous, 

-

Ceux d'entre vous qui ont participé au week-end d'intervision pour les niveaux 2 et 3 à LYON en Octobre, auront, j'en suis sûre, redoublé d'ardeur pour « tapoter sur vraiment tout » ! Les trois remarquables succès que le Dr Frédéric Rosenfeld a obtenus en trois courtes séances, avec des patients ayant des problèmes psychiatriques graves, nous encouragent encore dans notre pratique ! Rappelons que seuls les médecins ont la capacité, dans un milieu hospitalier protégé, de travailler pour de tels cas.

-

Dans ma courte intervention sur « Le Palais des Possibles » j'ai eu l'occasion d'insister auprès des participants, sur un emploi encore peu exploité de l'EFT, En effet, nous nous contentons vite du soulagement qui nous procure l'EFT en nous libérant de nos problèmes de longue date et de ceux qui surviennent dans l'instant, et c'est facile à comprendre puisque notre vie est  déjà améliorée, et souvent de façon spectaculaire. Mais nous pouvons aller beaucoup plus loin, bien au-delà de nos limites habituelles. 

-

Ne plus souffrir c'est merveilleux, vivre une vie pleinement accomplie et heureuse ... C'est encore mieux ! Et l'EFT nous aide à remplacer nos croyances limitantes par des croyances aidantes, à prendre garde aux jugements que nous portons sur nous-mêmes, à tous les « Il faut », « Je dois », « C'est normal », « Je ne suis pas capable de », « Je suis nul » etc...entendus durant notre vie, que nous avons intégrés inconsciemment, devenus des passagers clandestins qui sabotent notre vitalité, nos envies de changement, nos possibilités d'évolution, bref, qui annihilent nos chances d'épanouissement et de bonheur. Dès que nous en prenons conscience, nous pouvons commencer à employer l'EFT pour lever toutes ces limitations. 

-


-

-

Témoignage :

-

Voici deux témoignages dont j'ai demandé le récit à votre intention  à une de mes stagiaires du 2ème niveau : le premier m'a vraiment étonnée, et si je ne la connaissais pas... ! On peut dire qu'elle a vraiment « tapoté sur tout » !

-

« Au moment de la ménopause, ma poitrine a pris du volume et cela m'était insupportable, je trouvais cela disgracieux, inconfortable. J'ai pensé à faire de l'EFT et après une séance, le lendemain matin mon entourage a remarqué une différence. J'ai fait quelques séances supplémentaires et cela m'a réconcilié avec mon corps (Evelyne m'a dit avoir perdu 2 tailles de soutien-gorge !)

-

Après un décollement de rétine il y a 4 ans, j'avais depuis un certain temps de la sécheresse oculaire. Après quelques séances cette gêne a disparu et j'ai donc décidé d'étendre à la macula, à la rétine et au cristallin ce travail. » Evelyne B. Paris, le 6 Octobre 2009.

-


-

-

Articles traduits :

-

Voici le récit du traitement réussi d'un mal très répandu. Remarquez au passage à quel point nous oublions vite nos maux passés : l'inconvénient est que nous oublions aussi de nous servir à nouveau de l'EFT !

-

EFT pour les brûlures d'estomac - Soulagement durable pour le reflux gastrique

-

Je vous propose ensuite quelques idées pour tapoter en public en toute discrétion. Si vous en avez d'autres, faites-en nous part !

-

Comment « tapoter en public »

-


-

-

Portez-vous bien, et à bientôt !

-

Bien amicalement,

-

Martine Mauvais

-

-

-

-
-

3-Calendrier des -formations EFT

-

Pour vous inscrire aux stages de -Geneviève (désormais à Lyon part Dieu), réservés aux Professionnels de la Santé et de la relation d'Aide, aller à
-

-

http://www.technique-eft.com/formations-eft-EFTbyWorkshop-France.php et -cliquez sur le lien dans la colonne de gauche afin d'en -découvrir les prix et modalités -d'inscription.

-

Pour les personnes souhaitant apprendre l'EFT, pour leur développement personnel, pour elles-mêmes et leur entourage immédiat, retrouver le calendrier des formations de Véronique Waumans à cette adresse : http://www.technique-eft.com/formations-eft-EFTbyWorkshop-France.php 
-
- - - -Pour avoir les dépliants et tarifs des stages de Martine -MAUVAIS, contactez-la directement à cette adresse : martine.mauvais@sfr.fr
-
- - - -Même si c'est le retour de votre contrat de formation -complété et signé -accompagné du versement -de votre acompte qui officialise votre réservation, sachez -que -cet acompte ne sera encaissé que 3 à 4 semaines -avant la -date du stage. Si votre formation doit être prise en charge -par -votre employeur pensez à nous demander une convention de -formation dans les meilleurs délais. Ce type de -démarche -est toujours plus longue que celle d'un contrat de formation individuel.
-

-
-

4-Divers EFT

-
    -
  • Vous avez rejoint le site -récemment
- - - - -Vous pouvez -retrouvez les précédentes newsletters du site -à -cette adresse :
-
http://www.technique-eft.com/archives/index.php -
-
    -
  • Les vidéos
  • -

    La première -vidéo EFT en -français est toujours disponible sur le site de la -Technique-EFT -à l'adresse suivante : Vidéo -en français EFT
    -

-
    -


    - - - -Vous pourrez également commander les vidéos en -anglais de -Gary Craig en cliquant ci-après. Un tarif -dégressif vous -est réservé selon le nombre de DVD -commandé.
    Vidéos -en anglais de Gary Craig
    -
    - - - -Ces vidéos représentent des heures de tournage -sur de -nombreux sujets traités lors des séminaires -qu'organise -Gary Craig.
    -
    - - - -Ces vidéos sont en cours de traduction et vous pourrez -obtenir -les premiers textes en français en les commandant -à cette -adresse

    -

    -
    http://www.psycho-energie.fr/index.php?option=com_content&view=category&id=58:traductions-des-dvd-de-gary-craig&Itemid=57&layout=default
    -

    La nouvelle -vidéo EFT "Try It On -Everything" est disponible à la vente en copiant ce lien -dans la -barre adresse de votre navigateur : -http://www.tryitoneverything.com/cmd.php?af=822326" ou en passant par -le site www.Technique-EFT.com et -en visitant la page réservée aux -"Vidéos EFT".
    -

    -
  • L'animation d'une ronde d'EFT en images
  • -

    Pour vous aider dans vos premiers pas -avec l'EFT une animation en dessins est présente sur le site.Animation -d'une session en images
    -
    - - - -Pensez bien à la mentionner aux personnes à qui -vous -parlez de l'EFT afin qu'ils en bénéficient eux -aussi pour -leurs premiers pas avec cette merveilleuse technique.

    -
  • Les prestations disponibles sur le site
  • -

    Vous le savez l'EFT peut -également -s'appliquer à distance. Pour cela vous trouverez plusieurs -prestations directement par le biais de l'Internet, que ce soit pour -vous aider dans la construction de votre première phrase -EFT, -pour un court accompagnement ou pour un suivi plus long qui vous -permettra d'avancer considérablement dans votre -démarche -personnelle.
    -
    - - - -Vous trouverez de plus amples renseignements à cette adresse -:
    Besoin -d'aide


-
-
- -

 


-
- -    \ No newline at end of file diff --git a/pages/archives/eft-news-oct-2008.php b/pages/archives/eft-news-oct-2008.php deleted file mode 100644 index 07bc0c2..0000000 --- a/pages/archives/eft-news-oct-2008.php +++ /dev/null @@ -1,238 +0,0 @@ - - -
-

Courrier -de la Technique-EFT.com. Edition de Octobre 2008.

-
    -
  1. Message de -Geneviève -BALLY
  2. -
  3. Le courrier de Martine -Mauvais
  4. -
  5. Calendrier des formations EFT
  6. -
  7. Divers
-
-

1-Message -de Geneviève BALLY

-

-Bonjour à tous !
-
- -Les directives de Gary Craig continuent d'évoluer. Ainsi, c'est officiel, à compter de ce premier octobre, il n'existe plus de stages -avec la mention "approuvé".
-
Egalement chaque personne proposant des stages EFT doit afficher sur son site ceci:
-"Ces ateliers représentent les vues des présentateurs et pas nécessairement celles d'EFT, de Gary Craig ou d'emofree.com." C'est chose faite sur -www.Technique-EFT.com
-De même les stages Niveau I, II et III vont être renommés. Il semble que Gary prévoit une refonte complète de ses directives.
-
- -Par ailleurs, lors d'échanges par mail avec Gary et sa fille Tina (chargée de la certification), j'ai pu obtenir quelques précisions supplémentaires concernant la certification.
-
-L'examen dure deux heures et comporte un certain nombre de cases à cocher. Une fois l'examen démarré vous ne pourrez l'interrompre.
-
-Par contre une personne ayant parfaitement étudié ses DVD n'aura besoin que de la moitié du temps pour répondre aux questions. Ce qui laisse la place pour une éventuelle traduction pour les non-anglophones.
-
-Si vous rencontrez quelques difficultés avec la langue anglaise vous êtes autorisé à vous faire assister par un traducteur impartial.
-
-Sachant toutefois que Tina et Gary veulent pouvoir s'entretenir avec chaque personne certifiée et qu'ils ne parlent que l'anglais.
-
- - - - -A noter également que Gary Craig demande à chaque candidat à la certification d'avoir traité 100 personnes avec l'EFT et -d'avoir un minimum de 1 an de pratique. Il s'agit bien de 100 personnes et non de 100 cas. Il souligne très justement que cela correspond à 2 nouveaux clients par semaine.
-
-J'en profite pour attirer votre attention sur le fait que certains peuvent être tentés de passer cette certification même s'ils sont encore en formation et ne remplissent pas encore les conditions d'acceptation de Gary Craig. Cela fait partie d'un état d'esprit que je n'approuve absolument pas et qui va même plus loin que cette simple appréciation :
- -Que penser d'un praticien qui oeuvrerait dans ce sens ?
- -Quel est sa véritable motivation ?
- -Quelle répercution peut avoir cette attitude sur l'avenir de l'EFT ?
-
-Restez donc vigilant quant au choix de votre praticien EFT.
-
-L'annuaire du site www.Technique-EFT.com est actuellement fermé aux nouvelles inscriptions. Les inscriptions en cours s'appuyant sur une année civile, les personnes inscrites le resteront au moins jusqu'au 31 décembre 2008.
-
-A partir du 1 er janvier 2009 il sera exclusivement réservé à mes élèves "niveau 2 validé". Que cela veut-il dire ?
-
-Avec l'arrivée de la certification de Gary Craig j'ai mis en place une supervision dès la fin du stage niveau 2. A la fin de leur stage niveau 2 les stagiaires devront fournir un rapport détaillé de leur pratique EFT afin de faire valider leur niveau 2. C'est seulement après cette validation qu'ils pourront apparaître sur l'annuaire du site.
-
C'est une manière pour vous d'être assuré que la personne inscrite a réellement déjà pratiqué l'EFT et que leur manière d'utiliser l'EFT bénéficie d'une supervision.
-
-Pourquoi cette mesure ? Parce que je suis souvent sollicitée pour donner mon avis sur telle ou telle personne présente dans mon annuaire. Cela ne pose pas de problèmes lorsque l'on connait la personne mais n'est pas possible le cas échéant.
-
-Même si cette parution ne vaut pas une caution de ma part, (chaque personne étant responsable de sa manière de travailler) je pense que la formule est plus logique que la précédente.

-

Témoignages francophones

-

Ce mois-ci c'est Amanda Castello, d'Italie, qui vous propose de découvrir les résultats qu'elle a obtenus avec l'EFT
-
-Amanda a recueilli le témoignage d'une de ses patientes atteinte de pityriasis.
-
-Cette affection qui habituellement demande 2 à 6 mois avant de disparaître, a guéri ici en 8 jours seulement.
-La patiente a eu la bonne idée de prendre des photos tout au long de son traitement EFT.
-
Bien entendu le nom de la patiente n'est pas mentionnée afin de respecter sa vie privée. -Vous découvrirez ces photos dans un petit diaporama préparé à votre intention.

-

EFT appliqué à un pityriasis.

-

Gary Craig a publié dans sa newsletter du 15 septembre un article du site www.technique-eft.com.
-
-Pour ce qui n'ont pu le lire en anglais, voici la version originale.
-
-Il s'agit d'un résultat obtenu auprès d'un jeune homme de 16 ans atteint de deux tics qui le perturbaient.
-
-C'est assez étonnant lorsque à la fin du traitement du second tic, il déclare :"C'est parti ! ça me fait drôle! -c'est comme l'autre fois pour le tic de la bouche. Une sensation que c'est fini et que ça ne reviendra plus !"

-

Deux tics bien en place disparaissent chacun en une séance.

-

-Profitez bien de ces belles journées et des couleurs d'automne et tapotez bien!
-
-Au mois prochain
-
Bien -amicalement
-
-Geneviève

-

2-Le -courrier de Martine Mauvais

-

Bonjour à tous,
-
A la demande d'une lectrice du COURRIER DE LA TECHNIQUE-EFT.COM je vais vous indiquer, ou vous rappeler, QUELQUES TRUCS SIMPLES (il y en a d'autres) pour dépasser la difficulté qui arrête souvent les débutants en EFT :
-
« La difficulte de trouver les phrases à dire pour tapoter » : un faux problème !
-
- -Vous serez peut-être surpris d'apprendre qu'il y a quelques années ce n'était pas un problème...parce qu'il n'y avait pas de phrases à dire et qu'il s'agissait seulement de penser au problème tout en tapotant ! C'est-à-dire qu'il fallait porter son attention sur le problème, c'est tout.. Alors pourquoi maintenant ces phrases, ou mots de rappel ?
-
Parce que l'expérience montre qu'elles ont permis à l'EFT d'être plus efficace et d'évoluer énormément.
-
Les phrases (ou mots) de rappel, ont pour but de FACILITER le processus, pas de le compliquer !
-
-Donc, pour commencer à appliquer l'EFT à un problème quelconque, ne nous focalisons pas sur la recherche de LA phrase idéale : il n'est pas grave qu'elle soit approximative, elle s'affinera toute seule au fil des séquences (ou) rondes. Les mots plus précis et plus justes viennent souvent spontanément, avec l'EFT.

-
    -
  • -1er TRUC :
  • -

    La difficulté de trouver une phrase se présente la plupart du temps au début du travail, tout de suite après l'énoncé du problème à traiter : s'il ne vient pas de phrase toute simple, de bon sens, demandez-vous s'il y a un ou des symptômes physiques associés au problème émotionnel. Exemple : la gorge serrée. Tapotez alors sur le problème physique. Au fur et à mesure qu'il diminue, le problème émotionnel va se transformer, et des prises de conscience se font qui mettent sur la piste de différents aspects.
    -
    -Si la personne ne ressent rien de particulier au niveau physique, demandez-lui si elle pense remplir complètement ses poumons à chaque inspiration, faites-lui évaluer le pourcentage de remplissage d'air, travaillez sur « ma respiration incomplète », ou « bloquée », réévaluez.. Revenez ensuite au problème émotionnel. -C'est tout aussi valable pour travailler sur soi.

    -
  • -2ème TRUC :
  • -

    Je fais parfois ça : je me demande comment je me sens, et si je ne sais pas trop et que je ME réponds à moi-même : « BERK » par exemple, ou bien carrément des onomatopées. Alors je tapote sur ce problème BERK : « Même si je me sens berk.... », ou « Même si oulalalala... », « Même si j'ai ce machin que je n'arrive pas à nommer, ce n'importe quoi, ... ». -Et pour travailler avec une personne qui ne souhaite pas dire de quoi il s'agit on peut même employer la technique du récit en langue « gromelo » : elle grommelle le récit de façon incompréhensible ou inaudible pour vous, tout en tapotant sur tous les points.

    -
  • -3ème TRUC :
-

Exagérez ! Employez des gros mots, caricaturaux, lâchez-vous, donnez dans le tragi-comique, mettez toute votre énergie dans ce « sketch », dites ce qu'il vous passe par la tête !
-
-Vous voyez, C'EST UN JEU D'ENFANT, LA PREUVE AVEC CES ARTICLES de la lettre de Gary Craig, traduits :
-
-Ces 3 premiers articles nous montrent comment des enfants se servent de l'EFT :

-

Sydelle, 4 ans, se débarrasse de son rhume avec l'EFT

-

Le court récit suivant m'a laissée rêveuse, je l'avoue. Ce ne sont pas les résultats qui m'étonnent, mais le fait que le professeur ait confié le soin aux élèves de prendre soin de leurs camarades !

-

Des enfants utilisent l'EFT pour d'autres enfants

-

Une petite fille de 4 ans tapote sur sa maman...

-

-Le quatrième article est ... « RESERVE AUX ADULTES », je veux dire « aux praticiens plus expérimentés » car il porte sur LES PROBLEMES LIES AUX CROYANCES. Voyez le beau travail de Deborah Miller, vérifiez une fois de plus les conséquences des « Il FAUT » entendus dans notre enfance ou seulement déduits du comportement de nos parents.

-

-Disparition simultanée de la croyance que « La vie est dure » et d'une douleur au cou vieille de 15 ans (Suivi : un mois après, la douleur n'est toujours pas revenue)

-

ENVOYEZ-NOUS VOS TEMOIGNAGES : j'en entends toutes sortes, mais c'est évidemment aux témoins directs de les envoyer, et il faut un peu de votre temps pour les rédiger. Le style et l'orthographe n'ont pas d'importance. Soyez sûrs que cela intéressera les lecteurs du courrier de www.technique-eft.com et encouragera les débutants à expérimenter !
-
-Pour le mois prochain, j'ai sélectionné dès à présent un article sur un cas de douleur dentaire pour laquelle le dentiste ne peut rien, traité de façon originale, et ... avec une fin heureuse, vous vous en doutez.
-
-Avec toutes mes amitiés,
-
-Martine Mauvais
-

-
-

3-Calendrier -des formations EFT

-

Il ne -reste plus qu'une place pour le niveau 2 EFT -des 15 et 16 novembre à Paris. Si vous avez -déjà -suivi un niveau 1 conforme aux directives de Gary Craig et que vous -êtes intéressé pour poursuivre votre -formation -contactez rapidement Martine. (MMauv@aol.com)

-

Toutes -les autres formations -EFT que Martine et moi vous -proposons d'ici la fin de cette année sont -complètes.
-Le calendrier des -formations niveaux I, II et III pour le premier semestre 2009 est en -ligne. Si vous êtes intéressé pour -suivre une -formation ne vous fiez pas à la date -éloignée des -stages proposés et retenez dès à -présent -votre place car il nous sera difficile de rajouter des stages -à -ceux prévus.

-

-Pour vous inscrire aux stages de Geneviève BALLY, aller à http://www.technique-eft.com/formations-eft-EFTbyWorkshop-France.php -et cliquez sur le lien dans la colonne de gauche afin d'en découvrir les prix et -modalités d'inscription.
-
-Pour avoir les dépliants et tarifs des stages de Martine MAUVAIS, -contactez-la directement à cette adresse : MMauv@aol.com
-
-Même si c'est le versement de votre acompte qui -officialise votre réservation, sachez que cet acompte ne -sera encaissé que 3 à 4 semaines avant la date du -stage.
-

-
-

3-Divers -EFT

-
-
    -
  • Les vidéos
  • -

    La première -vidéo EFT en français est toujours disponible sur -le site de la Technique-EFT à l'adresse suivante : Vidéo -en français EFT
    -
    -Vous pourrez également commander les vidéos en -anglais de Gary Craig en cliquant ci-après. Un tarif -dégressif vous est réservé selon le -nombre de DVD commandé.Vidéos -en anglais de Gary Craig
    -
    -Ces vidéos représentent des heures de tournage -sur de nombreux sujets traités lors des -séminaires qu'organise Gary Craig.
    -
    -Ces vidéos sont en cours de traduction et vous pourrez -obtenir les premiers textes en français en les commandant -ici : Premières -traductions en français des vidéos de Gary Craig

    -

    La nouvelle vidéo EFT "Try It On -Everything" -est disponible à la vente en cliquant sur ce lien Try It On -Everything -ou -en passant par le site www.Technique-EFT.com -et en visitant la page réservée aux -"Vidéos EFT".
    -

    -
  • L'animation d'une ronde -d'EFT en images
  • -

    Pour vous aider dans vos -premiers pas avec l'EFT une animation en dessins est -présente sur le site.Animation -d'une session en images
    -
    -Pensez bien à la mentionner aux personnes à qui -vous parlez de l'EFT afin qu'ils en -bénéficient eux aussi pour leurs premiers pas -avec cette merveilleuse technique.

    -
  • Les prestations disponibles -sur le site
  • -

    Vous le savez l'EFT -peut également s'appliquer à distance. -Pour cela vous trouverez plusieurs prestations directement par le biais -de l'Internet, que ce soit pour vous aider dans la -construction de votre première phrase EFT, pour un court -accompagnement ou pour un suivi plus long qui vous permettra -d'avancer considérablement dans votre -démarche personnelle.
    -
    -Vous trouverez de plus amples renseignements à cette adresse -: -Besoin -d'aide

\ No newline at end of file diff --git a/pages/archives/eft-news-oct-2010.php b/pages/archives/eft-news-oct-2010.php deleted file mode 100644 index 647c756..0000000 --- a/pages/archives/eft-news-oct-2010.php +++ /dev/null @@ -1,146 +0,0 @@ -  -

Technique-EFT.comCourrier de la Technique-EFT.com. Edition de Octobre 2010

-
    -
  1. Le courrier de Geneviève Gagos
  2. -
  3. Le courrier de Martine Mauvais
  4. -
  5. Calendrier des formations EFT
  6. -
  7. Divers
-
-

1-Message de Geneviève Gagos

-

Bonjour à tous,

-

Si j'en crois le courrier que je reçois, vous avez aimé parler du temps et de, comment travailler dessus avec l' EFT.

-

Je vous propose donc de continuer sur cette lancée, car il faut bien le dire, un des paramètres qui influe sur notre  «je n'ai pas le temps...» est que nous sommes assaillis de tâches désagréables, qui en plus d'être chronophages, nous poussent inexorablement, vers la procrastination.

-

Non, les tâches désagréables ne deviendront pas votre tasse de thé pour autant, après utilisation de l'EFT, mais vous y passerez moins de temps, car vous vous déciderez plus rapidement à vous en occuper... et parfois même, au début, sans vous en rendre vraiment compte,.

-

Que ce soit pour le paiement de vos factures, tenir votre comptabilité et toutes autres tâches de gestion, ou les corvées diverses, nous les repoussons jusqu'à l'extrême. Parfois même, elles finissent par tellement s'amonceler que vous vous retrouvez avec une liste de choses restées en souffrance.

-


-

-

Alors comment faire ?

-

Il est habituellement, simple d'utiliser l'EFT pour nous aider à effacer l'aversion à faire une activité particulière.

-

Par exemple, je n'aime pas trier le disque dur de mon ordinateur. Hum ! quel drôle d'exemple ! Comment y ai-je pensé ?

-

Même si au début, je le faisais régulièrement, ces derniers temps, j'ai plutôt laissé s'accumuler les dossiers et j'ai quelque peu négligé mes sauvegardes. Aujourd'hui, un message s'affiche sur mon écran, me rappelant qu'il est temps que je m'y mette : «Votre disque de démarrage est plein !» 

-

La phrase dans ce cas pourrait être : «Même si ça m'agace de devoir trier mon disque dur sans délai, je m'aime et je m'accepte complètement»

-

«Même si ça m'agace toujours, de devoir trier mon disque dur sans délai, je m'aime et je m'accepte complètement»

-

«Même si ça m'agace encore, de devoir trier mon disque dur sans délai, je m'aime et je m'accepte complètement»

-

«Même si ça m'agace toujours un peu, de devoir trier mon disque dur sans délai, je m'aime et je m'accepte complètement»

-

Après ces quelques rondes, je me sens de trier mon disque dur, sans être contrariée. 

-

Je m'en occupe de suite, et je reviens vers vous... 

-


-

-

... Cette étape franchie, je me lance dans l'idée de le faire désormais au fur et à mesure, pour ne plus me retrouver dans l'urgence :

-

«Même si je ne pense pas que j'arriverais à trier mon disque dur sans attendre d'être dans l'urgence, je m'aime et je m'accepte complètement»

-

«Même si je ne pense toujours pas, que j'arriverais à trier mon disque dur sans attendre d'être dans l'urgence, je m'aime et je m'accepte complètement»

-

«Même si je ne pense encore pas, que j'arriverais à trier mon disque dur sans attendre d'être dans l'urgence, je m'aime et je m'accepte complètement»

-

Vous l'avez sans doute remarqué, ces rondes sont tout de même, trop globales et vous aurez parfois, besoin de les affiner afin de ressentir, que oui, maintenant, vous vous pouvez faire ce travail au fil de l'eau.

-

Je vous suggère d'approfondir, en réfléchissant plus précisément à ce qui vous empêche de faire cette tâche.

-

Cela peut être :

-

-
    -
  • Je n'ai pas le temps
  • -
  • J'ai mieux à faire
  • -
  • Je n'aime pas cela
  • -
  • J'ai peur de faire une erreur de manipulation
  • -
  • J'ai peur de jeter des dossiers importants...
-

Vous établirez votre liste, et  vous évaluerez chaque aspect, de 0 à 10. Puis vous tapoterez chacune de ces phrases, jusqu'à 0.

-

Je suis persuadée, que la prochaine fois,  vous ne vous rendrez pas vraiment compte que vous avez, cette fois, réalisé votre tâche plus aisément. Puis vous constaterez, que vous l'avez faite sans même, vous y arrêter. 

-

Toutefois, vous aurez parfois à aller chercher encore plus loin, pour résoudre ce problème. Je me rappelle d'un patient qui souffrait de cette procrastination, très à la mode aujourd'hui.

-

En travaillant sur :

-

«Même si je n'ai pas encore fait le dossier que je dois rendre mardi, je m'aime et je m'accepte complètement»

-

Il s'était rendu compte qu'il préférait travailler dans l'urgence, car il était trop perfectionniste. Il avait donc opter, inconsciemment, pour la procrastination. Le fait de faire les choses au dernier moment, ne lui laissait guère le temps de les refaire ensuite, et il ne se posait plus la question de savoir si c'était suffisamment parfait à son goût.

-

Le stress alors, engendré en fonctionnant ainsi, lui était plus supportable que celui de recommencer sans cesse, son travail.

-

Dans ce cas, la procrastination était une conséquence de son perfectionnisme, dont l'origine se trouvait dans son enfance. 

-

-

Les prises de conscience font également partie des effets bénéfiques de l'EFT.
-

-

Alors !? Prêts à passer à l'action ?

-

A très bientôt

-

Amicalement

-

Geneviève

-

 

-

Informations diverses :

-

 Du nouveau dans les formations professionnelles dispensées par Geneviève Gagos :

-

Vous savez que je porte une attention particulière au sérieux de la formation EFT. Mes stages font appel à un programme efficace, et se poursuivent par la supervision de mes étudiants. L'objectif étant d'offrir au public, des praticiens dignes de confiance ayant reçu une formation à la hauteur de leur tâche future, leur permettant d'accompagner efficacement leur patients ou clients.

-

Pas de changement, concernant les personnes faisant déjà partie du personnel soignant ou de la relation d'aide. L'accès aux formations habituelles vous est toujours réservé dans les mêmes conditions.

-

La nouveauté concerne les débutants et nouveaux-venus dans la relation d'aide. Pour eux, un pré-requis est nécessaire, et il a été mis en place. 

-

Dès janvier, vous pourrez suivre le stage «Ecoute Active» indispensable pour vous donner toutes les chances de devenir un bon praticien EFT, avant de suivre le cursus habituel EFT (Module de base, module d'approfondissement, supervision individuelle, supervision de groupe, module perfectionnement). 

-

Bien entendu, si vous souhaitez participer à ce stage «Ecoute Active», pour approfondir cette qualité fondamentale pour une bonne pratique de l'EFT, vous pourrez le faire, même si vous êtes déjà installé dans la relation  d'aide.

-

Egalement, une autre nouveauté consiste en un stage «Mener une séance EFT». Les débutants dans la relation d'aide auront besoin de cet enseignement pour commencer leur activité dans les meilleures conditions. De la même façon, ce stage pourra être suivi, par les personnes déjà installées dans la relation d'aide, et souhaitant se concentrer plus précisément sur les séances EFT.

-

Vous trouverez tous les détails des formations, en suivant le lien suivant :

-

http://www.technique-eft.com/formation-eft.php

-

 

-

Conférence-Atelier EFT :

-

Venez assister à une conférence-atelier EFT, à Greyzieu la Varenne (69290), le 15 janvier 2011.

-

C'est encore un peu loin, mais réservez dès à présent votre samedi après-midi et venez goûter aux joies et à l'efficacité de l'EFT.

-

Vous trouverez les détails sur le site de l'association "Le Chemin" : 

-

le-chemin.org/evenements.html

-

 

-

Nouvelle Présentation EFT avec audio :

-

Vous aimez la petite animation en images, puisque vous l'avez déjà visionnée 78 000 fois, aussi j'ai pensé vous faire plaisir en préparant une nouvelle animation, vous permettant de découvrir l'EFT... mais cette fois avec des commentaires audios. 

-

Une façon pour moi, de vous remercier pour votre fidélité !

-

www.Technique-EFT.com

-


-

-
-

-
-
-

2-Message de Martine Mauvais

-

-

-

-


-

-

Bonjour à toutes et à tous,

-

Décidément l'EFT est devenue crédible pour un grand nombre de personnes, mais aussi pour des instances officielles importantes. Pour preuve, dans la lettre du 21 Septembre dernier de eftuniverse.com, la nouvelle suivante : aux U.S.A., des membres du Congrès, Républicains comme Démocrates, ont usé de leur influence pour faire reconnaître l'EFT par les officiels en charge de la santé mentale dans différentes instances gouvernementales.

-

Mi-Septembre, un ancien attorney général de Californie influent, Dan Lungren, a organisé une séance consacrée à la présentation de l'utilisation de l'EFT pour le SSPT, ou syndrome du stress post-traumatique. Il est vrai que les vidéos sur le traitement des vétérans du Vietnam sont très convaincantes !

-


-

-

MES ARTICLES DU MOIS. 2 témoignages qui m'ont inspirée : le premier, parce qu'il s'agit d'une maman débutante en EFT qui débarrasse se fille de 4 ans de ses terreurs nocturnes.

-

Or lors de ma conférence sur l'EFT du week-end dernier, je viens justement de rencontrer des mamans qui m'ont demandé : « Puis-je faire  de l'EFT pour mes enfants ? ».

-

La teneur de ma réponse a été : « Oui, bien sûr ! c'est une belle expérience. Vous en avez plusieurs exemples dans les rubriques CAS CONCRETS et ARCHIVES du site www.technique-eft.com Chacun montre des astuces simples pour travailler avec les petits, que ce soit pour triompher des « monstres » qui les terrifient au moment de se coucher, pour la phobie de l'école ou pour les « bobos » de tous les jours.

-

Ils intègrent vite cet outil, car ils ne sont pas gênés par les préjugés des adultes. C'est une grande chance pour eux d'y être initiés tout jeunes, ils auront ensuite l'habitude d'y faire appel sans attendre, ce qui leur évitera bien des problèmes émotionnels ou physiques dus aux émotions non traitées  » !

-

-

Une remarque : pour la phrase de « préparation » (correction de l'IP), je propose aux enfants de dire « Même si j'ai ... je suis une super petite-fille (ou un super petit garçon) et mon papa et ma maman m'aiment beaucoup ». Cette formule magique déclenche des sourires radieux !

-

Je prends la précaution auparavant de m'assurer que la famille est « normale » et au complet ! La version très actuelle, que j'emploie parfois en souriant d'un air complice « ...je suis une super nana » fait pétiller les yeux des petites filles malicieuses !

-

Bonne séance d'EFT avec une petite fille de 4 ans qui préfère employer ses propres mots

-

Le deuxième témoignage m'a fait très plaisir : il devrait encourager plusieurs de mes stagiaires, infirmières de profession, à employer l'EFT dans le cadre de leur travail, d'autant plus que cela n'interfère en rien avec le traitement médical en cours :

-

EFT (par une infirmière) pour une infection grave : la rougeur diminue à vue d'oeil

-

Quelle belle trousse de premiers secours que l'EFT ! Rappelez-vous, dans les CAS CONCRETS, il y a notamment un exemple de réduction en 10 minutes des symptômes d'oedème de Quincke (réaction allergique souvent fatale), en attendant les secours...qui n'ont pas été nécessaires. Le narrateur insiste sur le fait que l'EFT pourrait rendre d'immenses services si les pompiers, policiers et personnels des urgences médicales y étaient formés.

-

Bon mois d'Octobre, et ... bonne pratique de l'EFT !

-

Bien amicalement,

-

Martine MAUVAIS

-

 

-

-
-

-

-

-

3-Calendrier des formations EFT

-

Pour vous inscrire aux stages de Geneviève ( à Lyon part Dieu), suivez les liens selon votre profil de départ  :
-

-

http://www.technique-eft.com/formation-eft.php

-


-

-

Même si c'est le retour de votre contrat de formation complété et signé accompagné du versement de votre acompte qui officialise votre réservation, sachez que cet acompte ne sera encaissé que 3 à 4 semaines avant la date du stage. Si votre formation doit être prise en charge par votre employeur pensez à nous demander une convention de formation dans les meilleurs délais. Ce type de démarche est toujours plus longue que celle d'un contrat de formation individuel.

-


-Pour les dépliants et tarifs des stages de Martine Mauvais, contactez-la directement à cette adresse : martine.mauvais@sfr.fr. 
Pour ceux de Véronique Waumans, contactez-la à cette adresse : v.waumans@yahoo.fr

-


-

-
-

4-Divers EFT

-
    -
  • Vous avez rejoint le site récemment
Vous pouvez retrouvez les précédentes newsletters du site à cette adresse :
-
http://www.technique-eft.com/archives/index.php -
-
    -
  • Les vidéos
-

-

-
diff --git a/pages/archives/eft-news-octobre-2010.php.php b/pages/archives/eft-news-octobre-2010.php.php deleted file mode 100644 index 0d2f8a6..0000000 --- a/pages/archives/eft-news-octobre-2010.php.php +++ /dev/null @@ -1,145 +0,0 @@ -

Technique-EFT.comCourrier de la Technique-EFT.com. Edition de Août 2010

-
    -
  1. Le courrier de Geneviève Gagos
  2. -
  3. Le courrier de Martine Mauvais
  4. -
  5. Calendrier des formations EFT
  6. -
  7. Divers
-
-

1-Message de Geneviève Gagos

-

Bonjour à tous,

-

Si j'en crois le courrier que je reçois, vous avez aimé parler du temps et de, comment travailler dessus avec l' EFT.

-

Je vous propose donc de continuer sur cette lancée, car il faut bien le dire, un des paramètres qui influe sur notre  «je n'ai pas le temps...» est que nous sommes assaillis de tâches désagréables, qui en plus d'être chronophages, nous poussent inexorablement, vers la procrastination.

-

Non, les tâches désagréables ne deviendront pas votre tasse de thé pour autant, après utilisation de l'EFT, mais vous y passerez moins de temps, car vous vous déciderez plus rapidement à vous en occuper... et parfois même, au début, sans vous en rendre vraiment compte,.

-

Que ce soit pour le paiement de vos factures, tenir votre comptabilité et toutes autres tâches de gestion, ou les corvées diverses, nous les repoussons jusqu'à l'extrême. Parfois même, elles finissent par tellement s'amonceler que vous vous retrouvez avec une liste de choses restées en souffrance.

-


-

-

Alors comment faire ?

-

Il est habituellement, simple d'utiliser l'EFT pour nous aider à effacer l'aversion à faire une activité particulière.

-

Par exemple, je n'aime pas trier le disque dur de mon ordinateur. Hum ! quel drôle d'exemple ! Comment y ai-je pensé ?

-

Même si au début, je le faisais régulièrement, ces derniers temps, j'ai plutôt laissé s'accumuler les dossiers et j'ai quelque peu négligé mes sauvegardes. Aujourd'hui, un message s'affiche sur mon écran, me rappelant qu'il est temps que je m'y mette : «Votre disque de démarrage est plein !» 

-

La phrase dans ce cas pourrait être : «Même si ça m'agace de devoir trier mon disque dur sans délai, je m'aime et je m'accepte complètement»

-

«Même si ça m'agace toujours, de devoir trier mon disque dur sans délai, je m'aime et je m'accepte complètement»

-

«Même si ça m'agace encore, de devoir trier mon disque dur sans délai, je m'aime et je m'accepte complètement»

-

«Même si ça m'agace toujours un peu, de devoir trier mon disque dur sans délai, je m'aime et je m'accepte complètement»

-

Après ces quelques rondes, je me sens de trier mon disque dur, sans être contrariée. 

-

Je m'en occupe de suite, et je reviens vers vous... 

-


-

-

... Cette étape franchie, je me lance dans l'idée de le faire désormais au fur et à mesure, pour ne plus me retrouver dans l'urgence :

-

«Même si je ne pense pas que j'arriverais à trier mon disque dur sans attendre d'être dans l'urgence, je m'aime et je m'accepte complètement»

-

«Même si je ne pense toujours pas, que j'arriverais à trier mon disque dur sans attendre d'être dans l'urgence, je m'aime et je m'accepte complètement»

-

«Même si je ne pense encore pas, que j'arriverais à trier mon disque dur sans attendre d'être dans l'urgence, je m'aime et je m'accepte complètement»

-

Vous l'avez sans doute remarqué, ces rondes sont tout de même, trop globales et vous aurez parfois, besoin de les affiner afin de ressentir, que oui, maintenant, vous vous pouvez faire ce travail au fil de l'eau.

-

Je vous suggère d'approfondir, en réfléchissant plus précisément à ce qui vous empêche de faire cette tâche.

-

Cela peut être :

-

-
    -
  • Je n'ai pas le temps
  • -
  • J'ai mieux à faire
  • -
  • Je n'aime pas cela
  • -
  • J'ai peur de faire une erreur de manipulation
  • -
  • J'ai peur de jeter des dossiers importants...
-

Vous établirez votre liste, et  vous évaluerez chaque aspect, de 0 à 10. Puis vous tapoterez chacune de ces phrases, jusqu'à 0.

-

Je suis persuadée, que la prochaine fois,  vous ne vous rendrez pas vraiment compte que vous avez, cette fois, réalisé votre tâche plus aisément. Puis vous constaterez, que vous l'avez faite sans même, vous y arrêter. 

-

Toutefois, vous aurez parfois à aller chercher encore plus loin, pour résoudre ce problème. Je me rappelle d'un patient qui souffrait de cette procrastination, très à la mode aujourd'hui.

-

En travaillant sur :

-

«Même si je n'ai pas encore fait le dossier que je dois rendre mardi, je m'aime et je m'accepte complètement»

-

Il s'était rendu compte qu'il préférait travailler dans l'urgence, car il était trop perfectionniste. Il avait donc opter, inconsciemment, pour la procrastination. Le fait de faire les choses au dernier moment, ne lui laissait guère le temps de les refaire ensuite, et il ne se posait plus la question de savoir si c'était suffisamment parfait à son goût.

-

Le stress alors, engendré en fonctionnant ainsi, lui était plus supportable que celui de recommencer sans cesse, son travail.

-

Dans ce cas, la procrastination était une conséquence de son perfectionnisme, dont l'origine se trouvait dans son enfance. 

-

-

Les prises de conscience font également partie des effets bénéfiques de l'EFT.
-

-

Alors !? Prêts à passer à l'action ?

-

A très bientôt

-

Amicalement

-

Geneviève

-

 

-

Informations diverses :

-

 Du nouveau dans les formations professionnelles dispensées par Geneviève Gagos :

-

Vous savez que je porte une attention particulière au sérieux de la formation EFT. Mes stages font appel à un programme efficace, et se poursuivent par la supervision de mes étudiants. L'objectif étant d'offrir au public, des praticiens dignes de confiance ayant reçu une formation à la hauteur de leur tâche future, leur permettant d'accompagner efficacement leur patients ou clients.

-

Pas de changement, concernant les personnes faisant déjà partie du personnel soignant ou de la relation d'aide. L'accès aux formations habituelles vous est toujours réservé dans les mêmes conditions.

-

La nouveauté concerne les débutants et nouveaux-venus dans la relation d'aide. Pour eux, un pré-requis est nécessaire, et il a été mis en place. 

-

Dès janvier, vous pourrez suivre le stage «Ecoute Active» indispensable pour vous donner toutes les chances de devenir un bon praticien EFT, avant de suivre le cursus habituel EFT (Module de base, module d'approfondissement, supervision individuelle, supervision de groupe, module perfectionnement). 

-

Bien entendu, si vous souhaitez participer à ce stage «Ecoute Active», pour approfondir cette qualité fondamentale pour une bonne pratique de l'EFT, vous pourrez le faire, même si vous êtes déjà installé dans la relation  d'aide.

-

Egalement, une autre nouveauté consiste en un stage «Mener une séance EFT». Les débutants dans la relation d'aide auront besoin de cet enseignement pour commencer leur activité dans les meilleures conditions. De la même façon, ce stage pourra être suivi, par les personnes déjà installées dans la relation d'aide, et souhaitant se concentrer plus précisément sur les séances EFT.

-

Vous trouverez tous les détails des formations, en suivant le lien suivant :

-

http://www.technique-eft.com/formation-eft.php

-

 

-

Conférence-Atelier EFT :

-

Venez assister à une conférence-atelier EFT, à Greyzieu la Varenne (69290), le 15 janvier 2011.

-

C'est encore un peu loin, mais réservez dès à présent votre samedi après-midi et venez goûter aux joies et à l'efficacité de l'EFT.

-

Vous trouverez les détails sur le site de l'association "Le Chemin" : 

-

le-chemin.org/evenements.html

-

 

-

Nouvelle Présentation EFT avec audio :

-

Vous aimez la petite animation en images, puisque vous l'avez déjà visionnée 78 000 fois, aussi j'ai pensé vous faire plaisir en préparant une nouvelle animation, vous permettant de découvrir l'EFT... mais cette fois avec des commentaires audios. 

-

Une façon pour moi, de vous remercier pour votre fidélité !

-

www.Technique-EFT.com

-


-

-
-

-
-
-

2-Message de Martine Mauvais

-

-

-

-


-

-

Bonjour à toutes et à tous,

-

Décidément l'EFT est devenue crédible pour un grand nombre de personnes, mais aussi pour des instances officielles importantes. Pour preuve, dans la lettre du 21 Septembre dernier de eftuniverse.com, la nouvelle suivante : aux U.S.A., des membres du Congrès, Républicains comme Démocrates, ont usé de leur influence pour faire reconnaître l'EFT par les officiels en charge de la santé mentale dans différentes instances gouvernementales.

-

Mi-Septembre, un ancien attorney général de Californie influent, Dan Lungren, a organisé une séance consacrée à la présentation de l'utilisation de l'EFT pour le SSPT, ou syndrome du stress post-traumatique. Il est vrai que les vidéos sur le traitement des vétérans du Vietnam sont très convaincantes !

-


-

-

MES ARTICLES DU MOIS. 2 témoignages qui m'ont inspirée : le premier, parce qu'il s'agit d'une maman débutante en EFT qui débarrasse se fille de 4 ans de ses terreurs nocturnes.

-

Or lors de ma conférence sur l'EFT du week-end dernier, je viens justement de rencontrer des mamans qui m'ont demandé : « Puis-je faire  de l'EFT pour mes enfants ? ».

-

La teneur de ma réponse a été : « Oui, bien sûr ! c'est une belle expérience. Vous en avez plusieurs exemples dans les rubriques CAS CONCRETS et ARCHIVES du site www.technique-eft.com Chacun montre des astuces simples pour travailler avec les petits, que ce soit pour triompher des « monstres » qui les terrifient au moment de se coucher, pour la phobie de l'école ou pour les « bobos » de tous les jours.

-

Ils intègrent vite cet outil, car ils ne sont pas gênés par les préjugés des adultes. C'est une grande chance pour eux d'y être initiés tout jeunes, ils auront ensuite l'habitude d'y faire appel sans attendre, ce qui leur évitera bien des problèmes émotionnels ou physiques dus aux émotions non traitées  » !

-

-

Une remarque : pour la phrase de « préparation » (correction de l'IP), je propose aux enfants de dire « Même si j'ai ... je suis une super petite-fille (ou un super petit garçon) et mon papa et ma maman m'aiment beaucoup ». Cette formule magique déclenche des sourires radieux !

-

Je prends la précaution auparavant de m'assurer que la famille est « normale » et au complet ! La version très actuelle, que j'emploie parfois en souriant d'un air complice « ...je suis une super nana » fait pétiller les yeux des petites filles malicieuses !

-

Bonne séance d'EFT avec une petite fille de 4 ans qui préfère employer ses propres mots

-

Le deuxième témoignage m'a fait très plaisir : il devrait encourager plusieurs de mes stagiaires, infirmières de profession, à employer l'EFT dans le cadre de leur travail, d'autant plus que cela n'interfère en rien avec le traitement médical en cours :

-

EFT (par une infirmière) pour une infection grave : la rougeur diminue à vue d'oeil

-

Quelle belle trousse de premiers secours que l'EFT ! Rappelez-vous, dans les CAS CONCRETS, il y a notamment un exemple de réduction en 10 minutes des symptômes d'oedème de Quincke (réaction allergique souvent fatale), en attendant les secours...qui n'ont pas été nécessaires. Le narrateur insiste sur le fait que l'EFT pourrait rendre d'immenses services si les pompiers, policiers et personnels des urgences médicales y étaient formés.

-

Bon mois d'Octobre, et ... bonne pratique de l'EFT !

-

Bien amicalement,

-

Martine MAUVAIS

-

 

-

-
-

-

-

-

3-Calendrier des formations EFT

-

Pour vous inscrire aux stages de Geneviève ( à Lyon part Dieu), suivez les liens selon votre profil de départ  :
-

-

http://www.technique-eft.com/formation-eft.php

-


-

-

Même si c'est le retour de votre contrat de formation complété et signé accompagné du versement de votre acompte qui officialise votre réservation, sachez que cet acompte ne sera encaissé que 3 à 4 semaines avant la date du stage. Si votre formation doit être prise en charge par votre employeur pensez à nous demander une convention de formation dans les meilleurs délais. Ce type de démarche est toujours plus longue que celle d'un contrat de formation individuel.

-


-Pour les dépliants et tarifs des stages de Martine Mauvais, contactez-la directement à cette adresse : martine.mauvais@sfr.fr. 
Pour ceux de Véronique Waumans, contactez-la à cette adresse : v.waumans@yahoo.fr

-


-

-
-

4-Divers EFT

-
    -
  • Vous avez rejoint le site récemment
Vous pouvez retrouvez les précédentes newsletters du site à cette adresse :
-
http://www.technique-eft.com/archives/index.php -
-
    -
  • Les vidéos
-

-

-
\ No newline at end of file diff --git a/pages/archives/eft-news-sept-2008.php b/pages/archives/eft-news-sept-2008.php deleted file mode 100644 index 54bbc5e..0000000 --- a/pages/archives/eft-news-sept-2008.php +++ /dev/null @@ -1,470 +0,0 @@ - - -

Courrier de la Technique-EFT.com. Edition de Septembre 2008.

- - - -
    -
  1. Message de -Geneviève -BALLY
  2. -
  3. Le courrier de Martine -Mauvais
  4. -
  5. Calendrier des formations EFT
  6. -
  7. Divers
-
-

1-Message -de Geneviève BALLY

-

-Bonjour à tous !

-eh -oui ! c'est la rentrée !

-Pour -certains enfants c'est un vrai -bonheur car ils ne savaient plus comment s'occuper et ils  -sont ravis de retrouver leurs copains mais pour d'autres c'est un -désarroi profond.

-A vous, -parents, qui lisaient ces lignes  :

-    -    Pensez à utiliser l'EFT avec -vos enfants,
- -    Aidez-les à apprendre cette -routine simple qui les accompagnera toute leur vie.

-La -majorité de nos maux d'adultes trouvent leur racine dans nos -plus jeunes années. Ne restez-pas sur cette idée -fausse -: "oh il est jeune il n'a pas de soucis !"  Initiez vos -enfants dès leur plus jeune âge à l'EFT -c'est leur faire un cadeau pour la vie.

Avec ce -texte de Gary Craig -vous verrez comme il est important de tapoter sur ce qui s'est -passé de désagréable dans la vie de -notre enfant -ainsi que ce qui a touché ses petits copains de classe. -Gardez -à l'esprit également qu'un scénario -imaginé -a autant de force que scène réellement -vécue... et -tapotez!

- -

Une -procédure indispensable pour nos enfants

-

Christine, -une passionnée d'EFT vous transmet la traduction de ce texte -glané sur le site de Gary Craig pour aider une de ses amies. -Nous avons la chance qu'elle nous permette de -bénéficier ainsi de son travail de traduction.

-Merci Christine !
-
-

Quel -message votre corps essaye-t-il de vous envoyer?

- -

Voici -le témoignage de -Germaine -qui a souhaité partager avec vous son expérience -EFT. -C'est intéressant de voir ici comme pour une même -personne -et un même symptôme -il a fallu réellement adapter la phrase au ressenti afin -qu'EFT -fonctionne parfaitement. C'est un très bon -exemple qui vous permet de voir à quel point il est -important de -tapoter sur ce que -vous ressentez personnellement et non pas sur des phrases toutes -faites.
-Tous ces exemples sont là pour vous aider à -construire -vos propres phrases et non pas pour les utiliser telles quelles.
-Je vous invite à faire confiance à cette belle technique -qu'est -l'EFT et à rechercher ailleurs -la raison d'une ronde de tapotements qui n'apporte pas le soulagement -désiré comme l'illustre merveilleusement bien le -témoignage de Germaine.

-Si -vous aussi vous avez des cas de tous les jours, ainsi -traités n'hésitez pas à me les -envoyer. D'ici peu vous pourrez les écrire directement sur -le site et après validation, ils seront consultables au fil -des écrits de chacun.

- -

Adaptez -vos phrases à VOTRE ressenti spécifique

-

Une -nouvelle Vidéo EFT!

Vous -qui êtes anglophones, -pourquoi ne vous offririez-vous pas cette superbe vidéo pour -bien aborder la rentrée ?
-De quoi s'agit- il?
-Il -s'agit d'une vidéo -tournée par Nick Ortner, Fondateur et Producteur de "Try It -On -Everything". Lorsque Nick a découvert l'EFT il a -été tellement stupéfait par ses -résultats -qu'il a souhaité trouvé un moyen pour faire -partager sa -découverte.

Dans -ce film vous suivrez un groupe -de 10 personnes utilisant l'EFT sur -une variété de questions telles que :

-la douleur physique chronique, l'abondance, la fibromyalgie, le -chagrin, la perte de poids, l'arrêt du tabac et bien -d'autres. -Vous apprendrez directement des Maîtres EFT et des Experts du -film le Secret qui ont participé au tournage de ce film -documentaire.
-Vous découvrirez comment nos vécus d' enfant -influent sur -ce que nous sommes aujourd'hui, nos croyances limitantes, nos traumas...
-De plus Nick et son équipe s'engage :
-pour chaque DVD -acheté, un DVD sera envoyé dans une -école, une -prison, un centre de réadaptation ou autre organisme de ce -type.
-Pour le commander immédiatement suivez ce lien : http://www.tryitoneverything.com/cmd.php?af=822326
-ou recopiez-le dans la barre adresse de votre navigateur.
-
-Oui, j'ai bien dit pour les anglophones ! Mais pas -d'inquiétude! -Nick m'a promis pour très bientôt la version -française. Je vous en informerais dès quelle sera -disponible.
-
- -Je -laisse maintenant la parole à notre amie Martine.
-Le mois -dernier elle était très occupée et n'a -pu participer à la newsletter mensuelle. Votre patience aura été récompensée. Elle s'est bien rattrapée ce -mois-ci pour le bonheur de tous.

-Bonne rentrée à tous!

Bien -amicalement
-
-Geneviève

-

2-Le -courrier de Martine Mauvais

-

Bonjour à -tous !

-
    -
  • -Parmi toutes les CITATIONS INSPIRANTES -que j'ai trouvées cet été, -l'une semble faite exprès pour -l'EFT :
-

« -Ce qui est le plus terrifiant c'est de s'accepter soi-même -complètement  » . Carl G. JUNG

-

Voilà -qui confirme l'universalité de ce -problème -d'inversion psychologique (ou -énergétique) que nous -corrigeons avec la phrase de préparation en tapotant sur le -point de karaté ou en massant les deux zones sensibles.

-JUNG -n'avait -pu découvrir l'IP par le test -kinésiologique, mais il -avait pris la mesure de l'auto-sabotage dont les humains sont -les -spécialistes.

-Je ne -sais -pas ce que vous en pensez, mais moi ça me -réconforte, -et ça place le problème à un niveau -quasi -métaphysique !

-Curieuse -chose que cette IP : je suis toujours -étonnée -quand je rencontre des personnes (c'est rare) qui ne semblent -inversées dans aucun domaine, malgré une enfance -traumatisante. -

Rappelez-vous l'affirmation-découverte -de l'EFT : « La cause de toute -émotion négative -est une perturbation du système -énergétique -corporel ». C'est en éliminant -cette perturbation -avec les séquences EFT que nous nous libérons de -l'émotion négative. MAIS SI NOUS SOMMES -INVERSES et -que nous ne remettons pas notre système -énergétique -corporel en état (avec le point de karaté ou la -zone -sensible)avant -de tapoter sur les -différents points, alors le traitement EFT ne -« marchera » -pas.

-La -perturbation du système énergétique -corporel et -l'inversion psychologique sont donc bien distinctes, je ne -crois -pas que ces rappels soient superflus. -

    -
  • -ARTICLES DU SITE DE GARY CRAIG TRADUITS A -VOTRE INTENTION :

-

LES -PROBLEMES DE FOND, ou -causes-racines de nos problèmes -actuels, remontent souvent, vous le savez, à -l'enfance, mais -les deux articles suivants nous montrent qu'il faut parfois -remonter encore plus loin. Je comprends que ça puisse -sembler -bizarre à beaucoup, voire farfelu, mais remarquez que Gary -Craig dit qu'il avait lui-même fait -l'expérience.

-Voici le premier :

-

-Remonter -jusqu'à la naissance pour trouver des -problèmes de fond

-

Peut-être -le second article sur ce thème touchera-t-il davantage les -sceptiques ! Le traitement EFT réussi prouve que -l'intuition de la maman était juste :

-

Marie -voulait une fille : Est-ce que ses pensées -avaient affecté son bébé à -naître ?

-

Voici -maintenant un très bel article, plein -d'enseignement : -le problème de fond ne remonte pas si loin que dans les deux -premiers, mais vous verrez comme le thérapeute EFT conduit -les -deux séances qui redonnent la joie de vivre à une -petite fille, sans traitement médicamenteux :

-

Cindy, -12 ans, ne voulait pas dormir dans sa chambre -

-

Non -seulement elle est guérie, mais elle sait quoi faire si la -même aventure se reproduit, elle en sait même plus -que -son professeur ! Elle a acquis plus d'autonomie, de -confiance, -de liberté. Ce sont des bénéfices -secondaires du -traitement, en quelque sorte, et ils sont fréquents avec -l'EFT, comme vous le verrez à la fin de mon texte.

-

L'histoire -de Rebecca, qui suit, vous montrera très clairement une -application de la TECHNIQUE DU RECIT, très facile -à -pratiquer. Elle est excellente notamment si la personne trouve -difficile de choisir les phrases à dire. Pour certains cette -difficulté est même un obstacle qui les -empêche -d'utiliser l'EFT. Si c'est le cas pour -vous, signalez-le moi, -et je me ferai un plaisir de vous livrer quelques trucs simples pour -dépasser cet obstacle.

-

Notez -qu'à -la fin Rebecca se voit -déjà libérée -de sa phobie :

-

Peur -de se noyer

-

Terminons -par les deux récits de traitements-minutes de la douleur -intense avec l'EFT : encore deux personnes qui -n'hésiteront -plus un instant à employer -l'analgésique-EFT, -toujours à disposition, efficace rapidement, gratuit, et -sans -effet secondaire !

-

L'EFT -guérit une migraine ophtalmique dans la salle d'attente du -médecin

-

Et :/p> -

Tapoter -sur une profonde griffure de chat élimine -immédiatement -la douleur

- -
    -
  • -LES -CADEAUX DE L'EFT : TEMOIGNAGES.
-

Voici -maintenant quelques témoignages que des clients -m'ont -autorisée à vous communiquer.

-

EFT par -téléphone pour des Traumas -d'Enfance

-

Après la lecture de ce -témoignage je -n'ai pu m'empêcher de penser à -la phrase d'un des -pères de la PNL : « Il -n'est jamais trop -tard pour avoir une enfance heureuse ! ». Phrase -qu'une autre cliente m'a dit avoir comprise -après quelques -années, et elle l'a faite sienne. C'est -elle qui nous -livre les témoignages suivants :

- -

anecdotes -et expériences vécues avec le "Tapping" -par Aurore

-

Je -remercie chaleureusement ces deux personnes qui nous donnent des -témoignages français

-

A -propos du travail avec les animaux -: certains, comme -Aurore, -tapotent directement sur l'animal. Il est plus courant et -aussi -efficace de tapoter sur soi à l'intention de -l'animal, -mentalement ou réellement.

-

Beau -mois de Septembre à vous, bonne rentrée -à -beaucoup !

-

Bien -amicalement,
-
-Martine Mauvais.
-

-
-

3-Calendrier -des formations EFT

-

Il ne -reste plus qu'une place pour le niveau 2 EFT -des 15 et 16 novembre à Paris. Si vous avez -déjà -suivi un niveau 1 conforme aux directives de Gary Craig et que vous -êtes intéressé pour poursuivre votre -formation -contactez rapidement Martine. (MMauv@aol.com)

-

Toutes -les autres formations -EFT que Martine et moi vous -proposons d'ici la fin de cette année sont -complètes.
-Le calendrier des -formations niveaux I, II et III pour le premier semestre 2009 est en -ligne. Si vous êtes intéressé pour -suivre une -formation ne vous fiez pas à la date -éloignée des -stages proposés et retenez dès à -présent -votre place car il nous sera difficile de rajouter des stages -à -ceux prévus.

-

L'EFT -évolue et c'est un grand bien pour -cette belle -technique.
-Sachez que Gary Craig encourage toujours les formateurs à -travers le monde à respecter ses directives telles que -décrites sur son site à cette adresse : -workshop-guidelines
-Les formations proposées sur le site Technique-EFT.com, -par Martine Mauvais et moi-même Geneviève BALLY, -respectent ces directives. 
-
-Pour vous inscrire aller à http://www.technique-eft.com/formations-eft-EFTbyWorkshop-France.php -et cliquez sur la date qui convient le mieux à votre emploi -du temps afin d'en découvrir les prix et -modalités d'inscription.
-
-Pour avoir les dépliants et tarifs des stages de Martine, -contactez-la directement à cette adresse : MMauv@aol.com
-
-Même si c'est le versement de votre acompte qui -officialise votre réservation, sachez que cet acompte ne -sera encaissé que 3 à 4 semaines avant la date du -stage.
-

-
-

3-Divers -EFT

-
-
    -
  • Les vidéos
  • -

    La première -vidéo EFT en français est toujours disponible sur -le site de la Technique-EFT à l'adresse suivante : Vidéo -en français EFT
    -
    -Vous pourrez également commander les vidéos en -anglais de Gary Craig en cliquant ci-après. Un tarif -dégressif vous est réservé selon le -nombre de DVD commandé.Vidéos -en anglais de Gary Craig
    -
    -Ces vidéos représentent des heures de tournage -sur de nombreux sujets traités lors des -séminaires qu'organise Gary Craig.
    -
    -Ces vidéos sont en cours de traduction et vous pourrez -obtenir les premiers textes en français en les commandant -ici : Premières -traductions en français des vidéos de Gary Craig

    -

    La nouvelle vidéo EFT "Try It On -Everything" -est disponible à la vente en cliquant sur ce lien Try It On -Everything -ou -en passant par le site www.Technique-EFT.com -et en visitant la page réservée aux -"Vidéos EFT".
    -

    -
  • L'animation d'une ronde -d'EFT en images
  • -

    Pour vous aider dans vos -premiers pas avec l'EFT une animation en dessins est -présente sur le site.Animation -d'une session en images
    -
    -Pensez bien à la mentionner aux personnes à qui -vous parlez de l'EFT afin qu'ils en -bénéficient eux aussi pour leurs premiers pas -avec cette merveilleuse technique.

    -
  • Les prestations disponibles -sur le site
  • -

    Vous le savez l'EFT -peut également s'appliquer à distance. -Pour cela vous trouverez plusieurs prestations directement par le biais -de l'Internet, que ce soit pour vous aider dans la -construction de votre première phrase EFT, pour un court -accompagnement ou pour un suivi plus long qui vous permettra -d'avancer considérablement dans votre -démarche personnelle.
    -
    -Vous trouverez de plus amples renseignements à cette adresse -: -Besoin -d'aide

-

 

-

 


-
- -

- diff --git a/pages/archives/eft-news-septembre-2009.php b/pages/archives/eft-news-septembre-2009.php deleted file mode 100644 index e9bedf2..0000000 --- a/pages/archives/eft-news-septembre-2009.php +++ /dev/null @@ -1,270 +0,0 @@ -

Technique-EFT.comCourrier de la Technique-EFT.com. -Edition de Septembre 2009

-
    -
  1. Le courrier de Geneviève Gagos
  2. -
  3. Le courrier de Martine Mauvais
  4. -
  5. Calendrier des formations -EFT
  6. -
  7. Divers
-
-

1-Message de -Geneviève Gagos

-

Bonjour -à tous!

-

 

-

L'été -touche à sa fin et j'espère que vous avez pu profiter pleinement de -cette période de vacances.

-

Pour -moi, le mois d'août s'est terminé par une escapade en Italie, pour -une formation en franco-italien, organisée par l'association -« A.R.T.Associazione Paulo Parra Ricerca Terminalità ». -C'est Amanda Castello, qui a géré de main de maître, la traduction -simultanée de ce séminaire sur « Les Bases de l'EFT ».

-

Amanda -est très investie dans cette association que je vous propose de -découvrir en visitant son blog.

-

http://www.artcurepalliative.blogspot.com/

-

 

-

Vous -trouverez sur ce blog, également en franco-italien, tous les -renseignements sur cette association, ainsi qu'une présentation du -stage EFT, agrémenté de quelques photos. Bonne visite!

-

Que -vous soyez praticien, ou que vous utilisiez l'EFT en solo, vous avez -très certainement déjà eu l'impression que vous n'en finissiez pas -de relater certains problèmes du passé. Malgré votre volonté de -vous investir dans votre vie, ils continuent à se rappeler à votre -souvenir. Vous tapotez pour en éliminer un, et à chaque fois un -nouveau souvenir, tout aussi polluant, se manifeste.

-

S'il -est vrai que les traiter un à un, de manière très spécifique, est -la meilleure attitude à avoir, il n'est pas moins vrai, qu'à chaque -fois que vous « grattez » votre passé, vous êtes -assuré de trouver quelque chose et de ne jamais avoir terminé.

-

Lors -d'une consultation qui laissait présager un nombre incalculable -d'événements toxiques du passé, j'ai pensé faire un paquetage, -des problèmes qui maintenaient mon patient dans un statu-quo pénible -et l'empêchaient de réaliser ses projets d'avenir.

-

C'est -ce protocole que je vous propose aujourd'hui, après l'avoir soumis à -Gary Craig, qui l'a choisi publié dans sa newsletter du 16 septembre -dernier. (http://www.emofree.com/Articles2/looking-forward-eft.htm)

-

J'ai -pu tester ce protocole avec plusieurs patients. Les résultats sont -étonnants!

-

Quelques -uns de mes étudiants, l'ont également essayé, avec le même -succès.

-

Depuis -la parution du courrier de « emofree.com », j'ai reçu -plusieurs témoignages enthousiastes pour cet article. Il semble -répondre à une demande.

-

Notez -que le contenant que vous choisirez est très important. Dans -l'exemple ci-dessous, il s 'agit d'un sac, mais n'importe quel -contenant fera l'affaire, pourvu qu'il soit choisi par la personne -concernée.

-

Il -est remarquable de constater à quelle vitesse, chacun trouve l'objet -pouvant recevoir ses problèmes résiduels. Parfois, même avant que -j'ai terminé de décrire les consignes...

-

La -manière dont les modifications s'opèrent, donne des indications -parfois subtiles, sur notre réelle capacité à accepter de se -débarrasser de l'emprunte du passé.

-

Soyez -attentif et suivez bien l'évolution de la métaphore que vous aurez -choisie pour cet exercice. Décrivez-la de votre mieux.

-


-

-

J'espère que vous testerez avec le même succès que nous, ce « pose ton sac », qu'il vous permettra de passer à autre chose, et de prendre pleinement, votre vie en mains.

-


-

-

A ne pas manquer !

-

Je serai présente, en compagnie de Claire Bracq, lors d'une émission consacrée à l'EFT, produite et présentée par Laurent Fendt

-

Le lundi 5 octobre de 17h30-19h

-

à

-

Radio « Ici et Maintenant » 95.2

-

ou via internet à l'adresse suivante :

-

http://icietmaintenant.info

-

Cliquez alors sur : « détachez la TV pour naviguer»

-

dans le cadre bleu,

-

pour suivre l'émission en direct.

-

-
-


-

-

 

-

Bien -amicalement

-

Geneviève

-

 

-
-
-
-

2-Message de -Martine Mauvais

-
-

Bonjour à tous,

-

J’ai d’abord choisi pour vous un -texte très court, et d’autant plus efficace, qui vous -permettra de surprendre une personne un peu « tiède » -vis-à-vis de l’EFT ! Je vous le recommande aussi pour vous -encourager vous-mêmes à tenter les séances à distance :

-

Eft à -distance : « La douleur est en train de partir par le bout -de mes doigts »

-

Passons à un sujet qui concerne -beaucoup d’entre nous : celui de la perte de poids. Les 4 -exemples très intéressants (avec le sien), que rapporte l’auteur, -sont à étudier de près. Ils pourront vous inspirer pour la -recherche des vrais problèmes qui se cachent derrière les kilos -superflus. Ils sont très divers :

-

Karen -Donaldson présente des réussites pour la perte de poids de ses -clientes

-

& explorations -de nombreux problèmes associés.

-


-

-

Bonne lecture, et continuez de savourer -cette fin d’été exceptionnelle !

-

Bien amicalement,

-

Martine Mauvais

-

 

-
-

3-Calendrier des -formations EFT

-

Pour vous inscrire aux stages de -Geneviève (désormais à Lyon part Dieu), réservés aux Professionnels de la Santé et de la relation d'Aide, aller à
-

-

http://www.technique-eft.com/formations-eft-EFTbyWorkshop-France.php et -cliquez sur le lien dans la colonne de gauche afin d'en -découvrir les prix et modalités -d'inscription.

-

Pour les personnes souhaitant apprendre l'EFT, pour leur développement personnel, pour elles-mêmes et leur entourage immédiat, retrouver le calendrier des formations de Véronique Waumans à cette adresse : http://www.technique-eft.com/formations-eft-EFTbyWorkshop-France.php 
-
- - - -Pour avoir les dépliants et tarifs des stages de Martine -MAUVAIS, contactez-la directement à cette adresse : martine.mauvais@sfr.fr
-
- - - -Même si c'est le retour de votre contrat de formation -complété et signé -accompagné du versement -de votre acompte qui officialise votre réservation, sachez -que -cet acompte ne sera encaissé que 3 à 4 semaines -avant la -date du stage. Si votre formation doit être prise en charge -par -votre employeur pensez à nous demander une convention de -formation dans les meilleurs délais. Ce type de -démarche -est toujours plus longue que celle d'un contrat de formation individuel.
-

-
-

4-Divers EFT

-
    -
  • Vous avez rejoint le site -récemment
- - - - -Vous pouvez -retrouvez les précédentes newsletters du site -à -cette adresse :
-
http://www.technique-eft.com/archives/index.php -
-
    -
  • Les vidéos
  • -

    La première -vidéo EFT en -français est toujours disponible sur le site de la -Technique-EFT -à l'adresse suivante : Vidéo -en français EFT
    -

-
    -


    - - - -Vous pourrez également commander les vidéos en -anglais de -Gary Craig en cliquant ci-après. Un tarif -dégressif vous -est réservé selon le nombre de DVD -commandé.
    Vidéos -en anglais de Gary Craig
    -
    - - - -Ces vidéos représentent des heures de tournage -sur de -nombreux sujets traités lors des séminaires -qu'organise -Gary Craig.
    -
    - - - -Ces vidéos sont en cours de traduction et vous pourrez -obtenir -les premiers textes en français en les commandant -à cette -adresse

    -

    -
    http://www.psycho-energie.fr/index.php?option=com_content&view=category&id=58:traductions-des-dvd-de-gary-craig&Itemid=57&layout=default
    -

    La nouvelle -vidéo EFT "Try It On -Everything" est disponible à la vente en copiant ce lien -dans la -barre adresse de votre navigateur : -http://www.tryitoneverything.com/cmd.php?af=822326" ou en passant par -le site www.Technique-EFT.com et -en visitant la page réservée aux -"Vidéos EFT".
    -

    -
  • L'animation d'une ronde d'EFT en images
  • -

    Pour vous aider dans vos premiers pas -avec l'EFT une animation en dessins est présente sur le site.Animation -d'une session en images
    -
    - - - -Pensez bien à la mentionner aux personnes à qui -vous -parlez de l'EFT afin qu'ils en bénéficient eux -aussi pour -leurs premiers pas avec cette merveilleuse technique.

    -
  • Les prestations disponibles sur le site
  • -

    Vous le savez l'EFT peut -également -s'appliquer à distance. Pour cela vous trouverez plusieurs -prestations directement par le biais de l'Internet, que ce soit pour -vous aider dans la construction de votre première phrase -EFT, -pour un court accompagnement ou pour un suivi plus long qui vous -permettra d'avancer considérablement dans votre -démarche -personnelle.
    -
    - - - -Vous trouverez de plus amples renseignements à cette adresse -:
    Besoin -d'aide


-
-
diff --git a/pages/archives/eft-pour-apaiser-un-cheval.php b/pages/archives/eft-pour-apaiser-un-cheval.php deleted file mode 100644 index e8ef741..0000000 --- a/pages/archives/eft-pour-apaiser-un-cheval.php +++ /dev/null @@ -1,90 +0,0 @@ -

L'EFT pour apaiser un cheval qui voit des fantômes.

- -

Bonjour à tous, -

-Pour être plus efficace dans les cas difficiles, j’ai souvent dit que nous devions « rester en dehors du chemin » et laisser le travail de guérison se faire « A TRAVERS NOUS plutôt que GRACE A NOUS ». Cela nous permet de travailler en nous laissant guider au maximum par notre intuition et d’avoir des idées que nous n’aurions pas eues autrement. Laïla del Monte « parle à l’oreille des animaux » et gagne sa vie en appliquant ce principe avec eux. Son article nous montre ce qu’il est possible de faire dans ce domaine. -

- -Bien amicalement, Gary - -


-

Par Laïla des Monte -

- -Tout d’abord un mot que j’ai reçu du propriétaire du cheval, K.O. de Californie : -

- -« Monet, ma jument de 12 ans, fait des écarts terribles devant des choses que personne d’autre qu’elle ne voit. Les vétérinaires disent qu’elle n’a pas de problèmes de vue. Monet a été dressée par l’un des meilleurs dresseurs de la côte Ouest mais personne n’a pu la guérir de ce comportement. Et puis j’ai découvert Laïla. Elle m’a dit que c’était un cas difficile et qu’elle ne me promettait rien. Laïla a guéri cette jument, Monet, qui n’était pas facile à monter. Non seulement j’aime la monter maintenant, mais elle et moi avons une toute autre relation, pleine d’affection. » -

- -Lorsque j’ai été demandée pour travailler avec Monet, je n’avais pas beaucoup d’espoir. Elle était totalement imprévisible. Lorsqu’elle était terrifiée tout à coup par quelque chose, on aurait dit qu’elle avait vu un fantôme et elle avait des réactions bizarres et inquiétantes. C’était dangereux pour son cavalier, c’est pourquoi ses propriétaires étaient prêts à la vendre. -

- -Quand j’ai établi la communication avec elle, j’ai vu que c’était une jument extrêmement sensible et nerveuse. D’un certain côté, ses sens très développés la rendaient très spéciale, par contre il lui était difficile d’être « normale ». De plus elle se sentait seule et à part, même si l’on s’occupait très bien d’elle. Elle pouvait bel et bien percevoir des choses que personne ne pouvait percevoir. Pour moi il s’agit d’énergies. -

- -Mais elle pouvait aussi voir des choses qui n’étaient pas là du tout. Surtout lorsqu’elle était en dehors de la piste. Cela la terrorisait de façon insensée. C’était une vraie peur, pas simplement un problème de comportement. On m’a dit que le vétérinaire avait examiné sa vue et que tout allait bien. J’ai effectivement vérifié qu’elle voyait bien, mais elle avait une vision déformée de la réalité. C’était comme si la frontière entre ses perceptions très fines et son imagination s’estompait. Elle était profondément triste et malheureuse, et elle se sentait « pas assez bien ». -

- -Avant de commencer à travailler avec elle j’ai demandé à son cavalier de ne pas la monter, de marcher seulement à côté d’elle et de murmurer doucement à son oreille. Elle avait besoin de créer un lien. Par ailleurs on lui demandait en compétition de faire des tas de choses qu’elle n’était pas prête à faire. Aussi j’ai demandé qu’on lui laisse du « temps libre » pour qu’elle puisse se détendre et que nous puissions toutes les deux nous concentrer sur le travail que nous avions à faire ensemble. -

- -J’ai commencé à tapoter. C’est moi qui tapotait pour la jument, en imaginant ses points. Nous avons tapoté sur toutes les choses qu’elle pouvait avoir vues sur la piste et sur les émotions qu’elles avaient suscité chez elle. -

- -Même si je vois ces ombres … -

- -Même si quelque chose va m’attraper… -

- -Même si je vois ces formes sur ma gauche et que je ne sais pas ce que c’est… -

- -Même si cette CHOSE est au milieu de la piste, que j’ai tellement peur et qu’il faut que je m’arrête… -

- -Même si je me sens très nerveuse quand je suis dehors…et qu’il faut que je regarde bien pour être sûre qu’ « ils » ne vont pas ressortir… -

- -Cette partie-là a été vraiment assez rapide. J’ai été surprise de voir comme nous sommes parvenues facilement à zéro. J’ai tapoté ensuite sur sa relation avec K. et la pression qu’elle ressentait à cause de ce qu’on attendait d’elle. -

- -Même si j’aimerais faire ce que K. veut mais que je ne fais pas assez bien… -

- -Même si je ne veux pas sauter les obstacles… -

- -Même si j’en ai assez d’être coincée dans ce box… -

- -Même si je me sens seule et que personne ne m’aime...( Il fallu pas mal de temps pour venir à bout de ce sentiment, il y avait beaucoup de tristesse et d’anxiété à la limite de la dépression dans son coeur). -

- -Même si j’aimerais faire plaisir à K. mais que je veux abandonner… -

- -Même si je ne comprends pas pourquoi tout le monde m’en veut… -

- -Nous avons aussi tapoté sur le fait qu’elle savait que ses propriétaires voulaient la vendre : -

- -Même si je me sens triste et seule … -

- -Nous avons pu ramener tout cela à zéro. Je n’ai jamais découvert pourquoi elle voyait toutes ces « choses » ni ce que c’était. Mais depuis lors la relation est devenue bonne. -

- -Quand vous commencez à tapoter vous finissez par atteindre des couches plus profondes et trouver des émotions plus lourdes, particulièrement avec les chevaux. Souvent il est difficile de mettre des mots dessus, je ne fais que les ressentir fortement dans mon cœur alors je tapote pour le cheval pour « ce sentiment », ou « cette douleur particulière », je ne sais pas où se trouve le « 0 ». Je sais seulement quand la forte émotion disparait. J’ai fait ça bien des fois avec Monet. -

- -Dans mon expérience, l’EFT a mieux marché pour les chevaux que pour tout autre animal. Pourtant je trouve qu’il y a souvent un manque de respect envers ce splendide Etre Animal. Les gens oublient que ce sont des âmes libres qui erraient librement, soutenues émotionnellement par tout le troupeau. Nous oublions qu’ils ont besoin qu’on leur parle et par-dessus tout qu’on les aime ; qu’ils sont coincés toute la journée dans leur stalle, ne sortant souvent qu’une fois par jour pour faire des exercices juste pour notre plaisir ! -

- -Laïla des Monte -

- -Article du site de Gary Craig traduit par Martine Mauvais (22.04.2011)

-

\ No newline at end of file diff --git a/pages/archives/eft-pour-fumeur-intelligent.php b/pages/archives/eft-pour-fumeur-intelligent.php deleted file mode 100644 index 90667ef..0000000 --- a/pages/archives/eft-pour-fumeur-intelligent.php +++ /dev/null @@ -1,94 +0,0 @@ -

EFT pour un fumeur très intelligent - 2 mois sans avoir besoin d'une cigarette

-

Bonjour à tous,

-Etudiez cet article créatif de Lee Campbell de Nouvelle Zélande, où le besoin de fumer est -fractionné en de nombreux aspects. Ceci apparaît doucement, au fur et à mesure que le -client se voit en non-fumeur. Si malgré tout le problème resurgit, je suggère de rechercher -des évènements spécifiques accompagnant toute anxiété généralisée qui pousserait le -client à se tranquilliser avec le tabac.

-Cordialement, Gray

-


-Bonjour Gary,

-Jʼadore ce partage autour de lʼEFT au travers des newsletters, cela me motive à lʼessayer -tout le temps sur de nouvelles choses! Voici ce sur quoi jʼai travaillé avec «Pete». Il fume -depuis 20 ans, environ un paquet par semaine (20 cigarettes). Il essaye dʼarrêter de fumer -depuis plusieurs années mais sans succès.

-Pete était plutôt sceptique au sujet de lʼEFT, je lʼai donc laissé constater les résultats par -lui-même plutôt que dʼessayer de défendre la technique.

-Même si je fume...et je sais que je vais bien
-Même si je fume depuis des années...
-Même sʼil sera impossible dʼarrêter de façon permanente

-Tout en tapotant, il commença à me dire à quel point il aimait la cigarette et avait du plaisir -à fumer. En fait il a même continué à expliquer quʼelle nʼétait pas vraiment mauvaise pour -lui de toute façon car il fumait des «light» à 3 filtres et dʼun paquet qui était pratiquement -tout blanc, ce qui voulait dire pour lui quʼelles étaient presque des cigarettes «pures». Les -meilleures. Il dit aussi que dʼautres fumeurs nʼétaient pas aussi intelligents que lui car ils -fumaient dʼautres marques avec un tabac plus nocif et dʼautres produits chimiques. Pour -lui cʼétait suffisant pour se justifier de fumer des cigarettes et se sentir à lʼaise avec ça (il -racontait tout ceci alors que nous tapotions).
-Jʼai commencé à voir toutes les associations dʼidées quʼil avait créées, en lien avec cette -marque en particulier. Je veux dire que cʼétait vraiment une raison qui le poussait à -continuer à fumer. Alors nous avons commencé à tapoter...

-Même si je nʼai pas réellement besoin dʼarrêter de fumer parce que ces cigarettes ne sont -pas réellement mauvaises pour moi...
-Même si ce sont les cigarettes les plus sophistiquées sur le marché parce quʼelles ont un -triple filtre
-Même si ces cigarettes sont légères , blanches et sexy...
-Même si je fume la meilleure marque...
-Même si je suis le fumeur le plus intelligent parce que je choisis des cigarettes qui ont le -moins de nicotine...

-Pour les rondes nous avons utilisé ces mots de rappel:
-Ces cigarettes pures et blanches
-Si légères et sexy
-Cette marque en particulier

-Jʼai aussi rajouté de grandes descriptions sur le fait que cʼétait si bon de tirer sur la -cigarette et dʼexpirer doucement la fumée - en imaginant tout ceci et en faisant vraiment -semblant dʼinhaler et dʼexpirer la meilleure cigarette du monde. Jʼai pensé quʼil pourrait -être bon dʼexagérer à quel point il se sentait bien avec cette cigarette et combien il était -sophistiqué lorsquʼil fumait la meilleure marque, pour voir ce quʼil allait se passer. Procéder -ainsi mʼa paru intéressant pour faire monter son niveau dʼintensité ou vérifier sʼil baissait.
-Jʼai utilisé les mots quʼil avait dit, en les exagérant un peu.

-Je suis le fumeur le plus intelligent
-Je sais comment gérer la cigarette, parce que jʼai choisi les plus légères et les plus pures.
-Cʼest comme si je ne fumais rien, donc je tire tous les bénéfices de la cigarette, sans que -ça mʼaffecte.
-Ces cigarettes sexy, si pures et si blanches

-Cʼétait vraiment très intéressant, car au fil des rondes, ses mots ont commencé à changer! -Il a même senti la colère monter en lui en constatant que les astuces marketing de cette -marque en particulier avaient fonctionné sur lui, car il avait vraiment pensé que cette -marque était légère, pure, sexy, sophistiquée, supérieure, sans danger. Il a commencé à -me répondre alors que je continuais à tapoter et à parler. Il dit:
-Ouais ben finalement cʼest complètement stupide, je ne peux pas être si intelligent que ça -si je continue à fumer
-En fin de compte, cʼest la même «m..de» quʼil y a dedans (note de la traductrice: je vous -laisse deviner le mot tronqué... )
-Je perds mon argent en les fumant et elles ne sont même pas bonnes pour moi -Je pourrais mʼacheter dʼautres choses!
-Jʼétais si épatée de constater ce changement en si peu de temps! Tous ces mots venaient -de lui. Jʼai tapoté et présenté quelques phrases telles que:
-Et si je nʼavais plus besoin dʼelles?
-Et si je pouvais arrêter de fumer et rester intelligent?
-Peut-être que je nʼai pas besoin dʼelles, même si jʼai aimé ce quʼelles représentaient
-Je pense que ça a eu lʼeffet dʼaugmenter un peu sa confiance et lui permettre dʼentrevoir -que ça pouvait être possible. Nous avons fait une pause et sommes revenus sur le sujet -ensuite, pour voir sʼil y avait de nouveaux éléments quʼil aimait à propos de la cigarette. Il -me dit quʼil en aimait lʼaspect social.

-Même si la cigarette est le lien parfait entre les gens...
-Même si jʼadore fumer dans le patio avec des amis...
-Même si ça ne serait pas cool de ne pas fumer pendant une fête en se relaxant avec des -amis...
-Même si la cigarette est le compagnon idéal...

-Finalement il a dit quʼil avait assez tapoté pour le moment et nous sommes tombés -dʼaccord pour continuer plus tard si nécessaire; là il sentait quʼil en était au point où il en -avait assez et voulait faire autre chose.
- -
-2 mois plus tard il nʼavait toujours pas fumé la moindre cigarette ! Ses dernières tentatives -pour arrêter nʼavaient généralement jamais duré plus de 2 jours ou 2 semaines.
-Je pense que nous referons un peu plus de tapotement pour nettoyer tous les résidus, -mais il nʼy a pas dʼurgence parce quʼil nʼa simplement plus envie de fumer. Ça ne fait plus -partie de sa routine et il le dit maintenant, il se voit comme un non-fumeur.
-Ceci pourrait vraiment aider dʼautres fumeurs, étant donné quʼil y a de nombreux aspects -concernant la cigarette dont nous pouvons initialement ne pas être conscients.

-Chaleureuses salutations,

-El Campbell
-Traduction: ML Moysset, juin 2009

diff --git a/pages/archives/eft-pour-l-ame.php b/pages/archives/eft-pour-l-ame.php deleted file mode 100644 index 7c17931..0000000 --- a/pages/archives/eft-pour-l-ame.php +++ /dev/null @@ -1,46 +0,0 @@ -

Note d’après celle de Gary Craig : Les lecteurs de cet article sont supposés avoir une connaissance pratique de l’EFT. Les débutants peuvent en tirer profit mais il leur est conseillé de lire le Manuel gratuit ou d’acquérir nos DVD d’un coût très abordable afin de mieux le comprendre (à achater en ligne depuis le site français www.technique-eft.com . Pour leur traduction en Français sur papier, les seules autorisées par Gary Craig,, adressez-vous à Daniel LEHMULLER au 03.29.06.43.62. NdT)

-

L’EFT pour l’âme – approches globales contre approches spécifiques

-

Bonjour tout le monde,

-Avril van Rooyen d’Afrique du Sud se sert d’une approche très globale pour retrouver le bien-être au niveau de son âme brisée. Tout en lui apportant une paix temporaire, cela me permet aussi d’insérer dans son article un commentaire utile...

-COMMENTAIRE DE GC: « Avril a raison. Ces emplois de l’EFT n’atteignent pas le cœur des problèmes et sont des approches très globales. Elles peuvent avoir des effets calmants… au moins temporairement. Cependant, lorsqu’on cible l’EFT sur des événements bien spécifiques qui mettent en évidence ces sentiments d’anéantissement, les résultats sont souvent plus efficaces, profonds et durables ».

-Bien amicalement, Gary


- -D’Avril van Rooyen

-Cher Gary,

-Voilà 8 mois que j’utilise l’EFT. A la suite de problèmes rencontrés dans ma vie, j’ai aussi lu un certain nombre de livres sur le développement personnel/spirituel. Quand j’ai lu ces paragraphes dans le livre de Gary Zukav, Le siège de l’âme, je me suis tout de suite sentie en accord.

-« Toute psychose ou faille psychotique va finalement être mise dans son propre langage, qui est celui de « l’esprit brisé ». »

-« Le corps a besoin de repos, de soin, mais derrière tous les aspects de la santé ou de la maladie il y a l’énergie de l’âme. C’est la santé de l’âme qui est le véritable but de l’expérience humaine. Tout contribue à cela. »

-J’ai réalisé quand j’ai lu cela que mon âme était sans aucun doute en mauvaise santé à force d’avoir été malmenée, blessée, tout au long de ma vie. J’ai alors décidé d’essayer l’EFT (qui est de toute façon énergie/esprit de guérison). Je l’ai appelé mon « Travail de l’âme ». Quand je m’identifie aux affirmations et que je tapote dessus avec l’EFT, je ressens un profond sentiment de reconnaissance intérieure, puis une paix tranquille qui me porte. Je n’ai pas touché le cœur du problème, mais j’ai trouvé que c’était un bon tonique général pour l’énergie de mon âme, et souvent apparaissent des problèmes associés, j’en prends note et les traite par les tapotements.

-COMMENTAIRE DE GC: « Avril a raison. Ces emplois de l’EFT n’atteignent pas le cœur des problèmes et sont des approches très globales. Elles peuvent avoir des effets calmants… au moins temporairement. Cependant, lorsqu’on cible l’EFT sur des événements bien spécifiques qui mettent en évidence ces sentiments d’anéantissement, les résultats sont souvent plus efficaces, profonds et durables ».

-Je tapote une fois par semaine sur différents problèmes de l’âme, en voici un exemple :

-Même si je porte des peurs dans mon âme je m’aime, m’accepte et me pardonne quand même. Je fais quelques tours avec la phrase de rappel. Cette peur dans mon âme (jusqu’à ce que ça me remonte le moral et que je le constate).

-Même si je porte des peurs dans mon âme, je choisis de débarrasser mon âme de ces peurs.

-Même si je porte des peurs dans mon âme, je choisis pour mon âme d’être vraiment très courageuse et totalement en paix.

-Même si je porte cette peur dans mon âme depuis toutes ces années, je demande pardon à mon âme et je lui permets maintenant de se libérer de toute peur.

-Même si je porte tant de peur dans mon corps, je m’aime, m’accepte et me pardonne totalement.

-Même si je porte tant de peur dans mon corps, je choisis pour mon âme d’être vraiment très courageuse et totalement en paix.

-Même si je porte tant de peur dans mon esprit, je m’aime, m’accepte et me pardonne totalement.

-Même si je porte tant de peur dans mon esprit, je choisis pour mon âme d’être vraiment très courageuse et totalement en paix.

-Même si j’ai été si chargée de peur dans mon âme, dans mon corps et dans mon esprit pendant tout ce temps, je remercie mon âme, mon corps et mon esprit pour la force, la sagesse et le courage qu’il leur a fallu pour supporter tout cela.

-Les émotions que nous portons dans notre âme, notre corps et notre esprit sont multiples. Je tapote sur :

-la colère dans mon âme/corps/esprit (je choisis la paix/le calme/la sérénité)

-les ténèbres dans mon âme/corps/esprit (je choisis la lumière/la chaleur)

-la tristesse… (je choisis la joie /le rire/ la gratitude)

-le chagrin… (je choisis l’acceptation et le lâcher prise)

-la culpabilité … (je choisis le pardon et l’innocence)

-l’irritation…. (je choisis l’acceptation)

-le déception… (je choisis de lâcher prise)

-le tourment… (je choisis le réconfort)

-la négligence … (je choisis l’attention)

-la dépendance… (je choisis de me libérer)

-l’anxiété / panique (je choisis le calme et la sérénité)

-la douleur… (je choisis le soulagement)

-la faim (je choisis d’être rassasiée)

-la rancœur... (je choisis de pardonner/ laisser tomber)

-Même si mon esprit est accablé, je suis OK et je m’aime, me pardonne et m’accepte ainsi que tout ceux qui ont pris part à la blessure de mon âme (corps / esprit).

-Même si mon esprit est accablé, je suis OK et je choisis pour mon âme de pardonner et de guérir.

-Merci Gary pour votre générosité, pour votre âme bienveillante et votre cadeau qu’est l’EFT.

-Bien amicalement,

-Avril van Rooyen

-Texte de l’article de la lettre d’information du 23 Mars 2009 du site de Gary Craig http://www.emofree.com/Articles2/shattered-soul.htm Traduction : Myriam Withers

- diff --git a/pages/archives/eft-pour-un-degout.php b/pages/archives/eft-pour-un-degout.php deleted file mode 100644 index 73f468d..0000000 --- a/pages/archives/eft-pour-un-degout.php +++ /dev/null @@ -1,53 +0,0 @@ -

EFT pour un dégoût

- -

Note d’après celle de Gary Craig : Les lecteurs de cet article sont supposés avoir une connaissance pratique de l’EFT. Les débutants peuvent en tirer profit mais il leur est conseillé de lire le Manuel gratuit ou de se procurer les copies des DVD afin de mieux le comprendre (ainsi que leur traduction en français sur papier : voir pour cela les sites www.technique-eft.com ou www.association-francaise-eft.fr . NDT) -

-Bonjour à tous, -

- -J’aime vraiment beaucoup cet article d’Adi Assodri, d’Israël. Le problème : le dégoût ressenti lorsqu’il faut toucher des cheveux mouillés, est inhabituel et peu de gens en sont affectés. Pourtant le principe s’applique au dégoût que peut inspirer N’IMPORTE QUOI d’autre. -

- -Bien amicalement, Gary

-
- -

Par Adi Assodri -

-Cher Gary, -

- -Il faut que je vous raconte une histoire concernant une de mes amies avec laquelle j’ai fait de l’EFT récemment. Elle est maman et élève seule sa fille de 10 ans. Elle a fait une terrible crise de colère contre sa fille, qui n’obéit pas. J’ai réussi à la calmer avec l’EFT, après quoi elle m’a dit : «  Tu sais, quand je lave le sol et qu’il faut que je ramasse des cheveux mouillés, j’ai envie de vomir, comme si j’avais un cheveu collé dans la gorge et que je tirais dessus pour l’enlever ». -

- -Elle m’a dit qu’elle devait se laver les mains d’abord, puis qu’elle enfilait des gants et qu’alors seulement elle arrivait à toucher les cheveux mouillés et à les jeter. Et tout ça avec un horrible sentiment de dégoût ! Bon, me suis-je dit, c’est un bon sujet à traiter, et il sera possible de vérifier sur le champ ! Je l’ai emmenée à l’évier, j’y ai trouvé quelques cheveux, je les ai mouillés et les ai laissés dedans. J’ai employé des phrases telles que : -

- -Même si rien que de regarder ces cheveux mouillés j’ai envie de vomir… -

- -Même s’il m’est peut-être arrivé dans le passé d’avoir un cheveu collé dans la gorge (elle n’en avait pas le souvenir) et que c’est pour ça que j’ai envie de … -

- -Même si je me sens beurk, beurk beurk… -

- -Au bout d’un moment elle a pris le cheveu à main nue, certes sans grand plaisir, mais qui aime ça ? Et tout se passa bien. -

- -Plusieurs jours passèrent et elle me raconta la plus drôle des histoires sur la façon dont l’EFT fonctionne. Il fallait qu’elle lave à nouveau le sol, et à la fin il y avait beaucoup de cheveux mouillés sur le chiffon. Elle les a pris à mains nues et elle les a jetés, sans aucun problème. C’est la seconde après qu’elle l’eût fait, qu’elle réalisa ce qu’elle avait fait et qu’elle eut un choc ! « Comment avais-je pu faire ça sans mon rituel habituel ? Je suis folle ou quoi ? Je n’ai pas envie de vomir et je n’ai pas la sensation d’avoir un cheveu collé dans la gorge ! ». Elle ne se rappelait même pas que nous avions fait de l’EFT là-dessus. Elle se le rappela deux heures après. Depuis lors elle fait la publicité de l’EFT avec ardeur. -

- -Gary l’EFT me stupéfie chaque fois ! Même quand on ne voit pas toujours de soulagement immédiat après une séance, ça marche quand même ! -

- -Un grand merci. -

- -Bien amicalement, -

- -Adi (c’est un prénom féminin) -

- -Article d’origine paru dans la lettre du 1er Mai 2009 de la lettre de Gary Craig www.emofree.com sous le titre « EFT for aversion to stuff that disgusts you » traduit par Martine Mauvais

-

diff --git a/pages/archives/eft-professionnel-sante-debutant.php b/pages/archives/eft-professionnel-sante-debutant.php deleted file mode 100644 index 86eae0e..0000000 --- a/pages/archives/eft-professionnel-sante-debutant.php +++ /dev/null @@ -1,235 +0,0 @@ -

Formation EFT animées par Geneviève GAGOS

- -

EFTCert-II par Gary Craig, Fondateur de l'EFT

- -

Les formations animées par Geneviève Gagos, sont des formations professionnelles

- -

Lieu : LYON PART DIEU (Rhône)

- -Horaires :
Samedi de 10h00 -12h00 et de 13h30-17h30
Dimanche de 09h00 -12h00 et de 13h30-16h30

-
-

- - -

Vous êtes un professionnel de Santé ou de la Relation d’Aide, en formation ou prenant ses fonctions

- - -
    -
  • Module Ecoute Active : 375€€
  • -
  • Module de Base: 250€€
  • -
  • Module Approfondissement + Supervision individuelle : 450€€
  • -
  • Option : Module Mener une Session EFT : 250€
  • -
  • Module Perfectionnement + Supervision individuelle : 450€€
  • -
  • Supervision de Groupe, réservée à mes stagiaires à partir du niveau Approfondissement : 250€
  • -
  • Optionnel : Mener une Session EFT : 250€
  • -
- -

- - - - -

Remplissez bien toutes les rubriques du formulaire en bas de cette page, pour réserver votre place. Vous recevrez sous quinze jours une convention de formation ou un contrat de formation selon votre profil.

- - - - - - -Un acompte de 30% est demandé à l'inscription. Par contre il sera encaissé trois semaines à un mois avant le début du stage et en aucun cas à moins de dix jours de votre inscription.
-Les places étant limitées les inscriptions seront prises par ordre d'arrivée des contrats de formation et des acomptes.

- - - -
-
- - - - - - - - - - -
-

Pré-inscription aux formations EFT animées par Geneviève Gagos

-
-
- -
- -
-
-
-
- -
- -
-
-
- -
-
-
-
- -
-
- -
-
- -
-
- -
-
- -
-
- -
-
-
- - -
- - -
- - -
- -
-
- -
-
- -
-
- -
-
- -
-
- -
-
- -
-
- -
-
- -
-
- -
- -
-
-
- - - \ No newline at end of file diff --git a/pages/archives/eft-professionnel-sante.php b/pages/archives/eft-professionnel-sante.php deleted file mode 100644 index 58cd3a8..0000000 --- a/pages/archives/eft-professionnel-sante.php +++ /dev/null @@ -1,230 +0,0 @@ -

Formation EFT animées par Geneviève GAGOS

- -

EFTCert-II par Gary Craig, Fondateur de l'EFT

- -

Les formations animées par Geneviève Gagos, sont des formations professionnelles

- -

Lieu : LYON PART DIEU (Rhône)

- -Horaires :
Samedi de 10h00 -12h00 et de 13h30-17h30
Dimanche de 09h00 -12h00 et de 13h30-16h30

-
- - -

Vous êtes un professionnel de Santé ou de la Relation d’Aide, déjà en activité en cabinet ou en institution

- - -

Votre formation s'inscrit dans le cadre d'une formation continue et vous recevrez une Convention de Formation

- -
  • Module de Base: 250€
  • -
  • Module Approfondissement + Supervision individuelle : 450€
  • -
  • Module Perfectionnement + Supervision individuelle : 450€
  • -
  • Supervision de Groupe, réservée à mes stagiaires à partir du niveau Approfondissement : 250€
  • -
  • Optionnel : Comment mener une séance EFT : 250€
  • - -
- -

Remplissez bien toutes les rubriques du formulaire en bas de cette page, pour réserver votre place. Vous recevrez sous quinze jours une convention de formation ou un contrat de formation selon votre profil.

- - - - - - -

-Un acompte de 30% est demandé à l'inscription. Par contre il sera encaissé trois semaines à un mois avant le début du stage et en aucun cas à moins de dix jours de votre inscription.
-Les places étant limitées les inscriptions seront prises par ordre d'arrivée des contrats de formation et des acomptes.

- - - -
-
- - - - - - - - - - -
-

Pré-inscription aux formations EFT animées par Geneviève Gagos

-
-
- -
- -
-
-
-
- -
- -
-
-
- -
-
-
-
- -
-
- -
-
- -
-
- -
-
- -
-
- -
-
-
- - -
- - -
- - -
- -
-
- -
-
- -
-
- -
-
- -
-
- -
-
- -
-
- -
-
- -
-
- -
- -
-
-
- - - \ No newline at end of file diff --git a/pages/archives/eft-programme-module-base.php b/pages/archives/eft-programme-module-base.php deleted file mode 100644 index 15e4757..0000000 --- a/pages/archives/eft-programme-module-base.php +++ /dev/null @@ -1,60 +0,0 @@ -

Formation EFT-Programme du module de base

- -

Pré-Requis : Personnel soignant et de la relation d'aide, déjà en activité.

- -

Durée :

-
    -
  • 2 jours d'enseignement : soit 12 heures.
  • -
  • Exercice pratique entre module de Base et module Approfondissement soit 5 heures de pratique minimum.
- -

Objectifs

-
    -
  • Découvrir la Technique EFT et son champ d'action étendu.
  • -
  • Découvrir ses capacités à l'utilisation de l'EFT.
  • -
  • Acquérir les bases de l'EFT.
  • -
  • S'approprier ce nouvel outil.
  • -
  • Reconnaître ses besoins, ses propres limites dans l'utilisation de la technique EFT afin de les dépasser en les travaillant.
-  -

Personnes concernées

-
  • Toute personne ressentant la nécessité de développer sa connaissance de la technique EFT pour optimiser son utilisation personnelle et/ou professionnelle.
-  -

Méthodes pédagogiques

-
  • Démonstrations.
  • -
  • Entraînements à partir des cas réels des participants et débriefing personnalisé.
  • -
  • Pédagogie active avec de nombreux entraînements permettant de s'approprier le savoir et le savoir-faire propre à la technique EFT bases nécessaires avant d'aborder le savoir-être avec le Niveau Approfondissement.
  • -
  • Etudes de cas, extraits de séances filmées avec Gary Craig, support de cours remis au stagiaire.
  • -
  • Echanges et travail de réflexion à partir du vécu des participants.
-  -

Programme

-
    -
    • Présentation de la technique EFT
    • -
    • Historique.
    • -
    • Son fondateur.
    • -
    • Le principe de la Technique EFT
    - -
  1. Les bases de la Technique EFT. -
    • Le postulat de base
    • -
    • Echelles d'évaluation
    • -
    • L'inversion psychologique
    • -
    • La recette de base
    • -
    • La séquence abrégée
    - -
  2. Approfondissements -
    • L'importance d'être spécifique
    • -
    • Les changements d'aspects
    • -
    • Votre point
    • -
    • Essayez l'EFT sur tout
    • -
    • L'importance d'évaluer son travail
    • -
    • Traitement d'intensité excessive
    • -
    • Effet de généralisation de l'EFT
    • -
    • La technique de film
    • -
    • La procédure de Paix Personnelle
    • -
    • Les toxines d'énergie
    - -
  3. Pratique -
    • Douleurs physiques ou malaises
    • -
    • Sollicitations (chocolat cigarettes etc...)
    • -
    • Une mémoire ou un souvenir spécifique
    • -
    • La respiration resserrée
    • -
    • La technique du film
- diff --git a/pages/archives/eft-rhume.php b/pages/archives/eft-rhume.php deleted file mode 100644 index 3d77137..0000000 --- a/pages/archives/eft-rhume.php +++ /dev/null @@ -1,101 +0,0 @@ -

EFT dès les 1ers symptômes de rhume : la persévérance paie !

- -

-Note d’après celle de Gary Craig : Les lecteurs de cet article sont supposés avoir une connaissance pratique de l’EFT. Les débutants peuvent en tirer profit mais il leur est conseillé de lire le Manuel gratuit ou d’acquérir nos DVD d’un coût très abordable afin de mieux le comprendre (ainsi que leur traduction en français : voir pour cela le site www.technique-eft.com . NDT) -

- -Bonjour à tous, -
-
- -Remarquez combien la persévérance de Kathy Foulser permet de révéler tout naturellement bien des origines possibles dans les « coulisses » de ce problème. Elle commence ainsi son article : « Tout récemment je me suis réveillée un matin en ressentant les symptômes familiers d’un nouveau rhume : la gorge qui gratte et le nez bouché. Ce qui signifiait fatalement 5 à 7 jours pénibles » Consultez, s’il vous plait, les médecins, pour tout problème physique. -
-
- -Bien amicalement, Gary -
-


- -Par Kathy Foulser -
-
- -Tout récemment je me suis réveillée un matin en ressentant les symptômes familiers d’un nouveau rhume : la gorge qui gratte et le nez bouché. Ce qui signifiait fatalement 5 à 7 jours pénibles. En route pour mon travail, j’ai décidé de tapoter, bien que je n’aie jamais eu beaucoup de chance avec l’EFT pour mes problèmes physiques. J’ai utilisé la séquence classique d’EFT, en commençant par le point de karaté pour l’affirmation. J’ai tapoté sur : -
-
- -Même si j’ai la gorge qui me gratte, je m’aime et je m’accepte complètement et je suis prête à laisser partir ça …
- -Même si j’ai le nez bouché …
- -Même si je vais être malade …
- -Même si je sais que je vais me sentir misérable toute la semaine…
-
- - -Après plusieurs séquences de chaque, il n’y avait eu aucun changement. C’est à ce moment-là que j’abandonne d’habitude quand je fais de l’EFT sur mes problèmes physiques. Cette fois-là j’ai décidé de continuer. Il y avait quelques problèmes anciens sur lesquels j’avais travaillé dont je supposais qu’ils n’étaient pas complètement partis et qui contribuaient à mon blocage, alors j’ai tapoté sur :
- - -Même si l’EFT ne marche jamais pour mes problèmes physiques …
- -Même si l’EFT marche pour les autres, mais pas pour moi…
- -Même si les autres peuvent voir leurs besoin satisfaits, mais pas moi…
- -Même si les autres ont le droit d’avoir des besoins, mais pas moi…
- -Même si les autres peuvent avoir des miracles mais pas moi…
-
- - -Toujours aucun changement pour ma gorge qui me grattait ni pour mon nez bouché. Mais j’ai remarqué un sentiment ancien et familier que je n’avais jamais pu décrire avec précision, qui est d’être seule et avec le sentiment de ma solitude, mais pas tout à fait. Le mot qui le traduit le mieux est « désespéré ». J’ai beaucoup travaillé sur ce sentiment, et j’ai été un peu surprise de le voir resurgir. J’ai tapoté sur :
-
- - -Même si je me sens désespérée…
- -Même si je me sens isolée et seule…
-
- - -Alors ce sentiment devint plus spécifique. J’ai tapoté sur d’autres vieux problèmes qu’apparemment je n’avais pas traités complètement : -
-
- -Même si Dieu ne m’aime pas, je m’accepte et je m’aime moi-même complètement et Dieu m’aime et m’accepte complètement…
- -Même si je ne suis pas assez digne d’être aimée pour avoir des guérisons miraculeuses…
- -Même s’il n’y a pas de miracles pour moi, parce que je suis différente…
- -Même si tous les autres sont les enfants de Dieu et sont aimés complètement aimés, mais pas moi…
- -Même si tous les autres peuvent guérir grâce à l’amour de Dieu, mais que moi je ne peux pas…
- -Même si la loi de l’attraction marche pour tous les autres, mais pas pour moi…
-
- - -COMMENTAIRE DE Gary CRAIG : Il peut être encore plus utile d’aller plus en profondeur pour découvrir les évènements spécifiques qui sont derrière ces problèmes. Cela peut souvent se révéler fondamental.
-
- - -Tout ceci me prit environ 15 minutes, je suis arrivée à mon travail, et toujours pas de changement pour les symptômes de rhume. J’entrai et fus immédiatement accaparée par les problèmes professionnels. Ce ne fut que plusieurs heures plus tard que je remarquai que tous les symptômes avaient disparu ! -
-
- -Ces 5 jours destinés « fatalement » à être pénibles n’ont jamais eu lieu. Dix jours plus tard je suis toujours en forme. -
-
- -Ma leçon du jour : LA PERSEVERANCE ! -
-
- -Kathy
-
- - -Article paru dans la lettre du 30.11.2009 du site de Gary Craig www.emofree.com/Articles2/cold-relief-kathy.htm pour la lettre mensuelle du site de Geneviève GAGOS www.technique-eft.com par Martine Mauvais.
-

diff --git a/pages/archives/eft-vaccin-anti-stress.php b/pages/archives/eft-vaccin-anti-stress.php deleted file mode 100644 index fd419e7..0000000 --- a/pages/archives/eft-vaccin-anti-stress.php +++ /dev/null @@ -1,52 +0,0 @@ -

L’EFT, « vaccin anti-stress » : 2 exemples…mais est-ce permanent ?

- -

Bonjour à tous, -

- -Le Dr Patricia Carrington nous donne ici deux exemples qui montrent qu’un travail préalable avec l’EFT a eu des effets durables. C’est, bien sûr, l’une des caractéristiques remarquables de l’EFT, et c’est la marque de la vraie guérison. Appliquée correctement, l’EFT ne fait pas que donner des succès-minutes spectaculaires. La paix qu’elle procure, lorsqu’elle est employée avec compétence, est bel et bien durable d’une façon générale. -

- -L’article de Pat est, comme d’habitude, riche en observations et en remarques très fines. Vous pourriez avoir envie de l’imprimer pour ceux qui demandent « …mais est-ce que ça dure ? ». -

- -Bien amicalement, Gary -


- -Par Dr Patricia Carrington -

- -La peine et la détresse les plus profondes peuvent parfois avoir un bon côté, pas toujours, mais on peut trouver quelques aspects positifs même dans le genre de choc que nous vivons tous depuis les évènements tragiques du 11 Septembre 2001. J’aimerais vous faire part de deux choses que j’ai découvertes : l’une sur le bénéfice cumulatif de l’EFT employé de façon répétée sur la durée, l’autre sur la façon dont cette crise, pour quelques uns, peut offrir une opportunité de franchir des barrières émotionnelles ayant résisté auparavant à tout traitement, y compris à l’EFT. -

- -« Lorraine » est la reporter vedette d’un des plus importants journaux métropolitains de la région de New York. Il lui revient habituellement de traiter les catastrophes les plus graves. La semaine passée elle consacra de longues journées à interviewer les familles de ceux qui avaient perdu la vie au World Trade Center, dont celui d’un homme à qui sa femme avait dit au revoir juste avant le crash sur son téléphone portable (Vous en avez entendu parler). -

- -Lorraine avait travaillé avec moi en thérapie pendant une année et demie durant laquelle nous avions utilisé l’EFT pour une claustrophobie de longue date, jusqu’à ce qu’elle puisse prendre l’ascenseur sans panique (bien qu’elle ne se sente pas à l’aise en entrant dans un tunnel, surtout en train), elle n’a plus ses anciennes attaques de panique. Elle a aussi fait d’énormes progrès au cours du traitement dans bien d’autres aspects de sa vie. -

- -Hier, avant de la voir arriver à mon bureau, je m’attendais à la trouver profondément bouleversée, parce que je me rappelais qu’habituellement elle était obsessionnellement inquiète d’avoir vu un simple chien errant dans la rue, sans abri ; elle se sentait très coupable parce qu’elle ne pouvait pas sauver tous les animaux blessés qu’elle voyait. Nous avions tapoté maintes fois pour ce problème et nous avions pu remplacer peu à peu sa culpabilité par son intérêt et sa tendresse pour les animaux qu’elle pouvait aider, dont son chien et son chat bienaimés. Cela avait été une victoire pour elle, et un grand soulagement. -

- -Bien qu’elle soit arrivée fatiguée dans mon bureau, elle était étonnamment calme. Quand elle parla des évènements dont il avait été question avec les gens qui avaient le plus souffert de cet évènement, je pus voir qu’elle « faisait face ». Elle avait beaucoup de compassion pour tous ceux qui étaient touchés, mais sans ce que j’appelle le « syndrome du sauveteur » (Le danger pour un sauveteur d’être agrippé et attiré sous les vagues par une personne qui se noie, ce qui de ce fait l’empêche de lui être utile). En l’entendant parler je ne pouvais m’empêcher de me rappeler la Lorraine effrayée et pétrie de culpabilité de l’année précédente. Comment expliquer cette nouvelle façon de réagir ? -

- -Elle me donna spontanément la réponse. « C’est stupéfiant », dit-elle, « mais je gère. Je suis capable de travailler avec les gens qui ont été choqués, tout en étant sans arrêt bombardée d’informations dans cette salle de rédaction, sans me sentir anéantie et sans que cela provoque mon affreuse culpabilité d’avant. Je peux aider en écrivant de mon mieux leur histoire de façon à ce que le monde comprenne, un point c’est tout. » -

- -Elle ajouta ensuite que la raison pour laquelle elle pouvait le faire était que nous avions tellement tapoté sur ses problèmes de peur et de culpabilité tout au long de sa thérapie. « Je pense vraiment que ce sont les tapotements qui ont fait ça » dit-elle. Elle me dit alors qu’elle n’avait même pas eu à tapoter pour cet évènement spécifique, elle était tout simplement capable de s’atteler à la tâche et de poursuivre son travail. -

- -Elle nous dit là quelque chose d’important sur l’EFT et sur ses effets à long terme. Quand nous travaillions, Lorraine et moi, les arbres de sa « forêt » émotionnelle avaient été abattus les uns après les autres lorsque nous nous y attaquions, causant la chute de nombreux arbres voisins ; par la suite, en présence d’un désastre majeur, elle se trouve, capable de le gérer d’une façon complètement inimaginable pour l’ancienne Lorraine. -

- -Cela me rappelle un autre incident qui m’a été rapporté justement le mois dernier par un homme qui se sert de l’EFT « sur à peu près tout » depuis environ six mois. La police de l’état recherchait récemment une de ses connaissances pour l’interroger. Ce à quoi il ne s’attendait pas, c’est qu’ils fouillèrent sa propre maison, alors qu’il était complètement innocent de toute implication dans le crime soupçonné. Pour finir il fut interrogé dans les locaux de la police locale : il m’a décrit combien il était à l’aise et aimable avec les policiers qui l’ont fouillé et interrogé, puis il dit « J’ai essayé de comprendre pourquoi j’étais si calme, si à l’aise, dans toute cette affaire, et j’ai pensé que ça ne pouvait être que pour une seule raison : à cause des nombreuses fois où j’ai employé la phrase « Je m’accepte profondément et complètement » quand je faisais de l’EFT. Je crois qu’elle a eu un effet durable sur moi, et lorsqu’ils me soupçonnaient, je m’acceptais automatiquement, tout simplement. » -

- -En considérant ces deux histoires, j’y vois une dimension entièrement nouvelle à notre travail avec l’EFT : le changement, au fil du temps, d’attitudes et de croyances profondément ancrées grâce à la simple répétition de la procédure EFT. Dans un certain sens ces deux personnes ont reçu un « vaccin anti-stress » grâce à cette répétition de l’EFT, si bien que lorsqu’il y a eu, de façon inopinée, des défis graves à relever, elles étaient étonnamment prêtes pour y faire face. C’est à l’évidence un effet secondaire éminemment appréciable.
- -[…………………………………………………………………………………………….….]. -

- -Article paru sur le site de Gary Craig www.emofree.com/trauma/stressinoculation.htm
- traduit par Martine Mauvais. 20 Juin 2011. -

\ No newline at end of file diff --git a/pages/archives/emmanuelle-ansart-psychiatre-eft-paris.php b/pages/archives/emmanuelle-ansart-psychiatre-eft-paris.php deleted file mode 100644 index 4f2cb33..0000000 --- a/pages/archives/emmanuelle-ansart-psychiatre-eft-paris.php +++ /dev/null @@ -1,20 +0,0 @@ -

Docteur Emmanuelle Ansart, Psychiatre EFT, PARIS

- - -

-J'ai été formée à la psychiatrie biologique et aux thérapies comportementales et cognitives, je m'intéresse également à la médecine micronutritionnelle et c'est au cours d'une de ces formation que j'ai découvert l'EFT.

-Cette technique, comme l'EMDR, a pour but d'éliminer les petits ou les grands traumatismes du passé et il est étonnant de constater les améliorations obtenues, tant sur la santé mentale que physique.

-Depuis le peu de temps que j'utilise cette technique, essentiellement pour faciliter la mise en place des TCC, je suis de plus en plus convaincue de son efficacité et de son intérêt. -

-J'ai fait mes études de médecine à la faculté de médecine Xavier-Bichat et mon CES de Psychiatrie auprès de Melle le Professeur Lempérière.
-Je suis interne de Hôpitaux Psychiatriques de la Seine et j'ai accomplit une formation en thérapie comportementale à Montréal auprès de M le Professeur Lamontagne. -J'exerce en libéral depuis 1988. - -

- -L'EFT est simple à apprendre, rapidement utilisable en pratique quotidienne pour tous ceux qui pratiquent des thérapies comportementales auxquelles elles apportent la prise en compte et l'acceptation de l'émotion. 

-A un niveau plus avancé d'apprentissage et de pratique cela me semble encore plus intéressant et la notion de libération émotionnelle par la reviviscence des expériences émotionnelles négatives est édifiante !

-Il y a plusieurs "niveaux" de formation en EFT qui correspondent à des formations et des supervisions de cas, c'est ce qui permet d'aborder ces cas plus complexes.

-

Dr Emmanuelle Ansart
-Médecin- Psychiatre
-75009 Paris

diff --git a/pages/archives/error404.php b/pages/archives/error404.php deleted file mode 100644 index 705cc6b..0000000 --- a/pages/archives/error404.php +++ /dev/null @@ -1,18 +0,0 @@ -Bonjour,

- -www.Technique-EFT.com est en plein “relooking”. J’espère qu’il vous plaira et que vous aurez plaisir à y revenir.
-
-Il se peut toutefois que malgré notre vigilance certaines pages ne s’affichent pas correctement, comme celle-ci qui vient de générer cet affichage.
-Ce sont les aléas de ce genre de modification en profondeur.
-
-Merci de me le signaler et/ou également de me signaler les “liens morts” que vous pourriez rencontrer lors de votre navigation sur le site, en m’écrivant à :
genevieve.gagos@technique-eft.com
-
-Je vous remercie de votre collaboration.
-
-A très bientôt sur votre nouveau site d’informations complètement dédié à l’EFT.
-
-
-Geneviève GAGOS

- - - diff --git a/pages/archives/essai10.php b/pages/archives/essai10.php deleted file mode 100644 index a4d1d0f..0000000 --- a/pages/archives/essai10.php +++ /dev/null @@ -1 +0,0 @@ -hjujkhkhj \ No newline at end of file diff --git a/pages/archives/essai11.php b/pages/archives/essai11.php deleted file mode 100644 index 63d8dbd..0000000 --- a/pages/archives/essai11.php +++ /dev/null @@ -1 +0,0 @@ -b \ No newline at end of file diff --git a/pages/archives/eviter-desensibiliser-dent.php b/pages/archives/eviter-desensibiliser-dent.php deleted file mode 100644 index 06ce2ce..0000000 --- a/pages/archives/eviter-desensibiliser-dent.php +++ /dev/null @@ -1,21 +0,0 @@ -

EFT permet d'éviter de désensibiliser une dent

- -

Rebecca Marina illustre dans ce court article un nouvel exemple de ces résultats spectaculaires d'EFT qui sont tout simplement inexplicables par la médecine occidentale.

-Gary Craig -

-
-

-Par Rebecca Marina

-La semaine dernière, j'ai eu très mal aux dents, et je suis allée chez le dentiste. Il a pris une radio et a décidé de désensibiliser ma dent. Il voulait le faire le jour suivant, mais je devais enseigner lors d'une télé-classe sur "la fin des soucis financiers grâce à l'EFT" ce samedi-là et je savais que j'enseignerais et que je parlerais en continu pendant 4 heures; j'ai donc tapoté un peu et pris du Tylenol.

-Eh bien, le matin de la télé-classe, j'ai oublié de prendre un autre Tylénol, j'ai simplement donné ce cours et n'ai jamais pensé à ma dent. Je n'ai pas tapoté une seule fois à ce sujet ce jour là - j'ai par contre "emprunté des bénéfices" avec mes étudiants pendant le cours, mais n'ai jamais pensé à ma dent.

-Après le cours, j'ai remarqué que ma dent n'était absolument plus douloureuse, et la douleur n'est jamais revenue! Le mardi, quand je me suis présentée chez mon dentiste pour cette désensibilisation, je lui ai demandé de ré-examiner la dent. Il a tapoté, poussé, et a testé tout autour et n'a rien pu trouver! Il m'a dit : "je ne vais pas désensibiliser cette dent. Elle n'en a tout simplement pas besoin". Quelle douce musique à mes oreilles! Je sais pas pourquoi EFT a marché quand je ne me concentrais même pas sur ma dent, mais je suis clairement contente du résultat!

-Un grand merci à EFT et à tous les participants de ma télé-classe!

-Rebecca Marina

-Article Original sur http://www.emofree.com/articles/avoid-root-canal.htm

-Traduit par Christine DISANT,

- - \ No newline at end of file diff --git a/pages/archives/faire-passer-le-hoquet.php b/pages/archives/faire-passer-le-hoquet.php deleted file mode 100644 index c9da16e..0000000 --- a/pages/archives/faire-passer-le-hoquet.php +++ /dev/null @@ -1,57 +0,0 @@ - -

EFT - emotional freedom techniques

-

Un septique guéri de son hoquet change d'opinion sur l'EFT

-

-Bonjour à tous, - -

- - - -Voici un court article de Kathilyn Solomon qui pourrait être utile lorsque l’on a affaire à un sceptique. -

-Amicalement, Gary -

-
-

-Par Kathilyn Solomon -

-Gary, -

-En tant que praticien en EFT, je tends à utiliser l’EFT pour tout. J’ai un ami, appelons-le « X », que l’EFT laisse sceptique. L’autre jour, il avait un hoquet qui ne voulait pas passer et qui a continué pendant tout le dîner. Mon ami a dit à plusieurs reprises que cela le dérangeait. -

-Je me dis que c’était l’occasion idéale pour lui proposer de tapoter. Mais j’ai commencé par tapoter sur mon envie de le « faire » tapoter, en me détachant de tout désir quant au résultat de ma proposition. Je lui proposai de tapoter pour son hoquet, et celui-ci devait vraiment le gêner car il accepta d’essayer. Il dit que son niveau d’intensité était de 10. Je fis une séquence de tapotements : -

-Même si j’ai ce hoquet … -

-Même si ce hoquet m’ennuie et que je ne sais pas comment m’en débarrasser …je me pardonne pour avoir pu y contribuer de quelque façon que ce soit …je pardonne à chacun en particulier et à tous ceux en général qui ont pu contribuer sciemment ou non à ce problème, et je veux le laisser partir … -

-Même si j’ai tout cet air dans mon corps qui essaie de sortir, je demande à mon corps de le faire d’une autre façon, plus salutaire, plus saine et plus facile pour moi. -

-Ce hoquet embêtant -

-Il me gêne vraiment -

-Ce hoquet embêtant -

-Je le déteste et je voudrais qu’il parte -

-Je demande à mon corps de gérer cet air en excès autrement, d’une façon plus saine et plus confortable pour moi
-

-Je ne crois pas avoir fait plus d’une séquence avant que le hoquet ne s’arrête. Mon ami était très content et surpris qu’il ait cessé. J’ai gardé le silence, plutôt que de lui dire « Je t’avais bien dit que ça marchait ! » -

-Merci Gary de partager l’ EFT si généreusement avec tant de gens. -

-Kathilyn -

-Article publié dans la lettre d’information du site de Gary Craig http://www.emofree.com/Articles2/hiccups-skeptic-kathilyn.htm le 8 Août 2007 -
-

traduit par Martine Mauvais Praticienne et Formatrice EFT

- - - - - - - - diff --git a/pages/archives/formation-eft-approfondissement.php b/pages/archives/formation-eft-approfondissement.php deleted file mode 100644 index 32ddc17..0000000 --- a/pages/archives/formation-eft-approfondissement.php +++ /dev/null @@ -1,83 +0,0 @@ -

Formation EFT- Programme Module Approfondissement

-

par Geneviève Gagos EFTCert-II par Gary Craig

- - - -

Durée :

-
    -
  • 2 jours d'enseignement : soit 12 heures.
  • -
  • Supervision individuelle et Rapport sur étude de 50 cas traités pour validation du niveau Approfondissement soit 50 heures de pratique minimum.
- - -

Pré-Requis :

-
    - -
  • Niveau 1 selon les directives de Gary Craig.
- -

Objectifs

-
    - -
  • Evaluer son utilisation des bases de l'EFT.
  • -
  • Augmenter ses capacités à l'utilisation de l'EFT.
  • -
  • Approfondir les possibilités de la technique EFT grâce à l'apprentissage de nouvelles façons de l'utiliser.
  • -
  • Augmenter ses performances EFT : seul, en groupe, ou par téléphone
  • -
  • Reconnaître ses propres besoins, ses propres craintes qui interfèrent dans une utilisation optimum de la technique EFT.
-  -

Personnes concernées

-
    - -
  • Le Niveau 2 Professionnel est réservée aux personnes souhaitant intégrer l'EFT dans leur pratique professionnelle en accompagnement personnel ou en groupe, en relation d'aide, formation, coaching, thérapies diverses, toutes professions médicales ou en renforcement de leur pratique professionnelle.
-  -

Méthodes pédagogiques

-
    - -
  • Entraînements à partir des cas réels des participants et débriefing personnalisé.
  • -
  • Pédagogie active avec de nombreux entraînements permettant de s'approprier le savoir-faire et le savoir être propre à la technique EFT.
  • -
  • Etudes de cas, document powerpoint, support de cours remis au stagiaire.
  • -
  • Echanges et travail de réflexion à partir du vécu des participants.
  • -
  • Stage pratique : 50 séances EFT auprès de différentes personnes (soi-même, entourage immédiat, autres étudiants, durant les différents stages...). Remise d'un rapport de stage précisant chaque suivi, et la procédure utilisée pour l'obtention des résultats
  • -
  • Supervision téléphonique, Internet ou téléconférence.
-  -

Programme

-
    - -
  1. Principes du Palace des Possibilités -
      -
    • Écriture sur nos murs. -
    • les Affirmations marchent mieux quand les petits mots de la fin sont tombés.
    - -
  2. Les 3 points additionnels des tapotements comme indiqué par Michel Gandy dans les Pas Vers l’ULTIME Thérapeute. -
    • Description
    • -
    • Pratique.
    - -
  3. Les façons d’introduire plus de douceur dans la procédure -
    • la Technique du Trauma Sans larmes
    • -
    • Eloigner la Douleur
    • -
    • Détourner le problème
    • -
    • Démonstration
    - -
  4. les différentes façons d’être au cœur des problèmes -
    • Recherche d'une émotion liée au problème.
    • -
    • Découverte de l'événement fondamental.
    • -
    • Utilisez les petits mots de la fin.
    - -
  5. Parlez des problèmes physiques -
    • Le concept des causes émotionnelles liées aux maladies physiques.
    • -
    • Comment être TRÈS SPÉCIFIQUE avec un symptôme.
    • -
    • Chassez la douleur.
    - -
  6. Testez les résultats -
    • Comment tester les résultats selon les cas.
    - -
  7. Travaillez par téléphone -
    • Comment travailler par téléphone
    • -
    • Démonstration
    - -
  8. Livrez l’EFT en groupes -
    • Comment travailler avec des groupes.
    • -
    • Démonstration
-  -

Validation du niveau Approfondissement EFT

-
  • Après validation de ce niveau d'étude vous pourrez paraître dans l'annuaire du site Ecole France EFT et demander votre adhésion à l'Association Française EFT
  • -
  • Obtention de votre Certificat "Praticien EFT"
-  diff --git a/pages/archives/formation-eft.php b/pages/archives/formation-eft.php deleted file mode 100644 index bba47a5..0000000 --- a/pages/archives/formation-eft.php +++ /dev/null @@ -1,6 +0,0 @@ -

Formations EFT

- -



-Je vous remercie de vous rendre sur le site de l'Ecole EFT France totalement consacré aux formations EFT

-

Ecole EFT France


A très vite !

- diff --git a/pages/archives/formation-praticien-eft-certifie.php b/pages/archives/formation-praticien-eft-certifie.php deleted file mode 100644 index a96b010..0000000 --- a/pages/archives/formation-praticien-eft-certifie.php +++ /dev/null @@ -1,48 +0,0 @@ - - - - - - - - - - - - - - - - -

Modules complémentaires en option :

-
  • Module Ecoute Active
  • -
  • Module Mener une séance EFT
- - - -
Devenir Praticien EFT Certifié
Je suis déjà en activité
en cabinet ou en institution
Je débute dans
la relation d'aide
Je désire rejoindre
la Relation d'Aide
-

Formation EFT :

-
    -
  • Module de Base
  • -
  • Module Approfondissement
  • -
  • Supervision Individuelle
  • -
  • Validation
- - -

Certificat de Praticien EFT

-
    -
  • Parution annuaire
    Ecole France EFT
  • -
  • Possibilité rejoindre
    Association Française EFT,
    gage de sérieux
    -avec Parution à l'annuaire
    des Praticiens agréés
- - -
  • Module Perfectionnement 1
  • -
  • Supervision Individuelle
  • -
  • Module Perfectionnement 2
  • -
  • Supervision Individuelle
  • -
- -

Certificat de Praticien EFT Avancé

- -
  • Supervision de Groupe annuelle
  • -
    \ No newline at end of file diff --git a/pages/archives/formations-eft-EFTbyWorkshop-France.php b/pages/archives/formations-eft-EFTbyWorkshop-France.php deleted file mode 100644 index dfa061d..0000000 --- a/pages/archives/formations-eft-EFTbyWorkshop-France.php +++ /dev/null @@ -1,4 +0,0 @@ -

    Formations EFT Certifiantes

    -

    Ecole EFT France

    - -

    Retrouvez les Formations EFT Certifiantes sur le site de l'Ecole EFT France

    \ No newline at end of file diff --git a/pages/archives/formations-eft-bis.php b/pages/archives/formations-eft-bis.php deleted file mode 100644 index 45e38b2..0000000 --- a/pages/archives/formations-eft-bis.php +++ /dev/null @@ -1,220 +0,0 @@ -

    Formations EFT

    - -
      -
    1. Formations EFT Professionnelles présentées par Geneviève GAGOS EFTCert-II - -
    2. -
      • Vous faites déjà partie du personnel soignant ou dans la relation d'aide et vous exercez en cabinet ou en institution
      • -
      • Vous êtes en formation d'un métier dans le secteur soignant ou de relation d'aide
      • -
      • Vous avez toujours voulu être dans la relation d'aide, vous souhaitez vous installer en cabinet, mais n'êtes pas encore établi
      - - -
    3. Formations EFT Professionnelles et Développement Personnel présentées par Martine Mauvais
    4. -
    5. Formations EFT Développement Personnel présentées par Véronique WAUMANS EFTCert-I - -
    6. - -

    -

    Geneviève Gagos EFTCert-II -

    Formations EFT professionnelles animées par
    Geneviève Gagos - EFTCert-II - -

    -

    -

    Ces actions de formations s’inscrivent dans le champ de la formation professionnelle et continue, dans la catégorie des actions d’'acquisition, d’'entretien et de perfectionnement des connaissances, prévues par l’'article L900-2 du code du travail.

    -Déclaration d'activité enregistrée sous le numéro 82 69 11036 69 auprès du préfet de région de Rhône-Alpes"

    -

    - - - - -
    • Vous faites déjà partie du personnel soignant ou dans la relation d'aide et vous exercez en cabinet ou en institution
    • -

      Selon que vous paierez vous-même votre formation ou qu'elle sera prise en charge par une tierce personne, la démarche est différente. Lisez bien ce qui suite et n'hésitez pas à me contacter pour de plus amples renseignements (06 78 43 02 84)

      -

      Vous recevrez une convention de formation si :

      -

      Le règlement de votre formation est fait par :

      - -

      -Pour faire une demande de Convention de Formation merci de compléter le questionnaire que vous trouverez en cliquant sur ce lien.

      -

      Formation demandée par une entreprise et/ou payée par un organisme.
      Si vous réglez vous-même votre formation, voyez un peu plus bas.

      Vous recevrez alors les documents nécessaires pour la constitution de votre dossier d'inscription.

      -

      Vous recevrez un contrat de formation

      -

      Si vous réglez vous-même votre formation. C'est-à-dire que le chèque de règlement est en votre nom propre. Vous trouverez dans le calendrier des formations ci-dessous un lien vous menant aux détails, modalités d'inscription et pré-inscription.

      - -

      Je règle moi-même ma formation

      - -

      -Pour votre comptabilité notez que votre acompte ne sera encaissé qu'un mois avant la date du stage.

      - -

      Nota : A compter du 1er octobre 2008, la notion "Approuvé" disparaît du site de Gary Craig
      et par conséquent disparaît également du site Technique-EFT.com.
      Toutefois nous continuons à vous proposer des formations dont le contenu suit parfaitement ses directives.
      Ces ateliers représentent les vues des présentateurs et pas nécessairement celles d'EFT, de Gary Craig ou d'emofree.com.

      - - - - -



      - -

      Les formations EFT professionnelles animées par Geneviève, s'adressent aux professionnels de la santé ou de la relation d 'aide déjà en activité.

      -

      Une petite précision toutefois, il ne s'agit pas là, de votre qualification en tant que telle, mais de l'utilisation que vous ferez de l'EFT dans votre profession.

      -S'agissant de formations professionnelles il n'est pas possible de rejoindre le cursus en cours de route.
      -La progression selon la nouvelle appellation est la suivante :

      -
      1. Module de Base
      2. -
      3. Module d'Approfondissement
      4. -
      5. Module de Perfectionnement
      - - - -

      FRANCE

      - - - - - - - - - - - - - - - - - - - - - - - - - - - -
      Deuxième semestre 2010
      69003 LYON Part Dieu (Rhône)
      Hôtel Novotel

      -

      Détails,
      Tarifs, Modalités d'inscription,
      et Pré-inscription en cliquant ici

      Samedi 23 et Dimanche 24 Octobre 2010
      *** COMPLET***
      Liste d'Attente
      Module d'Approfondissement
      Samedi 06 et Dimanche 07 Novembre 2010
      *** Reste 1 place***
      Module de base
      Samedi 20 et Dimanche 21 Novembre 2010
      *** Reste 4 places***
      Module de base
      Samedi 11 et Dimanche 12 Décembre 2010
      *** Reste 1 place***
      SUPERVISION de GROUPE
      Uniquement réservée à mes stagiaires
      Samedi 18 et Dimanche 19 Décembre 2010
      *** Reste 4 places***
      Module d'approfondissement
      - -

      ITALIE - Piacenza

      - - - - - - -
      Second semestre 2010
      Piacenza

      -

      Détails,
      Tarifs, Modalités d'inscription,
      et Pré-inscription en cliquant ici

      Samedi 02 et Dimanche 03 Octobre 2010






      Module de base en traduction simultannée






      - - - - - - - - - - - - - -
      Premier semestre 2011
      près de LYON Part Dieu (Rhône)
      137 rue bugeaud Lyon 69006

      NOUVEAU :
      Vous débutez dans la Relaton d'Aide. Pré-requis à ma Formation EFT

      -

      Détails,
      Tarifs, Modalités d'inscription,
      et Pré-inscription en cliquant ici

      Vendredi 21 Samedi 22 et Dimanche 23 Janvier 2011

      Formation à l'Ecoute Active
      - -

      -*Le Module de Base vous permettra d'utiliser correctement l'EFT pour vous-même et votre entourage immédiat.
      -
      -*Le Module d'Approfondissement est composé d'un stage et d'une supervision par téléphone, email et rendez-vous. Vous apprendrez des compléments importants qui vous permettront d'être plus efficace pour résoudre vos propres problèmes comme ceux des autres. Le Module de Perfectionnement est composé d'un stage et d'une supervision individuelle par mail sur 50 cas. Elle vous permet de vous affirmer dans la pratique de l'EFT tout en étant accompagné tout au long de vos progrès.
      Pré-requis Module de Base
      -
      Ces deux premiers niveaux et beaucoup de pratique sont indispensables pour commencer à utiliser l'EFT auprès d'une clientèle. - -

      -*Le Module de Perfectionnement vous laisse entrevoir ce qu'est l'Art de l'EFT. Vous voudrez suivre ce stage si vous souhaitez être à l'aise avec vos clients/patients. Le Module de Perfectionnement est composé d'un stage et d'une supervision par téléphone conformément aux directives de Gary Craig.
      Pré-requis formation Module d'Approfondissement validé.

      -

      Pour une inscription par courrier vous libellerez votre chèque à :
      Geneviève Gagos -,
      Le Diamont II - 16 rue de la République
      69330 MEYZIEU
      -genevieve.gagos@technique-eft.com

      -

      -Vous êtes une association, un groupe et vous souhaitez que j'anime un stage près de chez vous.
      Contactez-moi. Geneviève Gagos

      - -
      - - -

      Formations présentées par Martine Mauvais

      -

      Stages de Niveaux 1, 2 et 3 -

      -

      Pour la description des 3 niveaux, reportez-vous ci-dessus à celle de Geneviève Gagos.

      - - - - - - - - - - - - - - - - - - - - - - - -
      Deuxième SEMESTRE 2010
      PARIS (75013)
      30 & 31 OCTOBRE 2010Module de base
      20 & 21 NOVEMBRE 2010Module d’approfondissement
      BESANCON (25)
      1er Octobre 2010 Conférence
      6 & 7 NOVEMBRE 20100 Module de Base
      11 & 12 DECEMBRE 2010 Module d’approfondissement
      -
      - - - - - - - - - - - - - - - - - -
      Premier SEMESTRE 2011
      CARPENTRAS (84200)
      26 & 27 MARS 2011 Module de base
      21 & 22 MAI 2011
      Module d’approfondissement
      PARIS (75013)
      A venirModule de base
      A venirModule d'Approfondissement
      HAUTE-SAVOIE/GENEVE
      A venirModule de base
      A venirModule d'Approfondissement
      - -


      - -Demandez les dépliants, avec bulletins d’inscription, des stages qui vous intéressent à :

      -

      Martine Mauvais,
      - 16 rue de Tarragon
      - 25110 Baume-les-Dames
      - Tél : 03 81 84 05 18
      ou 06 89 33 61 59
      - e-mail : martine.mauvais@sfr.fr

      - -
      -

      EFTCert-I

      -

      Formations Développement Personnel
      Véronique Waumans - EFTCert-I - -

      - -





      - - - - - - -
      Année 2010
      GRENOBLE (38)
      Sam. 20 et Dim. 21 Novembre 2010
      - - -

      S'adresser directement à :

      -Véronique WAUMANS
      -11 Rue du Trident
      -38100 Grenoble
      -Tél :06 89 07 47 27
      -e-mail : v.waumans@yahoo.fr

      diff --git a/pages/archives/formations-eft-certifiantes-ecole-eft-france.php b/pages/archives/formations-eft-certifiantes-ecole-eft-france.php deleted file mode 100644 index 904ab15..0000000 --- a/pages/archives/formations-eft-certifiantes-ecole-eft-france.php +++ /dev/null @@ -1,32 +0,0 @@ -

      Formations EFT certifiantes- Ecole EFT France

      - -

      L'Ecole EFT France est dirigée par Geneviève Gagos, Formatrice et Praticienne EFTCert-2 certifiée par Gary Craig, fondateur de la technique EFT.

      -Par son enseignement, vous bénéficiez d'un enseignement sérieux, avec un accompagnement personnalisé pour chaque étudiant, et un programme conforme à l'enseignement de Gary Craig, par un praticien expérimenté.

      -Praticienne EFT depuis Janvier 2003, Geneviève Gagos, enseigne l'EFT depuis octobre 2007.

      Déclarée auprès du Préfet de région Rhône-Alpes, vous bénéficiez de formations professionnelles dans le cadre de la formation continue d'adultes. -

      -


      - -

      Formation EFT animées par Geneviève GAGOS
      - -EFTCert-II par Gary Craig, Fondateur de l'EFT

      - - -

      NOUVELLE ORGANISATION DES FORMATIONS - LIRE ATTENTIVEMENT SELON VOTRE PROFIL

      - -

      Jusqu'à fin 2010, les formations de Geneviève Gagos restent réservées aux seuls personnels soignant ou de la relation d'aide, déjà en activité. Bien sûr cela ne présume en rien que les autres ne sont pas capables d'être de bons praticiens EFT. Aussi afin de corriger ce désagrément, les formations évoluent en 2011, avec une différenciation selon que vous soyez déjà installé dans le soin ou dans la relation d'aide, que vous débutiez dans une de ces catégories, ou qu'ayant de grandes qualités humaines, vous souhaitez rejoindre la relation d'aide et pratiquer l'EFT en tant que professionnel sérieusement formé à cette pratique.

      -C'est ainsi que 2 nouveaux modules voient le jour :

      -
      • Le module "Ecoute Active" qui est également le pré-requis obligatoire pour suivre la formation EFT, si vous n'avez aucune formation dans la relation d'aide
      • -
      • Le module : "Mener une séance EFT", afin de découvrir comment se déroule une séance EFT, de la prise de contact à la mise en pratique de la technique
      - - - - -

      Cliquez sur les liens ci-dessous pour consulter le cursus qui vous est nécessaire pour devenir "Praticien EFT" selon votre profil de départ.

      -

      - - - -

      Formation EFT -Ecole EFT FranceFormation EFT -Ecole EFT France

      -

      Formation EFT -Ecole EFT FranceFormation EFT -Ecole EFT France

      -

      Formation EFT -Ecole EFT FranceFormation EFT -Ecole EFT France

      - diff --git a/pages/archives/formations-eft-deuxieme-semestre-2010.php b/pages/archives/formations-eft-deuxieme-semestre-2010.php deleted file mode 100644 index 76e83fa..0000000 --- a/pages/archives/formations-eft-deuxieme-semestre-2010.php +++ /dev/null @@ -1,204 +0,0 @@ -

      Formation EFT -animées par Geneviève GAGOS

      - -

      EFTCert-II par Gary Craig, Fondateur de l'EFT

      - -

      Les formations animées par Geneviève, sont des formations professionnelles, exclusivement réservées aux professionnels de la Santé ou de la relation d'Aide.

      - -

      Lieu : LYON PART DIEU (Rhône)

      - -Horaires :
      Samedi de 10h00 -12h00 et de 13h30-17h30
      Dimanche de 09h00 -12h00 et de 13h30-16h30

      - -
        -
      1. -Formation professionnelle demandée par le Professionnel de Santé ou de la Relation d'Aide, souhaitant se former à la technique en vue de pratiquer l'EFT en tant que praticien (formation payée par le participant en son nom propre. S'il s'agit d'une association ou une entreprise voir convention de formation ci-dessous)
      2. -
        • Module de Base: 210€€
        • -
        • Module Approfondissement (260€) + Supervision individuelle(160€) : 420€€
        • -
        • Module Perfectionnement + Supervision individuelle : 420€€
        • -
        • Supervision de Groupe, réservée à mes stagiaires à partir du niveau Approfondissement : 210€
        - - - -
      3. Formation Professionnelle réglée par l'entreprise, l'association ou l'organisme, dont dépend le professionnel de la Santé ou de la Relation d'Aide - Convention de Formation
      4. -
        • Module de Base : 273€€
        • -
        • Module Approfondissement + supervision : 546€€
        • -
        • Module Perfectionnement + Supervision : 546€
        • -
        • Supervision de Groupe, réservée à mes stagiaires à partir du niveau Approfondissement : 273€
        - -

        Remplissez bien toutes les rubriques du formulaire en bas de cette page, pour réserver votre place. Vous recevrez sous quinze jours une convention de formation ou un contrat de formation selon votre profil.

        - - -
      - - - -

      -Un acompte de 30% est demandé à l'inscription. Par contre il sera encaissé trois semaines à un mois avant le début du stage et en aucun cas à moins de dix jours de votre inscription.
      -Les places étant limitées les inscriptions seront prises par ordre d'arrivée des contrats de formation et des acomptes.

      - - - -
      -
      - - - - - - - - - - -
      -

      Demande de Pré-Inscription aux Formations EFT de Geneviève Gagos

      -
      -
      - -
      - -
      -
      -
      -
      - -
      - -
      -
      -
      - -
      -
      -
      -
      - -
      -
      - -
      -
      - -
      -
      - -
      -
      - -
      -
      - -
      -
      - -
      -
      - -
      -
      - -
      -
      - -
      -
      - -
      -
      - -
      -
      - -
      -
      - -
      -
      -
      - -
      -
      -
      - - - \ No newline at end of file diff --git a/pages/archives/formations-eft-lyon.php b/pages/archives/formations-eft-lyon.php deleted file mode 100644 index 134a1bc..0000000 --- a/pages/archives/formations-eft-lyon.php +++ /dev/null @@ -1,9 +0,0 @@ -

      Formation EFT -animées par Geneviève GAGOS

      - -

      Selon les directives de Gary Craig

      - -

      -Formation EFT professionnelle, certifiante pour le Professionnel de la Santé ou de la Relation d'Aide

      - - diff --git a/pages/archives/formations-eft-premier-semestre-2010.php b/pages/archives/formations-eft-premier-semestre-2010.php deleted file mode 100644 index 8d77abb..0000000 --- a/pages/archives/formations-eft-premier-semestre-2010.php +++ /dev/null @@ -1,200 +0,0 @@ -

      Formation EFT -animées par Geneviève GAGOS

      - -

      Selon les directives de Gary Craig

      - -

      Les formations animées par Geneviève, sont des formations professionnelles, exclusivement réservées aux professionnels de la Santé ou de la relation d'Aide.

      - -

      Lieu : LYON PART DIEU (Rhône)

      - -Horaires :
      Samedi de 10h00 -12h00 et de 13h30-17h30
      Dimanche de 09h00 -12h00 et de 13h30-16h30

      - -
        -
      1. -Formation professionnelle demandée par le Professionnel de la Santé ou de la Relation d'Aide, souhaitant se former à la technique en vue de pratiquer l'EFT en tant que praticien (formation payée par le participant)
      2. -
        • Module de Base: 210€€
        • -
        • Module Approfondissement (260€) + Supervision individuelle(160€) : 420€€
        • -
        • Module Perfectionnement + Supervision individuelle : 420€€
        • -
        • Supervision de Groupe, réservée à mes stagiaires à partir du niveau Approfondissement : 210€
        -

        Cliquez et remplissez le formulaire pour réserver votre place

        - - - -
      3. Formation Professionnelle payée par l'entreprise dont dépend le professionnel de la Santé ou de la Relation d'Aide (y compris entreprise individuelle) ou par un autre Organisme - Convention de Formation ou par votre
      4. -
        • Module de Base : 273€€
        • -
        • Module Approfondissement + supervision : 546€€
        • -
        • Module Perfectionnement + Supervision : 546€
        • -
        • Supervision de Groupe, réservée à mes stagiaires à partir du niveau Approfondissement : 273€
        - -

        Cliquez et remplissez le formulaire pour commander la Convention de Formation

        - -
      - - - -

      -Un acompte de 30% est demandé à l'inscription. Par contre il sera encaissé trois semaines à un mois avant le début du stage et en aucun cas à moins de dix jours de votre inscription.
      -Les places étant limitées les inscriptions seront prises par ordre d'arrivée des contrats de formation et des acomptes.

      - - - -
      -
      - - - - - - - - - - -
      -
      Pre-Inscription aux modules de formation professionnelle EFT
      -
      -
      - -
      - -
      -
      -
      - -
      -
      -
      -
      - -
      -
      - -
      -
      - -
      -
      - -
      -
      - -
      -
      - -
      -
      - -
      -
      - -
      -
      - -
      -
      - -
      -
      - -
      -
      -

       

      -
      -
      - -
      -
      -
      - -
      -
      -
      - - - \ No newline at end of file diff --git a/pages/archives/formations-eft-premier-semestre-2011.php b/pages/archives/formations-eft-premier-semestre-2011.php deleted file mode 100644 index 0473749..0000000 --- a/pages/archives/formations-eft-premier-semestre-2011.php +++ /dev/null @@ -1,41 +0,0 @@ - - - - -

      Ecole EFT France
      Formations EFT Certifiantes

      - -

      L'Ecole EFT France est dirigée par Geneviève Gagos, Formatrice et Praticienne EFTCert-2 certifiée par Gary Craig, fondateur de la technique EFT.

      -Par son enseignement, vous bénéficiez d'un enseignement sérieux, avec un accompagnement personnalisé pour chaque étudiant, et un programme conforme à l'enseignement de Gary Craig, par un praticien expérimenté.

      -Praticienne EFT depuis Janvier 2003, Geneviève Gagos, enseigne l'EFT depuis octobre 2007.

      Déclarée auprès du Préfet de région Rhône-Alpes, vous bénéficiez de formations professionnelles dans le cadre de la formation continue d'adultes. -

      -


      - -

      Formation EFT Certifiantes, animées par Geneviève GAGOS
      - -EFTCert-II par Gary Craig, Fondateur de l'EFT

      - -

      Les formations EFT, animées par Geneviève Gagos, sont des formations professionnelles, certifiantes

      - - - -

      NOUVELLE ORGANISATION DES FORMATIONS - LIRE ATTENTIVEMENT SELON VOTRE PROFIL

      - -

      Jusqu'à fin 2010, les formations de Geneviève Gagos restent réservées aux seuls personnels soignant ou de la relation d'aide, déjà en activité. Bien sûr cela ne présume en rien que les autres ne sont pas capables d'être de bons praticiens EFT. Aussi afin de corriger ce désagrément, les formations évoluent en 2011, avec une différenciation selon que vous soyez déjà installé dans le soin ou dans la relation d'aide, que vous débutiez dans une de ces catégories, ou qu'ayant de grandes qualités humaines, vous souhaitez rejoindre la relation d'aide et pratiquer l'EFT en tant que professionnel sérieusement formé à cette pratique.

      -C'est ainsi que 2 nouveaux modules voient le jour :

      -
      • Le module "Ecoute Active" qui est également le pré-requis obligatoire pour suivre la formation EFT, si vous n'avez aucune formation dans la relation d'aide
      • -
      • Le module : "Mener une séance EFT", afin de découvrir comment se déroule une séance EFT, de la prise de contact à la mise en pratique de la technique
      - - - - -

      Cliquez sur l'un des trois liens ci-dessous pour consulter le cursus qui vous est nécessaire pour devenir "Praticien EFT", selon votre profil de départ.

      -

      - -

      - diff --git a/pages/archives/formations-eft.php b/pages/archives/formations-eft.php deleted file mode 100644 index 9cf594d..0000000 --- a/pages/archives/formations-eft.php +++ /dev/null @@ -1,2 +0,0 @@ -

      nouvelle adresse pour les formations Merci de cliquer sur ce lien : Formations EFT
      -A tout de suite!


      \ No newline at end of file diff --git a/pages/archives/formations-eftbis.php b/pages/archives/formations-eftbis.php deleted file mode 100644 index 8665fe1..0000000 --- a/pages/archives/formations-eftbis.php +++ /dev/null @@ -1,102 +0,0 @@ -

      Formations EFT par Geneviève Gagos
      EFTCert-II par Gary Craig, fondateur de l'EFT.

      -

      - -

      Vous êtes un professionnel de Santé ou de la Relation d’Aide, déjà en activité en cabinet ou en institution

      - - -

      Formation EFT classique

      - -
      • Module 1 : Les Bases de l’EFT
      • -

        2 jours (12 h)
        + début de pratique sur soi pour s’approprier la technique (5 h)

        - -
      • Module 2 : Approfondissement + Supervision
      • -

        Théorie 2 jours (12 h)
        -+ Stage pratique sur 50 cas supervisés (soit 50 h de pratique)
        -+ continuer le travail EFT sur soi (seul et/ou accompagné en EFT)
        -Après validation de ce niveau par le formateur : «Certificat de Praticien EFT»

        - -
      • Supervision de Groupe (12h) :
      • -

        Dans le cadre de la formation continue, participation à au moins une supervision de groupe annuelle.
        Pré-requis : Niveau Approfondissement
        -validé par Attestation de présence fournie en fin de stage.

        - -
      • Module 3 : Perfectionnement + Supervision
      -

      Théorie 2 jours (12 h)
      -+ Stage pratique sur 50 cas supervisés (soit 50 h de pratique)
      -+ continuer le travail EFT sur soi (seul et/ou accompagné en EFT) )
      -Après validation de ce niveau par le formateur «Certification Praticien EFT Avancé»

      - -

      OPTIONNEL : Formation Ecoute Active

      -

      Si vous souhaitez approfondir votre écoute
      -Formation sur 3 jours consécutifs (18 h)
      -Attestation de participation en fin de module.

      -

      ---------->Calendrier des formations

      -


      -

      Vous êtes un professionnel de Santé ou de la Relation d’Aide, en formation ou en début d'activité

      - -

      Formation Ecoute Active

      -

      Formation sur 3 jours consécutifs (18 h)
      -Attestation de participation en fin de module, nécessaire pour faire la formation EFT.

      - - - -

      Puis Formation EFT classique

      - -
      • Module 1 : Les Bases de l’EFT
      • -

        2 jours (12 h)
        + début de pratique sur soi pour s’approprier la technique (5 h)

        - -
      • Module 2 : Approfondissement + Supervision
      • -

        Théorie 2 jours (12 h)
        -+ Stage pratique sur 50 cas supervisés (soit 50 h de pratique)
        -+ continuer le travail EFT sur soi (seul et/ou accompagné en EFT)
        -Après validation de ce niveau par le formateur : «Certificat de Praticien EFT»

        - -
      • Supervision de Groupe (12h) :
      • -

        Dans le cadre de la formation continue, participation à au moins une supervision de groupe annuelle.
        Pré-requis : Niveau Approfondissement
        -validé par Attestation de présence fournie en fin de stage.

        - -
      • Module 3 : Perfectionnement + Supervision
      • -

        Théorie 2 jours (12 h)
        -+ Stage pratique sur 50 cas supervisés (soit 50 h de pratique)
        -+ continuer le travail EFT sur soi (seul et/ou accompagné en EFT) )
        -Après validation de ce niveau par le formateur «Certification Praticien EFT Avancé»

        - - -
      • Formation «Mener une session EFT»
      • -

        Formation sur 2 jours (12 h)

        - -

        ---------->Calendrier des formations

        - -


        -

        Vous souhaitez rejoindre la relation d’aide.

        - -

        Formation Ecoute Active

        -

        Formation sur 3 jours consécutifs (18 h)
        -Attestation de participation en fin de module, nécessaire pour faire la formation EFT.

        - - -

        Puis Formation EFT classique

        - -
        • Module 1 : Les Bases de l’EFT
        • -

          2 jours (12 h)
          + début de pratique sur soi pour s’approprier la technique (5 h)

          - -
        • Module 2 : Approfondissement + Supervision
        • -

          Théorie 2 jours (12 h)
          -+ Stage pratique sur 50 cas supervisés (soit 50 h de pratique)
          -+ continuer le travail EFT sur soi (seul et/ou accompagné en EFT)
          -Après validation de ce niveau par le formateur : «Certificat de Praticien EFT»

          - -
        • Formation «Mener une session EFT»
        • -

          Formation sur 2 jours (12 h)

          - -
        • Module 3 : Perfectionnement + Supervision
        • -

          Théorie 2 jours (12 h)
          -+ Stage pratique sur 50 cas supervisés (soit 50 h de pratique)
          -+ continuer le travail EFT sur soi (seul et/ou accompagné en EFT) )
          -Après validation de ce niveau par le formateur «Certification Praticien EFT Avancé» - - -

        • Supervision de Groupe (12h) :
        • -

          Dans le cadre de la formation continue, participation à au moins une supervision de groupe annuelle.
          -validé par Attestation de présence fournie en fin de stage.

          -

          ---------->Calendrier des formations

          - diff --git a/pages/archives/formulaire-de-convention.php b/pages/archives/formulaire-de-convention.php deleted file mode 100644 index 15f1bd5..0000000 --- a/pages/archives/formulaire-de-convention.php +++ /dev/null @@ -1,33 +0,0 @@ -

          Formations présentées par Geneviève Gagos

          - -

          Formations professionnelles

          -

          Ces actions de formations s’inscrivent dans le champ de la formation professionnelle et continue, dans la catégorie des actions d’acquisition, d’entretien et de perfectionnement des connaissances, prévues par l’article L900-2 du code du travail.

          -Déclaration d'activité enregistrée sous le numéro 82 69 11036 69 - auprès du préfet de région de Rhône-Alpes"
          -Pour faire une demande de Convention de Formation merci de compléter le questionnaire ci-dessous.
          -Ce questionnaire devra être complété et signé par l'employeur et envoyer à l'organisme de formation afin qu'une convention de formation soit établie dans les meilleurs délais. -

          -
          - - - - - - - - - - -\n\ + ${1}\n\ + \n\ +snippet th\n\ + \n\ +snippet th.\n\ + \n\ +snippet th#\n\ + \n\ +snippet th+\n\ + \n\ + th+${2}\n\ +snippet thead\n\ + \n\ + ${1}\n\ + \n\ +snippet time\n\ + \n\ +snippet title\n\ + ${1:`substitute(Filename('', 'Page Title'), '^.', '\\u&', '')`}\n\ +snippet tr\n\ + \n\ + ${1}\n\ + \n\ +snippet tr+\n\ + \n\ + \n\ + td+${2}\n\ + \n\ +snippet track\n\ + ${5}${6}\n\ +snippet ul\n\ +
            \n\ + ${1}\n\ +
          \n\ +snippet ul.\n\ +
            \n\ + ${2}\n\ +
          \n\ +snippet ul#\n\ +
            \n\ + ${2}\n\ +
          \n\ +snippet ul+\n\ +
            \n\ +
          • ${1}
          • \n\ + li+${2}\n\ +
          \n\ +snippet var\n\ + ${1}\n\ +snippet video\n\ + ${8}\n\ +snippet wbr\n\ + ${1}\n\ +"; +exports.scope = "html"; + +}); diff --git a/public/ace_editor/snippets/html_completions.js b/public/ace_editor/snippets/html_completions.js new file mode 100755 index 0000000..25c308a --- /dev/null +++ b/public/ace_editor/snippets/html_completions.js @@ -0,0 +1,7 @@ +ace.define('ace/snippets/html_completions', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.snippetText = ""; +exports.scope = "html_completions"; + +}); diff --git a/public/ace_editor/snippets/html_ruby.js b/public/ace_editor/snippets/html_ruby.js new file mode 100755 index 0000000..8e0e753 --- /dev/null +++ b/public/ace_editor/snippets/html_ruby.js @@ -0,0 +1,7 @@ +ace.define('ace/snippets/html_ruby', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.snippetText = ""; +exports.scope = "html_ruby"; + +}); diff --git a/public/ace_editor/snippets/ini.js b/public/ace_editor/snippets/ini.js new file mode 100755 index 0000000..dea4a94 --- /dev/null +++ b/public/ace_editor/snippets/ini.js @@ -0,0 +1,7 @@ +ace.define('ace/snippets/ini', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.snippetText = ""; +exports.scope = "ini"; + +}); diff --git a/public/ace_editor/snippets/jack.js b/public/ace_editor/snippets/jack.js new file mode 100755 index 0000000..d445780 --- /dev/null +++ b/public/ace_editor/snippets/jack.js @@ -0,0 +1,7 @@ +ace.define('ace/snippets/jack', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.snippetText = ""; +exports.scope = "jack"; + +}); diff --git a/public/ace_editor/snippets/jade.js b/public/ace_editor/snippets/jade.js new file mode 100755 index 0000000..964ddf4 --- /dev/null +++ b/public/ace_editor/snippets/jade.js @@ -0,0 +1,7 @@ +ace.define('ace/snippets/jade', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.snippetText = ""; +exports.scope = "jade"; + +}); diff --git a/public/ace_editor/snippets/java.js b/public/ace_editor/snippets/java.js new file mode 100755 index 0000000..45e29f8 --- /dev/null +++ b/public/ace_editor/snippets/java.js @@ -0,0 +1,247 @@ +ace.define('ace/snippets/java', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.snippetText = "## Access Modifiers\n\ +snippet po\n\ + protected\n\ +snippet pu\n\ + public\n\ +snippet pr\n\ + private\n\ +##\n\ +## Annotations\n\ +snippet before\n\ + @Before\n\ + static void ${1:intercept}(${2:args}) { ${3} }\n\ +snippet mm\n\ + @ManyToMany\n\ + ${1}\n\ +snippet mo\n\ + @ManyToOne\n\ + ${1}\n\ +snippet om\n\ + @OneToMany${1:(cascade=CascadeType.ALL)}\n\ + ${2}\n\ +snippet oo\n\ + @OneToOne\n\ + ${1}\n\ +##\n\ +## Basic Java packages and import\n\ +snippet im\n\ + import\n\ +snippet j.b\n\ + java.beans.\n\ +snippet j.i\n\ + java.io.\n\ +snippet j.m\n\ + java.math.\n\ +snippet j.n\n\ + java.net.\n\ +snippet j.u\n\ + java.util.\n\ +##\n\ +## Class\n\ +snippet cl\n\ + class ${1:`Filename(\"\", \"untitled\")`} ${2}\n\ +snippet in\n\ + interface ${1:`Filename(\"\", \"untitled\")`} ${2:extends Parent}${3}\n\ +snippet tc\n\ + public class ${1:`Filename()`} extends ${2:TestCase}\n\ +##\n\ +## Class Enhancements\n\ +snippet ext\n\ + extends \n\ +snippet imp\n\ + implements\n\ +##\n\ +## Comments\n\ +snippet /*\n\ + /*\n\ + * ${1}\n\ + */\n\ +##\n\ +## Constants\n\ +snippet co\n\ + static public final ${1:String} ${2:var} = ${3};${4}\n\ +snippet cos\n\ + static public final String ${1:var} = \"${2}\";${3}\n\ +##\n\ +## Control Statements\n\ +snippet case\n\ + case ${1}:\n\ + ${2}\n\ +snippet def\n\ + default:\n\ + ${2}\n\ +snippet el\n\ + else\n\ +snippet elif\n\ + else if (${1}) ${2}\n\ +snippet if\n\ + if (${1}) ${2}\n\ +snippet sw\n\ + switch (${1}) {\n\ + ${2}\n\ + }\n\ +##\n\ +## Create a Method\n\ +snippet m\n\ + ${1:void} ${2:method}(${3}) ${4:throws }${5}\n\ +##\n\ +## Create a Variable\n\ +snippet v\n\ + ${1:String} ${2:var}${3: = null}${4};${5}\n\ +##\n\ +## Enhancements to Methods, variables, classes, etc.\n\ +snippet ab\n\ + abstract\n\ +snippet fi\n\ + final\n\ +snippet st\n\ + static\n\ +snippet sy\n\ + synchronized\n\ +##\n\ +## Error Methods\n\ +snippet err\n\ + System.err.print(\"${1:Message}\");\n\ +snippet errf\n\ + System.err.printf(\"${1:Message}\", ${2:exception});\n\ +snippet errln\n\ + System.err.println(\"${1:Message}\");\n\ +##\n\ +## Exception Handling\n\ +snippet as\n\ + assert ${1:test} : \"${2:Failure message}\";${3}\n\ +snippet ca\n\ + catch(${1:Exception} ${2:e}) ${3}\n\ +snippet thr\n\ + throw\n\ +snippet ths\n\ + throws\n\ +snippet try\n\ + try {\n\ + ${3}\n\ + } catch(${1:Exception} ${2:e}) {\n\ + }\n\ +snippet tryf\n\ + try {\n\ + ${3}\n\ + } catch(${1:Exception} ${2:e}) {\n\ + } finally {\n\ + }\n\ +##\n\ +## Find Methods\n\ +snippet findall\n\ + List<${1:listName}> ${2:items} = ${1}.findAll();${3}\n\ +snippet findbyid\n\ + ${1:var} ${2:item} = ${1}.findById(${3});${4}\n\ +##\n\ +## Javadocs\n\ +snippet /**\n\ + /**\n\ + * ${1}\n\ + */\n\ +snippet @au\n\ + @author `system(\"grep \\`id -un\\` /etc/passwd | cut -d \\\":\\\" -f5 | cut -d \\\",\\\" -f1\")`\n\ +snippet @br\n\ + @brief ${1:Description}\n\ +snippet @fi\n\ + @file ${1:`Filename()`}.java\n\ +snippet @pa\n\ + @param ${1:param}\n\ +snippet @re\n\ + @return ${1:param}\n\ +##\n\ +## Logger Methods\n\ +snippet debug\n\ + Logger.debug(${1:param});${2}\n\ +snippet error\n\ + Logger.error(${1:param});${2}\n\ +snippet info\n\ + Logger.info(${1:param});${2}\n\ +snippet warn\n\ + Logger.warn(${1:param});${2}\n\ +##\n\ +## Loops\n\ +snippet enfor\n\ + for (${1} : ${2}) ${3}\n\ +snippet for\n\ + for (${1}; ${2}; ${3}) ${4}\n\ +snippet wh\n\ + while (${1}) ${2}\n\ +##\n\ +## Main method\n\ +snippet main\n\ + public static void main (String[] args) {\n\ + ${1:/* code */}\n\ + }\n\ +##\n\ +## Print Methods\n\ +snippet print\n\ + System.out.print(\"${1:Message}\");\n\ +snippet printf\n\ + System.out.printf(\"${1:Message}\", ${2:args});\n\ +snippet println\n\ + System.out.println(${1});\n\ +##\n\ +## Render Methods\n\ +snippet ren\n\ + render(${1:param});${2}\n\ +snippet rena\n\ + renderArgs.put(\"${1}\", ${2});${3}\n\ +snippet renb\n\ + renderBinary(${1:param});${2}\n\ +snippet renj\n\ + renderJSON(${1:param});${2}\n\ +snippet renx\n\ + renderXml(${1:param});${2}\n\ +##\n\ +## Setter and Getter Methods\n\ +snippet set\n\ + ${1:public} void set${3:}(${2:String} ${4:}){\n\ + this.$4 = $4;\n\ + }\n\ +snippet get\n\ + ${1:public} ${2:String} get${3:}(){\n\ + return this.${4:};\n\ + }\n\ +##\n\ +## Terminate Methods or Loops\n\ +snippet re\n\ + return\n\ +snippet br\n\ + break;\n\ +##\n\ +## Test Methods\n\ +snippet t\n\ + public void test${1:Name}() throws Exception {\n\ + ${2}\n\ + }\n\ +snippet test\n\ + @Test\n\ + public void test${1:Name}() throws Exception {\n\ + ${2}\n\ + }\n\ +##\n\ +## Utils\n\ +snippet Sc\n\ + Scanner\n\ +##\n\ +## Miscellaneous\n\ +snippet action\n\ + public static void ${1:index}(${2:args}) { ${3} }\n\ +snippet rnf\n\ + notFound(${1:param});${2}\n\ +snippet rnfin\n\ + notFoundIfNull(${1:param});${2}\n\ +snippet rr\n\ + redirect(${1:param});${2}\n\ +snippet ru\n\ + unauthorized(${1:param});${2}\n\ +snippet unless\n\ + (unless=${1:param});${2}\n\ +"; +exports.scope = "java"; + +}); diff --git a/public/ace_editor/snippets/javascript.js b/public/ace_editor/snippets/javascript.js new file mode 100755 index 0000000..7e2aa39 --- /dev/null +++ b/public/ace_editor/snippets/javascript.js @@ -0,0 +1,202 @@ +ace.define('ace/snippets/javascript', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.snippetText = "# Prototype\n\ +snippet proto\n\ + ${1:class_name}.prototype.${2:method_name} = function(${3:first_argument}) {\n\ + ${4:// body...}\n\ + };\n\ +# Function\n\ +snippet fun\n\ + function ${1?:function_name}(${2:argument}) {\n\ + ${3:// body...}\n\ + }\n\ +# Anonymous Function\n\ +regex /((=)\\s*|(:)\\s*|(\\()|\\b)/f/(\\))?/\n\ +snippet f\n\ + function${M1?: ${1:functionName}}($2) {\n\ + ${0:$TM_SELECTED_TEXT}\n\ + }${M2?;}${M3?,}${M4?)}\n\ +# Immediate function\n\ +trigger \\(?f\\(\n\ +endTrigger \\)?\n\ +snippet f(\n\ + (function(${1}) {\n\ + ${0:${TM_SELECTED_TEXT:/* code */}}\n\ + }(${1}));\n\ +# if\n\ +snippet if\n\ + if (${1:true}) {\n\ + ${0}\n\ + }\n\ +# if ... else\n\ +snippet ife\n\ + if (${1:true}) {\n\ + ${2}\n\ + } else {\n\ + ${0}\n\ + }\n\ +# tertiary conditional\n\ +snippet ter\n\ + ${1:/* condition */} ? ${2:a} : ${3:b}\n\ +# switch\n\ +snippet switch\n\ + switch (${1:expression}) {\n\ + case '${3:case}':\n\ + ${4:// code}\n\ + break;\n\ + ${5}\n\ + default:\n\ + ${2:// code}\n\ + }\n\ +# case\n\ +snippet case\n\ + case '${1:case}':\n\ + ${2:// code}\n\ + break;\n\ + ${3}\n\ +\n\ +# while (...) {...}\n\ +snippet wh\n\ + while (${1:/* condition */}) {\n\ + ${0:/* code */}\n\ + }\n\ +# try\n\ +snippet try\n\ + try {\n\ + ${0:/* code */}\n\ + } catch (e) {}\n\ +# do...while\n\ +snippet do\n\ + do {\n\ + ${2:/* code */}\n\ + } while (${1:/* condition */});\n\ +# Object Method\n\ +snippet :f\n\ +regex /([,{[])|^\\s*/:f/\n\ + ${1:method_name}: function(${2:attribute}) {\n\ + ${0}\n\ + }${3:,}\n\ +# setTimeout function\n\ +snippet setTimeout\n\ +regex /\\b/st|timeout|setTimeo?u?t?/\n\ + setTimeout(function() {${3:$TM_SELECTED_TEXT}}, ${1:10});\n\ +# Get Elements\n\ +snippet gett\n\ + getElementsBy${1:TagName}('${2}')${3}\n\ +# Get Element\n\ +snippet get\n\ + getElementBy${1:Id}('${2}')${3}\n\ +# console.log (Firebug)\n\ +snippet cl\n\ + console.log(${1});\n\ +# return\n\ +snippet ret\n\ + return ${1:result}\n\ +# for (property in object ) { ... }\n\ +snippet fori\n\ + for (var ${1:prop} in ${2:Things}) {\n\ + ${0:$2[$1]}\n\ + }\n\ +# hasOwnProperty\n\ +snippet has\n\ + hasOwnProperty(${1})\n\ +# docstring\n\ +snippet /**\n\ + /**\n\ + * ${1:description}\n\ + *\n\ + */\n\ +snippet @par\n\ +regex /^\\s*\\*\\s*/@(para?m?)?/\n\ + @param {${1:type}} ${2:name} ${3:description}\n\ +snippet @ret\n\ + @return {${1:type}} ${2:description}\n\ +# JSON.parse\n\ +snippet jsonp\n\ + JSON.parse(${1:jstr});\n\ +# JSON.stringify\n\ +snippet jsons\n\ + JSON.stringify(${1:object});\n\ +# self-defining function\n\ +snippet sdf\n\ + var ${1:function_name} = function(${2:argument}) {\n\ + ${3:// initial code ...}\n\ +\n\ + $1 = function($2) {\n\ + ${4:// main code}\n\ + };\n\ + }\n\ +# singleton\n\ +snippet sing\n\ + function ${1:Singleton} (${2:argument}) {\n\ + // the cached instance\n\ + var instance;\n\ +\n\ + // rewrite the constructor\n\ + $1 = function $1($2) {\n\ + return instance;\n\ + };\n\ + \n\ + // carry over the prototype properties\n\ + $1.prototype = this;\n\ +\n\ + // the instance\n\ + instance = new $1();\n\ +\n\ + // reset the constructor pointer\n\ + instance.constructor = $1;\n\ +\n\ + ${3:// code ...}\n\ +\n\ + return instance;\n\ + }\n\ +# class\n\ +snippet class\n\ +regex /^\\s*/clas{0,2}/\n\ + var ${1:class} = function(${20}) {\n\ + $40$0\n\ + };\n\ + \n\ + (function() {\n\ + ${60:this.prop = \"\"}\n\ + }).call(${1:class}.prototype);\n\ + \n\ + exports.${1:class} = ${1:class};\n\ +# \n\ +snippet for-\n\ + for (var ${1:i} = ${2:Things}.length; ${1:i}--; ) {\n\ + ${0:${2:Things}[${1:i}];}\n\ + }\n\ +# for (...) {...}\n\ +snippet for\n\ + for (var ${1:i} = 0; $1 < ${2:Things}.length; $1++) {\n\ + ${3:$2[$1]}$0\n\ + }\n\ +# for (...) {...} (Improved Native For-Loop)\n\ +snippet forr\n\ + for (var ${1:i} = ${2:Things}.length - 1; $1 >= 0; $1--) {\n\ + ${3:$2[$1]}$0\n\ + }\n\ +\n\ +\n\ +#modules\n\ +snippet def\n\ + ace.define(function(require, exports, module) {\n\ + \"use strict\";\n\ + var ${1/.*\\///} = require(\"${1}\");\n\ + \n\ + $TM_SELECTED_TEXT\n\ + });\n\ +snippet req\n\ +guard ^\\s*\n\ + var ${1/.*\\///} = require(\"${1}\");\n\ + $0\n\ +snippet requ\n\ +guard ^\\s*\n\ + var ${1/.*\\/(.)/\\u$1/} = require(\"${1}\").${1/.*\\/(.)/\\u$1/};\n\ + $0\n\ +"; +exports.scope = "javascript"; + +}); diff --git a/public/ace_editor/snippets/json.js b/public/ace_editor/snippets/json.js new file mode 100755 index 0000000..838cfe3 --- /dev/null +++ b/public/ace_editor/snippets/json.js @@ -0,0 +1,7 @@ +ace.define('ace/snippets/json', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.snippetText = ""; +exports.scope = "json"; + +}); diff --git a/public/ace_editor/snippets/jsoniq.js b/public/ace_editor/snippets/jsoniq.js new file mode 100755 index 0000000..39ed48a --- /dev/null +++ b/public/ace_editor/snippets/jsoniq.js @@ -0,0 +1,68 @@ +ace.define('ace/snippets/jsoniq', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.snippetText = "snippet for\n\ + for $${1:item} in ${2:expr}\n\ +snippet return\n\ + return ${1:expr}\n\ +snippet import\n\ + import module namespace ${1:ns} = \"${2:http://www.example.com/}\";\n\ +snippet some\n\ + some $${1:varname} in ${2:expr} satisfies ${3:expr}\n\ +snippet every\n\ + every $${1:varname} in ${2:expr} satisfies ${3:expr}\n\ +snippet if\n\ + if(${1:true}) then ${2:expr} else ${3:true}\n\ +snippet switch\n\ + switch(${1:\"foo\"})\n\ + case ${2:\"foo\"}\n\ + return ${3:true}\n\ + default return ${4:false}\n\ +snippet try\n\ + try { ${1:expr} } catch ${2:*} { ${3:expr} }\n\ +snippet tumbling\n\ + for tumbling window $${1:varname} in ${2:expr}\n\ + start at $${3:start} when ${4:expr}\n\ + end at $${5:end} when ${6:expr}\n\ + return ${7:expr}\n\ +snippet sliding\n\ + for sliding window $${1:varname} in ${2:expr}\n\ + start at $${3:start} when ${4:expr}\n\ + end at $${5:end} when ${6:expr}\n\ + return ${7:expr}\n\ +snippet let\n\ + let $${1:varname} := ${2:expr}\n\ +snippet group\n\ + group by $${1:varname} := ${2:expr}\n\ +snippet order\n\ + order by ${1:expr} ${2:descending}\n\ +snippet stable\n\ + stable order by ${1:expr}\n\ +snippet count\n\ + count $${1:varname}\n\ +snippet ordered\n\ + ordered { ${1:expr} }\n\ +snippet unordered\n\ + unordered { ${1:expr} }\n\ +snippet treat \n\ + treat as ${1:expr}\n\ +snippet castable\n\ + castable as ${1:atomicType}\n\ +snippet cast\n\ + cast as ${1:atomicType}\n\ +snippet typeswitch\n\ + typeswitch(${1:expr})\n\ + case ${2:type} return ${3:expr}\n\ + default return ${4:expr}\n\ +snippet var\n\ + declare variable $${1:varname} := ${2:expr};\n\ +snippet fn\n\ + declare function ${1:ns}:${2:name}(){\n\ + ${3:expr}\n\ + };\n\ +snippet module\n\ + module namespace ${1:ns} = \"${2:http://www.example.com}\";\n\ +"; +exports.scope = "jsoniq"; + +}); diff --git a/public/ace_editor/snippets/jsp.js b/public/ace_editor/snippets/jsp.js new file mode 100755 index 0000000..ef35691 --- /dev/null +++ b/public/ace_editor/snippets/jsp.js @@ -0,0 +1,106 @@ +ace.define('ace/snippets/jsp', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.snippetText = "snippet @page\n\ + <%@page contentType=\"text/html\" pageEncoding=\"UTF-8\"%>\n\ +snippet jstl\n\ + <%@ taglib uri=\"http://java.sun.com/jsp/jstl/core\" prefix=\"c\" %>\n\ + <%@ taglib uri=\"http://java.sun.com/jsp/jstl/functions\" prefix=\"fn\" %>\n\ +snippet jstl:c\n\ + <%@ taglib uri=\"http://java.sun.com/jsp/jstl/core\" prefix=\"c\" %>\n\ +snippet jstl:fn\n\ + <%@ taglib uri=\"http://java.sun.com/jsp/jstl/functions\" prefix=\"fn\" %>\n\ +snippet cpath\n\ + ${pageContext.request.contextPath}\n\ +snippet cout\n\ + \n\ +snippet cset\n\ + \n\ +snippet cremove\n\ + \n\ +snippet ccatch\n\ + \n\ +snippet cif\n\ + \n\ + ${2}\n\ + \n\ +snippet cchoose\n\ + \n\ + ${1}\n\ + \n\ +snippet cwhen\n\ + \n\ + ${2}\n\ + \n\ +snippet cother\n\ + \n\ + ${1}\n\ + \n\ +snippet cfore\n\ + \n\ + ${4:}\n\ + \n\ +snippet cfort\n\ + ${2:item1,item2,item3}\n\ + \n\ + ${5:}\n\ + \n\ +snippet cparam\n\ + \n\ +snippet cparam+\n\ + \n\ + cparam+${3}\n\ +snippet cimport\n\ + \n\ +snippet cimport+\n\ + \n\ + \n\ + cparam+${4}\n\ + \n\ +snippet curl\n\ + \n\ + ${3}\n\ +snippet curl+\n\ + \n\ + \n\ + cparam+${6}\n\ + \n\ + ${3}\n\ +snippet credirect\n\ + \n\ +snippet contains\n\ + ${fn:contains(${1:string}, ${2:substr})}\n\ +snippet contains:i\n\ + ${fn:containsIgnoreCase(${1:string}, ${2:substr})}\n\ +snippet endswith\n\ + ${fn:endsWith(${1:string}, ${2:suffix})}\n\ +snippet escape\n\ + ${fn:escapeXml(${1:string})}\n\ +snippet indexof\n\ + ${fn:indexOf(${1:string}, ${2:substr})}\n\ +snippet join\n\ + ${fn:join(${1:collection}, ${2:delims})}\n\ +snippet length\n\ + ${fn:length(${1:collection_or_string})}\n\ +snippet replace\n\ + ${fn:replace(${1:string}, ${2:substr}, ${3:replace})}\n\ +snippet split\n\ + ${fn:split(${1:string}, ${2:delims})}\n\ +snippet startswith\n\ + ${fn:startsWith(${1:string}, ${2:prefix})}\n\ +snippet substr\n\ + ${fn:substring(${1:string}, ${2:begin}, ${3:end})}\n\ +snippet substr:a\n\ + ${fn:substringAfter(${1:string}, ${2:substr})}\n\ +snippet substr:b\n\ + ${fn:substringBefore(${1:string}, ${2:substr})}\n\ +snippet lc\n\ + ${fn:toLowerCase(${1:string})}\n\ +snippet uc\n\ + ${fn:toUpperCase(${1:string})}\n\ +snippet trim\n\ + ${fn:trim(${1:string})}\n\ +"; +exports.scope = "jsp"; + +}); diff --git a/public/ace_editor/snippets/jsx.js b/public/ace_editor/snippets/jsx.js new file mode 100755 index 0000000..2a1194a --- /dev/null +++ b/public/ace_editor/snippets/jsx.js @@ -0,0 +1,7 @@ +ace.define('ace/snippets/jsx', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.snippetText = ""; +exports.scope = "jsx"; + +}); diff --git a/public/ace_editor/snippets/julia.js b/public/ace_editor/snippets/julia.js new file mode 100755 index 0000000..90127b8 --- /dev/null +++ b/public/ace_editor/snippets/julia.js @@ -0,0 +1,7 @@ +ace.define('ace/snippets/julia', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.snippetText = ""; +exports.scope = "julia"; + +}); diff --git a/public/ace_editor/snippets/latex.js b/public/ace_editor/snippets/latex.js new file mode 100755 index 0000000..4544311 --- /dev/null +++ b/public/ace_editor/snippets/latex.js @@ -0,0 +1,7 @@ +ace.define('ace/snippets/latex', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.snippetText = ""; +exports.scope = "latex"; + +}); diff --git a/public/ace_editor/snippets/less.js b/public/ace_editor/snippets/less.js new file mode 100755 index 0000000..d781e4f --- /dev/null +++ b/public/ace_editor/snippets/less.js @@ -0,0 +1,7 @@ +ace.define('ace/snippets/less', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.snippetText = ""; +exports.scope = "less"; + +}); diff --git a/public/ace_editor/snippets/liquid.js b/public/ace_editor/snippets/liquid.js new file mode 100755 index 0000000..d65e8de --- /dev/null +++ b/public/ace_editor/snippets/liquid.js @@ -0,0 +1,7 @@ +ace.define('ace/snippets/liquid', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.snippetText = ""; +exports.scope = "liquid"; + +}); diff --git a/public/ace_editor/snippets/lisp.js b/public/ace_editor/snippets/lisp.js new file mode 100755 index 0000000..21aa795 --- /dev/null +++ b/public/ace_editor/snippets/lisp.js @@ -0,0 +1,7 @@ +ace.define('ace/snippets/lisp', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.snippetText = ""; +exports.scope = "lisp"; + +}); diff --git a/public/ace_editor/snippets/livescript.js b/public/ace_editor/snippets/livescript.js new file mode 100755 index 0000000..3aee2ef --- /dev/null +++ b/public/ace_editor/snippets/livescript.js @@ -0,0 +1,7 @@ +ace.define('ace/snippets/livescript', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.snippetText = ""; +exports.scope = "livescript"; + +}); diff --git a/public/ace_editor/snippets/logiql.js b/public/ace_editor/snippets/logiql.js new file mode 100755 index 0000000..753fd4f --- /dev/null +++ b/public/ace_editor/snippets/logiql.js @@ -0,0 +1,7 @@ +ace.define('ace/snippets/logiql', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.snippetText = ""; +exports.scope = "logiql"; + +}); diff --git a/public/ace_editor/snippets/lsl.js b/public/ace_editor/snippets/lsl.js new file mode 100755 index 0000000..46eebf5 --- /dev/null +++ b/public/ace_editor/snippets/lsl.js @@ -0,0 +1,1041 @@ +ace.define('ace/snippets/lsl', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.snippetText = "snippet @\n\ + @${1:label};\n\ +snippet CAMERA_ACTIVE\n\ + CAMERA_ACTIVE, ${1:integer isActive}, $0\n\ +snippet CAMERA_BEHINDNESS_ANGLE\n\ + CAMERA_BEHINDNESS_ANGLE, ${1:float degrees}, $0\n\ +snippet CAMERA_BEHINDNESS_LAG\n\ + CAMERA_BEHINDNESS_LAG, ${1:float seconds}, $0\n\ +snippet CAMERA_DISTANCE\n\ + CAMERA_DISTANCE, ${1:float meters}, $0\n\ +snippet CAMERA_FOCUS\n\ + CAMERA_FOCUS, ${1:vector position}, $0\n\ +snippet CAMERA_FOCUS_LAG\n\ + CAMERA_FOCUS_LAG, ${1:float seconds}, $0\n\ +snippet CAMERA_FOCUS_LOCKED\n\ + CAMERA_FOCUS_LOCKED, ${1:integer isLocked}, $0\n\ +snippet CAMERA_FOCUS_OFFSET\n\ + CAMERA_FOCUS_OFFSET, ${1:vector meters}, $0\n\ +snippet CAMERA_FOCUS_THRESHOLD\n\ + CAMERA_FOCUS_THRESHOLD, ${1:float meters}, $0\n\ +snippet CAMERA_PITCH\n\ + CAMERA_PITCH, ${1:float degrees}, $0\n\ +snippet CAMERA_POSITION\n\ + CAMERA_POSITION, ${1:vector position}, $0\n\ +snippet CAMERA_POSITION_LAG\n\ + CAMERA_POSITION_LAG, ${1:float seconds}, $0\n\ +snippet CAMERA_POSITION_LOCKED\n\ + CAMERA_POSITION_LOCKED, ${1:integer isLocked}, $0\n\ +snippet CAMERA_POSITION_THRESHOLD\n\ + CAMERA_POSITION_THRESHOLD, ${1:float meters}, $0\n\ +snippet CHARACTER_AVOIDANCE_MODE\n\ + CHARACTER_AVOIDANCE_MODE, ${1:integer flags}, $0\n\ +snippet CHARACTER_DESIRED_SPEED\n\ + CHARACTER_DESIRED_SPEED, ${1:float speed}, $0\n\ +snippet CHARACTER_DESIRED_TURN_SPEED\n\ + CHARACTER_DESIRED_TURN_SPEED, ${1:float speed}, $0\n\ +snippet CHARACTER_LENGTH\n\ + CHARACTER_LENGTH, ${1:float length}, $0\n\ +snippet CHARACTER_MAX_TURN_RADIUS\n\ + CHARACTER_MAX_TURN_RADIUS, ${1:float radius}, $0\n\ +snippet CHARACTER_ORIENTATION\n\ + CHARACTER_ORIENTATION, ${1:integer orientation}, $0\n\ +snippet CHARACTER_RADIUS\n\ + CHARACTER_RADIUS, ${1:float radius}, $0\n\ +snippet CHARACTER_STAY_WITHIN_PARCEL\n\ + CHARACTER_STAY_WITHIN_PARCEL, ${1:boolean stay}, $0\n\ +snippet CHARACTER_TYPE\n\ + CHARACTER_TYPE, ${1:integer type}, $0\n\ +snippet HTTP_BODY_MAXLENGTH\n\ + HTTP_BODY_MAXLENGTH, ${1:integer length}, $0\n\ +snippet HTTP_CUSTOM_HEADER\n\ + HTTP_CUSTOM_HEADER, ${1:string name}, ${2:string value}, $0\n\ +snippet HTTP_METHOD\n\ + HTTP_METHOD, ${1:string method}, $0\n\ +snippet HTTP_MIMETYPE\n\ + HTTP_MIMETYPE, ${1:string mimeType}, $0\n\ +snippet HTTP_PRAGMA_NO_CACHE\n\ + HTTP_PRAGMA_NO_CACHE, ${1:integer send_header}, $0\n\ +snippet HTTP_VERBOSE_THROTTLE\n\ + HTTP_VERBOSE_THROTTLE, ${1:integer noisy}, $0\n\ +snippet HTTP_VERIFY_CERT\n\ + HTTP_VERIFY_CERT, ${1:integer verify}, $0\n\ +snippet RC_DATA_FLAGS\n\ + RC_DATA_FLAGS, ${1:integer flags}, $0\n\ +snippet RC_DETECT_PHANTOM\n\ + RC_DETECT_PHANTOM, ${1:integer dectedPhantom}, $0\n\ +snippet RC_MAX_HITS\n\ + RC_MAX_HITS, ${1:integer maxHits}, $0\n\ +snippet RC_REJECT_TYPES\n\ + RC_REJECT_TYPES, ${1:integer filterMask}, $0\n\ +snippet at_rot_target\n\ + at_rot_target(${1:integer handle}, ${2:rotation targetrot}, ${3:rotation ourrot})\n\ + {\n\ + $0\n\ + }\n\ +snippet at_target\n\ + at_target(${1:integer tnum}, ${2:vector targetpos}, ${3:vector ourpos})\n\ + {\n\ + $0\n\ + }\n\ +snippet attach\n\ + attach(${1:key id})\n\ + {\n\ + $0\n\ + }\n\ +snippet changed\n\ + changed(${1:integer change})\n\ + {\n\ + $0\n\ + }\n\ +snippet collision\n\ + collision(${1:integer index})\n\ + {\n\ + $0\n\ + }\n\ +snippet collision_end\n\ + collision_end(${1:integer index})\n\ + {\n\ + $0\n\ + }\n\ +snippet collision_start\n\ + collision_start(${1:integer index})\n\ + {\n\ + $0\n\ + }\n\ +snippet control\n\ + control(${1:key id}, ${2:integer level}, ${3:integer edge})\n\ + {\n\ + $0\n\ + }\n\ +snippet dataserver\n\ + dataserver(${1:key query_id}, ${2:string data})\n\ + {\n\ + $0\n\ + }\n\ +snippet do\n\ + do\n\ + {\n\ + $0\n\ + }\n\ + while (${1:condition});\n\ +snippet else\n\ + else\n\ + {\n\ + $0\n\ + }\n\ +snippet email\n\ + email(${1:string time}, ${2:string address}, ${3:string subject}, ${4:string message}, ${5:integer num_left})\n\ + {\n\ + $0\n\ + }\n\ +snippet for\n\ + for (${1:start}; ${3:condition}; ${3:step})\n\ + {\n\ + $0\n\ + }\n\ +snippet http_request\n\ + http_request(${1:key request_id}, ${2:string method}, ${3:string body})\n\ + {\n\ + $0\n\ + }\n\ +snippet http_response\n\ + http_response(${1:key request_id}, ${2:integer status}, ${3:list metadata}, ${4:string body})\n\ + {\n\ + $0\n\ + }\n\ +snippet if\n\ + if (${1:condition})\n\ + {\n\ + $0\n\ + }\n\ +snippet jump\n\ + jump ${1:label};\n\ +snippet land_collision\n\ + land_collision(${1:vector pos})\n\ + {\n\ + $0\n\ + }\n\ +snippet land_collision_end\n\ + land_collision_end(${1:vector pos})\n\ + {\n\ + $0\n\ + }\n\ +snippet land_collision_start\n\ + land_collision_start(${1:vector pos})\n\ + {\n\ + $0\n\ + }\n\ +snippet link_message\n\ + link_message(${1:integer sender_num}, ${2:integer num}, ${3:string str}, ${4:key id})\n\ + {\n\ + $0\n\ + }\n\ +snippet listen\n\ + listen(${1:integer channel}, ${2:string name}, ${3:key id}, ${4:string message})\n\ + {\n\ + $0\n\ + }\n\ +snippet llAbs\n\ + llAbs(${1:integer val})\n\ +snippet llAcos\n\ + llAcos(${1:float val})\n\ +snippet llAddToLandBanList\n\ + llAddToLandBanList(${1:key agent}, ${2:float hours});\n\ +snippet llAddToLandPassList\n\ + llAddToLandPassList(${1:key agent}, ${2:float hours});\n\ +snippet llAdjustSoundVolume\n\ + llAdjustSoundVolume(${1:float volume});\n\ +snippet llAllowInventoryDrop\n\ + llAllowInventoryDrop(${1:integer add});\n\ +snippet llAngleBetween\n\ + llAngleBetween(${1:rotation a}, ${2:rotation b})\n\ +snippet llApplyImpulse\n\ + llApplyImpulse(${1:vector force}, ${2:integer local});\n\ +snippet llApplyRotationalImpulse\n\ + llApplyRotationalImpulse(${1:vector force}, ${2:integer local});\n\ +snippet llAsin\n\ + llAsin(${1:float val})\n\ +snippet llAtan2\n\ + llAtan2(${1:float y}, ${2:float x})\n\ +snippet llAttachToAvatar\n\ + llAttachToAvatar(${1:integer attach_point});\n\ +snippet llAttachToAvatarTemp\n\ + llAttachToAvatarTemp(${1:integer attach_point});\n\ +snippet llAvatarOnLinkSitTarget\n\ + llAvatarOnLinkSitTarget(${1:integer link})\n\ +snippet llAvatarOnSitTarget\n\ + llAvatarOnSitTarget()\n\ +snippet llAxes2Rot\n\ + llAxes2Rot(${1:vector fwd}, ${2:vector left}, ${3:vector up})\n\ +snippet llAxisAngle2Rot\n\ + llAxisAngle2Rot(${1:vector axis}, ${2:float angle})\n\ +snippet llBase64ToInteger\n\ + llBase64ToInteger(${1:string str})\n\ +snippet llBase64ToString\n\ + llBase64ToString(${1:string str})\n\ +snippet llBreakAllLinks\n\ + llBreakAllLinks();\n\ +snippet llBreakLink\n\ + llBreakLink(${1:integer link});\n\ +snippet llCastRay\n\ + llCastRay(${1:vector start}, ${2:vector end}, ${3:list options});\n\ +snippet llCeil\n\ + llCeil(${1:float val})\n\ +snippet llClearCameraParams\n\ + llClearCameraParams();\n\ +snippet llClearLinkMedia\n\ + llClearLinkMedia(${1:integer link}, ${2:integer face});\n\ +snippet llClearPrimMedia\n\ + llClearPrimMedia(${1:integer face});\n\ +snippet llCloseRemoteDataChannel\n\ + llCloseRemoteDataChannel(${1:key channel});\n\ +snippet llCollisionFilter\n\ + llCollisionFilter(${1:string name}, ${2:key id}, ${3:integer accept});\n\ +snippet llCollisionSound\n\ + llCollisionSound(${1:string impact_sound}, ${2:float impact_volume});\n\ +snippet llCos\n\ + llCos(${1:float theta})\n\ +snippet llCreateCharacter\n\ + llCreateCharacter(${1:list options});\n\ +snippet llCreateLink\n\ + llCreateLink(${1:key target}, ${2:integer parent});\n\ +snippet llCSV2List\n\ + llCSV2List(${1:string src})\n\ +snippet llDeleteCharacter\n\ + llDeleteCharacter();\n\ +snippet llDeleteSubList\n\ + llDeleteSubList(${1:list src}, ${2:integer start}, ${3:integer end})\n\ +snippet llDeleteSubString\n\ + llDeleteSubString(${1:string src}, ${2:integer start}, ${3:integer end})\n\ +snippet llDetachFromAvatar\n\ + llDetachFromAvatar();\n\ +snippet llDetectedGrab\n\ + llDetectedGrab(${1:integer number})\n\ +snippet llDetectedGroup\n\ + llDetectedGroup(${1:integer number})\n\ +snippet llDetectedKey\n\ + llDetectedKey(${1:integer number})\n\ +snippet llDetectedLinkNumber\n\ + llDetectedLinkNumber(${1:integer number})\n\ +snippet llDetectedName\n\ + llDetectedName(${1:integer number})\n\ +snippet llDetectedOwner\n\ + llDetectedOwner(${1:integer number})\n\ +snippet llDetectedPos\n\ + llDetectedPosl(${1:integer number})\n\ +snippet llDetectedRot\n\ + llDetectedRot(${1:integer number})\n\ +snippet llDetectedTouchBinormal\n\ + llDetectedTouchBinormal(${1:integer number})\n\ +snippet llDetectedTouchFace\n\ + llDetectedTouchFace(${1:integer number})\n\ +snippet llDetectedTouchNormal\n\ + llDetectedTouchNormal(${1:integer number})\n\ +snippet llDetectedTouchPos\n\ + llDetectedTouchPos(${1:integer number})\n\ +snippet llDetectedTouchST\n\ + llDetectedTouchST(${1:integer number})\n\ +snippet llDetectedTouchUV\n\ + llDetectedTouchUV(${1:integer number})\n\ +snippet llDetectedType\n\ + llDetectedType(${1:integer number})\n\ +snippet llDetectedVel\n\ + llDetectedVel(${1:integer number})\n\ +snippet llDialog\n\ + llDialog(${1:key agent}, ${2:string message}, ${3:list buttons}, ${4:integer channel});\n\ +snippet llDie\n\ + llDie();\n\ +snippet llDumpList2String\n\ + llDumpList2String(${1:list src}, ${2:string separator})\n\ +snippet llEdgeOfWorld\n\ + llEdgeOfWorld(${1:vector pos}, ${2:vector dir})\n\ +snippet llEjectFromLand\n\ + llEjectFromLand(${1:key agent});\n\ +snippet llEmail\n\ + llEmail(${1:string address}, ${2:string subject}, ${3:string message});\n\ +snippet llEscapeURL\n\ + llEscapeURL(${1:string url})\n\ +snippet llEuler2Rot\n\ + llEuler2Rot(${1:vector v})\n\ +snippet llExecCharacterCmd\n\ + llExecCharacterCmd(${1:integer command}, ${2:list options});\n\ +snippet llEvade\n\ + llEvade(${1:key target}, ${2:list options});\n\ +snippet llFabs\n\ + llFabs(${1:float val})\n\ +snippet llFleeFrom\n\ + llFleeFrom(${1:vector position}, ${2:float distance}, ${3:list options});\n\ +snippet llFloor\n\ + llFloor(${1:float val})\n\ +snippet llForceMouselook\n\ + llForceMouselook(${1:integer mouselook});\n\ +snippet llFrand\n\ + llFrand(${1:float mag})\n\ +snippet llGenerateKey\n\ + llGenerateKey()\n\ +snippet llGetAccel\n\ + llGetAccel()\n\ +snippet llGetAgentInfo\n\ + llGetAgentInfo(${1:key id})\n\ +snippet llGetAgentLanguage\n\ + llGetAgentLanguage(${1:key agent})\n\ +snippet llGetAgentList\n\ + llGetAgentList(${1:integer scope}, ${2:list options})\n\ +snippet llGetAgentSize\n\ + llGetAgentSize(${1:key agent})\n\ +snippet llGetAlpha\n\ + llGetAlpha(${1:integer face})\n\ +snippet llGetAndResetTime\n\ + llGetAndResetTime()\n\ +snippet llGetAnimation\n\ + llGetAnimation(${1:key id})\n\ +snippet llGetAnimationList\n\ + llGetAnimationList(${1:key agent})\n\ +snippet llGetAnimationOverride\n\ + llGetAnimationOverride(${1:string anim_state})\n\ +snippet llGetAttached\n\ + llGetAttached()\n\ +snippet llGetBoundingBox\n\ + llGetBoundingBox(${1:key object})\n\ +snippet llGetCameraPos\n\ + llGetCameraPos()\n\ +snippet llGetCameraRot\n\ + llGetCameraRot()\n\ +snippet llGetCenterOfMass\n\ + llGetCenterOfMass()\n\ +snippet llGetClosestNavPoint\n\ + llGetClosestNavPoint(${1:vector point}, ${2:list options})\n\ +snippet llGetColor\n\ + llGetColor(${1:integer face})\n\ +snippet llGetCreator\n\ + llGetCreator()\n\ +snippet llGetDate\n\ + llGetDate()\n\ +snippet llGetDisplayName\n\ + llGetDisplayName(${1:key id})\n\ +snippet llGetEnergy\n\ + llGetEnergy()\n\ +snippet llGetEnv\n\ + llGetEnv(${1:string name})\n\ +snippet llGetForce\n\ + llGetForce()\n\ +snippet llGetFreeMemory\n\ + llGetFreeMemory()\n\ +snippet llGetFreeURLs\n\ + llGetFreeURLs()\n\ +snippet llGetGeometricCenter\n\ + llGetGeometricCenter()\n\ +snippet llGetGMTclock\n\ + llGetGMTclock()\n\ +snippet llGetHTTPHeader\n\ + llGetHTTPHeader(${1:key request_id}, ${2:string header})\n\ +snippet llGetInventoryCreator\n\ + llGetInventoryCreator(${1:string item})\n\ +snippet llGetInventoryKey\n\ + llGetInventoryKey(${1:string name})\n\ +snippet llGetInventoryName\n\ + llGetInventoryName(${1:integer type}, ${2:integer number})\n\ +snippet llGetInventoryNumber\n\ + llGetInventoryNumber(${1:integer type})\n\ +snippet llGetInventoryPermMask\n\ + llGetInventoryPermMask(${1:string item}, ${2:integer mask})\n\ +snippet llGetInventoryType\n\ + llGetInventoryType(${1:string name})\n\ +snippet llGetKey\n\ + llGetKey()\n\ +snippet llGetLandOwnerAt\n\ + llGetLandOwnerAt(${1:vector pos})\n\ +snippet llGetLinkKey\n\ + llGetLinkKey(${1:integer link})\n\ +snippet llGetLinkMedia\n\ + llGetLinkMedia(${1:integer link}, ${2:integer face}, ${3:list params})\n\ +snippet llGetLinkName\n\ + llGetLinkName(${1:integer link})\n\ +snippet llGetLinkNumber\n\ + llGetLinkNumber()\n\ +snippet llGetLinkNumberOfSides\n\ + llGetLinkNumberOfSides(${1:integer link})\n\ +snippet llGetLinkPrimitiveParams\n\ + llGetLinkPrimitiveParams(${1:integer link}, ${2:list params})\n\ +snippet llGetListEntryType\n\ + llGetListEntryType(${1:list src}, ${2:integer index})\n\ +snippet llGetListLength\n\ + llGetListLength(${1:list src})\n\ +snippet llGetLocalPos\n\ + llGetLocalPos()\n\ +snippet llGetLocalRot\n\ + llGetLocalRot()\n\ +snippet llGetMass\n\ + llGetMass()\n\ +snippet llGetMassMKS\n\ + llGetMassMKS()\n\ +snippet llGetMaxScaleFactor\n\ + llGetMaxScaleFactor()\n\ +snippet llGetMemoryLimit\n\ + llGetMemoryLimit()\n\ +snippet llGetMinScaleFactor\n\ + llGetMinScaleFactor()\n\ +snippet llGetNextEmail\n\ + llGetNextEmail(${1:string address}, ${2:string subject});\n\ +snippet llGetNotecardLine\n\ + llGetNotecardLine(${1:string name}, ${2:integer line})\n\ +snippet llGetNumberOfNotecardLines\n\ + llGetNumberOfNotecardLines(${1:string name})\n\ +snippet llGetNumberOfPrims\n\ + llGetNumberOfPrims()\n\ +snippet llGetNumberOfSides\n\ + llGetNumberOfSides()\n\ +snippet llGetObjectDesc\n\ + llGetObjectDesc()\n\ +snippet llGetObjectDetails\n\ + llGetObjectDetails(${1:key id}, ${2:list params})\n\ +snippet llGetObjectMass\n\ + llGetObjectMass(${1:key id})\n\ +snippet llGetObjectName\n\ + llGetObjectName()\n\ +snippet llGetObjectPermMask\n\ + llGetObjectPermMask(${1:integer mask})\n\ +snippet llGetObjectPrimCount\n\ + llGetObjectPrimCount(${1:key prim})\n\ +snippet llGetOmega\n\ + llGetOmega()\n\ +snippet llGetOwner\n\ + llGetOwner()\n\ +snippet llGetOwnerKey\n\ + llGetOwnerKey(${1:key id})\n\ +snippet llGetParcelDetails\n\ + llGetParcelDetails(${1:vector pos}, ${2:list params})\n\ +snippet llGetParcelFlags\n\ + llGetParcelFlags(${1:vector pos})\n\ +snippet llGetParcelMaxPrims\n\ + llGetParcelMaxPrims(${1:vector pos}, ${2:integer sim_wide})\n\ +snippet llGetParcelMusicURL\n\ + llGetParcelMusicURL()\n\ +snippet llGetParcelPrimCount\n\ + llGetParcelPrimCount(${1:vector pos}, ${2:integer category}, ${3:integer sim_wide})\n\ +snippet llGetParcelPrimOwners\n\ + llGetParcelPrimOwners(${1:vector pos})\n\ +snippet llGetPermissions\n\ + llGetPermissions()\n\ +snippet llGetPermissionsKey\n\ + llGetPermissionsKey()\n\ +snippet llGetPhysicsMaterial\n\ + llGetPhysicsMaterial()\n\ +snippet llGetPos\n\ + llGetPos()\n\ +snippet llGetPrimitiveParams\n\ + llGetPrimitiveParams(${1:list params})\n\ +snippet llGetPrimMediaParams\n\ + llGetPrimMediaParams(${1:integer face}, ${2:list params})\n\ +snippet llGetRegionAgentCount\n\ + llGetRegionAgentCount()\n\ +snippet llGetRegionCorner\n\ + llGetRegionCorner()\n\ +snippet llGetRegionFlags\n\ + llGetRegionFlags()\n\ +snippet llGetRegionFPS\n\ + llGetRegionFPS()\n\ +snippet llGetRegionName\n\ + llGetRegionName()\n\ +snippet llGetRegionTimeDilation\n\ + llGetRegionTimeDilation()\n\ +snippet llGetRootPosition\n\ + llGetRootPosition()\n\ +snippet llGetRootRotation\n\ + llGetRootRotation()\n\ +snippet llGetRot\n\ + llGetRot()\n\ +snippet llGetScale\n\ + llGetScale()\n\ +snippet llGetScriptName\n\ + llGetScriptName()\n\ +snippet llGetScriptState\n\ + llGetScriptState(${1:string script})\n\ +snippet llGetSimStats\n\ + llGetSimStats(${1:integer stat_type})\n\ +snippet llGetSimulatorHostname\n\ + llGetSimulatorHostname()\n\ +snippet llGetSPMaxMemory\n\ + llGetSPMaxMemory()\n\ +snippet llGetStartParameter\n\ + llGetStartParameter()\n\ +snippet llGetStaticPath\n\ + llGetStaticPath(${1:vector start}, ${2:vector end}, ${3:float radius}, ${4:list params})\n\ +snippet llGetStatus\n\ + llGetStatus(${1:integer status})\n\ +snippet llGetSubString\n\ + llGetSubString(${1:string src}, ${2:integer start}, ${3:integer end})\n\ +snippet llGetSunDirection\n\ + llGetSunDirection()\n\ +snippet llGetTexture\n\ + llGetTexture(${1:integer face})\n\ +snippet llGetTextureOffset\n\ + llGetTextureOffset(${1:integer face})\n\ +snippet llGetTextureRot\n\ + llGetTextureRot(${1:integer face})\n\ +snippet llGetTextureScale\n\ + llGetTextureScale(${1:integer face})\n\ +snippet llGetTime\n\ + llGetTime()\n\ +snippet llGetTimeOfDay\n\ + llGetTimeOfDay()\n\ +snippet llGetTimestamp\n\ + llGetTimestamp()\n\ +snippet llGetTorque\n\ + llGetTorque()\n\ +snippet llGetUnixTime\n\ + llGetUnixTime()\n\ +snippet llGetUsedMemory\n\ + llGetUsedMemory()\n\ +snippet llGetUsername\n\ + llGetUsername(${1:key id})\n\ +snippet llGetVel\n\ + llGetVel()\n\ +snippet llGetWallclock\n\ + llGetWallclock()\n\ +snippet llGiveInventory\n\ + llGiveInventory(${1:key destination}, ${2:string inventory});\n\ +snippet llGiveInventoryList\n\ + llGiveInventoryList(${1:key target}, ${2:string folder}, ${3:list inventory});\n\ +snippet llGiveMoney\n\ + llGiveMoney(${1:key destination}, ${2:integer amount})\n\ +snippet llGround\n\ + llGround(${1:vector offset})\n\ +snippet llGroundContour\n\ + llGroundContour(${1:vector offset})\n\ +snippet llGroundNormal\n\ + llGroundNormal(${1:vector offset})\n\ +snippet llGroundRepel\n\ + llGroundRepel(${1:float height}, ${2:integer water}, ${3:float tau});\n\ +snippet llGroundSlope\n\ + llGroundSlope(${1:vector offset})\n\ +snippet llHTTPRequest\n\ + llHTTPRequest(${1:string url}, ${2:list parameters}, ${3:string body})\n\ +snippet llHTTPResponse\n\ + llHTTPResponse(${1:key request_id}, ${2:integer status}, ${3:string body});\n\ +snippet llInsertString\n\ + llInsertString(${1:string dst}, ${2:integer pos}, ${3:string src})\n\ +snippet llInstantMessage\n\ + llInstantMessage(${1:key user}, ${2:string message});\n\ +snippet llIntegerToBase64\n\ + llIntegerToBase64(${1:integer number})\n\ +snippet llJson2List\n\ + llJson2List(${1:string json})\n\ +snippet llJsonGetValue\n\ + llJsonGetValue(${1:string json}, ${2:list specifiers})\n\ +snippet llJsonSetValue\n\ + llJsonSetValue(${1:string json}, ${2:list specifiers}, ${3:string newValue})\n\ +snippet llJsonValueType\n\ + llJsonValueType(${1:string json}, ${2:list specifiers})\n\ +snippet llKey2Name\n\ + llKey2Name(${1:key id})\n\ +snippet llLinkParticleSystem\n\ + llLinkParticleSystem(${1:integer link}, ${2:list rules});\n\ +snippet llLinkSitTarget\n\ + llLinkSitTarget(${1:integer link}, ${2:vector offset}, ${3:rotation rot});\n\ +snippet llList2CSV\n\ + llList2CSV(${1:list src})\n\ +snippet llList2Float\n\ + llList2Float(${1:list src}, ${2:integer index})\n\ +snippet llList2Integer\n\ + llList2Integer(${1:list src}, ${2:integer index})\n\ +snippet llList2Json\n\ + llList2Json(${1:string type}, ${2:list values})\n\ +snippet llList2Key\n\ + llList2Key(${1:list src}, ${2:integer index})\n\ +snippet llList2List\n\ + llList2List(${1:list src}, ${2:integer start}, ${3:integer end})\n\ +snippet llList2ListStrided\n\ + llList2ListStrided(${1:list src}, ${2:integer start}, ${3:integer end}, ${4:integer stride})\n\ +snippet llList2Rot\n\ + llList2Rot(${1:list src}, ${2:integer index})\n\ +snippet llList2String\n\ + llList2String(${1:list src}, ${2:integer index})\n\ +snippet llList2Vector\n\ + llList2Vector(${1:list src}, ${2:integer index})\n\ +snippet llListen\n\ + llListen(${1:integer channel}, ${2:string name}, ${3:key id}, ${4:string msg})\n\ +snippet llListenControl\n\ + llListenControl(${1:integer handle}, ${2:integer active});\n\ +snippet llListenRemove\n\ + llListenRemove(${1:integer handle});\n\ +snippet llListFindList\n\ + llListFindList(${1:list src}, ${2:list test})\n\ +snippet llListInsertList\n\ + llListInsertList(${1:list dest}, ${2:list src}, ${3:integer start})\n\ +snippet llListRandomize\n\ + llListRandomize(${1:list src}, ${2:integer stride})\n\ +snippet llListReplaceList\n\ + llListReplaceList(${1:list dest}, ${2:list src}, ${3:integer start}, ${4:integer end})\n\ +snippet llListSort\n\ + llListSort(${1:list src}, ${2:integer stride}, ${3:integer ascending})\n\ +snippet llListStatistics\n\ + llListStatistics(${1:integer operation}, ${2:list src})\n\ +snippet llLoadURL\n\ + llLoadURL(${1:key agent}, ${2:string message}, ${3:string url});\n\ +snippet llLog\n\ + llLog(${1:float val})\n\ +snippet llLog10\n\ + llLog10(${1:float val})\n\ +snippet llLookAt\n\ + llLookAt(${1:vector target}, ${2:float strength}, ${3:float damping});\n\ +snippet llLoopSound\n\ + llLoopSound(${1:string sound}, ${2:float volume});\n\ +snippet llLoopSoundMaster\n\ + llLoopSoundMaster(${1:string sound}, ${2:float volume});\n\ +snippet llLoopSoundSlave\n\ + llLoopSoundSlave(${1:string sound}, ${2:float volume});\n\ +snippet llManageEstateAccess\n\ + llManageEstateAccess(${1:integer action}, ${2:key agent})\n\ +snippet llMapDestination\n\ + llMapDestination(${1:string simname}, ${2:vector pos}, ${3:vector look_at});\n\ +snippet llMD5String\n\ + llMD5String(${1:string src}, ${2:integer nonce})\n\ +snippet llMessageLinked\n\ + llMessageLinked(${1:integer link}, ${2:integer num}, ${3:string str}, ${4:key id});\n\ +snippet llMinEventDelay\n\ + llMinEventDelay(${1:float delay});\n\ +snippet llModifyLand\n\ + llModifyLand(${1:integer action}, ${2:integer brush});\n\ +snippet llModPow\n\ + llModPow(${1:integer a}, ${2:integer b}, ${3:integer c})\n\ +snippet llMoveToTarget\n\ + llMoveToTarget(${1:vector target}, ${2:float tau});\n\ +snippet llNavigateTo\n\ + llNavigateTo(${1:vector pos}, ${2:list options});\n\ +snippet llOffsetTexture\n\ + llOffsetTexture(${1:float u}, ${2:float v}, ${3:integer face});\n\ +snippet llOpenRemoteDataChannel\n\ + llOpenRemoteDataChannel();\n\ +snippet llOverMyLand\n\ + llOverMyLand(${1:key id})\n\ +snippet llOwnerSay\n\ + llOwnerSay(${1:string msg});\n\ +snippet llParcelMediaCommandList\n\ + llParcelMediaCommandList(${1:list commandList});\n\ +snippet llParcelMediaQuery\n\ + llParcelMediaQuery(${1:list query})\n\ +snippet llParseString2List\n\ + llParseString2List(${1:string src}, ${2:list separators}, ${3:list spacers})\n\ +snippet llParseStringKeepNulls\n\ + llParseStringKeepNulls(${1:string src}, ${2:list separators}, ${3:list spacers})\n\ +snippet llParticleSystem\n\ + llParticleSystem(${1:list rules});\n\ +snippet llPassCollisions\n\ + llPassCollisions(${1:integer pass});\n\ +snippet llPassTouches\n\ + llPassTouches(${1:integer pass});\n\ +snippet llPatrolPoints\n\ + llPatrolPoints(${1:list patrolPoints}, ${2:list options});\n\ +snippet llPlaySound\n\ + llPlaySound(${1:string sound}, ${2:float volume});\n\ +snippet llPlaySoundSlave\n\ + llPlaySoundSlave(${1:string sound}, ${2:float volume});\n\ +snippet llPow\n\ + llPow(${1:float base}, ${2:float exponent})\n\ +snippet llPreloadSound\n\ + llPreloadSound(${1:string sound});\n\ +snippet llPursue\n\ + llPursue(${1:key target}, ${2:list options});\n\ +snippet llPushObject\n\ + llPushObject(${1:key target}, ${2:vector impulse}, ${3:vector ang_impulse}, ${4:integer local});\n\ +snippet llRegionSay\n\ + llRegionSay(${1:integer channel}, ${2:string msg});\n\ +snippet llRegionSayTo\n\ + llRegionSayTo(${1:key target}, ${2:integer channel}, ${3:string msg});\n\ +snippet llReleaseControls\n\ + llReleaseControls();\n\ +snippet llReleaseURL\n\ + llReleaseURL(${1:string url});\n\ +snippet llRemoteDataReply\n\ + llRemoteDataReply(${1:key channel}, ${2:key message_id}, ${3:string sdata}, ${4:integer idata});\n\ +snippet llRemoteLoadScriptPin\n\ + llRemoteLoadScriptPin(${1:key target}, ${2:string name}, ${3:integer pin}, ${4:integer running}, ${5:integer start_param});\n\ +snippet llRemoveFromLandBanList\n\ + llRemoveFromLandBanList(${1:key agent});\n\ +snippet llRemoveFromLandPassList\n\ + llRemoveFromLandPassList(${1:key agent});\n\ +snippet llRemoveInventory\n\ + llRemoveInventory(${1:string item});\n\ +snippet llRemoveVehicleFlags\n\ + llRemoveVehicleFlags(${1:integer flags});\n\ +snippet llRequestAgentData\n\ + llRequestAgentData(${1:key id}, ${2:integer data})\n\ +snippet llRequestDisplayName\n\ + llRequestDisplayName(${1:key id})\n\ +snippet llRequestInventoryData\n\ + llRequestInventoryData(${1:string name})\n\ +snippet llRequestPermissions\n\ + llRequestPermissions(${1:key agent}, ${2:integer permissions})\n\ +snippet llRequestSecureURL\n\ + llRequestSecureURL()\n\ +snippet llRequestSimulatorData\n\ + llRequestSimulatorData(${1:string region}, ${2:integer data})\n\ +snippet llRequestURL\n\ + llRequestURL()\n\ +snippet llRequestUsername\n\ + llRequestUsername(${1:key id})\n\ +snippet llResetAnimationOverride\n\ + llResetAnimationOverride(${1:string anim_state});\n\ +snippet llResetLandBanList\n\ + llResetLandBanList();\n\ +snippet llResetLandPassList\n\ + llResetLandPassList();\n\ +snippet llResetOtherScript\n\ + llResetOtherScript(${1:string name});\n\ +snippet llResetScript\n\ + llResetScript();\n\ +snippet llResetTime\n\ + llResetTime();\n\ +snippet llReturnObjectsByID\n\ + llReturnObjectsByID(${1:list objects})\n\ +snippet llReturnObjectsByOwner\n\ + llReturnObjectsByOwner(${1:key owner}, ${2:integer scope})\n\ +snippet llRezAtRoot\n\ + llRezAtRoot(${1:string inventory}, ${2:vector position}, ${3:vector velocity}, ${4:rotation rot}, ${5:integer param});\n\ +snippet llRezObject\n\ + llRezObject(${1:string inventory}, ${2:vector pos}, ${3:vector vel}, ${4:rotation rot}, ${5:integer param});\n\ +snippet llRot2Angle\n\ + llRot2Angle(${1:rotation rot})\n\ +snippet llRot2Axis\n\ + llRot2Axis(${1:rotation rot})\n\ +snippet llRot2Euler\n\ + llRot2Euler(${1:rotation quat})\n\ +snippet llRot2Fwd\n\ + llRot2Fwd(${1:rotation q})\n\ +snippet llRot2Left\n\ + llRot2Left(${1:rotation q})\n\ +snippet llRot2Up\n\ + llRot2Up(${1:rotation q})\n\ +snippet llRotateTexture\n\ + llRotateTexture(${1:float angle}, ${2:integer face});\n\ +snippet llRotBetween\n\ + llRotBetween(${1:vector start}, ${2:vector end})\n\ +snippet llRotLookAt\n\ + llRotLookAt(${1:rotation target_direction}, ${2:float strength}, ${3:float damping});\n\ +snippet llRotTarget\n\ + llRotTarget(${1:rotation rot}, ${2:float error})\n\ +snippet llRotTargetRemove\n\ + llRotTargetRemove(${1:integer handle});\n\ +snippet llRound\n\ + llRound(${1:float val})\n\ +snippet llSameGroup\n\ + llSameGroup(${1:key group})\n\ +snippet llSay\n\ + llSay(${1:integer channel}, ${2:string msg});\n\ +snippet llScaleByFactor\n\ + llScaleByFactor(${1:float scaling_factor})\n\ +snippet llScaleTexture\n\ + llScaleTexture(${1:float u}, ${2:float v}, ${3:integer face});\n\ +snippet llScriptDanger\n\ + llScriptDanger(${1:vector pos})\n\ +snippet llScriptProfiler\n\ + llScriptProfiler(${1:integer flags});\n\ +snippet llSendRemoteData\n\ + llSendRemoteData(${1:key channel}, ${2:string dest}, ${3:integer idata}, ${4:string sdata})\n\ +snippet llSensor\n\ + llSensor(${1:string name}, ${2:key id}, ${3:integer type}, ${4:float range}, ${5:float arc});\n\ +snippet llSensorRepeat\n\ + llSensorRepeat(${1:string name}, ${2:key id}, ${3:integer type}, ${4:float range}, ${5:float arc}, ${6:float rate});\n\ +snippet llSetAlpha\n\ + llSetAlpha(${1:float alpha}, ${2:integer face});\n\ +snippet llSetAngularVelocity\n\ + llSetAngularVelocity(${1:vector force}, ${2:integer local});\n\ +snippet llSetAnimationOverride\n\ + llSetAnimationOverride(${1:string anim_state}, ${2:string anim})\n\ +snippet llSetBuoyancy\n\ + llSetBuoyancy(${1:float buoyancy});\n\ +snippet llSetCameraAtOffset\n\ + llSetCameraAtOffset(${1:vector offset});\n\ +snippet llSetCameraEyeOffset\n\ + llSetCameraEyeOffset(${1:vector offset});\n\ +snippet llSetCameraParams\n\ + llSetCameraParams(${1:list rules});\n\ +snippet llSetClickAction\n\ + llSetClickAction(${1:integer action});\n\ +snippet llSetColor\n\ + llSetColor(${1:vector color}, ${2:integer face});\n\ +snippet llSetContentType\n\ + llSetContentType(${1:key request_id}, ${2:integer content_type});\n\ +snippet llSetDamage\n\ + llSetDamage(${1:float damage});\n\ +snippet llSetForce\n\ + llSetForce(${1:vector force}, ${2:integer local});\n\ +snippet llSetForceAndTorque\n\ + llSetForceAndTorque(${1:vector force}, ${2:vector torque}, ${3:integer local});\n\ +snippet llSetHoverHeight\n\ + llSetHoverHeight(${1:float height}, ${2:integer water}, ${3:float tau});\n\ +snippet llSetKeyframedMotion\n\ + llSetKeyframedMotion(${1:list keyframes}, ${2:list options});\n\ +snippet llSetLinkAlpha\n\ + llSetLinkAlpha(${1:integer link}, ${2:float alpha}, ${3:integer face});\n\ +snippet llSetLinkCamera\n\ + llSetLinkCamera(${1:integer link}, ${2:vector eye}, ${3:vector at});\n\ +snippet llSetLinkColor\n\ + llSetLinkColor(${1:integer link}, ${2:vector color}, ${3:integer face});\n\ +snippet llSetLinkMedia\n\ + llSetLinkMedia(${1:integer link}, ${2:integer face}, ${3:list params});\n\ +snippet llSetLinkPrimitiveParams\n\ + llSetLinkPrimitiveParams(${1:integer link}, ${2:list rules});\n\ +snippet llSetLinkPrimitiveParamsFast\n\ + llSetLinkPrimitiveParamsFast(${1:integer link}, ${2:list rules});\n\ +snippet llSetLinkTexture\n\ + llSetLinkTexture(${1:integer link}, ${2:string texture}, ${3:integer face});\n\ +snippet llSetLinkTextureAnim\n\ + llSetLinkTextureAnim(${1:integer link}, ${2:integer mode}, ${3:integer face}, ${4:integer sizex}, ${5:integer sizey}, ${6:float start}, ${7:float length}, ${8:float rate});\n\ +snippet llSetLocalRot\n\ + llSetLocalRot(${1:rotation rot});\n\ +snippet llSetMemoryLimit\n\ + llSetMemoryLimit(${1:integer limit})\n\ +snippet llSetObjectDesc\n\ + llSetObjectDesc(${1:string description});\n\ +snippet llSetObjectName\n\ + llSetObjectName(${1:string name});\n\ +snippet llSetParcelMusicURL\n\ + llSetParcelMusicURL(${1:string url});\n\ +snippet llSetPayPrice\n\ + llSetPayPrice(${1:integer price}, [${2:integer price_button_a}, ${3:integer price_button_b}, ${4:integer price_button_c}, ${5:integer price_button_d}]);\n\ +snippet llSetPhysicsMaterial\n\ + llSetPhysicsMaterial(${1:integer mask}, ${2:float gravity_multiplier}, ${3:float restitution}, ${4:float friction}, ${5:float density});\n\ +snippet llSetPos\n\ + llSetPos(${1:vector pos});\n\ +snippet llSetPrimitiveParams\n\ + llSetPrimitiveParams(${1:list rules});\n\ +snippet llSetPrimMediaParams\n\ + llSetPrimMediaParams(${1:integer face}, ${2:list params});\n\ +snippet llSetRegionPos\n\ + llSetRegionPos(${1:vector position})\n\ +snippet llSetRemoteScriptAccessPin\n\ + llSetRemoteScriptAccessPin(${1:integer pin});\n\ +snippet llSetRot\n\ + llSetRot(${1:rotation rot});\n\ +snippet llSetScale\n\ + llSetScale(${1:vector size});\n\ +snippet llSetScriptState\n\ + llSetScriptState(${1:string name}, ${2:integer run});\n\ +snippet llSetSitText\n\ + llSetSitText(${1:string text});\n\ +snippet llSetSoundQueueing\n\ + llSetSoundQueueing(${1:integer queue});\n\ +snippet llSetSoundRadius\n\ + llSetSoundRadius(${1:float radius});\n\ +snippet llSetStatus\n\ + llSetStatus(${1:integer status}, ${2:integer value});\n\ +snippet llSetText\n\ + llSetText(${1:string text}, ${2:vector color}, ${3:float alpha});\n\ +snippet llSetTexture\n\ + llSetTexture(${1:string texture}, ${2:integer face});\n\ +snippet llSetTextureAnim\n\ + llSetTextureAnim(${1:integer mode}, ${2:integer face}, ${3:integer sizex}, ${4:integer sizey}, ${5:float start}, ${6:float length}, ${7:float rate});\n\ +snippet llSetTimerEvent\n\ + llSetTimerEvent(${1:float sec});\n\ +snippet llSetTorque\n\ + llSetTorque(${1:vector torque}, ${2:integer local});\n\ +snippet llSetTouchText\n\ + llSetTouchText(${1:string text});\n\ +snippet llSetVehicleFlags\n\ + llSetVehicleFlags(${1:integer flags});\n\ +snippet llSetVehicleFloatParam\n\ + llSetVehicleFloatParam(${1:integer param}, ${2:float value});\n\ +snippet llSetVehicleRotationParam\n\ + llSetVehicleRotationParam(${1:integer param}, ${2:rotation rot});\n\ +snippet llSetVehicleType\n\ + llSetVehicleType(${1:integer type});\n\ +snippet llSetVehicleVectorParam\n\ + llSetVehicleVectorParam(${1:integer param}, ${2:vector vec});\n\ +snippet llSetVelocity\n\ + llSetVelocity(${1:vector force}, ${2:integer local});\n\ +snippet llSHA1String\n\ + llSHA1String(${1:string src})\n\ +snippet llShout\n\ + llShout(${1:integer channel}, ${2:string msg});\n\ +snippet llSin\n\ + llSin(${1:float theta})\n\ +snippet llSitTarget\n\ + llSitTarget(${1:vector offset}, ${2:rotation rot});\n\ +snippet llSleep\n\ + llSleep(${1:float sec});\n\ +snippet llSqrt\n\ + llSqrt(${1:float val})\n\ +snippet llStartAnimation\n\ + llStartAnimation(${1:string anim});\n\ +snippet llStopAnimation\n\ + llStopAnimation(${1:string anim});\n\ +snippet llStopHover\n\ + llStopHover();\n\ +snippet llStopLookAt\n\ + llStopLookAt();\n\ +snippet llStopMoveToTarget\n\ + llStopMoveToTarget();\n\ +snippet llStopSound\n\ + llStopSound();\n\ +snippet llStringLength\n\ + llStringLength(${1:string str})\n\ +snippet llStringToBase64\n\ + llStringToBase64(${1:string str})\n\ +snippet llStringTrim\n\ + llStringTrim(${1:string src}, ${2:integer type})\n\ +snippet llSubStringIndex\n\ + llSubStringIndex(${1:string source}, ${2:string pattern})\n\ +snippet llTakeControls\n\ + llTakeControls(${1:integer controls}, ${2:integer accept}, ${3:integer pass_on});\n\ +snippet llTan\n\ + llTan(${1:float theta})\n\ +snippet llTarget\n\ + llTarget(${1:vector position}, ${2:float range})\n\ +snippet llTargetOmega\n\ + llTargetOmega(${1:vector axis}, ${2:float spinrate}, ${3:float gain});\n\ +snippet llTargetRemove\n\ + llTargetRemove(${1:integer handle});\n\ +snippet llTeleportAgent\n\ + llTeleportAgent(${1:key agent}, ${2:string landmark}, ${3:vector position}, ${4:vector look_at});\n\ +snippet llTeleportAgentGlobalCoords\n\ + llTeleportAgentGlobalCoords(${1:key agent}, ${2:vector global_coordinates}, ${3:vector region_coordinates}, ${4:vector look_at});\n\ +snippet llTeleportAgentHome\n\ + llTeleportAgentHome(${1:key agent});\n\ +snippet llTextBox\n\ + llTextBox(${1:key agent}, ${2:string message}, ${3:integer channel});\n\ +snippet llToLower\n\ + llToLower(${1:string src})\n\ +snippet llToUpper\n\ + llToUpper(${1:string src})\n\ +snippet llTransferLindenDollars\n\ + llTransferLindenDollars(${1:key destination}, ${2:integer amount})\n\ +snippet llTriggerSound\n\ + llTriggerSound(${1:string sound}, ${2:float volume});\n\ +snippet llTriggerSoundLimited\n\ + llTriggerSoundLimited(${1:string sound}, ${2:float volume}, ${3:vector top_north_east}, ${4:vector bottom_south_west});\n\ +snippet llUnescapeURL\n\ + llUnescapeURL(${1:string url})\n\ +snippet llUnSit\n\ + llUnSit(${1:key id});\n\ +snippet llUpdateCharacter\n\ + llUpdateCharacter(${1:list options})\n\ +snippet llVecDist\n\ + llVecDist(${1:vector vec_a}, ${2:vector vec_b})\n\ +snippet llVecMag\n\ + llVecMag(${1:vector vec})\n\ +snippet llVecNorm\n\ + llVecNorm(${1:vector vec})\n\ +snippet llVolumeDetect\n\ + llVolumeDetect(${1:integer detect});\n\ +snippet llWanderWithin\n\ + llWanderWithin(${1:vector origin}, ${2:vector dist}, ${3:list options});\n\ +snippet llWater\n\ + llWater(${1:vector offset});\n\ +snippet llWhisper\n\ + llWhisper(${1:integer channel}, ${2:string msg});\n\ +snippet llWind\n\ + llWind(${1:vector offset});\n\ +snippet llXorBase64\n\ + llXorBase64(${1:string str1}, ${2:string str2})\n\ +snippet money\n\ + money(${1:key id}, ${2:integer amount})\n\ + {\n\ + $0\n\ + }\n\ +snippet object_rez\n\ + object_rez(${1:key id})\n\ + {\n\ + $0\n\ + }\n\ +snippet on_rez\n\ + on_rez(${1:integer start_param})\n\ + {\n\ + $0\n\ + }\n\ +snippet path_update\n\ + path_update(${1:integer type}, ${2:list reserved})\n\ + {\n\ + $0\n\ + }\n\ +snippet remote_data\n\ + remote_data(${1:integer event_type}, ${2:key channel}, ${3:key message_id}, ${4:string sender}, ${5:integer idata}, ${6:string sdata})\n\ + {\n\ + $0\n\ + }\n\ +snippet run_time_permissions\n\ + run_time_permissions(${1:integer perm})\n\ + {\n\ + $0\n\ + }\n\ +snippet sensor\n\ + sensor(${1:integer index})\n\ + {\n\ + $0\n\ + }\n\ +snippet state\n\ + state ${1:name}\n\ +snippet touch\n\ + touch(${1:integer index})\n\ + {\n\ + $0\n\ + }\n\ +snippet touch_end\n\ + touch_end(${1:integer index})\n\ + {\n\ + $0\n\ + }\n\ +snippet touch_start\n\ + touch_start(${1:integer index})\n\ + {\n\ + $0\n\ + }\n\ +snippet transaction_result\n\ + transaction_result(${1:key id}, ${2:integer success}, ${3:string data})\n\ + {\n\ + $0\n\ + }\n\ +snippet while\n\ + while (${1:condition})\n\ + {\n\ + $0\n\ + }\n\ +"; +exports.scope = "lsl"; + +}); diff --git a/public/ace_editor/snippets/lua.js b/public/ace_editor/snippets/lua.js new file mode 100755 index 0000000..5e89038 --- /dev/null +++ b/public/ace_editor/snippets/lua.js @@ -0,0 +1,28 @@ +ace.define('ace/snippets/lua', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.snippetText = "snippet #!\n\ + #!/usr/bin/env lua\n\ + $1\n\ +snippet local\n\ + local ${1:x} = ${2:1}\n\ +snippet fun\n\ + function ${1:fname}(${2:...})\n\ + ${3:-- body}\n\ + end\n\ +snippet for\n\ + for ${1:i}=${2:1},${3:10} do\n\ + ${4:print(i)}\n\ + end\n\ +snippet forp\n\ + for ${1:i},${2:v} in pairs(${3:table_name}) do\n\ + ${4:-- body}\n\ + end\n\ +snippet fori\n\ + for ${1:i},${2:v} in ipairs(${3:table_name}) do\n\ + ${4:-- body}\n\ + end\n\ +"; +exports.scope = "lua"; + +}); diff --git a/public/ace_editor/snippets/luapage.js b/public/ace_editor/snippets/luapage.js new file mode 100755 index 0000000..1beeeed --- /dev/null +++ b/public/ace_editor/snippets/luapage.js @@ -0,0 +1,7 @@ +ace.define('ace/snippets/luapage', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.snippetText = ""; +exports.scope = "luapage"; + +}); diff --git a/public/ace_editor/snippets/lucene.js b/public/ace_editor/snippets/lucene.js new file mode 100755 index 0000000..5780fc6 --- /dev/null +++ b/public/ace_editor/snippets/lucene.js @@ -0,0 +1,7 @@ +ace.define('ace/snippets/lucene', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.snippetText = ""; +exports.scope = "lucene"; + +}); diff --git a/public/ace_editor/snippets/makefile.js b/public/ace_editor/snippets/makefile.js new file mode 100755 index 0000000..83b8596 --- /dev/null +++ b/public/ace_editor/snippets/makefile.js @@ -0,0 +1,11 @@ +ace.define('ace/snippets/makefile', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.snippetText = "snippet ifeq\n\ + ifeq (${1:cond0},${2:cond1})\n\ + ${3:code}\n\ + endif\n\ +"; +exports.scope = "makefile"; + +}); diff --git a/public/ace_editor/snippets/markdown.js b/public/ace_editor/snippets/markdown.js new file mode 100755 index 0000000..13fb5de --- /dev/null +++ b/public/ace_editor/snippets/markdown.js @@ -0,0 +1,95 @@ +ace.define('ace/snippets/markdown', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.snippetText = "# Markdown\n\ +\n\ +# Includes octopress (http://octopress.org/) snippets\n\ +\n\ +snippet [\n\ + [${1:text}](http://${2:address} \"${3:title}\")\n\ +snippet [*\n\ + [${1:link}](${2:`@*`} \"${3:title}\")${4}\n\ +\n\ +snippet [:\n\ + [${1:id}]: http://${2:url} \"${3:title}\"\n\ +snippet [:*\n\ + [${1:id}]: ${2:`@*`} \"${3:title}\"\n\ +\n\ +snippet ![\n\ + ![${1:alttext}](${2:/images/image.jpg} \"${3:title}\")\n\ +snippet ![*\n\ + ![${1:alt}](${2:`@*`} \"${3:title}\")${4}\n\ +\n\ +snippet ![:\n\ + ![${1:id}]: ${2:url} \"${3:title}\"\n\ +snippet ![:*\n\ + ![${1:id}]: ${2:`@*`} \"${3:title}\"\n\ +\n\ +snippet ===\n\ +regex /^/=+/=*//\n\ + ${PREV_LINE/./=/g}\n\ + \n\ + ${0}\n\ +snippet ---\n\ +regex /^/-+/-*//\n\ + ${PREV_LINE/./-/g}\n\ + \n\ + ${0}\n\ +snippet blockquote\n\ + {% blockquote %}\n\ + ${1:quote}\n\ + {% endblockquote %}\n\ +\n\ +snippet blockquote-author\n\ + {% blockquote ${1:author}, ${2:title} %}\n\ + ${3:quote}\n\ + {% endblockquote %}\n\ +\n\ +snippet blockquote-link\n\ + {% blockquote ${1:author} ${2:URL} ${3:link_text} %}\n\ + ${4:quote}\n\ + {% endblockquote %}\n\ +\n\ +snippet bt-codeblock-short\n\ + ```\n\ + ${1:code_snippet}\n\ + ```\n\ +\n\ +snippet bt-codeblock-full\n\ + ``` ${1:language} ${2:title} ${3:URL} ${4:link_text}\n\ + ${5:code_snippet}\n\ + ```\n\ +\n\ +snippet codeblock-short\n\ + {% codeblock %}\n\ + ${1:code_snippet}\n\ + {% endcodeblock %}\n\ +\n\ +snippet codeblock-full\n\ + {% codeblock ${1:title} lang:${2:language} ${3:URL} ${4:link_text} %}\n\ + ${5:code_snippet}\n\ + {% endcodeblock %}\n\ +\n\ +snippet gist-full\n\ + {% gist ${1:gist_id} ${2:filename} %}\n\ +\n\ +snippet gist-short\n\ + {% gist ${1:gist_id} %}\n\ +\n\ +snippet img\n\ + {% img ${1:class} ${2:URL} ${3:width} ${4:height} ${5:title_text} ${6:alt_text} %}\n\ +\n\ +snippet youtube\n\ + {% youtube ${1:video_id} %}\n\ +\n\ +# The quote should appear only once in the text. It is inherently part of it.\n\ +# See http://octopress.org/docs/plugins/pullquote/ for more info.\n\ +\n\ +snippet pullquote\n\ + {% pullquote %}\n\ + ${1:text} {\" ${2:quote} \"} ${3:text}\n\ + {% endpullquote %}\n\ +"; +exports.scope = "markdown"; + +}); diff --git a/public/ace_editor/snippets/matlab.js b/public/ace_editor/snippets/matlab.js new file mode 100755 index 0000000..8e4a403 --- /dev/null +++ b/public/ace_editor/snippets/matlab.js @@ -0,0 +1,7 @@ +ace.define('ace/snippets/matlab', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.snippetText = ""; +exports.scope = "matlab"; + +}); diff --git a/public/ace_editor/snippets/mel.js b/public/ace_editor/snippets/mel.js new file mode 100755 index 0000000..8b7156c --- /dev/null +++ b/public/ace_editor/snippets/mel.js @@ -0,0 +1,7 @@ +ace.define('ace/snippets/mel', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.snippetText = ""; +exports.scope = "mel"; + +}); diff --git a/public/ace_editor/snippets/mushcode.js b/public/ace_editor/snippets/mushcode.js new file mode 100755 index 0000000..1c4e0a5 --- /dev/null +++ b/public/ace_editor/snippets/mushcode.js @@ -0,0 +1,7 @@ +ace.define('ace/snippets/mushcode', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.snippetText = ""; +exports.scope = "mushcode"; + +}); diff --git a/public/ace_editor/snippets/mushcode_high_rules.js b/public/ace_editor/snippets/mushcode_high_rules.js new file mode 100755 index 0000000..08c47c2 --- /dev/null +++ b/public/ace_editor/snippets/mushcode_high_rules.js @@ -0,0 +1,7 @@ +ace.define('ace/snippets/mushcode_high_rules', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.snippetText = ""; +exports.scope = "mushcode_high_rules"; + +}); diff --git a/public/ace_editor/snippets/mysql.js b/public/ace_editor/snippets/mysql.js new file mode 100755 index 0000000..3a49569 --- /dev/null +++ b/public/ace_editor/snippets/mysql.js @@ -0,0 +1,7 @@ +ace.define('ace/snippets/mysql', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.snippetText = ""; +exports.scope = "mysql"; + +}); diff --git a/public/ace_editor/snippets/nix.js b/public/ace_editor/snippets/nix.js new file mode 100755 index 0000000..fc4a18f --- /dev/null +++ b/public/ace_editor/snippets/nix.js @@ -0,0 +1,7 @@ +ace.define('ace/snippets/nix', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.snippetText = ""; +exports.scope = "nix"; + +}); diff --git a/public/ace_editor/snippets/objectivec.js b/public/ace_editor/snippets/objectivec.js new file mode 100755 index 0000000..a74db18 --- /dev/null +++ b/public/ace_editor/snippets/objectivec.js @@ -0,0 +1,7 @@ +ace.define('ace/snippets/objectivec', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.snippetText = ""; +exports.scope = "objectivec"; + +}); diff --git a/public/ace_editor/snippets/ocaml.js b/public/ace_editor/snippets/ocaml.js new file mode 100755 index 0000000..ea5ab8a --- /dev/null +++ b/public/ace_editor/snippets/ocaml.js @@ -0,0 +1,7 @@ +ace.define('ace/snippets/ocaml', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.snippetText = ""; +exports.scope = "ocaml"; + +}); diff --git a/public/ace_editor/snippets/pascal.js b/public/ace_editor/snippets/pascal.js new file mode 100755 index 0000000..5b4721c --- /dev/null +++ b/public/ace_editor/snippets/pascal.js @@ -0,0 +1,7 @@ +ace.define('ace/snippets/pascal', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.snippetText = ""; +exports.scope = "pascal"; + +}); diff --git a/public/ace_editor/snippets/perl.js b/public/ace_editor/snippets/perl.js new file mode 100755 index 0000000..7d032f1 --- /dev/null +++ b/public/ace_editor/snippets/perl.js @@ -0,0 +1,354 @@ +ace.define('ace/snippets/perl', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.snippetText = "# #!/usr/bin/perl\n\ +snippet #!\n\ + #!/usr/bin/env perl\n\ +\n\ +# Hash Pointer\n\ +snippet .\n\ + =>\n\ +# Function\n\ +snippet sub\n\ + sub ${1:function_name} {\n\ + ${2:#body ...}\n\ + }\n\ +# Conditional\n\ +snippet if\n\ + if (${1}) {\n\ + ${2:# body...}\n\ + }\n\ +# Conditional if..else\n\ +snippet ife\n\ + if (${1}) {\n\ + ${2:# body...}\n\ + }\n\ + else {\n\ + ${3:# else...}\n\ + }\n\ +# Conditional if..elsif..else\n\ +snippet ifee\n\ + if (${1}) {\n\ + ${2:# body...}\n\ + }\n\ + elsif (${3}) {\n\ + ${4:# elsif...}\n\ + }\n\ + else {\n\ + ${5:# else...}\n\ + }\n\ +# Conditional One-line\n\ +snippet xif\n\ + ${1:expression} if ${2:condition};${3}\n\ +# Unless conditional\n\ +snippet unless\n\ + unless (${1}) {\n\ + ${2:# body...}\n\ + }\n\ +# Unless conditional One-line\n\ +snippet xunless\n\ + ${1:expression} unless ${2:condition};${3}\n\ +# Try/Except\n\ +snippet eval\n\ + local $@;\n\ + eval {\n\ + ${1:# do something risky...}\n\ + };\n\ + if (my $e = $@) {\n\ + ${2:# handle failure...}\n\ + }\n\ +# While Loop\n\ +snippet wh\n\ + while (${1}) {\n\ + ${2:# body...}\n\ + }\n\ +# While Loop One-line\n\ +snippet xwh\n\ + ${1:expression} while ${2:condition};${3}\n\ +# C-style For Loop\n\ +snippet cfor\n\ + for (my $${2:var} = 0; $$2 < ${1:count}; $$2${3:++}) {\n\ + ${4:# body...}\n\ + }\n\ +# For loop one-line\n\ +snippet xfor\n\ + ${1:expression} for @${2:array};${3}\n\ +# Foreach Loop\n\ +snippet for\n\ + foreach my $${1:x} (@${2:array}) {\n\ + ${3:# body...}\n\ + }\n\ +# Foreach Loop One-line\n\ +snippet fore\n\ + ${1:expression} foreach @${2:array};${3}\n\ +# Package\n\ +snippet package\n\ + package ${1:`substitute(Filename('', 'Page Title'), '^.', '\\u&', '')`};\n\ +\n\ + ${2}\n\ +\n\ + 1;\n\ +\n\ + __END__\n\ +# Package syntax perl >= 5.14\n\ +snippet packagev514\n\ + package ${1:`substitute(Filename('', 'Page Title'), '^.', '\\u&', '')`} ${2:0.99};\n\ +\n\ + ${3}\n\ +\n\ + 1;\n\ +\n\ + __END__\n\ +#moose\n\ +snippet moose\n\ + use Moose;\n\ + use namespace::autoclean;\n\ + ${1:#}BEGIN {extends '${2:ParentClass}'};\n\ +\n\ + ${3}\n\ +# parent\n\ +snippet parent\n\ + use parent qw(${1:Parent Class});\n\ +# Read File\n\ +snippet slurp\n\ + my $${1:var} = do { local $/; open my $file, '<', \"${2:file}\"; <$file> };\n\ + ${3}\n\ +# strict warnings\n\ +snippet strwar\n\ + use strict;\n\ + use warnings;\n\ +# older versioning with perlcritic bypass\n\ +snippet vers\n\ + ## no critic\n\ + our $VERSION = '${1:version}';\n\ + eval $VERSION;\n\ + ## use critic\n\ +# new 'switch' like feature\n\ +snippet switch\n\ + use feature 'switch';\n\ +\n\ +# Anonymous subroutine\n\ +snippet asub\n\ + sub {\n\ + ${1:# body }\n\ + }\n\ +\n\ +\n\ +\n\ +# Begin block\n\ +snippet begin\n\ + BEGIN {\n\ + ${1:# begin body}\n\ + }\n\ +\n\ +# call package function with some parameter\n\ +snippet pkgmv\n\ + __PACKAGE__->${1:package_method}(${2:var})\n\ +\n\ +# call package function without a parameter\n\ +snippet pkgm\n\ + __PACKAGE__->${1:package_method}()\n\ +\n\ +# call package \"get_\" function without a parameter\n\ +snippet pkget\n\ + __PACKAGE__->get_${1:package_method}()\n\ +\n\ +# call package function with a parameter\n\ +snippet pkgetv\n\ + __PACKAGE__->get_${1:package_method}(${2:var})\n\ +\n\ +# complex regex\n\ +snippet qrx\n\ + qr/\n\ + ${1:regex}\n\ + /xms\n\ +\n\ +#simpler regex\n\ +snippet qr/\n\ + qr/${1:regex}/x\n\ +\n\ +#given\n\ +snippet given\n\ + given ($${1:var}) {\n\ + ${2:# cases}\n\ + ${3:# default}\n\ + }\n\ +\n\ +# switch-like case\n\ +snippet when\n\ + when (${1:case}) {\n\ + ${2:# body}\n\ + }\n\ +\n\ +# hash slice\n\ +snippet hslice\n\ + @{ ${1:hash} }{ ${2:array} }\n\ +\n\ +\n\ +# map\n\ +snippet map\n\ + map { ${2: body } } ${1: @array } ;\n\ +\n\ +\n\ +\n\ +# Pod stub\n\ +snippet ppod\n\ + =head1 NAME\n\ +\n\ + ${1:ClassName} - ${2:ShortDesc}\n\ +\n\ + =head1 SYNOPSIS\n\ +\n\ + use $1;\n\ +\n\ + ${3:# synopsis...}\n\ +\n\ + =head1 DESCRIPTION\n\ +\n\ + ${4:# longer description...}\n\ +\n\ +\n\ + =head1 INTERFACE\n\ +\n\ +\n\ + =head1 DEPENDENCIES\n\ +\n\ +\n\ + =head1 SEE ALSO\n\ +\n\ +\n\ +# Heading for a subroutine stub\n\ +snippet psub\n\ + =head2 ${1:MethodName}\n\ +\n\ + ${2:Summary....}\n\ +\n\ +# Heading for inline subroutine pod\n\ +snippet psubi\n\ + =head2 ${1:MethodName}\n\ +\n\ + ${2:Summary...}\n\ +\n\ +\n\ + =cut\n\ +# inline documented subroutine\n\ +snippet subpod\n\ + =head2 $1\n\ +\n\ + Summary of $1\n\ +\n\ + =cut\n\ +\n\ + sub ${1:subroutine_name} {\n\ + ${2:# body...}\n\ + }\n\ +# Subroutine signature\n\ +snippet parg\n\ + =over 2\n\ +\n\ + =item\n\ + Arguments\n\ +\n\ +\n\ + =over 3\n\ +\n\ + =item\n\ + C<${1:DataStructure}>\n\ +\n\ + ${2:Sample}\n\ +\n\ +\n\ + =back\n\ +\n\ +\n\ + =item\n\ + Return\n\ +\n\ + =over 3\n\ +\n\ +\n\ + =item\n\ + C<${3:...return data}>\n\ +\n\ +\n\ + =back\n\ +\n\ +\n\ + =back\n\ +\n\ +\n\ +\n\ +# Moose has\n\ +snippet has\n\ + has ${1:attribute} => (\n\ + is => '${2:ro|rw}',\n\ + isa => '${3:Str|Int|HashRef|ArrayRef|etc}',\n\ + default => sub {\n\ + ${4:defaultvalue}\n\ + },\n\ + ${5:# other attributes}\n\ + );\n\ +\n\ +\n\ +# override\n\ +snippet override\n\ + override ${1:attribute} => sub {\n\ + ${2:# my $self = shift;};\n\ + ${3:# my ($self, $args) = @_;};\n\ + };\n\ +\n\ +\n\ +# use test classes\n\ +snippet tuse\n\ + use Test::More;\n\ + use Test::Deep; # (); # uncomment to stop prototype errors\n\ + use Test::Exception;\n\ +\n\ +# local test lib\n\ +snippet tlib\n\ + use lib qw{ ./t/lib };\n\ +\n\ +#test methods\n\ +snippet tmeths\n\ + $ENV{TEST_METHOD} = '${1:regex}';\n\ +\n\ +# runtestclass\n\ +snippet trunner\n\ + use ${1:test_class};\n\ + $1->runtests();\n\ +\n\ +# Test::Class-style test\n\ +snippet tsub\n\ + sub t${1:number}_${2:test_case} :Test(${3:num_of_tests}) {\n\ + my $self = shift;\n\ + ${4:# body}\n\ +\n\ + }\n\ +\n\ +# Test::Routine-style test\n\ +snippet trsub\n\ + test ${1:test_name} => { description => '${2:Description of test.}'} => sub {\n\ + my ($self) = @_;\n\ + ${3:# test code}\n\ + };\n\ +\n\ +#prep test method\n\ +snippet tprep\n\ + sub prep${1:number}_${2:test_case} :Test(startup) {\n\ + my $self = shift;\n\ + ${4:# body}\n\ + }\n\ +\n\ +# cause failures to print stack trace\n\ +snippet debug_trace\n\ + use Carp; # 'verbose';\n\ + # cloak \"die\"\n\ + # warn \"warning\"\n\ + $SIG{'__DIE__'} = sub {\n\ + require Carp; Carp::confess\n\ + };\n\ +\n\ +"; +exports.scope = "perl"; + +}); diff --git a/public/ace_editor/snippets/pgsql.js b/public/ace_editor/snippets/pgsql.js new file mode 100755 index 0000000..3e96da1 --- /dev/null +++ b/public/ace_editor/snippets/pgsql.js @@ -0,0 +1,7 @@ +ace.define('ace/snippets/pgsql', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.snippetText = ""; +exports.scope = "pgsql"; + +}); diff --git a/public/ace_editor/snippets/php.js b/public/ace_editor/snippets/php.js new file mode 100755 index 0000000..37f2628 --- /dev/null +++ b/public/ace_editor/snippets/php.js @@ -0,0 +1,384 @@ +ace.define('ace/snippets/php', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.snippetText = "snippet \n\ +# this one is for php5.4\n\ +snippet \n\ +snippet ns\n\ + namespace ${1:Foo\\Bar\\Baz};\n\ + ${2}\n\ +snippet use\n\ + use ${1:Foo\\Bar\\Baz};\n\ + ${2}\n\ +snippet c\n\ + ${1:abstract }class ${2:$FILENAME}\n\ + {\n\ + ${3}\n\ + }\n\ +snippet i\n\ + interface ${1:$FILENAME}\n\ + {\n\ + ${2}\n\ + }\n\ +snippet t.\n\ + $this->${1}\n\ +snippet f\n\ + function ${1:foo}(${2:array }${3:$bar})\n\ + {\n\ + ${4}\n\ + }\n\ +# method\n\ +snippet m\n\ + ${1:abstract }${2:protected}${3: static} function ${4:foo}(${5:array }${6:$bar})\n\ + {\n\ + ${7}\n\ + }\n\ +# setter method\n\ +snippet sm \n\ + /**\n\ + * Sets the value of ${1:foo}\n\ + *\n\ + * @param ${2:$1} $$1 ${3:description}\n\ + *\n\ + * @return ${4:$FILENAME}\n\ + */\n\ + ${5:public} function set${6:$2}(${7:$2 }$$1)\n\ + {\n\ + $this->${8:$1} = $$1;\n\ + return $this;\n\ + }${9}\n\ +# getter method\n\ +snippet gm\n\ + /**\n\ + * Gets the value of ${1:foo}\n\ + *\n\ + * @return ${2:$1}\n\ + */\n\ + ${3:public} function get${4:$2}()\n\ + {\n\ + return $this->${5:$1};\n\ + }${6}\n\ +#setter\n\ +snippet $s\n\ + ${1:$foo}->set${2:Bar}(${3});\n\ +#getter\n\ +snippet $g\n\ + ${1:$foo}->get${2:Bar}();\n\ +\n\ +# Tertiary conditional\n\ +snippet =?:\n\ + $${1:foo} = ${2:true} ? ${3:a} : ${4};\n\ +snippet ?:\n\ + ${1:true} ? ${2:a} : ${3}\n\ +\n\ +snippet C\n\ + $_COOKIE['${1:variable}']${2}\n\ +snippet E\n\ + $_ENV['${1:variable}']${2}\n\ +snippet F\n\ + $_FILES['${1:variable}']${2}\n\ +snippet G\n\ + $_GET['${1:variable}']${2}\n\ +snippet P\n\ + $_POST['${1:variable}']${2}\n\ +snippet R\n\ + $_REQUEST['${1:variable}']${2}\n\ +snippet S\n\ + $_SERVER['${1:variable}']${2}\n\ +snippet SS\n\ + $_SESSION['${1:variable}']${2}\n\ + \n\ +# the following are old ones\n\ +snippet inc\n\ + include '${1:file}';${2}\n\ +snippet inc1\n\ + include_once '${1:file}';${2}\n\ +snippet req\n\ + require '${1:file}';${2}\n\ +snippet req1\n\ + require_once '${1:file}';${2}\n\ +# Start Docblock\n\ +snippet /*\n\ + /**\n\ + * ${1}\n\ + */\n\ +# Class - post doc\n\ +snippet doc_cp\n\ + /**\n\ + * ${1:undocumented class}\n\ + *\n\ + * @package ${2:default}\n\ + * @subpackage ${3:default}\n\ + * @author ${4:`g:snips_author`}\n\ + */${5}\n\ +# Class Variable - post doc\n\ +snippet doc_vp\n\ + /**\n\ + * ${1:undocumented class variable}\n\ + *\n\ + * @var ${2:string}\n\ + */${3}\n\ +# Class Variable\n\ +snippet doc_v\n\ + /**\n\ + * ${3:undocumented class variable}\n\ + *\n\ + * @var ${4:string}\n\ + */\n\ + ${1:var} $${2};${5}\n\ +# Class\n\ +snippet doc_c\n\ + /**\n\ + * ${3:undocumented class}\n\ + *\n\ + * @package ${4:default}\n\ + * @subpackage ${5:default}\n\ + * @author ${6:`g:snips_author`}\n\ + */\n\ + ${1:}class ${2:}\n\ + {\n\ + ${7}\n\ + } // END $1class $2\n\ +# Constant Definition - post doc\n\ +snippet doc_dp\n\ + /**\n\ + * ${1:undocumented constant}\n\ + */${2}\n\ +# Constant Definition\n\ +snippet doc_d\n\ + /**\n\ + * ${3:undocumented constant}\n\ + */\n\ + ace.define(${1}, ${2});${4}\n\ +# Function - post doc\n\ +snippet doc_fp\n\ + /**\n\ + * ${1:undocumented function}\n\ + *\n\ + * @return ${2:void}\n\ + * @author ${3:`g:snips_author`}\n\ + */${4}\n\ +# Function signature\n\ +snippet doc_s\n\ + /**\n\ + * ${4:undocumented function}\n\ + *\n\ + * @return ${5:void}\n\ + * @author ${6:`g:snips_author`}\n\ + */\n\ + ${1}function ${2}(${3});${7}\n\ +# Function\n\ +snippet doc_f\n\ + /**\n\ + * ${4:undocumented function}\n\ + *\n\ + * @return ${5:void}\n\ + * @author ${6:`g:snips_author`}\n\ + */\n\ + ${1}function ${2}(${3})\n\ + {${7}\n\ + }\n\ +# Header\n\ +snippet doc_h\n\ + /**\n\ + * ${1}\n\ + *\n\ + * @author ${2:`g:snips_author`}\n\ + * @version ${3:$Id$}\n\ + * @copyright ${4:$2}, `strftime('%d %B, %Y')`\n\ + * @package ${5:default}\n\ + */\n\ + \n\ +# Interface\n\ +snippet interface\n\ + /**\n\ + * ${2:undocumented class}\n\ + *\n\ + * @package ${3:default}\n\ + * @author ${4:`g:snips_author`}\n\ + */\n\ + interface ${1:$FILENAME}\n\ + {\n\ + ${5}\n\ + }\n\ +# class ...\n\ +snippet class\n\ + /**\n\ + * ${1}\n\ + */\n\ + class ${2:$FILENAME}\n\ + {\n\ + ${3}\n\ + /**\n\ + * ${4}\n\ + */\n\ + ${5:public} function ${6:__construct}(${7:argument})\n\ + {\n\ + ${8:// code...}\n\ + }\n\ + }\n\ +# ace.define(...)\n\ +snippet def\n\ + ace.define('${1}'${2});${3}\n\ +# defined(...)\n\ +snippet def?\n\ + ${1}defined('${2}')${3}\n\ +snippet wh\n\ + while (${1:/* condition */}) {\n\ + ${2:// code...}\n\ + }\n\ +# do ... while\n\ +snippet do\n\ + do {\n\ + ${2:// code... }\n\ + } while (${1:/* condition */});\n\ +snippet if\n\ + if (${1:/* condition */}) {\n\ + ${2:// code...}\n\ + }\n\ +snippet ifil\n\ + \n\ + ${2:}\n\ + \n\ +snippet ife\n\ + if (${1:/* condition */}) {\n\ + ${2:// code...}\n\ + } else {\n\ + ${3:// code...}\n\ + }\n\ + ${4}\n\ +snippet ifeil\n\ + \n\ + ${2:}\n\ + \n\ + ${3:}\n\ + \n\ + ${4}\n\ +snippet else\n\ + else {\n\ + ${1:// code...}\n\ + }\n\ +snippet elseif\n\ + elseif (${1:/* condition */}) {\n\ + ${2:// code...}\n\ + }\n\ +snippet switch\n\ + switch ($${1:variable}) {\n\ + case '${2:value}':\n\ + ${3:// code...}\n\ + break;\n\ + ${5}\n\ + default:\n\ + ${4:// code...}\n\ + break;\n\ + }\n\ +snippet case\n\ + case '${1:value}':\n\ + ${2:// code...}\n\ + break;${3}\n\ +snippet for\n\ + for ($${2:i} = 0; $$2 < ${1:count}; $$2${3:++}) {\n\ + ${4: // code...}\n\ + }\n\ +snippet foreach\n\ + foreach ($${1:variable} as $${2:value}) {\n\ + ${3:// code...}\n\ + }\n\ +snippet foreachil\n\ + \n\ + ${3:}\n\ + \n\ +snippet foreachk\n\ + foreach ($${1:variable} as $${2:key} => $${3:value}) {\n\ + ${4:// code...}\n\ + }\n\ +snippet foreachkil\n\ + $${3:value}): ?>\n\ + ${4:}\n\ + \n\ +# $... = array (...)\n\ +snippet array\n\ + $${1:arrayName} = array('${2}' => ${3});${4}\n\ +snippet try\n\ + try {\n\ + ${2}\n\ + } catch (${1:Exception} $e) {\n\ + }\n\ +# lambda with closure\n\ +snippet lambda\n\ + ${1:static }function (${2:args}) use (${3:&$x, $y /*put vars in scope (closure) */}) {\n\ + ${4}\n\ + };\n\ +# pre_dump();\n\ +snippet pd\n\ + echo '
          '; var_dump(${1}); echo '
          ';\n\ +# pre_dump(); die();\n\ +snippet pdd\n\ + echo '
          '; var_dump(${1}); echo '
          '; die(${2:});\n\ +snippet vd\n\ + var_dump(${1});\n\ +snippet vdd\n\ + var_dump(${1}); die(${2:});\n\ +snippet http_redirect\n\ + header (\"HTTP/1.1 301 Moved Permanently\"); \n\ + header (\"Location: \".URL); \n\ + exit();\n\ +# Getters & Setters\n\ +snippet gs\n\ + /**\n\ + * Gets the value of ${1:foo}\n\ + *\n\ + * @return ${2:$1}\n\ + */\n\ + public function get${3:$2}()\n\ + {\n\ + return $this->${4:$1};\n\ + }\n\ +\n\ + /**\n\ + * Sets the value of $1\n\ + *\n\ + * @param $2 $$1 ${5:description}\n\ + *\n\ + * @return ${6:$FILENAME}\n\ + */\n\ + public function set$3(${7:$2 }$$1)\n\ + {\n\ + $this->$4 = $$1;\n\ + return $this;\n\ + }${8}\n\ +# anotation, get, and set, useful for doctrine\n\ +snippet ags\n\ + /**\n\ + * ${1:description}\n\ + * \n\ + * @${7}\n\ + */\n\ + ${2:protected} $${3:foo};\n\ +\n\ + public function get${4:$3}()\n\ + {\n\ + return $this->$3;\n\ + }\n\ +\n\ + public function set$4(${5:$4 }$${6:$3})\n\ + {\n\ + $this->$3 = $$6;\n\ + return $this;\n\ + }\n\ +snippet rett\n\ + return true;\n\ +snippet retf\n\ + return false;\n\ +"; +exports.scope = "php"; + +}); diff --git a/public/ace_editor/snippets/plain_text.js b/public/ace_editor/snippets/plain_text.js new file mode 100755 index 0000000..1c76fdd --- /dev/null +++ b/public/ace_editor/snippets/plain_text.js @@ -0,0 +1,7 @@ +ace.define('ace/snippets/plain_text', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.snippetText = ""; +exports.scope = "plain_text"; + +}); diff --git a/public/ace_editor/snippets/powershell.js b/public/ace_editor/snippets/powershell.js new file mode 100755 index 0000000..c7bc2d3 --- /dev/null +++ b/public/ace_editor/snippets/powershell.js @@ -0,0 +1,7 @@ +ace.define('ace/snippets/powershell', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.snippetText = ""; +exports.scope = "powershell"; + +}); diff --git a/public/ace_editor/snippets/prolog.js b/public/ace_editor/snippets/prolog.js new file mode 100755 index 0000000..7e75d51 --- /dev/null +++ b/public/ace_editor/snippets/prolog.js @@ -0,0 +1,7 @@ +ace.define('ace/snippets/prolog', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.snippetText = ""; +exports.scope = "prolog"; + +}); diff --git a/public/ace_editor/snippets/properties.js b/public/ace_editor/snippets/properties.js new file mode 100755 index 0000000..ec389d5 --- /dev/null +++ b/public/ace_editor/snippets/properties.js @@ -0,0 +1,7 @@ +ace.define('ace/snippets/properties', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.snippetText = ""; +exports.scope = "properties"; + +}); diff --git a/public/ace_editor/snippets/protobuf.js b/public/ace_editor/snippets/protobuf.js new file mode 100755 index 0000000..cea6aa2 --- /dev/null +++ b/public/ace_editor/snippets/protobuf.js @@ -0,0 +1,7 @@ +ace.define('ace/snippets/protobuf', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.snippetText = ""; +exports.scope = "protobuf"; + +}); \ No newline at end of file diff --git a/public/ace_editor/snippets/python.js b/public/ace_editor/snippets/python.js new file mode 100755 index 0000000..a9aab70 --- /dev/null +++ b/public/ace_editor/snippets/python.js @@ -0,0 +1,165 @@ +ace.define('ace/snippets/python', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.snippetText = "snippet #!\n\ + #!/usr/bin/env python\n\ +snippet imp\n\ + import ${1:module}\n\ +snippet from\n\ + from ${1:package} import ${2:module}\n\ +# Module Docstring\n\ +snippet docs\n\ + '''\n\ + File: ${1:FILENAME:file_name}\n\ + Author: ${2:author}\n\ + Description: ${3}\n\ + '''\n\ +snippet wh\n\ + while ${1:condition}:\n\ + ${2:# TODO: write code...}\n\ +# dowh - does the same as do...while in other languages\n\ +snippet dowh\n\ + while True:\n\ + ${1:# TODO: write code...}\n\ + if ${2:condition}:\n\ + break\n\ +snippet with\n\ + with ${1:expr} as ${2:var}:\n\ + ${3:# TODO: write code...}\n\ +# New Class\n\ +snippet cl\n\ + class ${1:ClassName}(${2:object}):\n\ + \"\"\"${3:docstring for $1}\"\"\"\n\ + def __init__(self, ${4:arg}):\n\ + ${5:super($1, self).__init__()}\n\ + self.$4 = $4\n\ + ${6}\n\ +# New Function\n\ +snippet def\n\ + def ${1:fname}(${2:`indent('.') ? 'self' : ''`}):\n\ + \"\"\"${3:docstring for $1}\"\"\"\n\ + ${4:# TODO: write code...}\n\ +snippet deff\n\ + def ${1:fname}(${2:`indent('.') ? 'self' : ''`}):\n\ + ${3:# TODO: write code...}\n\ +# New Method\n\ +snippet defs\n\ + def ${1:mname}(self, ${2:arg}):\n\ + ${3:# TODO: write code...}\n\ +# New Property\n\ +snippet property\n\ + def ${1:foo}():\n\ + doc = \"${2:The $1 property.}\"\n\ + def fget(self):\n\ + ${3:return self._$1}\n\ + def fset(self, value):\n\ + ${4:self._$1 = value}\n\ +# Ifs\n\ +snippet if\n\ + if ${1:condition}:\n\ + ${2:# TODO: write code...}\n\ +snippet el\n\ + else:\n\ + ${1:# TODO: write code...}\n\ +snippet ei\n\ + elif ${1:condition}:\n\ + ${2:# TODO: write code...}\n\ +# For\n\ +snippet for\n\ + for ${1:item} in ${2:items}:\n\ + ${3:# TODO: write code...}\n\ +# Encodes\n\ +snippet cutf8\n\ + # -*- coding: utf-8 -*-\n\ +snippet clatin1\n\ + # -*- coding: latin-1 -*-\n\ +snippet cascii\n\ + # -*- coding: ascii -*-\n\ +# Lambda\n\ +snippet ld\n\ + ${1:var} = lambda ${2:vars} : ${3:action}\n\ +snippet .\n\ + self.\n\ +snippet try Try/Except\n\ + try:\n\ + ${1:# TODO: write code...}\n\ + except ${2:Exception}, ${3:e}:\n\ + ${4:raise $3}\n\ +snippet try Try/Except/Else\n\ + try:\n\ + ${1:# TODO: write code...}\n\ + except ${2:Exception}, ${3:e}:\n\ + ${4:raise $3}\n\ + else:\n\ + ${5:# TODO: write code...}\n\ +snippet try Try/Except/Finally\n\ + try:\n\ + ${1:# TODO: write code...}\n\ + except ${2:Exception}, ${3:e}:\n\ + ${4:raise $3}\n\ + finally:\n\ + ${5:# TODO: write code...}\n\ +snippet try Try/Except/Else/Finally\n\ + try:\n\ + ${1:# TODO: write code...}\n\ + except ${2:Exception}, ${3:e}:\n\ + ${4:raise $3}\n\ + else:\n\ + ${5:# TODO: write code...}\n\ + finally:\n\ + ${6:# TODO: write code...}\n\ +# if __name__ == '__main__':\n\ +snippet ifmain\n\ + if __name__ == '__main__':\n\ + ${1:main()}\n\ +# __magic__\n\ +snippet _\n\ + __${1:init}__${2}\n\ +# python debugger (pdb)\n\ +snippet pdb\n\ + import pdb; pdb.set_trace()\n\ +# ipython debugger (ipdb)\n\ +snippet ipdb\n\ + import ipdb; ipdb.set_trace()\n\ +# ipython debugger (pdbbb)\n\ +snippet pdbbb\n\ + import pdbpp; pdbpp.set_trace()\n\ +snippet pprint\n\ + import pprint; pprint.pprint(${1})${2}\n\ +snippet \"\n\ + \"\"\"\n\ + ${1:doc}\n\ + \"\"\"\n\ +# test function/method\n\ +snippet test\n\ + def test_${1:description}(${2:self}):\n\ + ${3:# TODO: write code...}\n\ +# test case\n\ +snippet testcase\n\ + class ${1:ExampleCase}(unittest.TestCase):\n\ + \n\ + def test_${2:description}(self):\n\ + ${3:# TODO: write code...}\n\ +snippet fut\n\ + from __future__ import ${1}\n\ +#getopt\n\ +snippet getopt\n\ + try:\n\ + # Short option syntax: \"hv:\"\n\ + # Long option syntax: \"help\" or \"verbose=\"\n\ + opts, args = getopt.getopt(sys.argv[1:], \"${1:short_options}\", [${2:long_options}])\n\ + \n\ + except getopt.GetoptError, err:\n\ + # Print debug info\n\ + print str(err)\n\ + ${3:error_action}\n\ +\n\ + for option, argument in opts:\n\ + if option in (\"-h\", \"--help\"):\n\ + ${4}\n\ + elif option in (\"-v\", \"--verbose\"):\n\ + verbose = argument\n\ +"; +exports.scope = "python"; + +}); diff --git a/public/ace_editor/snippets/r.js b/public/ace_editor/snippets/r.js new file mode 100755 index 0000000..9978d3a --- /dev/null +++ b/public/ace_editor/snippets/r.js @@ -0,0 +1,128 @@ +ace.define('ace/snippets/r', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.snippetText = "snippet #!\n\ + #!/usr/bin/env Rscript\n\ +\n\ +# includes\n\ +snippet lib\n\ + library(${1:package})\n\ +snippet req\n\ + require(${1:package})\n\ +snippet source\n\ + source('${1:file}')\n\ +\n\ +# conditionals\n\ +snippet if\n\ + if (${1:condition}) {\n\ + ${2:code}\n\ + }\n\ +snippet el\n\ + else {\n\ + ${1:code}\n\ + }\n\ +snippet ei\n\ + else if (${1:condition}) {\n\ + ${2:code}\n\ + }\n\ +\n\ +# functions\n\ +snippet fun\n\ + ${1:name} = function (${2:variables}) {\n\ + ${3:code}\n\ + }\n\ +snippet ret\n\ + return(${1:code})\n\ +\n\ +# dataframes, lists, etc\n\ +snippet df\n\ + ${1:name}[${2:rows}, ${3:cols}]\n\ +snippet c\n\ + c(${1:items})\n\ +snippet li\n\ + list(${1:items})\n\ +snippet mat\n\ + matrix(${1:data}, nrow=${2:rows}, ncol=${3:cols})\n\ +\n\ +# apply functions\n\ +snippet apply\n\ + apply(${1:array}, ${2:margin}, ${3:function})\n\ +snippet lapply\n\ + lapply(${1:list}, ${2:function})\n\ +snippet sapply\n\ + lapply(${1:list}, ${2:function})\n\ +snippet vapply\n\ + vapply(${1:list}, ${2:function}, ${3:type})\n\ +snippet mapply\n\ + mapply(${1:function}, ${2:...})\n\ +snippet tapply\n\ + tapply(${1:vector}, ${2:index}, ${3:function})\n\ +snippet rapply\n\ + rapply(${1:list}, ${2:function})\n\ +\n\ +# plyr functions\n\ +snippet dd\n\ + ddply(${1:frame}, ${2:variables}, ${3:function})\n\ +snippet dl\n\ + dlply(${1:frame}, ${2:variables}, ${3:function})\n\ +snippet da\n\ + daply(${1:frame}, ${2:variables}, ${3:function})\n\ +snippet d_\n\ + d_ply(${1:frame}, ${2:variables}, ${3:function})\n\ +\n\ +snippet ad\n\ + adply(${1:array}, ${2:margin}, ${3:function})\n\ +snippet al\n\ + alply(${1:array}, ${2:margin}, ${3:function})\n\ +snippet aa\n\ + aaply(${1:array}, ${2:margin}, ${3:function})\n\ +snippet a_\n\ + a_ply(${1:array}, ${2:margin}, ${3:function})\n\ +\n\ +snippet ld\n\ + ldply(${1:list}, ${2:function})\n\ +snippet ll\n\ + llply(${1:list}, ${2:function})\n\ +snippet la\n\ + laply(${1:list}, ${2:function})\n\ +snippet l_\n\ + l_ply(${1:list}, ${2:function})\n\ +\n\ +snippet md\n\ + mdply(${1:matrix}, ${2:function})\n\ +snippet ml\n\ + mlply(${1:matrix}, ${2:function})\n\ +snippet ma\n\ + maply(${1:matrix}, ${2:function})\n\ +snippet m_\n\ + m_ply(${1:matrix}, ${2:function})\n\ +\n\ +# plot functions\n\ +snippet pl\n\ + plot(${1:x}, ${2:y})\n\ +snippet ggp\n\ + ggplot(${1:data}, aes(${2:aesthetics}))\n\ +snippet img\n\ + ${1:(jpeg,bmp,png,tiff)}(filename=\"${2:filename}\", width=${3}, height=${4}, unit=\"${5}\")\n\ + ${6:plot}\n\ + dev.off()\n\ +\n\ +# statistical test functions\n\ +snippet fis\n\ + fisher.test(${1:x}, ${2:y})\n\ +snippet chi\n\ + chisq.test(${1:x}, ${2:y})\n\ +snippet tt\n\ + t.test(${1:x}, ${2:y})\n\ +snippet wil\n\ + wilcox.test(${1:x}, ${2:y})\n\ +snippet cor\n\ + cor.test(${1:x}, ${2:y})\n\ +snippet fte\n\ + var.test(${1:x}, ${2:y})\n\ +snippet kvt \n\ + kv.test(${1:x}, ${2:y})\n\ +"; +exports.scope = "r"; + +}); diff --git a/public/ace_editor/snippets/rdoc.js b/public/ace_editor/snippets/rdoc.js new file mode 100755 index 0000000..6cc1df9 --- /dev/null +++ b/public/ace_editor/snippets/rdoc.js @@ -0,0 +1,7 @@ +ace.define('ace/snippets/rdoc', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.snippetText = ""; +exports.scope = "rdoc"; + +}); diff --git a/public/ace_editor/snippets/rhtml.js b/public/ace_editor/snippets/rhtml.js new file mode 100755 index 0000000..3323ea6 --- /dev/null +++ b/public/ace_editor/snippets/rhtml.js @@ -0,0 +1,7 @@ +ace.define('ace/snippets/rhtml', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.snippetText = ""; +exports.scope = "rhtml"; + +}); diff --git a/public/ace_editor/snippets/ruby.js b/public/ace_editor/snippets/ruby.js new file mode 100755 index 0000000..3fc0dc5 --- /dev/null +++ b/public/ace_editor/snippets/ruby.js @@ -0,0 +1,935 @@ +ace.define('ace/snippets/ruby', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.snippetText = "########################################\n\ +# Ruby snippets - for Rails, see below #\n\ +########################################\n\ +\n\ +# encoding for Ruby 1.9\n\ +snippet enc\n\ + # encoding: utf-8\n\ +\n\ +# #!/usr/bin/env ruby\n\ +snippet #!\n\ + #!/usr/bin/env ruby\n\ + # encoding: utf-8\n\ +\n\ +# New Block\n\ +snippet =b\n\ + =begin rdoc\n\ + ${1}\n\ + =end\n\ +snippet y\n\ + :yields: ${1:arguments}\n\ +snippet rb\n\ + #!/usr/bin/env ruby -wKU\n\ +snippet beg\n\ + begin\n\ + ${3}\n\ + rescue ${1:Exception} => ${2:e}\n\ + end\n\ +\n\ +snippet req require\n\ + require \"${1}\"${2}\n\ +snippet #\n\ + # =>\n\ +snippet end\n\ + __END__\n\ +snippet case\n\ + case ${1:object}\n\ + when ${2:condition}\n\ + ${3}\n\ + end\n\ +snippet when\n\ + when ${1:condition}\n\ + ${2}\n\ +snippet def\n\ + def ${1:method_name}\n\ + ${2}\n\ + end\n\ +snippet deft\n\ + def test_${1:case_name}\n\ + ${2}\n\ + end\n\ +snippet if\n\ + if ${1:condition}\n\ + ${2}\n\ + end\n\ +snippet ife\n\ + if ${1:condition}\n\ + ${2}\n\ + else\n\ + ${3}\n\ + end\n\ +snippet elsif\n\ + elsif ${1:condition}\n\ + ${2}\n\ +snippet unless\n\ + unless ${1:condition}\n\ + ${2}\n\ + end\n\ +snippet while\n\ + while ${1:condition}\n\ + ${2}\n\ + end\n\ +snippet for\n\ + for ${1:e} in ${2:c}\n\ + ${3}\n\ + end\n\ +snippet until\n\ + until ${1:condition}\n\ + ${2}\n\ + end\n\ +snippet cla class .. end\n\ + class ${1:`substitute(Filename(), '\\(_\\|^\\)\\(.\\)', '\\u\\2', 'g')`}\n\ + ${2}\n\ + end\n\ +snippet cla class .. initialize .. end\n\ + class ${1:`substitute(Filename(), '\\(_\\|^\\)\\(.\\)', '\\u\\2', 'g')`}\n\ + def initialize(${2:args})\n\ + ${3}\n\ + end\n\ + end\n\ +snippet cla class .. < ParentClass .. initialize .. end\n\ + class ${1:`substitute(Filename(), '\\(_\\|^\\)\\(.\\)', '\\u\\2', 'g')`} < ${2:ParentClass}\n\ + def initialize(${3:args})\n\ + ${4}\n\ + end\n\ + end\n\ +snippet cla ClassName = Struct .. do .. end\n\ + ${1:`substitute(Filename(), '\\(_\\|^\\)\\(.\\)', '\\u\\2', 'g')`} = Struct.new(:${2:attr_names}) do\n\ + def ${3:method_name}\n\ + ${4}\n\ + end\n\ + end\n\ +snippet cla class BlankSlate .. initialize .. end\n\ + class ${1:BlankSlate}\n\ + instance_methods.each { |meth| undef_method(meth) unless meth =~ /\\A__/ }\n\ + end\n\ +snippet cla class << self .. end\n\ + class << ${1:self}\n\ + ${2}\n\ + end\n\ +# class .. < DelegateClass .. initialize .. end\n\ +snippet cla-\n\ + class ${1:`substitute(Filename(), '\\(_\\|^\\)\\(.\\)', '\\u\\2', 'g')`} < DelegateClass(${2:ParentClass})\n\ + def initialize(${3:args})\n\ + super(${4:del_obj})\n\ +\n\ + ${5}\n\ + end\n\ + end\n\ +snippet mod module .. end\n\ + module ${1:`substitute(Filename(), '\\(_\\|^\\)\\(.\\)', '\\u\\2', 'g')`}\n\ + ${2}\n\ + end\n\ +snippet mod module .. module_function .. end\n\ + module ${1:`substitute(Filename(), '\\(_\\|^\\)\\(.\\)', '\\u\\2', 'g')`}\n\ + module_function\n\ +\n\ + ${2}\n\ + end\n\ +snippet mod module .. ClassMethods .. end\n\ + module ${1:`substitute(Filename(), '\\(_\\|^\\)\\(.\\)', '\\u\\2', 'g')`}\n\ + module ClassMethods\n\ + ${2}\n\ + end\n\ +\n\ + module InstanceMethods\n\ +\n\ + end\n\ +\n\ + def self.included(receiver)\n\ + receiver.extend ClassMethods\n\ + receiver.send :include, InstanceMethods\n\ + end\n\ + end\n\ +# attr_reader\n\ +snippet r\n\ + attr_reader :${1:attr_names}\n\ +# attr_writer\n\ +snippet w\n\ + attr_writer :${1:attr_names}\n\ +# attr_accessor\n\ +snippet rw\n\ + attr_accessor :${1:attr_names}\n\ +snippet atp\n\ + attr_protected :${1:attr_names}\n\ +snippet ata\n\ + attr_accessible :${1:attr_names}\n\ +# include Enumerable\n\ +snippet Enum\n\ + include Enumerable\n\ +\n\ + def each(&block)\n\ + ${1}\n\ + end\n\ +# include Comparable\n\ +snippet Comp\n\ + include Comparable\n\ +\n\ + def <=>(other)\n\ + ${1}\n\ + end\n\ +# extend Forwardable\n\ +snippet Forw-\n\ + extend Forwardable\n\ +# def self\n\ +snippet defs\n\ + def self.${1:class_method_name}\n\ + ${2}\n\ + end\n\ +# def method_missing\n\ +snippet defmm\n\ + def method_missing(meth, *args, &blk)\n\ + ${1}\n\ + end\n\ +snippet defd\n\ + def_delegator :${1:@del_obj}, :${2:del_meth}, :${3:new_name}\n\ +snippet defds\n\ + def_delegators :${1:@del_obj}, :${2:del_methods}\n\ +snippet am\n\ + alias_method :${1:new_name}, :${2:old_name}\n\ +snippet app\n\ + if __FILE__ == $PROGRAM_NAME\n\ + ${1}\n\ + end\n\ +# usage_if()\n\ +snippet usai\n\ + if ARGV.${1}\n\ + abort \"Usage: #{$PROGRAM_NAME} ${2:ARGS_GO_HERE}\"${3}\n\ + end\n\ +# usage_unless()\n\ +snippet usau\n\ + unless ARGV.${1}\n\ + abort \"Usage: #{$PROGRAM_NAME} ${2:ARGS_GO_HERE}\"${3}\n\ + end\n\ +snippet array\n\ + Array.new(${1:10}) { |${2:i}| ${3} }\n\ +snippet hash\n\ + Hash.new { |${1:hash}, ${2:key}| $1[$2] = ${3} }\n\ +snippet file File.foreach() { |line| .. }\n\ + File.foreach(${1:\"path/to/file\"}) { |${2:line}| ${3} }\n\ +snippet file File.read()\n\ + File.read(${1:\"path/to/file\"})${2}\n\ +snippet Dir Dir.global() { |file| .. }\n\ + Dir.glob(${1:\"dir/glob/*\"}) { |${2:file}| ${3} }\n\ +snippet Dir Dir[\"..\"]\n\ + Dir[${1:\"glob/**/*.rb\"}]${2}\n\ +snippet dir\n\ + Filename.dirname(__FILE__)\n\ +snippet deli\n\ + delete_if { |${1:e}| ${2} }\n\ +snippet fil\n\ + fill(${1:range}) { |${2:i}| ${3} }\n\ +# flatten_once()\n\ +snippet flao\n\ + inject(Array.new) { |${1:arr}, ${2:a}| $1.push(*$2)}${3}\n\ +snippet zip\n\ + zip(${1:enums}) { |${2:row}| ${3} }\n\ +# downto(0) { |n| .. }\n\ +snippet dow\n\ + downto(${1:0}) { |${2:n}| ${3} }\n\ +snippet ste\n\ + step(${1:2}) { |${2:n}| ${3} }\n\ +snippet tim\n\ + times { |${1:n}| ${2} }\n\ +snippet upt\n\ + upto(${1:1.0/0.0}) { |${2:n}| ${3} }\n\ +snippet loo\n\ + loop { ${1} }\n\ +snippet ea\n\ + each { |${1:e}| ${2} }\n\ +snippet ead\n\ + each do |${1:e}|\n\ + ${2}\n\ + end\n\ +snippet eab\n\ + each_byte { |${1:byte}| ${2} }\n\ +snippet eac- each_char { |chr| .. }\n\ + each_char { |${1:chr}| ${2} }\n\ +snippet eac- each_cons(..) { |group| .. }\n\ + each_cons(${1:2}) { |${2:group}| ${3} }\n\ +snippet eai\n\ + each_index { |${1:i}| ${2} }\n\ +snippet eaid\n\ + each_index do |${1:i}|\n\ + ${2}\n\ + end\n\ +snippet eak\n\ + each_key { |${1:key}| ${2} }\n\ +snippet eakd\n\ + each_key do |${1:key}|\n\ + ${2}\n\ + end\n\ +snippet eal\n\ + each_line { |${1:line}| ${2} }\n\ +snippet eald\n\ + each_line do |${1:line}|\n\ + ${2}\n\ + end\n\ +snippet eap\n\ + each_pair { |${1:name}, ${2:val}| ${3} }\n\ +snippet eapd\n\ + each_pair do |${1:name}, ${2:val}|\n\ + ${3}\n\ + end\n\ +snippet eas-\n\ + each_slice(${1:2}) { |${2:group}| ${3} }\n\ +snippet easd-\n\ + each_slice(${1:2}) do |${2:group}|\n\ + ${3}\n\ + end\n\ +snippet eav\n\ + each_value { |${1:val}| ${2} }\n\ +snippet eavd\n\ + each_value do |${1:val}|\n\ + ${2}\n\ + end\n\ +snippet eawi\n\ + each_with_index { |${1:e}, ${2:i}| ${3} }\n\ +snippet eawid\n\ + each_with_index do |${1:e},${2:i}|\n\ + ${3}\n\ + end\n\ +snippet reve\n\ + reverse_each { |${1:e}| ${2} }\n\ +snippet reved\n\ + reverse_each do |${1:e}|\n\ + ${2}\n\ + end\n\ +snippet inj\n\ + inject(${1:init}) { |${2:mem}, ${3:var}| ${4} }\n\ +snippet injd\n\ + inject(${1:init}) do |${2:mem}, ${3:var}|\n\ + ${4}\n\ + end\n\ +snippet map\n\ + map { |${1:e}| ${2} }\n\ +snippet mapd\n\ + map do |${1:e}|\n\ + ${2}\n\ + end\n\ +snippet mapwi-\n\ + enum_with_index.map { |${1:e}, ${2:i}| ${3} }\n\ +snippet sor\n\ + sort { |a, b| ${1} }\n\ +snippet sorb\n\ + sort_by { |${1:e}| ${2} }\n\ +snippet ran\n\ + sort_by { rand }\n\ +snippet all\n\ + all? { |${1:e}| ${2} }\n\ +snippet any\n\ + any? { |${1:e}| ${2} }\n\ +snippet cl\n\ + classify { |${1:e}| ${2} }\n\ +snippet col\n\ + collect { |${1:e}| ${2} }\n\ +snippet cold\n\ + collect do |${1:e}|\n\ + ${2}\n\ + end\n\ +snippet det\n\ + detect { |${1:e}| ${2} }\n\ +snippet detd\n\ + detect do |${1:e}|\n\ + ${2}\n\ + end\n\ +snippet fet\n\ + fetch(${1:name}) { |${2:key}| ${3} }\n\ +snippet fin\n\ + find { |${1:e}| ${2} }\n\ +snippet find\n\ + find do |${1:e}|\n\ + ${2}\n\ + end\n\ +snippet fina\n\ + find_all { |${1:e}| ${2} }\n\ +snippet finad\n\ + find_all do |${1:e}|\n\ + ${2}\n\ + end\n\ +snippet gre\n\ + grep(${1:/pattern/}) { |${2:match}| ${3} }\n\ +snippet sub\n\ + ${1:g}sub(${2:/pattern/}) { |${3:match}| ${4} }\n\ +snippet sca\n\ + scan(${1:/pattern/}) { |${2:match}| ${3} }\n\ +snippet scad\n\ + scan(${1:/pattern/}) do |${2:match}|\n\ + ${3}\n\ + end\n\ +snippet max\n\ + max { |a, b| ${1} }\n\ +snippet min\n\ + min { |a, b| ${1} }\n\ +snippet par\n\ + partition { |${1:e}| ${2} }\n\ +snippet pard\n\ + partition do |${1:e}|\n\ + ${2}\n\ + end\n\ +snippet rej\n\ + reject { |${1:e}| ${2} }\n\ +snippet rejd\n\ + reject do |${1:e}|\n\ + ${2}\n\ + end\n\ +snippet sel\n\ + select { |${1:e}| ${2} }\n\ +snippet seld\n\ + select do |${1:e}|\n\ + ${2}\n\ + end\n\ +snippet lam\n\ + lambda { |${1:args}| ${2} }\n\ +snippet doo\n\ + do\n\ + ${1}\n\ + end\n\ +snippet dov\n\ + do |${1:variable}|\n\ + ${2}\n\ + end\n\ +snippet :\n\ + :${1:key} => ${2:\"value\"}${3}\n\ +snippet ope\n\ + open(${1:\"path/or/url/or/pipe\"}, \"${2:w}\") { |${3:io}| ${4} }\n\ +# path_from_here()\n\ +snippet fpath\n\ + File.join(File.dirname(__FILE__), *%2[${1:rel path here}])${2}\n\ +# unix_filter {}\n\ +snippet unif\n\ + ARGF.each_line${1} do |${2:line}|\n\ + ${3}\n\ + end\n\ +# option_parse {}\n\ +snippet optp\n\ + require \"optparse\"\n\ +\n\ + options = {${1:default => \"args\"}}\n\ +\n\ + ARGV.options do |opts|\n\ + opts.banner = \"Usage: #{File.basename($PROGRAM_NAME)}\n\ +snippet opt\n\ + opts.on( \"-${1:o}\", \"--${2:long-option-name}\", ${3:String},\n\ + \"${4:Option description.}\") do |${5:opt}|\n\ + ${6}\n\ + end\n\ +snippet tc\n\ + require \"test/unit\"\n\ +\n\ + require \"${1:library_file_name}\"\n\ +\n\ + class Test${2:$1} < Test::Unit::TestCase\n\ + def test_${3:case_name}\n\ + ${4}\n\ + end\n\ + end\n\ +snippet ts\n\ + require \"test/unit\"\n\ +\n\ + require \"tc_${1:test_case_file}\"\n\ + require \"tc_${2:test_case_file}\"${3}\n\ +snippet as\n\ + assert ${1:test}, \"${2:Failure message.}\"${3}\n\ +snippet ase\n\ + assert_equal ${1:expected}, ${2:actual}${3}\n\ +snippet asne\n\ + assert_not_equal ${1:unexpected}, ${2:actual}${3}\n\ +snippet asid\n\ + assert_in_delta ${1:expected_float}, ${2:actual_float}, ${3:2 ** -20}${4}\n\ +snippet asio\n\ + assert_instance_of ${1:ExpectedClass}, ${2:actual_instance}${3}\n\ +snippet asko\n\ + assert_kind_of ${1:ExpectedKind}, ${2:actual_instance}${3}\n\ +snippet asn\n\ + assert_nil ${1:instance}${2}\n\ +snippet asnn\n\ + assert_not_nil ${1:instance}${2}\n\ +snippet asm\n\ + assert_match /${1:expected_pattern}/, ${2:actual_string}${3}\n\ +snippet asnm\n\ + assert_no_match /${1:unexpected_pattern}/, ${2:actual_string}${3}\n\ +snippet aso\n\ + assert_operator ${1:left}, :${2:operator}, ${3:right}${4}\n\ +snippet asr\n\ + assert_raise ${1:Exception} { ${2} }\n\ +snippet asrd\n\ + assert_raise ${1:Exception} do\n\ + ${2}\n\ + end\n\ +snippet asnr\n\ + assert_nothing_raised ${1:Exception} { ${2} }\n\ +snippet asnrd\n\ + assert_nothing_raised ${1:Exception} do\n\ + ${2}\n\ + end\n\ +snippet asrt\n\ + assert_respond_to ${1:object}, :${2:method}${3}\n\ +snippet ass assert_same(..)\n\ + assert_same ${1:expected}, ${2:actual}${3}\n\ +snippet ass assert_send(..)\n\ + assert_send [${1:object}, :${2:message}, ${3:args}]${4}\n\ +snippet asns\n\ + assert_not_same ${1:unexpected}, ${2:actual}${3}\n\ +snippet ast\n\ + assert_throws :${1:expected} { ${2} }\n\ +snippet astd\n\ + assert_throws :${1:expected} do\n\ + ${2}\n\ + end\n\ +snippet asnt\n\ + assert_nothing_thrown { ${1} }\n\ +snippet asntd\n\ + assert_nothing_thrown do\n\ + ${1}\n\ + end\n\ +snippet fl\n\ + flunk \"${1:Failure message.}\"${2}\n\ +# Benchmark.bmbm do .. end\n\ +snippet bm-\n\ + TESTS = ${1:10_000}\n\ + Benchmark.bmbm do |results|\n\ + ${2}\n\ + end\n\ +snippet rep\n\ + results.report(\"${1:name}:\") { TESTS.times { ${2} }}\n\ +# Marshal.dump(.., file)\n\ +snippet Md\n\ + File.open(${1:\"path/to/file.dump\"}, \"wb\") { |${2:file}| Marshal.dump(${3:obj}, $2) }${4}\n\ +# Mashal.load(obj)\n\ +snippet Ml\n\ + File.open(${1:\"path/to/file.dump\"}, \"rb\") { |${2:file}| Marshal.load($2) }${3}\n\ +# deep_copy(..)\n\ +snippet deec\n\ + Marshal.load(Marshal.dump(${1:obj_to_copy}))${2}\n\ +snippet Pn-\n\ + PStore.new(${1:\"file_name.pstore\"})${2}\n\ +snippet tra\n\ + transaction(${1:true}) { ${2} }\n\ +# xmlread(..)\n\ +snippet xml-\n\ + REXML::Document.new(File.read(${1:\"path/to/file\"}))${2}\n\ +# xpath(..) { .. }\n\ +snippet xpa\n\ + elements.each(${1:\"//Xpath\"}) do |${2:node}|\n\ + ${3}\n\ + end\n\ +# class_from_name()\n\ +snippet clafn\n\ + split(\"::\").inject(Object) { |par, const| par.const_get(const) }\n\ +# singleton_class()\n\ +snippet sinc\n\ + class << self; self end\n\ +snippet nam\n\ + namespace :${1:`Filename()`} do\n\ + ${2}\n\ + end\n\ +snippet tas\n\ + desc \"${1:Task description}\"\n\ + task :${2:task_name => [:dependent, :tasks]} do\n\ + ${3}\n\ + end\n\ +# block\n\ +snippet b\n\ + { |${1:var}| ${2} }\n\ +snippet begin\n\ + begin\n\ + raise 'A test exception.'\n\ + rescue Exception => e\n\ + puts e.message\n\ + puts e.backtrace.inspect\n\ + else\n\ + # other exception\n\ + ensure\n\ + # always executed\n\ + end\n\ +\n\ +#debugging\n\ +snippet debug\n\ + require 'ruby-debug'; debugger; true;\n\ +snippet pry\n\ + require 'pry'; binding.pry\n\ +\n\ +#############################################\n\ +# Rails snippets - for pure Ruby, see above #\n\ +#############################################\n\ +snippet art\n\ + assert_redirected_to ${1::action => \"${2:index}\"}\n\ +snippet artnp\n\ + assert_redirected_to ${1:parent}_${2:child}_path(${3:@$1}, ${4:@$2})\n\ +snippet artnpp\n\ + assert_redirected_to ${1:parent}_${2:child}_path(${3:@$1})\n\ +snippet artp\n\ + assert_redirected_to ${1:model}_path(${2:@$1})\n\ +snippet artpp\n\ + assert_redirected_to ${1:model}s_path\n\ +snippet asd\n\ + assert_difference \"${1:Model}.${2:count}\", $1 do\n\ + ${3}\n\ + end\n\ +snippet asnd\n\ + assert_no_difference \"${1:Model}.${2:count}\" do\n\ + ${3}\n\ + end\n\ +snippet asre\n\ + assert_response :${1:success}, @response.body${2}\n\ +snippet asrj\n\ + assert_rjs :${1:replace}, \"${2:dom id}\"\n\ +snippet ass assert_select(..)\n\ + assert_select '${1:path}', :${2:text} => '${3:inner_html' ${4:do}\n\ +snippet bf\n\ + before_filter :${1:method}\n\ +snippet bt\n\ + belongs_to :${1:association}\n\ +snippet crw\n\ + cattr_accessor :${1:attr_names}\n\ +snippet defcreate\n\ + def create\n\ + @${1:model_class_name} = ${2:ModelClassName}.new(params[:$1])\n\ +\n\ + respond_to do |wants|\n\ + if @$1.save\n\ + flash[:notice] = '$2 was successfully created.'\n\ + wants.html { redirect_to(@$1) }\n\ + wants.xml { render :xml => @$1, :status => :created, :location => @$1 }\n\ + else\n\ + wants.html { render :action => \"new\" }\n\ + wants.xml { render :xml => @$1.errors, :status => :unprocessable_entity }\n\ + end\n\ + end\n\ + end${3}\n\ +snippet defdestroy\n\ + def destroy\n\ + @${1:model_class_name} = ${2:ModelClassName}.find(params[:id])\n\ + @$1.destroy\n\ +\n\ + respond_to do |wants|\n\ + wants.html { redirect_to($1s_url) }\n\ + wants.xml { head :ok }\n\ + end\n\ + end${3}\n\ +snippet defedit\n\ + def edit\n\ + @${1:model_class_name} = ${2:ModelClassName}.find(params[:id])\n\ + end\n\ +snippet defindex\n\ + def index\n\ + @${1:model_class_name} = ${2:ModelClassName}.all\n\ +\n\ + respond_to do |wants|\n\ + wants.html # index.html.erb\n\ + wants.xml { render :xml => @$1s }\n\ + end\n\ + end${3}\n\ +snippet defnew\n\ + def new\n\ + @${1:model_class_name} = ${2:ModelClassName}.new\n\ +\n\ + respond_to do |wants|\n\ + wants.html # new.html.erb\n\ + wants.xml { render :xml => @$1 }\n\ + end\n\ + end${3}\n\ +snippet defshow\n\ + def show\n\ + @${1:model_class_name} = ${2:ModelClassName}.find(params[:id])\n\ +\n\ + respond_to do |wants|\n\ + wants.html # show.html.erb\n\ + wants.xml { render :xml => @$1 }\n\ + end\n\ + end${3}\n\ +snippet defupdate\n\ + def update\n\ + @${1:model_class_name} = ${2:ModelClassName}.find(params[:id])\n\ +\n\ + respond_to do |wants|\n\ + if @$1.update_attributes(params[:$1])\n\ + flash[:notice] = '$2 was successfully updated.'\n\ + wants.html { redirect_to(@$1) }\n\ + wants.xml { head :ok }\n\ + else\n\ + wants.html { render :action => \"edit\" }\n\ + wants.xml { render :xml => @$1.errors, :status => :unprocessable_entity }\n\ + end\n\ + end\n\ + end${3}\n\ +snippet flash\n\ + flash[:${1:notice}] = \"${2}\"\n\ +snippet habtm\n\ + has_and_belongs_to_many :${1:object}, :join_table => \"${2:table_name}\", :foreign_key => \"${3}_id\"${4}\n\ +snippet hm\n\ + has_many :${1:object}\n\ +snippet hmd\n\ + has_many :${1:other}s, :class_name => \"${2:$1}\", :foreign_key => \"${3:$1}_id\", :dependent => :destroy${4}\n\ +snippet hmt\n\ + has_many :${1:object}, :through => :${2:object}\n\ +snippet ho\n\ + has_one :${1:object}\n\ +snippet i18\n\ + I18n.t('${1:type.key}')${2}\n\ +snippet ist\n\ + <%= image_submit_tag(\"${1:agree.png}\", :id => \"${2:id}\"${3} %>\n\ +snippet log\n\ + Rails.logger.${1:debug} ${2}\n\ +snippet log2\n\ + RAILS_DEFAULT_LOGGER.${1:debug} ${2}\n\ +snippet logd\n\ + logger.debug { \"${1:message}\" }${2}\n\ +snippet loge\n\ + logger.error { \"${1:message}\" }${2}\n\ +snippet logf\n\ + logger.fatal { \"${1:message}\" }${2}\n\ +snippet logi\n\ + logger.info { \"${1:message}\" }${2}\n\ +snippet logw\n\ + logger.warn { \"${1:message}\" }${2}\n\ +snippet mapc\n\ + ${1:map}.${2:connect} '${3:controller/:action/:id}'\n\ +snippet mapca\n\ + ${1:map}.catch_all \"*${2:anything}\", :controller => \"${3:default}\", :action => \"${4:error}\"${5}\n\ +snippet mapr\n\ + ${1:map}.resource :${2:resource}\n\ +snippet maprs\n\ + ${1:map}.resources :${2:resource}\n\ +snippet mapwo\n\ + ${1:map}.with_options :${2:controller} => '${3:thing}' do |$3|\n\ + ${4}\n\ + end\n\ +snippet mbs\n\ + before_save :${1:method}\n\ +snippet mcht\n\ + change_table :${1:table_name} do |t|\n\ + ${2}\n\ + end\n\ +snippet mp\n\ + map(&:${1:id})\n\ +snippet mrw\n\ + mattr_accessor :${1:attr_names}\n\ +snippet oa\n\ + order(\"${1:field}\")\n\ +snippet od\n\ + order(\"${1:field} DESC\")\n\ +snippet pa\n\ + params[:${1:id}]${2}\n\ +snippet ra\n\ + render :action => \"${1:action}\"\n\ +snippet ral\n\ + render :action => \"${1:action}\", :layout => \"${2:layoutname}\"\n\ +snippet rest\n\ + respond_to do |wants|\n\ + wants.${1:html} { ${2} }\n\ + end\n\ +snippet rf\n\ + render :file => \"${1:filepath}\"\n\ +snippet rfu\n\ + render :file => \"${1:filepath}\", :use_full_path => ${2:false}\n\ +snippet ri\n\ + render :inline => \"${1:<%= 'hello' %>}\"\n\ +snippet ril\n\ + render :inline => \"${1:<%= 'hello' %>}\", :locals => { ${2::name} => \"${3:value}\"${4} }\n\ +snippet rit\n\ + render :inline => \"${1:<%= 'hello' %>}\", :type => ${2::rxml}\n\ +snippet rjson\n\ + render :json => ${1:text to render}\n\ +snippet rl\n\ + render :layout => \"${1:layoutname}\"\n\ +snippet rn\n\ + render :nothing => ${1:true}\n\ +snippet rns\n\ + render :nothing => ${1:true}, :status => ${2:401}\n\ +snippet rp\n\ + render :partial => \"${1:item}\"\n\ +snippet rpc\n\ + render :partial => \"${1:item}\", :collection => ${2:@$1s}\n\ +snippet rpl\n\ + render :partial => \"${1:item}\", :locals => { :${2:$1} => ${3:@$1}\n\ +snippet rpo\n\ + render :partial => \"${1:item}\", :object => ${2:@$1}\n\ +snippet rps\n\ + render :partial => \"${1:item}\", :status => ${2:500}\n\ +snippet rt\n\ + render :text => \"${1:text to render}\"\n\ +snippet rtl\n\ + render :text => \"${1:text to render}\", :layout => \"${2:layoutname}\"\n\ +snippet rtlt\n\ + render :text => \"${1:text to render}\", :layout => ${2:true}\n\ +snippet rts\n\ + render :text => \"${1:text to render}\", :status => ${2:401}\n\ +snippet ru\n\ + render :update do |${1:page}|\n\ + $1.${2}\n\ + end\n\ +snippet rxml\n\ + render :xml => ${1:text to render}\n\ +snippet sc\n\ + scope :${1:name}, :where(:@${2:field} => ${3:value})\n\ +snippet sl\n\ + scope :${1:name}, lambda do |${2:value}|\n\ + where(\"${3:field = ?}\", ${4:bind var})\n\ + end\n\ +snippet sha1\n\ + Digest::SHA1.hexdigest(${1:string})\n\ +snippet sweeper\n\ + class ${1:ModelClassName}Sweeper < ActionController::Caching::Sweeper\n\ + observe $1\n\ +\n\ + def after_save(${2:model_class_name})\n\ + expire_cache($2)\n\ + end\n\ +\n\ + def after_destroy($2)\n\ + expire_cache($2)\n\ + end\n\ +\n\ + def expire_cache($2)\n\ + expire_page\n\ + end\n\ + end\n\ +snippet tcb\n\ + t.boolean :${1:title}\n\ + ${2}\n\ +snippet tcbi\n\ + t.binary :${1:title}, :limit => ${2:2}.megabytes\n\ + ${3}\n\ +snippet tcd\n\ + t.decimal :${1:title}, :precision => ${2:10}, :scale => ${3:2}\n\ + ${4}\n\ +snippet tcda\n\ + t.date :${1:title}\n\ + ${2}\n\ +snippet tcdt\n\ + t.datetime :${1:title}\n\ + ${2}\n\ +snippet tcf\n\ + t.float :${1:title}\n\ + ${2}\n\ +snippet tch\n\ + t.change :${1:name}, :${2:string}, :${3:limit} => ${4:80}\n\ + ${5}\n\ +snippet tci\n\ + t.integer :${1:title}\n\ + ${2}\n\ +snippet tcl\n\ + t.integer :lock_version, :null => false, :default => 0\n\ + ${1}\n\ +snippet tcr\n\ + t.references :${1:taggable}, :polymorphic => { :default => '${2:Photo}' }\n\ + ${3}\n\ +snippet tcs\n\ + t.string :${1:title}\n\ + ${2}\n\ +snippet tct\n\ + t.text :${1:title}\n\ + ${2}\n\ +snippet tcti\n\ + t.time :${1:title}\n\ + ${2}\n\ +snippet tcts\n\ + t.timestamp :${1:title}\n\ + ${2}\n\ +snippet tctss\n\ + t.timestamps\n\ + ${1}\n\ +snippet va\n\ + validates_associated :${1:attribute}\n\ +snippet vao\n\ + validates_acceptance_of :${1:terms}\n\ +snippet vc\n\ + validates_confirmation_of :${1:attribute}\n\ +snippet ve\n\ + validates_exclusion_of :${1:attribute}, :in => ${2:%w( mov avi )}\n\ +snippet vf\n\ + validates_format_of :${1:attribute}, :with => /${2:regex}/\n\ +snippet vi\n\ + validates_inclusion_of :${1:attribute}, :in => %w(${2: mov avi })\n\ +snippet vl\n\ + validates_length_of :${1:attribute}, :within => ${2:3}..${3:20}\n\ +snippet vn\n\ + validates_numericality_of :${1:attribute}\n\ +snippet vpo\n\ + validates_presence_of :${1:attribute}\n\ +snippet vu\n\ + validates_uniqueness_of :${1:attribute}\n\ +snippet wants\n\ + wants.${1:js|xml|html} { ${2} }\n\ +snippet wc\n\ + where(${1:\"conditions\"}${2:, bind_var})\n\ +snippet wh\n\ + where(${1:field} => ${2:value})\n\ +snippet xdelete\n\ + xhr :delete, :${1:destroy}, :id => ${2:1}${3}\n\ +snippet xget\n\ + xhr :get, :${1:show}, :id => ${2:1}${3}\n\ +snippet xpost\n\ + xhr :post, :${1:create}, :${2:object} => { ${3} }\n\ +snippet xput\n\ + xhr :put, :${1:update}, :id => ${2:1}, :${3:object} => { ${4} }${5}\n\ +snippet test\n\ + test \"should ${1:do something}\" do\n\ + ${2}\n\ + end\n\ +#migrations\n\ +snippet mac\n\ + add_column :${1:table_name}, :${2:column_name}, :${3:data_type}\n\ +snippet mrc\n\ + remove_column :${1:table_name}, :${2:column_name}\n\ +snippet mrnc\n\ + rename_column :${1:table_name}, :${2:old_column_name}, :${3:new_column_name}\n\ +snippet mcc\n\ + change_column :${1:table}, :${2:column}, :${3:type}\n\ +snippet mccc\n\ + t.column :${1:title}, :${2:string}\n\ +snippet mct\n\ + create_table :${1:table_name} do |t|\n\ + t.column :${2:name}, :${3:type}\n\ + end\n\ +snippet migration\n\ + class ${1:class_name} < ActiveRecord::Migration\n\ + def self.up\n\ + ${2}\n\ + end\n\ +\n\ + def self.down\n\ + end\n\ + end\n\ +\n\ +snippet trc\n\ + t.remove :${1:column}\n\ +snippet tre\n\ + t.rename :${1:old_column_name}, :${2:new_column_name}\n\ + ${3}\n\ +snippet tref\n\ + t.references :${1:model}\n\ +\n\ +#rspec\n\ +snippet it\n\ + it \"${1:spec_name}\" do\n\ + ${2}\n\ + end\n\ +snippet itp\n\ + it \"${1:spec_name}\"\n\ + ${2}\n\ +snippet desc\n\ + describe ${1:class_name} do\n\ + ${2}\n\ + end\n\ +snippet cont\n\ + context \"${1:message}\" do\n\ + ${2}\n\ + end\n\ +snippet bef\n\ + before :${1:each} do\n\ + ${2}\n\ + end\n\ +snippet aft\n\ + after :${1:each} do\n\ + ${2}\n\ + end\n\ +"; +exports.scope = "ruby"; + +}); diff --git a/public/ace_editor/snippets/rust.js b/public/ace_editor/snippets/rust.js new file mode 100755 index 0000000..5936843 --- /dev/null +++ b/public/ace_editor/snippets/rust.js @@ -0,0 +1,7 @@ +ace.define('ace/snippets/rust', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.snippetText = ""; +exports.scope = "rust"; + +}); diff --git a/public/ace_editor/snippets/sass.js b/public/ace_editor/snippets/sass.js new file mode 100755 index 0000000..b17eb4d --- /dev/null +++ b/public/ace_editor/snippets/sass.js @@ -0,0 +1,7 @@ +ace.define('ace/snippets/sass', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.snippetText = ""; +exports.scope = "sass"; + +}); diff --git a/public/ace_editor/snippets/scad.js b/public/ace_editor/snippets/scad.js new file mode 100755 index 0000000..10aecfa --- /dev/null +++ b/public/ace_editor/snippets/scad.js @@ -0,0 +1,7 @@ +ace.define('ace/snippets/scad', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.snippetText = ""; +exports.scope = "scad"; + +}); diff --git a/public/ace_editor/snippets/scala.js b/public/ace_editor/snippets/scala.js new file mode 100755 index 0000000..e9f7d03 --- /dev/null +++ b/public/ace_editor/snippets/scala.js @@ -0,0 +1,7 @@ +ace.define('ace/snippets/scala', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.snippetText = ""; +exports.scope = "scala"; + +}); diff --git a/public/ace_editor/snippets/scheme.js b/public/ace_editor/snippets/scheme.js new file mode 100755 index 0000000..d275591 --- /dev/null +++ b/public/ace_editor/snippets/scheme.js @@ -0,0 +1,7 @@ +ace.define('ace/snippets/scheme', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.snippetText = ""; +exports.scope = "scheme"; + +}); diff --git a/public/ace_editor/snippets/scss.js b/public/ace_editor/snippets/scss.js new file mode 100755 index 0000000..14b77de --- /dev/null +++ b/public/ace_editor/snippets/scss.js @@ -0,0 +1,7 @@ +ace.define('ace/snippets/scss', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.snippetText = ""; +exports.scope = "scss"; + +}); diff --git a/public/ace_editor/snippets/sh.js b/public/ace_editor/snippets/sh.js new file mode 100755 index 0000000..d273296 --- /dev/null +++ b/public/ace_editor/snippets/sh.js @@ -0,0 +1,90 @@ +ace.define('ace/snippets/sh', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.snippetText = "# Shebang. Executing bash via /usr/bin/env makes scripts more portable.\n\ +snippet #!\n\ + #!/usr/bin/env bash\n\ + \n\ +snippet if\n\ + if [[ ${1:condition} ]]; then\n\ + ${2:#statements}\n\ + fi\n\ +snippet elif\n\ + elif [[ ${1:condition} ]]; then\n\ + ${2:#statements}\n\ +snippet for\n\ + for (( ${2:i} = 0; $2 < ${1:count}; $2++ )); do\n\ + ${3:#statements}\n\ + done\n\ +snippet fori\n\ + for ${1:needle} in ${2:haystack} ; do\n\ + ${3:#statements}\n\ + done\n\ +snippet wh\n\ + while [[ ${1:condition} ]]; do\n\ + ${2:#statements}\n\ + done\n\ +snippet until\n\ + until [[ ${1:condition} ]]; do\n\ + ${2:#statements}\n\ + done\n\ +snippet case\n\ + case ${1:word} in\n\ + ${2:pattern})\n\ + ${3};;\n\ + esac\n\ +snippet go \n\ + while getopts '${1:o}' ${2:opts} \n\ + do \n\ + case $$2 in\n\ + ${3:o0})\n\ + ${4:#staments};;\n\ + esac\n\ + done\n\ +# Set SCRIPT_DIR variable to directory script is located.\n\ +snippet sdir\n\ + SCRIPT_DIR=\"$( cd \"$( dirname \"${BASH_SOURCE[0]}\" )\" && pwd )\"\n\ +# getopt\n\ +snippet getopt\n\ + __ScriptVersion=\"${1:version}\"\n\ +\n\ + #=== FUNCTION ================================================================\n\ + # NAME: usage\n\ + # DESCRIPTION: Display usage information.\n\ + #===============================================================================\n\ + function usage ()\n\ + {\n\ + cat <<- EOT\n\ +\n\ + Usage : $${0:0} [options] [--] \n\ +\n\ + Options: \n\ + -h|help Display this message\n\ + -v|version Display script version\n\ +\n\ + EOT\n\ + } # ---------- end of function usage ----------\n\ +\n\ + #-----------------------------------------------------------------------\n\ + # Handle command line arguments\n\ + #-----------------------------------------------------------------------\n\ +\n\ + while getopts \":hv\" opt\n\ + do\n\ + case $opt in\n\ +\n\ + h|help ) usage; exit 0 ;;\n\ +\n\ + v|version ) echo \"$${0:0} -- Version $__ScriptVersion\"; exit 0 ;;\n\ +\n\ + \\? ) echo -e \"\\n Option does not exist : $OPTARG\\n\"\n\ + usage; exit 1 ;;\n\ +\n\ + esac # --- end of case ---\n\ + done\n\ + shift $(($OPTIND-1))\n\ +\n\ +"; +exports.scope = "sh"; + +}); diff --git a/public/ace_editor/snippets/sjs.js b/public/ace_editor/snippets/sjs.js new file mode 100755 index 0000000..6a03c5f --- /dev/null +++ b/public/ace_editor/snippets/sjs.js @@ -0,0 +1,7 @@ +ace.define('ace/snippets/sjs', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.snippetText = ""; +exports.scope = "sjs"; + +}); diff --git a/public/ace_editor/snippets/smarty.js b/public/ace_editor/snippets/smarty.js new file mode 100755 index 0000000..7c2e992 --- /dev/null +++ b/public/ace_editor/snippets/smarty.js @@ -0,0 +1,7 @@ +ace.define('ace/snippets/smarty', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.snippetText = ""; +exports.scope = "smarty"; + +}); diff --git a/public/ace_editor/snippets/snippets.js b/public/ace_editor/snippets/snippets.js new file mode 100755 index 0000000..feda922 --- /dev/null +++ b/public/ace_editor/snippets/snippets.js @@ -0,0 +1,16 @@ +ace.define('ace/snippets/snippets', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.snippetText = "# snippets for making snippets :)\n\ +snippet snip\n\ + snippet ${1:trigger}\n\ + ${2}\n\ +snippet msnip\n\ + snippet ${1:trigger} ${2:description}\n\ + ${3}\n\ +snippet v\n\ + {VISUAL}\n\ +"; +exports.scope = "snippets"; + +}); diff --git a/public/ace_editor/snippets/soy_template.js b/public/ace_editor/snippets/soy_template.js new file mode 100755 index 0000000..6545d9b --- /dev/null +++ b/public/ace_editor/snippets/soy_template.js @@ -0,0 +1,7 @@ +ace.define('ace/snippets/soy_template', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.snippetText = ""; +exports.scope = "soy_template"; + +}); diff --git a/public/ace_editor/snippets/space.js b/public/ace_editor/snippets/space.js new file mode 100755 index 0000000..712c842 --- /dev/null +++ b/public/ace_editor/snippets/space.js @@ -0,0 +1,7 @@ +ace.define('ace/snippets/space', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.snippetText = ""; +exports.scope = "space"; + +}); diff --git a/public/ace_editor/snippets/sql.js b/public/ace_editor/snippets/sql.js new file mode 100755 index 0000000..0e96ad8 --- /dev/null +++ b/public/ace_editor/snippets/sql.js @@ -0,0 +1,33 @@ +ace.define('ace/snippets/sql', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.snippetText = "snippet tbl\n\ + create table ${1:table} (\n\ + ${2:columns}\n\ + );\n\ +snippet col\n\ + ${1:name} ${2:type} ${3:default ''} ${4:not null}\n\ +snippet ccol\n\ + ${1:name} varchar2(${2:size}) ${3:default ''} ${4:not null}\n\ +snippet ncol\n\ + ${1:name} number ${3:default 0} ${4:not null}\n\ +snippet dcol\n\ + ${1:name} date ${3:default sysdate} ${4:not null}\n\ +snippet ind\n\ + create index ${3:$1_$2} on ${1:table}(${2:column});\n\ +snippet uind\n\ + create unique index ${1:name} on ${2:table}(${3:column});\n\ +snippet tblcom\n\ + comment on table ${1:table} is '${2:comment}';\n\ +snippet colcom\n\ + comment on column ${1:table}.${2:column} is '${3:comment}';\n\ +snippet addcol\n\ + alter table ${1:table} add (${2:column} ${3:type});\n\ +snippet seq\n\ + create sequence ${1:name} start with ${2:1} increment by ${3:1} minvalue ${4:1};\n\ +snippet s*\n\ + select * from ${1:table}\n\ +"; +exports.scope = "sql"; + +}); diff --git a/public/ace_editor/snippets/stylus.js b/public/ace_editor/snippets/stylus.js new file mode 100755 index 0000000..3369c4c --- /dev/null +++ b/public/ace_editor/snippets/stylus.js @@ -0,0 +1,7 @@ +ace.define('ace/snippets/stylus', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.snippetText = ""; +exports.scope = "stylus"; + +}); diff --git a/public/ace_editor/snippets/svg.js b/public/ace_editor/snippets/svg.js new file mode 100755 index 0000000..24ff8ed --- /dev/null +++ b/public/ace_editor/snippets/svg.js @@ -0,0 +1,7 @@ +ace.define('ace/snippets/svg', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.snippetText = ""; +exports.scope = "svg"; + +}); diff --git a/public/ace_editor/snippets/tcl.js b/public/ace_editor/snippets/tcl.js new file mode 100755 index 0000000..73f5c3e --- /dev/null +++ b/public/ace_editor/snippets/tcl.js @@ -0,0 +1,99 @@ +ace.define('ace/snippets/tcl', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.snippetText = "# #!/usr/bin/env tclsh\n\ +snippet #!\n\ + #!/usr/bin/env tclsh\n\ + \n\ +# Process\n\ +snippet pro\n\ + proc ${1:function_name} {${2:args}} {\n\ + ${3:#body ...}\n\ + }\n\ +#xif\n\ +snippet xif\n\ + ${1:expr}? ${2:true} : ${3:false}\n\ +# Conditional\n\ +snippet if\n\ + if {${1}} {\n\ + ${2:# body...}\n\ + }\n\ +# Conditional if..else\n\ +snippet ife\n\ + if {${1}} {\n\ + ${2:# body...}\n\ + } else {\n\ + ${3:# else...}\n\ + }\n\ +# Conditional if..elsif..else\n\ +snippet ifee\n\ + if {${1}} {\n\ + ${2:# body...}\n\ + } elseif {${3}} {\n\ + ${4:# elsif...}\n\ + } else {\n\ + ${5:# else...}\n\ + }\n\ +# If catch then\n\ +snippet ifc\n\ + if { [catch {${1:#do something...}} ${2:err}] } {\n\ + ${3:# handle failure...}\n\ + }\n\ +# Catch\n\ +snippet catch\n\ + catch {${1}} ${2:err} ${3:options}\n\ +# While Loop\n\ +snippet wh\n\ + while {${1}} {\n\ + ${2:# body...}\n\ + }\n\ +# For Loop\n\ +snippet for\n\ + for {set ${2:var} 0} {$$2 < ${1:count}} {${3:incr} $2} {\n\ + ${4:# body...}\n\ + }\n\ +# Foreach Loop\n\ +snippet fore\n\ + foreach ${1:x} {${2:#list}} {\n\ + ${3:# body...}\n\ + }\n\ +# after ms script...\n\ +snippet af\n\ + after ${1:ms} ${2:#do something}\n\ +# after cancel id\n\ +snippet afc\n\ + after cancel ${1:id or script}\n\ +# after idle\n\ +snippet afi\n\ + after idle ${1:script}\n\ +# after info id\n\ +snippet afin\n\ + after info ${1:id}\n\ +# Expr\n\ +snippet exp\n\ + expr {${1:#expression here}}\n\ +# Switch\n\ +snippet sw\n\ + switch ${1:var} {\n\ + ${3:pattern 1} {\n\ + ${4:#do something}\n\ + }\n\ + default {\n\ + ${2:#do something}\n\ + }\n\ + }\n\ +# Case\n\ +snippet ca\n\ + ${1:pattern} {\n\ + ${2:#do something}\n\ + }${3}\n\ +# Namespace eval\n\ +snippet ns\n\ + namespace eval ${1:path} {${2:#script...}}\n\ +# Namespace current\n\ +snippet nsc\n\ + namespace current\n\ +"; +exports.scope = "tcl"; + +}); diff --git a/public/ace_editor/snippets/tex.js b/public/ace_editor/snippets/tex.js new file mode 100755 index 0000000..30654ce --- /dev/null +++ b/public/ace_editor/snippets/tex.js @@ -0,0 +1,197 @@ +ace.define('ace/snippets/tex', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.snippetText = "#PREAMBLE\n\ +#newcommand\n\ +snippet nc\n\ + \\newcommand{\\${1:cmd}}[${2:opt}]{${3:realcmd}}${4}\n\ +#usepackage\n\ +snippet up\n\ + \\usepackage[${1:[options}]{${2:package}}\n\ +#newunicodechar\n\ +snippet nuc\n\ + \\newunicodechar{${1}}{${2:\\ensuremath}${3:tex-substitute}}}\n\ +#DeclareMathOperator\n\ +snippet dmo\n\ + \\DeclareMathOperator{${1}}{${2}}\n\ +\n\ +#DOCUMENT\n\ +# \\begin{}...\\end{}\n\ +snippet begin\n\ + \\begin{${1:env}}\n\ + ${2}\n\ + \\end{$1}\n\ +# Tabular\n\ +snippet tab\n\ + \\begin{${1:tabular}}{${2:c}}\n\ + ${3}\n\ + \\end{$1}\n\ +snippet thm\n\ + \\begin[${1:author}]{${2:thm}}\n\ + ${3}\n\ + \\end{$1}\n\ +snippet center\n\ + \\begin{center}\n\ + ${1}\n\ + \\end{center}\n\ +# Align(ed)\n\ +snippet ali\n\ + \\begin{align${1:ed}}\n\ + ${2}\n\ + \\end{align$1}\n\ +# Gather(ed)\n\ +snippet gat\n\ + \\begin{gather${1:ed}}\n\ + ${2}\n\ + \\end{gather$1}\n\ +# Equation\n\ +snippet eq\n\ + \\begin{equation}\n\ + ${1}\n\ + \\end{equation}\n\ +# Equation\n\ +snippet eq*\n\ + \\begin{equation*}\n\ + ${1}\n\ + \\end{equation*}\n\ +# Unnumbered Equation\n\ +snippet \\\n\ + \\[\n\ + ${1}\n\ + \\]\n\ +# Enumerate\n\ +snippet enum\n\ + \\begin{enumerate}\n\ + \\item ${1}\n\ + \\end{enumerate}\n\ +# Itemize\n\ +snippet itemize\n\ + \\begin{itemize}\n\ + \\item ${1}\n\ + \\end{itemize}\n\ +# Description\n\ +snippet desc\n\ + \\begin{description}\n\ + \\item[${1}] ${2}\n\ + \\end{description}\n\ +# Matrix\n\ +snippet mat\n\ + \\begin{${1:p/b/v/V/B/small}matrix}\n\ + ${2}\n\ + \\end{$1matrix}\n\ +# Cases\n\ +snippet cas\n\ + \\begin{cases}\n\ + ${1:equation}, &\\text{ if }${2:case}\\\\\n\ + ${3}\n\ + \\end{cases}\n\ +# Split\n\ +snippet spl\n\ + \\begin{split}\n\ + ${1}\n\ + \\end{split}\n\ +# Part\n\ +snippet part\n\ + \\part{${1:part name}} % (fold)\n\ + \\label{prt:${2:$1}}\n\ + ${3}\n\ + % part $2 (end)\n\ +# Chapter\n\ +snippet cha\n\ + \\chapter{${1:chapter name}}\n\ + \\label{cha:${2:$1}}\n\ + ${3}\n\ +# Section\n\ +snippet sec\n\ + \\section{${1:section name}}\n\ + \\label{sec:${2:$1}}\n\ + ${3}\n\ +# Sub Section\n\ +snippet sub\n\ + \\subsection{${1:subsection name}}\n\ + \\label{sub:${2:$1}}\n\ + ${3}\n\ +# Sub Sub Section\n\ +snippet subs\n\ + \\subsubsection{${1:subsubsection name}}\n\ + \\label{ssub:${2:$1}}\n\ + ${3}\n\ +# Paragraph\n\ +snippet par\n\ + \\paragraph{${1:paragraph name}}\n\ + \\label{par:${2:$1}}\n\ + ${3}\n\ +# Sub Paragraph\n\ +snippet subp\n\ + \\subparagraph{${1:subparagraph name}}\n\ + \\label{subp:${2:$1}}\n\ + ${3}\n\ +#References\n\ +snippet itd\n\ + \\item[${1:description}] ${2:item}\n\ +snippet figure\n\ + ${1:Figure}~\\ref{${2:fig:}}${3}\n\ +snippet table\n\ + ${1:Table}~\\ref{${2:tab:}}${3}\n\ +snippet listing\n\ + ${1:Listing}~\\ref{${2:list}}${3}\n\ +snippet section\n\ + ${1:Section}~\\ref{${2:sec:}}${3}\n\ +snippet page\n\ + ${1:page}~\\pageref{${2}}${3}\n\ +snippet index\n\ + \\index{${1:index}}${2}\n\ +#Citations\n\ +snippet cite\n\ + \\cite[${1}]{${2}}${3}\n\ +snippet fcite\n\ + \\footcite[${1}]{${2}}${3}\n\ +#Formating text: italic, bold, underline, small capital, emphase ..\n\ +snippet it\n\ + \\textit{${1:text}}\n\ +snippet bf\n\ + \\textbf{${1:text}}\n\ +snippet under\n\ + \\underline{${1:text}}\n\ +snippet emp\n\ + \\emph{${1:text}}\n\ +snippet sc\n\ + \\textsc{${1:text}}\n\ +#Choosing font\n\ +snippet sf\n\ + \\textsf{${1:text}}\n\ +snippet rm\n\ + \\textrm{${1:text}}\n\ +snippet tt\n\ + \\texttt{${1:text}}\n\ +#misc\n\ +snippet ft\n\ + \\footnote{${1:text}}\n\ +snippet fig\n\ + \\begin{figure}\n\ + \\begin{center}\n\ + \\includegraphics[scale=${1}]{Figures/${2}}\n\ + \\end{center}\n\ + \\caption{${3}}\n\ + \\label{fig:${4}}\n\ + \\end{figure}\n\ +snippet tikz\n\ + \\begin{figure}\n\ + \\begin{center}\n\ + \\begin{tikzpicture}[scale=${1:1}]\n\ + ${2}\n\ + \\end{tikzpicture}\n\ + \\end{center}\n\ + \\caption{${3}}\n\ + \\label{fig:${4}}\n\ + \\end{figure}\n\ +#math\n\ +snippet stackrel\n\ + \\stackrel{${1:above}}{${2:below}} ${3}\n\ +snippet frac\n\ + \\frac{${1:num}}{${2:denom}}\n\ +snippet sum\n\ + \\sum^{${1:n}}_{${2:i=1}}{${3}}"; +exports.scope = "tex"; + +}); diff --git a/public/ace_editor/snippets/text.js b/public/ace_editor/snippets/text.js new file mode 100755 index 0000000..0834cfc --- /dev/null +++ b/public/ace_editor/snippets/text.js @@ -0,0 +1,7 @@ +ace.define('ace/snippets/text', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.snippetText = ""; +exports.scope = "text"; + +}); diff --git a/public/ace_editor/snippets/textile.js b/public/ace_editor/snippets/textile.js new file mode 100755 index 0000000..0135d13 --- /dev/null +++ b/public/ace_editor/snippets/textile.js @@ -0,0 +1,37 @@ +ace.define('ace/snippets/textile', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.snippetText = "# Jekyll post header\n\ +snippet header\n\ + ---\n\ + title: ${1:title}\n\ + layout: post\n\ + date: ${2:date} ${3:hour:minute:second} -05:00\n\ + ---\n\ +\n\ +# Image\n\ +snippet img\n\ + !${1:url}(${2:title}):${3:link}!\n\ +\n\ +# Table\n\ +snippet |\n\ + |${1}|${2}\n\ +\n\ +# Link\n\ +snippet link\n\ + \"${1:link text}\":${2:url}\n\ +\n\ +# Acronym\n\ +snippet (\n\ + (${1:Expand acronym})${2}\n\ +\n\ +# Footnote\n\ +snippet fn\n\ + [${1:ref number}] ${3}\n\ +\n\ + fn$1. ${2:footnote}\n\ + \n\ +"; +exports.scope = "textile"; + +}); diff --git a/public/ace_editor/snippets/toml.js b/public/ace_editor/snippets/toml.js new file mode 100755 index 0000000..724bea9 --- /dev/null +++ b/public/ace_editor/snippets/toml.js @@ -0,0 +1,7 @@ +ace.define('ace/snippets/toml', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.snippetText = ""; +exports.scope = "toml"; + +}); diff --git a/public/ace_editor/snippets/twig.js b/public/ace_editor/snippets/twig.js new file mode 100755 index 0000000..0d8b680 --- /dev/null +++ b/public/ace_editor/snippets/twig.js @@ -0,0 +1,7 @@ +ace.define('ace/snippets/twig', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.snippetText = ""; +exports.scope = "twig"; + +}); diff --git a/public/ace_editor/snippets/typescript.js b/public/ace_editor/snippets/typescript.js new file mode 100755 index 0000000..0c0affd --- /dev/null +++ b/public/ace_editor/snippets/typescript.js @@ -0,0 +1,7 @@ +ace.define('ace/snippets/typescript', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.snippetText = ""; +exports.scope = "typescript"; + +}); diff --git a/public/ace_editor/snippets/vbscript.js b/public/ace_editor/snippets/vbscript.js new file mode 100755 index 0000000..c05c1f8 --- /dev/null +++ b/public/ace_editor/snippets/vbscript.js @@ -0,0 +1,7 @@ +ace.define('ace/snippets/vbscript', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.snippetText = ""; +exports.scope = "vbscript"; + +}); diff --git a/public/ace_editor/snippets/velocity.js b/public/ace_editor/snippets/velocity.js new file mode 100755 index 0000000..8eb848c --- /dev/null +++ b/public/ace_editor/snippets/velocity.js @@ -0,0 +1,36 @@ +ace.define('ace/snippets/velocity', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.snippetText = "# macro\n\ +snippet #macro\n\ + #macro ( ${1:macroName} ${2:\\$var1, [\\$var2, ...]} )\n\ + ${3:## macro code}\n\ + #end\n\ +# foreach\n\ +snippet #foreach\n\ + #foreach ( ${1:\\$item} in ${2:\\$collection} )\n\ + ${3:## foreach code}\n\ + #end\n\ +# if\n\ +snippet #if\n\ + #if ( ${1:true} )\n\ + ${0}\n\ + #end\n\ +# if ... else\n\ +snippet #ife\n\ + #if ( ${1:true} )\n\ + ${2}\n\ + #else\n\ + ${0}\n\ + #end\n\ +#import\n\ +snippet #import\n\ + #import ( \"${1:path/to/velocity/format}\" )\n\ +# set\n\ +snippet #set\n\ + #set ( $${1:var} = ${0} )\n\ +"; +exports.scope = "velocity"; +exports.includeScopes = ["html", "javascript", "css"]; + +}); diff --git a/public/ace_editor/snippets/verilog.js b/public/ace_editor/snippets/verilog.js new file mode 100755 index 0000000..ad123a3 --- /dev/null +++ b/public/ace_editor/snippets/verilog.js @@ -0,0 +1,7 @@ +ace.define('ace/snippets/verilog', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.snippetText = ""; +exports.scope = "verilog"; + +}); diff --git a/public/ace_editor/snippets/vhdl.js b/public/ace_editor/snippets/vhdl.js new file mode 100755 index 0000000..cf6994e --- /dev/null +++ b/public/ace_editor/snippets/vhdl.js @@ -0,0 +1,7 @@ +ace.define('ace/snippets/vhdl', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.snippetText = ""; +exports.scope = "vhdl"; + +}); \ No newline at end of file diff --git a/public/ace_editor/snippets/xml.js b/public/ace_editor/snippets/xml.js new file mode 100755 index 0000000..d26f8fd --- /dev/null +++ b/public/ace_editor/snippets/xml.js @@ -0,0 +1,7 @@ +ace.define('ace/snippets/xml', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.snippetText = ""; +exports.scope = "xml"; + +}); diff --git a/public/ace_editor/snippets/xquery.js b/public/ace_editor/snippets/xquery.js new file mode 100755 index 0000000..7ceddf8 --- /dev/null +++ b/public/ace_editor/snippets/xquery.js @@ -0,0 +1,68 @@ +ace.define('ace/snippets/xquery', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.snippetText = "snippet for\n\ + for $${1:item} in ${2:expr}\n\ +snippet return\n\ + return ${1:expr}\n\ +snippet import\n\ + import module namespace ${1:ns} = \"${2:http://www.example.com/}\";\n\ +snippet some\n\ + some $${1:varname} in ${2:expr} satisfies ${3:expr}\n\ +snippet every\n\ + every $${1:varname} in ${2:expr} satisfies ${3:expr}\n\ +snippet if\n\ + if(${1:true}) then ${2:expr} else ${3:true}\n\ +snippet switch\n\ + switch(${1:\"foo\"})\n\ + case ${2:\"foo\"}\n\ + return ${3:true}\n\ + default return ${4:false}\n\ +snippet try\n\ + try { ${1:expr} } catch ${2:*} { ${3:expr} }\n\ +snippet tumbling\n\ + for tumbling window $${1:varname} in ${2:expr}\n\ + start at $${3:start} when ${4:expr}\n\ + end at $${5:end} when ${6:expr}\n\ + return ${7:expr}\n\ +snippet sliding\n\ + for sliding window $${1:varname} in ${2:expr}\n\ + start at $${3:start} when ${4:expr}\n\ + end at $${5:end} when ${6:expr}\n\ + return ${7:expr}\n\ +snippet let\n\ + let $${1:varname} := ${2:expr}\n\ +snippet group\n\ + group by $${1:varname} := ${2:expr}\n\ +snippet order\n\ + order by ${1:expr} ${2:descending}\n\ +snippet stable\n\ + stable order by ${1:expr}\n\ +snippet count\n\ + count $${1:varname}\n\ +snippet ordered\n\ + ordered { ${1:expr} }\n\ +snippet unordered\n\ + unordered { ${1:expr} }\n\ +snippet treat \n\ + treat as ${1:expr}\n\ +snippet castable\n\ + castable as ${1:atomicType}\n\ +snippet cast\n\ + cast as ${1:atomicType}\n\ +snippet typeswitch\n\ + typeswitch(${1:expr})\n\ + case ${2:type} return ${3:expr}\n\ + default return ${4:expr}\n\ +snippet var\n\ + declare variable $${1:varname} := ${2:expr};\n\ +snippet fn\n\ + declare function ${1:ns}:${2:name}(){\n\ + ${3:expr}\n\ + };\n\ +snippet module\n\ + module namespace ${1:ns} = \"${2:http://www.example.com}\";\n\ +"; +exports.scope = "xquery"; + +}); diff --git a/public/ace_editor/snippets/yaml.js b/public/ace_editor/snippets/yaml.js new file mode 100755 index 0000000..1c2df80 --- /dev/null +++ b/public/ace_editor/snippets/yaml.js @@ -0,0 +1,7 @@ +ace.define('ace/snippets/yaml', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.snippetText = ""; +exports.scope = "yaml"; + +}); diff --git a/public/ace_editor/theme-ambiance.js b/public/ace_editor/theme-ambiance.js new file mode 100755 index 0000000..06dde3b --- /dev/null +++ b/public/ace_editor/theme-ambiance.js @@ -0,0 +1,202 @@ +/* ***** BEGIN LICENSE BLOCK ***** + * Distributed under the BSD license: + * + * Copyright 2011 Irakli Gozalishvili. All rights reserved. + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to + * deal in the Software without restriction, including without limitation the + * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or + * sell copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS + * IN THE SOFTWARE. + * ***** END LICENSE BLOCK ***** */ + +ace.define('ace/theme/ambiance', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { + +exports.isDark = true; +exports.cssClass = "ace-ambiance"; +exports.cssText = ".ace-ambiance .ace_gutter {\ +background-color: #3d3d3d;\ +background-image: -moz-linear-gradient(left, #3D3D3D, #333);\ +background-image: -ms-linear-gradient(left, #3D3D3D, #333);\ +background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#3D3D3D), to(#333));\ +background-image: -webkit-linear-gradient(left, #3D3D3D, #333);\ +background-image: -o-linear-gradient(left, #3D3D3D, #333);\ +background-image: linear-gradient(left, #3D3D3D, #333);\ +background-repeat: repeat-x;\ +border-right: 1px solid #4d4d4d;\ +text-shadow: 0px 1px 1px #4d4d4d;\ +color: #222;\ +}\ +.ace-ambiance .ace_gutter-layer {\ +background: repeat left top;\ +}\ +.ace-ambiance .ace_fold-widget {\ +text-align: center;\ +}\ +.ace-ambiance .ace_fold-widget:hover {\ +color: #777;\ +}\ +.ace-ambiance .ace_fold-widget.ace_start,\ +.ace-ambiance .ace_fold-widget.ace_end,\ +.ace-ambiance .ace_fold-widget.ace_closed{\ +background: none;\ +border: none;\ +box-shadow: none;\ +}\ +.ace-ambiance .ace_fold-widget.ace_start:after {\ +content: '▾'\ +}\ +.ace-ambiance .ace_fold-widget.ace_end:after {\ +content: '▴'\ +}\ +.ace-ambiance .ace_fold-widget.ace_closed:after {\ +content: '‣'\ +}\ +.ace-ambiance .ace_print-margin {\ +border-left: 1px dotted #2D2D2D;\ +right: 0;\ +background: #262626;\ +}\ +.ace-ambiance .ace_scroller {\ +-webkit-box-shadow: inset 0 0 10px black;\ +-moz-box-shadow: inset 0 0 10px black;\ +-o-box-shadow: inset 0 0 10px black;\ +box-shadow: inset 0 0 10px black;\ +}\ +.ace-ambiance {\ +color: #E6E1DC;\ +background-color: #202020;\ +}\ +.ace-ambiance .ace_cursor {\ +border-left: 1px solid #7991E8;\ +}\ +.ace-ambiance .ace_overwrite-cursors .ace_cursor {\ +border: 1px solid #FFE300;\ +background: #766B13;\ +}\ +.ace-ambiance.normal-mode .ace_cursor-layer {\ +z-index: 0;\ +}\ +.ace-ambiance .ace_marker-layer .ace_selection {\ +background: rgba(221, 240, 255, 0.20);\ +}\ +.ace-ambiance .ace_marker-layer .ace_selected-word {\ +border-radius: 4px;\ +border: 8px solid #3f475d;\ +box-shadow: 0 0 4px black;\ +}\ +.ace-ambiance .ace_marker-layer .ace_step {\ +background: rgb(198, 219, 174);\ +}\ +.ace-ambiance .ace_marker-layer .ace_bracket {\ +margin: -1px 0 0 -1px;\ +border: 1px solid rgba(255, 255, 255, 0.25);\ +}\ +.ace-ambiance .ace_marker-layer .ace_active-line {\ +background: rgba(255, 255, 255, 0.031);\ +}\ +.ace-ambiance .ace_invisible {\ +color: #333;\ +}\ +.ace-ambiance .ace_paren {\ +color: #24C2C7;\ +}\ +.ace-ambiance .ace_keyword {\ +color: #cda869;\ +}\ +.ace-ambiance .ace_keyword.ace_operator {\ +color: #fa8d6a;\ +}\ +.ace-ambiance .ace_punctuation.ace_operator {\ +color: #fa8d6a;\ +}\ +.ace-ambiance .ace_identifier {\ +}\ +.ace-ambiance .ace-statement {\ +color: #cda869;\ +}\ +.ace-ambiance .ace_constant {\ +color: #CF7EA9;\ +}\ +.ace-ambiance .ace_constant.ace_language {\ +color: #CF7EA9;\ +}\ +.ace-ambiance .ace_constant.ace_library {\ +}\ +.ace-ambiance .ace_constant.ace_numeric {\ +color: #78CF8A;\ +}\ +.ace-ambiance .ace_invalid {\ +text-decoration: underline;\ +}\ +.ace-ambiance .ace_invalid.ace_illegal {\ +color:#F8F8F8;\ +background-color: rgba(86, 45, 86, 0.75);\ +}\ +.ace-ambiance .ace_invalid,\ +.ace-ambiance .ace_deprecated {\ +text-decoration: underline;\ +font-style: italic;\ +color: #D2A8A1;\ +}\ +.ace-ambiance .ace_support {\ +color: #9B859D;\ +}\ +.ace-ambiance .ace_support.ace_function {\ +color: #DAD085;\ +}\ +.ace-ambiance .ace_function.ace_buildin {\ +color: #9b859d;\ +}\ +.ace-ambiance .ace_string {\ +color: #8f9d6a;\ +}\ +.ace-ambiance .ace_string.ace_regexp {\ +color: #DAD085;\ +}\ +.ace-ambiance .ace_comment {\ +font-style: italic;\ +color: #555;\ +}\ +.ace-ambiance .ace_comment.ace_doc {\ +}\ +.ace-ambiance .ace_comment.ace_doc.ace_tag {\ +color: #666;\ +font-style: normal;\ +}\ +.ace-ambiance .ace_definition,\ +.ace-ambiance .ace_type {\ +color: #aac6e3;\ +}\ +.ace-ambiance .ace_variable {\ +color: #9999cc;\ +}\ +.ace-ambiance .ace_variable.ace_language {\ +color: #9b859d;\ +}\ +.ace-ambiance .ace_xml-pe {\ +color: #494949;\ +}\ +.ace-ambiance .ace_gutter-layer,\ +.ace-ambiance .ace_text-layer {\ +background-image: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAADICAQAAAAHUWYVAABFFUlEQVQYGbzBCeDVU/74/6fj9HIcx/FRHx9JCFmzMyGRURhLZIkUsoeRfUjS2FNDtr6WkMhO9sm+S8maJfu+Jcsg+/o/c+Z4z/t97/vezy3z+z8ekGlnYICG/o7gdk+wmSHZ1z4pJItqapjoKXWahm8NmV6eOTbWUOp6/6a/XIg6GQqmenJ2lDHyvCFZ2cBDbmtHA043VFhHwXxClWmeYAdLhV00Bd85go8VmaFCkbVkzlQENzfBDZ5gtN7HwF0KDrTwJ0dypSOzpaKCMwQHKTIreYIxlmhXTzTWkVm+LTynZhiSBT3RZQ7aGfjGEd3qyXQ1FDymqbKxpspERQN2MiRjNZlFFQXfCNFm9nM1zpAsoYjmtRTc5ajwuaXc5xrWskT97RaKzAGe5ARHhVUsDbjKklziiX5WROcJwSNCNI+9w1Jwv4Zb2r7lCMZ4oq5C0EdTx+2GzNuKpJ+iFf38JEWkHJn9DNF7mmBDITrWEg0VWL3pHU20tSZnuqWu+R3BtYa8XxV1HO7GyD32UkOpL/yDloINFTmvtId+nmAjxRw40VMwVKiwrKLE4bK5UOVntYwhOcSSXKrJHKPJedocpGjVz/ZMIbnYUPB10/eKCrs5apqpgVmWzBYWpmtKHecJPjaUuEgRDDaU0oZghCJ6zNMQ5ZhDYx05r5v2muQdM0EILtXUsaKiQX9WMEUotagQzFbUNN6NUPC2nm5pxEWGCjMc3GdJHjSU2kORLK/JGSrkfGEIjncU/CYUnOipoYemwj8tST9NsJmB7TUVXtbUtXATJVZXBMvYeTXJfobgJUPmGMP/yFaWonaa6BcFO3nqcIqCozSZoZoSr1g4zJOzuyGnxTEX3lUEJ7WcZgme8ddaWvWJo2AJR9DZU3CUIbhCSG6ybSwN6qtJVnCU2svDTP2ZInOw2cBTrqtQahtNZn9NcJ4l2NaSmSkkP1noZWnVwkLmdUPOwLZEwy2Z3S3R+4rIG9hcbpPXHFVWcQdZkn2FOta3cKWQnNRC5g1LsJah4GCzSVsKnCOY5OAFRTBekyyryeyilhFKva75r4Mc0aWanGEaThcy31s439KKxTzJYY5WTHPU1FtIHjQU3Oip4xlNzj/lBw23dYZVliQa7WAXf4shetcQfatI+jWRDBPmyNeW6A1P5kdDgyYJlba0BIM8BZu1JfrFwItyjcAMR3K0BWOIrtMEXyhyrlVEx3ui5dUBjmB/Q3CXW85R4mBD0s7B+4q5tKUjOlb9qqmhi5AZ6GFIC5HXtOobdYGlVdMVbNJ8toNTFcHxnoL+muBagcctjWnbNMuR00uI7nQESwg5q2qqrKWIfrNUmeQocY6HuyxJV02wj36w00yhpmUFenv4p6fUkZYqLyuinx2RGOjhCXYyJF84oiU00YMOOhhquNdfbOB7gU88pY4xJO8LVdp6/q2voeB4R04vIdhSE40xZObx1HGGJ/ja0LBthFInKaLPPFzuCaYaoj8JjPME8yoyxo6zlBqkiUZYgq00OYMswbWO5NGmq+xhipxHLRW29ARjNKXO0wRnear8XSg4XFPLKEPUS1GqvyLwiuBUoa7zpZ0l5xxFwWmWZC1H5h5FwU8eQ7K+g8UcVY6TMQreVQT/8uQ8Z+ALIXnSEa2pYZQneE9RZbSBNYXfWYJzW/h/4j4Dp1tYVcFIC5019Vyi4ThPqSFCzjGWaHQTBU8q6vrVwgxP9Lkm840imWKpcLCjYTtrKuwvsKSnrvHCXGkSMk9p6lhckfRpIeis+N2PiszT+mFLspyGleUhDwcLrZqmyeylxwjBcKHEapqkmyangyLZRVOijwOtCY5SsG5zL0OwlCJ4y5KznF3EUNDDrinwiyLZRzOXtlBbK5ITHFGLp8Q0R6ab6mS7enI2cFrxOyHvOCFaT1HThS1krjCwqWeurCkk+willhCC+RSZnRXBiZaC5RXRIZYKp2lyfrHwiKPKR0JDzrdU2EFgpidawlFDR6FgXUMNa+g1FY3bUQh2cLCwosRdnuQTS/S+JVrGLeWIvtQUvONJxlqSQYYKpwoN2kaocLjdVsis4Mk80ESF2YpSkzwldjHkjFCUutI/r+EHDU8oCs6yzL3PhWiEooZdFMkymlas4AcI3KmoMMNSQ3tHzjGWCrcJJdYyZC7QFGwjRL9p+MrRkAGWzIaWCn9W0F3TsK01c2ZvQw0byvxuQU0r1lM0qJO7wW0kRIMdDTtXEdzi4VIh+EoIHm0mWtAtpCixlabgn83fKTI7anJe9ST7WIK1DMGpQmYeA58ImV6ezOGOzK2Kgq01pd60cKWiUi9Lievb/0vIDPHQ05Kzt4ddPckQBQtoaurjyHnek/nKzpQLrVgKPjIkh2v4uyezpv+Xoo7fPFXaGFp1vaLKxQ4uUpQQS5VuQs7BCq4xRJv7fwpVvvFEB3j+620haOuocqMhWd6TTPAEx+mdFNGHdranFe95WrWmIvlY4F1Dle2ECgc6cto7SryuqGGGha0tFQ5V53migUKmg6XKAo4qS3mik+0OZpAhOLeZKicacgaYcyx5hypYQE02ZA4xi/pNhOQxR4klNKyqacj+mpxnLTnnGSo85++3ZCZq6lrZkXlGEX3o+C9FieccJbZWVFjC0Yo1FZnJhoYMFoI1hEZ9r6hwg75HwzBNhbZCdJEfJwTPGzJvaKImw1yYX1HDAmpXR+ZJQ/SmgqMNVQb5vgamGwLtt7VwvP7Qk1xpiM5x5Cyv93E06MZmgs0Nya2azIKOYKCGBQQW97RmhKNKF02JZqHEJ4o58qp7X5EcZmc56trXEqzjCBZ1MFGR87Ql2tSTs6CGxS05PTzRQorkbw7aKoKXFDXsYW42VJih/q+FP2BdTzDTwVqOYB13liM50vG7wy28qagyuIXMeQI/Oqq8bcn5wJI50xH00CRntyfpL1T4hydYpoXgNiFzoIUTDZnLNRzh4TBHwbYGDvZkxmlyJloyr6tRihpeUG94GnKtIznREF0tzJG/OOr73JBcrSh1k6WuTprgLU+mnSGnv6Zge0NNz+kTDdH8nuAuTdJDCNb21LCiIuqlYbqGzT3RAoZofQfjFazkqeNWdYaGvYTM001EW2oKPvVk1ldUGSgUtHFwjKM1h9jnFcmy5lChoLNaQMGGDsYbKixlaMBmmsx1QjCfflwTfO/gckW0ruZ3jugKR3R5W9hGUWqCgxuFgsuaCHorotGKzGaeZB9DMsaTnKCpMtwTvOzhYk0rdrArKCqcaWmVk1+F372ur1YkKxgatI8Qfe1gIX9wE9FgS8ESmuABIXnRUbCapcKe+nO7slClSZFzpV/LkLncEb1qiO42fS3R855Su2mCLh62t1SYZZYVmKwIHjREF2uihTzB20JOkz7dkxzYQnK0UOU494wh+VWRc6Un2kpTaVgLDFEkJ/uhzRcI0YKGgpGWOlocBU/a4fKoJ/pEaNV6jip3+Es9VXY078rGnmAdf7t9ylPXS34RBSuYPs1UecZTU78WanhBCHpZ5sAoTz0LGZKjPf9TRypqWEiTvOFglL1fCEY3wY/++rbk7C8bWebA6p6om6PgOL2kp44TFJlVNBXae2rqqdZztOJpT87GQsE9jqCPIe9VReZuQ/CIgacsyZdCpIScSYqcZk8r+nsyCzhyfhOqHGOIvrLknC8wTpFcaYiGC/RU1NRbUeUpocQOnkRpGOrIOcNRx+1uA0UrzhSSt+VyS3SJpnFWkzNDqOFGIWcfR86DnmARTQ1HKIL33ExPiemeOhYSSjzlSUZZuE4TveoJLnBUOFof6KiysCbnAEcZgcUNTDOwkqWu3RWtmGpZwlHhJENdZ3miGz0lJlsKnjbwqSHQjpxnFDlTLLwqJPMZMjd7KrzkSG7VsxXBZE+F8YZkb01Oe00yyRK9psh5SYh29ySPKBo2ylNht7ZkZnsKenjKNJu9PNEyZpaCHv4Kt6RQsLvAVp7M9kIimmCUwGeWqLMmGuIotYMmWNpSahkhZw9FqZsVnKJhsjAHvtHMsTM9fCI06Dx/u3vfUXCqfsKRc4oFY2jMsoo/7DJDwZ1CsIKnJu+J9ldkpmiCxQx1rWjI+T9FwcWWzOuaYH0Hj7klNRVWEQpmaqosakiGNTFHdjS/qnUdmf0NJW5xsL0HhimCCZZSRzmSPTXJQ4aaztAwtZnoabebJ+htCaZ7Cm535ByoqXKbX1WRc4Eh2MkRXWzImVc96Cj4VdOKVxR84VdQsIUM8Psoou2byVHyZFuq7O8otbSQ2UAoeEWTudATLGSpZzVLlXVkPU2Jc+27lsw2jmg5T5VhbeE3BT083K9WsTTkFU/Osi0rC5lRlpwRHUiesNS0sOvmqGML1aRbPAxTJD9ZKtxuob+hhl8cwYGWpJ8nub7t5p6coYbMovZ1BTdaKn1jYD6h4GFDNFyT/Kqe1XCXphXHOKLZmuRSRdBPEfVUXQzJm5YGPGGJdvAEr7hHNdGZnuBvrpciGmopOLf5N0uVMy0FfYToJk90uUCbJupaVpO53UJXR2bVpoU00V2KOo4zMFrBd0Jtz2pa0clT5Q5L8IpQ177mWQejPMEJhuQjS10ref6HHjdEhy1P1EYR7GtO0uSsKJQYLiTnG1rVScj5lyazpqWGl5uBbRWl7m6ixGOOnEsMJR7z8J0n6KMnCdxhiNYQCoZ6CmYLnO8omC3MkW3bktlPmEt/VQQHejL3+dOE5FlPdK/Mq8hZxxJtLyRrepLThYKbLZxkSb5W52vYxNOaOxUF0yxMUPwBTYqCzy01XayYK0sJyWBLqX0MwU5CzoymRzV0EjjeUeLgDpTo6ij42ZAzvD01dHUUTPLU96MdLbBME8nFBn7zJCMtJcZokn8YoqU0FS5WFKyniHobguMcmW8N0XkWZjkyN3hqOMtS08r+/xTBwpZSZ3qiVRX8SzMHHjfUNFjgHEPmY9PL3ykEzxkSre/1ZD6z/NuznuB0RcE1TWTm9zRgfUWVJiG6yrzgmWPXC8EAR4Wxhlad0ZbgQyEz3pG5RVEwwDJH2mgKpjcTiCOzn1lfUWANFbZ2BA8balnEweJC9J0iuaeZoI+ippFCztEKVvckR2iice1JvhVytrQwUAZpgsubCPaU7xUe9vWnaOpaSBEspalykhC9bUlOMpT42ZHca6hyrqKmw/wMR8H5ZmdFoBVJb03O4UL0tSNnvIeRmkrLWqrs78gcrEn2tpcboh0UPOW3UUR9PMk4T4nnNKWmCjlrefhCwxRNztfmIQVdDElvS4m1/WuOujoZCs5XVOjtKPGokJzsYCtFYoWonSPT21DheU/wWhM19FcElwqNGOsp9Q8N/cwXaiND1MmeL1Q5XROtYYgGeFq1aTMsoMmcrKjQrOFQTQ1fmBYhmW6o8Jkjc7iDJRTBIo5kgJD5yMEYA3srCg7VFKwiVJkmRCc5ohGOKhsYMn/XBLdo5taZjlb9YAlGWRimqbCsoY7HFAXLa5I1HPRxMMsQDHFkWtRNniqT9UEeNjcE7RUlrCJ4R2CSJuqlKHWvJXjAUNcITYkenuBRB84TbeepcqTj3zZyFJzgYQdHnqfgI0ddUwS6GqWpsKWhjq9cV0vBAEMN2znq+EBfIWT+pClYw5xsTlJU6GeIBsjGmmANTzJZiIYpgrM0Oa8ZMjd7NP87jxhqGOhJlnQtjuQpB+8aEE00wZFznSJPyHxgH3HkPOsJFvYk8zqCHzTs1BYOa4J3PFU+UVRZxlHDM4YavlNUuMoRveiZA2d7grMNc2g+RbSCEKzmgYsUmWmazFJyoiOZ4KnyhKOGRzWJa0+moyV4TVHDzn51Awtqaphfk/lRQ08FX1iiqxTB/kLwd0VynKfEvI6cd4XMV5bMhZ7gZUWVzYQ6Nm2BYzxJbw3bGthEUUMfgbGeorae6DxHtJoZ6alhZ0+ytiVoK1R4z5PTrOECT/SugseEOlb1MMNR4VRNcJy+V1Hg9ONClSZFZjdHlc6W6FBLdJja2MC5hhpu0DBYEY1TFGwiFAxRRCsYkiM9JRb0JNMVkW6CZYT/2EiTGWmo8k+h4FhDNE7BvppoTSFnmCV5xZKzvcCdDo7VVPnIU+I+Rc68juApC90MwcFCsJ5hDqxgScYKreruyQwTqrzoqDCmhWi4IbhB0Yrt3RGa6GfDv52rKXWhh28dyZaWUvcZeMTBaZoSGyiCtRU5J8iviioHaErs7Jkj61syVzTTgOcUOQ8buFBTYWdL5g3T4qlpe0+wvD63heAXRfCCIed9RbCsp2CiI7raUOYOTU13N8PNHvpaGvayo4a3LLT1lDrVEPT2zLUlheB1R+ZTRfKWJ+dcocLJfi11vyJ51lLqJ0WD7tRwryezjiV5W28uJO9qykzX8JDe2lHl/9oyBwa2UMfOngpXCixvKdXTk3wrsKmiVYdZIqsoWEERjbcUNDuiaQomGoIbFdEHmsyWnuR+IeriKDVLnlawlyNHKwKlSU631PKep8J4Q+ayjkSLKYLhalNHlYvttb6fHm0p6OApsZ4l2VfdqZkjuysy6ysKLlckf1KUutCTs39bmCgEyyoasIWlVaMF7mgmWtBT8Kol5xpH9IGllo8cJdopcvZ2sImlDmMIbtDk3KIpeNiS08lQw11NFPTwVFlPP6pJ2gvRfI7gQUfmNAtf6Gs0wQxDsKGlVBdF8rCa3jzdwMaGHOsItrZk7hAyOzpK9VS06j5F49b0VNGOOfKs3lDToMsMBe9ZWtHFEgxTJLs7qrygKZjUnmCYoeAqeU6jqWuLJup4WghOdvCYJnrSkSzoyRkm5M2StQwVltPkfCAk58tET/CSg+8MUecmotMEnhBKfWBIZsg2ihruMJQaoIm+tkTLKEqspMh00w95gvFCQRtDwTT1gVDDSEVdlwqZfxoQRbK0g+tbiBZxzKlpnpypejdDwTaeOvorMk/IJE10h9CqRe28hhLbe0pMsdSwv4ZbhKivo2BjDWfL8UKJgeavwlwb5KlwhyE4u4XkGE2ytZCznKLCDZZq42VzT8HLCrpruFbIfOIINmh/qCdZ1ZBc65kLHR1Bkyf5zn6pN3SvGKIlFNGplhrO9QSXanLOMQTLCa0YJCRrCZm/CZmrLTm7WzCK4GJDiWUdFeYx1LCFg3NMd0XmCuF3Y5rITLDUsYS9zoHVzwnJoYpSTQoObyEzr4cFBNqYTopoaU/wkyLZ2lPhX/5Y95ulxGTV7KjhWrOZgl8MyUUafjYraNjNU1N3IWcjT5WzWqjwtoarHSUObGYO3GCJZpsBlnJGPd6ZYLyl1GdCA2625IwwJDP8GUKymbzuyPlZlvTUsaUh5zFDhRWFzPKKZLAlWdcQbObgF9tOqOsmB1dqcqYJmWstFbZRRI9poolmqiLnU0POvxScpah2iSL5UJNzgScY5+AuIbpO0YD3NCW+dLMszFSdFCWGqG6eVq2uYVNDdICGD6W7EPRWZEY5gpsE9rUkS3mijzzJnm6UpUFXG1hCUeVoS5WfNcFpblELL2qqrCvMvRfd45oalvKU2tiQ6ePJOVMRXase9iTtLJztPxJKLWpo2CRDcJwn2sWSLKIO1WQWNTCvpVUvOZhgSC40JD0dOctaSqzkCRbXsKlb11Oip6PCJ0IwSJM31j3akRxlP7Rwn6aGaUL0qiLnJkvB3xWZ2+Q1TfCwpQH3G0o92UzmX4o/oJNQMMSQc547wVHhdk+VCw01DFYEnTxzZKAm74QmeNNR1w6WzEhNK15VJzuCdxQ53dRUDws5KvwgBMOEgpcVNe0hZI6RXT1Jd0cyj5nsaEAHgVmGaJIlWdsc5Ui2ElrRR6jrRAttNMEAIWrTDFubkZaok7/AkzfIwfuWVq0jHzuCK4QabtLUMVPB3kJ0oyHTSVFlqMALilJf2Rf8k5aaHtMfayocLBS8L89oKoxpJvnAkDPa0qp5DAUTHKWmCcnthlou8iCKaFFLHWcINd1nyIwXqrSxMNmSs6KmoL2QrKuWtlQ5V0120xQ5vRyZS1rgFkWwhiOwiuQbR0OOVhQM9iS3tiXp4RawRPMp5tDletOOBL95MpM01dZTBM9pkn5qF010rIeHFcFZhmSGpYpTsI6nwhqe5C9ynhlpp5ophuRb6WcJFldkVnVEwwxVfrVkvnWUuNLCg5bgboFHPDlDPDmnK7hUrWiIbjadDclujlZcaokOFup4Ri1kacV6jmrrK1hN9bGwpKEBQ4Q6DvIUXOmo6U5LqQM6EPyiKNjVkPnJkDPNEaxhiFay5ExW1NXVUGqcpYYdPcGiCq7z/TSlbhL4pplWXKd7NZO5QQFrefhRQW/NHOsqcIglc4UhWklR8K0QzbAw08CBDnpbgqXdeD/QUsM4RZXDFBW6WJKe/mFPdH0LtBgiq57wFLzlyQzz82qYx5D5WJP5yVJDW01BfyHnS6HKO/reZqId1WGa4Hkh2kWodJ8i6KoIPlAj2hPt76CzXsVR6koPRzWTfKqIentatYpQw2me4AA3y1Kind3SwoOKZDcFXTwl9tWU6mfgRk9d71sKtlNwrjnYw5tC5n5LdKiGry3JKNlHEd3oaMCFHrazBPMp/uNJ+V7IudcSbeOIdjUEdwl0VHCOZo5t6YluEuaC9mQeMgSfOyKnYGFHcIeQ84yQWbuJYJpZw5CzglDH7gKnWqqM9ZTaXcN0TeYhR84eQtJT76JJ1lREe7WnnvsMmRc9FQ7SBBM9mV3lCUdmHk/S2RAMt0QjFNFqQpWjDPQ01DXWUdDBkXziKPjGEP3VP+zIWU2t7im41FOloyWzn/L6dkUy3VLDaZ6appgDLHPjJEsyvJngWEPUyVBiAaHCTEXwrLvSEbV1e1gKJniicWorC1MUrVjB3uDhJE/wgSOzk1DXpk0k73qCM8xw2UvD5kJmDUfOomqMpWCkJRlvKXGmoeBm18USjVIk04SClxTB6YrgLAPLWYK9HLUt5cmc0vYES8GnTeRc6skZbQkWdxRsIcyBRzx1DbTk9FbU0caTPOgJHhJKnOGIVhQqvKmo0llRw9sabrZkDtdg3PqaKi9oatjY8B+G371paMg6+mZFNNtQ04mWBq3rYLOmtWWQp8KJnpy9DdFensyjdqZ+yY40VJlH8wcdLzC8PZnvHMFUTZUrDTkLyQaGus5X5LzpYAf3i+e/ZlhqGqWhh6Ou6xTR9Z6oi5AZZtp7Mj2EEm8oSpxiYZCHU/1fbGdNNNRRoZMhmilEb2gqHOEJDtXkHK/JnG6IrvbPCwV3NhONVdS1thBMs1T4QOBcTWa2IzhMk2nW5Kyn9tXUtpv9RsG2msxk+ZsQzRQacJncpgke0+T8y5Fzj8BiGo7XlJjaTIlpQs7KFjpqGnKuoyEPeIKnFMkZHvopgh81ySxNFWvJWcKRs70j2FOT012IllEEO1n4pD1513Yg2ssQPOThOkvyrqHUdEXOSEsihmBbTbKX1kLBPWqWkLOqJbjB3GBIZmoa8qWl4CG/iZ7oiA72ZL7TJNeZUY7kFQftDcHHluBzRbCegzMtrRjVQpX2lgoPKKLJAkcbMl01XK2p7yhL8pCBbQ3BN2avJgKvttcrWDK3CiUOVxQ8ZP+pqXKyIxnmBymCg5vJjNfkPK4+c8cIfK8ocVt7kmfd/I5SR1hKvCzUtb+lhgc00ZaO6CyhIQP1Uv4yIZjload72PXX0OIJvnFU+0Zf6MhsJwTfW0r0UwQfW4LNLZl5HK261JCZ4qnBaAreVAS3WrjV0LBnNDUNNDToCEeFfwgcb4gOEqLRhirWkexrCEYKVV711DLYEE1XBEsp5tpTGjorkomKYF9FDXv7fR3BGwbettSxnyL53MBPjsxDZjMh+VUW9NRxq1DhVk+FSxQcaGjV9Pawv6eGByw5qzoy7xk4RsOShqjJwWKe/1pEEfzkobeD/dQJmpqedcyBTy2sr4nGNRH0c0SPWTLrqAc0OQcb/gemKgqucQT7ySWKCn2EUotoCvpZct7RO2sy/QW0IWcXd7pQRQyZVwT2USRO87uhjioTLKV2brpMUcMQRbKH/N2T+UlTpaMls6cmc6CCNy3JdYYSUzzJQ4oSD3oKLncULOiJvjBEC2oqnCJkJluCYy2ZQ5so9YYlZ1VLlQU1mXEW1jZERwj/MUSRc24TdexlqLKfQBtDTScJUV8FszXBEY5ktpD5Ur9hYB4Nb1iikw3JoYpkKX+RodRKFt53MMuRnKSpY31PwYaGaILh3wxJGz9TkTPEETxoCWZrgvOlmyMzxFEwVJE5xZKzvyJ4WxEc16Gd4Xe3Weq4XH2jKRikqOkGQ87hQnC7wBmGYLAnesX3M+S87eFATauuN+Qcrh7xIxXJbUIdMw3JGE3ylCWzrieaqCn4zhGM19TQ3z1oH1AX+pWEqIc7wNGAkULBo/ZxRaV9NNyh4Br3rCHZzbzmSfawBL0dNRwpW1kK9mxPXR9povcdrGSZK9c2k0xwFGzjuniCtRSZCZ6ccZ7gaktmgAOtKbG/JnOkJrjcQTdFMsxRQ2cLY3WTIrlCw1eWKn8R6pvt4GFDso3QoL4a3nLk3G6JrtME3dSenpx7PNFTmga0EaJTLQ061sEeQoWXhSo9LTXsaSjoJQRXeZLtDclbCrYzfzHHeaKjHCVOUkQHO3JeEepr56mhiyaYYKjjNU+Fed1wS5VlhWSqI/hYUdDOkaxiKehoyOnrCV5yBHtbWFqTHCCwtpDcYolesVR5yUzTZBb3RNMd0d6WP+SvhuBmRcGxnuQzT95IC285cr41cLGQ6aJJhmi4TMGempxeimBRQw1tFKV+8jd6KuzoSTqqDxzRtpZkurvKEHxlqXKRIjjfUNNXQsNOsRScoWFLT+YeRZVD3GRN0MdQcKqQjHDMrdGGVu3iYJpQx3WGUvfbmxwFfR20WBq0oYY7LMFhhgYtr8jpaEnaOzjawWWaTP8mMr0t/EPDPoqcnxTBI5o58L7uoWnMrpoqPwgVrlAUWE+V+TQl9rawoyP6QGAlQw2TPRX+YSkxyBC8Z6jhHkXBgQL7WII3DVFnRfCrBfxewv9D6xsyjys4VkhWb9pUU627JllV0YDNHMku/ldNMMXDEo4aFnAkk4U6frNEU4XgZUPmEKHUl44KrzmYamjAbh0JFvGnaTLPu1s9jPCwjFpYiN7z1DTOk/nc07CfDFzmCf7i+bfNHXhDtLeBXzTBT5rkMvWOIxpl4EMh2LGJBu2syDnAEx2naEhHDWMMzPZEhygyS1mS5RTJr5ZkoKbEUoYqr2kqdDUE8ztK7OaIntJkFrIECwv8LJTaVx5XJE86go8dFeZ3FN3rjabCAYpoYEeC9zzJVULBbmZhDyd7ko09ydpNZ3nm2Kee4FPPXHnYEF1nqOFEC08LUVcDvYXkJHW8gTaKCk9YGOeIJhqiE4ToPEepdp7IWFjdwnWaufGMwJJCMtUTTBBK9BGCOy2tGGrJTHIwyEOzp6aPzNMOtlZkDvcEWpP5SVNhfkvDxhmSazTJXYrM9U1E0xwFVwqZQwzJxw6+kGGGUj2FglGGmnb1/G51udRSMNlTw6GGnCcUwVcOpmsqTHa06o72sw1RL02p9z0VbnMLOaIX3QKaYKSCFQzBKEUNHTSc48k53RH9wxGMtpQa5KjjW0W0n6XCCCG4yxNNdhQ4R4l1Ff+2sSd6UFHiIEOyqqFgT01mEUMD+joy75jPhOA+oVVLm309FR4yVOlp4RhLiScNmSmaYF5Pw0STrOIoWMSR2UkRXOMp+M4SHW8o8Zoi6OZgjKOaFar8zZDzkWzvKOjkKBjmCXby8JahhjXULY4KlzgKLvAwxVGhvyd4zxB1d9T0piazmKLCVZY5sKiD0y2ZSYrkUEPUbIk+dlQ4SJHTR50k1DPaUWIdTZW9NJwnJMOECgd7ou/MnppMJ02O1VT4Wsh85MnZzcFTngpXGKo84qmwgKbCL/orR/SzJ2crA+t6Mp94KvxJUeIbT3CQu1uIdlQEOzlKfS3UMcrTiFmOuroocrZrT2AcmamOKg8YomeEKm/rlT2sociMaybaUlFhuqHCM2qIJ+rg4EcDFymiDSxzaHdPcpE62pD5kyM5SBMoA1PaUtfIthS85ig1VPiPPYXgYEMNk4Qq7TXBgo7oT57gPUdwgCHzhIVFPFU6OYJzHAX9m5oNrVjeE61miDrqQ4VSa1oiURTsKHC0IfjNwU2WzK6eqK8jWln4g15TVBnqmDteCJ501PGAocJhhqjZdtBEB6lnhLreFJKxmlKbeGrqLiSThVIbCdGzloasa6lpMQXHCME2boLpJgT7yWaemu6wBONbqGNVRS0PKIL7LckbjmQtR7K8I5qtqel+T/ChJTNIKLjdUMNIRyvOEko9YYl2cwQveBikCNawJKcLBbc7+JM92mysNvd/Fqp8a0k6CNEe7cnZrxlW0wQXaXjaktnRwNOGZKYiONwS7a1JVheq3WgJHlQUGKHKmp4KAxXR/ULURcNgoa4zhKSLpZR3kxRRb0NmD0OFn+UCS7CzI1nbP6+o4x47QZE5xRCt3ZagnYcvmpYQktXdk5YKXTzBC57kKEe0VVuiSYqapssMS3C9p2CKkHOg8B8Pa8p5atrIw3qezIWanMGa5HRDNF6RM9wcacl0N+Q8Z8hsIkSnaIIdHRUOEebAPy1zbCkhM062FCJtif7PU+UtoVXzWKqM1PxXO8cfdruhFQ/a6x3JKYagvVDhQEtNiyiiSQ7OsuRsZUku0CRNDs4Sog6KKjsZgk2bYJqijgsEenoKeniinRXBn/U3lgpPdyDZynQx8IiioMnCep5Ky8mjGs6Wty0l1hUQTcNWswS3WRp2kCNZwJG8omG8JphPUaFbC8lEfabwP7VtM9yoaNCAjpR41VNhrD9LkbN722v0CoZMByFzhaW+MyzRYEWFDQwN2M4/JiT76PuljT3VU/A36eaIThb+R9oZGOAJ9tewkgGvqOMNRWYjT/Cwu99Q8LqDE4TgbLWxJ1jaDDAERsFOFrobgjUsBScaguXU8kKm2RL19tRypSHnHNlHiIZqgufs4opgQdVdwxBNNFBR6kVFqb8ogimOzB6a6HTzrlDHEpYaxjiiA4TMQobkDg2vejjfwJGWmnbVFAw3H3hq2NyQfG7hz4aC+w3BbwbesG0swYayvpAs6++Ri1Vfzx93mFChvyN5xVHTS+0p9aqCAxyZ6ZacZyw5+7uuQkFPR9DDk9NOiE7X1PCYJVjVUqq7JlrHwWALF5nfHNGjApdpqgzx5OwilDhCiDYTgnc9waGW4BdLNNUQvOtpzDOWHDH8D7TR/A/85KljEQu3NREc4Pl/6B1Hhc8Umb5CsKMmGC9EPcxoT2amwHNCmeOEnOPbklnMkbOgIvO5UMOpQrS9UGVdt6iH/fURjhI/WOpaW9OKLYRod6HCUEdOX000wpDZQ6hwg6LgZfOqo1RfT/CrJzjekXOGhpc1VW71ZLbXyyp+93ILbC1kPtIEYx0FIx1VDrLoVzXRKRYWk809yYlC9ImcrinxtabKnzRJk3lAU1OLEN1j2zrYzr2myHRXJFf4h4QKT1qSTzTB5+ZNTzTRkAxX8FcLV2uS8eoQQ2aAkFzvCM72sJIcJET3WPjRk5wi32uSS9rfZajpWEvj9hW42F4o5NytSXYy8IKHay10VYdrcl4SkqscrXpMwyGOgtkajheSxdQqmpxP1L3t4R5PqasFnrQEjytq6qgp9Y09Qx9o4S1FzhUCn1kyHSzBWLemoSGvOqLNhZyBjmCaAUYpMgt4Ck7wBBMMwWKWgjsUwTaGVsxWC1mYoKiyqqeGKYqonSIRQ3KIkHO0pmAxTdBHkbOvfllfr+AA+7gnc50huVKYK393FOyg7rbPO/izI7hE4CnHHHnJ0ogNPRUGeUpsrZZTBJcrovUcJe51BPsr6GkJdhCCsZ6aTtMEb2pqWkqeVtDXE/QVggsU/Nl86d9RMF3DxvZTA58agu810RWawCiSzzXBeU3MMW9oyJUedvNEvQyNu1f10BSMddR1vaLCYpYa/mGocLSiYDcLbQz8aMn5iyF4xBNMs1P0QEOV7o5gaWGuzSeLue4tt3ro7y4Tgm4G/mopdZgl6q0o6KzJWE3mMksNr3r+a6CbT8g5wZNzT9O7fi/zpaOmnz3BRoqos+tv9zMbdpxsqDBOEewtJLt7cg5wtKKbvldpSzRRCD43VFheCI7yZLppggMVBS/KMAdHODJvOwq2NQSbKKKPLdFWQs7Fqo+mpl01JXYRgq8dnGLhTiFzqmWsUMdpllZdbKlyvSdYxhI9YghOtxR8LgSLWHK62mGGVoxzBE8LNWzqH9CUesQzFy5RQzTc56mhi6fgXEWwpKfE5Z7M05ZgZUPmo6auiv8YKzDYwWBLMErIbKHJvOwIrvEdhOBcQ9JdU1NHQ7CXn2XIDFBKU2WAgcX9UAUzDXWd5alwuyJ41Z9rjKLCL4aCp4WarhPm2rH+SaHUYE001JDZ2ZAzXPjdMpZWvC9wmqIB2lLhQ01D5jO06hghWMndbM7yRJMsoCj1vYbnFQVrW9jak3OlEJ3s/96+p33dEPRV5GxiqaGjIthUU6FFEZyqCa5qJrpBdzSw95IUnOPIrCUUjRZQFrbw5PR0R1qiYx3cb6nrWUMrBmmiBQxVHtTew5ICP/ip6g4hed/Akob/32wvBHsIOX83cI8hGeNeNPCIkPmXe8fPKx84OMSRM1MTdXSwjCZ4S30jVGhvqTRak/OVhgGazHuOCud5onEO1lJr6ecVyaOK6H7zqlBlIaHE0oroCgfvGJIdPcmfLNGLjpz7hZwZQpUbFME0A1cIJa7VNORkgfsMBatbKgwwJM9bSvQXeNOvbIjelg6WWvo5kvbKaJJNHexkKNHL9xRyFlH8Ti2riB5wVPhUk7nGkJnoCe428LR/wRGdYIlmWebCyxou1rCk4g/ShugBDX0V0ZQWkh0dOVsagkM0yV6OoLd5ye+pRlsCr0n+KiQrGuq5yJDzrTAXHtLUMduTDBVKrSm3eHL+6ijxhFDX9Z5gVU/wliHYTMiMFpKLNMEywu80wd3meoFmt6VbRMPenhrOc6DVe4pgXU8DnnHakLOIIrlF4FZPIw6R+zxBP0dyq6OOZ4Q5sLKCcz084ok+VsMMyQhNZmmBgX5xIXOEJTmi7VsGTvMTNdHHhpzdbE8Du2oKxgvBqQKdDDnTFOylCFaxR1syz2iqrOI/FEpNc3C6f11/7+ASS6l2inq2ciTrCCzgyemrCL5SVPjQkdPZUmGy2c9Sw9FtR1sS30RmsKPCS4rkIC/2U0MduwucYolGaPjKEyhzmiPYXagyWbYz8LWBDdzRimAXzxx4z8K9hpzlhLq+NiQ97HuKorMUfK/OVvC2JfiHUPCQI/q7J2gjK+tTDNxkCc4TMssqCs4TGtLVwQihyoAWgj9bosU80XGW6Ac9TJGziaUh5+hnFcHOnlaM1iRn29NaqGENTTTSUHCH2tWTeV0osUhH6psuVLjRUmGWhm6OZEshGeNowABHcJ2Bpy2ZszRcKkRXd2QuKVEeXnbfaEq825FguqfgfE2whlChSRMdron+LATTPQ2Z369t4B9C5gs/ylzv+CMmepIDPclFQl13W0rspPd1JOcbghGOEutqCv5qacURQl3dDKyvyJlqKXGPgcM9FfawJAMVmdcspcYKOZc4GjDYkFlK05olNMHyHn4zFNykyOxt99RkHlfwmiHo60l2EKI+mhreEKp080Tbug08BVPcgoqC5zWt+NLDTZ7oNSF51N1qie7Va3uCCwyZbkINf/NED6jzOsBdZjFN8oqG3wxVunqCSYYKf3EdhJyf9YWGf7tRU2oH3VHgPr1fe5J9hOgHd7xQ0y7qBwXr23aGErP0cm64JVjZwsOGqL+mhNgZmhJLW2oY4UhedsyBgzrCKrq7BmcpNVhR6jBPq64Vgi+kn6XE68pp8J5/+0wRHGOpsKenQn9DZntPzjRLZpDAdD2fnSgkG9tmIXnUwQ6WVighs7Yi2MxQ0N3CqYaCXkJ0oyOztMDJjmSSpcpvlrk0RMMOjmArQ04PRV1DO1FwhCVaUVPpKUM03JK5SxPsIWRu8/CGHi8UHChiqGFDTbSRJWeYUDDcH6vJWUxR4k1FXbMUwV6e4AJFXS8oMqsZKqzvYQ9DDQdZckY4aGsIhtlubbd2r3j4QBMoTamdPZk7O/Bf62lacZwneNjQoGcdVU7zJOd7ghsUHOkosagic6cnWc8+4gg285R6zZP5s1/LUbCKIznTwK36PkdwlOrl4U1LwfdCCa+IrvFkmgw1PCAUXKWo0sURXWcI2muKJlgyFzhynCY4RBOsqCjoI1R5zREco0n2Vt09BQtYSizgKNHfUmUrQ5UOCh51BFcLmY7umhYqXKQomOop8bUnWNNQcIiBcYaC6xzMNOS8JQQfeqKBmmglB+97ok/lfk3ygaHSyZaCRTzRxQo6GzLfa2jWBPepw+UmT7SQEJyiyRkhBLMVOfcoMjcK0eZChfUNzFAUzCsEN5vP/X1uP/n/aoMX+K+nw/Hjr/9xOo7j7Pju61tLcgvJpTWXNbfN5jLpi6VfCOviTktKlFusQixdEKWmEBUKNaIpjZRSSOXSgzaaKLdabrm1/9nZ+/f+vd/vz/v9+Xy+zZ7PRorYoZqyLrCwQdEAixxVOEXNNnjX2nUSRlkqGmWowk8lxR50JPy9Bo6qJXaXwNvREBvnThPEPrewryLhcAnj5WE15Fqi8W7R1sAuEu86S4ENikItFN4xkv9Af4nXSnUVcLiA9xzesFpivRRVeFKtsMRaKBhuSbjOELnAUtlSQUpXgdfB4Z1oSbnFEetbQ0IrAe+Y+pqnDcEJFj6S8LDZzZHwY4e3XONNlARraomNEt2bkvGsosA3ioyHm+6jCMbI59wqt4eeara28IzEmyPgoRaUOEDhTVdEJhmCoTWfC0p8aNkCp0oYqih2iqGi4yXeMkOsn4LdLLnmKfh/YogjNsPebeFGR4m9BJHLzB61XQ3BtpISfS2FugsK9FAtLWX1dCRcrCnUp44CNzuCowUZmxSRgYaE6Za0W2u/E7CVXCiI/UOR8aAm1+OSyE3mOUcwyc1zBBeoX1kiKy0Zfxck1Gsyulti11i83QTBF5Kg3pDQThFMVHiPSlK+0cSedng/VaS8bOZbtsBcTcZAR8JP5KeqQ1OYKAi20njdNNRpgnsU//K+JnaXJaGTomr7aYIphoRn9aeShJWKEq9LcozSF7QleEfDI5LYm5bgVkFkRwVDBCVu0DDIkGupo8TZBq+/pMQURYErJQmPKGKjNDkWOLx7Jd5QizdUweIaKrlP7SwJDhZvONjLkOsBBX9UpGxnydhXkfBLQ8IxgojQbLFnJf81JytSljclYYyEFyx0kVBvKWOFJmONpshGAcsduQY5giVNCV51eOdJYo/pLhbvM0uDHSevNKRcrKZIqnCtJeEsO95RoqcgGK4ocZcho1tTYtcZvH41pNQ7vA0WrhIfOSraIIntIAi+NXWCErdbkvrWwjRLrt0NKUdL6KSOscTOdMSOUtBHwL6OLA0vNSdynaWQEnCpIvKaIrJJEbvHkmuNhn6OjM8VkSGSqn1uYJCGHnq9I3aLhNME3t6GjIkO7xrNFumpyTNX/NrwX7CrIRiqqWijI9JO4d1iieykyfiposQIQ8YjjsjlBh6oHWbwRjgYJQn2NgSnNycmJAk3NiXhx44Sxykihxm8ybUwT1OVKySc7vi3OXVkdBJ4AyXBeksDXG0IhgtYY0lY5ahCD0ehborIk5aUWRJviMA7Xt5kyRjonrXENkm8yYqgs8VzgrJmClK20uMM3jRJ0FiQICQF9hdETlLQWRIb5ki6WDfWRPobvO6a4GP5mcOrNzDFELtTkONLh9dXE8xypEg7z8A9jkhrQ6Fhjlg/QVktJXxt4WXzT/03Q8IaQWSqIuEvloQ2mqC9Jfi7wRul4RX3pSPlzpoVlmCtI2jvKHCFhjcM3sN6lqF6HxnKelLjXWbwrpR4xzuCrTUZx2qq9oAh8p6ixCUGr78g8oyjRAtB5CZFwi80VerVpI0h+IeBxa6Zg6kWvpDHaioYYuEsRbDC3eOmC2JvGYLeioxGknL2UATNJN6hmtj1DlpLvDVmocYbrGCVJKOrg4X6DgddLA203BKMFngdJJFtFd7vJLm6KEpc5yjQrkk7M80SGe34X24nSex1Ra5Omgb71JKyg8SrU3i/kARKwWpH0kOGhKkObyfd0ZGjvyXlAkVZ4xRbYJ2irFMkFY1SwyWxr2oo4zlNiV+7zmaweFpT4kR3kaDAFW6xpSqzJay05FtYR4HmZhc9UxKbbfF2V8RG1MBmSaE+kmC6JnaRXK9gsiXhJHl/U0qM0WTcbyhwkYIvFGwjSbjfwhiJt8ZSQU+Bd5+marPMOkVkD0muxYLIfEuhh60x/J92itguihJSEMySVPQnTewnEm+620rTQEMsOfo4/kP/0ARvWjitlpSX7GxBgcMEsd3EEeYWvdytd+Saawi6aCIj1CkGb6Aj9rwhx16Cf3vAwFy5pyLhVonXzy51FDpdEblbkdJbUcEPDEFzQ8qNmhzzLTmmKWKbFCXeEuRabp6rxbvAtLF442QjQ+wEA9eL1xSR7Q0JXzlSHjJ4exq89yR0laScJ/FW6z4a73pFMEfDiRZvuvijIt86RaSFOl01riV2mD1UEvxGk/Geg5aWwGki1zgKPG9J2U8PEg8qYvMsZeytiTRXBMslCU8JSlxi8EabjwUldlDNLfzTUmCgxWsjqWCOHavYAqsknKFIO0yQ61VL5AVFxk6WhEaCAkdJgt9aSkzXlKNX2jEa79waYuc7gq0N3GDJGCBhoiTXUEPsdknCUE1CK0fwsiaylSF2uiDyO4XX3pFhNd7R4itFGc0k/ElBZwWvq+GC6szVeEoS/MZ+qylwpKNKv9Z469UOjqCjwlusicyTxG6VpNxcQ8IncoR4RhLbR+NdpGGmJWOcIzJGUuKPGpQg8rrG21dOMqQssJQ4RxH5jaUqnZuQ0F4Q+cjxLwPtpZbIAk3QTJHQWBE5S1BokoVtDd6lhqr9UpHSUxMcIYl9pojsb8h4SBOsMQcqvOWC2E8EVehqiJ1hrrAEbQxeK0NGZ0Gkq+guSRgniM23bIHVkqwx4hiHd7smaOyglyIyQuM978j4VS08J/A2G1KeMBRo4fBaSNhKUEZfQewVQ/C1I+MgfbEleEzCUw7mKXI0M3hd1EESVji8x5uQ41nxs1q4RMJCCXs7Iq9acpxn22oSDnQ/sJTxsCbHIYZiLyhY05TY0ZLIOQrGaSJDDN4t8pVaIrsqqFdEegtizc1iTew5Q4ayBDMUsQMkXocaYkc0hZua412siZ1rSXlR460zRJ5SlHGe5j801RLMlJTxtaOM3Q1pvxJ45zUlWFD7rsAbpfEm1JHxG0eh8w2R7QQVzBUw28FhFp5QZzq8t2rx2joqulYTWSuJdTYfWwqMFMcovFmSyJPNyLhE4E10pHzYjOC3huArRa571ZsGajQpQx38SBP5pyZB6lMU3khDnp0MBV51BE9o2E+TY5Ml2E8S7C0o6w1xvCZjf0HkVEHCzFoyNmqC+9wdcqN+Tp7jSDheE9ws8Y5V0NJCn2bk2tqSY4okdrEhx1iDN8cSudwepWmAGXKcJXK65H9to8jYQRH7SBF01ESUJdd0TayVInaWhLkOjlXE5irKGOnI6GSWGCJa482zBI9rCr0jyTVcEuzriC1vcr6mwFGSiqy5zMwxBH/TJHwjSPhL8+01kaaSUuMFKTcLEvaUePcrSmwn8DZrgikWb7CGPxkSjhQwrRk57tctmxLsb9sZvL9LSlyuSLlWkqOjwduo8b6Uv1DkmudIeFF2dHCgxVtk8dpIvHpBxhEOdhKk7OLIUSdJ+cSRY57B+0DgGUUlNfpthTfGkauzxrvTsUUaCVhlKeteTXCoJDCa2NOKhOmC4G1H8JBd4OBZReSRGkqcb/CO1PyLJTLB4j1q8JYaIutEjSLX8YKM+a6phdMsdLFUoV5RTm9JSkuDN8WcIon0NZMNZWh1q8C7SJEwV5HxrmnnTrf3KoJBlmCYI2ilSLlfEvlE4011NNgjgthzEua0oKK7JLE7HZHlEl60BLMVFewg4EWNt0ThrVNEVkkiTwpKXSWJzdRENgvKGq4IhjsiezgSFtsfCUq8qki5S1LRQeYQQ4nemmCkImWMw3tFUoUBZk4NOeZYEp4XRKTGa6wJjrWNHBVJR4m3FCnbuD6aak2WsMTh3SZImGCIPKNgsDpVwnsa70K31lCFJZYcwwSMFcQulGTsZuEaSdBXkPGZhu0FsdUO73RHjq8MPGGIfaGIbVTk6iuI3GFgucHrIQkmWSJdBd7BBu+uOryWAhY7+Lki9rK5wtEQzWwvtbqGhIMFwWRJsElsY4m9IIg9L6lCX0VklaPAYkfkZEGDnOWowlBJjtMUkcGK4Lg6EtoZInMUBVYLgn0UsdmCyCz7gIGHFfk+k1QwTh5We7A9x+IdJ6CvIkEagms0hR50eH9UnTQJ+2oiKyVlLFUE+8gBGu8MQ3CppUHesnjTHN4QB/UGPhCTHLFPHMFrCqa73gqObUJGa03wgbhHkrCfpEpzNLE7JDS25FMKhlhKKWKfCgqstLCPu1zBXy0J2ztwjtixBu8UTRn9LVtkmCN2iyFhtME70JHRQ1KVZXqKI/KNIKYMCYs1GUMEKbM1bKOI9LDXC7zbHS+bt+1MTWS9odA9DtrYtpbImQJ2VHh/lisEwaHqUk1kjKTAKknkBEXkbkdMGwq0dnhzLJF3NJH3JVwrqOB4Sca2hti75nmJN0WzxS6UxDYoEpxpa4htVlRjkYE7DZGzJVU72uC9IyhQL4i8YfGWSYLLNcHXloyz7QhNifmKSE9JgfGmuyLhc403Xm9vqcp6gXe3xuuv8F6VJNxkyTHEkHG2g0aKXL0MsXc1bGfgas2//dCONXiNLCX+5mB7eZIl1kHh7ajwpikyzlUUWOVOsjSQlsS+M0R+pPje/dzBXRZGO0rMtgQrLLG9VSu9n6CMXS3BhwYmSoIBhsjNBmZbgusE9BCPCP5triU4VhNbJfE+swSP27aayE8tuTpYYjtrYjMVGZdp2NpS1s6aBnKSHDsbKuplKbHM4a0wMFd/5/DmGyKrJSUaW4IBrqUhx0vyfzTBBLPIUcnZdrAkNsKR0sWRspumSns6Ch0v/qqIbBYUWKvPU/CFoyrDJGwSNFhbA/MlzKqjrO80hRbpKx0Jewsi/STftwGSlKc1JZyAzx05dhLEdnfQvhZOqiHWWEAHC7+30FuRcZUgaO5gpaIK+xsiHRUsqaPElTV40xQZQ107Q9BZE1nryDVGU9ZSQ47bmhBpLcYpUt7S+xuK/FiT8qKjwXYw5ypS2iuCv7q1gtgjhuBuB8LCFY5cUuCNtsQOFcT+4Ih9JX+k8Ea6v0iCIRZOtCT0Et00JW5UeC85Cg0ScK0k411HcG1zKtre3SeITBRk7WfwDhEvaYLTHP9le0m8By0JDwn4TlLW/aJOvGHxdjYUes+ScZigCkYQdNdEOhkiezgShqkx8ueKjI8lDfK2oNiOFvrZH1hS+tk7NV7nOmLHicGWEgubkXKdwdtZknCLJXaCpkrjZBtLZFsDP9CdxWsSr05Sxl6CMmoFbCOgryX40uDtamB7SVmXW4Ihlgpmq+00tBKUUa83WbjLUNkzDmY7cow1JDygyPGlhgGKYKz4vcV7QBNbJIgM11TUqZaMdwTeSguH6rOaw1JRKzaaGyxVm2EJ/uCIrVWUcZUkcp2grMsEjK+DMwS59jQk3Kd6SEq1d0S6uVmO4Bc1lDXTUcHjluCXEq+1OlBDj1pi9zgiXxnKuE0SqTXwhqbETW6RggMEnGl/q49UT2iCzgJvRwVXS2K/d6+ZkyUl7jawSVLit46EwxVljDZwoSQ20sDBihztHfk2yA8NVZghiXwrYHQdfKAOtzsayjhY9bY0yE2CWEeJ9xfzO423xhL5syS2TFJofO2pboHob0nY4GiAgRrvGQEDa/FWSsoaaYl0syRsEt3kWoH3B01shCXhTUWe9w3Bt44SC9QCh3eShQctwbaK2ApLroGCMlZrYqvlY3qYhM0aXpFkPOuoqJ3Dm6fxXrGwVF9gCWZagjPqznfkuMKQ8DPTQRO8ZqG1hPGKEm9IgpGW4DZDgTNriTxvFiq+Lz+0cKfp4wj6OCK9JSnzNSn9LFU7UhKZZMnYwcJ8s8yRsECScK4j5UOB95HFO0CzhY4xJxuCix0lDlEUeMdS6EZBkTsUkZ4K74dugyTXS7aNgL8aqjDfkCE0ZbwkCXpaWCKhl8P7VD5jxykivSyxyZrYERbe168LYu9ZYh86IkscgVLE7tWPKmJv11CgoyJltMEbrohtVAQfO4ImltiHEroYEs7RxAarVpY8AwXMcMReFOTYWe5iiLRQxJ5Q8DtJ8LQhWOhIeFESPGsILhbNDRljNbHzNRlTFbk2S3L0NOS6V1KFJYKUbSTcIIhM0wQ/s2TM0SRMNcQmSap3jCH4yhJZKSkwyRHpYYgsFeQ4U7xoCB7VVOExhXepo9ABBsYbvGWKXPME3lyH95YioZ0gssQRWWbI+FaSMkXijZXwgiTlYdPdkNLaETxlyDVIwqeaEus0aTcYcg0RVOkpR3CSJqIddK+90JCxzsDVloyrFd5ZAr4TBKfaWa6boEA7C7s6EpYaeFPjveooY72mjIccLHJ9HUwVlDhKkmutJDJBwnp1rvulJZggKDRfbXAkvC/4l3ozQOG9a8lxjx0i7nV4jSXc7vhe3OwIxjgSHjdEhhsif9YkPGlus3iLFDnWOFhtCZbJg0UbQcIaR67JjthoCyMEZRwhiXWyxO5QxI6w5NhT4U1WsJvDO60J34fW9hwzwlKij6ZAW9ne4L0s8C6XeBMEkd/LQy1VucBRot6QMlbivaBhoBgjqGiCJNhsqVp/S2SsG6DIONCR0dXhvWbJ+MRRZJkkuEjgDXJjFQW6SSL7GXK8Z2CZg7cVsbWGoKmEpzQ5elpiy8Ryg7dMkLLUEauzeO86CuwlSOlgYLojZWeJ9xM3S1PWfEfKl5ISLQ0MEKR8YOB2QfCxJBjrKPCN4f9MkaSsqoVXJBmP7EpFZ9UQfOoOFwSzBN4MQ8LsGrymlipcJQhmy0GaQjPqCHaXRwuCZwRbqK2Fg9wlClZqYicrIgMdZfxTQ0c7TBIbrChxmuzoKG8XRaSrIhhiyNFJkrC7oIAWMEOQa5aBekPCRknCo4IKPrYkvCDI8aYmY7WFtprgekcJZ3oLIqssCSMtFbQTJKwXYy3BY5oCh2iKPCpJOE+zRdpYgi6O2KmOAgvVCYaU4ySRek1sgyFhJ403QFHiVEmJHwtybO1gs8Hr5+BETQX3War0qZngYGgtVZtoqd6vFSk/UwdZElYqyjrF4HXUeFspIi9IGKf4j92pKGAdCYMVsbcV3kRF0N+R8LUd5PCsIGWoxDtBkCI0nKofdJQxT+LtZflvuc8Q3CjwWkq8KwUpHzkK/NmSsclCL0nseQdj5FRH5CNHSgtLiW80Of5HU9Hhlsga9bnBq3fEVltKfO5IaSTmGjjc4J0otcP7QsJUSQM8pEj5/wCuUuC2DWz8AAAAAElFTkSuQmCC\");\ +}\ +.ace-ambiance .ace_indent-guide {\ +background: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAEklEQVQImWNQUFD4z6Crq/sfAAuYAuYl+7lfAAAAAElFTkSuQmCC\") right repeat-y;\ +}"; + +var dom = require("../lib/dom"); +dom.importCssString(exports.cssText, exports.cssClass); + +}); diff --git a/public/ace_editor/theme-chaos.js b/public/ace_editor/theme-chaos.js new file mode 100755 index 0000000..4154499 --- /dev/null +++ b/public/ace_editor/theme-chaos.js @@ -0,0 +1,179 @@ +/* ***** BEGIN LICENSE BLOCK ***** + * Distributed under the BSD license: + * + * Copyright 2011 Irakli Gozalishvili. All rights reserved. + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to + * deal in the Software without restriction, including without limitation the + * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or + * sell copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS + * IN THE SOFTWARE. + * ***** END LICENSE BLOCK ***** */ + +ace.define('ace/theme/chaos', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { + +exports.isDark = true; +exports.cssClass = "ace-chaos"; +exports.cssText = ".ace-chaos .ace_gutter {\ +background: #141414;\ +color: #595959;\ +border-right: 1px solid #282828;\ +}\ +.ace-chaos .ace_gutter-cell.ace_warning {\ +background-image: none;\ +background: #FC0;\ +border-left: none;\ +padding-left: 0;\ +color: #000;\ +}\ +.ace-chaos .ace_gutter-cell.ace_error {\ +background-position: -6px center;\ +background-image: none;\ +background: #F10;\ +border-left: none;\ +padding-left: 0;\ +color: #000;\ +}\ +.ace-chaos .ace_print-margin {\ +border-left: 1px solid #555;\ +right: 0;\ +background: #1D1D1D;\ +}\ +.ace-chaos {\ +background-color: #161616;\ +color: #E6E1DC;\ +}\ +.ace-chaos .ace_cursor {\ +border-left: 2px solid #FFFFFF;\ +}\ +.ace-chaos .ace_cursor.ace_overwrite {\ +border-left: 0px;\ +border-bottom: 1px solid #FFFFFF;\ +}\ +.ace-chaos .ace_marker-layer .ace_selection {\ +background: #494836;\ +}\ +.ace-chaos .ace_marker-layer .ace_step {\ +background: rgb(198, 219, 174);\ +}\ +.ace-chaos .ace_marker-layer .ace_bracket {\ +margin: -1px 0 0 -1px;\ +border: 1px solid #FCE94F;\ +}\ +.ace-chaos .ace_marker-layer .ace_active-line {\ +background: #333;\ +}\ +.ace-chaos .ace_gutter-active-line {\ +background-color: #222;\ +}\ +.ace-chaos .ace_invisible {\ +color: #404040;\ +}\ +.ace-chaos .ace_keyword {\ +color:#00698F;\ +}\ +.ace-chaos .ace_keyword.ace_operator {\ +color:#FF308F;\ +}\ +.ace-chaos .ace_constant {\ +color:#1EDAFB;\ +}\ +.ace-chaos .ace_constant.ace_language {\ +color:#FDC251;\ +}\ +.ace-chaos .ace_constant.ace_library {\ +color:#8DFF0A;\ +}\ +.ace-chaos .ace_constant.ace_numeric {\ +color:#58C554;\ +}\ +.ace-chaos .ace_invalid {\ +color:#FFFFFF;\ +background-color:#990000;\ +}\ +.ace-chaos .ace_invalid.ace_deprecated {\ +color:#FFFFFF;\ +background-color:#990000;\ +}\ +.ace-chaos .ace_support {\ +color: #999;\ +}\ +.ace-chaos .ace_support.ace_function {\ +color:#00AEEF;\ +}\ +.ace-chaos .ace_function {\ +color:#00AEEF;\ +}\ +.ace-chaos .ace_string {\ +color:#58C554;\ +}\ +.ace-chaos .ace_comment {\ +color:#555;\ +font-style:italic;\ +padding-bottom: 0px;\ +}\ +.ace-chaos .ace_variable {\ +color:#997744;\ +}\ +.ace-chaos .ace_meta.ace_tag {\ +color:#BE53E6;\ +}\ +.ace-chaos .ace_entity.ace_other.ace_attribute-name {\ +color:#FFFF89;\ +}\ +.ace-chaos .ace_markup.ace_underline {\ +text-decoration: underline;\ +}\ +.ace-chaos .ace_fold-widget {\ +text-align: center;\ +}\ +.ace-chaos .ace_fold-widget:hover {\ +color: #777;\ +}\ +.ace-chaos .ace_fold-widget.ace_start,\ +.ace-chaos .ace_fold-widget.ace_end,\ +.ace-chaos .ace_fold-widget.ace_closed{\ +background: none;\ +border: none;\ +box-shadow: none;\ +}\ +.ace-chaos .ace_fold-widget.ace_start:after {\ +content: '▾'\ +}\ +.ace-chaos .ace_fold-widget.ace_end:after {\ +content: '▴'\ +}\ +.ace-chaos .ace_fold-widget.ace_closed:after {\ +content: '‣'\ +}\ +.ace-chaos .ace_indent-guide {\ +border-right:1px dotted #333;\ +margin-right:-1px;\ +}\ +.ace-chaos .ace_fold { \ +background: #222; \ +border-radius: 3px; \ +color: #7AF; \ +border: none; \ +}\ +.ace-chaos .ace_fold:hover {\ +background: #CCC; \ +color: #000;\ +}\ +"; + +var dom = require("../lib/dom"); +dom.importCssString(exports.cssText, exports.cssClass); + +}); \ No newline at end of file diff --git a/public/ace_editor/theme-chrome-noconflict.js b/public/ace_editor/theme-chrome-noconflict.js deleted file mode 100644 index 6fa4e39..0000000 --- a/public/ace_editor/theme-chrome-noconflict.js +++ /dev/null @@ -1 +0,0 @@ -ace.define("ace/theme/chrome",["require","exports","module","ace/lib/dom"],function(a,b,c){b.cssClass="ace-chrome",b.cssText=".ace-chrome .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-chrome .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-chrome .ace_gutter { background: #e8e8e8; color: #333; overflow : hidden;}.ace-chrome .ace_gutter-layer { width: 100%; text-align: right;}.ace-chrome .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-chrome .ace_text-layer { cursor: text;}.ace-chrome .ace_cursor { border-left: 2px solid black;}.ace-chrome .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid black;}.ace-chrome .ace_line .ace_invisible { color: rgb(191, 191, 191);}.ace-chrome .ace_line .ace_constant.ace_buildin { color: rgb(88, 72, 246);}.ace-chrome .ace_line .ace_constant.ace_language { color: rgb(88, 92, 246);}.ace-chrome .ace_line .ace_constant.ace_library { color: rgb(6, 150, 14);}.ace-chrome .ace_line .ace_invalid { background-color: rgb(153, 0, 0); color: white;}.ace-chrome .ace_line .ace_fold {}.ace-chrome .ace_line .ace_support.ace_function { color: rgb(60, 76, 114);}.ace-chrome .ace_line .ace_support.ace_constant { color: rgb(6, 150, 14);}.ace-chrome .ace_line .ace_support.ace_type,.ace-chrome .ace_line .ace_support.ace_class { color: rgb(109, 121, 222);}.ace-chrome .ace_variable.ace_parameter { font-style:italic;color:#FD971F;}.ace-chrome .ace_line .ace_keyword.ace_operator { color: rgb(104, 118, 135);}.ace-chrome .ace_line .ace_comment { color: #236e24;}.ace-chrome .ace_line .ace_comment.ace_doc { color: #236e24;}.ace-chrome .ace_line .ace_comment.ace_doc.ace_tag { color: #236e24;}.ace-chrome .ace_line .ace_constant.ace_numeric { color: rgb(0, 0, 205);}.ace-chrome .ace_line .ace_variable { color: rgb(49, 132, 149);}.ace-chrome .ace_line .ace_xml_pe { color: rgb(104, 104, 91);}.ace-chrome .ace_entity.ace_name.ace_function { color: #0000A2;}.ace-chrome .ace_markup.ace_markupine { text-decoration:underline;}.ace-chrome .ace_markup.ace_heading { color: rgb(12, 7, 255);}.ace-chrome .ace_markup.ace_list { color:rgb(185, 6, 144);}.ace-chrome .ace_marker-layer .ace_selection { background: rgb(181, 213, 255);}.ace-chrome .ace_marker-layer .ace_step { background: rgb(252, 255, 0);}.ace-chrome .ace_marker-layer .ace_stack { background: rgb(164, 229, 101);}.ace-chrome .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid rgb(192, 192, 192);}.ace-chrome .ace_marker-layer .ace_active_line { background: rgba(0, 0, 0, 0.07);}.ace-chrome .ace_marker-layer .ace_selected_word { background: rgb(250, 250, 255); border: 1px solid rgb(200, 200, 250);}.ace-chrome .ace_storage,.ace-chrome .ace_line .ace_keyword,.ace-chrome .ace_meta.ace_tag { color: rgb(147, 15, 128);}.ace-chrome .ace_string.ace_regex { color: rgb(255, 0, 0)}.ace-chrome .ace_line .ace_string,.ace-chrome .ace_entity.ace_other.ace_attribute-name{ color: #994409;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)}) \ No newline at end of file diff --git a/public/ace_editor/theme-chrome-uncompressed-noconflict.js b/public/ace_editor/theme-chrome-uncompressed-noconflict.js deleted file mode 100644 index f986390..0000000 --- a/public/ace_editor/theme-chrome-uncompressed-noconflict.js +++ /dev/null @@ -1,207 +0,0 @@ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla Public License Version - * 1.1 (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * http://www.mozilla.org/MPL/ - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - * - * The Original Code is Ajax.org Code Editor (ACE). - * - * The Initial Developer of the Original Code is - * Ajax.org B.V. - * Portions created by the Initial Developer are Copyright (C) 2010 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Fabian Jakobs - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -ace.define('ace/theme/chrome', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { - -exports.cssClass = "ace-chrome"; -exports.cssText = ".ace-chrome .ace_editor {\ - border: 2px solid rgb(159, 159, 159);\ -}\ -\ -.ace-chrome .ace_editor.ace_focus {\ - border: 2px solid #327fbd;\ -}\ -\ -.ace-chrome .ace_gutter {\ - background: #e8e8e8;\ - color: #333;\ - overflow : hidden;\ -}\ -\ -.ace-chrome .ace_gutter-layer {\ - width: 100%;\ - text-align: right;\ -}\ -\ -.ace-chrome .ace_print_margin {\ - width: 1px;\ - background: #e8e8e8;\ -}\ -\ -.ace-chrome .ace_text-layer {\ - cursor: text;\ -}\ -\ -.ace-chrome .ace_cursor {\ - border-left: 2px solid black;\ -}\ -\ -.ace-chrome .ace_cursor.ace_overwrite {\ - border-left: 0px;\ - border-bottom: 1px solid black;\ -}\ -\ -.ace-chrome .ace_line .ace_invisible {\ - color: rgb(191, 191, 191);\ -}\ -\ -.ace-chrome .ace_line .ace_constant.ace_buildin {\ - color: rgb(88, 72, 246);\ -}\ -\ -.ace-chrome .ace_line .ace_constant.ace_language {\ - color: rgb(88, 92, 246);\ -}\ -\ -.ace-chrome .ace_line .ace_constant.ace_library {\ - color: rgb(6, 150, 14);\ -}\ -\ -.ace-chrome .ace_line .ace_invalid {\ - background-color: rgb(153, 0, 0);\ - color: white;\ -}\ -\ -.ace-chrome .ace_line .ace_fold {\ -}\ -\ -.ace-chrome .ace_line .ace_support.ace_function {\ - color: rgb(60, 76, 114);\ -}\ -\ -.ace-chrome .ace_line .ace_support.ace_constant {\ - color: rgb(6, 150, 14);\ -}\ -\ -.ace-chrome .ace_line .ace_support.ace_type,\ -.ace-chrome .ace_line .ace_support.ace_class {\ - color: rgb(109, 121, 222);\ -}\ -\ -.ace-chrome .ace_variable.ace_parameter {\ - font-style:italic;\ -color:#FD971F;\ -}\ -.ace-chrome .ace_line .ace_keyword.ace_operator {\ - color: rgb(104, 118, 135);\ -}\ -\ -.ace-chrome .ace_line .ace_comment {\ - color: #236e24;\ -}\ -\ -.ace-chrome .ace_line .ace_comment.ace_doc {\ - color: #236e24;\ -}\ -\ -.ace-chrome .ace_line .ace_comment.ace_doc.ace_tag {\ - color: #236e24;\ -}\ -\ -.ace-chrome .ace_line .ace_constant.ace_numeric {\ - color: rgb(0, 0, 205);\ -}\ -\ -.ace-chrome .ace_line .ace_variable {\ - color: rgb(49, 132, 149);\ -}\ -\ -.ace-chrome .ace_line .ace_xml_pe {\ - color: rgb(104, 104, 91);\ -}\ -\ -.ace-chrome .ace_entity.ace_name.ace_function {\ - color: #0000A2;\ -}\ -\ -.ace-chrome .ace_markup.ace_markupine {\ - text-decoration:underline;\ -}\ -\ -.ace-chrome .ace_markup.ace_heading {\ - color: rgb(12, 7, 255);\ -}\ -\ -.ace-chrome .ace_markup.ace_list {\ - color:rgb(185, 6, 144);\ -}\ -\ -.ace-chrome .ace_marker-layer .ace_selection {\ - background: rgb(181, 213, 255);\ -}\ -\ -.ace-chrome .ace_marker-layer .ace_step {\ - background: rgb(252, 255, 0);\ -}\ -\ -.ace-chrome .ace_marker-layer .ace_stack {\ - background: rgb(164, 229, 101);\ -}\ -\ -.ace-chrome .ace_marker-layer .ace_bracket {\ - margin: -1px 0 0 -1px;\ - border: 1px solid rgb(192, 192, 192);\ -}\ -\ -.ace-chrome .ace_marker-layer .ace_active_line {\ - background: rgba(0, 0, 0, 0.07);\ -}\ -\ -.ace-chrome .ace_marker-layer .ace_selected_word {\ - background: rgb(250, 250, 255);\ - border: 1px solid rgb(200, 200, 250);\ -}\ -\ -.ace-chrome .ace_storage,\ -.ace-chrome .ace_line .ace_keyword,\ -.ace-chrome .ace_meta.ace_tag {\ - color: rgb(147, 15, 128);\ -}\ -\ -.ace-chrome .ace_string.ace_regex {\ - color: rgb(255, 0, 0)\ -}\ -\ -.ace-chrome .ace_line .ace_string,\ -.ace-chrome .ace_entity.ace_other.ace_attribute-name{\ - color: #994409;\ -}"; - -var dom = require("../lib/dom"); -dom.importCssString(exports.cssText, exports.cssClass); - -}); diff --git a/public/ace_editor/theme-chrome-uncompressed.js b/public/ace_editor/theme-chrome-uncompressed.js deleted file mode 100644 index 57700c4..0000000 --- a/public/ace_editor/theme-chrome-uncompressed.js +++ /dev/null @@ -1,207 +0,0 @@ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla Public License Version - * 1.1 (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * http://www.mozilla.org/MPL/ - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - * - * The Original Code is Ajax.org Code Editor (ACE). - * - * The Initial Developer of the Original Code is - * Ajax.org B.V. - * Portions created by the Initial Developer are Copyright (C) 2010 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Fabian Jakobs - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -define('ace/theme/chrome', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { - -exports.cssClass = "ace-chrome"; -exports.cssText = ".ace-chrome .ace_editor {\ - border: 2px solid rgb(159, 159, 159);\ -}\ -\ -.ace-chrome .ace_editor.ace_focus {\ - border: 2px solid #327fbd;\ -}\ -\ -.ace-chrome .ace_gutter {\ - background: #e8e8e8;\ - color: #333;\ - overflow : hidden;\ -}\ -\ -.ace-chrome .ace_gutter-layer {\ - width: 100%;\ - text-align: right;\ -}\ -\ -.ace-chrome .ace_print_margin {\ - width: 1px;\ - background: #e8e8e8;\ -}\ -\ -.ace-chrome .ace_text-layer {\ - cursor: text;\ -}\ -\ -.ace-chrome .ace_cursor {\ - border-left: 2px solid black;\ -}\ -\ -.ace-chrome .ace_cursor.ace_overwrite {\ - border-left: 0px;\ - border-bottom: 1px solid black;\ -}\ -\ -.ace-chrome .ace_line .ace_invisible {\ - color: rgb(191, 191, 191);\ -}\ -\ -.ace-chrome .ace_line .ace_constant.ace_buildin {\ - color: rgb(88, 72, 246);\ -}\ -\ -.ace-chrome .ace_line .ace_constant.ace_language {\ - color: rgb(88, 92, 246);\ -}\ -\ -.ace-chrome .ace_line .ace_constant.ace_library {\ - color: rgb(6, 150, 14);\ -}\ -\ -.ace-chrome .ace_line .ace_invalid {\ - background-color: rgb(153, 0, 0);\ - color: white;\ -}\ -\ -.ace-chrome .ace_line .ace_fold {\ -}\ -\ -.ace-chrome .ace_line .ace_support.ace_function {\ - color: rgb(60, 76, 114);\ -}\ -\ -.ace-chrome .ace_line .ace_support.ace_constant {\ - color: rgb(6, 150, 14);\ -}\ -\ -.ace-chrome .ace_line .ace_support.ace_type,\ -.ace-chrome .ace_line .ace_support.ace_class {\ - color: rgb(109, 121, 222);\ -}\ -\ -.ace-chrome .ace_variable.ace_parameter {\ - font-style:italic;\ -color:#FD971F;\ -}\ -.ace-chrome .ace_line .ace_keyword.ace_operator {\ - color: rgb(104, 118, 135);\ -}\ -\ -.ace-chrome .ace_line .ace_comment {\ - color: #236e24;\ -}\ -\ -.ace-chrome .ace_line .ace_comment.ace_doc {\ - color: #236e24;\ -}\ -\ -.ace-chrome .ace_line .ace_comment.ace_doc.ace_tag {\ - color: #236e24;\ -}\ -\ -.ace-chrome .ace_line .ace_constant.ace_numeric {\ - color: rgb(0, 0, 205);\ -}\ -\ -.ace-chrome .ace_line .ace_variable {\ - color: rgb(49, 132, 149);\ -}\ -\ -.ace-chrome .ace_line .ace_xml_pe {\ - color: rgb(104, 104, 91);\ -}\ -\ -.ace-chrome .ace_entity.ace_name.ace_function {\ - color: #0000A2;\ -}\ -\ -.ace-chrome .ace_markup.ace_markupine {\ - text-decoration:underline;\ -}\ -\ -.ace-chrome .ace_markup.ace_heading {\ - color: rgb(12, 7, 255);\ -}\ -\ -.ace-chrome .ace_markup.ace_list {\ - color:rgb(185, 6, 144);\ -}\ -\ -.ace-chrome .ace_marker-layer .ace_selection {\ - background: rgb(181, 213, 255);\ -}\ -\ -.ace-chrome .ace_marker-layer .ace_step {\ - background: rgb(252, 255, 0);\ -}\ -\ -.ace-chrome .ace_marker-layer .ace_stack {\ - background: rgb(164, 229, 101);\ -}\ -\ -.ace-chrome .ace_marker-layer .ace_bracket {\ - margin: -1px 0 0 -1px;\ - border: 1px solid rgb(192, 192, 192);\ -}\ -\ -.ace-chrome .ace_marker-layer .ace_active_line {\ - background: rgba(0, 0, 0, 0.07);\ -}\ -\ -.ace-chrome .ace_marker-layer .ace_selected_word {\ - background: rgb(250, 250, 255);\ - border: 1px solid rgb(200, 200, 250);\ -}\ -\ -.ace-chrome .ace_storage,\ -.ace-chrome .ace_line .ace_keyword,\ -.ace-chrome .ace_meta.ace_tag {\ - color: rgb(147, 15, 128);\ -}\ -\ -.ace-chrome .ace_string.ace_regex {\ - color: rgb(255, 0, 0)\ -}\ -\ -.ace-chrome .ace_line .ace_string,\ -.ace-chrome .ace_entity.ace_other.ace_attribute-name{\ - color: #994409;\ -}"; - -var dom = require("../lib/dom"); -dom.importCssString(exports.cssText, exports.cssClass); - -}); diff --git a/public/ace_editor/theme-chrome.js b/public/ace_editor/theme-chrome.js old mode 100644 new mode 100755 index dc0af00..4ec820f --- a/public/ace_editor/theme-chrome.js +++ b/public/ace_editor/theme-chrome.js @@ -1 +1,158 @@ -define("ace/theme/chrome",["require","exports","module","ace/lib/dom"],function(a,b,c){b.cssClass="ace-chrome",b.cssText=".ace-chrome .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-chrome .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-chrome .ace_gutter { background: #e8e8e8; color: #333; overflow : hidden;}.ace-chrome .ace_gutter-layer { width: 100%; text-align: right;}.ace-chrome .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-chrome .ace_text-layer { cursor: text;}.ace-chrome .ace_cursor { border-left: 2px solid black;}.ace-chrome .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid black;}.ace-chrome .ace_line .ace_invisible { color: rgb(191, 191, 191);}.ace-chrome .ace_line .ace_constant.ace_buildin { color: rgb(88, 72, 246);}.ace-chrome .ace_line .ace_constant.ace_language { color: rgb(88, 92, 246);}.ace-chrome .ace_line .ace_constant.ace_library { color: rgb(6, 150, 14);}.ace-chrome .ace_line .ace_invalid { background-color: rgb(153, 0, 0); color: white;}.ace-chrome .ace_line .ace_fold {}.ace-chrome .ace_line .ace_support.ace_function { color: rgb(60, 76, 114);}.ace-chrome .ace_line .ace_support.ace_constant { color: rgb(6, 150, 14);}.ace-chrome .ace_line .ace_support.ace_type,.ace-chrome .ace_line .ace_support.ace_class { color: rgb(109, 121, 222);}.ace-chrome .ace_variable.ace_parameter { font-style:italic;color:#FD971F;}.ace-chrome .ace_line .ace_keyword.ace_operator { color: rgb(104, 118, 135);}.ace-chrome .ace_line .ace_comment { color: #236e24;}.ace-chrome .ace_line .ace_comment.ace_doc { color: #236e24;}.ace-chrome .ace_line .ace_comment.ace_doc.ace_tag { color: #236e24;}.ace-chrome .ace_line .ace_constant.ace_numeric { color: rgb(0, 0, 205);}.ace-chrome .ace_line .ace_variable { color: rgb(49, 132, 149);}.ace-chrome .ace_line .ace_xml_pe { color: rgb(104, 104, 91);}.ace-chrome .ace_entity.ace_name.ace_function { color: #0000A2;}.ace-chrome .ace_markup.ace_markupine { text-decoration:underline;}.ace-chrome .ace_markup.ace_heading { color: rgb(12, 7, 255);}.ace-chrome .ace_markup.ace_list { color:rgb(185, 6, 144);}.ace-chrome .ace_marker-layer .ace_selection { background: rgb(181, 213, 255);}.ace-chrome .ace_marker-layer .ace_step { background: rgb(252, 255, 0);}.ace-chrome .ace_marker-layer .ace_stack { background: rgb(164, 229, 101);}.ace-chrome .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid rgb(192, 192, 192);}.ace-chrome .ace_marker-layer .ace_active_line { background: rgba(0, 0, 0, 0.07);}.ace-chrome .ace_marker-layer .ace_selected_word { background: rgb(250, 250, 255); border: 1px solid rgb(200, 200, 250);}.ace-chrome .ace_storage,.ace-chrome .ace_line .ace_keyword,.ace-chrome .ace_meta.ace_tag { color: rgb(147, 15, 128);}.ace-chrome .ace_string.ace_regex { color: rgb(255, 0, 0)}.ace-chrome .ace_line .ace_string,.ace-chrome .ace_entity.ace_other.ace_attribute-name{ color: #994409;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)}) \ No newline at end of file +/* ***** BEGIN LICENSE BLOCK ***** + * Distributed under the BSD license: + * + * Copyright (c) 2010, Ajax.org B.V. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Ajax.org B.V. nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL AJAX.ORG B.V. BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * ***** END LICENSE BLOCK ***** */ + +ace.define('ace/theme/chrome', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { + +exports.isDark = false; +exports.cssClass = "ace-chrome"; +exports.cssText = ".ace-chrome .ace_gutter {\ +background: #ebebeb;\ +color: #333;\ +overflow : hidden;\ +}\ +.ace-chrome .ace_print-margin {\ +width: 1px;\ +background: #e8e8e8;\ +}\ +.ace-chrome {\ +background-color: #FFFFFF;\ +color: black;\ +}\ +.ace-chrome .ace_cursor {\ +color: black;\ +}\ +.ace-chrome .ace_invisible {\ +color: rgb(191, 191, 191);\ +}\ +.ace-chrome .ace_constant.ace_buildin {\ +color: rgb(88, 72, 246);\ +}\ +.ace-chrome .ace_constant.ace_language {\ +color: rgb(88, 92, 246);\ +}\ +.ace-chrome .ace_constant.ace_library {\ +color: rgb(6, 150, 14);\ +}\ +.ace-chrome .ace_invalid {\ +background-color: rgb(153, 0, 0);\ +color: white;\ +}\ +.ace-chrome .ace_fold {\ +}\ +.ace-chrome .ace_support.ace_function {\ +color: rgb(60, 76, 114);\ +}\ +.ace-chrome .ace_support.ace_constant {\ +color: rgb(6, 150, 14);\ +}\ +.ace-chrome .ace_support.ace_type,\ +.ace-chrome .ace_support.ace_class\ +.ace-chrome .ace_support.ace_other {\ +color: rgb(109, 121, 222);\ +}\ +.ace-chrome .ace_variable.ace_parameter {\ +font-style:italic;\ +color:#FD971F;\ +}\ +.ace-chrome .ace_keyword.ace_operator {\ +color: rgb(104, 118, 135);\ +}\ +.ace-chrome .ace_comment {\ +color: #236e24;\ +}\ +.ace-chrome .ace_comment.ace_doc {\ +color: #236e24;\ +}\ +.ace-chrome .ace_comment.ace_doc.ace_tag {\ +color: #236e24;\ +}\ +.ace-chrome .ace_constant.ace_numeric {\ +color: rgb(0, 0, 205);\ +}\ +.ace-chrome .ace_variable {\ +color: rgb(49, 132, 149);\ +}\ +.ace-chrome .ace_xml-pe {\ +color: rgb(104, 104, 91);\ +}\ +.ace-chrome .ace_entity.ace_name.ace_function {\ +color: #0000A2;\ +}\ +.ace-chrome .ace_heading {\ +color: rgb(12, 7, 255);\ +}\ +.ace-chrome .ace_list {\ +color:rgb(185, 6, 144);\ +}\ +.ace-chrome .ace_marker-layer .ace_selection {\ +background: rgb(181, 213, 255);\ +}\ +.ace-chrome .ace_marker-layer .ace_step {\ +background: rgb(252, 255, 0);\ +}\ +.ace-chrome .ace_marker-layer .ace_stack {\ +background: rgb(164, 229, 101);\ +}\ +.ace-chrome .ace_marker-layer .ace_bracket {\ +margin: -1px 0 0 -1px;\ +border: 1px solid rgb(192, 192, 192);\ +}\ +.ace-chrome .ace_marker-layer .ace_active-line {\ +background: rgba(0, 0, 0, 0.07);\ +}\ +.ace-chrome .ace_gutter-active-line {\ +background-color : #dcdcdc;\ +}\ +.ace-chrome .ace_marker-layer .ace_selected-word {\ +background: rgb(250, 250, 255);\ +border: 1px solid rgb(200, 200, 250);\ +}\ +.ace-chrome .ace_storage,\ +.ace-chrome .ace_keyword,\ +.ace-chrome .ace_meta.ace_tag {\ +color: rgb(147, 15, 128);\ +}\ +.ace-chrome .ace_string.ace_regex {\ +color: rgb(255, 0, 0)\ +}\ +.ace-chrome .ace_string {\ +color: #1A1AA6;\ +}\ +.ace-chrome .ace_entity.ace_other.ace_attribute-name {\ +color: #994409;\ +}\ +.ace-chrome .ace_indent-guide {\ +background: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAE0lEQVQImWP4////f4bLly//BwAmVgd1/w11/gAAAABJRU5ErkJggg==\") right repeat-y;\ +}\ +"; + +var dom = require("../lib/dom"); +dom.importCssString(exports.cssText, exports.cssClass); +}); diff --git a/public/ace_editor/theme-clouds-noconflict.js b/public/ace_editor/theme-clouds-noconflict.js deleted file mode 100644 index cfff36a..0000000 --- a/public/ace_editor/theme-clouds-noconflict.js +++ /dev/null @@ -1 +0,0 @@ -ace.define("ace/theme/clouds",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!1,b.cssClass="ace-clouds",b.cssText=".ace-clouds .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-clouds .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-clouds .ace_gutter { background: #e8e8e8; color: #333;}.ace-clouds .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-clouds .ace_scroller { background-color: #FFFFFF;}.ace-clouds .ace_text-layer { cursor: text; color: #000000;}.ace-clouds .ace_cursor { border-left: 2px solid #000000;}.ace-clouds .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #000000;}.ace-clouds .ace_marker-layer .ace_selection { background: #BDD5FC;}.ace-clouds.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #FFFFFF; border-radius: 2px;}.ace-clouds .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-clouds .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid #BFBFBF;}.ace-clouds .ace_marker-layer .ace_active_line { background: #FFFBD1;}.ace-clouds .ace_marker-layer .ace_selected_word { border: 1px solid #BDD5FC;}.ace-clouds .ace_invisible { color: #BFBFBF;}.ace-clouds .ace_keyword, .ace-clouds .ace_meta { color:#AF956F;}.ace-clouds .ace_keyword.ace_operator { color:#484848;}.ace-clouds .ace_constant.ace_language { color:#39946A;}.ace-clouds .ace_constant.ace_numeric { color:#46A609;}.ace-clouds .ace_invalid { background-color:#FF002A;}.ace-clouds .ace_fold { background-color: #AF956F; border-color: #000000;}.ace-clouds .ace_support.ace_function { color:#C52727;}.ace-clouds .ace_storage { color:#C52727;}.ace-clouds .ace_string { color:#5D90CD;}.ace-clouds .ace_comment { color:#BCC8BA;}.ace-clouds .ace_entity.ace_other.ace_attribute-name { color:#606060;}.ace-clouds .ace_markup.ace_underline { text-decoration:underline;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)}) \ No newline at end of file diff --git a/public/ace_editor/theme-clouds-uncompressed-noconflict.js b/public/ace_editor/theme-clouds-uncompressed-noconflict.js deleted file mode 100644 index f332633..0000000 --- a/public/ace_editor/theme-clouds-uncompressed-noconflict.js +++ /dev/null @@ -1,160 +0,0 @@ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla Public License Version - * 1.1 (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * http://www.mozilla.org/MPL/ - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - * - * The Original Code is Ajax.org Code Editor (ACE). - * - * The Initial Developer of the Original Code is - * Ajax.org B.V. - * Portions created by the Initial Developer are Copyright (C) 2010 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Fabian Jakobs - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -ace.define('ace/theme/clouds', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { - -exports.isDark = false; -exports.cssClass = "ace-clouds"; -exports.cssText = "\ -.ace-clouds .ace_editor {\ - border: 2px solid rgb(159, 159, 159);\ -}\ -\ -.ace-clouds .ace_editor.ace_focus {\ - border: 2px solid #327fbd;\ -}\ -\ -.ace-clouds .ace_gutter {\ - background: #e8e8e8;\ - color: #333;\ -}\ -\ -.ace-clouds .ace_print_margin {\ - width: 1px;\ - background: #e8e8e8;\ -}\ -\ -.ace-clouds .ace_scroller {\ - background-color: #FFFFFF;\ -}\ -\ -.ace-clouds .ace_text-layer {\ - cursor: text;\ - color: #000000;\ -}\ -\ -.ace-clouds .ace_cursor {\ - border-left: 2px solid #000000;\ -}\ -\ -.ace-clouds .ace_cursor.ace_overwrite {\ - border-left: 0px;\ - border-bottom: 1px solid #000000;\ -}\ -\ -.ace-clouds .ace_marker-layer .ace_selection {\ - background: #BDD5FC;\ -}\ -\ -.ace-clouds.multiselect .ace_selection.start {\ - box-shadow: 0 0 3px 0px #FFFFFF;\ - border-radius: 2px;\ -}\ -\ -.ace-clouds .ace_marker-layer .ace_step {\ - background: rgb(198, 219, 174);\ -}\ -\ -.ace-clouds .ace_marker-layer .ace_bracket {\ - margin: -1px 0 0 -1px;\ - border: 1px solid #BFBFBF;\ -}\ -\ -.ace-clouds .ace_marker-layer .ace_active_line {\ - background: #FFFBD1;\ -}\ -\ -.ace-clouds .ace_marker-layer .ace_selected_word {\ - border: 1px solid #BDD5FC;\ -}\ -\ -.ace-clouds .ace_invisible {\ - color: #BFBFBF;\ -}\ -\ -.ace-clouds .ace_keyword, .ace-clouds .ace_meta {\ - color:#AF956F;\ -}\ -\ -.ace-clouds .ace_keyword.ace_operator {\ - color:#484848;\ -}\ -\ -.ace-clouds .ace_constant.ace_language {\ - color:#39946A;\ -}\ -\ -.ace-clouds .ace_constant.ace_numeric {\ - color:#46A609;\ -}\ -\ -.ace-clouds .ace_invalid {\ - background-color:#FF002A;\ -}\ -\ -.ace-clouds .ace_fold {\ - background-color: #AF956F;\ - border-color: #000000;\ -}\ -\ -.ace-clouds .ace_support.ace_function {\ - color:#C52727;\ -}\ -\ -.ace-clouds .ace_storage {\ - color:#C52727;\ -}\ -\ -.ace-clouds .ace_string {\ - color:#5D90CD;\ -}\ -\ -.ace-clouds .ace_comment {\ - color:#BCC8BA;\ -}\ -\ -.ace-clouds .ace_entity.ace_other.ace_attribute-name {\ - color:#606060;\ -}\ -\ -.ace-clouds .ace_markup.ace_underline {\ - text-decoration:underline;\ -}"; - - var dom = require("../lib/dom"); - dom.importCssString(exports.cssText, exports.cssClass); -}); diff --git a/public/ace_editor/theme-clouds-uncompressed.js b/public/ace_editor/theme-clouds-uncompressed.js deleted file mode 100644 index df3585c..0000000 --- a/public/ace_editor/theme-clouds-uncompressed.js +++ /dev/null @@ -1,160 +0,0 @@ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla Public License Version - * 1.1 (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * http://www.mozilla.org/MPL/ - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - * - * The Original Code is Ajax.org Code Editor (ACE). - * - * The Initial Developer of the Original Code is - * Ajax.org B.V. - * Portions created by the Initial Developer are Copyright (C) 2010 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Fabian Jakobs - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -define('ace/theme/clouds', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { - -exports.isDark = false; -exports.cssClass = "ace-clouds"; -exports.cssText = "\ -.ace-clouds .ace_editor {\ - border: 2px solid rgb(159, 159, 159);\ -}\ -\ -.ace-clouds .ace_editor.ace_focus {\ - border: 2px solid #327fbd;\ -}\ -\ -.ace-clouds .ace_gutter {\ - background: #e8e8e8;\ - color: #333;\ -}\ -\ -.ace-clouds .ace_print_margin {\ - width: 1px;\ - background: #e8e8e8;\ -}\ -\ -.ace-clouds .ace_scroller {\ - background-color: #FFFFFF;\ -}\ -\ -.ace-clouds .ace_text-layer {\ - cursor: text;\ - color: #000000;\ -}\ -\ -.ace-clouds .ace_cursor {\ - border-left: 2px solid #000000;\ -}\ -\ -.ace-clouds .ace_cursor.ace_overwrite {\ - border-left: 0px;\ - border-bottom: 1px solid #000000;\ -}\ -\ -.ace-clouds .ace_marker-layer .ace_selection {\ - background: #BDD5FC;\ -}\ -\ -.ace-clouds.multiselect .ace_selection.start {\ - box-shadow: 0 0 3px 0px #FFFFFF;\ - border-radius: 2px;\ -}\ -\ -.ace-clouds .ace_marker-layer .ace_step {\ - background: rgb(198, 219, 174);\ -}\ -\ -.ace-clouds .ace_marker-layer .ace_bracket {\ - margin: -1px 0 0 -1px;\ - border: 1px solid #BFBFBF;\ -}\ -\ -.ace-clouds .ace_marker-layer .ace_active_line {\ - background: #FFFBD1;\ -}\ -\ -.ace-clouds .ace_marker-layer .ace_selected_word {\ - border: 1px solid #BDD5FC;\ -}\ -\ -.ace-clouds .ace_invisible {\ - color: #BFBFBF;\ -}\ -\ -.ace-clouds .ace_keyword, .ace-clouds .ace_meta {\ - color:#AF956F;\ -}\ -\ -.ace-clouds .ace_keyword.ace_operator {\ - color:#484848;\ -}\ -\ -.ace-clouds .ace_constant.ace_language {\ - color:#39946A;\ -}\ -\ -.ace-clouds .ace_constant.ace_numeric {\ - color:#46A609;\ -}\ -\ -.ace-clouds .ace_invalid {\ - background-color:#FF002A;\ -}\ -\ -.ace-clouds .ace_fold {\ - background-color: #AF956F;\ - border-color: #000000;\ -}\ -\ -.ace-clouds .ace_support.ace_function {\ - color:#C52727;\ -}\ -\ -.ace-clouds .ace_storage {\ - color:#C52727;\ -}\ -\ -.ace-clouds .ace_string {\ - color:#5D90CD;\ -}\ -\ -.ace-clouds .ace_comment {\ - color:#BCC8BA;\ -}\ -\ -.ace-clouds .ace_entity.ace_other.ace_attribute-name {\ - color:#606060;\ -}\ -\ -.ace-clouds .ace_markup.ace_underline {\ - text-decoration:underline;\ -}"; - - var dom = require("../lib/dom"); - dom.importCssString(exports.cssText, exports.cssClass); -}); diff --git a/public/ace_editor/theme-clouds.js b/public/ace_editor/theme-clouds.js old mode 100644 new mode 100755 index efc9705..14202bd --- a/public/ace_editor/theme-clouds.js +++ b/public/ace_editor/theme-clouds.js @@ -1 +1,126 @@ -define("ace/theme/clouds",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!1,b.cssClass="ace-clouds",b.cssText=".ace-clouds .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-clouds .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-clouds .ace_gutter { background: #e8e8e8; color: #333;}.ace-clouds .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-clouds .ace_scroller { background-color: #FFFFFF;}.ace-clouds .ace_text-layer { cursor: text; color: #000000;}.ace-clouds .ace_cursor { border-left: 2px solid #000000;}.ace-clouds .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #000000;}.ace-clouds .ace_marker-layer .ace_selection { background: #BDD5FC;}.ace-clouds.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #FFFFFF; border-radius: 2px;}.ace-clouds .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-clouds .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid #BFBFBF;}.ace-clouds .ace_marker-layer .ace_active_line { background: #FFFBD1;}.ace-clouds .ace_marker-layer .ace_selected_word { border: 1px solid #BDD5FC;}.ace-clouds .ace_invisible { color: #BFBFBF;}.ace-clouds .ace_keyword, .ace-clouds .ace_meta { color:#AF956F;}.ace-clouds .ace_keyword.ace_operator { color:#484848;}.ace-clouds .ace_constant.ace_language { color:#39946A;}.ace-clouds .ace_constant.ace_numeric { color:#46A609;}.ace-clouds .ace_invalid { background-color:#FF002A;}.ace-clouds .ace_fold { background-color: #AF956F; border-color: #000000;}.ace-clouds .ace_support.ace_function { color:#C52727;}.ace-clouds .ace_storage { color:#C52727;}.ace-clouds .ace_string { color:#5D90CD;}.ace-clouds .ace_comment { color:#BCC8BA;}.ace-clouds .ace_entity.ace_other.ace_attribute-name { color:#606060;}.ace-clouds .ace_markup.ace_underline { text-decoration:underline;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)}) \ No newline at end of file +/* ***** BEGIN LICENSE BLOCK ***** + * Distributed under the BSD license: + * + * Copyright (c) 2010, Ajax.org B.V. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Ajax.org B.V. nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL AJAX.ORG B.V. BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * ***** END LICENSE BLOCK ***** */ + +ace.define('ace/theme/clouds', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { + +exports.isDark = false; +exports.cssClass = "ace-clouds"; +exports.cssText = ".ace-clouds .ace_gutter {\ +background: #ebebeb;\ +color: #333\ +}\ +.ace-clouds .ace_print-margin {\ +width: 1px;\ +background: #e8e8e8\ +}\ +.ace-clouds {\ +background-color: #FFFFFF;\ +color: #000000\ +}\ +.ace-clouds .ace_cursor {\ +color: #000000\ +}\ +.ace-clouds .ace_marker-layer .ace_selection {\ +background: #BDD5FC\ +}\ +.ace-clouds.ace_multiselect .ace_selection.ace_start {\ +box-shadow: 0 0 3px 0px #FFFFFF;\ +border-radius: 2px\ +}\ +.ace-clouds .ace_marker-layer .ace_step {\ +background: rgb(255, 255, 0)\ +}\ +.ace-clouds .ace_marker-layer .ace_bracket {\ +margin: -1px 0 0 -1px;\ +border: 1px solid #BFBFBF\ +}\ +.ace-clouds .ace_marker-layer .ace_active-line {\ +background: #FFFBD1\ +}\ +.ace-clouds .ace_gutter-active-line {\ +background-color : #dcdcdc\ +}\ +.ace-clouds .ace_marker-layer .ace_selected-word {\ +border: 1px solid #BDD5FC\ +}\ +.ace-clouds .ace_invisible {\ +color: #BFBFBF\ +}\ +.ace-clouds .ace_keyword,\ +.ace-clouds .ace_meta,\ +.ace-clouds .ace_support.ace_constant.ace_property-value {\ +color: #AF956F\ +}\ +.ace-clouds .ace_keyword.ace_operator {\ +color: #484848\ +}\ +.ace-clouds .ace_keyword.ace_other.ace_unit {\ +color: #96DC5F\ +}\ +.ace-clouds .ace_constant.ace_language {\ +color: #39946A\ +}\ +.ace-clouds .ace_constant.ace_numeric {\ +color: #46A609\ +}\ +.ace-clouds .ace_constant.ace_character.ace_entity {\ +color: #BF78CC\ +}\ +.ace-clouds .ace_invalid {\ +background-color: #FF002A\ +}\ +.ace-clouds .ace_fold {\ +background-color: #AF956F;\ +border-color: #000000\ +}\ +.ace-clouds .ace_storage,\ +.ace-clouds .ace_support.ace_class,\ +.ace-clouds .ace_support.ace_function,\ +.ace-clouds .ace_support.ace_other,\ +.ace-clouds .ace_support.ace_type {\ +color: #C52727\ +}\ +.ace-clouds .ace_string {\ +color: #5D90CD\ +}\ +.ace-clouds .ace_comment {\ +color: #BCC8BA\ +}\ +.ace-clouds .ace_entity.ace_name.ace_tag,\ +.ace-clouds .ace_entity.ace_other.ace_attribute-name {\ +color: #606060\ +}\ +.ace-clouds .ace_indent-guide {\ +background: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAE0lEQVQImWP4////f4bLly//BwAmVgd1/w11/gAAAABJRU5ErkJggg==\") right repeat-y\ +}"; + +var dom = require("../lib/dom"); +dom.importCssString(exports.cssText, exports.cssClass); +}); diff --git a/public/ace_editor/theme-clouds_midnight-noconflict.js b/public/ace_editor/theme-clouds_midnight-noconflict.js deleted file mode 100644 index ec1e0b6..0000000 --- a/public/ace_editor/theme-clouds_midnight-noconflict.js +++ /dev/null @@ -1 +0,0 @@ -ace.define("ace/theme/clouds_midnight",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!0,b.cssClass="ace-clouds-midnight",b.cssText=".ace-clouds-midnight .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-clouds-midnight .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-clouds-midnight .ace_gutter { background: #e8e8e8; color: #333;}.ace-clouds-midnight .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-clouds-midnight .ace_scroller { background-color: #191919;}.ace-clouds-midnight .ace_text-layer { cursor: text; color: #929292;}.ace-clouds-midnight .ace_cursor { border-left: 2px solid #7DA5DC;}.ace-clouds-midnight .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #7DA5DC;}.ace-clouds-midnight .ace_marker-layer .ace_selection { background: #000000;}.ace-clouds-midnight.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #191919; border-radius: 2px;}.ace-clouds-midnight .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-clouds-midnight .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid #BFBFBF;}.ace-clouds-midnight .ace_marker-layer .ace_active_line { background: rgba(215, 215, 215, 0.031);}.ace-clouds-midnight .ace_marker-layer .ace_selected_word { border: 1px solid #000000;}.ace-clouds-midnight .ace_invisible { color: #BFBFBF;}.ace-clouds-midnight .ace_keyword, .ace-clouds-midnight .ace_meta { color:#927C5D;}.ace-clouds-midnight .ace_keyword.ace_operator { color:#4B4B4B;}.ace-clouds-midnight .ace_constant.ace_language { color:#39946A;}.ace-clouds-midnight .ace_constant.ace_numeric { color:#46A609;}.ace-clouds-midnight .ace_invalid { color:#FFFFFF;background-color:#E92E2E;}.ace-clouds-midnight .ace_fold { background-color: #927C5D; border-color: #929292;}.ace-clouds-midnight .ace_support.ace_function { color:#E92E2E;}.ace-clouds-midnight .ace_storage { color:#E92E2E;}.ace-clouds-midnight .ace_string { color:#5D90CD;}.ace-clouds-midnight .ace_comment { color:#3C403B;}.ace-clouds-midnight .ace_entity.ace_other.ace_attribute-name { color:#606060;}.ace-clouds-midnight .ace_markup.ace_underline { text-decoration:underline;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)}) \ No newline at end of file diff --git a/public/ace_editor/theme-clouds_midnight-uncompressed-noconflict.js b/public/ace_editor/theme-clouds_midnight-uncompressed-noconflict.js deleted file mode 100644 index 944da51..0000000 --- a/public/ace_editor/theme-clouds_midnight-uncompressed-noconflict.js +++ /dev/null @@ -1,161 +0,0 @@ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla Public License Version - * 1.1 (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * http://www.mozilla.org/MPL/ - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - * - * The Original Code is Ajax.org Code Editor (ACE). - * - * The Initial Developer of the Original Code is - * Ajax.org B.V. - * Portions created by the Initial Developer are Copyright (C) 2010 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Fabian Jakobs - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -ace.define('ace/theme/clouds_midnight', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { - -exports.isDark = true; -exports.cssClass = "ace-clouds-midnight"; -exports.cssText = "\ -.ace-clouds-midnight .ace_editor {\ - border: 2px solid rgb(159, 159, 159);\ -}\ -\ -.ace-clouds-midnight .ace_editor.ace_focus {\ - border: 2px solid #327fbd;\ -}\ -\ -.ace-clouds-midnight .ace_gutter {\ - background: #e8e8e8;\ - color: #333;\ -}\ -\ -.ace-clouds-midnight .ace_print_margin {\ - width: 1px;\ - background: #e8e8e8;\ -}\ -\ -.ace-clouds-midnight .ace_scroller {\ - background-color: #191919;\ -}\ -\ -.ace-clouds-midnight .ace_text-layer {\ - cursor: text;\ - color: #929292;\ -}\ -\ -.ace-clouds-midnight .ace_cursor {\ - border-left: 2px solid #7DA5DC;\ -}\ -\ -.ace-clouds-midnight .ace_cursor.ace_overwrite {\ - border-left: 0px;\ - border-bottom: 1px solid #7DA5DC;\ -}\ -\ -.ace-clouds-midnight .ace_marker-layer .ace_selection {\ - background: #000000;\ -}\ -\ -.ace-clouds-midnight.multiselect .ace_selection.start {\ - box-shadow: 0 0 3px 0px #191919;\ - border-radius: 2px;\ -}\ -\ -.ace-clouds-midnight .ace_marker-layer .ace_step {\ - background: rgb(198, 219, 174);\ -}\ -\ -.ace-clouds-midnight .ace_marker-layer .ace_bracket {\ - margin: -1px 0 0 -1px;\ - border: 1px solid #BFBFBF;\ -}\ -\ -.ace-clouds-midnight .ace_marker-layer .ace_active_line {\ - background: rgba(215, 215, 215, 0.031);\ -}\ -\ -.ace-clouds-midnight .ace_marker-layer .ace_selected_word {\ - border: 1px solid #000000;\ -}\ -\ -.ace-clouds-midnight .ace_invisible {\ - color: #BFBFBF;\ -}\ -\ -.ace-clouds-midnight .ace_keyword, .ace-clouds-midnight .ace_meta {\ - color:#927C5D;\ -}\ -\ -.ace-clouds-midnight .ace_keyword.ace_operator {\ - color:#4B4B4B;\ -}\ -\ -.ace-clouds-midnight .ace_constant.ace_language {\ - color:#39946A;\ -}\ -\ -.ace-clouds-midnight .ace_constant.ace_numeric {\ - color:#46A609;\ -}\ -\ -.ace-clouds-midnight .ace_invalid {\ - color:#FFFFFF;\ -background-color:#E92E2E;\ -}\ -\ -.ace-clouds-midnight .ace_fold {\ - background-color: #927C5D;\ - border-color: #929292;\ -}\ -\ -.ace-clouds-midnight .ace_support.ace_function {\ - color:#E92E2E;\ -}\ -\ -.ace-clouds-midnight .ace_storage {\ - color:#E92E2E;\ -}\ -\ -.ace-clouds-midnight .ace_string {\ - color:#5D90CD;\ -}\ -\ -.ace-clouds-midnight .ace_comment {\ - color:#3C403B;\ -}\ -\ -.ace-clouds-midnight .ace_entity.ace_other.ace_attribute-name {\ - color:#606060;\ -}\ -\ -.ace-clouds-midnight .ace_markup.ace_underline {\ - text-decoration:underline;\ -}"; - - var dom = require("../lib/dom"); - dom.importCssString(exports.cssText, exports.cssClass); -}); diff --git a/public/ace_editor/theme-clouds_midnight-uncompressed.js b/public/ace_editor/theme-clouds_midnight-uncompressed.js deleted file mode 100644 index 343a683..0000000 --- a/public/ace_editor/theme-clouds_midnight-uncompressed.js +++ /dev/null @@ -1,161 +0,0 @@ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla Public License Version - * 1.1 (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * http://www.mozilla.org/MPL/ - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - * - * The Original Code is Ajax.org Code Editor (ACE). - * - * The Initial Developer of the Original Code is - * Ajax.org B.V. - * Portions created by the Initial Developer are Copyright (C) 2010 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Fabian Jakobs - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -define('ace/theme/clouds_midnight', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { - -exports.isDark = true; -exports.cssClass = "ace-clouds-midnight"; -exports.cssText = "\ -.ace-clouds-midnight .ace_editor {\ - border: 2px solid rgb(159, 159, 159);\ -}\ -\ -.ace-clouds-midnight .ace_editor.ace_focus {\ - border: 2px solid #327fbd;\ -}\ -\ -.ace-clouds-midnight .ace_gutter {\ - background: #e8e8e8;\ - color: #333;\ -}\ -\ -.ace-clouds-midnight .ace_print_margin {\ - width: 1px;\ - background: #e8e8e8;\ -}\ -\ -.ace-clouds-midnight .ace_scroller {\ - background-color: #191919;\ -}\ -\ -.ace-clouds-midnight .ace_text-layer {\ - cursor: text;\ - color: #929292;\ -}\ -\ -.ace-clouds-midnight .ace_cursor {\ - border-left: 2px solid #7DA5DC;\ -}\ -\ -.ace-clouds-midnight .ace_cursor.ace_overwrite {\ - border-left: 0px;\ - border-bottom: 1px solid #7DA5DC;\ -}\ -\ -.ace-clouds-midnight .ace_marker-layer .ace_selection {\ - background: #000000;\ -}\ -\ -.ace-clouds-midnight.multiselect .ace_selection.start {\ - box-shadow: 0 0 3px 0px #191919;\ - border-radius: 2px;\ -}\ -\ -.ace-clouds-midnight .ace_marker-layer .ace_step {\ - background: rgb(198, 219, 174);\ -}\ -\ -.ace-clouds-midnight .ace_marker-layer .ace_bracket {\ - margin: -1px 0 0 -1px;\ - border: 1px solid #BFBFBF;\ -}\ -\ -.ace-clouds-midnight .ace_marker-layer .ace_active_line {\ - background: rgba(215, 215, 215, 0.031);\ -}\ -\ -.ace-clouds-midnight .ace_marker-layer .ace_selected_word {\ - border: 1px solid #000000;\ -}\ -\ -.ace-clouds-midnight .ace_invisible {\ - color: #BFBFBF;\ -}\ -\ -.ace-clouds-midnight .ace_keyword, .ace-clouds-midnight .ace_meta {\ - color:#927C5D;\ -}\ -\ -.ace-clouds-midnight .ace_keyword.ace_operator {\ - color:#4B4B4B;\ -}\ -\ -.ace-clouds-midnight .ace_constant.ace_language {\ - color:#39946A;\ -}\ -\ -.ace-clouds-midnight .ace_constant.ace_numeric {\ - color:#46A609;\ -}\ -\ -.ace-clouds-midnight .ace_invalid {\ - color:#FFFFFF;\ -background-color:#E92E2E;\ -}\ -\ -.ace-clouds-midnight .ace_fold {\ - background-color: #927C5D;\ - border-color: #929292;\ -}\ -\ -.ace-clouds-midnight .ace_support.ace_function {\ - color:#E92E2E;\ -}\ -\ -.ace-clouds-midnight .ace_storage {\ - color:#E92E2E;\ -}\ -\ -.ace-clouds-midnight .ace_string {\ - color:#5D90CD;\ -}\ -\ -.ace-clouds-midnight .ace_comment {\ - color:#3C403B;\ -}\ -\ -.ace-clouds-midnight .ace_entity.ace_other.ace_attribute-name {\ - color:#606060;\ -}\ -\ -.ace-clouds-midnight .ace_markup.ace_underline {\ - text-decoration:underline;\ -}"; - - var dom = require("../lib/dom"); - dom.importCssString(exports.cssText, exports.cssClass); -}); diff --git a/public/ace_editor/theme-clouds_midnight.js b/public/ace_editor/theme-clouds_midnight.js old mode 100644 new mode 100755 index 3a9eb7e..6aca24b --- a/public/ace_editor/theme-clouds_midnight.js +++ b/public/ace_editor/theme-clouds_midnight.js @@ -1 +1,127 @@ -define("ace/theme/clouds_midnight",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!0,b.cssClass="ace-clouds-midnight",b.cssText=".ace-clouds-midnight .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-clouds-midnight .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-clouds-midnight .ace_gutter { background: #e8e8e8; color: #333;}.ace-clouds-midnight .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-clouds-midnight .ace_scroller { background-color: #191919;}.ace-clouds-midnight .ace_text-layer { cursor: text; color: #929292;}.ace-clouds-midnight .ace_cursor { border-left: 2px solid #7DA5DC;}.ace-clouds-midnight .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #7DA5DC;}.ace-clouds-midnight .ace_marker-layer .ace_selection { background: #000000;}.ace-clouds-midnight.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #191919; border-radius: 2px;}.ace-clouds-midnight .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-clouds-midnight .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid #BFBFBF;}.ace-clouds-midnight .ace_marker-layer .ace_active_line { background: rgba(215, 215, 215, 0.031);}.ace-clouds-midnight .ace_marker-layer .ace_selected_word { border: 1px solid #000000;}.ace-clouds-midnight .ace_invisible { color: #BFBFBF;}.ace-clouds-midnight .ace_keyword, .ace-clouds-midnight .ace_meta { color:#927C5D;}.ace-clouds-midnight .ace_keyword.ace_operator { color:#4B4B4B;}.ace-clouds-midnight .ace_constant.ace_language { color:#39946A;}.ace-clouds-midnight .ace_constant.ace_numeric { color:#46A609;}.ace-clouds-midnight .ace_invalid { color:#FFFFFF;background-color:#E92E2E;}.ace-clouds-midnight .ace_fold { background-color: #927C5D; border-color: #929292;}.ace-clouds-midnight .ace_support.ace_function { color:#E92E2E;}.ace-clouds-midnight .ace_storage { color:#E92E2E;}.ace-clouds-midnight .ace_string { color:#5D90CD;}.ace-clouds-midnight .ace_comment { color:#3C403B;}.ace-clouds-midnight .ace_entity.ace_other.ace_attribute-name { color:#606060;}.ace-clouds-midnight .ace_markup.ace_underline { text-decoration:underline;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)}) \ No newline at end of file +/* ***** BEGIN LICENSE BLOCK ***** + * Distributed under the BSD license: + * + * Copyright (c) 2010, Ajax.org B.V. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Ajax.org B.V. nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL AJAX.ORG B.V. BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * ***** END LICENSE BLOCK ***** */ + +ace.define('ace/theme/clouds_midnight', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { + +exports.isDark = true; +exports.cssClass = "ace-clouds-midnight"; +exports.cssText = ".ace-clouds-midnight .ace_gutter {\ +background: #232323;\ +color: #929292\ +}\ +.ace-clouds-midnight .ace_print-margin {\ +width: 1px;\ +background: #232323\ +}\ +.ace-clouds-midnight {\ +background-color: #191919;\ +color: #929292\ +}\ +.ace-clouds-midnight .ace_cursor {\ +color: #7DA5DC\ +}\ +.ace-clouds-midnight .ace_marker-layer .ace_selection {\ +background: #000000\ +}\ +.ace-clouds-midnight.ace_multiselect .ace_selection.ace_start {\ +box-shadow: 0 0 3px 0px #191919;\ +border-radius: 2px\ +}\ +.ace-clouds-midnight .ace_marker-layer .ace_step {\ +background: rgb(102, 82, 0)\ +}\ +.ace-clouds-midnight .ace_marker-layer .ace_bracket {\ +margin: -1px 0 0 -1px;\ +border: 1px solid #BFBFBF\ +}\ +.ace-clouds-midnight .ace_marker-layer .ace_active-line {\ +background: rgba(215, 215, 215, 0.031)\ +}\ +.ace-clouds-midnight .ace_gutter-active-line {\ +background-color: rgba(215, 215, 215, 0.031)\ +}\ +.ace-clouds-midnight .ace_marker-layer .ace_selected-word {\ +border: 1px solid #000000\ +}\ +.ace-clouds-midnight .ace_invisible {\ +color: #BFBFBF\ +}\ +.ace-clouds-midnight .ace_keyword,\ +.ace-clouds-midnight .ace_meta,\ +.ace-clouds-midnight .ace_support.ace_constant.ace_property-value {\ +color: #927C5D\ +}\ +.ace-clouds-midnight .ace_keyword.ace_operator {\ +color: #4B4B4B\ +}\ +.ace-clouds-midnight .ace_keyword.ace_other.ace_unit {\ +color: #366F1A\ +}\ +.ace-clouds-midnight .ace_constant.ace_language {\ +color: #39946A\ +}\ +.ace-clouds-midnight .ace_constant.ace_numeric {\ +color: #46A609\ +}\ +.ace-clouds-midnight .ace_constant.ace_character.ace_entity {\ +color: #A165AC\ +}\ +.ace-clouds-midnight .ace_invalid {\ +color: #FFFFFF;\ +background-color: #E92E2E\ +}\ +.ace-clouds-midnight .ace_fold {\ +background-color: #927C5D;\ +border-color: #929292\ +}\ +.ace-clouds-midnight .ace_storage,\ +.ace-clouds-midnight .ace_support.ace_class,\ +.ace-clouds-midnight .ace_support.ace_function,\ +.ace-clouds-midnight .ace_support.ace_other,\ +.ace-clouds-midnight .ace_support.ace_type {\ +color: #E92E2E\ +}\ +.ace-clouds-midnight .ace_string {\ +color: #5D90CD\ +}\ +.ace-clouds-midnight .ace_comment {\ +color: #3C403B\ +}\ +.ace-clouds-midnight .ace_entity.ace_name.ace_tag,\ +.ace-clouds-midnight .ace_entity.ace_other.ace_attribute-name {\ +color: #606060\ +}\ +.ace-clouds-midnight .ace_indent-guide {\ +background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAEklEQVQImWNgYGBgYHB3d/8PAAOIAdULw8qMAAAAAElFTkSuQmCC) right repeat-y\ +}"; + +var dom = require("../lib/dom"); +dom.importCssString(exports.cssText, exports.cssClass); +}); diff --git a/public/ace_editor/theme-cobalt-noconflict.js b/public/ace_editor/theme-cobalt-noconflict.js deleted file mode 100644 index f667243..0000000 --- a/public/ace_editor/theme-cobalt-noconflict.js +++ /dev/null @@ -1 +0,0 @@ -ace.define("ace/theme/cobalt",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!0,b.cssClass="ace-cobalt",b.cssText=".ace-cobalt .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-cobalt .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-cobalt .ace_gutter { background: #e8e8e8; color: #333;}.ace-cobalt .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-cobalt .ace_scroller { background-color: #002240;}.ace-cobalt .ace_text-layer { cursor: text; color: #FFFFFF;}.ace-cobalt .ace_cursor { border-left: 2px solid #FFFFFF;}.ace-cobalt .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #FFFFFF;}.ace-cobalt .ace_marker-layer .ace_selection { background: rgba(179, 101, 57, 0.75);}.ace-cobalt.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #002240; border-radius: 2px;}.ace-cobalt .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-cobalt .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid rgba(255, 255, 255, 0.15);}.ace-cobalt .ace_marker-layer .ace_active_line { background: rgba(0, 0, 0, 0.35);}.ace-cobalt .ace_marker-layer .ace_selected_word { border: 1px solid rgba(179, 101, 57, 0.75);}.ace-cobalt .ace_invisible { color: rgba(255, 255, 255, 0.15);}.ace-cobalt .ace_keyword, .ace-cobalt .ace_meta { color:#FF9D00;}.ace-cobalt .ace_constant, .ace-cobalt .ace_constant.ace_other { color:#FF628C;}.ace-cobalt .ace_constant.ace_character, { color:#FF628C;}.ace-cobalt .ace_constant.ace_character.ace_escape, { color:#FF628C;}.ace-cobalt .ace_invalid { color:#F8F8F8;background-color:#800F00;}.ace-cobalt .ace_support { color:#80FFBB;}.ace-cobalt .ace_support.ace_constant { color:#EB939A;}.ace-cobalt .ace_fold { background-color: #FF9D00; border-color: #FFFFFF;}.ace-cobalt .ace_support.ace_function { color:#FFB054;}.ace-cobalt .ace_storage { color:#FFEE80;}.ace-cobalt .ace_string.ace_regexp { color:#80FFC2;}.ace-cobalt .ace_comment { font-style:italic;color:#0088FF;}.ace-cobalt .ace_variable { color:#CCCCCC;}.ace-cobalt .ace_variable.ace_language { color:#FF80E1;}.ace-cobalt .ace_meta.ace_tag { color:#9EFFFF;}.ace-cobalt .ace_markup.ace_underline { text-decoration:underline;}.ace-cobalt .ace_markup.ace_heading { color:#C8E4FD;background-color:#001221;}.ace-cobalt .ace_markup.ace_list { background-color:#130D26;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)}) \ No newline at end of file diff --git a/public/ace_editor/theme-cobalt-uncompressed-noconflict.js b/public/ace_editor/theme-cobalt-uncompressed-noconflict.js deleted file mode 100644 index dea9382..0000000 --- a/public/ace_editor/theme-cobalt-uncompressed-noconflict.js +++ /dev/null @@ -1,187 +0,0 @@ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla Public License Version - * 1.1 (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * http://www.mozilla.org/MPL/ - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - * - * The Original Code is Ajax.org Code Editor (ACE). - * - * The Initial Developer of the Original Code is - * Ajax.org B.V. - * Portions created by the Initial Developer are Copyright (C) 2010 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Fabian Jakobs - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -ace.define('ace/theme/cobalt', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { - -exports.isDark = true; -exports.cssClass = "ace-cobalt"; -exports.cssText = "\ -.ace-cobalt .ace_editor {\ - border: 2px solid rgb(159, 159, 159);\ -}\ -\ -.ace-cobalt .ace_editor.ace_focus {\ - border: 2px solid #327fbd;\ -}\ -\ -.ace-cobalt .ace_gutter {\ - background: #e8e8e8;\ - color: #333;\ -}\ -\ -.ace-cobalt .ace_print_margin {\ - width: 1px;\ - background: #e8e8e8;\ -}\ -\ -.ace-cobalt .ace_scroller {\ - background-color: #002240;\ -}\ -\ -.ace-cobalt .ace_text-layer {\ - cursor: text;\ - color: #FFFFFF;\ -}\ -\ -.ace-cobalt .ace_cursor {\ - border-left: 2px solid #FFFFFF;\ -}\ -\ -.ace-cobalt .ace_cursor.ace_overwrite {\ - border-left: 0px;\ - border-bottom: 1px solid #FFFFFF;\ -}\ -\ -.ace-cobalt .ace_marker-layer .ace_selection {\ - background: rgba(179, 101, 57, 0.75);\ -}\ -\ -.ace-cobalt.multiselect .ace_selection.start {\ - box-shadow: 0 0 3px 0px #002240;\ - border-radius: 2px;\ -}\ -\ -.ace-cobalt .ace_marker-layer .ace_step {\ - background: rgb(198, 219, 174);\ -}\ -\ -.ace-cobalt .ace_marker-layer .ace_bracket {\ - margin: -1px 0 0 -1px;\ - border: 1px solid rgba(255, 255, 255, 0.15);\ -}\ -\ -.ace-cobalt .ace_marker-layer .ace_active_line {\ - background: rgba(0, 0, 0, 0.35);\ -}\ -\ -.ace-cobalt .ace_marker-layer .ace_selected_word {\ - border: 1px solid rgba(179, 101, 57, 0.75);\ -}\ -\ -.ace-cobalt .ace_invisible {\ - color: rgba(255, 255, 255, 0.15);\ -}\ -\ -.ace-cobalt .ace_keyword, .ace-cobalt .ace_meta {\ - color:#FF9D00;\ -}\ -\ -.ace-cobalt .ace_constant, .ace-cobalt .ace_constant.ace_other {\ - color:#FF628C;\ -}\ -\ -.ace-cobalt .ace_constant.ace_character, {\ - color:#FF628C;\ -}\ -\ -.ace-cobalt .ace_constant.ace_character.ace_escape, {\ - color:#FF628C;\ -}\ -\ -.ace-cobalt .ace_invalid {\ - color:#F8F8F8;\ -background-color:#800F00;\ -}\ -\ -.ace-cobalt .ace_support {\ - color:#80FFBB;\ -}\ -\ -.ace-cobalt .ace_support.ace_constant {\ - color:#EB939A;\ -}\ -\ -.ace-cobalt .ace_fold {\ - background-color: #FF9D00;\ - border-color: #FFFFFF;\ -}\ -\ -.ace-cobalt .ace_support.ace_function {\ - color:#FFB054;\ -}\ -\ -.ace-cobalt .ace_storage {\ - color:#FFEE80;\ -}\ -\ -.ace-cobalt .ace_string.ace_regexp {\ - color:#80FFC2;\ -}\ -\ -.ace-cobalt .ace_comment {\ - font-style:italic;\ -color:#0088FF;\ -}\ -\ -.ace-cobalt .ace_variable {\ - color:#CCCCCC;\ -}\ -\ -.ace-cobalt .ace_variable.ace_language {\ - color:#FF80E1;\ -}\ -\ -.ace-cobalt .ace_meta.ace_tag {\ - color:#9EFFFF;\ -}\ -\ -.ace-cobalt .ace_markup.ace_underline {\ - text-decoration:underline;\ -}\ -\ -.ace-cobalt .ace_markup.ace_heading {\ - color:#C8E4FD;\ -background-color:#001221;\ -}\ -\ -.ace-cobalt .ace_markup.ace_list {\ - background-color:#130D26;\ -}"; - - var dom = require("../lib/dom"); - dom.importCssString(exports.cssText, exports.cssClass); -}); diff --git a/public/ace_editor/theme-cobalt-uncompressed.js b/public/ace_editor/theme-cobalt-uncompressed.js deleted file mode 100644 index e932be3..0000000 --- a/public/ace_editor/theme-cobalt-uncompressed.js +++ /dev/null @@ -1,187 +0,0 @@ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla Public License Version - * 1.1 (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * http://www.mozilla.org/MPL/ - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - * - * The Original Code is Ajax.org Code Editor (ACE). - * - * The Initial Developer of the Original Code is - * Ajax.org B.V. - * Portions created by the Initial Developer are Copyright (C) 2010 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Fabian Jakobs - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -define('ace/theme/cobalt', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { - -exports.isDark = true; -exports.cssClass = "ace-cobalt"; -exports.cssText = "\ -.ace-cobalt .ace_editor {\ - border: 2px solid rgb(159, 159, 159);\ -}\ -\ -.ace-cobalt .ace_editor.ace_focus {\ - border: 2px solid #327fbd;\ -}\ -\ -.ace-cobalt .ace_gutter {\ - background: #e8e8e8;\ - color: #333;\ -}\ -\ -.ace-cobalt .ace_print_margin {\ - width: 1px;\ - background: #e8e8e8;\ -}\ -\ -.ace-cobalt .ace_scroller {\ - background-color: #002240;\ -}\ -\ -.ace-cobalt .ace_text-layer {\ - cursor: text;\ - color: #FFFFFF;\ -}\ -\ -.ace-cobalt .ace_cursor {\ - border-left: 2px solid #FFFFFF;\ -}\ -\ -.ace-cobalt .ace_cursor.ace_overwrite {\ - border-left: 0px;\ - border-bottom: 1px solid #FFFFFF;\ -}\ -\ -.ace-cobalt .ace_marker-layer .ace_selection {\ - background: rgba(179, 101, 57, 0.75);\ -}\ -\ -.ace-cobalt.multiselect .ace_selection.start {\ - box-shadow: 0 0 3px 0px #002240;\ - border-radius: 2px;\ -}\ -\ -.ace-cobalt .ace_marker-layer .ace_step {\ - background: rgb(198, 219, 174);\ -}\ -\ -.ace-cobalt .ace_marker-layer .ace_bracket {\ - margin: -1px 0 0 -1px;\ - border: 1px solid rgba(255, 255, 255, 0.15);\ -}\ -\ -.ace-cobalt .ace_marker-layer .ace_active_line {\ - background: rgba(0, 0, 0, 0.35);\ -}\ -\ -.ace-cobalt .ace_marker-layer .ace_selected_word {\ - border: 1px solid rgba(179, 101, 57, 0.75);\ -}\ -\ -.ace-cobalt .ace_invisible {\ - color: rgba(255, 255, 255, 0.15);\ -}\ -\ -.ace-cobalt .ace_keyword, .ace-cobalt .ace_meta {\ - color:#FF9D00;\ -}\ -\ -.ace-cobalt .ace_constant, .ace-cobalt .ace_constant.ace_other {\ - color:#FF628C;\ -}\ -\ -.ace-cobalt .ace_constant.ace_character, {\ - color:#FF628C;\ -}\ -\ -.ace-cobalt .ace_constant.ace_character.ace_escape, {\ - color:#FF628C;\ -}\ -\ -.ace-cobalt .ace_invalid {\ - color:#F8F8F8;\ -background-color:#800F00;\ -}\ -\ -.ace-cobalt .ace_support {\ - color:#80FFBB;\ -}\ -\ -.ace-cobalt .ace_support.ace_constant {\ - color:#EB939A;\ -}\ -\ -.ace-cobalt .ace_fold {\ - background-color: #FF9D00;\ - border-color: #FFFFFF;\ -}\ -\ -.ace-cobalt .ace_support.ace_function {\ - color:#FFB054;\ -}\ -\ -.ace-cobalt .ace_storage {\ - color:#FFEE80;\ -}\ -\ -.ace-cobalt .ace_string.ace_regexp {\ - color:#80FFC2;\ -}\ -\ -.ace-cobalt .ace_comment {\ - font-style:italic;\ -color:#0088FF;\ -}\ -\ -.ace-cobalt .ace_variable {\ - color:#CCCCCC;\ -}\ -\ -.ace-cobalt .ace_variable.ace_language {\ - color:#FF80E1;\ -}\ -\ -.ace-cobalt .ace_meta.ace_tag {\ - color:#9EFFFF;\ -}\ -\ -.ace-cobalt .ace_markup.ace_underline {\ - text-decoration:underline;\ -}\ -\ -.ace-cobalt .ace_markup.ace_heading {\ - color:#C8E4FD;\ -background-color:#001221;\ -}\ -\ -.ace-cobalt .ace_markup.ace_list {\ - background-color:#130D26;\ -}"; - - var dom = require("../lib/dom"); - dom.importCssString(exports.cssText, exports.cssClass); -}); diff --git a/public/ace_editor/theme-cobalt.js b/public/ace_editor/theme-cobalt.js old mode 100644 new mode 100755 index 09abb0e..34fed34 --- a/public/ace_editor/theme-cobalt.js +++ b/public/ace_editor/theme-cobalt.js @@ -1 +1,143 @@ -define("ace/theme/cobalt",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!0,b.cssClass="ace-cobalt",b.cssText=".ace-cobalt .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-cobalt .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-cobalt .ace_gutter { background: #e8e8e8; color: #333;}.ace-cobalt .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-cobalt .ace_scroller { background-color: #002240;}.ace-cobalt .ace_text-layer { cursor: text; color: #FFFFFF;}.ace-cobalt .ace_cursor { border-left: 2px solid #FFFFFF;}.ace-cobalt .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #FFFFFF;}.ace-cobalt .ace_marker-layer .ace_selection { background: rgba(179, 101, 57, 0.75);}.ace-cobalt.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #002240; border-radius: 2px;}.ace-cobalt .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-cobalt .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid rgba(255, 255, 255, 0.15);}.ace-cobalt .ace_marker-layer .ace_active_line { background: rgba(0, 0, 0, 0.35);}.ace-cobalt .ace_marker-layer .ace_selected_word { border: 1px solid rgba(179, 101, 57, 0.75);}.ace-cobalt .ace_invisible { color: rgba(255, 255, 255, 0.15);}.ace-cobalt .ace_keyword, .ace-cobalt .ace_meta { color:#FF9D00;}.ace-cobalt .ace_constant, .ace-cobalt .ace_constant.ace_other { color:#FF628C;}.ace-cobalt .ace_constant.ace_character, { color:#FF628C;}.ace-cobalt .ace_constant.ace_character.ace_escape, { color:#FF628C;}.ace-cobalt .ace_invalid { color:#F8F8F8;background-color:#800F00;}.ace-cobalt .ace_support { color:#80FFBB;}.ace-cobalt .ace_support.ace_constant { color:#EB939A;}.ace-cobalt .ace_fold { background-color: #FF9D00; border-color: #FFFFFF;}.ace-cobalt .ace_support.ace_function { color:#FFB054;}.ace-cobalt .ace_storage { color:#FFEE80;}.ace-cobalt .ace_string.ace_regexp { color:#80FFC2;}.ace-cobalt .ace_comment { font-style:italic;color:#0088FF;}.ace-cobalt .ace_variable { color:#CCCCCC;}.ace-cobalt .ace_variable.ace_language { color:#FF80E1;}.ace-cobalt .ace_meta.ace_tag { color:#9EFFFF;}.ace-cobalt .ace_markup.ace_underline { text-decoration:underline;}.ace-cobalt .ace_markup.ace_heading { color:#C8E4FD;background-color:#001221;}.ace-cobalt .ace_markup.ace_list { background-color:#130D26;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)}) \ No newline at end of file +/* ***** BEGIN LICENSE BLOCK ***** + * Distributed under the BSD license: + * + * Copyright (c) 2010, Ajax.org B.V. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Ajax.org B.V. nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL AJAX.ORG B.V. BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * ***** END LICENSE BLOCK ***** */ + +ace.define('ace/theme/cobalt', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { + +exports.isDark = true; +exports.cssClass = "ace-cobalt"; +exports.cssText = ".ace-cobalt .ace_gutter {\ +background: #011e3a;\ +color: #fff\ +}\ +.ace-cobalt .ace_print-margin {\ +width: 1px;\ +background: #011e3a\ +}\ +.ace-cobalt {\ +background-color: #002240;\ +color: #FFFFFF\ +}\ +.ace-cobalt .ace_cursor {\ +color: #FFFFFF\ +}\ +.ace-cobalt .ace_marker-layer .ace_selection {\ +background: rgba(179, 101, 57, 0.75)\ +}\ +.ace-cobalt.ace_multiselect .ace_selection.ace_start {\ +box-shadow: 0 0 3px 0px #002240;\ +border-radius: 2px\ +}\ +.ace-cobalt .ace_marker-layer .ace_step {\ +background: rgb(127, 111, 19)\ +}\ +.ace-cobalt .ace_marker-layer .ace_bracket {\ +margin: -1px 0 0 -1px;\ +border: 1px solid rgba(255, 255, 255, 0.15)\ +}\ +.ace-cobalt .ace_marker-layer .ace_active-line {\ +background: rgba(0, 0, 0, 0.35)\ +}\ +.ace-cobalt .ace_gutter-active-line {\ +background-color: rgba(0, 0, 0, 0.35)\ +}\ +.ace-cobalt .ace_marker-layer .ace_selected-word {\ +border: 1px solid rgba(179, 101, 57, 0.75)\ +}\ +.ace-cobalt .ace_invisible {\ +color: rgba(255, 255, 255, 0.15)\ +}\ +.ace-cobalt .ace_keyword,\ +.ace-cobalt .ace_meta {\ +color: #FF9D00\ +}\ +.ace-cobalt .ace_constant,\ +.ace-cobalt .ace_constant.ace_character,\ +.ace-cobalt .ace_constant.ace_character.ace_escape,\ +.ace-cobalt .ace_constant.ace_other {\ +color: #FF628C\ +}\ +.ace-cobalt .ace_invalid {\ +color: #F8F8F8;\ +background-color: #800F00\ +}\ +.ace-cobalt .ace_support {\ +color: #80FFBB\ +}\ +.ace-cobalt .ace_support.ace_constant {\ +color: #EB939A\ +}\ +.ace-cobalt .ace_fold {\ +background-color: #FF9D00;\ +border-color: #FFFFFF\ +}\ +.ace-cobalt .ace_support.ace_function {\ +color: #FFB054\ +}\ +.ace-cobalt .ace_storage {\ +color: #FFEE80\ +}\ +.ace-cobalt .ace_entity {\ +color: #FFDD00\ +}\ +.ace-cobalt .ace_string {\ +color: #3AD900\ +}\ +.ace-cobalt .ace_string.ace_regexp {\ +color: #80FFC2\ +}\ +.ace-cobalt .ace_comment {\ +font-style: italic;\ +color: #0088FF\ +}\ +.ace-cobalt .ace_heading,\ +.ace-cobalt .ace_markup.ace_heading {\ +color: #C8E4FD;\ +background-color: #001221\ +}\ +.ace-cobalt .ace_list,\ +.ace-cobalt .ace_markup.ace_list {\ +background-color: #130D26\ +}\ +.ace-cobalt .ace_variable {\ +color: #CCCCCC\ +}\ +.ace-cobalt .ace_variable.ace_language {\ +color: #FF80E1\ +}\ +.ace-cobalt .ace_meta.ace_tag {\ +color: #9EFFFF\ +}\ +.ace-cobalt .ace_indent-guide {\ +background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAEklEQVQImWNgYGBgYHCLSvkPAAP3AgSDTRd4AAAAAElFTkSuQmCC) right repeat-y\ +}"; + +var dom = require("../lib/dom"); +dom.importCssString(exports.cssText, exports.cssClass); +}); diff --git a/public/ace_editor/theme-crimson_editor-noconflict.js b/public/ace_editor/theme-crimson_editor-noconflict.js deleted file mode 100644 index 68682ef..0000000 --- a/public/ace_editor/theme-crimson_editor-noconflict.js +++ /dev/null @@ -1 +0,0 @@ -ace.define("ace/theme/crimson_editor",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!1,b.cssText=".ace-crimson-editor .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-crimson-editor .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-crimson-editor .ace_gutter { width: 50px; background: #e8e8e8; color: #333; overflow : hidden;}.ace-crimson-editor .ace_gutter-layer { width: 100%; text-align: right;}.ace-crimson-editor .ace_gutter-layer .ace_gutter-cell { padding-right: 6px;}.ace-crimson-editor .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-crimson-editor .ace_text-layer { cursor: text; color: rgb(64, 64, 64);}.ace-crimson-editor .ace_cursor { border-left: 2px solid black;}.ace-crimson-editor .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid black;}.ace-crimson-editor .ace_line .ace_invisible { color: rgb(191, 191, 191);}.ace-crimson-editor .ace_line .ace_identifier { color: black;}.ace-crimson-editor .ace_line .ace_keyword { color: blue;}.ace-crimson-editor .ace_line .ace_constant.ace_buildin { color: rgb(88, 72, 246);}.ace-crimson-editor .ace_line .ace_constant.ace_language { color: rgb(255, 156, 0);}.ace-crimson-editor .ace_line .ace_constant.ace_library { color: rgb(6, 150, 14);}.ace-crimson-editor .ace_line .ace_invalid { text-decoration: line-through; color: rgb(224, 0, 0);}.ace-crimson-editor .ace_line .ace_fold {}.ace-crimson-editor .ace_line .ace_support.ace_function { color: rgb(192, 0, 0);}.ace-crimson-editor .ace_line .ace_support.ace_constant { color: rgb(6, 150, 14);}.ace-crimson-editor .ace_line .ace_support.ace_type,.ace-crimson-editor .ace_line .ace_support.ace_class { color: rgb(109, 121, 222);}.ace-crimson-editor .ace_line .ace_keyword.ace_operator { color: rgb(49, 132, 149);}.ace-crimson-editor .ace_line .ace_string { color: rgb(128, 0, 128);}.ace-crimson-editor .ace_line .ace_comment { color: rgb(76, 136, 107);}.ace-crimson-editor .ace_line .ace_comment.ace_doc { color: rgb(0, 102, 255);}.ace-crimson-editor .ace_line .ace_comment.ace_doc.ace_tag { color: rgb(128, 159, 191);}.ace-crimson-editor .ace_line .ace_constant.ace_numeric { color: rgb(0, 0, 64);}.ace-crimson-editor .ace_line .ace_variable { color: rgb(0, 64, 128);}.ace-crimson-editor .ace_line .ace_xml_pe { color: rgb(104, 104, 91);}.ace-crimson-editor .ace_marker-layer .ace_selection { background: rgb(181, 213, 255);}.ace-crimson-editor .ace_marker-layer .ace_step { background: rgb(252, 255, 0);}.ace-crimson-editor .ace_marker-layer .ace_stack { background: rgb(164, 229, 101);}.ace-crimson-editor .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid rgb(192, 192, 192);}.ace-crimson-editor .ace_marker-layer .ace_active_line { background: rgb(232, 242, 254);}.ace-crimson-editor .ace_meta.ace_tag { color:rgb(28, 2, 255);}.ace-crimson-editor .ace_marker-layer .ace_selected_word { background: rgb(250, 250, 255); border: 1px solid rgb(200, 200, 250);}.ace-crimson-editor .ace_string.ace_regex { color: rgb(192, 0, 192);}",b.cssClass="ace-crimson-editor";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)}) \ No newline at end of file diff --git a/public/ace_editor/theme-crimson_editor-uncompressed-noconflict.js b/public/ace_editor/theme-crimson_editor-uncompressed-noconflict.js deleted file mode 100644 index 4e9cb08..0000000 --- a/public/ace_editor/theme-crimson_editor-uncompressed-noconflict.js +++ /dev/null @@ -1,198 +0,0 @@ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla Public License Version - * 1.1 (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * http://www.mozilla.org/MPL/ - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - * - * The Original Code is Ajax.org Code Editor (ACE). - * - * The Initial Developer of the Original Code is - * Ajax.org B.V. - * Portions created by the Initial Developer are Copyright (C) 2010 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Fabian Jakobs - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -ace.define('ace/theme/crimson_editor', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { -exports.isDark = false; -exports.cssText = ".ace-crimson-editor .ace_editor {\ - border: 2px solid rgb(159, 159, 159);\ -}\ -\ -.ace-crimson-editor .ace_editor.ace_focus {\ - border: 2px solid #327fbd;\ -}\ -\ -.ace-crimson-editor .ace_gutter {\ - width: 50px;\ - background: #e8e8e8;\ - color: #333;\ - overflow : hidden;\ -}\ -\ -.ace-crimson-editor .ace_gutter-layer {\ - width: 100%;\ - text-align: right;\ -}\ -\ -.ace-crimson-editor .ace_gutter-layer .ace_gutter-cell {\ - padding-right: 6px;\ -}\ -\ -.ace-crimson-editor .ace_print_margin {\ - width: 1px;\ - background: #e8e8e8;\ -}\ -\ -.ace-crimson-editor .ace_text-layer {\ - cursor: text;\ - color: rgb(64, 64, 64);\ -}\ -\ -.ace-crimson-editor .ace_cursor {\ - border-left: 2px solid black;\ -}\ -\ -.ace-crimson-editor .ace_cursor.ace_overwrite {\ - border-left: 0px;\ - border-bottom: 1px solid black;\ -}\ -\ -.ace-crimson-editor .ace_line .ace_invisible {\ - color: rgb(191, 191, 191);\ -}\ -\ -.ace-crimson-editor .ace_line .ace_identifier {\ - color: black;\ -}\ -\ -.ace-crimson-editor .ace_line .ace_keyword {\ - color: blue;\ -}\ -\ -.ace-crimson-editor .ace_line .ace_constant.ace_buildin {\ - color: rgb(88, 72, 246);\ -}\ -\ -.ace-crimson-editor .ace_line .ace_constant.ace_language {\ - color: rgb(255, 156, 0);\ -}\ -\ -.ace-crimson-editor .ace_line .ace_constant.ace_library {\ - color: rgb(6, 150, 14);\ -}\ -\ -.ace-crimson-editor .ace_line .ace_invalid {\ - text-decoration: line-through;\ - color: rgb(224, 0, 0);\ -}\ -\ -.ace-crimson-editor .ace_line .ace_fold {\ -}\ -\ -.ace-crimson-editor .ace_line .ace_support.ace_function {\ - color: rgb(192, 0, 0);\ -}\ -\ -.ace-crimson-editor .ace_line .ace_support.ace_constant {\ - color: rgb(6, 150, 14);\ -}\ -\ -.ace-crimson-editor .ace_line .ace_support.ace_type,\ -.ace-crimson-editor .ace_line .ace_support.ace_class {\ - color: rgb(109, 121, 222);\ -}\ -\ -.ace-crimson-editor .ace_line .ace_keyword.ace_operator {\ - color: rgb(49, 132, 149);\ -}\ -\ -.ace-crimson-editor .ace_line .ace_string {\ - color: rgb(128, 0, 128);\ -}\ -\ -.ace-crimson-editor .ace_line .ace_comment {\ - color: rgb(76, 136, 107);\ -}\ -\ -.ace-crimson-editor .ace_line .ace_comment.ace_doc {\ - color: rgb(0, 102, 255);\ -}\ -\ -.ace-crimson-editor .ace_line .ace_comment.ace_doc.ace_tag {\ - color: rgb(128, 159, 191);\ -}\ -\ -.ace-crimson-editor .ace_line .ace_constant.ace_numeric {\ - color: rgb(0, 0, 64);\ -}\ -\ -.ace-crimson-editor .ace_line .ace_variable {\ - color: rgb(0, 64, 128);\ -}\ -\ -.ace-crimson-editor .ace_line .ace_xml_pe {\ - color: rgb(104, 104, 91);\ -}\ -\ -.ace-crimson-editor .ace_marker-layer .ace_selection {\ - background: rgb(181, 213, 255);\ -}\ -\ -.ace-crimson-editor .ace_marker-layer .ace_step {\ - background: rgb(252, 255, 0);\ -}\ -\ -.ace-crimson-editor .ace_marker-layer .ace_stack {\ - background: rgb(164, 229, 101);\ -}\ -\ -.ace-crimson-editor .ace_marker-layer .ace_bracket {\ - margin: -1px 0 0 -1px;\ - border: 1px solid rgb(192, 192, 192);\ -}\ -\ -.ace-crimson-editor .ace_marker-layer .ace_active_line {\ - background: rgb(232, 242, 254);\ -}\ -\ -.ace-crimson-editor .ace_meta.ace_tag {\ - color:rgb(28, 2, 255);\ -}\ -\ -.ace-crimson-editor .ace_marker-layer .ace_selected_word {\ - background: rgb(250, 250, 255);\ - border: 1px solid rgb(200, 200, 250);\ -}\ -\ -.ace-crimson-editor .ace_string.ace_regex {\ - color: rgb(192, 0, 192);\ -}"; - -exports.cssClass = "ace-crimson-editor"; - -var dom = require("../lib/dom"); -dom.importCssString(exports.cssText, exports.cssClass); -}); diff --git a/public/ace_editor/theme-crimson_editor-uncompressed.js b/public/ace_editor/theme-crimson_editor-uncompressed.js deleted file mode 100644 index 40af199..0000000 --- a/public/ace_editor/theme-crimson_editor-uncompressed.js +++ /dev/null @@ -1,198 +0,0 @@ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla Public License Version - * 1.1 (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * http://www.mozilla.org/MPL/ - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - * - * The Original Code is Ajax.org Code Editor (ACE). - * - * The Initial Developer of the Original Code is - * Ajax.org B.V. - * Portions created by the Initial Developer are Copyright (C) 2010 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Fabian Jakobs - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -define('ace/theme/crimson_editor', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { -exports.isDark = false; -exports.cssText = ".ace-crimson-editor .ace_editor {\ - border: 2px solid rgb(159, 159, 159);\ -}\ -\ -.ace-crimson-editor .ace_editor.ace_focus {\ - border: 2px solid #327fbd;\ -}\ -\ -.ace-crimson-editor .ace_gutter {\ - width: 50px;\ - background: #e8e8e8;\ - color: #333;\ - overflow : hidden;\ -}\ -\ -.ace-crimson-editor .ace_gutter-layer {\ - width: 100%;\ - text-align: right;\ -}\ -\ -.ace-crimson-editor .ace_gutter-layer .ace_gutter-cell {\ - padding-right: 6px;\ -}\ -\ -.ace-crimson-editor .ace_print_margin {\ - width: 1px;\ - background: #e8e8e8;\ -}\ -\ -.ace-crimson-editor .ace_text-layer {\ - cursor: text;\ - color: rgb(64, 64, 64);\ -}\ -\ -.ace-crimson-editor .ace_cursor {\ - border-left: 2px solid black;\ -}\ -\ -.ace-crimson-editor .ace_cursor.ace_overwrite {\ - border-left: 0px;\ - border-bottom: 1px solid black;\ -}\ -\ -.ace-crimson-editor .ace_line .ace_invisible {\ - color: rgb(191, 191, 191);\ -}\ -\ -.ace-crimson-editor .ace_line .ace_identifier {\ - color: black;\ -}\ -\ -.ace-crimson-editor .ace_line .ace_keyword {\ - color: blue;\ -}\ -\ -.ace-crimson-editor .ace_line .ace_constant.ace_buildin {\ - color: rgb(88, 72, 246);\ -}\ -\ -.ace-crimson-editor .ace_line .ace_constant.ace_language {\ - color: rgb(255, 156, 0);\ -}\ -\ -.ace-crimson-editor .ace_line .ace_constant.ace_library {\ - color: rgb(6, 150, 14);\ -}\ -\ -.ace-crimson-editor .ace_line .ace_invalid {\ - text-decoration: line-through;\ - color: rgb(224, 0, 0);\ -}\ -\ -.ace-crimson-editor .ace_line .ace_fold {\ -}\ -\ -.ace-crimson-editor .ace_line .ace_support.ace_function {\ - color: rgb(192, 0, 0);\ -}\ -\ -.ace-crimson-editor .ace_line .ace_support.ace_constant {\ - color: rgb(6, 150, 14);\ -}\ -\ -.ace-crimson-editor .ace_line .ace_support.ace_type,\ -.ace-crimson-editor .ace_line .ace_support.ace_class {\ - color: rgb(109, 121, 222);\ -}\ -\ -.ace-crimson-editor .ace_line .ace_keyword.ace_operator {\ - color: rgb(49, 132, 149);\ -}\ -\ -.ace-crimson-editor .ace_line .ace_string {\ - color: rgb(128, 0, 128);\ -}\ -\ -.ace-crimson-editor .ace_line .ace_comment {\ - color: rgb(76, 136, 107);\ -}\ -\ -.ace-crimson-editor .ace_line .ace_comment.ace_doc {\ - color: rgb(0, 102, 255);\ -}\ -\ -.ace-crimson-editor .ace_line .ace_comment.ace_doc.ace_tag {\ - color: rgb(128, 159, 191);\ -}\ -\ -.ace-crimson-editor .ace_line .ace_constant.ace_numeric {\ - color: rgb(0, 0, 64);\ -}\ -\ -.ace-crimson-editor .ace_line .ace_variable {\ - color: rgb(0, 64, 128);\ -}\ -\ -.ace-crimson-editor .ace_line .ace_xml_pe {\ - color: rgb(104, 104, 91);\ -}\ -\ -.ace-crimson-editor .ace_marker-layer .ace_selection {\ - background: rgb(181, 213, 255);\ -}\ -\ -.ace-crimson-editor .ace_marker-layer .ace_step {\ - background: rgb(252, 255, 0);\ -}\ -\ -.ace-crimson-editor .ace_marker-layer .ace_stack {\ - background: rgb(164, 229, 101);\ -}\ -\ -.ace-crimson-editor .ace_marker-layer .ace_bracket {\ - margin: -1px 0 0 -1px;\ - border: 1px solid rgb(192, 192, 192);\ -}\ -\ -.ace-crimson-editor .ace_marker-layer .ace_active_line {\ - background: rgb(232, 242, 254);\ -}\ -\ -.ace-crimson-editor .ace_meta.ace_tag {\ - color:rgb(28, 2, 255);\ -}\ -\ -.ace-crimson-editor .ace_marker-layer .ace_selected_word {\ - background: rgb(250, 250, 255);\ - border: 1px solid rgb(200, 200, 250);\ -}\ -\ -.ace-crimson-editor .ace_string.ace_regex {\ - color: rgb(192, 0, 192);\ -}"; - -exports.cssClass = "ace-crimson-editor"; - -var dom = require("../lib/dom"); -dom.importCssString(exports.cssText, exports.cssClass); -}); diff --git a/public/ace_editor/theme-crimson_editor.js b/public/ace_editor/theme-crimson_editor.js old mode 100644 new mode 100755 index e8a4e2a..e07c2da --- a/public/ace_editor/theme-crimson_editor.js +++ b/public/ace_editor/theme-crimson_editor.js @@ -1 +1,148 @@ -define("ace/theme/crimson_editor",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!1,b.cssText=".ace-crimson-editor .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-crimson-editor .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-crimson-editor .ace_gutter { width: 50px; background: #e8e8e8; color: #333; overflow : hidden;}.ace-crimson-editor .ace_gutter-layer { width: 100%; text-align: right;}.ace-crimson-editor .ace_gutter-layer .ace_gutter-cell { padding-right: 6px;}.ace-crimson-editor .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-crimson-editor .ace_text-layer { cursor: text; color: rgb(64, 64, 64);}.ace-crimson-editor .ace_cursor { border-left: 2px solid black;}.ace-crimson-editor .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid black;}.ace-crimson-editor .ace_line .ace_invisible { color: rgb(191, 191, 191);}.ace-crimson-editor .ace_line .ace_identifier { color: black;}.ace-crimson-editor .ace_line .ace_keyword { color: blue;}.ace-crimson-editor .ace_line .ace_constant.ace_buildin { color: rgb(88, 72, 246);}.ace-crimson-editor .ace_line .ace_constant.ace_language { color: rgb(255, 156, 0);}.ace-crimson-editor .ace_line .ace_constant.ace_library { color: rgb(6, 150, 14);}.ace-crimson-editor .ace_line .ace_invalid { text-decoration: line-through; color: rgb(224, 0, 0);}.ace-crimson-editor .ace_line .ace_fold {}.ace-crimson-editor .ace_line .ace_support.ace_function { color: rgb(192, 0, 0);}.ace-crimson-editor .ace_line .ace_support.ace_constant { color: rgb(6, 150, 14);}.ace-crimson-editor .ace_line .ace_support.ace_type,.ace-crimson-editor .ace_line .ace_support.ace_class { color: rgb(109, 121, 222);}.ace-crimson-editor .ace_line .ace_keyword.ace_operator { color: rgb(49, 132, 149);}.ace-crimson-editor .ace_line .ace_string { color: rgb(128, 0, 128);}.ace-crimson-editor .ace_line .ace_comment { color: rgb(76, 136, 107);}.ace-crimson-editor .ace_line .ace_comment.ace_doc { color: rgb(0, 102, 255);}.ace-crimson-editor .ace_line .ace_comment.ace_doc.ace_tag { color: rgb(128, 159, 191);}.ace-crimson-editor .ace_line .ace_constant.ace_numeric { color: rgb(0, 0, 64);}.ace-crimson-editor .ace_line .ace_variable { color: rgb(0, 64, 128);}.ace-crimson-editor .ace_line .ace_xml_pe { color: rgb(104, 104, 91);}.ace-crimson-editor .ace_marker-layer .ace_selection { background: rgb(181, 213, 255);}.ace-crimson-editor .ace_marker-layer .ace_step { background: rgb(252, 255, 0);}.ace-crimson-editor .ace_marker-layer .ace_stack { background: rgb(164, 229, 101);}.ace-crimson-editor .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid rgb(192, 192, 192);}.ace-crimson-editor .ace_marker-layer .ace_active_line { background: rgb(232, 242, 254);}.ace-crimson-editor .ace_meta.ace_tag { color:rgb(28, 2, 255);}.ace-crimson-editor .ace_marker-layer .ace_selected_word { background: rgb(250, 250, 255); border: 1px solid rgb(200, 200, 250);}.ace-crimson-editor .ace_string.ace_regex { color: rgb(192, 0, 192);}",b.cssClass="ace-crimson-editor";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)}) \ No newline at end of file +/* ***** BEGIN LICENSE BLOCK ***** + * Distributed under the BSD license: + * + * Copyright (c) 2010, Ajax.org B.V. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Ajax.org B.V. nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL AJAX.ORG B.V. BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * ***** END LICENSE BLOCK ***** */ + +ace.define('ace/theme/crimson_editor', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { +exports.isDark = false; +exports.cssText = ".ace-crimson-editor .ace_gutter {\ +background: #ebebeb;\ +color: #333;\ +overflow : hidden;\ +}\ +.ace-crimson-editor .ace_gutter-layer {\ +width: 100%;\ +text-align: right;\ +}\ +.ace-crimson-editor .ace_print-margin {\ +width: 1px;\ +background: #e8e8e8;\ +}\ +.ace-crimson-editor {\ +background-color: #FFFFFF;\ +color: rgb(64, 64, 64);\ +}\ +.ace-crimson-editor .ace_cursor {\ +color: black;\ +}\ +.ace-crimson-editor .ace_invisible {\ +color: rgb(191, 191, 191);\ +}\ +.ace-crimson-editor .ace_identifier {\ +color: black;\ +}\ +.ace-crimson-editor .ace_keyword {\ +color: blue;\ +}\ +.ace-crimson-editor .ace_constant.ace_buildin {\ +color: rgb(88, 72, 246);\ +}\ +.ace-crimson-editor .ace_constant.ace_language {\ +color: rgb(255, 156, 0);\ +}\ +.ace-crimson-editor .ace_constant.ace_library {\ +color: rgb(6, 150, 14);\ +}\ +.ace-crimson-editor .ace_invalid {\ +text-decoration: line-through;\ +color: rgb(224, 0, 0);\ +}\ +.ace-crimson-editor .ace_fold {\ +}\ +.ace-crimson-editor .ace_support.ace_function {\ +color: rgb(192, 0, 0);\ +}\ +.ace-crimson-editor .ace_support.ace_constant {\ +color: rgb(6, 150, 14);\ +}\ +.ace-crimson-editor .ace_support.ace_type,\ +.ace-crimson-editor .ace_support.ace_class {\ +color: rgb(109, 121, 222);\ +}\ +.ace-crimson-editor .ace_keyword.ace_operator {\ +color: rgb(49, 132, 149);\ +}\ +.ace-crimson-editor .ace_string {\ +color: rgb(128, 0, 128);\ +}\ +.ace-crimson-editor .ace_comment {\ +color: rgb(76, 136, 107);\ +}\ +.ace-crimson-editor .ace_comment.ace_doc {\ +color: rgb(0, 102, 255);\ +}\ +.ace-crimson-editor .ace_comment.ace_doc.ace_tag {\ +color: rgb(128, 159, 191);\ +}\ +.ace-crimson-editor .ace_constant.ace_numeric {\ +color: rgb(0, 0, 64);\ +}\ +.ace-crimson-editor .ace_variable {\ +color: rgb(0, 64, 128);\ +}\ +.ace-crimson-editor .ace_xml-pe {\ +color: rgb(104, 104, 91);\ +}\ +.ace-crimson-editor .ace_marker-layer .ace_selection {\ +background: rgb(181, 213, 255);\ +}\ +.ace-crimson-editor .ace_marker-layer .ace_step {\ +background: rgb(252, 255, 0);\ +}\ +.ace-crimson-editor .ace_marker-layer .ace_stack {\ +background: rgb(164, 229, 101);\ +}\ +.ace-crimson-editor .ace_marker-layer .ace_bracket {\ +margin: -1px 0 0 -1px;\ +border: 1px solid rgb(192, 192, 192);\ +}\ +.ace-crimson-editor .ace_marker-layer .ace_active-line {\ +background: rgb(232, 242, 254);\ +}\ +.ace-crimson-editor .ace_gutter-active-line {\ +background-color : #dcdcdc;\ +}\ +.ace-crimson-editor .ace_meta.ace_tag {\ +color:rgb(28, 2, 255);\ +}\ +.ace-crimson-editor .ace_marker-layer .ace_selected-word {\ +background: rgb(250, 250, 255);\ +border: 1px solid rgb(200, 200, 250);\ +}\ +.ace-crimson-editor .ace_string.ace_regex {\ +color: rgb(192, 0, 192);\ +}\ +.ace-crimson-editor .ace_indent-guide {\ +background: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAE0lEQVQImWP4////f4bLly//BwAmVgd1/w11/gAAAABJRU5ErkJggg==\") right repeat-y;\ +}"; + +exports.cssClass = "ace-crimson-editor"; + +var dom = require("../lib/dom"); +dom.importCssString(exports.cssText, exports.cssClass); +}); diff --git a/public/ace_editor/theme-dawn-noconflict.js b/public/ace_editor/theme-dawn-noconflict.js deleted file mode 100644 index d70a29c..0000000 --- a/public/ace_editor/theme-dawn-noconflict.js +++ /dev/null @@ -1 +0,0 @@ -ace.define("ace/theme/dawn",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!1,b.cssClass="ace-dawn",b.cssText=".ace-dawn .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-dawn .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-dawn .ace_gutter { background: #e8e8e8; color: #333;}.ace-dawn .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-dawn .ace_scroller { background-color: #F9F9F9;}.ace-dawn .ace_text-layer { cursor: text; color: #080808;}.ace-dawn .ace_cursor { border-left: 2px solid #000000;}.ace-dawn .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #000000;}.ace-dawn .ace_marker-layer .ace_selection { background: rgba(39, 95, 255, 0.30);}.ace-dawn.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #F9F9F9; border-radius: 2px;}.ace-dawn .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-dawn .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid rgba(75, 75, 126, 0.50);}.ace-dawn .ace_marker-layer .ace_active_line { background: rgba(36, 99, 180, 0.12);}.ace-dawn .ace_marker-layer .ace_selected_word { border: 1px solid rgba(39, 95, 255, 0.30);}.ace-dawn .ace_invisible { color: rgba(75, 75, 126, 0.50);}.ace-dawn .ace_keyword, .ace-dawn .ace_meta { color:#794938;}.ace-dawn .ace_constant, .ace-dawn .ace_constant.ace_other { color:#811F24;}.ace-dawn .ace_constant.ace_character, { color:#811F24;}.ace-dawn .ace_constant.ace_character.ace_escape, { color:#811F24;}.ace-dawn .ace_invalid.ace_illegal { text-decoration:underline;font-style:italic;color:#F8F8F8;background-color:#B52A1D;}.ace-dawn .ace_invalid.ace_deprecated { text-decoration:underline;font-style:italic;color:#B52A1D;}.ace-dawn .ace_support { color:#691C97;}.ace-dawn .ace_support.ace_constant { color:#B4371F;}.ace-dawn .ace_fold { background-color: #794938; border-color: #080808;}.ace-dawn .ace_support.ace_function { color:#693A17;}.ace-dawn .ace_storage { font-style:italic;color:#A71D5D;}.ace-dawn .ace_string { color:#0B6125;}.ace-dawn .ace_string.ace_regexp { color:#CF5628;}.ace-dawn .ace_comment { font-style:italic;color:#5A525F;}.ace-dawn .ace_variable { color:#234A97;}.ace-dawn .ace_markup.ace_underline { text-decoration:underline;}.ace-dawn .ace_markup.ace_heading { color:#19356D;}.ace-dawn .ace_markup.ace_list { color:#693A17;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)}) \ No newline at end of file diff --git a/public/ace_editor/theme-dawn-uncompressed-noconflict.js b/public/ace_editor/theme-dawn-uncompressed-noconflict.js deleted file mode 100644 index 6ebc435..0000000 --- a/public/ace_editor/theme-dawn-uncompressed-noconflict.js +++ /dev/null @@ -1,191 +0,0 @@ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla Public License Version - * 1.1 (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * http://www.mozilla.org/MPL/ - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - * - * The Original Code is Ajax.org Code Editor (ACE). - * - * The Initial Developer of the Original Code is - * Ajax.org B.V. - * Portions created by the Initial Developer are Copyright (C) 2010 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Fabian Jakobs - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -ace.define('ace/theme/dawn', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { - -exports.isDark = false; -exports.cssClass = "ace-dawn"; -exports.cssText = "\ -.ace-dawn .ace_editor {\ - border: 2px solid rgb(159, 159, 159);\ -}\ -\ -.ace-dawn .ace_editor.ace_focus {\ - border: 2px solid #327fbd;\ -}\ -\ -.ace-dawn .ace_gutter {\ - background: #e8e8e8;\ - color: #333;\ -}\ -\ -.ace-dawn .ace_print_margin {\ - width: 1px;\ - background: #e8e8e8;\ -}\ -\ -.ace-dawn .ace_scroller {\ - background-color: #F9F9F9;\ -}\ -\ -.ace-dawn .ace_text-layer {\ - cursor: text;\ - color: #080808;\ -}\ -\ -.ace-dawn .ace_cursor {\ - border-left: 2px solid #000000;\ -}\ -\ -.ace-dawn .ace_cursor.ace_overwrite {\ - border-left: 0px;\ - border-bottom: 1px solid #000000;\ -}\ -\ -.ace-dawn .ace_marker-layer .ace_selection {\ - background: rgba(39, 95, 255, 0.30);\ -}\ -\ -.ace-dawn.multiselect .ace_selection.start {\ - box-shadow: 0 0 3px 0px #F9F9F9;\ - border-radius: 2px;\ -}\ -\ -.ace-dawn .ace_marker-layer .ace_step {\ - background: rgb(198, 219, 174);\ -}\ -\ -.ace-dawn .ace_marker-layer .ace_bracket {\ - margin: -1px 0 0 -1px;\ - border: 1px solid rgba(75, 75, 126, 0.50);\ -}\ -\ -.ace-dawn .ace_marker-layer .ace_active_line {\ - background: rgba(36, 99, 180, 0.12);\ -}\ -\ -.ace-dawn .ace_marker-layer .ace_selected_word {\ - border: 1px solid rgba(39, 95, 255, 0.30);\ -}\ -\ -.ace-dawn .ace_invisible {\ - color: rgba(75, 75, 126, 0.50);\ -}\ -\ -.ace-dawn .ace_keyword, .ace-dawn .ace_meta {\ - color:#794938;\ -}\ -\ -.ace-dawn .ace_constant, .ace-dawn .ace_constant.ace_other {\ - color:#811F24;\ -}\ -\ -.ace-dawn .ace_constant.ace_character, {\ - color:#811F24;\ -}\ -\ -.ace-dawn .ace_constant.ace_character.ace_escape, {\ - color:#811F24;\ -}\ -\ -.ace-dawn .ace_invalid.ace_illegal {\ - text-decoration:underline;\ -font-style:italic;\ -color:#F8F8F8;\ -background-color:#B52A1D;\ -}\ -\ -.ace-dawn .ace_invalid.ace_deprecated {\ - text-decoration:underline;\ -font-style:italic;\ -color:#B52A1D;\ -}\ -\ -.ace-dawn .ace_support {\ - color:#691C97;\ -}\ -\ -.ace-dawn .ace_support.ace_constant {\ - color:#B4371F;\ -}\ -\ -.ace-dawn .ace_fold {\ - background-color: #794938;\ - border-color: #080808;\ -}\ -\ -.ace-dawn .ace_support.ace_function {\ - color:#693A17;\ -}\ -\ -.ace-dawn .ace_storage {\ - font-style:italic;\ -color:#A71D5D;\ -}\ -\ -.ace-dawn .ace_string {\ - color:#0B6125;\ -}\ -\ -.ace-dawn .ace_string.ace_regexp {\ - color:#CF5628;\ -}\ -\ -.ace-dawn .ace_comment {\ - font-style:italic;\ -color:#5A525F;\ -}\ -\ -.ace-dawn .ace_variable {\ - color:#234A97;\ -}\ -\ -.ace-dawn .ace_markup.ace_underline {\ - text-decoration:underline;\ -}\ -\ -.ace-dawn .ace_markup.ace_heading {\ - color:#19356D;\ -}\ -\ -.ace-dawn .ace_markup.ace_list {\ - color:#693A17;\ -}"; - - var dom = require("../lib/dom"); - dom.importCssString(exports.cssText, exports.cssClass); -}); diff --git a/public/ace_editor/theme-dawn-uncompressed.js b/public/ace_editor/theme-dawn-uncompressed.js deleted file mode 100644 index 04e1730..0000000 --- a/public/ace_editor/theme-dawn-uncompressed.js +++ /dev/null @@ -1,191 +0,0 @@ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla Public License Version - * 1.1 (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * http://www.mozilla.org/MPL/ - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - * - * The Original Code is Ajax.org Code Editor (ACE). - * - * The Initial Developer of the Original Code is - * Ajax.org B.V. - * Portions created by the Initial Developer are Copyright (C) 2010 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Fabian Jakobs - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -define('ace/theme/dawn', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { - -exports.isDark = false; -exports.cssClass = "ace-dawn"; -exports.cssText = "\ -.ace-dawn .ace_editor {\ - border: 2px solid rgb(159, 159, 159);\ -}\ -\ -.ace-dawn .ace_editor.ace_focus {\ - border: 2px solid #327fbd;\ -}\ -\ -.ace-dawn .ace_gutter {\ - background: #e8e8e8;\ - color: #333;\ -}\ -\ -.ace-dawn .ace_print_margin {\ - width: 1px;\ - background: #e8e8e8;\ -}\ -\ -.ace-dawn .ace_scroller {\ - background-color: #F9F9F9;\ -}\ -\ -.ace-dawn .ace_text-layer {\ - cursor: text;\ - color: #080808;\ -}\ -\ -.ace-dawn .ace_cursor {\ - border-left: 2px solid #000000;\ -}\ -\ -.ace-dawn .ace_cursor.ace_overwrite {\ - border-left: 0px;\ - border-bottom: 1px solid #000000;\ -}\ -\ -.ace-dawn .ace_marker-layer .ace_selection {\ - background: rgba(39, 95, 255, 0.30);\ -}\ -\ -.ace-dawn.multiselect .ace_selection.start {\ - box-shadow: 0 0 3px 0px #F9F9F9;\ - border-radius: 2px;\ -}\ -\ -.ace-dawn .ace_marker-layer .ace_step {\ - background: rgb(198, 219, 174);\ -}\ -\ -.ace-dawn .ace_marker-layer .ace_bracket {\ - margin: -1px 0 0 -1px;\ - border: 1px solid rgba(75, 75, 126, 0.50);\ -}\ -\ -.ace-dawn .ace_marker-layer .ace_active_line {\ - background: rgba(36, 99, 180, 0.12);\ -}\ -\ -.ace-dawn .ace_marker-layer .ace_selected_word {\ - border: 1px solid rgba(39, 95, 255, 0.30);\ -}\ -\ -.ace-dawn .ace_invisible {\ - color: rgba(75, 75, 126, 0.50);\ -}\ -\ -.ace-dawn .ace_keyword, .ace-dawn .ace_meta {\ - color:#794938;\ -}\ -\ -.ace-dawn .ace_constant, .ace-dawn .ace_constant.ace_other {\ - color:#811F24;\ -}\ -\ -.ace-dawn .ace_constant.ace_character, {\ - color:#811F24;\ -}\ -\ -.ace-dawn .ace_constant.ace_character.ace_escape, {\ - color:#811F24;\ -}\ -\ -.ace-dawn .ace_invalid.ace_illegal {\ - text-decoration:underline;\ -font-style:italic;\ -color:#F8F8F8;\ -background-color:#B52A1D;\ -}\ -\ -.ace-dawn .ace_invalid.ace_deprecated {\ - text-decoration:underline;\ -font-style:italic;\ -color:#B52A1D;\ -}\ -\ -.ace-dawn .ace_support {\ - color:#691C97;\ -}\ -\ -.ace-dawn .ace_support.ace_constant {\ - color:#B4371F;\ -}\ -\ -.ace-dawn .ace_fold {\ - background-color: #794938;\ - border-color: #080808;\ -}\ -\ -.ace-dawn .ace_support.ace_function {\ - color:#693A17;\ -}\ -\ -.ace-dawn .ace_storage {\ - font-style:italic;\ -color:#A71D5D;\ -}\ -\ -.ace-dawn .ace_string {\ - color:#0B6125;\ -}\ -\ -.ace-dawn .ace_string.ace_regexp {\ - color:#CF5628;\ -}\ -\ -.ace-dawn .ace_comment {\ - font-style:italic;\ -color:#5A525F;\ -}\ -\ -.ace-dawn .ace_variable {\ - color:#234A97;\ -}\ -\ -.ace-dawn .ace_markup.ace_underline {\ - text-decoration:underline;\ -}\ -\ -.ace-dawn .ace_markup.ace_heading {\ - color:#19356D;\ -}\ -\ -.ace-dawn .ace_markup.ace_list {\ - color:#693A17;\ -}"; - - var dom = require("../lib/dom"); - dom.importCssString(exports.cssText, exports.cssClass); -}); diff --git a/public/ace_editor/theme-dawn.js b/public/ace_editor/theme-dawn.js old mode 100644 new mode 100755 index f1eaa7c..b6b51db --- a/public/ace_editor/theme-dawn.js +++ b/public/ace_editor/theme-dawn.js @@ -1 +1,139 @@ -define("ace/theme/dawn",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!1,b.cssClass="ace-dawn",b.cssText=".ace-dawn .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-dawn .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-dawn .ace_gutter { background: #e8e8e8; color: #333;}.ace-dawn .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-dawn .ace_scroller { background-color: #F9F9F9;}.ace-dawn .ace_text-layer { cursor: text; color: #080808;}.ace-dawn .ace_cursor { border-left: 2px solid #000000;}.ace-dawn .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #000000;}.ace-dawn .ace_marker-layer .ace_selection { background: rgba(39, 95, 255, 0.30);}.ace-dawn.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #F9F9F9; border-radius: 2px;}.ace-dawn .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-dawn .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid rgba(75, 75, 126, 0.50);}.ace-dawn .ace_marker-layer .ace_active_line { background: rgba(36, 99, 180, 0.12);}.ace-dawn .ace_marker-layer .ace_selected_word { border: 1px solid rgba(39, 95, 255, 0.30);}.ace-dawn .ace_invisible { color: rgba(75, 75, 126, 0.50);}.ace-dawn .ace_keyword, .ace-dawn .ace_meta { color:#794938;}.ace-dawn .ace_constant, .ace-dawn .ace_constant.ace_other { color:#811F24;}.ace-dawn .ace_constant.ace_character, { color:#811F24;}.ace-dawn .ace_constant.ace_character.ace_escape, { color:#811F24;}.ace-dawn .ace_invalid.ace_illegal { text-decoration:underline;font-style:italic;color:#F8F8F8;background-color:#B52A1D;}.ace-dawn .ace_invalid.ace_deprecated { text-decoration:underline;font-style:italic;color:#B52A1D;}.ace-dawn .ace_support { color:#691C97;}.ace-dawn .ace_support.ace_constant { color:#B4371F;}.ace-dawn .ace_fold { background-color: #794938; border-color: #080808;}.ace-dawn .ace_support.ace_function { color:#693A17;}.ace-dawn .ace_storage { font-style:italic;color:#A71D5D;}.ace-dawn .ace_string { color:#0B6125;}.ace-dawn .ace_string.ace_regexp { color:#CF5628;}.ace-dawn .ace_comment { font-style:italic;color:#5A525F;}.ace-dawn .ace_variable { color:#234A97;}.ace-dawn .ace_markup.ace_underline { text-decoration:underline;}.ace-dawn .ace_markup.ace_heading { color:#19356D;}.ace-dawn .ace_markup.ace_list { color:#693A17;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)}) \ No newline at end of file +/* ***** BEGIN LICENSE BLOCK ***** + * Distributed under the BSD license: + * + * Copyright (c) 2010, Ajax.org B.V. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Ajax.org B.V. nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL AJAX.ORG B.V. BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * ***** END LICENSE BLOCK ***** */ + +ace.define('ace/theme/dawn', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { + +exports.isDark = false; +exports.cssClass = "ace-dawn"; +exports.cssText = ".ace-dawn .ace_gutter {\ +background: #ebebeb;\ +color: #333\ +}\ +.ace-dawn .ace_print-margin {\ +width: 1px;\ +background: #e8e8e8\ +}\ +.ace-dawn {\ +background-color: #F9F9F9;\ +color: #080808\ +}\ +.ace-dawn .ace_cursor {\ +color: #000000\ +}\ +.ace-dawn .ace_marker-layer .ace_selection {\ +background: rgba(39, 95, 255, 0.30)\ +}\ +.ace-dawn.ace_multiselect .ace_selection.ace_start {\ +box-shadow: 0 0 3px 0px #F9F9F9;\ +border-radius: 2px\ +}\ +.ace-dawn .ace_marker-layer .ace_step {\ +background: rgb(255, 255, 0)\ +}\ +.ace-dawn .ace_marker-layer .ace_bracket {\ +margin: -1px 0 0 -1px;\ +border: 1px solid rgba(75, 75, 126, 0.50)\ +}\ +.ace-dawn .ace_marker-layer .ace_active-line {\ +background: rgba(36, 99, 180, 0.12)\ +}\ +.ace-dawn .ace_gutter-active-line {\ +background-color : #dcdcdc\ +}\ +.ace-dawn .ace_marker-layer .ace_selected-word {\ +border: 1px solid rgba(39, 95, 255, 0.30)\ +}\ +.ace-dawn .ace_invisible {\ +color: rgba(75, 75, 126, 0.50)\ +}\ +.ace-dawn .ace_keyword,\ +.ace-dawn .ace_meta {\ +color: #794938\ +}\ +.ace-dawn .ace_constant,\ +.ace-dawn .ace_constant.ace_character,\ +.ace-dawn .ace_constant.ace_character.ace_escape,\ +.ace-dawn .ace_constant.ace_other {\ +color: #811F24\ +}\ +.ace-dawn .ace_invalid.ace_illegal {\ +text-decoration: underline;\ +font-style: italic;\ +color: #F8F8F8;\ +background-color: #B52A1D\ +}\ +.ace-dawn .ace_invalid.ace_deprecated {\ +text-decoration: underline;\ +font-style: italic;\ +color: #B52A1D\ +}\ +.ace-dawn .ace_support {\ +color: #691C97\ +}\ +.ace-dawn .ace_support.ace_constant {\ +color: #B4371F\ +}\ +.ace-dawn .ace_fold {\ +background-color: #794938;\ +border-color: #080808\ +}\ +.ace-dawn .ace_list,\ +.ace-dawn .ace_markup.ace_list,\ +.ace-dawn .ace_support.ace_function {\ +color: #693A17\ +}\ +.ace-dawn .ace_storage {\ +font-style: italic;\ +color: #A71D5D\ +}\ +.ace-dawn .ace_string {\ +color: #0B6125\ +}\ +.ace-dawn .ace_string.ace_regexp {\ +color: #CF5628\ +}\ +.ace-dawn .ace_comment {\ +font-style: italic;\ +color: #5A525F\ +}\ +.ace-dawn .ace_heading,\ +.ace-dawn .ace_markup.ace_heading {\ +color: #19356D\ +}\ +.ace-dawn .ace_variable {\ +color: #234A97\ +}\ +.ace-dawn .ace_indent-guide {\ +background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAEklEQVQImWNgYGBgYLh/5+x/AAizA4hxNNsZAAAAAElFTkSuQmCC) right repeat-y\ +}"; + +var dom = require("../lib/dom"); +dom.importCssString(exports.cssText, exports.cssClass); +}); diff --git a/public/ace_editor/theme-dreamweaver-noconflict.js b/public/ace_editor/theme-dreamweaver-noconflict.js deleted file mode 100644 index 6f40ba0..0000000 --- a/public/ace_editor/theme-dreamweaver-noconflict.js +++ /dev/null @@ -1 +0,0 @@ -ace.define("ace/theme/dreamweaver",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!1,b.cssClass="ace-dreamweaver",b.cssText=".ace-dreamweaver .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-dreamweaver .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-dreamweaver .ace_gutter { background: #e8e8e8; color: #333;}.ace-dreamweaver .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-dreamweaver .ace_fold { background-color: #00F;}.ace-dreamweaver .ace_text-layer { cursor: text;}.ace-dreamweaver .ace_cursor { border-left: 2px solid black;}.ace-dreamweaver .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid black;} .ace-dreamweaver .ace_line .ace_invisible { color: rgb(191, 191, 191);}.ace-dreamweaver .ace_line .ace_storage,.ace-dreamweaver .ace_line .ace_keyword { color: blue;}.ace-dreamweaver .ace_line .ace_constant.ace_buildin { color: rgb(88, 72, 246);}.ace-dreamweaver .ace_line .ace_constant.ace_language { color: rgb(88, 92, 246);}.ace-dreamweaver .ace_line .ace_constant.ace_library { color: rgb(6, 150, 14);}.ace-dreamweaver .ace_line .ace_invalid { background-color: rgb(153, 0, 0); color: white;}.ace-dreamweaver .ace_line .ace_support.ace_function { color: rgb(60, 76, 114);}.ace-dreamweaver .ace_line .ace_support.ace_constant { color: rgb(6, 150, 14);}.ace-dreamweaver .ace_line .ace_support.ace_type,.ace-dreamweaver .ace_line .ace_support.ace_class { color: #009;}.ace-dreamweaver .ace_line .ace_support.ace_php_tag { color: #f00;}.ace-dreamweaver .ace_line .ace_keyword.ace_operator { color: rgb(104, 118, 135);}.ace-dreamweaver .ace_line .ace_string { color: #00F;}.ace-dreamweaver .ace_line .ace_comment { color: rgb(76, 136, 107);}.ace-dreamweaver .ace_line .ace_comment.ace_doc { color: rgb(0, 102, 255);}.ace-dreamweaver .ace_line .ace_comment.ace_doc.ace_tag { color: rgb(128, 159, 191);}.ace-dreamweaver .ace_line .ace_constant.ace_numeric { color: rgb(0, 0, 205);}.ace-dreamweaver .ace_line .ace_variable { color: #06F}.ace-dreamweaver .ace_line .ace_xml_pe { color: rgb(104, 104, 91);}.ace-dreamweaver .ace_entity.ace_name.ace_function { color: #00F;}.ace-dreamweaver .ace_markup.ace_markupine { text-decoration:underline;}.ace-dreamweaver .ace_markup.ace_heading { color: rgb(12, 7, 255);}.ace-dreamweaver .ace_markup.ace_list { color:rgb(185, 6, 144);}.ace-dreamweaver .ace_marker-layer .ace_selection { background: rgb(181, 213, 255);}.ace-dreamweaver .ace_marker-layer .ace_step { background: rgb(252, 255, 0);}.ace-dreamweaver .ace_marker-layer .ace_stack { background: rgb(164, 229, 101);}.ace-dreamweaver .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid rgb(192, 192, 192);}.ace-dreamweaver .ace_marker-layer .ace_active_line { background: rgba(0, 0, 0, 0.07);}.ace-dreamweaver .ace_marker-layer .ace_selected_word { background: rgb(250, 250, 255); border: 1px solid rgb(200, 200, 250);}.ace-dreamweaver .ace_meta.ace_tag { color:#009;}.ace-dreamweaver .ace_meta.ace_tag.ace_anchor { color:#060;}.ace-dreamweaver .ace_meta.ace_tag.ace_form { color:#F90;}.ace-dreamweaver .ace_meta.ace_tag.ace_image { color:#909;}.ace-dreamweaver .ace_meta.ace_tag.ace_script { color:#900;}.ace-dreamweaver .ace_meta.ace_tag.ace_style { color:#909;}.ace-dreamweaver .ace_meta.ace_tag.ace_table { color:#099;}.ace-dreamweaver .ace_string.ace_regex { color: rgb(255, 0, 0)}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)}) \ No newline at end of file diff --git a/public/ace_editor/theme-dreamweaver-uncompressed-noconflict.js b/public/ace_editor/theme-dreamweaver-uncompressed-noconflict.js deleted file mode 100644 index 29a97ea..0000000 --- a/public/ace_editor/theme-dreamweaver-uncompressed-noconflict.js +++ /dev/null @@ -1,227 +0,0 @@ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla Public License Version - * 1.1 (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * http://www.mozilla.org/MPL/ - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - * - * The Original Code is Ajax.org Code Editor (ACE). - * - * The Initial Developer of the Original Code is - * Ajax.org B.V. - * Portions created by the Initial Developer are Copyright (C) 2010 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Adam Jimenez - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -ace.define('ace/theme/dreamweaver', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { -exports.isDark = false; -exports.cssClass = "ace-dreamweaver"; -exports.cssText = ".ace-dreamweaver .ace_editor {\ - border: 2px solid rgb(159, 159, 159);\ -}\ -\ -.ace-dreamweaver .ace_editor.ace_focus {\ - border: 2px solid #327fbd;\ -}\ -\ -.ace-dreamweaver .ace_gutter {\ - background: #e8e8e8;\ - color: #333;\ -}\ -\ -.ace-dreamweaver .ace_print_margin {\ - width: 1px;\ - background: #e8e8e8;\ -}\ -\ -.ace-dreamweaver .ace_fold {\ - background-color: #00F;\ -}\ -\ -.ace-dreamweaver .ace_text-layer {\ - cursor: text;\ -}\ -\ -.ace-dreamweaver .ace_cursor {\ - border-left: 2px solid black;\ -}\ -\ -.ace-dreamweaver .ace_cursor.ace_overwrite {\ - border-left: 0px;\ - border-bottom: 1px solid black;\ -}\ - \ -.ace-dreamweaver .ace_line .ace_invisible {\ - color: rgb(191, 191, 191);\ -}\ -\ -.ace-dreamweaver .ace_line .ace_storage,\ -.ace-dreamweaver .ace_line .ace_keyword {\ - color: blue;\ -}\ -\ -.ace-dreamweaver .ace_line .ace_constant.ace_buildin {\ - color: rgb(88, 72, 246);\ -}\ -\ -.ace-dreamweaver .ace_line .ace_constant.ace_language {\ - color: rgb(88, 92, 246);\ -}\ -\ -.ace-dreamweaver .ace_line .ace_constant.ace_library {\ - color: rgb(6, 150, 14);\ -}\ -\ -.ace-dreamweaver .ace_line .ace_invalid {\ - background-color: rgb(153, 0, 0);\ - color: white;\ -}\ -\ -.ace-dreamweaver .ace_line .ace_support.ace_function {\ - color: rgb(60, 76, 114);\ -}\ -\ -.ace-dreamweaver .ace_line .ace_support.ace_constant {\ - color: rgb(6, 150, 14);\ -}\ -\ -.ace-dreamweaver .ace_line .ace_support.ace_type,\ -.ace-dreamweaver .ace_line .ace_support.ace_class {\ - color: #009;\ -}\ -\ -.ace-dreamweaver .ace_line .ace_support.ace_php_tag {\ - color: #f00;\ -}\ -\ -.ace-dreamweaver .ace_line .ace_keyword.ace_operator {\ - color: rgb(104, 118, 135);\ -}\ -\ -.ace-dreamweaver .ace_line .ace_string {\ - color: #00F;\ -}\ -\ -.ace-dreamweaver .ace_line .ace_comment {\ - color: rgb(76, 136, 107);\ -}\ -\ -.ace-dreamweaver .ace_line .ace_comment.ace_doc {\ - color: rgb(0, 102, 255);\ -}\ -\ -.ace-dreamweaver .ace_line .ace_comment.ace_doc.ace_tag {\ - color: rgb(128, 159, 191);\ -}\ -\ -.ace-dreamweaver .ace_line .ace_constant.ace_numeric {\ - color: rgb(0, 0, 205);\ -}\ -\ -.ace-dreamweaver .ace_line .ace_variable {\ - color: #06F\ -}\ -\ -.ace-dreamweaver .ace_line .ace_xml_pe {\ - color: rgb(104, 104, 91);\ -}\ -\ -.ace-dreamweaver .ace_entity.ace_name.ace_function {\ - color: #00F;\ -}\ -\ -.ace-dreamweaver .ace_markup.ace_markupine {\ - text-decoration:underline;\ -}\ -\ -.ace-dreamweaver .ace_markup.ace_heading {\ - color: rgb(12, 7, 255);\ -}\ -\ -.ace-dreamweaver .ace_markup.ace_list {\ - color:rgb(185, 6, 144);\ -}\ -\ -.ace-dreamweaver .ace_marker-layer .ace_selection {\ - background: rgb(181, 213, 255);\ -}\ -\ -.ace-dreamweaver .ace_marker-layer .ace_step {\ - background: rgb(252, 255, 0);\ -}\ -\ -.ace-dreamweaver .ace_marker-layer .ace_stack {\ - background: rgb(164, 229, 101);\ -}\ -\ -.ace-dreamweaver .ace_marker-layer .ace_bracket {\ - margin: -1px 0 0 -1px;\ - border: 1px solid rgb(192, 192, 192);\ -}\ -\ -.ace-dreamweaver .ace_marker-layer .ace_active_line {\ - background: rgba(0, 0, 0, 0.07);\ -}\ -\ -.ace-dreamweaver .ace_marker-layer .ace_selected_word {\ - background: rgb(250, 250, 255);\ - border: 1px solid rgb(200, 200, 250);\ -}\ -\ -.ace-dreamweaver .ace_meta.ace_tag {\ - color:#009;\ -}\ -\ -.ace-dreamweaver .ace_meta.ace_tag.ace_anchor {\ - color:#060;\ -}\ -\ -.ace-dreamweaver .ace_meta.ace_tag.ace_form {\ - color:#F90;\ -}\ -\ -.ace-dreamweaver .ace_meta.ace_tag.ace_image {\ - color:#909;\ -}\ -\ -.ace-dreamweaver .ace_meta.ace_tag.ace_script {\ - color:#900;\ -}\ -\ -.ace-dreamweaver .ace_meta.ace_tag.ace_style {\ - color:#909;\ -}\ -\ -.ace-dreamweaver .ace_meta.ace_tag.ace_table {\ - color:#099;\ -}\ -\ -.ace-dreamweaver .ace_string.ace_regex {\ - color: rgb(255, 0, 0)\ -}"; - -var dom = require("../lib/dom"); -dom.importCssString(exports.cssText, exports.cssClass); -}); diff --git a/public/ace_editor/theme-dreamweaver-uncompressed.js b/public/ace_editor/theme-dreamweaver-uncompressed.js deleted file mode 100644 index d78ae07..0000000 --- a/public/ace_editor/theme-dreamweaver-uncompressed.js +++ /dev/null @@ -1,227 +0,0 @@ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla Public License Version - * 1.1 (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * http://www.mozilla.org/MPL/ - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - * - * The Original Code is Ajax.org Code Editor (ACE). - * - * The Initial Developer of the Original Code is - * Ajax.org B.V. - * Portions created by the Initial Developer are Copyright (C) 2010 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Adam Jimenez - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -define('ace/theme/dreamweaver', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { -exports.isDark = false; -exports.cssClass = "ace-dreamweaver"; -exports.cssText = ".ace-dreamweaver .ace_editor {\ - border: 2px solid rgb(159, 159, 159);\ -}\ -\ -.ace-dreamweaver .ace_editor.ace_focus {\ - border: 2px solid #327fbd;\ -}\ -\ -.ace-dreamweaver .ace_gutter {\ - background: #e8e8e8;\ - color: #333;\ -}\ -\ -.ace-dreamweaver .ace_print_margin {\ - width: 1px;\ - background: #e8e8e8;\ -}\ -\ -.ace-dreamweaver .ace_fold {\ - background-color: #00F;\ -}\ -\ -.ace-dreamweaver .ace_text-layer {\ - cursor: text;\ -}\ -\ -.ace-dreamweaver .ace_cursor {\ - border-left: 2px solid black;\ -}\ -\ -.ace-dreamweaver .ace_cursor.ace_overwrite {\ - border-left: 0px;\ - border-bottom: 1px solid black;\ -}\ - \ -.ace-dreamweaver .ace_line .ace_invisible {\ - color: rgb(191, 191, 191);\ -}\ -\ -.ace-dreamweaver .ace_line .ace_storage,\ -.ace-dreamweaver .ace_line .ace_keyword {\ - color: blue;\ -}\ -\ -.ace-dreamweaver .ace_line .ace_constant.ace_buildin {\ - color: rgb(88, 72, 246);\ -}\ -\ -.ace-dreamweaver .ace_line .ace_constant.ace_language {\ - color: rgb(88, 92, 246);\ -}\ -\ -.ace-dreamweaver .ace_line .ace_constant.ace_library {\ - color: rgb(6, 150, 14);\ -}\ -\ -.ace-dreamweaver .ace_line .ace_invalid {\ - background-color: rgb(153, 0, 0);\ - color: white;\ -}\ -\ -.ace-dreamweaver .ace_line .ace_support.ace_function {\ - color: rgb(60, 76, 114);\ -}\ -\ -.ace-dreamweaver .ace_line .ace_support.ace_constant {\ - color: rgb(6, 150, 14);\ -}\ -\ -.ace-dreamweaver .ace_line .ace_support.ace_type,\ -.ace-dreamweaver .ace_line .ace_support.ace_class {\ - color: #009;\ -}\ -\ -.ace-dreamweaver .ace_line .ace_support.ace_php_tag {\ - color: #f00;\ -}\ -\ -.ace-dreamweaver .ace_line .ace_keyword.ace_operator {\ - color: rgb(104, 118, 135);\ -}\ -\ -.ace-dreamweaver .ace_line .ace_string {\ - color: #00F;\ -}\ -\ -.ace-dreamweaver .ace_line .ace_comment {\ - color: rgb(76, 136, 107);\ -}\ -\ -.ace-dreamweaver .ace_line .ace_comment.ace_doc {\ - color: rgb(0, 102, 255);\ -}\ -\ -.ace-dreamweaver .ace_line .ace_comment.ace_doc.ace_tag {\ - color: rgb(128, 159, 191);\ -}\ -\ -.ace-dreamweaver .ace_line .ace_constant.ace_numeric {\ - color: rgb(0, 0, 205);\ -}\ -\ -.ace-dreamweaver .ace_line .ace_variable {\ - color: #06F\ -}\ -\ -.ace-dreamweaver .ace_line .ace_xml_pe {\ - color: rgb(104, 104, 91);\ -}\ -\ -.ace-dreamweaver .ace_entity.ace_name.ace_function {\ - color: #00F;\ -}\ -\ -.ace-dreamweaver .ace_markup.ace_markupine {\ - text-decoration:underline;\ -}\ -\ -.ace-dreamweaver .ace_markup.ace_heading {\ - color: rgb(12, 7, 255);\ -}\ -\ -.ace-dreamweaver .ace_markup.ace_list {\ - color:rgb(185, 6, 144);\ -}\ -\ -.ace-dreamweaver .ace_marker-layer .ace_selection {\ - background: rgb(181, 213, 255);\ -}\ -\ -.ace-dreamweaver .ace_marker-layer .ace_step {\ - background: rgb(252, 255, 0);\ -}\ -\ -.ace-dreamweaver .ace_marker-layer .ace_stack {\ - background: rgb(164, 229, 101);\ -}\ -\ -.ace-dreamweaver .ace_marker-layer .ace_bracket {\ - margin: -1px 0 0 -1px;\ - border: 1px solid rgb(192, 192, 192);\ -}\ -\ -.ace-dreamweaver .ace_marker-layer .ace_active_line {\ - background: rgba(0, 0, 0, 0.07);\ -}\ -\ -.ace-dreamweaver .ace_marker-layer .ace_selected_word {\ - background: rgb(250, 250, 255);\ - border: 1px solid rgb(200, 200, 250);\ -}\ -\ -.ace-dreamweaver .ace_meta.ace_tag {\ - color:#009;\ -}\ -\ -.ace-dreamweaver .ace_meta.ace_tag.ace_anchor {\ - color:#060;\ -}\ -\ -.ace-dreamweaver .ace_meta.ace_tag.ace_form {\ - color:#F90;\ -}\ -\ -.ace-dreamweaver .ace_meta.ace_tag.ace_image {\ - color:#909;\ -}\ -\ -.ace-dreamweaver .ace_meta.ace_tag.ace_script {\ - color:#900;\ -}\ -\ -.ace-dreamweaver .ace_meta.ace_tag.ace_style {\ - color:#909;\ -}\ -\ -.ace-dreamweaver .ace_meta.ace_tag.ace_table {\ - color:#099;\ -}\ -\ -.ace-dreamweaver .ace_string.ace_regex {\ - color: rgb(255, 0, 0)\ -}"; - -var dom = require("../lib/dom"); -dom.importCssString(exports.cssText, exports.cssClass); -}); diff --git a/public/ace_editor/theme-dreamweaver.js b/public/ace_editor/theme-dreamweaver.js old mode 100644 new mode 100755 index 4bd5e9d..371b233 --- a/public/ace_editor/theme-dreamweaver.js +++ b/public/ace_editor/theme-dreamweaver.js @@ -1 +1,168 @@ -define("ace/theme/dreamweaver",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!1,b.cssClass="ace-dreamweaver",b.cssText=".ace-dreamweaver .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-dreamweaver .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-dreamweaver .ace_gutter { background: #e8e8e8; color: #333;}.ace-dreamweaver .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-dreamweaver .ace_fold { background-color: #00F;}.ace-dreamweaver .ace_text-layer { cursor: text;}.ace-dreamweaver .ace_cursor { border-left: 2px solid black;}.ace-dreamweaver .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid black;} .ace-dreamweaver .ace_line .ace_invisible { color: rgb(191, 191, 191);}.ace-dreamweaver .ace_line .ace_storage,.ace-dreamweaver .ace_line .ace_keyword { color: blue;}.ace-dreamweaver .ace_line .ace_constant.ace_buildin { color: rgb(88, 72, 246);}.ace-dreamweaver .ace_line .ace_constant.ace_language { color: rgb(88, 92, 246);}.ace-dreamweaver .ace_line .ace_constant.ace_library { color: rgb(6, 150, 14);}.ace-dreamweaver .ace_line .ace_invalid { background-color: rgb(153, 0, 0); color: white;}.ace-dreamweaver .ace_line .ace_support.ace_function { color: rgb(60, 76, 114);}.ace-dreamweaver .ace_line .ace_support.ace_constant { color: rgb(6, 150, 14);}.ace-dreamweaver .ace_line .ace_support.ace_type,.ace-dreamweaver .ace_line .ace_support.ace_class { color: #009;}.ace-dreamweaver .ace_line .ace_support.ace_php_tag { color: #f00;}.ace-dreamweaver .ace_line .ace_keyword.ace_operator { color: rgb(104, 118, 135);}.ace-dreamweaver .ace_line .ace_string { color: #00F;}.ace-dreamweaver .ace_line .ace_comment { color: rgb(76, 136, 107);}.ace-dreamweaver .ace_line .ace_comment.ace_doc { color: rgb(0, 102, 255);}.ace-dreamweaver .ace_line .ace_comment.ace_doc.ace_tag { color: rgb(128, 159, 191);}.ace-dreamweaver .ace_line .ace_constant.ace_numeric { color: rgb(0, 0, 205);}.ace-dreamweaver .ace_line .ace_variable { color: #06F}.ace-dreamweaver .ace_line .ace_xml_pe { color: rgb(104, 104, 91);}.ace-dreamweaver .ace_entity.ace_name.ace_function { color: #00F;}.ace-dreamweaver .ace_markup.ace_markupine { text-decoration:underline;}.ace-dreamweaver .ace_markup.ace_heading { color: rgb(12, 7, 255);}.ace-dreamweaver .ace_markup.ace_list { color:rgb(185, 6, 144);}.ace-dreamweaver .ace_marker-layer .ace_selection { background: rgb(181, 213, 255);}.ace-dreamweaver .ace_marker-layer .ace_step { background: rgb(252, 255, 0);}.ace-dreamweaver .ace_marker-layer .ace_stack { background: rgb(164, 229, 101);}.ace-dreamweaver .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid rgb(192, 192, 192);}.ace-dreamweaver .ace_marker-layer .ace_active_line { background: rgba(0, 0, 0, 0.07);}.ace-dreamweaver .ace_marker-layer .ace_selected_word { background: rgb(250, 250, 255); border: 1px solid rgb(200, 200, 250);}.ace-dreamweaver .ace_meta.ace_tag { color:#009;}.ace-dreamweaver .ace_meta.ace_tag.ace_anchor { color:#060;}.ace-dreamweaver .ace_meta.ace_tag.ace_form { color:#F90;}.ace-dreamweaver .ace_meta.ace_tag.ace_image { color:#909;}.ace-dreamweaver .ace_meta.ace_tag.ace_script { color:#900;}.ace-dreamweaver .ace_meta.ace_tag.ace_style { color:#909;}.ace-dreamweaver .ace_meta.ace_tag.ace_table { color:#099;}.ace-dreamweaver .ace_string.ace_regex { color: rgb(255, 0, 0)}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)}) \ No newline at end of file +/* ***** BEGIN LICENSE BLOCK ***** + * Distributed under the BSD license: + * + * Copyright (c) 2010, Ajax.org B.V. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Ajax.org B.V. nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL AJAX.ORG B.V. BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * ***** END LICENSE BLOCK ***** */ + +ace.define('ace/theme/dreamweaver', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { +exports.isDark = false; +exports.cssClass = "ace-dreamweaver"; +exports.cssText = ".ace-dreamweaver .ace_gutter {\ +background: #e8e8e8;\ +color: #333;\ +}\ +.ace-dreamweaver .ace_print-margin {\ +width: 1px;\ +background: #e8e8e8;\ +}\ +.ace-dreamweaver {\ +background-color: #FFFFFF;\ +color: black;\ +}\ +.ace-dreamweaver .ace_fold {\ +background-color: #757AD8;\ +}\ +.ace-dreamweaver .ace_cursor {\ +color: black;\ +}\ +.ace-dreamweaver .ace_invisible {\ +color: rgb(191, 191, 191);\ +}\ +.ace-dreamweaver .ace_storage,\ +.ace-dreamweaver .ace_keyword {\ +color: blue;\ +}\ +.ace-dreamweaver .ace_constant.ace_buildin {\ +color: rgb(88, 72, 246);\ +}\ +.ace-dreamweaver .ace_constant.ace_language {\ +color: rgb(88, 92, 246);\ +}\ +.ace-dreamweaver .ace_constant.ace_library {\ +color: rgb(6, 150, 14);\ +}\ +.ace-dreamweaver .ace_invalid {\ +background-color: rgb(153, 0, 0);\ +color: white;\ +}\ +.ace-dreamweaver .ace_support.ace_function {\ +color: rgb(60, 76, 114);\ +}\ +.ace-dreamweaver .ace_support.ace_constant {\ +color: rgb(6, 150, 14);\ +}\ +.ace-dreamweaver .ace_support.ace_type,\ +.ace-dreamweaver .ace_support.ace_class {\ +color: #009;\ +}\ +.ace-dreamweaver .ace_support.ace_php_tag {\ +color: #f00;\ +}\ +.ace-dreamweaver .ace_keyword.ace_operator {\ +color: rgb(104, 118, 135);\ +}\ +.ace-dreamweaver .ace_string {\ +color: #00F;\ +}\ +.ace-dreamweaver .ace_comment {\ +color: rgb(76, 136, 107);\ +}\ +.ace-dreamweaver .ace_comment.ace_doc {\ +color: rgb(0, 102, 255);\ +}\ +.ace-dreamweaver .ace_comment.ace_doc.ace_tag {\ +color: rgb(128, 159, 191);\ +}\ +.ace-dreamweaver .ace_constant.ace_numeric {\ +color: rgb(0, 0, 205);\ +}\ +.ace-dreamweaver .ace_variable {\ +color: #06F\ +}\ +.ace-dreamweaver .ace_xml-pe {\ +color: rgb(104, 104, 91);\ +}\ +.ace-dreamweaver .ace_entity.ace_name.ace_function {\ +color: #00F;\ +}\ +.ace-dreamweaver .ace_heading {\ +color: rgb(12, 7, 255);\ +}\ +.ace-dreamweaver .ace_list {\ +color:rgb(185, 6, 144);\ +}\ +.ace-dreamweaver .ace_marker-layer .ace_selection {\ +background: rgb(181, 213, 255);\ +}\ +.ace-dreamweaver .ace_marker-layer .ace_step {\ +background: rgb(252, 255, 0);\ +}\ +.ace-dreamweaver .ace_marker-layer .ace_stack {\ +background: rgb(164, 229, 101);\ +}\ +.ace-dreamweaver .ace_marker-layer .ace_bracket {\ +margin: -1px 0 0 -1px;\ +border: 1px solid rgb(192, 192, 192);\ +}\ +.ace-dreamweaver .ace_marker-layer .ace_active-line {\ +background: rgba(0, 0, 0, 0.07);\ +}\ +.ace-dreamweaver .ace_marker-layer .ace_selected-word {\ +background: rgb(250, 250, 255);\ +border: 1px solid rgb(200, 200, 250);\ +}\ +.ace-dreamweaver .ace_meta.ace_tag {\ +color:#009;\ +}\ +.ace-dreamweaver .ace_meta.ace_tag.ace_anchor {\ +color:#060;\ +}\ +.ace-dreamweaver .ace_meta.ace_tag.ace_form {\ +color:#F90;\ +}\ +.ace-dreamweaver .ace_meta.ace_tag.ace_image {\ +color:#909;\ +}\ +.ace-dreamweaver .ace_meta.ace_tag.ace_script {\ +color:#900;\ +}\ +.ace-dreamweaver .ace_meta.ace_tag.ace_style {\ +color:#909;\ +}\ +.ace-dreamweaver .ace_meta.ace_tag.ace_table {\ +color:#099;\ +}\ +.ace-dreamweaver .ace_string.ace_regex {\ +color: rgb(255, 0, 0)\ +}\ +.ace-dreamweaver .ace_indent-guide {\ +background: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAE0lEQVQImWP4////f4bLly//BwAmVgd1/w11/gAAAABJRU5ErkJggg==\") right repeat-y;\ +}"; + +var dom = require("../lib/dom"); +dom.importCssString(exports.cssText, exports.cssClass); +}); diff --git a/public/ace_editor/theme-eclipse-noconflict.js b/public/ace_editor/theme-eclipse-noconflict.js deleted file mode 100644 index 7da7e53..0000000 --- a/public/ace_editor/theme-eclipse-noconflict.js +++ /dev/null @@ -1 +0,0 @@ -ace.define("ace/theme/eclipse",["require","exports","module","ace/lib/dom"],function(a,b,c){"use strict",b.isDark=!1,b.cssText=".ace-eclipse .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-eclipse .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-eclipse .ace_gutter { background: rgb(227, 227, 227); border-right: 1px solid rgb(159, 159, 159); color: rgb(136, 136, 136);}.ace-eclipse .ace_print_margin { width: 1px; background: #b1b4ba;}.ace-eclipse .ace_fold { background-color: rgb(60, 76, 114);}.ace-eclipse .ace_text-layer { cursor: text;}.ace-eclipse .ace_cursor { border-left: 2px solid black;}.ace-eclipse .ace_line .ace_storage,.ace-eclipse .ace_line .ace_keyword,.ace-eclipse .ace_line .ace_variable { color: rgb(127, 0, 85);}.ace-eclipse .ace_line .ace_constant.ace_buildin { color: rgb(88, 72, 246);}.ace-eclipse .ace_line .ace_constant.ace_library { color: rgb(6, 150, 14);}.ace-eclipse .ace_line .ace_function { color: rgb(60, 76, 114);}.ace-eclipse .ace_line .ace_string { color: rgb(42, 0, 255);}.ace-eclipse .ace_line .ace_comment { color: rgb(63, 127, 95);}.ace-eclipse .ace_line .ace_comment.ace_doc { color: rgb(63, 95, 191);}.ace-eclipse .ace_line .ace_comment.ace_doc.ace_tag { color: rgb(127, 159, 191);}.ace-eclipse .ace_line .ace_constant.ace_numeric {}.ace-eclipse .ace_line .ace_tag { color: rgb(63, 127, 127);}.ace-eclipse .ace_line .ace_type { color: rgb(127, 0, 127);}.ace-eclipse .ace_line .ace_xml_pe { color: rgb(104, 104, 91);}.ace-eclipse .ace_marker-layer .ace_selection { background: rgb(181, 213, 255);}.ace-eclipse .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid rgb(192, 192, 192);}.ace-eclipse .ace_line .ace_meta.ace_tag { color:rgb(63, 127, 127);}.ace-eclipse .ace_entity.ace_other.ace_attribute-name { color:rgb(127, 0, 127);}.ace-eclipse .ace_marker-layer .ace_active_line { background: rgb(232, 242, 254);}",b.cssClass="ace-eclipse";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)}) \ No newline at end of file diff --git a/public/ace_editor/theme-eclipse-uncompressed-noconflict.js b/public/ace_editor/theme-eclipse-uncompressed-noconflict.js deleted file mode 100644 index 10a289a..0000000 --- a/public/ace_editor/theme-eclipse-uncompressed-noconflict.js +++ /dev/null @@ -1,147 +0,0 @@ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla Public License Version - * 1.1 (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * http://www.mozilla.org/MPL/ - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - * - * The Original Code is Ajax.org Code Editor (ACE). - * - * The Initial Developer of the Original Code is - * Ajax.org B.V. - * Portions created by the Initial Developer are Copyright (C) 2010 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Fabian Jakobs - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -ace.define('ace/theme/eclipse', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { -"use strict"; - -exports.isDark = false; -exports.cssText = ".ace-eclipse .ace_editor {\ - border: 2px solid rgb(159, 159, 159);\ -}\ -\ -.ace-eclipse .ace_editor.ace_focus {\ - border: 2px solid #327fbd;\ -}\ -\ -.ace-eclipse .ace_gutter {\ - background: rgb(227, 227, 227);\ - border-right: 1px solid rgb(159, 159, 159);\ - color: rgb(136, 136, 136);\ -}\ -\ -.ace-eclipse .ace_print_margin {\ - width: 1px;\ - background: #b1b4ba;\ -}\ -\ -.ace-eclipse .ace_fold {\ - background-color: rgb(60, 76, 114);\ -}\ -\ -.ace-eclipse .ace_text-layer {\ - cursor: text;\ -}\ -\ -.ace-eclipse .ace_cursor {\ - border-left: 2px solid black;\ -}\ -\ -.ace-eclipse .ace_line .ace_storage,\ -.ace-eclipse .ace_line .ace_keyword,\ -.ace-eclipse .ace_line .ace_variable {\ - color: rgb(127, 0, 85);\ -}\ -\ -.ace-eclipse .ace_line .ace_constant.ace_buildin {\ - color: rgb(88, 72, 246);\ -}\ -\ -.ace-eclipse .ace_line .ace_constant.ace_library {\ - color: rgb(6, 150, 14);\ -}\ -\ -.ace-eclipse .ace_line .ace_function {\ - color: rgb(60, 76, 114);\ -}\ -\ -.ace-eclipse .ace_line .ace_string {\ - color: rgb(42, 0, 255);\ -}\ -\ -.ace-eclipse .ace_line .ace_comment {\ - color: rgb(63, 127, 95);\ -}\ -\ -.ace-eclipse .ace_line .ace_comment.ace_doc {\ - color: rgb(63, 95, 191);\ -}\ -\ -.ace-eclipse .ace_line .ace_comment.ace_doc.ace_tag {\ - color: rgb(127, 159, 191);\ -}\ -\ -.ace-eclipse .ace_line .ace_constant.ace_numeric {\ -}\ -\ -.ace-eclipse .ace_line .ace_tag {\ - color: rgb(63, 127, 127);\ -}\ -\ -.ace-eclipse .ace_line .ace_type {\ - color: rgb(127, 0, 127);\ -}\ -\ -.ace-eclipse .ace_line .ace_xml_pe {\ - color: rgb(104, 104, 91);\ -}\ -\ -.ace-eclipse .ace_marker-layer .ace_selection {\ - background: rgb(181, 213, 255);\ -}\ -\ -.ace-eclipse .ace_marker-layer .ace_bracket {\ - margin: -1px 0 0 -1px;\ - border: 1px solid rgb(192, 192, 192);\ -}\ -\ -.ace-eclipse .ace_line .ace_meta.ace_tag {\ - color:rgb(63, 127, 127);\ -}\ -\ -.ace-eclipse .ace_entity.ace_other.ace_attribute-name {\ - color:rgb(127, 0, 127);\ -}\ -\ -.ace-eclipse .ace_marker-layer .ace_active_line {\ - background: rgb(232, 242, 254);\ -}"; - -exports.cssClass = "ace-eclipse"; - -var dom = require("../lib/dom"); -dom.importCssString(exports.cssText, exports.cssClass); -}); diff --git a/public/ace_editor/theme-eclipse-uncompressed.js b/public/ace_editor/theme-eclipse-uncompressed.js deleted file mode 100644 index b6e9dca..0000000 --- a/public/ace_editor/theme-eclipse-uncompressed.js +++ /dev/null @@ -1,147 +0,0 @@ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla Public License Version - * 1.1 (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * http://www.mozilla.org/MPL/ - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - * - * The Original Code is Ajax.org Code Editor (ACE). - * - * The Initial Developer of the Original Code is - * Ajax.org B.V. - * Portions created by the Initial Developer are Copyright (C) 2010 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Fabian Jakobs - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -define('ace/theme/eclipse', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { -"use strict"; - -exports.isDark = false; -exports.cssText = ".ace-eclipse .ace_editor {\ - border: 2px solid rgb(159, 159, 159);\ -}\ -\ -.ace-eclipse .ace_editor.ace_focus {\ - border: 2px solid #327fbd;\ -}\ -\ -.ace-eclipse .ace_gutter {\ - background: rgb(227, 227, 227);\ - border-right: 1px solid rgb(159, 159, 159);\ - color: rgb(136, 136, 136);\ -}\ -\ -.ace-eclipse .ace_print_margin {\ - width: 1px;\ - background: #b1b4ba;\ -}\ -\ -.ace-eclipse .ace_fold {\ - background-color: rgb(60, 76, 114);\ -}\ -\ -.ace-eclipse .ace_text-layer {\ - cursor: text;\ -}\ -\ -.ace-eclipse .ace_cursor {\ - border-left: 2px solid black;\ -}\ -\ -.ace-eclipse .ace_line .ace_storage,\ -.ace-eclipse .ace_line .ace_keyword,\ -.ace-eclipse .ace_line .ace_variable {\ - color: rgb(127, 0, 85);\ -}\ -\ -.ace-eclipse .ace_line .ace_constant.ace_buildin {\ - color: rgb(88, 72, 246);\ -}\ -\ -.ace-eclipse .ace_line .ace_constant.ace_library {\ - color: rgb(6, 150, 14);\ -}\ -\ -.ace-eclipse .ace_line .ace_function {\ - color: rgb(60, 76, 114);\ -}\ -\ -.ace-eclipse .ace_line .ace_string {\ - color: rgb(42, 0, 255);\ -}\ -\ -.ace-eclipse .ace_line .ace_comment {\ - color: rgb(63, 127, 95);\ -}\ -\ -.ace-eclipse .ace_line .ace_comment.ace_doc {\ - color: rgb(63, 95, 191);\ -}\ -\ -.ace-eclipse .ace_line .ace_comment.ace_doc.ace_tag {\ - color: rgb(127, 159, 191);\ -}\ -\ -.ace-eclipse .ace_line .ace_constant.ace_numeric {\ -}\ -\ -.ace-eclipse .ace_line .ace_tag {\ - color: rgb(63, 127, 127);\ -}\ -\ -.ace-eclipse .ace_line .ace_type {\ - color: rgb(127, 0, 127);\ -}\ -\ -.ace-eclipse .ace_line .ace_xml_pe {\ - color: rgb(104, 104, 91);\ -}\ -\ -.ace-eclipse .ace_marker-layer .ace_selection {\ - background: rgb(181, 213, 255);\ -}\ -\ -.ace-eclipse .ace_marker-layer .ace_bracket {\ - margin: -1px 0 0 -1px;\ - border: 1px solid rgb(192, 192, 192);\ -}\ -\ -.ace-eclipse .ace_line .ace_meta.ace_tag {\ - color:rgb(63, 127, 127);\ -}\ -\ -.ace-eclipse .ace_entity.ace_other.ace_attribute-name {\ - color:rgb(127, 0, 127);\ -}\ -\ -.ace-eclipse .ace_marker-layer .ace_active_line {\ - background: rgb(232, 242, 254);\ -}"; - -exports.cssClass = "ace-eclipse"; - -var dom = require("../lib/dom"); -dom.importCssString(exports.cssText, exports.cssClass); -}); diff --git a/public/ace_editor/theme-eclipse.js b/public/ace_editor/theme-eclipse.js old mode 100644 new mode 100755 index e8d7f63..167ba6e --- a/public/ace_editor/theme-eclipse.js +++ b/public/ace_editor/theme-eclipse.js @@ -1 +1,125 @@ -define("ace/theme/eclipse",["require","exports","module","ace/lib/dom"],function(a,b,c){"use strict",b.isDark=!1,b.cssText=".ace-eclipse .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-eclipse .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-eclipse .ace_gutter { background: rgb(227, 227, 227); border-right: 1px solid rgb(159, 159, 159); color: rgb(136, 136, 136);}.ace-eclipse .ace_print_margin { width: 1px; background: #b1b4ba;}.ace-eclipse .ace_fold { background-color: rgb(60, 76, 114);}.ace-eclipse .ace_text-layer { cursor: text;}.ace-eclipse .ace_cursor { border-left: 2px solid black;}.ace-eclipse .ace_line .ace_storage,.ace-eclipse .ace_line .ace_keyword,.ace-eclipse .ace_line .ace_variable { color: rgb(127, 0, 85);}.ace-eclipse .ace_line .ace_constant.ace_buildin { color: rgb(88, 72, 246);}.ace-eclipse .ace_line .ace_constant.ace_library { color: rgb(6, 150, 14);}.ace-eclipse .ace_line .ace_function { color: rgb(60, 76, 114);}.ace-eclipse .ace_line .ace_string { color: rgb(42, 0, 255);}.ace-eclipse .ace_line .ace_comment { color: rgb(63, 127, 95);}.ace-eclipse .ace_line .ace_comment.ace_doc { color: rgb(63, 95, 191);}.ace-eclipse .ace_line .ace_comment.ace_doc.ace_tag { color: rgb(127, 159, 191);}.ace-eclipse .ace_line .ace_constant.ace_numeric {}.ace-eclipse .ace_line .ace_tag { color: rgb(63, 127, 127);}.ace-eclipse .ace_line .ace_type { color: rgb(127, 0, 127);}.ace-eclipse .ace_line .ace_xml_pe { color: rgb(104, 104, 91);}.ace-eclipse .ace_marker-layer .ace_selection { background: rgb(181, 213, 255);}.ace-eclipse .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid rgb(192, 192, 192);}.ace-eclipse .ace_line .ace_meta.ace_tag { color:rgb(63, 127, 127);}.ace-eclipse .ace_entity.ace_other.ace_attribute-name { color:rgb(127, 0, 127);}.ace-eclipse .ace_marker-layer .ace_active_line { background: rgb(232, 242, 254);}",b.cssClass="ace-eclipse";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)}) \ No newline at end of file +/* ***** BEGIN LICENSE BLOCK ***** + * Distributed under the BSD license: + * + * Copyright (c) 2010, Ajax.org B.V. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Ajax.org B.V. nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL AJAX.ORG B.V. BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * ***** END LICENSE BLOCK ***** */ + +ace.define('ace/theme/eclipse', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { + + +exports.isDark = false; +exports.cssText = ".ace-eclipse .ace_gutter {\ +background: #ebebeb;\ +border-right: 1px solid rgb(159, 159, 159);\ +color: rgb(136, 136, 136);\ +}\ +.ace-eclipse .ace_print-margin {\ +width: 1px;\ +background: #ebebeb;\ +}\ +.ace-eclipse {\ +background-color: #FFFFFF;\ +color: black;\ +}\ +.ace-eclipse .ace_fold {\ +background-color: rgb(60, 76, 114);\ +}\ +.ace-eclipse .ace_cursor {\ +color: black;\ +}\ +.ace-eclipse .ace_storage,\ +.ace-eclipse .ace_keyword,\ +.ace-eclipse .ace_variable {\ +color: rgb(127, 0, 85);\ +}\ +.ace-eclipse .ace_constant.ace_buildin {\ +color: rgb(88, 72, 246);\ +}\ +.ace-eclipse .ace_constant.ace_library {\ +color: rgb(6, 150, 14);\ +}\ +.ace-eclipse .ace_function {\ +color: rgb(60, 76, 114);\ +}\ +.ace-eclipse .ace_string {\ +color: rgb(42, 0, 255);\ +}\ +.ace-eclipse .ace_comment {\ +color: rgb(113, 150, 130);\ +}\ +.ace-eclipse .ace_comment.ace_doc {\ +color: rgb(63, 95, 191);\ +}\ +.ace-eclipse .ace_comment.ace_doc.ace_tag {\ +color: rgb(127, 159, 191);\ +}\ +.ace-eclipse .ace_constant.ace_numeric {\ +color: darkblue;\ +}\ +.ace-eclipse .ace_tag {\ +color: rgb(25, 118, 116);\ +}\ +.ace-eclipse .ace_type {\ +color: rgb(127, 0, 127);\ +}\ +.ace-eclipse .ace_xml-pe {\ +color: rgb(104, 104, 91);\ +}\ +.ace-eclipse .ace_marker-layer .ace_selection {\ +background: rgb(181, 213, 255);\ +}\ +.ace-eclipse .ace_marker-layer .ace_bracket {\ +margin: -1px 0 0 -1px;\ +border: 1px solid rgb(192, 192, 192);\ +}\ +.ace-eclipse .ace_meta.ace_tag {\ +color:rgb(25, 118, 116);\ +}\ +.ace-eclipse .ace_invisible {\ +color: #ddd;\ +}\ +.ace-eclipse .ace_entity.ace_other.ace_attribute-name {\ +color:rgb(127, 0, 127);\ +}\ +.ace-eclipse .ace_marker-layer .ace_step {\ +background: rgb(255, 255, 0);\ +}\ +.ace-eclipse .ace_marker-layer .ace_active-line {\ +background: rgb(232, 242, 254);\ +}\ +.ace-eclipse .ace_marker-layer .ace_selected-word {\ +border: 1px solid rgb(181, 213, 255);\ +}\ +.ace-eclipse .ace_indent-guide {\ +background: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAE0lEQVQImWP4////f4bLly//BwAmVgd1/w11/gAAAABJRU5ErkJggg==\") right repeat-y;\ +}"; + +exports.cssClass = "ace-eclipse"; + +var dom = require("../lib/dom"); +dom.importCssString(exports.cssText, exports.cssClass); +}); diff --git a/public/ace_editor/theme-github.js b/public/ace_editor/theme-github.js new file mode 100755 index 0000000..072c5e1 --- /dev/null +++ b/public/ace_editor/theme-github.js @@ -0,0 +1,131 @@ +/* ***** BEGIN LICENSE BLOCK ***** + * Distributed under the BSD license: + * + * Copyright (c) 2010, Ajax.org B.V. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Ajax.org B.V. nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL AJAX.ORG B.V. BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * ***** END LICENSE BLOCK ***** */ + +ace.define('ace/theme/github', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { + +exports.isDark = false; +exports.cssClass = "ace-github"; +exports.cssText = "/* CSS style content from github's default pygments highlighter template.\ +Cursor and selection styles from textmate.css. */\ +.ace-github .ace_gutter {\ +background: #e8e8e8;\ +color: #AAA;\ +}\ +.ace-github {\ +background: #fff;\ +color: #000;\ +}\ +.ace-github .ace_keyword {\ +font-weight: bold;\ +}\ +.ace-github .ace_string {\ +color: #D14;\ +}\ +.ace-github .ace_variable.ace_class {\ +color: teal;\ +}\ +.ace-github .ace_constant.ace_numeric {\ +color: #099;\ +}\ +.ace-github .ace_constant.ace_buildin {\ +color: #0086B3;\ +}\ +.ace-github .ace_support.ace_function {\ +color: #0086B3;\ +}\ +.ace-github .ace_comment {\ +color: #998;\ +font-style: italic;\ +}\ +.ace-github .ace_variable.ace_language {\ +color: #0086B3;\ +}\ +.ace-github .ace_paren {\ +font-weight: bold;\ +}\ +.ace-github .ace_boolean {\ +font-weight: bold;\ +}\ +.ace-github .ace_string.ace_regexp {\ +color: #009926;\ +font-weight: normal;\ +}\ +.ace-github .ace_variable.ace_instance {\ +color: teal;\ +}\ +.ace-github .ace_constant.ace_language {\ +font-weight: bold;\ +}\ +.ace-github .ace_cursor {\ +color: black;\ +}\ +.ace-github .ace_marker-layer .ace_active-line {\ +background: rgb(255, 255, 204);\ +}\ +.ace-github .ace_marker-layer .ace_selection {\ +background: rgb(181, 213, 255);\ +}\ +.ace-github.ace_multiselect .ace_selection.ace_start {\ +box-shadow: 0 0 3px 0px white;\ +border-radius: 2px;\ +}\ +/* bold keywords cause cursor issues for some fonts */\ +/* this disables bold style for editor and keeps for static highlighter */\ +.ace-github.ace_nobold .ace_line > span {\ +font-weight: normal !important;\ +}\ +.ace-github .ace_marker-layer .ace_step {\ +background: rgb(252, 255, 0);\ +}\ +.ace-github .ace_marker-layer .ace_stack {\ +background: rgb(164, 229, 101);\ +}\ +.ace-github .ace_marker-layer .ace_bracket {\ +margin: -1px 0 0 -1px;\ +border: 1px solid rgb(192, 192, 192);\ +}\ +.ace-github .ace_gutter-active-line {\ +background-color : rgba(0, 0, 0, 0.07);\ +}\ +.ace-github .ace_marker-layer .ace_selected-word {\ +background: rgb(250, 250, 255);\ +border: 1px solid rgb(200, 200, 250);\ +}\ +.ace-github .ace_print-margin {\ +width: 1px;\ +background: #e8e8e8;\ +}\ +.ace-github .ace_indent-guide {\ +background: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAE0lEQVQImWP4////f4bLly//BwAmVgd1/w11/gAAAABJRU5ErkJggg==\") right repeat-y;\ +}"; + + var dom = require("../lib/dom"); + dom.importCssString(exports.cssText, exports.cssClass); +}); diff --git a/public/ace_editor/theme-idle_fingers-noconflict.js b/public/ace_editor/theme-idle_fingers-noconflict.js deleted file mode 100644 index 1c038e7..0000000 --- a/public/ace_editor/theme-idle_fingers-noconflict.js +++ /dev/null @@ -1 +0,0 @@ -ace.define("ace/theme/idle_fingers",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!0,b.cssClass="ace-idle-fingers",b.cssText=".ace-idle-fingers .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-idle-fingers .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-idle-fingers .ace_gutter { background: #e8e8e8; color: #333;}.ace-idle-fingers .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-idle-fingers .ace_scroller { background-color: #323232;}.ace-idle-fingers .ace_text-layer { cursor: text; color: #FFFFFF;}.ace-idle-fingers .ace_cursor { border-left: 2px solid #91FF00;}.ace-idle-fingers .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #91FF00;}.ace-idle-fingers .ace_marker-layer .ace_selection { background: rgba(90, 100, 126, 0.88);}.ace-idle-fingers.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #323232; border-radius: 2px;}.ace-idle-fingers .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-idle-fingers .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid #404040;}.ace-idle-fingers .ace_marker-layer .ace_active_line { background: #353637;}.ace-idle-fingers .ace_marker-layer .ace_selected_word { border: 1px solid rgba(90, 100, 126, 0.88);}.ace-idle-fingers .ace_invisible { color: #404040;}.ace-idle-fingers .ace_keyword, .ace-idle-fingers .ace_meta { color:#CC7833;}.ace-idle-fingers .ace_constant, .ace-idle-fingers .ace_constant.ace_other { color:#6C99BB;}.ace-idle-fingers .ace_constant.ace_character, { color:#6C99BB;}.ace-idle-fingers .ace_constant.ace_character.ace_escape, { color:#6C99BB;}.ace-idle-fingers .ace_invalid { color:#FFFFFF;background-color:#FF0000;}.ace-idle-fingers .ace_support.ace_constant { color:#6C99BB;}.ace-idle-fingers .ace_fold { background-color: #CC7833; border-color: #FFFFFF;}.ace-idle-fingers .ace_support.ace_function { color:#B83426;}.ace-idle-fingers .ace_variable.ace_parameter { font-style:italic;}.ace-idle-fingers .ace_string { color:#A5C261;}.ace-idle-fingers .ace_string.ace_regexp { color:#CCCC33;}.ace-idle-fingers .ace_comment { font-style:italic;color:#BC9458;}.ace-idle-fingers .ace_meta.ace_tag { color:#FFE5BB;}.ace-idle-fingers .ace_entity.ace_name { color:#FFC66D;}.ace-idle-fingers .ace_markup.ace_underline { text-decoration:underline;}.ace-idle-fingers .ace_collab.ace_user1 { color:#323232;background-color:#FFF980;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)}) \ No newline at end of file diff --git a/public/ace_editor/theme-idle_fingers-uncompressed-noconflict.js b/public/ace_editor/theme-idle_fingers-uncompressed-noconflict.js deleted file mode 100644 index fd21581..0000000 --- a/public/ace_editor/theme-idle_fingers-uncompressed-noconflict.js +++ /dev/null @@ -1,179 +0,0 @@ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla Public License Version - * 1.1 (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * http://www.mozilla.org/MPL/ - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - * - * The Original Code is Ajax.org Code Editor (ACE). - * - * The Initial Developer of the Original Code is - * Ajax.org B.V. - * Portions created by the Initial Developer are Copyright (C) 2010 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Fabian Jakobs - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -ace.define('ace/theme/idle_fingers', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { - -exports.isDark = true; -exports.cssClass = "ace-idle-fingers"; -exports.cssText = "\ -.ace-idle-fingers .ace_editor {\ - border: 2px solid rgb(159, 159, 159);\ -}\ -\ -.ace-idle-fingers .ace_editor.ace_focus {\ - border: 2px solid #327fbd;\ -}\ -\ -.ace-idle-fingers .ace_gutter {\ - background: #e8e8e8;\ - color: #333;\ -}\ -\ -.ace-idle-fingers .ace_print_margin {\ - width: 1px;\ - background: #e8e8e8;\ -}\ -\ -.ace-idle-fingers .ace_scroller {\ - background-color: #323232;\ -}\ -\ -.ace-idle-fingers .ace_text-layer {\ - cursor: text;\ - color: #FFFFFF;\ -}\ -\ -.ace-idle-fingers .ace_cursor {\ - border-left: 2px solid #91FF00;\ -}\ -\ -.ace-idle-fingers .ace_cursor.ace_overwrite {\ - border-left: 0px;\ - border-bottom: 1px solid #91FF00;\ -}\ -\ -.ace-idle-fingers .ace_marker-layer .ace_selection {\ - background: rgba(90, 100, 126, 0.88);\ -}\ -\ -.ace-idle-fingers.multiselect .ace_selection.start {\ - box-shadow: 0 0 3px 0px #323232;\ - border-radius: 2px;\ -}\ -\ -.ace-idle-fingers .ace_marker-layer .ace_step {\ - background: rgb(198, 219, 174);\ -}\ -\ -.ace-idle-fingers .ace_marker-layer .ace_bracket {\ - margin: -1px 0 0 -1px;\ - border: 1px solid #404040;\ -}\ -\ -.ace-idle-fingers .ace_marker-layer .ace_active_line {\ - background: #353637;\ -}\ -\ -.ace-idle-fingers .ace_marker-layer .ace_selected_word {\ - border: 1px solid rgba(90, 100, 126, 0.88);\ -}\ -\ -.ace-idle-fingers .ace_invisible {\ - color: #404040;\ -}\ -\ -.ace-idle-fingers .ace_keyword, .ace-idle-fingers .ace_meta {\ - color:#CC7833;\ -}\ -\ -.ace-idle-fingers .ace_constant, .ace-idle-fingers .ace_constant.ace_other {\ - color:#6C99BB;\ -}\ -\ -.ace-idle-fingers .ace_constant.ace_character, {\ - color:#6C99BB;\ -}\ -\ -.ace-idle-fingers .ace_constant.ace_character.ace_escape, {\ - color:#6C99BB;\ -}\ -\ -.ace-idle-fingers .ace_invalid {\ - color:#FFFFFF;\ -background-color:#FF0000;\ -}\ -\ -.ace-idle-fingers .ace_support.ace_constant {\ - color:#6C99BB;\ -}\ -\ -.ace-idle-fingers .ace_fold {\ - background-color: #CC7833;\ - border-color: #FFFFFF;\ -}\ -\ -.ace-idle-fingers .ace_support.ace_function {\ - color:#B83426;\ -}\ -\ -.ace-idle-fingers .ace_variable.ace_parameter {\ - font-style:italic;\ -}\ -\ -.ace-idle-fingers .ace_string {\ - color:#A5C261;\ -}\ -\ -.ace-idle-fingers .ace_string.ace_regexp {\ - color:#CCCC33;\ -}\ -\ -.ace-idle-fingers .ace_comment {\ - font-style:italic;\ -color:#BC9458;\ -}\ -\ -.ace-idle-fingers .ace_meta.ace_tag {\ - color:#FFE5BB;\ -}\ -\ -.ace-idle-fingers .ace_entity.ace_name {\ - color:#FFC66D;\ -}\ -\ -.ace-idle-fingers .ace_markup.ace_underline {\ - text-decoration:underline;\ -}\ -\ -.ace-idle-fingers .ace_collab.ace_user1 {\ - color:#323232;\ -background-color:#FFF980;\ -}"; - - var dom = require("../lib/dom"); - dom.importCssString(exports.cssText, exports.cssClass); -}); diff --git a/public/ace_editor/theme-idle_fingers-uncompressed.js b/public/ace_editor/theme-idle_fingers-uncompressed.js deleted file mode 100644 index 34eee0d..0000000 --- a/public/ace_editor/theme-idle_fingers-uncompressed.js +++ /dev/null @@ -1,179 +0,0 @@ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla Public License Version - * 1.1 (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * http://www.mozilla.org/MPL/ - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - * - * The Original Code is Ajax.org Code Editor (ACE). - * - * The Initial Developer of the Original Code is - * Ajax.org B.V. - * Portions created by the Initial Developer are Copyright (C) 2010 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Fabian Jakobs - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -define('ace/theme/idle_fingers', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { - -exports.isDark = true; -exports.cssClass = "ace-idle-fingers"; -exports.cssText = "\ -.ace-idle-fingers .ace_editor {\ - border: 2px solid rgb(159, 159, 159);\ -}\ -\ -.ace-idle-fingers .ace_editor.ace_focus {\ - border: 2px solid #327fbd;\ -}\ -\ -.ace-idle-fingers .ace_gutter {\ - background: #e8e8e8;\ - color: #333;\ -}\ -\ -.ace-idle-fingers .ace_print_margin {\ - width: 1px;\ - background: #e8e8e8;\ -}\ -\ -.ace-idle-fingers .ace_scroller {\ - background-color: #323232;\ -}\ -\ -.ace-idle-fingers .ace_text-layer {\ - cursor: text;\ - color: #FFFFFF;\ -}\ -\ -.ace-idle-fingers .ace_cursor {\ - border-left: 2px solid #91FF00;\ -}\ -\ -.ace-idle-fingers .ace_cursor.ace_overwrite {\ - border-left: 0px;\ - border-bottom: 1px solid #91FF00;\ -}\ -\ -.ace-idle-fingers .ace_marker-layer .ace_selection {\ - background: rgba(90, 100, 126, 0.88);\ -}\ -\ -.ace-idle-fingers.multiselect .ace_selection.start {\ - box-shadow: 0 0 3px 0px #323232;\ - border-radius: 2px;\ -}\ -\ -.ace-idle-fingers .ace_marker-layer .ace_step {\ - background: rgb(198, 219, 174);\ -}\ -\ -.ace-idle-fingers .ace_marker-layer .ace_bracket {\ - margin: -1px 0 0 -1px;\ - border: 1px solid #404040;\ -}\ -\ -.ace-idle-fingers .ace_marker-layer .ace_active_line {\ - background: #353637;\ -}\ -\ -.ace-idle-fingers .ace_marker-layer .ace_selected_word {\ - border: 1px solid rgba(90, 100, 126, 0.88);\ -}\ -\ -.ace-idle-fingers .ace_invisible {\ - color: #404040;\ -}\ -\ -.ace-idle-fingers .ace_keyword, .ace-idle-fingers .ace_meta {\ - color:#CC7833;\ -}\ -\ -.ace-idle-fingers .ace_constant, .ace-idle-fingers .ace_constant.ace_other {\ - color:#6C99BB;\ -}\ -\ -.ace-idle-fingers .ace_constant.ace_character, {\ - color:#6C99BB;\ -}\ -\ -.ace-idle-fingers .ace_constant.ace_character.ace_escape, {\ - color:#6C99BB;\ -}\ -\ -.ace-idle-fingers .ace_invalid {\ - color:#FFFFFF;\ -background-color:#FF0000;\ -}\ -\ -.ace-idle-fingers .ace_support.ace_constant {\ - color:#6C99BB;\ -}\ -\ -.ace-idle-fingers .ace_fold {\ - background-color: #CC7833;\ - border-color: #FFFFFF;\ -}\ -\ -.ace-idle-fingers .ace_support.ace_function {\ - color:#B83426;\ -}\ -\ -.ace-idle-fingers .ace_variable.ace_parameter {\ - font-style:italic;\ -}\ -\ -.ace-idle-fingers .ace_string {\ - color:#A5C261;\ -}\ -\ -.ace-idle-fingers .ace_string.ace_regexp {\ - color:#CCCC33;\ -}\ -\ -.ace-idle-fingers .ace_comment {\ - font-style:italic;\ -color:#BC9458;\ -}\ -\ -.ace-idle-fingers .ace_meta.ace_tag {\ - color:#FFE5BB;\ -}\ -\ -.ace-idle-fingers .ace_entity.ace_name {\ - color:#FFC66D;\ -}\ -\ -.ace-idle-fingers .ace_markup.ace_underline {\ - text-decoration:underline;\ -}\ -\ -.ace-idle-fingers .ace_collab.ace_user1 {\ - color:#323232;\ -background-color:#FFF980;\ -}"; - - var dom = require("../lib/dom"); - dom.importCssString(exports.cssText, exports.cssClass); -}); diff --git a/public/ace_editor/theme-idle_fingers.js b/public/ace_editor/theme-idle_fingers.js old mode 100644 new mode 100755 index ec2c22e..0c02d31 --- a/public/ace_editor/theme-idle_fingers.js +++ b/public/ace_editor/theme-idle_fingers.js @@ -1 +1,127 @@ -define("ace/theme/idle_fingers",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!0,b.cssClass="ace-idle-fingers",b.cssText=".ace-idle-fingers .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-idle-fingers .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-idle-fingers .ace_gutter { background: #e8e8e8; color: #333;}.ace-idle-fingers .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-idle-fingers .ace_scroller { background-color: #323232;}.ace-idle-fingers .ace_text-layer { cursor: text; color: #FFFFFF;}.ace-idle-fingers .ace_cursor { border-left: 2px solid #91FF00;}.ace-idle-fingers .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #91FF00;}.ace-idle-fingers .ace_marker-layer .ace_selection { background: rgba(90, 100, 126, 0.88);}.ace-idle-fingers.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #323232; border-radius: 2px;}.ace-idle-fingers .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-idle-fingers .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid #404040;}.ace-idle-fingers .ace_marker-layer .ace_active_line { background: #353637;}.ace-idle-fingers .ace_marker-layer .ace_selected_word { border: 1px solid rgba(90, 100, 126, 0.88);}.ace-idle-fingers .ace_invisible { color: #404040;}.ace-idle-fingers .ace_keyword, .ace-idle-fingers .ace_meta { color:#CC7833;}.ace-idle-fingers .ace_constant, .ace-idle-fingers .ace_constant.ace_other { color:#6C99BB;}.ace-idle-fingers .ace_constant.ace_character, { color:#6C99BB;}.ace-idle-fingers .ace_constant.ace_character.ace_escape, { color:#6C99BB;}.ace-idle-fingers .ace_invalid { color:#FFFFFF;background-color:#FF0000;}.ace-idle-fingers .ace_support.ace_constant { color:#6C99BB;}.ace-idle-fingers .ace_fold { background-color: #CC7833; border-color: #FFFFFF;}.ace-idle-fingers .ace_support.ace_function { color:#B83426;}.ace-idle-fingers .ace_variable.ace_parameter { font-style:italic;}.ace-idle-fingers .ace_string { color:#A5C261;}.ace-idle-fingers .ace_string.ace_regexp { color:#CCCC33;}.ace-idle-fingers .ace_comment { font-style:italic;color:#BC9458;}.ace-idle-fingers .ace_meta.ace_tag { color:#FFE5BB;}.ace-idle-fingers .ace_entity.ace_name { color:#FFC66D;}.ace-idle-fingers .ace_markup.ace_underline { text-decoration:underline;}.ace-idle-fingers .ace_collab.ace_user1 { color:#323232;background-color:#FFF980;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)}) \ No newline at end of file +/* ***** BEGIN LICENSE BLOCK ***** + * Distributed under the BSD license: + * + * Copyright (c) 2010, Ajax.org B.V. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Ajax.org B.V. nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL AJAX.ORG B.V. BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * ***** END LICENSE BLOCK ***** */ + +ace.define('ace/theme/idle_fingers', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { + +exports.isDark = true; +exports.cssClass = "ace-idle-fingers"; +exports.cssText = ".ace-idle-fingers .ace_gutter {\ +background: #3b3b3b;\ +color: #fff\ +}\ +.ace-idle-fingers .ace_print-margin {\ +width: 1px;\ +background: #3b3b3b\ +}\ +.ace-idle-fingers {\ +background-color: #323232;\ +color: #FFFFFF\ +}\ +.ace-idle-fingers .ace_cursor {\ +color: #91FF00\ +}\ +.ace-idle-fingers .ace_marker-layer .ace_selection {\ +background: rgba(90, 100, 126, 0.88)\ +}\ +.ace-idle-fingers.ace_multiselect .ace_selection.ace_start {\ +box-shadow: 0 0 3px 0px #323232;\ +border-radius: 2px\ +}\ +.ace-idle-fingers .ace_marker-layer .ace_step {\ +background: rgb(102, 82, 0)\ +}\ +.ace-idle-fingers .ace_marker-layer .ace_bracket {\ +margin: -1px 0 0 -1px;\ +border: 1px solid #404040\ +}\ +.ace-idle-fingers .ace_marker-layer .ace_active-line {\ +background: #353637\ +}\ +.ace-idle-fingers .ace_gutter-active-line {\ +background-color: #353637\ +}\ +.ace-idle-fingers .ace_marker-layer .ace_selected-word {\ +border: 1px solid rgba(90, 100, 126, 0.88)\ +}\ +.ace-idle-fingers .ace_invisible {\ +color: #404040\ +}\ +.ace-idle-fingers .ace_keyword,\ +.ace-idle-fingers .ace_meta {\ +color: #CC7833\ +}\ +.ace-idle-fingers .ace_constant,\ +.ace-idle-fingers .ace_constant.ace_character,\ +.ace-idle-fingers .ace_constant.ace_character.ace_escape,\ +.ace-idle-fingers .ace_constant.ace_other,\ +.ace-idle-fingers .ace_support.ace_constant {\ +color: #6C99BB\ +}\ +.ace-idle-fingers .ace_invalid {\ +color: #FFFFFF;\ +background-color: #FF0000\ +}\ +.ace-idle-fingers .ace_fold {\ +background-color: #CC7833;\ +border-color: #FFFFFF\ +}\ +.ace-idle-fingers .ace_support.ace_function {\ +color: #B83426\ +}\ +.ace-idle-fingers .ace_variable.ace_parameter {\ +font-style: italic\ +}\ +.ace-idle-fingers .ace_string {\ +color: #A5C261\ +}\ +.ace-idle-fingers .ace_string.ace_regexp {\ +color: #CCCC33\ +}\ +.ace-idle-fingers .ace_comment {\ +font-style: italic;\ +color: #BC9458\ +}\ +.ace-idle-fingers .ace_meta.ace_tag {\ +color: #FFE5BB\ +}\ +.ace-idle-fingers .ace_entity.ace_name {\ +color: #FFC66D\ +}\ +.ace-idle-fingers .ace_collab.ace_user1 {\ +color: #323232;\ +background-color: #FFF980\ +}\ +.ace-idle-fingers .ace_indent-guide {\ +background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAEklEQVQImWMwMjLyZYiPj/8PAAreAwAI1+g0AAAAAElFTkSuQmCC) right repeat-y\ +}"; + +var dom = require("../lib/dom"); +dom.importCssString(exports.cssText, exports.cssClass); +}); diff --git a/public/ace_editor/theme-katzenmilch.js b/public/ace_editor/theme-katzenmilch.js new file mode 100755 index 0000000..25dca27 --- /dev/null +++ b/public/ace_editor/theme-katzenmilch.js @@ -0,0 +1,150 @@ +/* ***** BEGIN LICENSE BLOCK ***** + * Distributed under the BSD license: + * + * Copyright (c) 2010, Ajax.org B.V. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Ajax.org B.V. nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL AJAX.ORG B.V. BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * ***** END LICENSE BLOCK ***** */ + +ace.define('ace/theme/katzenmilch', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { + +exports.isDark = false; +exports.cssClass = "ace-katzenmilch"; +exports.cssText = ".ace-katzenmilch .ace_gutter,\ +/* THIS THEME WAS AUTOGENERATED BY Theme.tmpl.css (UUID: ) */\ +.ace-katzenmilch .ace_gutter {\ +background: #e8e8e8;\ +color: #333\ +}\ +.ace-katzenmilch .ace_print-margin {\ +width: 1px;\ +background: #e8e8e8\ +}\ +.ace-katzenmilch {\ +background-color: #f3f2f3;\ +color: rgba(15, 0, 9, 1.0)\ +}\ +.ace-katzenmilch .ace_cursor {\ +border-left: 2px solid #100011\ +}\ +.ace-katzenmilch .ace_overwrite-cursors .ace_cursor {\ +border-left: 0px;\ +border-bottom: 1px solid #100011\ +}\ +.ace-katzenmilch .ace_marker-layer .ace_selection {\ +background: rgba(100, 5, 208, 0.27)\ +}\ +.ace-katzenmilch.ace_multiselect .ace_selection.ace_start {\ +box-shadow: 0 0 3px 0px #f3f2f3;\ +border-radius: 2px\ +}\ +.ace-katzenmilch .ace_marker-layer .ace_step {\ +background: rgb(198, 219, 174)\ +}\ +.ace-katzenmilch .ace_marker-layer .ace_bracket {\ +margin: -1px 0 0 -1px;\ +border: 1px solid #000000\ +}\ +.ace-katzenmilch .ace_marker-layer .ace_active-line {\ +background: rgb(232, 242, 254)\ +}\ +.ace-katzenmilch .ace_gutter-active-line {\ +background-color: rgb(232, 242, 254)\ +}\ +.ace-katzenmilch .ace_marker-layer .ace_selected-word {\ +border: 1px solid rgba(100, 5, 208, 0.27)\ +}\ +.ace-katzenmilch .ace_fold {\ +background-color: rgba(2, 95, 73, 0.97);\ +border-color: rgba(15, 0, 9, 1.0)\ +}\ +.ace-katzenmilch .ace_keyword {\ +color: #674Aa8;\ +rbackground-color: rgba(163, 170, 216, 0.055)\ +}\ +.ace-katzenmilch .ace_constant.ace_language {\ +color: #7D7e52;\ +rbackground-color: rgba(189, 190, 130, 0.059)\ +}\ +.ace-katzenmilch .ace_constant.ace_numeric {\ +color: rgba(79, 130, 123, 0.93);\ +rbackground-color: rgba(119, 194, 187, 0.059)\ +}\ +.ace-katzenmilch .ace_constant.ace_character,\ +.ace-katzenmilch .ace_constant.ace_other {\ +color: rgba(2, 95, 105, 1.0);\ +rbackground-color: rgba(127, 34, 153, 0.063)\ +}\ +.ace-katzenmilch .ace_support.ace_function {\ +color: #9D7e62;\ +rbackground-color: rgba(189, 190, 130, 0.039)\ +}\ +.ace-katzenmilch .ace_support.ace_class {\ +color: rgba(239, 106, 167, 1.0);\ +rbackground-color: rgba(239, 106, 167, 0.063)\ +}\ +.ace-katzenmilch .ace_storage {\ +color: rgba(123, 92, 191, 1.0);\ +rbackground-color: rgba(139, 93, 223, 0.051)\ +}\ +.ace-katzenmilch .ace_invalid {\ +color: #DFDFD5;\ +rbackground-color: #CC1B27\ +}\ +.ace-katzenmilch .ace_string {\ +color: #5a5f9b;\ +rbackground-color: rgba(170, 175, 219, 0.035)\ +}\ +.ace-katzenmilch .ace_comment {\ +font-style: italic;\ +color: rgba(64, 79, 80, 0.67);\ +rbackground-color: rgba(95, 15, 255, 0.0078)\ +}\ +.ace-katzenmilch .ace_entity.ace_name.ace_function,\ +.ace-katzenmilch .ace_variable {\ +color: rgba(2, 95, 73, 0.97);\ +rbackground-color: rgba(34, 255, 73, 0.12)\ +}\ +.ace-katzenmilch .ace_variable.ace_language {\ +color: #316fcf;\ +rbackground-color: rgba(58, 175, 255, 0.039)\ +}\ +.ace-katzenmilch .ace_variable.ace_parameter {\ +font-style: italic;\ +color: rgba(51, 150, 159, 0.87);\ +rbackground-color: rgba(5, 214, 249, 0.043)\ +}\ +.ace-katzenmilch .ace_entity.ace_other.ace_attribute-name {\ +color: rgba(73, 70, 194, 0.93);\ +rbackground-color: rgba(73, 134, 194, 0.035)\ +}\ +.ace-katzenmilch .ace_entity.ace_name.ace_tag {\ +color: #3976a2;\ +rbackground-color: rgba(73, 166, 210, 0.039)\ +}"; + +var dom = require("../lib/dom"); +dom.importCssString(exports.cssText, exports.cssClass); +}); diff --git a/public/ace_editor/theme-kr.js b/public/ace_editor/theme-kr.js new file mode 100755 index 0000000..97c6cd0 --- /dev/null +++ b/public/ace_editor/theme-kr.js @@ -0,0 +1,135 @@ +/* ***** BEGIN LICENSE BLOCK ***** + * Distributed under the BSD license: + * + * Copyright (c) 2010, Ajax.org B.V. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Ajax.org B.V. nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL AJAX.ORG B.V. BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * ***** END LICENSE BLOCK ***** */ + +ace.define('ace/theme/kr_theme', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { + +exports.isDark = true; +exports.cssClass = "ace-kr-theme"; +exports.cssText = ".ace-kr-theme .ace_gutter {\ +background: #1c1917;\ +color: #FCFFE0\ +}\ +.ace-kr-theme .ace_print-margin {\ +width: 1px;\ +background: #1c1917\ +}\ +.ace-kr-theme {\ +background-color: #0B0A09;\ +color: #FCFFE0\ +}\ +.ace-kr-theme .ace_cursor {\ +color: #FF9900\ +}\ +.ace-kr-theme .ace_marker-layer .ace_selection {\ +background: rgba(170, 0, 255, 0.45)\ +}\ +.ace-kr-theme.ace_multiselect .ace_selection.ace_start {\ +box-shadow: 0 0 3px 0px #0B0A09;\ +border-radius: 2px\ +}\ +.ace-kr-theme .ace_marker-layer .ace_step {\ +background: rgb(102, 82, 0)\ +}\ +.ace-kr-theme .ace_marker-layer .ace_bracket {\ +margin: -1px 0 0 -1px;\ +border: 1px solid rgba(255, 177, 111, 0.32)\ +}\ +.ace-kr-theme .ace_marker-layer .ace_active-line {\ +background: #38403D\ +}\ +.ace-kr-theme .ace_gutter-active-line {\ +background-color : #38403D\ +}\ +.ace-kr-theme .ace_marker-layer .ace_selected-word {\ +border: 1px solid rgba(170, 0, 255, 0.45)\ +}\ +.ace-kr-theme .ace_invisible {\ +color: rgba(255, 177, 111, 0.32)\ +}\ +.ace-kr-theme .ace_keyword,\ +.ace-kr-theme .ace_meta {\ +color: #949C8B\ +}\ +.ace-kr-theme .ace_constant,\ +.ace-kr-theme .ace_constant.ace_character,\ +.ace-kr-theme .ace_constant.ace_character.ace_escape,\ +.ace-kr-theme .ace_constant.ace_other {\ +color: rgba(210, 117, 24, 0.76)\ +}\ +.ace-kr-theme .ace_invalid {\ +color: #F8F8F8;\ +background-color: #A41300\ +}\ +.ace-kr-theme .ace_support {\ +color: #9FC28A\ +}\ +.ace-kr-theme .ace_support.ace_constant {\ +color: #C27E66\ +}\ +.ace-kr-theme .ace_fold {\ +background-color: #949C8B;\ +border-color: #FCFFE0\ +}\ +.ace-kr-theme .ace_support.ace_function {\ +color: #85873A\ +}\ +.ace-kr-theme .ace_storage {\ +color: #FFEE80\ +}\ +.ace-kr-theme .ace_string {\ +color: rgba(164, 161, 181, 0.8)\ +}\ +.ace-kr-theme .ace_string.ace_regexp {\ +color: rgba(125, 255, 192, 0.65)\ +}\ +.ace-kr-theme .ace_comment {\ +font-style: italic;\ +color: #706D5B\ +}\ +.ace-kr-theme .ace_variable {\ +color: #D1A796\ +}\ +.ace-kr-theme .ace_list,\ +.ace-kr-theme .ace_markup.ace_list {\ +background-color: #0F0040\ +}\ +.ace-kr-theme .ace_variable.ace_language {\ +color: #FF80E1\ +}\ +.ace-kr-theme .ace_meta.ace_tag {\ +color: #BABD9C\ +}\ +.ace-kr-theme .ace_indent-guide {\ +background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAEklEQVQImWNgYGBgYFBXV/8PAAJoAXX4kT2EAAAAAElFTkSuQmCC) right repeat-y\ +}"; + +var dom = require("../lib/dom"); +dom.importCssString(exports.cssText, exports.cssClass); +}); diff --git a/public/ace_editor/theme-kr_theme-noconflict.js b/public/ace_editor/theme-kr_theme-noconflict.js deleted file mode 100644 index 301a437..0000000 --- a/public/ace_editor/theme-kr_theme-noconflict.js +++ /dev/null @@ -1 +0,0 @@ -ace.define("ace/theme/kr_theme",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!0,b.cssClass="ace-kr-theme",b.cssText=".ace-kr-theme .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-kr-theme .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-kr-theme .ace_gutter { background: #e8e8e8; color: #333;}.ace-kr-theme .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-kr-theme .ace_scroller { background-color: #0B0A09;}.ace-kr-theme .ace_text-layer { cursor: text; color: #FCFFE0;}.ace-kr-theme .ace_cursor { border-left: 2px solid #FF9900;}.ace-kr-theme .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #FF9900;}.ace-kr-theme .ace_marker-layer .ace_selection { background: rgba(170, 0, 255, 0.45);}.ace-kr-theme.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #0B0A09; border-radius: 2px;}.ace-kr-theme .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-kr-theme .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid rgba(255, 177, 111, 0.32);}.ace-kr-theme .ace_marker-layer .ace_active_line { background: #38403D;}.ace-kr-theme .ace_marker-layer .ace_selected_word { border: 1px solid rgba(170, 0, 255, 0.45);}.ace-kr-theme .ace_invisible { color: rgba(255, 177, 111, 0.32);}.ace-kr-theme .ace_keyword, .ace-kr-theme .ace_meta { color:#949C8B;}.ace-kr-theme .ace_constant, .ace-kr-theme .ace_constant.ace_other { color:rgba(210, 117, 24, 0.76);}.ace-kr-theme .ace_constant.ace_character, { color:rgba(210, 117, 24, 0.76);}.ace-kr-theme .ace_constant.ace_character.ace_escape, { color:rgba(210, 117, 24, 0.76);}.ace-kr-theme .ace_invalid { color:#F8F8F8;background-color:#A41300;}.ace-kr-theme .ace_support { color:#9FC28A;}.ace-kr-theme .ace_support.ace_constant { color:#C27E66;}.ace-kr-theme .ace_fold { background-color: #949C8B; border-color: #FCFFE0;}.ace-kr-theme .ace_support.ace_function { color:#85873A;}.ace-kr-theme .ace_storage { color:#FFEE80;}.ace-kr-theme .ace_string.ace_regexp { color:rgba(125, 255, 192, 0.65);}.ace-kr-theme .ace_comment { font-style:italic;color:#706D5B;}.ace-kr-theme .ace_variable { color:#D1A796;}.ace-kr-theme .ace_variable.ace_language { color:#FF80E1;}.ace-kr-theme .ace_meta.ace_tag { color:#BABD9C;}.ace-kr-theme .ace_markup.ace_underline { text-decoration:underline;}.ace-kr-theme .ace_markup.ace_list { background-color:#0F0040;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)}) \ No newline at end of file diff --git a/public/ace_editor/theme-kr_theme-uncompressed-noconflict.js b/public/ace_editor/theme-kr_theme-uncompressed-noconflict.js deleted file mode 100644 index 23cb884..0000000 --- a/public/ace_editor/theme-kr_theme-uncompressed-noconflict.js +++ /dev/null @@ -1,182 +0,0 @@ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla Public License Version - * 1.1 (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * http://www.mozilla.org/MPL/ - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - * - * The Original Code is Ajax.org Code Editor (ACE). - * - * The Initial Developer of the Original Code is - * Ajax.org B.V. - * Portions created by the Initial Developer are Copyright (C) 2010 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Fabian Jakobs - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -ace.define('ace/theme/kr_theme', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { - -exports.isDark = true; -exports.cssClass = "ace-kr-theme"; -exports.cssText = "\ -.ace-kr-theme .ace_editor {\ - border: 2px solid rgb(159, 159, 159);\ -}\ -\ -.ace-kr-theme .ace_editor.ace_focus {\ - border: 2px solid #327fbd;\ -}\ -\ -.ace-kr-theme .ace_gutter {\ - background: #e8e8e8;\ - color: #333;\ -}\ -\ -.ace-kr-theme .ace_print_margin {\ - width: 1px;\ - background: #e8e8e8;\ -}\ -\ -.ace-kr-theme .ace_scroller {\ - background-color: #0B0A09;\ -}\ -\ -.ace-kr-theme .ace_text-layer {\ - cursor: text;\ - color: #FCFFE0;\ -}\ -\ -.ace-kr-theme .ace_cursor {\ - border-left: 2px solid #FF9900;\ -}\ -\ -.ace-kr-theme .ace_cursor.ace_overwrite {\ - border-left: 0px;\ - border-bottom: 1px solid #FF9900;\ -}\ -\ -.ace-kr-theme .ace_marker-layer .ace_selection {\ - background: rgba(170, 0, 255, 0.45);\ -}\ -\ -.ace-kr-theme.multiselect .ace_selection.start {\ - box-shadow: 0 0 3px 0px #0B0A09;\ - border-radius: 2px;\ -}\ -\ -.ace-kr-theme .ace_marker-layer .ace_step {\ - background: rgb(198, 219, 174);\ -}\ -\ -.ace-kr-theme .ace_marker-layer .ace_bracket {\ - margin: -1px 0 0 -1px;\ - border: 1px solid rgba(255, 177, 111, 0.32);\ -}\ -\ -.ace-kr-theme .ace_marker-layer .ace_active_line {\ - background: #38403D;\ -}\ -\ -.ace-kr-theme .ace_marker-layer .ace_selected_word {\ - border: 1px solid rgba(170, 0, 255, 0.45);\ -}\ -\ -.ace-kr-theme .ace_invisible {\ - color: rgba(255, 177, 111, 0.32);\ -}\ -\ -.ace-kr-theme .ace_keyword, .ace-kr-theme .ace_meta {\ - color:#949C8B;\ -}\ -\ -.ace-kr-theme .ace_constant, .ace-kr-theme .ace_constant.ace_other {\ - color:rgba(210, 117, 24, 0.76);\ -}\ -\ -.ace-kr-theme .ace_constant.ace_character, {\ - color:rgba(210, 117, 24, 0.76);\ -}\ -\ -.ace-kr-theme .ace_constant.ace_character.ace_escape, {\ - color:rgba(210, 117, 24, 0.76);\ -}\ -\ -.ace-kr-theme .ace_invalid {\ - color:#F8F8F8;\ -background-color:#A41300;\ -}\ -\ -.ace-kr-theme .ace_support {\ - color:#9FC28A;\ -}\ -\ -.ace-kr-theme .ace_support.ace_constant {\ - color:#C27E66;\ -}\ -\ -.ace-kr-theme .ace_fold {\ - background-color: #949C8B;\ - border-color: #FCFFE0;\ -}\ -\ -.ace-kr-theme .ace_support.ace_function {\ - color:#85873A;\ -}\ -\ -.ace-kr-theme .ace_storage {\ - color:#FFEE80;\ -}\ -\ -.ace-kr-theme .ace_string.ace_regexp {\ - color:rgba(125, 255, 192, 0.65);\ -}\ -\ -.ace-kr-theme .ace_comment {\ - font-style:italic;\ -color:#706D5B;\ -}\ -\ -.ace-kr-theme .ace_variable {\ - color:#D1A796;\ -}\ -\ -.ace-kr-theme .ace_variable.ace_language {\ - color:#FF80E1;\ -}\ -\ -.ace-kr-theme .ace_meta.ace_tag {\ - color:#BABD9C;\ -}\ -\ -.ace-kr-theme .ace_markup.ace_underline {\ - text-decoration:underline;\ -}\ -\ -.ace-kr-theme .ace_markup.ace_list {\ - background-color:#0F0040;\ -}"; - - var dom = require("../lib/dom"); - dom.importCssString(exports.cssText, exports.cssClass); -}); diff --git a/public/ace_editor/theme-kr_theme-uncompressed.js b/public/ace_editor/theme-kr_theme-uncompressed.js deleted file mode 100644 index b30ff07..0000000 --- a/public/ace_editor/theme-kr_theme-uncompressed.js +++ /dev/null @@ -1,182 +0,0 @@ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla Public License Version - * 1.1 (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * http://www.mozilla.org/MPL/ - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - * - * The Original Code is Ajax.org Code Editor (ACE). - * - * The Initial Developer of the Original Code is - * Ajax.org B.V. - * Portions created by the Initial Developer are Copyright (C) 2010 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Fabian Jakobs - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -define('ace/theme/kr_theme', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { - -exports.isDark = true; -exports.cssClass = "ace-kr-theme"; -exports.cssText = "\ -.ace-kr-theme .ace_editor {\ - border: 2px solid rgb(159, 159, 159);\ -}\ -\ -.ace-kr-theme .ace_editor.ace_focus {\ - border: 2px solid #327fbd;\ -}\ -\ -.ace-kr-theme .ace_gutter {\ - background: #e8e8e8;\ - color: #333;\ -}\ -\ -.ace-kr-theme .ace_print_margin {\ - width: 1px;\ - background: #e8e8e8;\ -}\ -\ -.ace-kr-theme .ace_scroller {\ - background-color: #0B0A09;\ -}\ -\ -.ace-kr-theme .ace_text-layer {\ - cursor: text;\ - color: #FCFFE0;\ -}\ -\ -.ace-kr-theme .ace_cursor {\ - border-left: 2px solid #FF9900;\ -}\ -\ -.ace-kr-theme .ace_cursor.ace_overwrite {\ - border-left: 0px;\ - border-bottom: 1px solid #FF9900;\ -}\ -\ -.ace-kr-theme .ace_marker-layer .ace_selection {\ - background: rgba(170, 0, 255, 0.45);\ -}\ -\ -.ace-kr-theme.multiselect .ace_selection.start {\ - box-shadow: 0 0 3px 0px #0B0A09;\ - border-radius: 2px;\ -}\ -\ -.ace-kr-theme .ace_marker-layer .ace_step {\ - background: rgb(198, 219, 174);\ -}\ -\ -.ace-kr-theme .ace_marker-layer .ace_bracket {\ - margin: -1px 0 0 -1px;\ - border: 1px solid rgba(255, 177, 111, 0.32);\ -}\ -\ -.ace-kr-theme .ace_marker-layer .ace_active_line {\ - background: #38403D;\ -}\ -\ -.ace-kr-theme .ace_marker-layer .ace_selected_word {\ - border: 1px solid rgba(170, 0, 255, 0.45);\ -}\ -\ -.ace-kr-theme .ace_invisible {\ - color: rgba(255, 177, 111, 0.32);\ -}\ -\ -.ace-kr-theme .ace_keyword, .ace-kr-theme .ace_meta {\ - color:#949C8B;\ -}\ -\ -.ace-kr-theme .ace_constant, .ace-kr-theme .ace_constant.ace_other {\ - color:rgba(210, 117, 24, 0.76);\ -}\ -\ -.ace-kr-theme .ace_constant.ace_character, {\ - color:rgba(210, 117, 24, 0.76);\ -}\ -\ -.ace-kr-theme .ace_constant.ace_character.ace_escape, {\ - color:rgba(210, 117, 24, 0.76);\ -}\ -\ -.ace-kr-theme .ace_invalid {\ - color:#F8F8F8;\ -background-color:#A41300;\ -}\ -\ -.ace-kr-theme .ace_support {\ - color:#9FC28A;\ -}\ -\ -.ace-kr-theme .ace_support.ace_constant {\ - color:#C27E66;\ -}\ -\ -.ace-kr-theme .ace_fold {\ - background-color: #949C8B;\ - border-color: #FCFFE0;\ -}\ -\ -.ace-kr-theme .ace_support.ace_function {\ - color:#85873A;\ -}\ -\ -.ace-kr-theme .ace_storage {\ - color:#FFEE80;\ -}\ -\ -.ace-kr-theme .ace_string.ace_regexp {\ - color:rgba(125, 255, 192, 0.65);\ -}\ -\ -.ace-kr-theme .ace_comment {\ - font-style:italic;\ -color:#706D5B;\ -}\ -\ -.ace-kr-theme .ace_variable {\ - color:#D1A796;\ -}\ -\ -.ace-kr-theme .ace_variable.ace_language {\ - color:#FF80E1;\ -}\ -\ -.ace-kr-theme .ace_meta.ace_tag {\ - color:#BABD9C;\ -}\ -\ -.ace-kr-theme .ace_markup.ace_underline {\ - text-decoration:underline;\ -}\ -\ -.ace-kr-theme .ace_markup.ace_list {\ - background-color:#0F0040;\ -}"; - - var dom = require("../lib/dom"); - dom.importCssString(exports.cssText, exports.cssClass); -}); diff --git a/public/ace_editor/theme-kr_theme.js b/public/ace_editor/theme-kr_theme.js deleted file mode 100644 index 7d59932..0000000 --- a/public/ace_editor/theme-kr_theme.js +++ /dev/null @@ -1 +0,0 @@ -define("ace/theme/kr_theme",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!0,b.cssClass="ace-kr-theme",b.cssText=".ace-kr-theme .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-kr-theme .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-kr-theme .ace_gutter { background: #e8e8e8; color: #333;}.ace-kr-theme .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-kr-theme .ace_scroller { background-color: #0B0A09;}.ace-kr-theme .ace_text-layer { cursor: text; color: #FCFFE0;}.ace-kr-theme .ace_cursor { border-left: 2px solid #FF9900;}.ace-kr-theme .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #FF9900;}.ace-kr-theme .ace_marker-layer .ace_selection { background: rgba(170, 0, 255, 0.45);}.ace-kr-theme.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #0B0A09; border-radius: 2px;}.ace-kr-theme .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-kr-theme .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid rgba(255, 177, 111, 0.32);}.ace-kr-theme .ace_marker-layer .ace_active_line { background: #38403D;}.ace-kr-theme .ace_marker-layer .ace_selected_word { border: 1px solid rgba(170, 0, 255, 0.45);}.ace-kr-theme .ace_invisible { color: rgba(255, 177, 111, 0.32);}.ace-kr-theme .ace_keyword, .ace-kr-theme .ace_meta { color:#949C8B;}.ace-kr-theme .ace_constant, .ace-kr-theme .ace_constant.ace_other { color:rgba(210, 117, 24, 0.76);}.ace-kr-theme .ace_constant.ace_character, { color:rgba(210, 117, 24, 0.76);}.ace-kr-theme .ace_constant.ace_character.ace_escape, { color:rgba(210, 117, 24, 0.76);}.ace-kr-theme .ace_invalid { color:#F8F8F8;background-color:#A41300;}.ace-kr-theme .ace_support { color:#9FC28A;}.ace-kr-theme .ace_support.ace_constant { color:#C27E66;}.ace-kr-theme .ace_fold { background-color: #949C8B; border-color: #FCFFE0;}.ace-kr-theme .ace_support.ace_function { color:#85873A;}.ace-kr-theme .ace_storage { color:#FFEE80;}.ace-kr-theme .ace_string.ace_regexp { color:rgba(125, 255, 192, 0.65);}.ace-kr-theme .ace_comment { font-style:italic;color:#706D5B;}.ace-kr-theme .ace_variable { color:#D1A796;}.ace-kr-theme .ace_variable.ace_language { color:#FF80E1;}.ace-kr-theme .ace_meta.ace_tag { color:#BABD9C;}.ace-kr-theme .ace_markup.ace_underline { text-decoration:underline;}.ace-kr-theme .ace_markup.ace_list { background-color:#0F0040;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)}) \ No newline at end of file diff --git a/public/ace_editor/theme-kuroir.js b/public/ace_editor/theme-kuroir.js new file mode 100755 index 0000000..41dbdb8 --- /dev/null +++ b/public/ace_editor/theme-kuroir.js @@ -0,0 +1,89 @@ +/* ***** BEGIN LICENSE BLOCK ***** + * Distributed under the BSD license: + * + * Copyright (c) 2010, Ajax.org B.V. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Ajax.org B.V. nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL AJAX.ORG B.V. BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * ***** END LICENSE BLOCK ***** */ + +ace.define('ace/theme/kuroir', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { + +exports.isDark = false; +exports.cssClass = "ace-kuroir"; +exports.cssText = "/* THIS THEME WAS AUTOGENERATED BY Theme.tmpl.css (UUID: 467560D0-6ACE-4409-82FD-4791420837AC) */\ +.ace-kuroir .ace_gutter {\ +background: #e8e8e8;\ +color: #333;\ +}\ +.ace-kuroir .ace_print-margin {\ +width: 1px;\ +background: #e8e8e8;\ +}\ +.ace-kuroir {\ +background-color: #E8E9E8;\ +color: #363636;\ +}\ +.ace-kuroir .ace_cursor {\ +color: #202020;\ +}\ +.ace-kuroir .ace_marker-layer .ace_selection {\ +background: rgba(245, 170, 0, 0.57);\ +}\ +.ace-kuroir.ace_multiselect .ace_selection.ace_start {\ +box-shadow: 0 0 3px 0px #E8E9E8;\ +border-radius: 2px;\ +}\ +.ace-kuroir .ace_marker-layer .ace_step {\ +background: rgb(198, 219, 174);\ +}\ +.ace-kuroir .ace_marker-layer .ace_bracket {\ +margin: -1px 0 0 -1px;\ +border: 1px solid rgba(0, 0, 0, 0.29);\ +}\ +.ace-kuroir .ace_marker-layer .ace_active-line {\ +background: rgba(203, 220, 47, 0.22);\ +}\ +.ace-kuroir .ace_gutter-active-line {\ +background-color: rgba(203, 220, 47, 0.22);\ +}\ +.ace-kuroir .ace_marker-layer .ace_selected-word {\ +border: 1px solid rgba(245, 170, 0, 0.57);\ +}\ +.ace-kuroir .ace_fold {\ +border-color: #363636;\ +}\ +.ace-kuroir .ace_constant{color:#CD6839;}.ace-kuroir .ace_constant.ace_numeric{color:#9A5925;}.ace-kuroir .ace_support{color:#104E8B;}.ace-kuroir .ace_support.ace_function{color:#005273;}.ace-kuroir .ace_support.ace_constant{color:#CF6A4C;}.ace-kuroir .ace_storage{color:#A52A2A;}.ace-kuroir .ace_invalid.ace_illegal{color:#FD1224;\ +background-color:rgba(255, 6, 0, 0.15);}.ace-kuroir .ace_invalid.ace_deprecated{text-decoration:underline;\ +font-style:italic;\ +color:#FD1732;\ +background-color:#E8E9E8;}.ace-kuroir .ace_string{color:#639300;}.ace-kuroir .ace_string.ace_regexp{color:#417E00;\ +background-color:#C9D4BE;}.ace-kuroir .ace_comment{color:rgba(148, 148, 148, 0.91);\ +background-color:rgba(220, 220, 220, 0.56);}.ace-kuroir .ace_variable{color:#009ACD;}.ace-kuroir .ace_meta.ace_tag{color:#005273;}.ace-kuroir .ace_markup.ace_heading{color:#B8012D;\ +background-color:rgba(191, 97, 51, 0.051);}.ace-kuroir .ace_markup.ace_list{color:#8F5B26;}\ +"; + +var dom = require("../lib/dom"); +dom.importCssString(exports.cssText, exports.cssClass); +}); diff --git a/public/ace_editor/theme-merbivore-noconflict.js b/public/ace_editor/theme-merbivore-noconflict.js deleted file mode 100644 index 51dd538..0000000 --- a/public/ace_editor/theme-merbivore-noconflict.js +++ /dev/null @@ -1 +0,0 @@ -ace.define("ace/theme/merbivore",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!0,b.cssClass="ace-merbivore",b.cssText=".ace-merbivore .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-merbivore .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-merbivore .ace_gutter { background: #e8e8e8; color: #333;}.ace-merbivore .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-merbivore .ace_scroller { background-color: #161616;}.ace-merbivore .ace_text-layer { cursor: text; color: #E6E1DC;}.ace-merbivore .ace_cursor { border-left: 2px solid #FFFFFF;}.ace-merbivore .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #FFFFFF;}.ace-merbivore .ace_marker-layer .ace_selection { background: #454545;}.ace-merbivore.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #161616; border-radius: 2px;}.ace-merbivore .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-merbivore .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid #404040;}.ace-merbivore .ace_marker-layer .ace_active_line { background: #333435;}.ace-merbivore .ace_marker-layer .ace_selected_word { border: 1px solid #454545;}.ace-merbivore .ace_invisible { color: #404040;}.ace-merbivore .ace_keyword, .ace-merbivore .ace_meta { color:#FC6F09;}.ace-merbivore .ace_constant, .ace-merbivore .ace_constant.ace_other { color:#1EDAFB;}.ace-merbivore .ace_constant.ace_character, { color:#1EDAFB;}.ace-merbivore .ace_constant.ace_character.ace_escape, { color:#1EDAFB;}.ace-merbivore .ace_constant.ace_language { color:#FDC251;}.ace-merbivore .ace_constant.ace_library { color:#8DFF0A;}.ace-merbivore .ace_constant.ace_numeric { color:#58C554;}.ace-merbivore .ace_invalid { color:#FFFFFF;background-color:#990000;}.ace-merbivore .ace_support.ace_constant { color:#8DFF0A;}.ace-merbivore .ace_fold { background-color: #FC6F09; border-color: #E6E1DC;}.ace-merbivore .ace_support.ace_function { color:#FC6F09;}.ace-merbivore .ace_storage { color:#FC6F09;}.ace-merbivore .ace_string { color:#8DFF0A;}.ace-merbivore .ace_comment { font-style:italic;color:#AD2EA4;}.ace-merbivore .ace_meta.ace_tag { color:#FC6F09;}.ace-merbivore .ace_entity.ace_other.ace_attribute-name { color:#FFFF89;}.ace-merbivore .ace_markup.ace_underline { text-decoration:underline;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)}) \ No newline at end of file diff --git a/public/ace_editor/theme-merbivore-uncompressed-noconflict.js b/public/ace_editor/theme-merbivore-uncompressed-noconflict.js deleted file mode 100644 index 43eaad4..0000000 --- a/public/ace_editor/theme-merbivore-uncompressed-noconflict.js +++ /dev/null @@ -1,182 +0,0 @@ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla Public License Version - * 1.1 (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * http://www.mozilla.org/MPL/ - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - * - * The Original Code is Ajax.org Code Editor (ACE). - * - * The Initial Developer of the Original Code is - * Ajax.org B.V. - * Portions created by the Initial Developer are Copyright (C) 2010 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Fabian Jakobs - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -ace.define('ace/theme/merbivore', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { - -exports.isDark = true; -exports.cssClass = "ace-merbivore"; -exports.cssText = "\ -.ace-merbivore .ace_editor {\ - border: 2px solid rgb(159, 159, 159);\ -}\ -\ -.ace-merbivore .ace_editor.ace_focus {\ - border: 2px solid #327fbd;\ -}\ -\ -.ace-merbivore .ace_gutter {\ - background: #e8e8e8;\ - color: #333;\ -}\ -\ -.ace-merbivore .ace_print_margin {\ - width: 1px;\ - background: #e8e8e8;\ -}\ -\ -.ace-merbivore .ace_scroller {\ - background-color: #161616;\ -}\ -\ -.ace-merbivore .ace_text-layer {\ - cursor: text;\ - color: #E6E1DC;\ -}\ -\ -.ace-merbivore .ace_cursor {\ - border-left: 2px solid #FFFFFF;\ -}\ -\ -.ace-merbivore .ace_cursor.ace_overwrite {\ - border-left: 0px;\ - border-bottom: 1px solid #FFFFFF;\ -}\ -\ -.ace-merbivore .ace_marker-layer .ace_selection {\ - background: #454545;\ -}\ -\ -.ace-merbivore.multiselect .ace_selection.start {\ - box-shadow: 0 0 3px 0px #161616;\ - border-radius: 2px;\ -}\ -\ -.ace-merbivore .ace_marker-layer .ace_step {\ - background: rgb(198, 219, 174);\ -}\ -\ -.ace-merbivore .ace_marker-layer .ace_bracket {\ - margin: -1px 0 0 -1px;\ - border: 1px solid #404040;\ -}\ -\ -.ace-merbivore .ace_marker-layer .ace_active_line {\ - background: #333435;\ -}\ -\ -.ace-merbivore .ace_marker-layer .ace_selected_word {\ - border: 1px solid #454545;\ -}\ -\ -.ace-merbivore .ace_invisible {\ - color: #404040;\ -}\ -\ -.ace-merbivore .ace_keyword, .ace-merbivore .ace_meta {\ - color:#FC6F09;\ -}\ -\ -.ace-merbivore .ace_constant, .ace-merbivore .ace_constant.ace_other {\ - color:#1EDAFB;\ -}\ -\ -.ace-merbivore .ace_constant.ace_character, {\ - color:#1EDAFB;\ -}\ -\ -.ace-merbivore .ace_constant.ace_character.ace_escape, {\ - color:#1EDAFB;\ -}\ -\ -.ace-merbivore .ace_constant.ace_language {\ - color:#FDC251;\ -}\ -\ -.ace-merbivore .ace_constant.ace_library {\ - color:#8DFF0A;\ -}\ -\ -.ace-merbivore .ace_constant.ace_numeric {\ - color:#58C554;\ -}\ -\ -.ace-merbivore .ace_invalid {\ - color:#FFFFFF;\ -background-color:#990000;\ -}\ -\ -.ace-merbivore .ace_support.ace_constant {\ - color:#8DFF0A;\ -}\ -\ -.ace-merbivore .ace_fold {\ - background-color: #FC6F09;\ - border-color: #E6E1DC;\ -}\ -\ -.ace-merbivore .ace_support.ace_function {\ - color:#FC6F09;\ -}\ -\ -.ace-merbivore .ace_storage {\ - color:#FC6F09;\ -}\ -\ -.ace-merbivore .ace_string {\ - color:#8DFF0A;\ -}\ -\ -.ace-merbivore .ace_comment {\ - font-style:italic;\ -color:#AD2EA4;\ -}\ -\ -.ace-merbivore .ace_meta.ace_tag {\ - color:#FC6F09;\ -}\ -\ -.ace-merbivore .ace_entity.ace_other.ace_attribute-name {\ - color:#FFFF89;\ -}\ -\ -.ace-merbivore .ace_markup.ace_underline {\ - text-decoration:underline;\ -}"; - - var dom = require("../lib/dom"); - dom.importCssString(exports.cssText, exports.cssClass); -}); diff --git a/public/ace_editor/theme-merbivore-uncompressed.js b/public/ace_editor/theme-merbivore-uncompressed.js deleted file mode 100644 index 31039da..0000000 --- a/public/ace_editor/theme-merbivore-uncompressed.js +++ /dev/null @@ -1,182 +0,0 @@ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla Public License Version - * 1.1 (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * http://www.mozilla.org/MPL/ - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - * - * The Original Code is Ajax.org Code Editor (ACE). - * - * The Initial Developer of the Original Code is - * Ajax.org B.V. - * Portions created by the Initial Developer are Copyright (C) 2010 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Fabian Jakobs - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -define('ace/theme/merbivore', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { - -exports.isDark = true; -exports.cssClass = "ace-merbivore"; -exports.cssText = "\ -.ace-merbivore .ace_editor {\ - border: 2px solid rgb(159, 159, 159);\ -}\ -\ -.ace-merbivore .ace_editor.ace_focus {\ - border: 2px solid #327fbd;\ -}\ -\ -.ace-merbivore .ace_gutter {\ - background: #e8e8e8;\ - color: #333;\ -}\ -\ -.ace-merbivore .ace_print_margin {\ - width: 1px;\ - background: #e8e8e8;\ -}\ -\ -.ace-merbivore .ace_scroller {\ - background-color: #161616;\ -}\ -\ -.ace-merbivore .ace_text-layer {\ - cursor: text;\ - color: #E6E1DC;\ -}\ -\ -.ace-merbivore .ace_cursor {\ - border-left: 2px solid #FFFFFF;\ -}\ -\ -.ace-merbivore .ace_cursor.ace_overwrite {\ - border-left: 0px;\ - border-bottom: 1px solid #FFFFFF;\ -}\ -\ -.ace-merbivore .ace_marker-layer .ace_selection {\ - background: #454545;\ -}\ -\ -.ace-merbivore.multiselect .ace_selection.start {\ - box-shadow: 0 0 3px 0px #161616;\ - border-radius: 2px;\ -}\ -\ -.ace-merbivore .ace_marker-layer .ace_step {\ - background: rgb(198, 219, 174);\ -}\ -\ -.ace-merbivore .ace_marker-layer .ace_bracket {\ - margin: -1px 0 0 -1px;\ - border: 1px solid #404040;\ -}\ -\ -.ace-merbivore .ace_marker-layer .ace_active_line {\ - background: #333435;\ -}\ -\ -.ace-merbivore .ace_marker-layer .ace_selected_word {\ - border: 1px solid #454545;\ -}\ -\ -.ace-merbivore .ace_invisible {\ - color: #404040;\ -}\ -\ -.ace-merbivore .ace_keyword, .ace-merbivore .ace_meta {\ - color:#FC6F09;\ -}\ -\ -.ace-merbivore .ace_constant, .ace-merbivore .ace_constant.ace_other {\ - color:#1EDAFB;\ -}\ -\ -.ace-merbivore .ace_constant.ace_character, {\ - color:#1EDAFB;\ -}\ -\ -.ace-merbivore .ace_constant.ace_character.ace_escape, {\ - color:#1EDAFB;\ -}\ -\ -.ace-merbivore .ace_constant.ace_language {\ - color:#FDC251;\ -}\ -\ -.ace-merbivore .ace_constant.ace_library {\ - color:#8DFF0A;\ -}\ -\ -.ace-merbivore .ace_constant.ace_numeric {\ - color:#58C554;\ -}\ -\ -.ace-merbivore .ace_invalid {\ - color:#FFFFFF;\ -background-color:#990000;\ -}\ -\ -.ace-merbivore .ace_support.ace_constant {\ - color:#8DFF0A;\ -}\ -\ -.ace-merbivore .ace_fold {\ - background-color: #FC6F09;\ - border-color: #E6E1DC;\ -}\ -\ -.ace-merbivore .ace_support.ace_function {\ - color:#FC6F09;\ -}\ -\ -.ace-merbivore .ace_storage {\ - color:#FC6F09;\ -}\ -\ -.ace-merbivore .ace_string {\ - color:#8DFF0A;\ -}\ -\ -.ace-merbivore .ace_comment {\ - font-style:italic;\ -color:#AD2EA4;\ -}\ -\ -.ace-merbivore .ace_meta.ace_tag {\ - color:#FC6F09;\ -}\ -\ -.ace-merbivore .ace_entity.ace_other.ace_attribute-name {\ - color:#FFFF89;\ -}\ -\ -.ace-merbivore .ace_markup.ace_underline {\ - text-decoration:underline;\ -}"; - - var dom = require("../lib/dom"); - dom.importCssString(exports.cssText, exports.cssClass); -}); diff --git a/public/ace_editor/theme-merbivore.js b/public/ace_editor/theme-merbivore.js old mode 100644 new mode 100755 index 3281016..21b95b6 --- a/public/ace_editor/theme-merbivore.js +++ b/public/ace_editor/theme-merbivore.js @@ -1 +1,126 @@ -define("ace/theme/merbivore",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!0,b.cssClass="ace-merbivore",b.cssText=".ace-merbivore .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-merbivore .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-merbivore .ace_gutter { background: #e8e8e8; color: #333;}.ace-merbivore .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-merbivore .ace_scroller { background-color: #161616;}.ace-merbivore .ace_text-layer { cursor: text; color: #E6E1DC;}.ace-merbivore .ace_cursor { border-left: 2px solid #FFFFFF;}.ace-merbivore .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #FFFFFF;}.ace-merbivore .ace_marker-layer .ace_selection { background: #454545;}.ace-merbivore.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #161616; border-radius: 2px;}.ace-merbivore .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-merbivore .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid #404040;}.ace-merbivore .ace_marker-layer .ace_active_line { background: #333435;}.ace-merbivore .ace_marker-layer .ace_selected_word { border: 1px solid #454545;}.ace-merbivore .ace_invisible { color: #404040;}.ace-merbivore .ace_keyword, .ace-merbivore .ace_meta { color:#FC6F09;}.ace-merbivore .ace_constant, .ace-merbivore .ace_constant.ace_other { color:#1EDAFB;}.ace-merbivore .ace_constant.ace_character, { color:#1EDAFB;}.ace-merbivore .ace_constant.ace_character.ace_escape, { color:#1EDAFB;}.ace-merbivore .ace_constant.ace_language { color:#FDC251;}.ace-merbivore .ace_constant.ace_library { color:#8DFF0A;}.ace-merbivore .ace_constant.ace_numeric { color:#58C554;}.ace-merbivore .ace_invalid { color:#FFFFFF;background-color:#990000;}.ace-merbivore .ace_support.ace_constant { color:#8DFF0A;}.ace-merbivore .ace_fold { background-color: #FC6F09; border-color: #E6E1DC;}.ace-merbivore .ace_support.ace_function { color:#FC6F09;}.ace-merbivore .ace_storage { color:#FC6F09;}.ace-merbivore .ace_string { color:#8DFF0A;}.ace-merbivore .ace_comment { font-style:italic;color:#AD2EA4;}.ace-merbivore .ace_meta.ace_tag { color:#FC6F09;}.ace-merbivore .ace_entity.ace_other.ace_attribute-name { color:#FFFF89;}.ace-merbivore .ace_markup.ace_underline { text-decoration:underline;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)}) \ No newline at end of file +/* ***** BEGIN LICENSE BLOCK ***** + * Distributed under the BSD license: + * + * Copyright (c) 2010, Ajax.org B.V. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Ajax.org B.V. nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL AJAX.ORG B.V. BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * ***** END LICENSE BLOCK ***** */ + +ace.define('ace/theme/merbivore', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { + +exports.isDark = true; +exports.cssClass = "ace-merbivore"; +exports.cssText = ".ace-merbivore .ace_gutter {\ +background: #202020;\ +color: #E6E1DC\ +}\ +.ace-merbivore .ace_print-margin {\ +width: 1px;\ +background: #555651\ +}\ +.ace-merbivore {\ +background-color: #161616;\ +color: #E6E1DC\ +}\ +.ace-merbivore .ace_cursor {\ +color: #FFFFFF\ +}\ +.ace-merbivore .ace_marker-layer .ace_selection {\ +background: #454545\ +}\ +.ace-merbivore.ace_multiselect .ace_selection.ace_start {\ +box-shadow: 0 0 3px 0px #161616;\ +border-radius: 2px\ +}\ +.ace-merbivore .ace_marker-layer .ace_step {\ +background: rgb(102, 82, 0)\ +}\ +.ace-merbivore .ace_marker-layer .ace_bracket {\ +margin: -1px 0 0 -1px;\ +border: 1px solid #404040\ +}\ +.ace-merbivore .ace_marker-layer .ace_active-line {\ +background: #333435\ +}\ +.ace-merbivore .ace_gutter-active-line {\ +background-color: #333435\ +}\ +.ace-merbivore .ace_marker-layer .ace_selected-word {\ +border: 1px solid #454545\ +}\ +.ace-merbivore .ace_invisible {\ +color: #404040\ +}\ +.ace-merbivore .ace_entity.ace_name.ace_tag,\ +.ace-merbivore .ace_keyword,\ +.ace-merbivore .ace_meta,\ +.ace-merbivore .ace_meta.ace_tag,\ +.ace-merbivore .ace_storage,\ +.ace-merbivore .ace_support.ace_function {\ +color: #FC6F09\ +}\ +.ace-merbivore .ace_constant,\ +.ace-merbivore .ace_constant.ace_character,\ +.ace-merbivore .ace_constant.ace_character.ace_escape,\ +.ace-merbivore .ace_constant.ace_other,\ +.ace-merbivore .ace_support.ace_type {\ +color: #1EDAFB\ +}\ +.ace-merbivore .ace_constant.ace_character.ace_escape {\ +color: #519F50\ +}\ +.ace-merbivore .ace_constant.ace_language {\ +color: #FDC251\ +}\ +.ace-merbivore .ace_constant.ace_library,\ +.ace-merbivore .ace_string,\ +.ace-merbivore .ace_support.ace_constant {\ +color: #8DFF0A\ +}\ +.ace-merbivore .ace_constant.ace_numeric {\ +color: #58C554\ +}\ +.ace-merbivore .ace_invalid {\ +color: #FFFFFF;\ +background-color: #990000\ +}\ +.ace-merbivore .ace_fold {\ +background-color: #FC6F09;\ +border-color: #E6E1DC\ +}\ +.ace-merbivore .ace_comment {\ +font-style: italic;\ +color: #AD2EA4\ +}\ +.ace-merbivore .ace_entity.ace_other.ace_attribute-name {\ +color: #FFFF89\ +}\ +.ace-merbivore .ace_indent-guide {\ +background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAEklEQVQImWMQFxf3ZXB1df0PAAdsAmERTkEHAAAAAElFTkSuQmCC) right repeat-y\ +}"; + +var dom = require("../lib/dom"); +dom.importCssString(exports.cssText, exports.cssClass); +}); diff --git a/public/ace_editor/theme-merbivore_soft-noconflict.js b/public/ace_editor/theme-merbivore_soft-noconflict.js deleted file mode 100644 index 8348858..0000000 --- a/public/ace_editor/theme-merbivore_soft-noconflict.js +++ /dev/null @@ -1 +0,0 @@ -ace.define("ace/theme/merbivore_soft",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!0,b.cssClass="ace-merbivore-soft",b.cssText=".ace-merbivore-soft .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-merbivore-soft .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-merbivore-soft .ace_gutter { background: #e8e8e8; color: #333;}.ace-merbivore-soft .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-merbivore-soft .ace_scroller { background-color: #1C1C1C;}.ace-merbivore-soft .ace_text-layer { cursor: text; color: #E6E1DC;}.ace-merbivore-soft .ace_cursor { border-left: 2px solid #FFFFFF;}.ace-merbivore-soft .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #FFFFFF;}.ace-merbivore-soft .ace_marker-layer .ace_selection { background: #494949;}.ace-merbivore-soft.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #1C1C1C; border-radius: 2px;}.ace-merbivore-soft .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-merbivore-soft .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid #404040;}.ace-merbivore-soft .ace_marker-layer .ace_active_line { background: #333435;}.ace-merbivore-soft .ace_marker-layer .ace_selected_word { border: 1px solid #494949;}.ace-merbivore-soft .ace_invisible { color: #404040;}.ace-merbivore-soft .ace_keyword, .ace-merbivore-soft .ace_meta { color:#FC803A;}.ace-merbivore-soft .ace_constant, .ace-merbivore-soft .ace_constant.ace_other { color:#68C1D8;}.ace-merbivore-soft .ace_constant.ace_character, { color:#68C1D8;}.ace-merbivore-soft .ace_constant.ace_character.ace_escape, { color:#68C1D8;}.ace-merbivore-soft .ace_constant.ace_language { color:#E1C582;}.ace-merbivore-soft .ace_constant.ace_library { color:#8EC65F;}.ace-merbivore-soft .ace_constant.ace_numeric { color:#7FC578;}.ace-merbivore-soft .ace_invalid { color:#FFFFFF;background-color:#FE3838;}.ace-merbivore-soft .ace_invalid.ace_deprecated { color:#FFFFFF;background-color:#FE3838;}.ace-merbivore-soft .ace_support.ace_constant { color:#8EC65F;}.ace-merbivore-soft .ace_fold { background-color: #FC803A; border-color: #E6E1DC;}.ace-merbivore-soft .ace_storage { color:#FC803A;}.ace-merbivore-soft .ace_string { color:#8EC65F;}.ace-merbivore-soft .ace_comment { font-style:italic;color:#AC4BB8;}.ace-merbivore-soft .ace_meta { font-style:italic;color:#AC4BB8;}.ace-merbivore-soft .ace_meta.ace_tag { color:#FC803A;}.ace-merbivore-soft .ace_entity.ace_other.ace_attribute-name { color:#EAF1A3;}.ace-merbivore-soft .ace_markup.ace_underline { text-decoration:underline;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)}) \ No newline at end of file diff --git a/public/ace_editor/theme-merbivore_soft-uncompressed-noconflict.js b/public/ace_editor/theme-merbivore_soft-uncompressed-noconflict.js deleted file mode 100644 index d377da8..0000000 --- a/public/ace_editor/theme-merbivore_soft-uncompressed-noconflict.js +++ /dev/null @@ -1,188 +0,0 @@ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla Public License Version - * 1.1 (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * http://www.mozilla.org/MPL/ - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - * - * The Original Code is Ajax.org Code Editor (ACE). - * - * The Initial Developer of the Original Code is - * Ajax.org B.V. - * Portions created by the Initial Developer are Copyright (C) 2010 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Fabian Jakobs - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -ace.define('ace/theme/merbivore_soft', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { - -exports.isDark = true; -exports.cssClass = "ace-merbivore-soft"; -exports.cssText = "\ -.ace-merbivore-soft .ace_editor {\ - border: 2px solid rgb(159, 159, 159);\ -}\ -\ -.ace-merbivore-soft .ace_editor.ace_focus {\ - border: 2px solid #327fbd;\ -}\ -\ -.ace-merbivore-soft .ace_gutter {\ - background: #e8e8e8;\ - color: #333;\ -}\ -\ -.ace-merbivore-soft .ace_print_margin {\ - width: 1px;\ - background: #e8e8e8;\ -}\ -\ -.ace-merbivore-soft .ace_scroller {\ - background-color: #1C1C1C;\ -}\ -\ -.ace-merbivore-soft .ace_text-layer {\ - cursor: text;\ - color: #E6E1DC;\ -}\ -\ -.ace-merbivore-soft .ace_cursor {\ - border-left: 2px solid #FFFFFF;\ -}\ -\ -.ace-merbivore-soft .ace_cursor.ace_overwrite {\ - border-left: 0px;\ - border-bottom: 1px solid #FFFFFF;\ -}\ -\ -.ace-merbivore-soft .ace_marker-layer .ace_selection {\ - background: #494949;\ -}\ -\ -.ace-merbivore-soft.multiselect .ace_selection.start {\ - box-shadow: 0 0 3px 0px #1C1C1C;\ - border-radius: 2px;\ -}\ -\ -.ace-merbivore-soft .ace_marker-layer .ace_step {\ - background: rgb(198, 219, 174);\ -}\ -\ -.ace-merbivore-soft .ace_marker-layer .ace_bracket {\ - margin: -1px 0 0 -1px;\ - border: 1px solid #404040;\ -}\ -\ -.ace-merbivore-soft .ace_marker-layer .ace_active_line {\ - background: #333435;\ -}\ -\ -.ace-merbivore-soft .ace_marker-layer .ace_selected_word {\ - border: 1px solid #494949;\ -}\ -\ -.ace-merbivore-soft .ace_invisible {\ - color: #404040;\ -}\ -\ -.ace-merbivore-soft .ace_keyword, .ace-merbivore-soft .ace_meta {\ - color:#FC803A;\ -}\ -\ -.ace-merbivore-soft .ace_constant, .ace-merbivore-soft .ace_constant.ace_other {\ - color:#68C1D8;\ -}\ -\ -.ace-merbivore-soft .ace_constant.ace_character, {\ - color:#68C1D8;\ -}\ -\ -.ace-merbivore-soft .ace_constant.ace_character.ace_escape, {\ - color:#68C1D8;\ -}\ -\ -.ace-merbivore-soft .ace_constant.ace_language {\ - color:#E1C582;\ -}\ -\ -.ace-merbivore-soft .ace_constant.ace_library {\ - color:#8EC65F;\ -}\ -\ -.ace-merbivore-soft .ace_constant.ace_numeric {\ - color:#7FC578;\ -}\ -\ -.ace-merbivore-soft .ace_invalid {\ - color:#FFFFFF;\ -background-color:#FE3838;\ -}\ -\ -.ace-merbivore-soft .ace_invalid.ace_deprecated {\ - color:#FFFFFF;\ -background-color:#FE3838;\ -}\ -\ -.ace-merbivore-soft .ace_support.ace_constant {\ - color:#8EC65F;\ -}\ -\ -.ace-merbivore-soft .ace_fold {\ - background-color: #FC803A;\ - border-color: #E6E1DC;\ -}\ -\ -.ace-merbivore-soft .ace_storage {\ - color:#FC803A;\ -}\ -\ -.ace-merbivore-soft .ace_string {\ - color:#8EC65F;\ -}\ -\ -.ace-merbivore-soft .ace_comment {\ - font-style:italic;\ -color:#AC4BB8;\ -}\ -\ -.ace-merbivore-soft .ace_meta {\ - font-style:italic;\ -color:#AC4BB8;\ -}\ -\ -.ace-merbivore-soft .ace_meta.ace_tag {\ - color:#FC803A;\ -}\ -\ -.ace-merbivore-soft .ace_entity.ace_other.ace_attribute-name {\ - color:#EAF1A3;\ -}\ -\ -.ace-merbivore-soft .ace_markup.ace_underline {\ - text-decoration:underline;\ -}"; - - var dom = require("../lib/dom"); - dom.importCssString(exports.cssText, exports.cssClass); -}); diff --git a/public/ace_editor/theme-merbivore_soft-uncompressed.js b/public/ace_editor/theme-merbivore_soft-uncompressed.js deleted file mode 100644 index 7f71080..0000000 --- a/public/ace_editor/theme-merbivore_soft-uncompressed.js +++ /dev/null @@ -1,188 +0,0 @@ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla Public License Version - * 1.1 (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * http://www.mozilla.org/MPL/ - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - * - * The Original Code is Ajax.org Code Editor (ACE). - * - * The Initial Developer of the Original Code is - * Ajax.org B.V. - * Portions created by the Initial Developer are Copyright (C) 2010 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Fabian Jakobs - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -define('ace/theme/merbivore_soft', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { - -exports.isDark = true; -exports.cssClass = "ace-merbivore-soft"; -exports.cssText = "\ -.ace-merbivore-soft .ace_editor {\ - border: 2px solid rgb(159, 159, 159);\ -}\ -\ -.ace-merbivore-soft .ace_editor.ace_focus {\ - border: 2px solid #327fbd;\ -}\ -\ -.ace-merbivore-soft .ace_gutter {\ - background: #e8e8e8;\ - color: #333;\ -}\ -\ -.ace-merbivore-soft .ace_print_margin {\ - width: 1px;\ - background: #e8e8e8;\ -}\ -\ -.ace-merbivore-soft .ace_scroller {\ - background-color: #1C1C1C;\ -}\ -\ -.ace-merbivore-soft .ace_text-layer {\ - cursor: text;\ - color: #E6E1DC;\ -}\ -\ -.ace-merbivore-soft .ace_cursor {\ - border-left: 2px solid #FFFFFF;\ -}\ -\ -.ace-merbivore-soft .ace_cursor.ace_overwrite {\ - border-left: 0px;\ - border-bottom: 1px solid #FFFFFF;\ -}\ -\ -.ace-merbivore-soft .ace_marker-layer .ace_selection {\ - background: #494949;\ -}\ -\ -.ace-merbivore-soft.multiselect .ace_selection.start {\ - box-shadow: 0 0 3px 0px #1C1C1C;\ - border-radius: 2px;\ -}\ -\ -.ace-merbivore-soft .ace_marker-layer .ace_step {\ - background: rgb(198, 219, 174);\ -}\ -\ -.ace-merbivore-soft .ace_marker-layer .ace_bracket {\ - margin: -1px 0 0 -1px;\ - border: 1px solid #404040;\ -}\ -\ -.ace-merbivore-soft .ace_marker-layer .ace_active_line {\ - background: #333435;\ -}\ -\ -.ace-merbivore-soft .ace_marker-layer .ace_selected_word {\ - border: 1px solid #494949;\ -}\ -\ -.ace-merbivore-soft .ace_invisible {\ - color: #404040;\ -}\ -\ -.ace-merbivore-soft .ace_keyword, .ace-merbivore-soft .ace_meta {\ - color:#FC803A;\ -}\ -\ -.ace-merbivore-soft .ace_constant, .ace-merbivore-soft .ace_constant.ace_other {\ - color:#68C1D8;\ -}\ -\ -.ace-merbivore-soft .ace_constant.ace_character, {\ - color:#68C1D8;\ -}\ -\ -.ace-merbivore-soft .ace_constant.ace_character.ace_escape, {\ - color:#68C1D8;\ -}\ -\ -.ace-merbivore-soft .ace_constant.ace_language {\ - color:#E1C582;\ -}\ -\ -.ace-merbivore-soft .ace_constant.ace_library {\ - color:#8EC65F;\ -}\ -\ -.ace-merbivore-soft .ace_constant.ace_numeric {\ - color:#7FC578;\ -}\ -\ -.ace-merbivore-soft .ace_invalid {\ - color:#FFFFFF;\ -background-color:#FE3838;\ -}\ -\ -.ace-merbivore-soft .ace_invalid.ace_deprecated {\ - color:#FFFFFF;\ -background-color:#FE3838;\ -}\ -\ -.ace-merbivore-soft .ace_support.ace_constant {\ - color:#8EC65F;\ -}\ -\ -.ace-merbivore-soft .ace_fold {\ - background-color: #FC803A;\ - border-color: #E6E1DC;\ -}\ -\ -.ace-merbivore-soft .ace_storage {\ - color:#FC803A;\ -}\ -\ -.ace-merbivore-soft .ace_string {\ - color:#8EC65F;\ -}\ -\ -.ace-merbivore-soft .ace_comment {\ - font-style:italic;\ -color:#AC4BB8;\ -}\ -\ -.ace-merbivore-soft .ace_meta {\ - font-style:italic;\ -color:#AC4BB8;\ -}\ -\ -.ace-merbivore-soft .ace_meta.ace_tag {\ - color:#FC803A;\ -}\ -\ -.ace-merbivore-soft .ace_entity.ace_other.ace_attribute-name {\ - color:#EAF1A3;\ -}\ -\ -.ace-merbivore-soft .ace_markup.ace_underline {\ - text-decoration:underline;\ -}"; - - var dom = require("../lib/dom"); - dom.importCssString(exports.cssText, exports.cssClass); -}); diff --git a/public/ace_editor/theme-merbivore_soft.js b/public/ace_editor/theme-merbivore_soft.js old mode 100644 new mode 100755 index 2963739..fa8bac8 --- a/public/ace_editor/theme-merbivore_soft.js +++ b/public/ace_editor/theme-merbivore_soft.js @@ -1 +1,127 @@ -define("ace/theme/merbivore_soft",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!0,b.cssClass="ace-merbivore-soft",b.cssText=".ace-merbivore-soft .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-merbivore-soft .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-merbivore-soft .ace_gutter { background: #e8e8e8; color: #333;}.ace-merbivore-soft .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-merbivore-soft .ace_scroller { background-color: #1C1C1C;}.ace-merbivore-soft .ace_text-layer { cursor: text; color: #E6E1DC;}.ace-merbivore-soft .ace_cursor { border-left: 2px solid #FFFFFF;}.ace-merbivore-soft .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #FFFFFF;}.ace-merbivore-soft .ace_marker-layer .ace_selection { background: #494949;}.ace-merbivore-soft.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #1C1C1C; border-radius: 2px;}.ace-merbivore-soft .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-merbivore-soft .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid #404040;}.ace-merbivore-soft .ace_marker-layer .ace_active_line { background: #333435;}.ace-merbivore-soft .ace_marker-layer .ace_selected_word { border: 1px solid #494949;}.ace-merbivore-soft .ace_invisible { color: #404040;}.ace-merbivore-soft .ace_keyword, .ace-merbivore-soft .ace_meta { color:#FC803A;}.ace-merbivore-soft .ace_constant, .ace-merbivore-soft .ace_constant.ace_other { color:#68C1D8;}.ace-merbivore-soft .ace_constant.ace_character, { color:#68C1D8;}.ace-merbivore-soft .ace_constant.ace_character.ace_escape, { color:#68C1D8;}.ace-merbivore-soft .ace_constant.ace_language { color:#E1C582;}.ace-merbivore-soft .ace_constant.ace_library { color:#8EC65F;}.ace-merbivore-soft .ace_constant.ace_numeric { color:#7FC578;}.ace-merbivore-soft .ace_invalid { color:#FFFFFF;background-color:#FE3838;}.ace-merbivore-soft .ace_invalid.ace_deprecated { color:#FFFFFF;background-color:#FE3838;}.ace-merbivore-soft .ace_support.ace_constant { color:#8EC65F;}.ace-merbivore-soft .ace_fold { background-color: #FC803A; border-color: #E6E1DC;}.ace-merbivore-soft .ace_storage { color:#FC803A;}.ace-merbivore-soft .ace_string { color:#8EC65F;}.ace-merbivore-soft .ace_comment { font-style:italic;color:#AC4BB8;}.ace-merbivore-soft .ace_meta { font-style:italic;color:#AC4BB8;}.ace-merbivore-soft .ace_meta.ace_tag { color:#FC803A;}.ace-merbivore-soft .ace_entity.ace_other.ace_attribute-name { color:#EAF1A3;}.ace-merbivore-soft .ace_markup.ace_underline { text-decoration:underline;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)}) \ No newline at end of file +/* ***** BEGIN LICENSE BLOCK ***** + * Distributed under the BSD license: + * + * Copyright (c) 2010, Ajax.org B.V. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Ajax.org B.V. nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL AJAX.ORG B.V. BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * ***** END LICENSE BLOCK ***** */ + +ace.define('ace/theme/merbivore_soft', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { + +exports.isDark = true; +exports.cssClass = "ace-merbivore-soft"; +exports.cssText = ".ace-merbivore-soft .ace_gutter {\ +background: #262424;\ +color: #E6E1DC\ +}\ +.ace-merbivore-soft .ace_print-margin {\ +width: 1px;\ +background: #262424\ +}\ +.ace-merbivore-soft {\ +background-color: #1C1C1C;\ +color: #E6E1DC\ +}\ +.ace-merbivore-soft .ace_cursor {\ +color: #FFFFFF\ +}\ +.ace-merbivore-soft .ace_marker-layer .ace_selection {\ +background: #494949\ +}\ +.ace-merbivore-soft.ace_multiselect .ace_selection.ace_start {\ +box-shadow: 0 0 3px 0px #1C1C1C;\ +border-radius: 2px\ +}\ +.ace-merbivore-soft .ace_marker-layer .ace_step {\ +background: rgb(102, 82, 0)\ +}\ +.ace-merbivore-soft .ace_marker-layer .ace_bracket {\ +margin: -1px 0 0 -1px;\ +border: 1px solid #404040\ +}\ +.ace-merbivore-soft .ace_marker-layer .ace_active-line {\ +background: #333435\ +}\ +.ace-merbivore-soft .ace_gutter-active-line {\ +background-color: #333435\ +}\ +.ace-merbivore-soft .ace_marker-layer .ace_selected-word {\ +border: 1px solid #494949\ +}\ +.ace-merbivore-soft .ace_invisible {\ +color: #404040\ +}\ +.ace-merbivore-soft .ace_entity.ace_name.ace_tag,\ +.ace-merbivore-soft .ace_keyword,\ +.ace-merbivore-soft .ace_meta,\ +.ace-merbivore-soft .ace_meta.ace_tag,\ +.ace-merbivore-soft .ace_storage {\ +color: #FC803A\ +}\ +.ace-merbivore-soft .ace_constant,\ +.ace-merbivore-soft .ace_constant.ace_character,\ +.ace-merbivore-soft .ace_constant.ace_character.ace_escape,\ +.ace-merbivore-soft .ace_constant.ace_other,\ +.ace-merbivore-soft .ace_support.ace_type {\ +color: #68C1D8\ +}\ +.ace-merbivore-soft .ace_constant.ace_character.ace_escape {\ +color: #B3E5B4\ +}\ +.ace-merbivore-soft .ace_constant.ace_language {\ +color: #E1C582\ +}\ +.ace-merbivore-soft .ace_constant.ace_library,\ +.ace-merbivore-soft .ace_string,\ +.ace-merbivore-soft .ace_support.ace_constant {\ +color: #8EC65F\ +}\ +.ace-merbivore-soft .ace_constant.ace_numeric {\ +color: #7FC578\ +}\ +.ace-merbivore-soft .ace_invalid,\ +.ace-merbivore-soft .ace_invalid.ace_deprecated {\ +color: #FFFFFF;\ +background-color: #FE3838\ +}\ +.ace-merbivore-soft .ace_fold {\ +background-color: #FC803A;\ +border-color: #E6E1DC\ +}\ +.ace-merbivore-soft .ace_comment,\ +.ace-merbivore-soft .ace_meta {\ +font-style: italic;\ +color: #AC4BB8\ +}\ +.ace-merbivore-soft .ace_entity.ace_other.ace_attribute-name {\ +color: #EAF1A3\ +}\ +.ace-merbivore-soft .ace_indent-guide {\ +background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAEklEQVQImWOQkpLyZfD09PwPAAfYAnaStpHRAAAAAElFTkSuQmCC) right repeat-y\ +}"; + +var dom = require("../lib/dom"); +dom.importCssString(exports.cssText, exports.cssClass); +}); diff --git a/public/ace_editor/theme-mono_industrial-noconflict.js b/public/ace_editor/theme-mono_industrial-noconflict.js deleted file mode 100644 index 7282fe8..0000000 --- a/public/ace_editor/theme-mono_industrial-noconflict.js +++ /dev/null @@ -1 +0,0 @@ -ace.define("ace/theme/mono_industrial",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!0,b.cssClass="ace-mono-industrial",b.cssText=".ace-mono-industrial .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-mono-industrial .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-mono-industrial .ace_gutter { background: #e8e8e8; color: #333;}.ace-mono-industrial .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-mono-industrial .ace_scroller { background-color: #222C28;}.ace-mono-industrial .ace_text-layer { cursor: text; color: #FFFFFF;}.ace-mono-industrial .ace_cursor { border-left: 2px solid #FFFFFF;}.ace-mono-industrial .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #FFFFFF;}.ace-mono-industrial .ace_marker-layer .ace_selection { background: rgba(145, 153, 148, 0.40);}.ace-mono-industrial.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #222C28; border-radius: 2px;}.ace-mono-industrial .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-mono-industrial .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid rgba(102, 108, 104, 0.50);}.ace-mono-industrial .ace_marker-layer .ace_active_line { background: rgba(12, 13, 12, 0.25);}.ace-mono-industrial .ace_marker-layer .ace_selected_word { border: 1px solid rgba(145, 153, 148, 0.40);}.ace-mono-industrial .ace_invisible { color: rgba(102, 108, 104, 0.50);}.ace-mono-industrial .ace_keyword, .ace-mono-industrial .ace_meta { color:#A39E64;}.ace-mono-industrial .ace_keyword.ace_operator { color:#A8B3AB;}.ace-mono-industrial .ace_constant, .ace-mono-industrial .ace_constant.ace_other { color:#E98800;}.ace-mono-industrial .ace_constant.ace_character, { color:#E98800;}.ace-mono-industrial .ace_constant.ace_character.ace_escape, { color:#E98800;}.ace-mono-industrial .ace_constant.ace_numeric { color:#E98800;}.ace-mono-industrial .ace_invalid { color:#FFFFFF;background-color:rgba(153, 0, 0, 0.68);}.ace-mono-industrial .ace_support.ace_constant { color:#C87500;}.ace-mono-industrial .ace_fold { background-color: #A8B3AB; border-color: #FFFFFF;}.ace-mono-industrial .ace_support.ace_function { color:#588E60;}.ace-mono-industrial .ace_storage { color:#C23B00;}.ace-mono-industrial .ace_variable { color:#A8B3AB;}.ace-mono-industrial .ace_variable.ace_parameter { color:#648BD2;}.ace-mono-industrial .ace_comment { color:#666C68;background-color:#151C19;}.ace-mono-industrial .ace_variable.ace_language { color:#648BD2;}.ace-mono-industrial .ace_entity.ace_other.ace_attribute-name { color:#909993;}.ace-mono-industrial .ace_entity.ace_name { color:#5778B6;}.ace-mono-industrial .ace_entity.ace_name.ace_function { color:#A8B3AB;}.ace-mono-industrial .ace_markup.ace_underline { text-decoration:underline;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)}) \ No newline at end of file diff --git a/public/ace_editor/theme-mono_industrial-uncompressed-noconflict.js b/public/ace_editor/theme-mono_industrial-uncompressed-noconflict.js deleted file mode 100644 index 7bd3149..0000000 --- a/public/ace_editor/theme-mono_industrial-uncompressed-noconflict.js +++ /dev/null @@ -1,190 +0,0 @@ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla Public License Version - * 1.1 (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * http://www.mozilla.org/MPL/ - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - * - * The Original Code is Ajax.org Code Editor (ACE). - * - * The Initial Developer of the Original Code is - * Ajax.org B.V. - * Portions created by the Initial Developer are Copyright (C) 2010 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Fabian Jakobs - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -ace.define('ace/theme/mono_industrial', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { - -exports.isDark = true; -exports.cssClass = "ace-mono-industrial"; -exports.cssText = "\ -.ace-mono-industrial .ace_editor {\ - border: 2px solid rgb(159, 159, 159);\ -}\ -\ -.ace-mono-industrial .ace_editor.ace_focus {\ - border: 2px solid #327fbd;\ -}\ -\ -.ace-mono-industrial .ace_gutter {\ - background: #e8e8e8;\ - color: #333;\ -}\ -\ -.ace-mono-industrial .ace_print_margin {\ - width: 1px;\ - background: #e8e8e8;\ -}\ -\ -.ace-mono-industrial .ace_scroller {\ - background-color: #222C28;\ -}\ -\ -.ace-mono-industrial .ace_text-layer {\ - cursor: text;\ - color: #FFFFFF;\ -}\ -\ -.ace-mono-industrial .ace_cursor {\ - border-left: 2px solid #FFFFFF;\ -}\ -\ -.ace-mono-industrial .ace_cursor.ace_overwrite {\ - border-left: 0px;\ - border-bottom: 1px solid #FFFFFF;\ -}\ -\ -.ace-mono-industrial .ace_marker-layer .ace_selection {\ - background: rgba(145, 153, 148, 0.40);\ -}\ -\ -.ace-mono-industrial.multiselect .ace_selection.start {\ - box-shadow: 0 0 3px 0px #222C28;\ - border-radius: 2px;\ -}\ -\ -.ace-mono-industrial .ace_marker-layer .ace_step {\ - background: rgb(198, 219, 174);\ -}\ -\ -.ace-mono-industrial .ace_marker-layer .ace_bracket {\ - margin: -1px 0 0 -1px;\ - border: 1px solid rgba(102, 108, 104, 0.50);\ -}\ -\ -.ace-mono-industrial .ace_marker-layer .ace_active_line {\ - background: rgba(12, 13, 12, 0.25);\ -}\ -\ -.ace-mono-industrial .ace_marker-layer .ace_selected_word {\ - border: 1px solid rgba(145, 153, 148, 0.40);\ -}\ -\ -.ace-mono-industrial .ace_invisible {\ - color: rgba(102, 108, 104, 0.50);\ -}\ -\ -.ace-mono-industrial .ace_keyword, .ace-mono-industrial .ace_meta {\ - color:#A39E64;\ -}\ -\ -.ace-mono-industrial .ace_keyword.ace_operator {\ - color:#A8B3AB;\ -}\ -\ -.ace-mono-industrial .ace_constant, .ace-mono-industrial .ace_constant.ace_other {\ - color:#E98800;\ -}\ -\ -.ace-mono-industrial .ace_constant.ace_character, {\ - color:#E98800;\ -}\ -\ -.ace-mono-industrial .ace_constant.ace_character.ace_escape, {\ - color:#E98800;\ -}\ -\ -.ace-mono-industrial .ace_constant.ace_numeric {\ - color:#E98800;\ -}\ -\ -.ace-mono-industrial .ace_invalid {\ - color:#FFFFFF;\ -background-color:rgba(153, 0, 0, 0.68);\ -}\ -\ -.ace-mono-industrial .ace_support.ace_constant {\ - color:#C87500;\ -}\ -\ -.ace-mono-industrial .ace_fold {\ - background-color: #A8B3AB;\ - border-color: #FFFFFF;\ -}\ -\ -.ace-mono-industrial .ace_support.ace_function {\ - color:#588E60;\ -}\ -\ -.ace-mono-industrial .ace_storage {\ - color:#C23B00;\ -}\ -\ -.ace-mono-industrial .ace_variable {\ - color:#A8B3AB;\ -}\ -\ -.ace-mono-industrial .ace_variable.ace_parameter {\ - color:#648BD2;\ -}\ -\ -.ace-mono-industrial .ace_comment {\ - color:#666C68;\ -background-color:#151C19;\ -}\ -\ -.ace-mono-industrial .ace_variable.ace_language {\ - color:#648BD2;\ -}\ -\ -.ace-mono-industrial .ace_entity.ace_other.ace_attribute-name {\ - color:#909993;\ -}\ -\ -.ace-mono-industrial .ace_entity.ace_name {\ - color:#5778B6;\ -}\ -\ -.ace-mono-industrial .ace_entity.ace_name.ace_function {\ - color:#A8B3AB;\ -}\ -\ -.ace-mono-industrial .ace_markup.ace_underline {\ - text-decoration:underline;\ -}"; - - var dom = require("../lib/dom"); - dom.importCssString(exports.cssText, exports.cssClass); -}); diff --git a/public/ace_editor/theme-mono_industrial-uncompressed.js b/public/ace_editor/theme-mono_industrial-uncompressed.js deleted file mode 100644 index a8ccfe7..0000000 --- a/public/ace_editor/theme-mono_industrial-uncompressed.js +++ /dev/null @@ -1,190 +0,0 @@ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla Public License Version - * 1.1 (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * http://www.mozilla.org/MPL/ - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - * - * The Original Code is Ajax.org Code Editor (ACE). - * - * The Initial Developer of the Original Code is - * Ajax.org B.V. - * Portions created by the Initial Developer are Copyright (C) 2010 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Fabian Jakobs - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -define('ace/theme/mono_industrial', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { - -exports.isDark = true; -exports.cssClass = "ace-mono-industrial"; -exports.cssText = "\ -.ace-mono-industrial .ace_editor {\ - border: 2px solid rgb(159, 159, 159);\ -}\ -\ -.ace-mono-industrial .ace_editor.ace_focus {\ - border: 2px solid #327fbd;\ -}\ -\ -.ace-mono-industrial .ace_gutter {\ - background: #e8e8e8;\ - color: #333;\ -}\ -\ -.ace-mono-industrial .ace_print_margin {\ - width: 1px;\ - background: #e8e8e8;\ -}\ -\ -.ace-mono-industrial .ace_scroller {\ - background-color: #222C28;\ -}\ -\ -.ace-mono-industrial .ace_text-layer {\ - cursor: text;\ - color: #FFFFFF;\ -}\ -\ -.ace-mono-industrial .ace_cursor {\ - border-left: 2px solid #FFFFFF;\ -}\ -\ -.ace-mono-industrial .ace_cursor.ace_overwrite {\ - border-left: 0px;\ - border-bottom: 1px solid #FFFFFF;\ -}\ -\ -.ace-mono-industrial .ace_marker-layer .ace_selection {\ - background: rgba(145, 153, 148, 0.40);\ -}\ -\ -.ace-mono-industrial.multiselect .ace_selection.start {\ - box-shadow: 0 0 3px 0px #222C28;\ - border-radius: 2px;\ -}\ -\ -.ace-mono-industrial .ace_marker-layer .ace_step {\ - background: rgb(198, 219, 174);\ -}\ -\ -.ace-mono-industrial .ace_marker-layer .ace_bracket {\ - margin: -1px 0 0 -1px;\ - border: 1px solid rgba(102, 108, 104, 0.50);\ -}\ -\ -.ace-mono-industrial .ace_marker-layer .ace_active_line {\ - background: rgba(12, 13, 12, 0.25);\ -}\ -\ -.ace-mono-industrial .ace_marker-layer .ace_selected_word {\ - border: 1px solid rgba(145, 153, 148, 0.40);\ -}\ -\ -.ace-mono-industrial .ace_invisible {\ - color: rgba(102, 108, 104, 0.50);\ -}\ -\ -.ace-mono-industrial .ace_keyword, .ace-mono-industrial .ace_meta {\ - color:#A39E64;\ -}\ -\ -.ace-mono-industrial .ace_keyword.ace_operator {\ - color:#A8B3AB;\ -}\ -\ -.ace-mono-industrial .ace_constant, .ace-mono-industrial .ace_constant.ace_other {\ - color:#E98800;\ -}\ -\ -.ace-mono-industrial .ace_constant.ace_character, {\ - color:#E98800;\ -}\ -\ -.ace-mono-industrial .ace_constant.ace_character.ace_escape, {\ - color:#E98800;\ -}\ -\ -.ace-mono-industrial .ace_constant.ace_numeric {\ - color:#E98800;\ -}\ -\ -.ace-mono-industrial .ace_invalid {\ - color:#FFFFFF;\ -background-color:rgba(153, 0, 0, 0.68);\ -}\ -\ -.ace-mono-industrial .ace_support.ace_constant {\ - color:#C87500;\ -}\ -\ -.ace-mono-industrial .ace_fold {\ - background-color: #A8B3AB;\ - border-color: #FFFFFF;\ -}\ -\ -.ace-mono-industrial .ace_support.ace_function {\ - color:#588E60;\ -}\ -\ -.ace-mono-industrial .ace_storage {\ - color:#C23B00;\ -}\ -\ -.ace-mono-industrial .ace_variable {\ - color:#A8B3AB;\ -}\ -\ -.ace-mono-industrial .ace_variable.ace_parameter {\ - color:#648BD2;\ -}\ -\ -.ace-mono-industrial .ace_comment {\ - color:#666C68;\ -background-color:#151C19;\ -}\ -\ -.ace-mono-industrial .ace_variable.ace_language {\ - color:#648BD2;\ -}\ -\ -.ace-mono-industrial .ace_entity.ace_other.ace_attribute-name {\ - color:#909993;\ -}\ -\ -.ace-mono-industrial .ace_entity.ace_name {\ - color:#5778B6;\ -}\ -\ -.ace-mono-industrial .ace_entity.ace_name.ace_function {\ - color:#A8B3AB;\ -}\ -\ -.ace-mono-industrial .ace_markup.ace_underline {\ - text-decoration:underline;\ -}"; - - var dom = require("../lib/dom"); - dom.importCssString(exports.cssText, exports.cssClass); -}); diff --git a/public/ace_editor/theme-mono_industrial.js b/public/ace_editor/theme-mono_industrial.js old mode 100644 new mode 100755 index f179758..fcc84de --- a/public/ace_editor/theme-mono_industrial.js +++ b/public/ace_editor/theme-mono_industrial.js @@ -1 +1,138 @@ -define("ace/theme/mono_industrial",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!0,b.cssClass="ace-mono-industrial",b.cssText=".ace-mono-industrial .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-mono-industrial .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-mono-industrial .ace_gutter { background: #e8e8e8; color: #333;}.ace-mono-industrial .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-mono-industrial .ace_scroller { background-color: #222C28;}.ace-mono-industrial .ace_text-layer { cursor: text; color: #FFFFFF;}.ace-mono-industrial .ace_cursor { border-left: 2px solid #FFFFFF;}.ace-mono-industrial .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #FFFFFF;}.ace-mono-industrial .ace_marker-layer .ace_selection { background: rgba(145, 153, 148, 0.40);}.ace-mono-industrial.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #222C28; border-radius: 2px;}.ace-mono-industrial .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-mono-industrial .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid rgba(102, 108, 104, 0.50);}.ace-mono-industrial .ace_marker-layer .ace_active_line { background: rgba(12, 13, 12, 0.25);}.ace-mono-industrial .ace_marker-layer .ace_selected_word { border: 1px solid rgba(145, 153, 148, 0.40);}.ace-mono-industrial .ace_invisible { color: rgba(102, 108, 104, 0.50);}.ace-mono-industrial .ace_keyword, .ace-mono-industrial .ace_meta { color:#A39E64;}.ace-mono-industrial .ace_keyword.ace_operator { color:#A8B3AB;}.ace-mono-industrial .ace_constant, .ace-mono-industrial .ace_constant.ace_other { color:#E98800;}.ace-mono-industrial .ace_constant.ace_character, { color:#E98800;}.ace-mono-industrial .ace_constant.ace_character.ace_escape, { color:#E98800;}.ace-mono-industrial .ace_constant.ace_numeric { color:#E98800;}.ace-mono-industrial .ace_invalid { color:#FFFFFF;background-color:rgba(153, 0, 0, 0.68);}.ace-mono-industrial .ace_support.ace_constant { color:#C87500;}.ace-mono-industrial .ace_fold { background-color: #A8B3AB; border-color: #FFFFFF;}.ace-mono-industrial .ace_support.ace_function { color:#588E60;}.ace-mono-industrial .ace_storage { color:#C23B00;}.ace-mono-industrial .ace_variable { color:#A8B3AB;}.ace-mono-industrial .ace_variable.ace_parameter { color:#648BD2;}.ace-mono-industrial .ace_comment { color:#666C68;background-color:#151C19;}.ace-mono-industrial .ace_variable.ace_language { color:#648BD2;}.ace-mono-industrial .ace_entity.ace_other.ace_attribute-name { color:#909993;}.ace-mono-industrial .ace_entity.ace_name { color:#5778B6;}.ace-mono-industrial .ace_entity.ace_name.ace_function { color:#A8B3AB;}.ace-mono-industrial .ace_markup.ace_underline { text-decoration:underline;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)}) \ No newline at end of file +/* ***** BEGIN LICENSE BLOCK ***** + * Distributed under the BSD license: + * + * Copyright (c) 2010, Ajax.org B.V. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Ajax.org B.V. nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL AJAX.ORG B.V. BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * ***** END LICENSE BLOCK ***** */ + +ace.define('ace/theme/mono_industrial', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { + +exports.isDark = true; +exports.cssClass = "ace-mono-industrial"; +exports.cssText = ".ace-mono-industrial .ace_gutter {\ +background: #1d2521;\ +color: #C5C9C9\ +}\ +.ace-mono-industrial .ace_print-margin {\ +width: 1px;\ +background: #555651\ +}\ +.ace-mono-industrial {\ +background-color: #222C28;\ +color: #FFFFFF\ +}\ +.ace-mono-industrial .ace_cursor {\ +color: #FFFFFF\ +}\ +.ace-mono-industrial .ace_marker-layer .ace_selection {\ +background: rgba(145, 153, 148, 0.40)\ +}\ +.ace-mono-industrial.ace_multiselect .ace_selection.ace_start {\ +box-shadow: 0 0 3px 0px #222C28;\ +border-radius: 2px\ +}\ +.ace-mono-industrial .ace_marker-layer .ace_step {\ +background: rgb(102, 82, 0)\ +}\ +.ace-mono-industrial .ace_marker-layer .ace_bracket {\ +margin: -1px 0 0 -1px;\ +border: 1px solid rgba(102, 108, 104, 0.50)\ +}\ +.ace-mono-industrial .ace_marker-layer .ace_active-line {\ +background: rgba(12, 13, 12, 0.25)\ +}\ +.ace-mono-industrial .ace_gutter-active-line {\ +background-color: rgba(12, 13, 12, 0.25)\ +}\ +.ace-mono-industrial .ace_marker-layer .ace_selected-word {\ +border: 1px solid rgba(145, 153, 148, 0.40)\ +}\ +.ace-mono-industrial .ace_invisible {\ +color: rgba(102, 108, 104, 0.50)\ +}\ +.ace-mono-industrial .ace_string {\ +background-color: #151C19;\ +color: #FFFFFF\ +}\ +.ace-mono-industrial .ace_keyword,\ +.ace-mono-industrial .ace_meta {\ +color: #A39E64\ +}\ +.ace-mono-industrial .ace_constant,\ +.ace-mono-industrial .ace_constant.ace_character,\ +.ace-mono-industrial .ace_constant.ace_character.ace_escape,\ +.ace-mono-industrial .ace_constant.ace_numeric,\ +.ace-mono-industrial .ace_constant.ace_other {\ +color: #E98800\ +}\ +.ace-mono-industrial .ace_entity.ace_name.ace_function,\ +.ace-mono-industrial .ace_keyword.ace_operator,\ +.ace-mono-industrial .ace_variable {\ +color: #A8B3AB\ +}\ +.ace-mono-industrial .ace_invalid {\ +color: #FFFFFF;\ +background-color: rgba(153, 0, 0, 0.68)\ +}\ +.ace-mono-industrial .ace_support.ace_constant {\ +color: #C87500\ +}\ +.ace-mono-industrial .ace_fold {\ +background-color: #A8B3AB;\ +border-color: #FFFFFF\ +}\ +.ace-mono-industrial .ace_support.ace_function {\ +color: #588E60\ +}\ +.ace-mono-industrial .ace_entity.ace_name,\ +.ace-mono-industrial .ace_support.ace_class,\ +.ace-mono-industrial .ace_support.ace_type {\ +color: #5778B6\ +}\ +.ace-mono-industrial .ace_storage {\ +color: #C23B00\ +}\ +.ace-mono-industrial .ace_variable.ace_language,\ +.ace-mono-industrial .ace_variable.ace_parameter {\ +color: #648BD2\ +}\ +.ace-mono-industrial .ace_comment {\ +color: #666C68;\ +background-color: #151C19\ +}\ +.ace-mono-industrial .ace_entity.ace_other.ace_attribute-name {\ +color: #909993\ +}\ +.ace-mono-industrial .ace_entity.ace_name.ace_tag {\ +color: #A65EFF\ +}\ +.ace-mono-industrial .ace_indent-guide {\ +background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAEklEQVQImWNQ1NbwZfALD/4PAAlTArlEC4r/AAAAAElFTkSuQmCC) right repeat-y\ +}"; + +var dom = require("../lib/dom"); +dom.importCssString(exports.cssText, exports.cssClass); +}); diff --git a/public/ace_editor/theme-monokai-noconflict.js b/public/ace_editor/theme-monokai-noconflict.js deleted file mode 100644 index 588ae0c..0000000 --- a/public/ace_editor/theme-monokai-noconflict.js +++ /dev/null @@ -1 +0,0 @@ -ace.define("ace/theme/monokai",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!0,b.cssClass="ace-monokai",b.cssText=".ace-monokai .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-monokai .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-monokai .ace_gutter { background: #292a24; color: #f1f1f1;}.ace-monokai .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-monokai .ace_scroller { background-color: #272822;}.ace-monokai .ace_text-layer { cursor: text; color: #F8F8F2;}.ace-monokai .ace_cursor { border-left: 2px solid #F8F8F0;}.ace-monokai .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #F8F8F0;}.ace-monokai .ace_marker-layer .ace_selection { background: #49483E;}.ace-monokai.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #272822; border-radius: 2px;}.ace-monokai .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-monokai .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid #49483E;}.ace-monokai .ace_marker-layer .ace_active_line{ background: #49483E;}.ace-monokai .ace_gutter_active_line{ background: #191916;}.ace-monokai .ace_marker-layer .ace_selected_word { border: 1px solid #49483E;}.ace-monokai .ace_invisible { color: #49483E;}.ace-monokai .ace_keyword, .ace-monokai .ace_meta { color:#F92672;}.ace-monokai .ace_constant.ace_language { color:#AE81FF;}.ace-monokai .ace_constant.ace_numeric { color:#AE81FF;}.ace-monokai .ace_constant.ace_other { color:#AE81FF;}.ace-monokai .ace_invalid { color:#F8F8F0;background-color:#F92672;}.ace-monokai .ace_invalid.ace_deprecated { color:#F8F8F0;background-color:#AE81FF;}.ace-monokai .ace_support.ace_constant { color:#66D9EF;}.ace-monokai .ace_fold { background-color: #A6E22E; border-color: #F8F8F2;}.ace-monokai .ace_support.ace_function { color:#66D9EF;}.ace-monokai .ace_storage { color:#F92672;}.ace-monokai .ace_storage.ace_type, .ace-monokai .ace_support.ace_type{ font-style:italic;color:#66D9EF;}.ace-monokai .ace_variable { color:#A6E22E;}.ace-monokai .ace_variable.ace_parameter { font-style:italic;color:#FD971F;}.ace-monokai .ace_string { color:#E6DB74;}.ace-monokai .ace_comment { color:#75715E;}.ace-monokai .ace_entity.ace_other.ace_attribute-name { color:#A6E22E;}.ace-monokai .ace_entity.ace_name.ace_function { color:#A6E22E;}.ace-monokai .ace_markup.ace_underline { text-decoration:underline;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)}) \ No newline at end of file diff --git a/public/ace_editor/theme-monokai-uncompressed-noconflict.js b/public/ace_editor/theme-monokai-uncompressed-noconflict.js deleted file mode 100644 index d0c9d9d..0000000 --- a/public/ace_editor/theme-monokai-uncompressed-noconflict.js +++ /dev/null @@ -1,191 +0,0 @@ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla Public License Version - * 1.1 (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * http://www.mozilla.org/MPL/ - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - * - * The Original Code is Ajax.org Code Editor (ACE). - * - * The Initial Developer of the Original Code is - * Ajax.org B.V. - * Portions created by the Initial Developer are Copyright (C) 2010 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Fabian Jakobs - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -ace.define('ace/theme/monokai', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { - -exports.isDark = true; -exports.cssClass = "ace-monokai"; -exports.cssText = "\ -.ace-monokai .ace_editor {\ - border: 2px solid rgb(159, 159, 159);\ -}\ -\ -.ace-monokai .ace_editor.ace_focus {\ - border: 2px solid #327fbd;\ -}\ -\ -.ace-monokai .ace_gutter {\ - background: #292a24;\ - color: #f1f1f1;\ -}\ -\ -.ace-monokai .ace_print_margin {\ - width: 1px;\ - background: #e8e8e8;\ -}\ -\ -.ace-monokai .ace_scroller {\ - background-color: #272822;\ -}\ -\ -.ace-monokai .ace_text-layer {\ - cursor: text;\ - color: #F8F8F2;\ -}\ -\ -.ace-monokai .ace_cursor {\ - border-left: 2px solid #F8F8F0;\ -}\ -\ -.ace-monokai .ace_cursor.ace_overwrite {\ - border-left: 0px;\ - border-bottom: 1px solid #F8F8F0;\ -}\ -\ -.ace-monokai .ace_marker-layer .ace_selection {\ - background: #49483E;\ -}\ -\ -.ace-monokai.multiselect .ace_selection.start {\ - box-shadow: 0 0 3px 0px #272822;\ - border-radius: 2px;\ -}\ -\ -.ace-monokai .ace_marker-layer .ace_step {\ - background: rgb(198, 219, 174);\ -}\ -\ -.ace-monokai .ace_marker-layer .ace_bracket {\ - margin: -1px 0 0 -1px;\ - border: 1px solid #49483E;\ -}\ -\ -.ace-monokai .ace_marker-layer .ace_active_line{\ - background: #49483E;\ -}\ -.ace-monokai .ace_gutter_active_line{\ - background: #191916;\ -}\ -\ -.ace-monokai .ace_marker-layer .ace_selected_word {\ - border: 1px solid #49483E;\ -}\ -\ -.ace-monokai .ace_invisible {\ - color: #49483E;\ -}\ -\ -.ace-monokai .ace_keyword, .ace-monokai .ace_meta {\ - color:#F92672;\ -}\ -\ -.ace-monokai .ace_constant.ace_language {\ - color:#AE81FF;\ -}\ -\ -.ace-monokai .ace_constant.ace_numeric {\ - color:#AE81FF;\ -}\ -\ -.ace-monokai .ace_constant.ace_other {\ - color:#AE81FF;\ -}\ -\ -.ace-monokai .ace_invalid {\ - color:#F8F8F0;\ -background-color:#F92672;\ -}\ -\ -.ace-monokai .ace_invalid.ace_deprecated {\ - color:#F8F8F0;\ -background-color:#AE81FF;\ -}\ -\ -.ace-monokai .ace_support.ace_constant {\ - color:#66D9EF;\ -}\ -\ -.ace-monokai .ace_fold {\ - background-color: #A6E22E;\ - border-color: #F8F8F2;\ -}\ -\ -.ace-monokai .ace_support.ace_function {\ - color:#66D9EF;\ -}\ -\ -.ace-monokai .ace_storage {\ - color:#F92672;\ -}\ -\ -.ace-monokai .ace_storage.ace_type, .ace-monokai .ace_support.ace_type{\ - font-style:italic;\ -color:#66D9EF;\ -}\ -\ -.ace-monokai .ace_variable {\ - color:#A6E22E;\ -}\ -\ -.ace-monokai .ace_variable.ace_parameter {\ - font-style:italic;\ -color:#FD971F;\ -}\ -\ -.ace-monokai .ace_string {\ - color:#E6DB74;\ -}\ -\ -.ace-monokai .ace_comment {\ - color:#75715E;\ -}\ -\ -.ace-monokai .ace_entity.ace_other.ace_attribute-name {\ - color:#A6E22E;\ -}\ -\ -.ace-monokai .ace_entity.ace_name.ace_function {\ - color:#A6E22E;\ -}\ -\ -.ace-monokai .ace_markup.ace_underline {\ - text-decoration:underline;\ -}"; - - var dom = require("../lib/dom"); - dom.importCssString(exports.cssText, exports.cssClass); -}); diff --git a/public/ace_editor/theme-monokai-uncompressed.js b/public/ace_editor/theme-monokai-uncompressed.js deleted file mode 100644 index 4f63994..0000000 --- a/public/ace_editor/theme-monokai-uncompressed.js +++ /dev/null @@ -1,191 +0,0 @@ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla Public License Version - * 1.1 (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * http://www.mozilla.org/MPL/ - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - * - * The Original Code is Ajax.org Code Editor (ACE). - * - * The Initial Developer of the Original Code is - * Ajax.org B.V. - * Portions created by the Initial Developer are Copyright (C) 2010 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Fabian Jakobs - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -define('ace/theme/monokai', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { - -exports.isDark = true; -exports.cssClass = "ace-monokai"; -exports.cssText = "\ -.ace-monokai .ace_editor {\ - border: 2px solid rgb(159, 159, 159);\ -}\ -\ -.ace-monokai .ace_editor.ace_focus {\ - border: 2px solid #327fbd;\ -}\ -\ -.ace-monokai .ace_gutter {\ - background: #292a24;\ - color: #f1f1f1;\ -}\ -\ -.ace-monokai .ace_print_margin {\ - width: 1px;\ - background: #e8e8e8;\ -}\ -\ -.ace-monokai .ace_scroller {\ - background-color: #272822;\ -}\ -\ -.ace-monokai .ace_text-layer {\ - cursor: text;\ - color: #F8F8F2;\ -}\ -\ -.ace-monokai .ace_cursor {\ - border-left: 2px solid #F8F8F0;\ -}\ -\ -.ace-monokai .ace_cursor.ace_overwrite {\ - border-left: 0px;\ - border-bottom: 1px solid #F8F8F0;\ -}\ -\ -.ace-monokai .ace_marker-layer .ace_selection {\ - background: #49483E;\ -}\ -\ -.ace-monokai.multiselect .ace_selection.start {\ - box-shadow: 0 0 3px 0px #272822;\ - border-radius: 2px;\ -}\ -\ -.ace-monokai .ace_marker-layer .ace_step {\ - background: rgb(198, 219, 174);\ -}\ -\ -.ace-monokai .ace_marker-layer .ace_bracket {\ - margin: -1px 0 0 -1px;\ - border: 1px solid #49483E;\ -}\ -\ -.ace-monokai .ace_marker-layer .ace_active_line{\ - background: #49483E;\ -}\ -.ace-monokai .ace_gutter_active_line{\ - background: #191916;\ -}\ -\ -.ace-monokai .ace_marker-layer .ace_selected_word {\ - border: 1px solid #49483E;\ -}\ -\ -.ace-monokai .ace_invisible {\ - color: #49483E;\ -}\ -\ -.ace-monokai .ace_keyword, .ace-monokai .ace_meta {\ - color:#F92672;\ -}\ -\ -.ace-monokai .ace_constant.ace_language {\ - color:#AE81FF;\ -}\ -\ -.ace-monokai .ace_constant.ace_numeric {\ - color:#AE81FF;\ -}\ -\ -.ace-monokai .ace_constant.ace_other {\ - color:#AE81FF;\ -}\ -\ -.ace-monokai .ace_invalid {\ - color:#F8F8F0;\ -background-color:#F92672;\ -}\ -\ -.ace-monokai .ace_invalid.ace_deprecated {\ - color:#F8F8F0;\ -background-color:#AE81FF;\ -}\ -\ -.ace-monokai .ace_support.ace_constant {\ - color:#66D9EF;\ -}\ -\ -.ace-monokai .ace_fold {\ - background-color: #A6E22E;\ - border-color: #F8F8F2;\ -}\ -\ -.ace-monokai .ace_support.ace_function {\ - color:#66D9EF;\ -}\ -\ -.ace-monokai .ace_storage {\ - color:#F92672;\ -}\ -\ -.ace-monokai .ace_storage.ace_type, .ace-monokai .ace_support.ace_type{\ - font-style:italic;\ -color:#66D9EF;\ -}\ -\ -.ace-monokai .ace_variable {\ - color:#A6E22E;\ -}\ -\ -.ace-monokai .ace_variable.ace_parameter {\ - font-style:italic;\ -color:#FD971F;\ -}\ -\ -.ace-monokai .ace_string {\ - color:#E6DB74;\ -}\ -\ -.ace-monokai .ace_comment {\ - color:#75715E;\ -}\ -\ -.ace-monokai .ace_entity.ace_other.ace_attribute-name {\ - color:#A6E22E;\ -}\ -\ -.ace-monokai .ace_entity.ace_name.ace_function {\ - color:#A6E22E;\ -}\ -\ -.ace-monokai .ace_markup.ace_underline {\ - text-decoration:underline;\ -}"; - - var dom = require("../lib/dom"); - dom.importCssString(exports.cssText, exports.cssClass); -}); diff --git a/public/ace_editor/theme-monokai.js b/public/ace_editor/theme-monokai.js old mode 100644 new mode 100755 index f6b455b..1166adf --- a/public/ace_editor/theme-monokai.js +++ b/public/ace_editor/theme-monokai.js @@ -1 +1,136 @@ -define("ace/theme/monokai",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!0,b.cssClass="ace-monokai",b.cssText=".ace-monokai .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-monokai .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-monokai .ace_gutter { background: #292a24; color: #f1f1f1;}.ace-monokai .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-monokai .ace_scroller { background-color: #272822;}.ace-monokai .ace_text-layer { cursor: text; color: #F8F8F2;}.ace-monokai .ace_cursor { border-left: 2px solid #F8F8F0;}.ace-monokai .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #F8F8F0;}.ace-monokai .ace_marker-layer .ace_selection { background: #49483E;}.ace-monokai.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #272822; border-radius: 2px;}.ace-monokai .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-monokai .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid #49483E;}.ace-monokai .ace_marker-layer .ace_active_line{ background: #49483E;}.ace-monokai .ace_gutter_active_line{ background: #191916;}.ace-monokai .ace_marker-layer .ace_selected_word { border: 1px solid #49483E;}.ace-monokai .ace_invisible { color: #49483E;}.ace-monokai .ace_keyword, .ace-monokai .ace_meta { color:#F92672;}.ace-monokai .ace_constant.ace_language { color:#AE81FF;}.ace-monokai .ace_constant.ace_numeric { color:#AE81FF;}.ace-monokai .ace_constant.ace_other { color:#AE81FF;}.ace-monokai .ace_invalid { color:#F8F8F0;background-color:#F92672;}.ace-monokai .ace_invalid.ace_deprecated { color:#F8F8F0;background-color:#AE81FF;}.ace-monokai .ace_support.ace_constant { color:#66D9EF;}.ace-monokai .ace_fold { background-color: #A6E22E; border-color: #F8F8F2;}.ace-monokai .ace_support.ace_function { color:#66D9EF;}.ace-monokai .ace_storage { color:#F92672;}.ace-monokai .ace_storage.ace_type, .ace-monokai .ace_support.ace_type{ font-style:italic;color:#66D9EF;}.ace-monokai .ace_variable { color:#A6E22E;}.ace-monokai .ace_variable.ace_parameter { font-style:italic;color:#FD971F;}.ace-monokai .ace_string { color:#E6DB74;}.ace-monokai .ace_comment { color:#75715E;}.ace-monokai .ace_entity.ace_other.ace_attribute-name { color:#A6E22E;}.ace-monokai .ace_entity.ace_name.ace_function { color:#A6E22E;}.ace-monokai .ace_markup.ace_underline { text-decoration:underline;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)}) \ No newline at end of file +/* ***** BEGIN LICENSE BLOCK ***** + * Distributed under the BSD license: + * + * Copyright (c) 2010, Ajax.org B.V. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Ajax.org B.V. nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL AJAX.ORG B.V. BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * ***** END LICENSE BLOCK ***** */ + +ace.define('ace/theme/monokai', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { + +exports.isDark = true; +exports.cssClass = "ace-monokai"; +exports.cssText = ".ace-monokai .ace_gutter {\ +background: #2F3129;\ +color: #8F908A\ +}\ +.ace-monokai .ace_print-margin {\ +width: 1px;\ +background: #555651\ +}\ +.ace-monokai {\ +background-color: #272822;\ +color: #F8F8F2\ +}\ +.ace-monokai .ace_cursor {\ +color: #F8F8F0\ +}\ +.ace-monokai .ace_marker-layer .ace_selection {\ +background: #49483E\ +}\ +.ace-monokai.ace_multiselect .ace_selection.ace_start {\ +box-shadow: 0 0 3px 0px #272822;\ +border-radius: 2px\ +}\ +.ace-monokai .ace_marker-layer .ace_step {\ +background: rgb(102, 82, 0)\ +}\ +.ace-monokai .ace_marker-layer .ace_bracket {\ +margin: -1px 0 0 -1px;\ +border: 1px solid #49483E\ +}\ +.ace-monokai .ace_marker-layer .ace_active-line {\ +background: #202020\ +}\ +.ace-monokai .ace_gutter-active-line {\ +background-color: #272727\ +}\ +.ace-monokai .ace_marker-layer .ace_selected-word {\ +border: 1px solid #49483E\ +}\ +.ace-monokai .ace_invisible {\ +color: #52524d\ +}\ +.ace-monokai .ace_entity.ace_name.ace_tag,\ +.ace-monokai .ace_keyword,\ +.ace-monokai .ace_meta.ace_tag,\ +.ace-monokai .ace_storage {\ +color: #F92672\ +}\ +.ace-monokai .ace_punctuation,\ +.ace-monokai .ace_punctuation.ace_tag {\ +color: #fff\ +}\ +.ace-monokai .ace_constant.ace_character,\ +.ace-monokai .ace_constant.ace_language,\ +.ace-monokai .ace_constant.ace_numeric,\ +.ace-monokai .ace_constant.ace_other {\ +color: #AE81FF\ +}\ +.ace-monokai .ace_invalid {\ +color: #F8F8F0;\ +background-color: #F92672\ +}\ +.ace-monokai .ace_invalid.ace_deprecated {\ +color: #F8F8F0;\ +background-color: #AE81FF\ +}\ +.ace-monokai .ace_support.ace_constant,\ +.ace-monokai .ace_support.ace_function {\ +color: #66D9EF\ +}\ +.ace-monokai .ace_fold {\ +background-color: #A6E22E;\ +border-color: #F8F8F2\ +}\ +.ace-monokai .ace_storage.ace_type,\ +.ace-monokai .ace_support.ace_class,\ +.ace-monokai .ace_support.ace_type {\ +font-style: italic;\ +color: #66D9EF\ +}\ +.ace-monokai .ace_entity.ace_name.ace_function,\ +.ace-monokai .ace_entity.ace_other,\ +.ace-monokai .ace_entity.ace_other.ace_attribute-name,\ +.ace-monokai .ace_variable {\ +color: #A6E22E\ +}\ +.ace-monokai .ace_variable.ace_parameter {\ +font-style: italic;\ +color: #FD971F\ +}\ +.ace-monokai .ace_string {\ +color: #E6DB74\ +}\ +.ace-monokai .ace_comment {\ +color: #75715E\ +}\ +.ace-monokai .ace_indent-guide {\ +background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAEklEQVQImWPQ0FD0ZXBzd/wPAAjVAoxeSgNeAAAAAElFTkSuQmCC) right repeat-y\ +}"; + +var dom = require("../lib/dom"); +dom.importCssString(exports.cssText, exports.cssClass); +}); diff --git a/public/ace_editor/theme-pastel_on_dark-noconflict.js b/public/ace_editor/theme-pastel_on_dark-noconflict.js deleted file mode 100644 index 0e2a07d..0000000 --- a/public/ace_editor/theme-pastel_on_dark-noconflict.js +++ /dev/null @@ -1 +0,0 @@ -ace.define("ace/theme/pastel_on_dark",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!0,b.cssClass="ace-pastel-on-dark",b.cssText=".ace-pastel-on-dark .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-pastel-on-dark .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-pastel-on-dark .ace_gutter { background: #e8e8e8; color: #333;}.ace-pastel-on-dark .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-pastel-on-dark .ace_scroller { background-color: #2C2828;}.ace-pastel-on-dark .ace_text-layer { cursor: text; color: #8F938F;}.ace-pastel-on-dark .ace_cursor { border-left: 2px solid #A7A7A7;}.ace-pastel-on-dark .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #A7A7A7;}.ace-pastel-on-dark .ace_marker-layer .ace_selection { background: rgba(221, 240, 255, 0.20);}.ace-pastel-on-dark.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #2C2828; border-radius: 2px;}.ace-pastel-on-dark .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-pastel-on-dark .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid rgba(255, 255, 255, 0.25);}.ace-pastel-on-dark .ace_marker-layer .ace_active_line { background: rgba(255, 255, 255, 0.031);}.ace-pastel-on-dark .ace_marker-layer .ace_selected_word { border: 1px solid rgba(221, 240, 255, 0.20);}.ace-pastel-on-dark .ace_invisible { color: rgba(255, 255, 255, 0.25);}.ace-pastel-on-dark .ace_keyword, .ace-pastel-on-dark .ace_meta { color:#757aD8;}.ace-pastel-on-dark .ace_keyword.ace_operator { color:#797878;}.ace-pastel-on-dark .ace_constant, .ace-pastel-on-dark .ace_constant.ace_other { color:#4FB7C5;}.ace-pastel-on-dark .ace_constant.ace_character, { color:#4FB7C5;}.ace-pastel-on-dark .ace_constant.ace_character.ace_escape, { color:#4FB7C5;}.ace-pastel-on-dark .ace_constant.ace_language { color:#DE8E30;}.ace-pastel-on-dark .ace_constant.ace_numeric { color:#CCCCCC;}.ace-pastel-on-dark .ace_invalid { color:#F8F8F8;background-color:rgba(86, 45, 86, 0.75);}.ace-pastel-on-dark .ace_invalid.ace_illegal { color:#F8F8F8;background-color:rgba(86, 45, 86, 0.75);}.ace-pastel-on-dark .ace_invalid.ace_deprecated { text-decoration:underline;font-style:italic;color:#D2A8A1;}.ace-pastel-on-dark .ace_fold { background-color: #757aD8; border-color: #8F938F;}.ace-pastel-on-dark .ace_support.ace_function { color:#AEB2F8;}.ace-pastel-on-dark .ace_string { color:#66A968;}.ace-pastel-on-dark .ace_string.ace_regexp { color:#E9C062;}.ace-pastel-on-dark .ace_comment { color:#A6C6FF;}.ace-pastel-on-dark .ace_variable { color:#BEBF55;}.ace-pastel-on-dark .ace_variable.ace_language { color:#C1C144;}.ace-pastel-on-dark .ace_xml_pe { color:#494949;}.ace-pastel-on-dark .ace_markup.ace_underline { text-decoration:underline;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)}) \ No newline at end of file diff --git a/public/ace_editor/theme-pastel_on_dark-uncompressed-noconflict.js b/public/ace_editor/theme-pastel_on_dark-uncompressed-noconflict.js deleted file mode 100644 index 0ff0590..0000000 --- a/public/ace_editor/theme-pastel_on_dark-uncompressed-noconflict.js +++ /dev/null @@ -1,192 +0,0 @@ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla Public License Version - * 1.1 (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * http://www.mozilla.org/MPL/ - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - * - * The Original Code is Ajax.org Code Editor (ACE). - * - * The Initial Developer of the Original Code is - * Ajax.org B.V. - * Portions created by the Initial Developer are Copyright (C) 2010 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Fabian Jakobs - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -ace.define('ace/theme/pastel_on_dark', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { - -exports.isDark = true; -exports.cssClass = "ace-pastel-on-dark"; -exports.cssText = "\ -.ace-pastel-on-dark .ace_editor {\ - border: 2px solid rgb(159, 159, 159);\ -}\ -\ -.ace-pastel-on-dark .ace_editor.ace_focus {\ - border: 2px solid #327fbd;\ -}\ -\ -.ace-pastel-on-dark .ace_gutter {\ - background: #e8e8e8;\ - color: #333;\ -}\ -\ -.ace-pastel-on-dark .ace_print_margin {\ - width: 1px;\ - background: #e8e8e8;\ -}\ -\ -.ace-pastel-on-dark .ace_scroller {\ - background-color: #2C2828;\ -}\ -\ -.ace-pastel-on-dark .ace_text-layer {\ - cursor: text;\ - color: #8F938F;\ -}\ -\ -.ace-pastel-on-dark .ace_cursor {\ - border-left: 2px solid #A7A7A7;\ -}\ -\ -.ace-pastel-on-dark .ace_cursor.ace_overwrite {\ - border-left: 0px;\ - border-bottom: 1px solid #A7A7A7;\ -}\ -\ -.ace-pastel-on-dark .ace_marker-layer .ace_selection {\ - background: rgba(221, 240, 255, 0.20);\ -}\ -\ -.ace-pastel-on-dark.multiselect .ace_selection.start {\ - box-shadow: 0 0 3px 0px #2C2828;\ - border-radius: 2px;\ -}\ -\ -.ace-pastel-on-dark .ace_marker-layer .ace_step {\ - background: rgb(198, 219, 174);\ -}\ -\ -.ace-pastel-on-dark .ace_marker-layer .ace_bracket {\ - margin: -1px 0 0 -1px;\ - border: 1px solid rgba(255, 255, 255, 0.25);\ -}\ -\ -.ace-pastel-on-dark .ace_marker-layer .ace_active_line {\ - background: rgba(255, 255, 255, 0.031);\ -}\ -\ -.ace-pastel-on-dark .ace_marker-layer .ace_selected_word {\ - border: 1px solid rgba(221, 240, 255, 0.20);\ -}\ -\ -.ace-pastel-on-dark .ace_invisible {\ - color: rgba(255, 255, 255, 0.25);\ -}\ -\ -.ace-pastel-on-dark .ace_keyword, .ace-pastel-on-dark .ace_meta {\ - color:#757aD8;\ -}\ -\ -.ace-pastel-on-dark .ace_keyword.ace_operator {\ - color:#797878;\ -}\ -\ -.ace-pastel-on-dark .ace_constant, .ace-pastel-on-dark .ace_constant.ace_other {\ - color:#4FB7C5;\ -}\ -\ -.ace-pastel-on-dark .ace_constant.ace_character, {\ - color:#4FB7C5;\ -}\ -\ -.ace-pastel-on-dark .ace_constant.ace_character.ace_escape, {\ - color:#4FB7C5;\ -}\ -\ -.ace-pastel-on-dark .ace_constant.ace_language {\ - color:#DE8E30;\ -}\ -\ -.ace-pastel-on-dark .ace_constant.ace_numeric {\ - color:#CCCCCC;\ -}\ -\ -.ace-pastel-on-dark .ace_invalid {\ - color:#F8F8F8;\ -background-color:rgba(86, 45, 86, 0.75);\ -}\ -\ -.ace-pastel-on-dark .ace_invalid.ace_illegal {\ - color:#F8F8F8;\ -background-color:rgba(86, 45, 86, 0.75);\ -}\ -\ -.ace-pastel-on-dark .ace_invalid.ace_deprecated {\ - text-decoration:underline;\ -font-style:italic;\ -color:#D2A8A1;\ -}\ -\ -.ace-pastel-on-dark .ace_fold {\ - background-color: #757aD8;\ - border-color: #8F938F;\ -}\ -\ -.ace-pastel-on-dark .ace_support.ace_function {\ - color:#AEB2F8;\ -}\ -\ -.ace-pastel-on-dark .ace_string {\ - color:#66A968;\ -}\ -\ -.ace-pastel-on-dark .ace_string.ace_regexp {\ - color:#E9C062;\ -}\ -\ -.ace-pastel-on-dark .ace_comment {\ - color:#A6C6FF;\ -}\ -\ -.ace-pastel-on-dark .ace_variable {\ - color:#BEBF55;\ -}\ -\ -.ace-pastel-on-dark .ace_variable.ace_language {\ - color:#C1C144;\ -}\ -\ -.ace-pastel-on-dark .ace_xml_pe {\ - color:#494949;\ -}\ -\ -.ace-pastel-on-dark .ace_markup.ace_underline {\ - text-decoration:underline;\ -}"; - - var dom = require("../lib/dom"); - dom.importCssString(exports.cssText, exports.cssClass); -}); diff --git a/public/ace_editor/theme-pastel_on_dark-uncompressed.js b/public/ace_editor/theme-pastel_on_dark-uncompressed.js deleted file mode 100644 index 3ab1773..0000000 --- a/public/ace_editor/theme-pastel_on_dark-uncompressed.js +++ /dev/null @@ -1,192 +0,0 @@ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla Public License Version - * 1.1 (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * http://www.mozilla.org/MPL/ - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - * - * The Original Code is Ajax.org Code Editor (ACE). - * - * The Initial Developer of the Original Code is - * Ajax.org B.V. - * Portions created by the Initial Developer are Copyright (C) 2010 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Fabian Jakobs - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -define('ace/theme/pastel_on_dark', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { - -exports.isDark = true; -exports.cssClass = "ace-pastel-on-dark"; -exports.cssText = "\ -.ace-pastel-on-dark .ace_editor {\ - border: 2px solid rgb(159, 159, 159);\ -}\ -\ -.ace-pastel-on-dark .ace_editor.ace_focus {\ - border: 2px solid #327fbd;\ -}\ -\ -.ace-pastel-on-dark .ace_gutter {\ - background: #e8e8e8;\ - color: #333;\ -}\ -\ -.ace-pastel-on-dark .ace_print_margin {\ - width: 1px;\ - background: #e8e8e8;\ -}\ -\ -.ace-pastel-on-dark .ace_scroller {\ - background-color: #2C2828;\ -}\ -\ -.ace-pastel-on-dark .ace_text-layer {\ - cursor: text;\ - color: #8F938F;\ -}\ -\ -.ace-pastel-on-dark .ace_cursor {\ - border-left: 2px solid #A7A7A7;\ -}\ -\ -.ace-pastel-on-dark .ace_cursor.ace_overwrite {\ - border-left: 0px;\ - border-bottom: 1px solid #A7A7A7;\ -}\ -\ -.ace-pastel-on-dark .ace_marker-layer .ace_selection {\ - background: rgba(221, 240, 255, 0.20);\ -}\ -\ -.ace-pastel-on-dark.multiselect .ace_selection.start {\ - box-shadow: 0 0 3px 0px #2C2828;\ - border-radius: 2px;\ -}\ -\ -.ace-pastel-on-dark .ace_marker-layer .ace_step {\ - background: rgb(198, 219, 174);\ -}\ -\ -.ace-pastel-on-dark .ace_marker-layer .ace_bracket {\ - margin: -1px 0 0 -1px;\ - border: 1px solid rgba(255, 255, 255, 0.25);\ -}\ -\ -.ace-pastel-on-dark .ace_marker-layer .ace_active_line {\ - background: rgba(255, 255, 255, 0.031);\ -}\ -\ -.ace-pastel-on-dark .ace_marker-layer .ace_selected_word {\ - border: 1px solid rgba(221, 240, 255, 0.20);\ -}\ -\ -.ace-pastel-on-dark .ace_invisible {\ - color: rgba(255, 255, 255, 0.25);\ -}\ -\ -.ace-pastel-on-dark .ace_keyword, .ace-pastel-on-dark .ace_meta {\ - color:#757aD8;\ -}\ -\ -.ace-pastel-on-dark .ace_keyword.ace_operator {\ - color:#797878;\ -}\ -\ -.ace-pastel-on-dark .ace_constant, .ace-pastel-on-dark .ace_constant.ace_other {\ - color:#4FB7C5;\ -}\ -\ -.ace-pastel-on-dark .ace_constant.ace_character, {\ - color:#4FB7C5;\ -}\ -\ -.ace-pastel-on-dark .ace_constant.ace_character.ace_escape, {\ - color:#4FB7C5;\ -}\ -\ -.ace-pastel-on-dark .ace_constant.ace_language {\ - color:#DE8E30;\ -}\ -\ -.ace-pastel-on-dark .ace_constant.ace_numeric {\ - color:#CCCCCC;\ -}\ -\ -.ace-pastel-on-dark .ace_invalid {\ - color:#F8F8F8;\ -background-color:rgba(86, 45, 86, 0.75);\ -}\ -\ -.ace-pastel-on-dark .ace_invalid.ace_illegal {\ - color:#F8F8F8;\ -background-color:rgba(86, 45, 86, 0.75);\ -}\ -\ -.ace-pastel-on-dark .ace_invalid.ace_deprecated {\ - text-decoration:underline;\ -font-style:italic;\ -color:#D2A8A1;\ -}\ -\ -.ace-pastel-on-dark .ace_fold {\ - background-color: #757aD8;\ - border-color: #8F938F;\ -}\ -\ -.ace-pastel-on-dark .ace_support.ace_function {\ - color:#AEB2F8;\ -}\ -\ -.ace-pastel-on-dark .ace_string {\ - color:#66A968;\ -}\ -\ -.ace-pastel-on-dark .ace_string.ace_regexp {\ - color:#E9C062;\ -}\ -\ -.ace-pastel-on-dark .ace_comment {\ - color:#A6C6FF;\ -}\ -\ -.ace-pastel-on-dark .ace_variable {\ - color:#BEBF55;\ -}\ -\ -.ace-pastel-on-dark .ace_variable.ace_language {\ - color:#C1C144;\ -}\ -\ -.ace-pastel-on-dark .ace_xml_pe {\ - color:#494949;\ -}\ -\ -.ace-pastel-on-dark .ace_markup.ace_underline {\ - text-decoration:underline;\ -}"; - - var dom = require("../lib/dom"); - dom.importCssString(exports.cssText, exports.cssClass); -}); diff --git a/public/ace_editor/theme-pastel_on_dark.js b/public/ace_editor/theme-pastel_on_dark.js old mode 100644 new mode 100755 index 6748e29..73a871b --- a/public/ace_editor/theme-pastel_on_dark.js +++ b/public/ace_editor/theme-pastel_on_dark.js @@ -1 +1,139 @@ -define("ace/theme/pastel_on_dark",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!0,b.cssClass="ace-pastel-on-dark",b.cssText=".ace-pastel-on-dark .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-pastel-on-dark .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-pastel-on-dark .ace_gutter { background: #e8e8e8; color: #333;}.ace-pastel-on-dark .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-pastel-on-dark .ace_scroller { background-color: #2C2828;}.ace-pastel-on-dark .ace_text-layer { cursor: text; color: #8F938F;}.ace-pastel-on-dark .ace_cursor { border-left: 2px solid #A7A7A7;}.ace-pastel-on-dark .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #A7A7A7;}.ace-pastel-on-dark .ace_marker-layer .ace_selection { background: rgba(221, 240, 255, 0.20);}.ace-pastel-on-dark.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #2C2828; border-radius: 2px;}.ace-pastel-on-dark .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-pastel-on-dark .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid rgba(255, 255, 255, 0.25);}.ace-pastel-on-dark .ace_marker-layer .ace_active_line { background: rgba(255, 255, 255, 0.031);}.ace-pastel-on-dark .ace_marker-layer .ace_selected_word { border: 1px solid rgba(221, 240, 255, 0.20);}.ace-pastel-on-dark .ace_invisible { color: rgba(255, 255, 255, 0.25);}.ace-pastel-on-dark .ace_keyword, .ace-pastel-on-dark .ace_meta { color:#757aD8;}.ace-pastel-on-dark .ace_keyword.ace_operator { color:#797878;}.ace-pastel-on-dark .ace_constant, .ace-pastel-on-dark .ace_constant.ace_other { color:#4FB7C5;}.ace-pastel-on-dark .ace_constant.ace_character, { color:#4FB7C5;}.ace-pastel-on-dark .ace_constant.ace_character.ace_escape, { color:#4FB7C5;}.ace-pastel-on-dark .ace_constant.ace_language { color:#DE8E30;}.ace-pastel-on-dark .ace_constant.ace_numeric { color:#CCCCCC;}.ace-pastel-on-dark .ace_invalid { color:#F8F8F8;background-color:rgba(86, 45, 86, 0.75);}.ace-pastel-on-dark .ace_invalid.ace_illegal { color:#F8F8F8;background-color:rgba(86, 45, 86, 0.75);}.ace-pastel-on-dark .ace_invalid.ace_deprecated { text-decoration:underline;font-style:italic;color:#D2A8A1;}.ace-pastel-on-dark .ace_fold { background-color: #757aD8; border-color: #8F938F;}.ace-pastel-on-dark .ace_support.ace_function { color:#AEB2F8;}.ace-pastel-on-dark .ace_string { color:#66A968;}.ace-pastel-on-dark .ace_string.ace_regexp { color:#E9C062;}.ace-pastel-on-dark .ace_comment { color:#A6C6FF;}.ace-pastel-on-dark .ace_variable { color:#BEBF55;}.ace-pastel-on-dark .ace_variable.ace_language { color:#C1C144;}.ace-pastel-on-dark .ace_xml_pe { color:#494949;}.ace-pastel-on-dark .ace_markup.ace_underline { text-decoration:underline;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)}) \ No newline at end of file +/* ***** BEGIN LICENSE BLOCK ***** + * Distributed under the BSD license: + * + * Copyright (c) 2010, Ajax.org B.V. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Ajax.org B.V. nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL AJAX.ORG B.V. BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * ***** END LICENSE BLOCK ***** */ + +ace.define('ace/theme/pastel_on_dark', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { + +exports.isDark = true; +exports.cssClass = "ace-pastel-on-dark"; +exports.cssText = ".ace-pastel-on-dark .ace_gutter {\ +background: #353030;\ +color: #8F938F\ +}\ +.ace-pastel-on-dark .ace_print-margin {\ +width: 1px;\ +background: #353030\ +}\ +.ace-pastel-on-dark {\ +background-color: #2C2828;\ +color: #8F938F\ +}\ +.ace-pastel-on-dark .ace_cursor {\ +color: #A7A7A7\ +}\ +.ace-pastel-on-dark .ace_marker-layer .ace_selection {\ +background: rgba(221, 240, 255, 0.20)\ +}\ +.ace-pastel-on-dark.ace_multiselect .ace_selection.ace_start {\ +box-shadow: 0 0 3px 0px #2C2828;\ +border-radius: 2px\ +}\ +.ace-pastel-on-dark .ace_marker-layer .ace_step {\ +background: rgb(102, 82, 0)\ +}\ +.ace-pastel-on-dark .ace_marker-layer .ace_bracket {\ +margin: -1px 0 0 -1px;\ +border: 1px solid rgba(255, 255, 255, 0.25)\ +}\ +.ace-pastel-on-dark .ace_marker-layer .ace_active-line {\ +background: rgba(255, 255, 255, 0.031)\ +}\ +.ace-pastel-on-dark .ace_gutter-active-line {\ +background-color: rgba(255, 255, 255, 0.031)\ +}\ +.ace-pastel-on-dark .ace_marker-layer .ace_selected-word {\ +border: 1px solid rgba(221, 240, 255, 0.20)\ +}\ +.ace-pastel-on-dark .ace_invisible {\ +color: rgba(255, 255, 255, 0.25)\ +}\ +.ace-pastel-on-dark .ace_keyword,\ +.ace-pastel-on-dark .ace_meta {\ +color: #757aD8\ +}\ +.ace-pastel-on-dark .ace_constant,\ +.ace-pastel-on-dark .ace_constant.ace_character,\ +.ace-pastel-on-dark .ace_constant.ace_character.ace_escape,\ +.ace-pastel-on-dark .ace_constant.ace_other {\ +color: #4FB7C5\ +}\ +.ace-pastel-on-dark .ace_keyword.ace_operator {\ +color: #797878\ +}\ +.ace-pastel-on-dark .ace_constant.ace_character {\ +color: #AFA472\ +}\ +.ace-pastel-on-dark .ace_constant.ace_language {\ +color: #DE8E30\ +}\ +.ace-pastel-on-dark .ace_constant.ace_numeric {\ +color: #CCCCCC\ +}\ +.ace-pastel-on-dark .ace_invalid,\ +.ace-pastel-on-dark .ace_invalid.ace_illegal {\ +color: #F8F8F8;\ +background-color: rgba(86, 45, 86, 0.75)\ +}\ +.ace-pastel-on-dark .ace_invalid.ace_deprecated {\ +text-decoration: underline;\ +font-style: italic;\ +color: #D2A8A1\ +}\ +.ace-pastel-on-dark .ace_fold {\ +background-color: #757aD8;\ +border-color: #8F938F\ +}\ +.ace-pastel-on-dark .ace_support.ace_function {\ +color: #AEB2F8\ +}\ +.ace-pastel-on-dark .ace_string {\ +color: #66A968\ +}\ +.ace-pastel-on-dark .ace_string.ace_regexp {\ +color: #E9C062\ +}\ +.ace-pastel-on-dark .ace_comment {\ +color: #A6C6FF\ +}\ +.ace-pastel-on-dark .ace_variable {\ +color: #BEBF55\ +}\ +.ace-pastel-on-dark .ace_variable.ace_language {\ +color: #C1C144\ +}\ +.ace-pastel-on-dark .ace_xml-pe {\ +color: #494949\ +}\ +.ace-pastel-on-dark .ace_indent-guide {\ +background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAEklEQVQImWNgYGBgYIiPj/8PAARgAh2NTMh8AAAAAElFTkSuQmCC) right repeat-y\ +}"; + +var dom = require("../lib/dom"); +dom.importCssString(exports.cssText, exports.cssClass); +}); diff --git a/public/ace_editor/theme-solarized_dark-noconflict.js b/public/ace_editor/theme-solarized_dark-noconflict.js deleted file mode 100644 index 96b23b1..0000000 --- a/public/ace_editor/theme-solarized_dark-noconflict.js +++ /dev/null @@ -1 +0,0 @@ -ace.define("ace/theme/solarized_dark",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!0,b.cssClass="ace-solarized-dark",b.cssText=".ace-solarized-dark .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-solarized-dark .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-solarized-dark .ace_gutter { background: #09222b; color: #d0edf7;}.ace-solarized-dark .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-solarized-dark .ace_scroller { background-color: #002B36;}.ace-solarized-dark .ace_text-layer { cursor: text; color: #93A1A1;}.ace-solarized-dark .ace_cursor { border-left: 2px solid #D30102;}.ace-solarized-dark .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #D30102;}.ace-solarized-dark .ace_marker-layer .ace_selection { background: #073642;}.ace-solarized-dark.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #002B36; border-radius: 2px;}.ace-solarized-dark .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-solarized-dark .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid rgba(147, 161, 161, 0.50);}.ace-solarized-dark .ace_marker-layer .ace_active_line { background: #073642;}.ace-solarized-dark .ace_gutter_active_line{ background: #0d3440;}.ace-solarized-dark .ace_marker-layer .ace_selected_word { border: 1px solid #073642;}.ace-solarized-dark .ace_invisible { color: rgba(147, 161, 161, 0.50);}.ace-solarized-dark .ace_keyword, .ace-solarized-dark .ace_meta { color:#859900;}.ace-solarized-dark .ace_constant.ace_language { color:#B58900;}.ace-solarized-dark .ace_constant.ace_numeric { color:#D33682;}.ace-solarized-dark .ace_constant.ace_other { color:#CB4B16;}.ace-solarized-dark .ace_fold { background-color: #268BD2; border-color: #93A1A1;}.ace-solarized-dark .ace_support.ace_function { color:#268BD2;}.ace-solarized-dark .ace_storage { color:#93A1A1;}.ace-solarized-dark .ace_variable { color:#268BD2;}.ace-solarized-dark .ace_string { color:#2AA198;}.ace-solarized-dark .ace_string.ace_regexp { color:#D30102;}.ace-solarized-dark .ace_comment { font-style:italic;color:#657B83;}.ace-solarized-dark .ace_variable.ace_language { color:#268BD2;}.ace-solarized-dark .ace_entity.ace_other.ace_attribute-name { color:#93A1A1;}.ace-solarized-dark .ace_entity.ace_name.ace_function { color:#268BD2;}.ace-solarized-dark .ace_markup.ace_underline { text-decoration:underline;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)}) \ No newline at end of file diff --git a/public/ace_editor/theme-solarized_dark-uncompressed-noconflict.js b/public/ace_editor/theme-solarized_dark-uncompressed-noconflict.js deleted file mode 100644 index 9b6eb69..0000000 --- a/public/ace_editor/theme-solarized_dark-uncompressed-noconflict.js +++ /dev/null @@ -1,176 +0,0 @@ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla Public License Version - * 1.1 (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * http://www.mozilla.org/MPL/ - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - * - * The Original Code is Ajax.org Code Editor (ACE). - * - * The Initial Developer of the Original Code is - * Ajax.org B.V. - * Portions created by the Initial Developer are Copyright (C) 2010 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Fabian Jakobs - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -ace.define('ace/theme/solarized_dark', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { - -exports.isDark = true; -exports.cssClass = "ace-solarized-dark"; -exports.cssText = "\ -.ace-solarized-dark .ace_editor {\ - border: 2px solid rgb(159, 159, 159);\ -}\ -\ -.ace-solarized-dark .ace_editor.ace_focus {\ - border: 2px solid #327fbd;\ -}\ -\ -.ace-solarized-dark .ace_gutter {\ - background: #09222b;\ - color: #d0edf7;\ -}\ -\ -.ace-solarized-dark .ace_print_margin {\ - width: 1px;\ - background: #e8e8e8;\ -}\ -\ -.ace-solarized-dark .ace_scroller {\ - background-color: #002B36;\ -}\ -\ -.ace-solarized-dark .ace_text-layer {\ - cursor: text;\ - color: #93A1A1;\ -}\ -\ -.ace-solarized-dark .ace_cursor {\ - border-left: 2px solid #D30102;\ -}\ -\ -.ace-solarized-dark .ace_cursor.ace_overwrite {\ - border-left: 0px;\ - border-bottom: 1px solid #D30102;\ -}\ -\ -.ace-solarized-dark .ace_marker-layer .ace_selection {\ - background: #073642;\ -}\ -\ -.ace-solarized-dark.multiselect .ace_selection.start {\ - box-shadow: 0 0 3px 0px #002B36;\ - border-radius: 2px;\ -}\ -\ -.ace-solarized-dark .ace_marker-layer .ace_step {\ - background: rgb(198, 219, 174);\ -}\ -\ -.ace-solarized-dark .ace_marker-layer .ace_bracket {\ - margin: -1px 0 0 -1px;\ - border: 1px solid rgba(147, 161, 161, 0.50);\ -}\ -\ -.ace-solarized-dark .ace_marker-layer .ace_active_line {\ - background: #073642;\ -}\ -.ace-solarized-dark .ace_gutter_active_line{\ - background: #0d3440;\ -}\ -\ -.ace-solarized-dark .ace_marker-layer .ace_selected_word {\ - border: 1px solid #073642;\ -}\ -\ -.ace-solarized-dark .ace_invisible {\ - color: rgba(147, 161, 161, 0.50);\ -}\ -\ -.ace-solarized-dark .ace_keyword, .ace-solarized-dark .ace_meta {\ - color:#859900;\ -}\ -\ -.ace-solarized-dark .ace_constant.ace_language {\ - color:#B58900;\ -}\ -\ -.ace-solarized-dark .ace_constant.ace_numeric {\ - color:#D33682;\ -}\ -\ -.ace-solarized-dark .ace_constant.ace_other {\ - color:#CB4B16;\ -}\ -\ -.ace-solarized-dark .ace_fold {\ - background-color: #268BD2;\ - border-color: #93A1A1;\ -}\ -\ -.ace-solarized-dark .ace_support.ace_function {\ - color:#268BD2;\ -}\ -\ -.ace-solarized-dark .ace_storage {\ - color:#93A1A1;\ -}\ -\ -.ace-solarized-dark .ace_variable {\ - color:#268BD2;\ -}\ -\ -.ace-solarized-dark .ace_string {\ - color:#2AA198;\ -}\ -\ -.ace-solarized-dark .ace_string.ace_regexp {\ - color:#D30102;\ -}\ -\ -.ace-solarized-dark .ace_comment {\ - font-style:italic;\ -color:#657B83;\ -}\ -\ -.ace-solarized-dark .ace_variable.ace_language {\ - color:#268BD2;\ -}\ -\ -.ace-solarized-dark .ace_entity.ace_other.ace_attribute-name {\ - color:#93A1A1;\ -}\ -\ -.ace-solarized-dark .ace_entity.ace_name.ace_function {\ - color:#268BD2;\ -}\ -\ -.ace-solarized-dark .ace_markup.ace_underline {\ - text-decoration:underline;\ -}"; - - var dom = require("../lib/dom"); - dom.importCssString(exports.cssText, exports.cssClass); -}); diff --git a/public/ace_editor/theme-solarized_dark-uncompressed.js b/public/ace_editor/theme-solarized_dark-uncompressed.js deleted file mode 100644 index f96e08e..0000000 --- a/public/ace_editor/theme-solarized_dark-uncompressed.js +++ /dev/null @@ -1,176 +0,0 @@ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla Public License Version - * 1.1 (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * http://www.mozilla.org/MPL/ - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - * - * The Original Code is Ajax.org Code Editor (ACE). - * - * The Initial Developer of the Original Code is - * Ajax.org B.V. - * Portions created by the Initial Developer are Copyright (C) 2010 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Fabian Jakobs - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -define('ace/theme/solarized_dark', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { - -exports.isDark = true; -exports.cssClass = "ace-solarized-dark"; -exports.cssText = "\ -.ace-solarized-dark .ace_editor {\ - border: 2px solid rgb(159, 159, 159);\ -}\ -\ -.ace-solarized-dark .ace_editor.ace_focus {\ - border: 2px solid #327fbd;\ -}\ -\ -.ace-solarized-dark .ace_gutter {\ - background: #09222b;\ - color: #d0edf7;\ -}\ -\ -.ace-solarized-dark .ace_print_margin {\ - width: 1px;\ - background: #e8e8e8;\ -}\ -\ -.ace-solarized-dark .ace_scroller {\ - background-color: #002B36;\ -}\ -\ -.ace-solarized-dark .ace_text-layer {\ - cursor: text;\ - color: #93A1A1;\ -}\ -\ -.ace-solarized-dark .ace_cursor {\ - border-left: 2px solid #D30102;\ -}\ -\ -.ace-solarized-dark .ace_cursor.ace_overwrite {\ - border-left: 0px;\ - border-bottom: 1px solid #D30102;\ -}\ -\ -.ace-solarized-dark .ace_marker-layer .ace_selection {\ - background: #073642;\ -}\ -\ -.ace-solarized-dark.multiselect .ace_selection.start {\ - box-shadow: 0 0 3px 0px #002B36;\ - border-radius: 2px;\ -}\ -\ -.ace-solarized-dark .ace_marker-layer .ace_step {\ - background: rgb(198, 219, 174);\ -}\ -\ -.ace-solarized-dark .ace_marker-layer .ace_bracket {\ - margin: -1px 0 0 -1px;\ - border: 1px solid rgba(147, 161, 161, 0.50);\ -}\ -\ -.ace-solarized-dark .ace_marker-layer .ace_active_line {\ - background: #073642;\ -}\ -.ace-solarized-dark .ace_gutter_active_line{\ - background: #0d3440;\ -}\ -\ -.ace-solarized-dark .ace_marker-layer .ace_selected_word {\ - border: 1px solid #073642;\ -}\ -\ -.ace-solarized-dark .ace_invisible {\ - color: rgba(147, 161, 161, 0.50);\ -}\ -\ -.ace-solarized-dark .ace_keyword, .ace-solarized-dark .ace_meta {\ - color:#859900;\ -}\ -\ -.ace-solarized-dark .ace_constant.ace_language {\ - color:#B58900;\ -}\ -\ -.ace-solarized-dark .ace_constant.ace_numeric {\ - color:#D33682;\ -}\ -\ -.ace-solarized-dark .ace_constant.ace_other {\ - color:#CB4B16;\ -}\ -\ -.ace-solarized-dark .ace_fold {\ - background-color: #268BD2;\ - border-color: #93A1A1;\ -}\ -\ -.ace-solarized-dark .ace_support.ace_function {\ - color:#268BD2;\ -}\ -\ -.ace-solarized-dark .ace_storage {\ - color:#93A1A1;\ -}\ -\ -.ace-solarized-dark .ace_variable {\ - color:#268BD2;\ -}\ -\ -.ace-solarized-dark .ace_string {\ - color:#2AA198;\ -}\ -\ -.ace-solarized-dark .ace_string.ace_regexp {\ - color:#D30102;\ -}\ -\ -.ace-solarized-dark .ace_comment {\ - font-style:italic;\ -color:#657B83;\ -}\ -\ -.ace-solarized-dark .ace_variable.ace_language {\ - color:#268BD2;\ -}\ -\ -.ace-solarized-dark .ace_entity.ace_other.ace_attribute-name {\ - color:#93A1A1;\ -}\ -\ -.ace-solarized-dark .ace_entity.ace_name.ace_function {\ - color:#268BD2;\ -}\ -\ -.ace-solarized-dark .ace_markup.ace_underline {\ - text-decoration:underline;\ -}"; - - var dom = require("../lib/dom"); - dom.importCssString(exports.cssText, exports.cssClass); -}); diff --git a/public/ace_editor/theme-solarized_dark.js b/public/ace_editor/theme-solarized_dark.js old mode 100644 new mode 100755 index 5d266f6..693d171 --- a/public/ace_editor/theme-solarized_dark.js +++ b/public/ace_editor/theme-solarized_dark.js @@ -1 +1,119 @@ -define("ace/theme/solarized_dark",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!0,b.cssClass="ace-solarized-dark",b.cssText=".ace-solarized-dark .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-solarized-dark .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-solarized-dark .ace_gutter { background: #09222b; color: #d0edf7;}.ace-solarized-dark .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-solarized-dark .ace_scroller { background-color: #002B36;}.ace-solarized-dark .ace_text-layer { cursor: text; color: #93A1A1;}.ace-solarized-dark .ace_cursor { border-left: 2px solid #D30102;}.ace-solarized-dark .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #D30102;}.ace-solarized-dark .ace_marker-layer .ace_selection { background: #073642;}.ace-solarized-dark.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #002B36; border-radius: 2px;}.ace-solarized-dark .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-solarized-dark .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid rgba(147, 161, 161, 0.50);}.ace-solarized-dark .ace_marker-layer .ace_active_line { background: #073642;}.ace-solarized-dark .ace_gutter_active_line{ background: #0d3440;}.ace-solarized-dark .ace_marker-layer .ace_selected_word { border: 1px solid #073642;}.ace-solarized-dark .ace_invisible { color: rgba(147, 161, 161, 0.50);}.ace-solarized-dark .ace_keyword, .ace-solarized-dark .ace_meta { color:#859900;}.ace-solarized-dark .ace_constant.ace_language { color:#B58900;}.ace-solarized-dark .ace_constant.ace_numeric { color:#D33682;}.ace-solarized-dark .ace_constant.ace_other { color:#CB4B16;}.ace-solarized-dark .ace_fold { background-color: #268BD2; border-color: #93A1A1;}.ace-solarized-dark .ace_support.ace_function { color:#268BD2;}.ace-solarized-dark .ace_storage { color:#93A1A1;}.ace-solarized-dark .ace_variable { color:#268BD2;}.ace-solarized-dark .ace_string { color:#2AA198;}.ace-solarized-dark .ace_string.ace_regexp { color:#D30102;}.ace-solarized-dark .ace_comment { font-style:italic;color:#657B83;}.ace-solarized-dark .ace_variable.ace_language { color:#268BD2;}.ace-solarized-dark .ace_entity.ace_other.ace_attribute-name { color:#93A1A1;}.ace-solarized-dark .ace_entity.ace_name.ace_function { color:#268BD2;}.ace-solarized-dark .ace_markup.ace_underline { text-decoration:underline;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)}) \ No newline at end of file +/* ***** BEGIN LICENSE BLOCK ***** + * Distributed under the BSD license: + * + * Copyright (c) 2010, Ajax.org B.V. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Ajax.org B.V. nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL AJAX.ORG B.V. BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * ***** END LICENSE BLOCK ***** */ + +ace.define('ace/theme/solarized_dark', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { + +exports.isDark = true; +exports.cssClass = "ace-solarized-dark"; +exports.cssText = ".ace-solarized-dark .ace_gutter {\ +background: #01313f;\ +color: #d0edf7\ +}\ +.ace-solarized-dark .ace_print-margin {\ +width: 1px;\ +background: #33555E\ +}\ +.ace-solarized-dark {\ +background-color: #002B36;\ +color: #93A1A1\ +}\ +.ace-solarized-dark .ace_entity.ace_other.ace_attribute-name,\ +.ace-solarized-dark .ace_storage {\ +color: #93A1A1\ +}\ +.ace-solarized-dark .ace_cursor,\ +.ace-solarized-dark .ace_string.ace_regexp {\ +color: #D30102\ +}\ +.ace-solarized-dark .ace_marker-layer .ace_active-line,\ +.ace-solarized-dark .ace_marker-layer .ace_selection {\ +background: rgba(255, 255, 255, 0.1)\ +}\ +.ace-solarized-dark.ace_multiselect .ace_selection.ace_start {\ +box-shadow: 0 0 3px 0px #002B36;\ +border-radius: 2px\ +}\ +.ace-solarized-dark .ace_marker-layer .ace_step {\ +background: rgb(102, 82, 0)\ +}\ +.ace-solarized-dark .ace_marker-layer .ace_bracket {\ +margin: -1px 0 0 -1px;\ +border: 1px solid rgba(147, 161, 161, 0.50)\ +}\ +.ace-solarized-dark .ace_gutter-active-line {\ +background-color: #0d3440\ +}\ +.ace-solarized-dark .ace_marker-layer .ace_selected-word {\ +border: 1px solid #073642\ +}\ +.ace-solarized-dark .ace_invisible {\ +color: rgba(147, 161, 161, 0.50)\ +}\ +.ace-solarized-dark .ace_keyword,\ +.ace-solarized-dark .ace_meta,\ +.ace-solarized-dark .ace_support.ace_class,\ +.ace-solarized-dark .ace_support.ace_type {\ +color: #859900\ +}\ +.ace-solarized-dark .ace_constant.ace_character,\ +.ace-solarized-dark .ace_constant.ace_other {\ +color: #CB4B16\ +}\ +.ace-solarized-dark .ace_constant.ace_language {\ +color: #B58900\ +}\ +.ace-solarized-dark .ace_constant.ace_numeric {\ +color: #D33682\ +}\ +.ace-solarized-dark .ace_fold {\ +background-color: #268BD2;\ +border-color: #93A1A1\ +}\ +.ace-solarized-dark .ace_entity.ace_name.ace_function,\ +.ace-solarized-dark .ace_entity.ace_name.ace_tag,\ +.ace-solarized-dark .ace_support.ace_function,\ +.ace-solarized-dark .ace_variable,\ +.ace-solarized-dark .ace_variable.ace_language {\ +color: #268BD2\ +}\ +.ace-solarized-dark .ace_string {\ +color: #2AA198\ +}\ +.ace-solarized-dark .ace_comment {\ +font-style: italic;\ +color: #657B83\ +}\ +.ace-solarized-dark .ace_indent-guide {\ +background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAEklEQVQImWNg0Db1ZVCxc/sPAAd4AlUHlLenAAAAAElFTkSuQmCC) right repeat-y\ +}"; + +var dom = require("../lib/dom"); +dom.importCssString(exports.cssText, exports.cssClass); +}); diff --git a/public/ace_editor/theme-solarized_light-noconflict.js b/public/ace_editor/theme-solarized_light-noconflict.js deleted file mode 100644 index f262846..0000000 --- a/public/ace_editor/theme-solarized_light-noconflict.js +++ /dev/null @@ -1 +0,0 @@ -ace.define("ace/theme/solarized_light",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!1,b.cssClass="ace-solarized-light",b.cssText=".ace-solarized-light .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-solarized-light .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-solarized-light .ace_gutter { background: #e8e8e8; color: #333;}.ace-solarized-light .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-solarized-light .ace_scroller { background-color: #FDF6E3;}.ace-solarized-light .ace_text-layer { cursor: text; color: #586E75;}.ace-solarized-light .ace_cursor { border-left: 2px solid #000000;}.ace-solarized-light .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #000000;}.ace-solarized-light .ace_marker-layer .ace_selection { background: #073642;}.ace-solarized-light.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #FDF6E3; border-radius: 2px;}.ace-solarized-light .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-solarized-light .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid rgba(147, 161, 161, 0.50);}.ace-solarized-light .ace_marker-layer .ace_active_line { background: #EEE8D5;}.ace-solarized-light .ace_marker-layer .ace_selected_word { border: 1px solid #073642;}.ace-solarized-light .ace_invisible { color: rgba(147, 161, 161, 0.50);}.ace-solarized-light .ace_keyword, .ace-solarized-light .ace_meta { color:#859900;}.ace-solarized-light .ace_constant.ace_language { color:#B58900;}.ace-solarized-light .ace_constant.ace_numeric { color:#D33682;}.ace-solarized-light .ace_constant.ace_other { color:#CB4B16;}.ace-solarized-light .ace_fold { background-color: #268BD2; border-color: #586E75;}.ace-solarized-light .ace_support.ace_function { color:#268BD2;}.ace-solarized-light .ace_storage { color:#073642;}.ace-solarized-light .ace_variable { color:#268BD2;}.ace-solarized-light .ace_string { color:#2AA198;}.ace-solarized-light .ace_string.ace_regexp { color:#D30102;}.ace-solarized-light .ace_comment { color:#93A1A1;}.ace-solarized-light .ace_variable.ace_language { color:#268BD2;}.ace-solarized-light .ace_entity.ace_other.ace_attribute-name { color:#93A1A1;}.ace-solarized-light .ace_entity.ace_name.ace_function { color:#268BD2;}.ace-solarized-light .ace_markup.ace_underline { text-decoration:underline;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)}) \ No newline at end of file diff --git a/public/ace_editor/theme-solarized_light-uncompressed-noconflict.js b/public/ace_editor/theme-solarized_light-uncompressed-noconflict.js deleted file mode 100644 index 910e9f4..0000000 --- a/public/ace_editor/theme-solarized_light-uncompressed-noconflict.js +++ /dev/null @@ -1,172 +0,0 @@ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla Public License Version - * 1.1 (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * http://www.mozilla.org/MPL/ - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - * - * The Original Code is Ajax.org Code Editor (ACE). - * - * The Initial Developer of the Original Code is - * Ajax.org B.V. - * Portions created by the Initial Developer are Copyright (C) 2010 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Fabian Jakobs - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -ace.define('ace/theme/solarized_light', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { - -exports.isDark = false; -exports.cssClass = "ace-solarized-light"; -exports.cssText = "\ -.ace-solarized-light .ace_editor {\ - border: 2px solid rgb(159, 159, 159);\ -}\ -\ -.ace-solarized-light .ace_editor.ace_focus {\ - border: 2px solid #327fbd;\ -}\ -\ -.ace-solarized-light .ace_gutter {\ - background: #e8e8e8;\ - color: #333;\ -}\ -\ -.ace-solarized-light .ace_print_margin {\ - width: 1px;\ - background: #e8e8e8;\ -}\ -\ -.ace-solarized-light .ace_scroller {\ - background-color: #FDF6E3;\ -}\ -\ -.ace-solarized-light .ace_text-layer {\ - cursor: text;\ - color: #586E75;\ -}\ -\ -.ace-solarized-light .ace_cursor {\ - border-left: 2px solid #000000;\ -}\ -\ -.ace-solarized-light .ace_cursor.ace_overwrite {\ - border-left: 0px;\ - border-bottom: 1px solid #000000;\ -}\ -\ -.ace-solarized-light .ace_marker-layer .ace_selection {\ - background: #073642;\ -}\ -\ -.ace-solarized-light.multiselect .ace_selection.start {\ - box-shadow: 0 0 3px 0px #FDF6E3;\ - border-radius: 2px;\ -}\ -\ -.ace-solarized-light .ace_marker-layer .ace_step {\ - background: rgb(198, 219, 174);\ -}\ -\ -.ace-solarized-light .ace_marker-layer .ace_bracket {\ - margin: -1px 0 0 -1px;\ - border: 1px solid rgba(147, 161, 161, 0.50);\ -}\ -\ -.ace-solarized-light .ace_marker-layer .ace_active_line {\ - background: #EEE8D5;\ -}\ -\ -.ace-solarized-light .ace_marker-layer .ace_selected_word {\ - border: 1px solid #073642;\ -}\ -\ -.ace-solarized-light .ace_invisible {\ - color: rgba(147, 161, 161, 0.50);\ -}\ -\ -.ace-solarized-light .ace_keyword, .ace-solarized-light .ace_meta {\ - color:#859900;\ -}\ -\ -.ace-solarized-light .ace_constant.ace_language {\ - color:#B58900;\ -}\ -\ -.ace-solarized-light .ace_constant.ace_numeric {\ - color:#D33682;\ -}\ -\ -.ace-solarized-light .ace_constant.ace_other {\ - color:#CB4B16;\ -}\ -\ -.ace-solarized-light .ace_fold {\ - background-color: #268BD2;\ - border-color: #586E75;\ -}\ -\ -.ace-solarized-light .ace_support.ace_function {\ - color:#268BD2;\ -}\ -\ -.ace-solarized-light .ace_storage {\ - color:#073642;\ -}\ -\ -.ace-solarized-light .ace_variable {\ - color:#268BD2;\ -}\ -\ -.ace-solarized-light .ace_string {\ - color:#2AA198;\ -}\ -\ -.ace-solarized-light .ace_string.ace_regexp {\ - color:#D30102;\ -}\ -\ -.ace-solarized-light .ace_comment {\ - color:#93A1A1;\ -}\ -\ -.ace-solarized-light .ace_variable.ace_language {\ - color:#268BD2;\ -}\ -\ -.ace-solarized-light .ace_entity.ace_other.ace_attribute-name {\ - color:#93A1A1;\ -}\ -\ -.ace-solarized-light .ace_entity.ace_name.ace_function {\ - color:#268BD2;\ -}\ -\ -.ace-solarized-light .ace_markup.ace_underline {\ - text-decoration:underline;\ -}"; - - var dom = require("../lib/dom"); - dom.importCssString(exports.cssText, exports.cssClass); -}); diff --git a/public/ace_editor/theme-solarized_light-uncompressed.js b/public/ace_editor/theme-solarized_light-uncompressed.js deleted file mode 100644 index f94a799..0000000 --- a/public/ace_editor/theme-solarized_light-uncompressed.js +++ /dev/null @@ -1,172 +0,0 @@ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla Public License Version - * 1.1 (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * http://www.mozilla.org/MPL/ - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - * - * The Original Code is Ajax.org Code Editor (ACE). - * - * The Initial Developer of the Original Code is - * Ajax.org B.V. - * Portions created by the Initial Developer are Copyright (C) 2010 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Fabian Jakobs - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -define('ace/theme/solarized_light', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { - -exports.isDark = false; -exports.cssClass = "ace-solarized-light"; -exports.cssText = "\ -.ace-solarized-light .ace_editor {\ - border: 2px solid rgb(159, 159, 159);\ -}\ -\ -.ace-solarized-light .ace_editor.ace_focus {\ - border: 2px solid #327fbd;\ -}\ -\ -.ace-solarized-light .ace_gutter {\ - background: #e8e8e8;\ - color: #333;\ -}\ -\ -.ace-solarized-light .ace_print_margin {\ - width: 1px;\ - background: #e8e8e8;\ -}\ -\ -.ace-solarized-light .ace_scroller {\ - background-color: #FDF6E3;\ -}\ -\ -.ace-solarized-light .ace_text-layer {\ - cursor: text;\ - color: #586E75;\ -}\ -\ -.ace-solarized-light .ace_cursor {\ - border-left: 2px solid #000000;\ -}\ -\ -.ace-solarized-light .ace_cursor.ace_overwrite {\ - border-left: 0px;\ - border-bottom: 1px solid #000000;\ -}\ -\ -.ace-solarized-light .ace_marker-layer .ace_selection {\ - background: #073642;\ -}\ -\ -.ace-solarized-light.multiselect .ace_selection.start {\ - box-shadow: 0 0 3px 0px #FDF6E3;\ - border-radius: 2px;\ -}\ -\ -.ace-solarized-light .ace_marker-layer .ace_step {\ - background: rgb(198, 219, 174);\ -}\ -\ -.ace-solarized-light .ace_marker-layer .ace_bracket {\ - margin: -1px 0 0 -1px;\ - border: 1px solid rgba(147, 161, 161, 0.50);\ -}\ -\ -.ace-solarized-light .ace_marker-layer .ace_active_line {\ - background: #EEE8D5;\ -}\ -\ -.ace-solarized-light .ace_marker-layer .ace_selected_word {\ - border: 1px solid #073642;\ -}\ -\ -.ace-solarized-light .ace_invisible {\ - color: rgba(147, 161, 161, 0.50);\ -}\ -\ -.ace-solarized-light .ace_keyword, .ace-solarized-light .ace_meta {\ - color:#859900;\ -}\ -\ -.ace-solarized-light .ace_constant.ace_language {\ - color:#B58900;\ -}\ -\ -.ace-solarized-light .ace_constant.ace_numeric {\ - color:#D33682;\ -}\ -\ -.ace-solarized-light .ace_constant.ace_other {\ - color:#CB4B16;\ -}\ -\ -.ace-solarized-light .ace_fold {\ - background-color: #268BD2;\ - border-color: #586E75;\ -}\ -\ -.ace-solarized-light .ace_support.ace_function {\ - color:#268BD2;\ -}\ -\ -.ace-solarized-light .ace_storage {\ - color:#073642;\ -}\ -\ -.ace-solarized-light .ace_variable {\ - color:#268BD2;\ -}\ -\ -.ace-solarized-light .ace_string {\ - color:#2AA198;\ -}\ -\ -.ace-solarized-light .ace_string.ace_regexp {\ - color:#D30102;\ -}\ -\ -.ace-solarized-light .ace_comment {\ - color:#93A1A1;\ -}\ -\ -.ace-solarized-light .ace_variable.ace_language {\ - color:#268BD2;\ -}\ -\ -.ace-solarized-light .ace_entity.ace_other.ace_attribute-name {\ - color:#93A1A1;\ -}\ -\ -.ace-solarized-light .ace_entity.ace_name.ace_function {\ - color:#268BD2;\ -}\ -\ -.ace-solarized-light .ace_markup.ace_underline {\ - text-decoration:underline;\ -}"; - - var dom = require("../lib/dom"); - dom.importCssString(exports.cssText, exports.cssClass); -}); diff --git a/public/ace_editor/theme-solarized_light.js b/public/ace_editor/theme-solarized_light.js old mode 100644 new mode 100755 index ec2947d..b27f76b --- a/public/ace_editor/theme-solarized_light.js +++ b/public/ace_editor/theme-solarized_light.js @@ -1 +1,122 @@ -define("ace/theme/solarized_light",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!1,b.cssClass="ace-solarized-light",b.cssText=".ace-solarized-light .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-solarized-light .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-solarized-light .ace_gutter { background: #e8e8e8; color: #333;}.ace-solarized-light .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-solarized-light .ace_scroller { background-color: #FDF6E3;}.ace-solarized-light .ace_text-layer { cursor: text; color: #586E75;}.ace-solarized-light .ace_cursor { border-left: 2px solid #000000;}.ace-solarized-light .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #000000;}.ace-solarized-light .ace_marker-layer .ace_selection { background: #073642;}.ace-solarized-light.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #FDF6E3; border-radius: 2px;}.ace-solarized-light .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-solarized-light .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid rgba(147, 161, 161, 0.50);}.ace-solarized-light .ace_marker-layer .ace_active_line { background: #EEE8D5;}.ace-solarized-light .ace_marker-layer .ace_selected_word { border: 1px solid #073642;}.ace-solarized-light .ace_invisible { color: rgba(147, 161, 161, 0.50);}.ace-solarized-light .ace_keyword, .ace-solarized-light .ace_meta { color:#859900;}.ace-solarized-light .ace_constant.ace_language { color:#B58900;}.ace-solarized-light .ace_constant.ace_numeric { color:#D33682;}.ace-solarized-light .ace_constant.ace_other { color:#CB4B16;}.ace-solarized-light .ace_fold { background-color: #268BD2; border-color: #586E75;}.ace-solarized-light .ace_support.ace_function { color:#268BD2;}.ace-solarized-light .ace_storage { color:#073642;}.ace-solarized-light .ace_variable { color:#268BD2;}.ace-solarized-light .ace_string { color:#2AA198;}.ace-solarized-light .ace_string.ace_regexp { color:#D30102;}.ace-solarized-light .ace_comment { color:#93A1A1;}.ace-solarized-light .ace_variable.ace_language { color:#268BD2;}.ace-solarized-light .ace_entity.ace_other.ace_attribute-name { color:#93A1A1;}.ace-solarized-light .ace_entity.ace_name.ace_function { color:#268BD2;}.ace-solarized-light .ace_markup.ace_underline { text-decoration:underline;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)}) \ No newline at end of file +/* ***** BEGIN LICENSE BLOCK ***** + * Distributed under the BSD license: + * + * Copyright (c) 2010, Ajax.org B.V. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Ajax.org B.V. nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL AJAX.ORG B.V. BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * ***** END LICENSE BLOCK ***** */ + +ace.define('ace/theme/solarized_light', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { + +exports.isDark = false; +exports.cssClass = "ace-solarized-light"; +exports.cssText = ".ace-solarized-light .ace_gutter {\ +background: #fbf1d3;\ +color: #333\ +}\ +.ace-solarized-light .ace_print-margin {\ +width: 1px;\ +background: #e8e8e8\ +}\ +.ace-solarized-light {\ +background-color: #FDF6E3;\ +color: #586E75\ +}\ +.ace-solarized-light .ace_cursor {\ +color: #000000\ +}\ +.ace-solarized-light .ace_marker-layer .ace_selection {\ +background: rgba(7, 54, 67, 0.09)\ +}\ +.ace-solarized-light.ace_multiselect .ace_selection.ace_start {\ +box-shadow: 0 0 3px 0px #FDF6E3;\ +border-radius: 2px\ +}\ +.ace-solarized-light .ace_marker-layer .ace_step {\ +background: rgb(255, 255, 0)\ +}\ +.ace-solarized-light .ace_marker-layer .ace_bracket {\ +margin: -1px 0 0 -1px;\ +border: 1px solid rgba(147, 161, 161, 0.50)\ +}\ +.ace-solarized-light .ace_marker-layer .ace_active-line {\ +background: #EEE8D5\ +}\ +.ace-solarized-light .ace_gutter-active-line {\ +background-color : #EDE5C1\ +}\ +.ace-solarized-light .ace_marker-layer .ace_selected-word {\ +border: 1px solid #073642\ +}\ +.ace-solarized-light .ace_invisible {\ +color: rgba(147, 161, 161, 0.50)\ +}\ +.ace-solarized-light .ace_keyword,\ +.ace-solarized-light .ace_meta,\ +.ace-solarized-light .ace_support.ace_class,\ +.ace-solarized-light .ace_support.ace_type {\ +color: #859900\ +}\ +.ace-solarized-light .ace_constant.ace_character,\ +.ace-solarized-light .ace_constant.ace_other {\ +color: #CB4B16\ +}\ +.ace-solarized-light .ace_constant.ace_language {\ +color: #B58900\ +}\ +.ace-solarized-light .ace_constant.ace_numeric {\ +color: #D33682\ +}\ +.ace-solarized-light .ace_fold {\ +background-color: #268BD2;\ +border-color: #586E75\ +}\ +.ace-solarized-light .ace_entity.ace_name.ace_function,\ +.ace-solarized-light .ace_entity.ace_name.ace_tag,\ +.ace-solarized-light .ace_support.ace_function,\ +.ace-solarized-light .ace_variable,\ +.ace-solarized-light .ace_variable.ace_language {\ +color: #268BD2\ +}\ +.ace-solarized-light .ace_storage {\ +color: #073642\ +}\ +.ace-solarized-light .ace_string {\ +color: #2AA198\ +}\ +.ace-solarized-light .ace_string.ace_regexp {\ +color: #D30102\ +}\ +.ace-solarized-light .ace_comment,\ +.ace-solarized-light .ace_entity.ace_other.ace_attribute-name {\ +color: #93A1A1\ +}\ +.ace-solarized-light .ace_indent-guide {\ +background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAEklEQVQImWNgYGBgYHjy8NJ/AAjgA5fzQUmBAAAAAElFTkSuQmCC) right repeat-y\ +}"; + +var dom = require("../lib/dom"); +dom.importCssString(exports.cssText, exports.cssClass); +}); diff --git a/public/ace_editor/theme-terminal.js b/public/ace_editor/theme-terminal.js new file mode 100755 index 0000000..ae70fa2 --- /dev/null +++ b/public/ace_editor/theme-terminal.js @@ -0,0 +1,145 @@ +/* ***** BEGIN LICENSE BLOCK ***** + * Distributed under the BSD license: + * + * Copyright (c) 2010, Ajax.org B.V. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Ajax.org B.V. nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL AJAX.ORG B.V. BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * ***** END LICENSE BLOCK ***** */ + +ace.define('ace/theme/terminal', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { + +exports.isDark = true; +exports.cssClass = "ace-terminal-theme"; +exports.cssText = ".ace-terminal-theme .ace_gutter {\ +background: #1a0005;\ +color: steelblue\ +}\ +.ace-terminal-theme .ace_print-margin {\ +width: 1px;\ +background: #1a1a1a\ +}\ +.ace-terminal-theme {\ +background-color: black;\ +color: #DEDEDE\ +}\ +.ace-terminal-theme .ace_cursor {\ +color: #9F9F9F\ +}\ +.ace-terminal-theme .ace_marker-layer .ace_selection {\ +background: #424242\ +}\ +.ace-terminal-theme.ace_multiselect .ace_selection.ace_start {\ +box-shadow: 0 0 3px 0px black;\ +border-radius: 2px\ +}\ +.ace-terminal-theme .ace_marker-layer .ace_step {\ +background: rgb(0, 0, 0)\ +}\ +.ace-terminal-theme .ace_marker-layer .ace_bracket {\ +background: #090;\ +}\ +.ace-terminal-theme .ace_marker-layer .ace_bracket-start {\ +background: #090;\ +}\ +.ace-terminal-theme .ace_marker-layer .ace_bracket-unmatched {\ +margin: -1px 0 0 -1px;\ +border: 1px solid #900\ +}\ +.ace-terminal-theme .ace_marker-layer .ace_active-line {\ +background: #2A2A2A\ +}\ +.ace-terminal-theme .ace_gutter-active-line {\ +background-color: #2A112A\ +}\ +.ace-terminal-theme .ace_marker-layer .ace_selected-word {\ +border: 1px solid #424242\ +}\ +.ace-terminal-theme .ace_invisible {\ +color: #343434\ +}\ +.ace-terminal-theme .ace_keyword,\ +.ace-terminal-theme .ace_meta,\ +.ace-terminal-theme .ace_storage,\ +.ace-terminal-theme .ace_storage.ace_type,\ +.ace-terminal-theme .ace_support.ace_type {\ +color: tomato\ +}\ +.ace-terminal-theme .ace_keyword.ace_operator {\ +color: deeppink\ +}\ +.ace-terminal-theme .ace_constant.ace_character,\ +.ace-terminal-theme .ace_constant.ace_language,\ +.ace-terminal-theme .ace_constant.ace_numeric,\ +.ace-terminal-theme .ace_keyword.ace_other.ace_unit,\ +.ace-terminal-theme .ace_support.ace_constant,\ +.ace-terminal-theme .ace_variable.ace_parameter {\ +color: #E78C45\ +}\ +.ace-terminal-theme .ace_constant.ace_other {\ +color: gold\ +}\ +.ace-terminal-theme .ace_invalid {\ +color: yellow;\ +background-color: red\ +}\ +.ace-terminal-theme .ace_invalid.ace_deprecated {\ +color: #CED2CF;\ +background-color: #B798BF\ +}\ +.ace-terminal-theme .ace_fold {\ +background-color: #7AA6DA;\ +border-color: #DEDEDE\ +}\ +.ace-terminal-theme .ace_entity.ace_name.ace_function,\ +.ace-terminal-theme .ace_support.ace_function,\ +.ace-terminal-theme .ace_variable {\ +color: #7AA6DA\ +}\ +.ace-terminal-theme .ace_support.ace_class,\ +.ace-terminal-theme .ace_support.ace_type {\ +color: #E7C547\ +}\ +.ace-terminal-theme .ace_heading,\ +.ace-terminal-theme .ace_string {\ +color: #B9CA4A\ +}\ +.ace-terminal-theme .ace_entity.ace_name.ace_tag,\ +.ace-terminal-theme .ace_entity.ace_other.ace_attribute-name,\ +.ace-terminal-theme .ace_meta.ace_tag,\ +.ace-terminal-theme .ace_string.ace_regexp,\ +.ace-terminal-theme .ace_variable {\ +color: #D54E53\ +}\ +.ace-terminal-theme .ace_comment {\ +color: orangered\ +}\ +.ace-terminal-theme .ace_indent-guide {\ +background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAEklEQVQImWNgYGBgYLBWV/8PAAK4AYnhiq+xAAAAAElFTkSuQmCC) right repeat-y;\ +}\ +"; + +var dom = require("../lib/dom"); +dom.importCssString(exports.cssText, exports.cssClass); +}); diff --git a/public/ace_editor/theme-textmate-noconflict.js b/public/ace_editor/theme-textmate-noconflict.js deleted file mode 100644 index e69de29..0000000 diff --git a/public/ace_editor/theme-textmate-uncompressed-noconflict.js b/public/ace_editor/theme-textmate-uncompressed-noconflict.js deleted file mode 100644 index e69de29..0000000 diff --git a/public/ace_editor/theme-textmate-uncompressed.js b/public/ace_editor/theme-textmate-uncompressed.js deleted file mode 100644 index e69de29..0000000 diff --git a/public/ace_editor/theme-textmate.js b/public/ace_editor/theme-textmate.js old mode 100644 new mode 100755 index e69de29..01f49dc --- a/public/ace_editor/theme-textmate.js +++ b/public/ace_editor/theme-textmate.js @@ -0,0 +1,160 @@ +/* ***** BEGIN LICENSE BLOCK ***** + * Distributed under the BSD license: + * + * Copyright (c) 2010, Ajax.org B.V. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Ajax.org B.V. nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL AJAX.ORG B.V. BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * ***** END LICENSE BLOCK ***** */ + +ace.define('ace/theme/textmate', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { + + +exports.isDark = false; +exports.cssClass = "ace-tm"; +exports.cssText = ".ace-tm .ace_gutter {\ +background: #f0f0f0;\ +color: #333;\ +}\ +.ace-tm .ace_print-margin {\ +width: 1px;\ +background: #e8e8e8;\ +}\ +.ace-tm .ace_fold {\ +background-color: #6B72E6;\ +}\ +.ace-tm {\ +background-color: #FFFFFF;\ +color: black;\ +}\ +.ace-tm .ace_cursor {\ +color: black;\ +}\ +.ace-tm .ace_invisible {\ +color: rgb(191, 191, 191);\ +}\ +.ace-tm .ace_storage,\ +.ace-tm .ace_keyword {\ +color: blue;\ +}\ +.ace-tm .ace_constant {\ +color: rgb(197, 6, 11);\ +}\ +.ace-tm .ace_constant.ace_buildin {\ +color: rgb(88, 72, 246);\ +}\ +.ace-tm .ace_constant.ace_language {\ +color: rgb(88, 92, 246);\ +}\ +.ace-tm .ace_constant.ace_library {\ +color: rgb(6, 150, 14);\ +}\ +.ace-tm .ace_invalid {\ +background-color: rgba(255, 0, 0, 0.1);\ +color: red;\ +}\ +.ace-tm .ace_support.ace_function {\ +color: rgb(60, 76, 114);\ +}\ +.ace-tm .ace_support.ace_constant {\ +color: rgb(6, 150, 14);\ +}\ +.ace-tm .ace_support.ace_type,\ +.ace-tm .ace_support.ace_class {\ +color: rgb(109, 121, 222);\ +}\ +.ace-tm .ace_keyword.ace_operator {\ +color: rgb(104, 118, 135);\ +}\ +.ace-tm .ace_string {\ +color: rgb(3, 106, 7);\ +}\ +.ace-tm .ace_comment {\ +color: rgb(76, 136, 107);\ +}\ +.ace-tm .ace_comment.ace_doc {\ +color: rgb(0, 102, 255);\ +}\ +.ace-tm .ace_comment.ace_doc.ace_tag {\ +color: rgb(128, 159, 191);\ +}\ +.ace-tm .ace_constant.ace_numeric {\ +color: rgb(0, 0, 205);\ +}\ +.ace-tm .ace_variable {\ +color: rgb(49, 132, 149);\ +}\ +.ace-tm .ace_xml-pe {\ +color: rgb(104, 104, 91);\ +}\ +.ace-tm .ace_entity.ace_name.ace_function {\ +color: #0000A2;\ +}\ +.ace-tm .ace_heading {\ +color: rgb(12, 7, 255);\ +}\ +.ace-tm .ace_list {\ +color:rgb(185, 6, 144);\ +}\ +.ace-tm .ace_meta.ace_tag {\ +color:rgb(0, 22, 142);\ +}\ +.ace-tm .ace_string.ace_regex {\ +color: rgb(255, 0, 0)\ +}\ +.ace-tm .ace_marker-layer .ace_selection {\ +background: rgb(181, 213, 255);\ +}\ +.ace-tm.ace_multiselect .ace_selection.ace_start {\ +box-shadow: 0 0 3px 0px white;\ +border-radius: 2px;\ +}\ +.ace-tm .ace_marker-layer .ace_step {\ +background: rgb(252, 255, 0);\ +}\ +.ace-tm .ace_marker-layer .ace_stack {\ +background: rgb(164, 229, 101);\ +}\ +.ace-tm .ace_marker-layer .ace_bracket {\ +margin: -1px 0 0 -1px;\ +border: 1px solid rgb(192, 192, 192);\ +}\ +.ace-tm .ace_marker-layer .ace_active-line {\ +background: rgba(0, 0, 0, 0.07);\ +}\ +.ace-tm .ace_gutter-active-line {\ +background-color : #dcdcdc;\ +}\ +.ace-tm .ace_marker-layer .ace_selected-word {\ +background: rgb(250, 250, 255);\ +border: 1px solid rgb(200, 200, 250);\ +}\ +.ace-tm .ace_indent-guide {\ +background: url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAE0lEQVQImWP4////f4bLly//BwAmVgd1/w11/gAAAABJRU5ErkJggg==\") right repeat-y;\ +}\ +"; + +var dom = require("../lib/dom"); +dom.importCssString(exports.cssText, exports.cssClass); +}); diff --git a/public/ace_editor/theme-tomorrow-noconflict.js b/public/ace_editor/theme-tomorrow-noconflict.js deleted file mode 100644 index b4230bb..0000000 --- a/public/ace_editor/theme-tomorrow-noconflict.js +++ /dev/null @@ -1 +0,0 @@ -ace.define("ace/theme/tomorrow",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!1,b.cssClass="ace-tomorrow",b.cssText=".ace-tomorrow .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-tomorrow .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-tomorrow .ace_gutter { background: #e8e8e8; color: #333;}.ace-tomorrow .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-tomorrow .ace_scroller { background-color: #FFFFFF;}.ace-tomorrow .ace_text-layer { cursor: text; color: #4D4D4C;}.ace-tomorrow .ace_cursor { border-left: 2px solid #AEAFAD;}.ace-tomorrow .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #AEAFAD;}.ace-tomorrow .ace_marker-layer .ace_selection { background: #D6D6D6;}.ace-tomorrow.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #FFFFFF; border-radius: 2px;}.ace-tomorrow .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-tomorrow .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid #D1D1D1;}.ace-tomorrow .ace_marker-layer .ace_active_line { background: #EFEFEF;}.ace-tomorrow .ace_marker-layer .ace_selected_word { border: 1px solid #D6D6D6;}.ace-tomorrow .ace_invisible { color: #D1D1D1;}.ace-tomorrow .ace_keyword, .ace-tomorrow .ace_meta { color:#8959A8;}.ace-tomorrow .ace_keyword.ace_operator { color:#3E999F;}.ace-tomorrow .ace_constant.ace_language { color:#F5871F;}.ace-tomorrow .ace_constant.ace_numeric { color:#F5871F;}.ace-tomorrow .ace_constant.ace_other { color:#666969;}.ace-tomorrow .ace_invalid { color:#FFFFFF;background-color:#C82829;}.ace-tomorrow .ace_invalid.ace_deprecated { color:#FFFFFF;background-color:#8959A8;}.ace-tomorrow .ace_support.ace_constant { color:#F5871F;}.ace-tomorrow .ace_fold { background-color: #4271AE; border-color: #4D4D4C;}.ace-tomorrow .ace_support.ace_function { color:#4271AE;}.ace-tomorrow .ace_storage { color:#8959A8;}.ace-tomorrow .ace_storage.ace_type, .ace-tomorrow .ace_support.ace_type{ color:#8959A8;}.ace-tomorrow .ace_variable { color:#4271AE;}.ace-tomorrow .ace_variable.ace_parameter { color:#F5871F;}.ace-tomorrow .ace_string { color:#718C00;}.ace-tomorrow .ace_string.ace_regexp { color:#C82829;}.ace-tomorrow .ace_comment { color:#8E908C;}.ace-tomorrow .ace_variable { color:#C82829;}.ace-tomorrow .ace_meta.ace_tag { color:#C82829;}.ace-tomorrow .ace_entity.ace_other.ace_attribute-name { color:#C82829;}.ace-tomorrow .ace_entity.ace_name.ace_function { color:#4271AE;}.ace-tomorrow .ace_markup.ace_underline { text-decoration:underline;}.ace-tomorrow .ace_markup.ace_heading { color:#718C00;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)}) \ No newline at end of file diff --git a/public/ace_editor/theme-tomorrow-uncompressed-noconflict.js b/public/ace_editor/theme-tomorrow-uncompressed-noconflict.js deleted file mode 100644 index 383f8f7..0000000 --- a/public/ace_editor/theme-tomorrow-uncompressed-noconflict.js +++ /dev/null @@ -1,206 +0,0 @@ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla Public License Version - * 1.1 (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * http://www.mozilla.org/MPL/ - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - * - * The Original Code is Ajax.org Code Editor (ACE). - * - * The Initial Developer of the Original Code is - * Ajax.org B.V. - * Portions created by the Initial Developer are Copyright (C) 2010 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Fabian Jakobs - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -ace.define('ace/theme/tomorrow', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { - -exports.isDark = false; -exports.cssClass = "ace-tomorrow"; -exports.cssText = "\ -.ace-tomorrow .ace_editor {\ - border: 2px solid rgb(159, 159, 159);\ -}\ -\ -.ace-tomorrow .ace_editor.ace_focus {\ - border: 2px solid #327fbd;\ -}\ -\ -.ace-tomorrow .ace_gutter {\ - background: #e8e8e8;\ - color: #333;\ -}\ -\ -.ace-tomorrow .ace_print_margin {\ - width: 1px;\ - background: #e8e8e8;\ -}\ -\ -.ace-tomorrow .ace_scroller {\ - background-color: #FFFFFF;\ -}\ -\ -.ace-tomorrow .ace_text-layer {\ - cursor: text;\ - color: #4D4D4C;\ -}\ -\ -.ace-tomorrow .ace_cursor {\ - border-left: 2px solid #AEAFAD;\ -}\ -\ -.ace-tomorrow .ace_cursor.ace_overwrite {\ - border-left: 0px;\ - border-bottom: 1px solid #AEAFAD;\ -}\ -\ -.ace-tomorrow .ace_marker-layer .ace_selection {\ - background: #D6D6D6;\ -}\ -\ -.ace-tomorrow.multiselect .ace_selection.start {\ - box-shadow: 0 0 3px 0px #FFFFFF;\ - border-radius: 2px;\ -}\ -\ -.ace-tomorrow .ace_marker-layer .ace_step {\ - background: rgb(198, 219, 174);\ -}\ -\ -.ace-tomorrow .ace_marker-layer .ace_bracket {\ - margin: -1px 0 0 -1px;\ - border: 1px solid #D1D1D1;\ -}\ -\ -.ace-tomorrow .ace_marker-layer .ace_active_line {\ - background: #EFEFEF;\ -}\ -\ -.ace-tomorrow .ace_marker-layer .ace_selected_word {\ - border: 1px solid #D6D6D6;\ -}\ -\ -.ace-tomorrow .ace_invisible {\ - color: #D1D1D1;\ -}\ -\ -.ace-tomorrow .ace_keyword, .ace-tomorrow .ace_meta {\ - color:#8959A8;\ -}\ -\ -.ace-tomorrow .ace_keyword.ace_operator {\ - color:#3E999F;\ -}\ -\ -.ace-tomorrow .ace_constant.ace_language {\ - color:#F5871F;\ -}\ -\ -.ace-tomorrow .ace_constant.ace_numeric {\ - color:#F5871F;\ -}\ -\ -.ace-tomorrow .ace_constant.ace_other {\ - color:#666969;\ -}\ -\ -.ace-tomorrow .ace_invalid {\ - color:#FFFFFF;\ -background-color:#C82829;\ -}\ -\ -.ace-tomorrow .ace_invalid.ace_deprecated {\ - color:#FFFFFF;\ -background-color:#8959A8;\ -}\ -\ -.ace-tomorrow .ace_support.ace_constant {\ - color:#F5871F;\ -}\ -\ -.ace-tomorrow .ace_fold {\ - background-color: #4271AE;\ - border-color: #4D4D4C;\ -}\ -\ -.ace-tomorrow .ace_support.ace_function {\ - color:#4271AE;\ -}\ -\ -.ace-tomorrow .ace_storage {\ - color:#8959A8;\ -}\ -\ -.ace-tomorrow .ace_storage.ace_type, .ace-tomorrow .ace_support.ace_type{\ - color:#8959A8;\ -}\ -\ -.ace-tomorrow .ace_variable {\ - color:#4271AE;\ -}\ -\ -.ace-tomorrow .ace_variable.ace_parameter {\ - color:#F5871F;\ -}\ -\ -.ace-tomorrow .ace_string {\ - color:#718C00;\ -}\ -\ -.ace-tomorrow .ace_string.ace_regexp {\ - color:#C82829;\ -}\ -\ -.ace-tomorrow .ace_comment {\ - color:#8E908C;\ -}\ -\ -.ace-tomorrow .ace_variable {\ - color:#C82829;\ -}\ -\ -.ace-tomorrow .ace_meta.ace_tag {\ - color:#C82829;\ -}\ -\ -.ace-tomorrow .ace_entity.ace_other.ace_attribute-name {\ - color:#C82829;\ -}\ -\ -.ace-tomorrow .ace_entity.ace_name.ace_function {\ - color:#4271AE;\ -}\ -\ -.ace-tomorrow .ace_markup.ace_underline {\ - text-decoration:underline;\ -}\ -\ -.ace-tomorrow .ace_markup.ace_heading {\ - color:#718C00;\ -}"; - - var dom = require("../lib/dom"); - dom.importCssString(exports.cssText, exports.cssClass); -}); diff --git a/public/ace_editor/theme-tomorrow-uncompressed.js b/public/ace_editor/theme-tomorrow-uncompressed.js deleted file mode 100644 index fcecb56..0000000 --- a/public/ace_editor/theme-tomorrow-uncompressed.js +++ /dev/null @@ -1,206 +0,0 @@ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla Public License Version - * 1.1 (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * http://www.mozilla.org/MPL/ - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - * - * The Original Code is Ajax.org Code Editor (ACE). - * - * The Initial Developer of the Original Code is - * Ajax.org B.V. - * Portions created by the Initial Developer are Copyright (C) 2010 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Fabian Jakobs - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -define('ace/theme/tomorrow', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { - -exports.isDark = false; -exports.cssClass = "ace-tomorrow"; -exports.cssText = "\ -.ace-tomorrow .ace_editor {\ - border: 2px solid rgb(159, 159, 159);\ -}\ -\ -.ace-tomorrow .ace_editor.ace_focus {\ - border: 2px solid #327fbd;\ -}\ -\ -.ace-tomorrow .ace_gutter {\ - background: #e8e8e8;\ - color: #333;\ -}\ -\ -.ace-tomorrow .ace_print_margin {\ - width: 1px;\ - background: #e8e8e8;\ -}\ -\ -.ace-tomorrow .ace_scroller {\ - background-color: #FFFFFF;\ -}\ -\ -.ace-tomorrow .ace_text-layer {\ - cursor: text;\ - color: #4D4D4C;\ -}\ -\ -.ace-tomorrow .ace_cursor {\ - border-left: 2px solid #AEAFAD;\ -}\ -\ -.ace-tomorrow .ace_cursor.ace_overwrite {\ - border-left: 0px;\ - border-bottom: 1px solid #AEAFAD;\ -}\ -\ -.ace-tomorrow .ace_marker-layer .ace_selection {\ - background: #D6D6D6;\ -}\ -\ -.ace-tomorrow.multiselect .ace_selection.start {\ - box-shadow: 0 0 3px 0px #FFFFFF;\ - border-radius: 2px;\ -}\ -\ -.ace-tomorrow .ace_marker-layer .ace_step {\ - background: rgb(198, 219, 174);\ -}\ -\ -.ace-tomorrow .ace_marker-layer .ace_bracket {\ - margin: -1px 0 0 -1px;\ - border: 1px solid #D1D1D1;\ -}\ -\ -.ace-tomorrow .ace_marker-layer .ace_active_line {\ - background: #EFEFEF;\ -}\ -\ -.ace-tomorrow .ace_marker-layer .ace_selected_word {\ - border: 1px solid #D6D6D6;\ -}\ -\ -.ace-tomorrow .ace_invisible {\ - color: #D1D1D1;\ -}\ -\ -.ace-tomorrow .ace_keyword, .ace-tomorrow .ace_meta {\ - color:#8959A8;\ -}\ -\ -.ace-tomorrow .ace_keyword.ace_operator {\ - color:#3E999F;\ -}\ -\ -.ace-tomorrow .ace_constant.ace_language {\ - color:#F5871F;\ -}\ -\ -.ace-tomorrow .ace_constant.ace_numeric {\ - color:#F5871F;\ -}\ -\ -.ace-tomorrow .ace_constant.ace_other {\ - color:#666969;\ -}\ -\ -.ace-tomorrow .ace_invalid {\ - color:#FFFFFF;\ -background-color:#C82829;\ -}\ -\ -.ace-tomorrow .ace_invalid.ace_deprecated {\ - color:#FFFFFF;\ -background-color:#8959A8;\ -}\ -\ -.ace-tomorrow .ace_support.ace_constant {\ - color:#F5871F;\ -}\ -\ -.ace-tomorrow .ace_fold {\ - background-color: #4271AE;\ - border-color: #4D4D4C;\ -}\ -\ -.ace-tomorrow .ace_support.ace_function {\ - color:#4271AE;\ -}\ -\ -.ace-tomorrow .ace_storage {\ - color:#8959A8;\ -}\ -\ -.ace-tomorrow .ace_storage.ace_type, .ace-tomorrow .ace_support.ace_type{\ - color:#8959A8;\ -}\ -\ -.ace-tomorrow .ace_variable {\ - color:#4271AE;\ -}\ -\ -.ace-tomorrow .ace_variable.ace_parameter {\ - color:#F5871F;\ -}\ -\ -.ace-tomorrow .ace_string {\ - color:#718C00;\ -}\ -\ -.ace-tomorrow .ace_string.ace_regexp {\ - color:#C82829;\ -}\ -\ -.ace-tomorrow .ace_comment {\ - color:#8E908C;\ -}\ -\ -.ace-tomorrow .ace_variable {\ - color:#C82829;\ -}\ -\ -.ace-tomorrow .ace_meta.ace_tag {\ - color:#C82829;\ -}\ -\ -.ace-tomorrow .ace_entity.ace_other.ace_attribute-name {\ - color:#C82829;\ -}\ -\ -.ace-tomorrow .ace_entity.ace_name.ace_function {\ - color:#4271AE;\ -}\ -\ -.ace-tomorrow .ace_markup.ace_underline {\ - text-decoration:underline;\ -}\ -\ -.ace-tomorrow .ace_markup.ace_heading {\ - color:#718C00;\ -}"; - - var dom = require("../lib/dom"); - dom.importCssString(exports.cssText, exports.cssClass); -}); diff --git a/public/ace_editor/theme-tomorrow.js b/public/ace_editor/theme-tomorrow.js old mode 100644 new mode 100755 index 9fd233d..3248276 --- a/public/ace_editor/theme-tomorrow.js +++ b/public/ace_editor/theme-tomorrow.js @@ -1 +1,139 @@ -define("ace/theme/tomorrow",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!1,b.cssClass="ace-tomorrow",b.cssText=".ace-tomorrow .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-tomorrow .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-tomorrow .ace_gutter { background: #e8e8e8; color: #333;}.ace-tomorrow .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-tomorrow .ace_scroller { background-color: #FFFFFF;}.ace-tomorrow .ace_text-layer { cursor: text; color: #4D4D4C;}.ace-tomorrow .ace_cursor { border-left: 2px solid #AEAFAD;}.ace-tomorrow .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #AEAFAD;}.ace-tomorrow .ace_marker-layer .ace_selection { background: #D6D6D6;}.ace-tomorrow.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #FFFFFF; border-radius: 2px;}.ace-tomorrow .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-tomorrow .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid #D1D1D1;}.ace-tomorrow .ace_marker-layer .ace_active_line { background: #EFEFEF;}.ace-tomorrow .ace_marker-layer .ace_selected_word { border: 1px solid #D6D6D6;}.ace-tomorrow .ace_invisible { color: #D1D1D1;}.ace-tomorrow .ace_keyword, .ace-tomorrow .ace_meta { color:#8959A8;}.ace-tomorrow .ace_keyword.ace_operator { color:#3E999F;}.ace-tomorrow .ace_constant.ace_language { color:#F5871F;}.ace-tomorrow .ace_constant.ace_numeric { color:#F5871F;}.ace-tomorrow .ace_constant.ace_other { color:#666969;}.ace-tomorrow .ace_invalid { color:#FFFFFF;background-color:#C82829;}.ace-tomorrow .ace_invalid.ace_deprecated { color:#FFFFFF;background-color:#8959A8;}.ace-tomorrow .ace_support.ace_constant { color:#F5871F;}.ace-tomorrow .ace_fold { background-color: #4271AE; border-color: #4D4D4C;}.ace-tomorrow .ace_support.ace_function { color:#4271AE;}.ace-tomorrow .ace_storage { color:#8959A8;}.ace-tomorrow .ace_storage.ace_type, .ace-tomorrow .ace_support.ace_type{ color:#8959A8;}.ace-tomorrow .ace_variable { color:#4271AE;}.ace-tomorrow .ace_variable.ace_parameter { color:#F5871F;}.ace-tomorrow .ace_string { color:#718C00;}.ace-tomorrow .ace_string.ace_regexp { color:#C82829;}.ace-tomorrow .ace_comment { color:#8E908C;}.ace-tomorrow .ace_variable { color:#C82829;}.ace-tomorrow .ace_meta.ace_tag { color:#C82829;}.ace-tomorrow .ace_entity.ace_other.ace_attribute-name { color:#C82829;}.ace-tomorrow .ace_entity.ace_name.ace_function { color:#4271AE;}.ace-tomorrow .ace_markup.ace_underline { text-decoration:underline;}.ace-tomorrow .ace_markup.ace_heading { color:#718C00;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)}) \ No newline at end of file +/* ***** BEGIN LICENSE BLOCK ***** + * Distributed under the BSD license: + * + * Copyright (c) 2010, Ajax.org B.V. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Ajax.org B.V. nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL AJAX.ORG B.V. BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * ***** END LICENSE BLOCK ***** */ + +ace.define('ace/theme/tomorrow', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { + +exports.isDark = false; +exports.cssClass = "ace-tomorrow"; +exports.cssText = ".ace-tomorrow .ace_gutter {\ +background: #f6f6f6;\ +color: #4D4D4C\ +}\ +.ace-tomorrow .ace_print-margin {\ +width: 1px;\ +background: #f6f6f6\ +}\ +.ace-tomorrow {\ +background-color: #FFFFFF;\ +color: #4D4D4C\ +}\ +.ace-tomorrow .ace_cursor {\ +color: #AEAFAD\ +}\ +.ace-tomorrow .ace_marker-layer .ace_selection {\ +background: #D6D6D6\ +}\ +.ace-tomorrow.ace_multiselect .ace_selection.ace_start {\ +box-shadow: 0 0 3px 0px #FFFFFF;\ +border-radius: 2px\ +}\ +.ace-tomorrow .ace_marker-layer .ace_step {\ +background: rgb(255, 255, 0)\ +}\ +.ace-tomorrow .ace_marker-layer .ace_bracket {\ +margin: -1px 0 0 -1px;\ +border: 1px solid #D1D1D1\ +}\ +.ace-tomorrow .ace_marker-layer .ace_active-line {\ +background: #EFEFEF\ +}\ +.ace-tomorrow .ace_gutter-active-line {\ +background-color : #dcdcdc\ +}\ +.ace-tomorrow .ace_marker-layer .ace_selected-word {\ +border: 1px solid #D6D6D6\ +}\ +.ace-tomorrow .ace_invisible {\ +color: #D1D1D1\ +}\ +.ace-tomorrow .ace_keyword,\ +.ace-tomorrow .ace_meta,\ +.ace-tomorrow .ace_storage,\ +.ace-tomorrow .ace_storage.ace_type,\ +.ace-tomorrow .ace_support.ace_type {\ +color: #8959A8\ +}\ +.ace-tomorrow .ace_keyword.ace_operator {\ +color: #3E999F\ +}\ +.ace-tomorrow .ace_constant.ace_character,\ +.ace-tomorrow .ace_constant.ace_language,\ +.ace-tomorrow .ace_constant.ace_numeric,\ +.ace-tomorrow .ace_keyword.ace_other.ace_unit,\ +.ace-tomorrow .ace_support.ace_constant,\ +.ace-tomorrow .ace_variable.ace_parameter {\ +color: #F5871F\ +}\ +.ace-tomorrow .ace_constant.ace_other {\ +color: #666969\ +}\ +.ace-tomorrow .ace_invalid {\ +color: #FFFFFF;\ +background-color: #C82829\ +}\ +.ace-tomorrow .ace_invalid.ace_deprecated {\ +color: #FFFFFF;\ +background-color: #8959A8\ +}\ +.ace-tomorrow .ace_fold {\ +background-color: #4271AE;\ +border-color: #4D4D4C\ +}\ +.ace-tomorrow .ace_entity.ace_name.ace_function,\ +.ace-tomorrow .ace_support.ace_function,\ +.ace-tomorrow .ace_variable {\ +color: #4271AE\ +}\ +.ace-tomorrow .ace_support.ace_class,\ +.ace-tomorrow .ace_support.ace_type {\ +color: #C99E00\ +}\ +.ace-tomorrow .ace_heading,\ +.ace-tomorrow .ace_markup.ace_heading,\ +.ace-tomorrow .ace_string {\ +color: #718C00\ +}\ +.ace-tomorrow .ace_entity.ace_name.ace_tag,\ +.ace-tomorrow .ace_entity.ace_other.ace_attribute-name,\ +.ace-tomorrow .ace_meta.ace_tag,\ +.ace-tomorrow .ace_string.ace_regexp,\ +.ace-tomorrow .ace_variable {\ +color: #C82829\ +}\ +.ace-tomorrow .ace_comment {\ +color: #8E908C\ +}\ +.ace-tomorrow .ace_indent-guide {\ +background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAE0lEQVQImWP4////f4bdu3f/BwAlfgctduB85QAAAABJRU5ErkJggg==) right repeat-y\ +}"; + +var dom = require("../lib/dom"); +dom.importCssString(exports.cssText, exports.cssClass); +}); diff --git a/public/ace_editor/theme-tomorrow_night-noconflict.js b/public/ace_editor/theme-tomorrow_night-noconflict.js deleted file mode 100644 index 1eb2d77..0000000 --- a/public/ace_editor/theme-tomorrow_night-noconflict.js +++ /dev/null @@ -1 +0,0 @@ -ace.define("ace/theme/tomorrow_night",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!0,b.cssClass="ace-tomorrow-night",b.cssText=".ace-tomorrow-night .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-tomorrow-night .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-tomorrow-night .ace_gutter { background: #e8e8e8; color: #333;}.ace-tomorrow-night .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-tomorrow-night .ace_scroller { background-color: #1D1F21;}.ace-tomorrow-night .ace_text-layer { cursor: text; color: #C5C8C6;}.ace-tomorrow-night .ace_cursor { border-left: 2px solid #AEAFAD;}.ace-tomorrow-night .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #AEAFAD;}.ace-tomorrow-night .ace_marker-layer .ace_selection { background: #373B41;}.ace-tomorrow-night.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #1D1F21; border-radius: 2px;}.ace-tomorrow-night .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-tomorrow-night .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid #4B4E55;}.ace-tomorrow-night .ace_marker-layer .ace_active_line { background: #282A2E;}.ace-tomorrow-night .ace_marker-layer .ace_selected_word { border: 1px solid #373B41;}.ace-tomorrow-night .ace_invisible { color: #4B4E55;}.ace-tomorrow-night .ace_keyword, .ace-tomorrow-night .ace_meta { color:#B294BB;}.ace-tomorrow-night .ace_keyword.ace_operator { color:#8ABEB7;}.ace-tomorrow-night .ace_constant.ace_language { color:#DE935F;}.ace-tomorrow-night .ace_constant.ace_numeric { color:#DE935F;}.ace-tomorrow-night .ace_constant.ace_other { color:#CED1CF;}.ace-tomorrow-night .ace_invalid { color:#CED2CF;background-color:#DF5F5F;}.ace-tomorrow-night .ace_invalid.ace_deprecated { color:#CED2CF;background-color:#B798BF;}.ace-tomorrow-night .ace_support.ace_constant { color:#DE935F;}.ace-tomorrow-night .ace_fold { background-color: #81A2BE; border-color: #C5C8C6;}.ace-tomorrow-night .ace_support.ace_function { color:#81A2BE;}.ace-tomorrow-night .ace_storage { color:#B294BB;}.ace-tomorrow-night .ace_storage.ace_type, .ace-tomorrow-night .ace_support.ace_type{ color:#B294BB;}.ace-tomorrow-night .ace_variable { color:#81A2BE;}.ace-tomorrow-night .ace_variable.ace_parameter { color:#DE935F;}.ace-tomorrow-night .ace_string { color:#B5BD68;}.ace-tomorrow-night .ace_string.ace_regexp { color:#CC6666;}.ace-tomorrow-night .ace_comment { color:#969896;}.ace-tomorrow-night .ace_variable { color:#CC6666;}.ace-tomorrow-night .ace_meta.ace_tag { color:#CC6666;}.ace-tomorrow-night .ace_entity.ace_other.ace_attribute-name { color:#CC6666;}.ace-tomorrow-night .ace_entity.ace_name.ace_function { color:#81A2BE;}.ace-tomorrow-night .ace_markup.ace_underline { text-decoration:underline;}.ace-tomorrow-night .ace_markup.ace_heading { color:#B5BD68;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)}) \ No newline at end of file diff --git a/public/ace_editor/theme-tomorrow_night-uncompressed-noconflict.js b/public/ace_editor/theme-tomorrow_night-uncompressed-noconflict.js deleted file mode 100644 index 0073be8..0000000 --- a/public/ace_editor/theme-tomorrow_night-uncompressed-noconflict.js +++ /dev/null @@ -1,206 +0,0 @@ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla Public License Version - * 1.1 (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * http://www.mozilla.org/MPL/ - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - * - * The Original Code is Ajax.org Code Editor (ACE). - * - * The Initial Developer of the Original Code is - * Ajax.org B.V. - * Portions created by the Initial Developer are Copyright (C) 2010 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Fabian Jakobs - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -ace.define('ace/theme/tomorrow_night', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { - -exports.isDark = true; -exports.cssClass = "ace-tomorrow-night"; -exports.cssText = "\ -.ace-tomorrow-night .ace_editor {\ - border: 2px solid rgb(159, 159, 159);\ -}\ -\ -.ace-tomorrow-night .ace_editor.ace_focus {\ - border: 2px solid #327fbd;\ -}\ -\ -.ace-tomorrow-night .ace_gutter {\ - background: #e8e8e8;\ - color: #333;\ -}\ -\ -.ace-tomorrow-night .ace_print_margin {\ - width: 1px;\ - background: #e8e8e8;\ -}\ -\ -.ace-tomorrow-night .ace_scroller {\ - background-color: #1D1F21;\ -}\ -\ -.ace-tomorrow-night .ace_text-layer {\ - cursor: text;\ - color: #C5C8C6;\ -}\ -\ -.ace-tomorrow-night .ace_cursor {\ - border-left: 2px solid #AEAFAD;\ -}\ -\ -.ace-tomorrow-night .ace_cursor.ace_overwrite {\ - border-left: 0px;\ - border-bottom: 1px solid #AEAFAD;\ -}\ -\ -.ace-tomorrow-night .ace_marker-layer .ace_selection {\ - background: #373B41;\ -}\ -\ -.ace-tomorrow-night.multiselect .ace_selection.start {\ - box-shadow: 0 0 3px 0px #1D1F21;\ - border-radius: 2px;\ -}\ -\ -.ace-tomorrow-night .ace_marker-layer .ace_step {\ - background: rgb(198, 219, 174);\ -}\ -\ -.ace-tomorrow-night .ace_marker-layer .ace_bracket {\ - margin: -1px 0 0 -1px;\ - border: 1px solid #4B4E55;\ -}\ -\ -.ace-tomorrow-night .ace_marker-layer .ace_active_line {\ - background: #282A2E;\ -}\ -\ -.ace-tomorrow-night .ace_marker-layer .ace_selected_word {\ - border: 1px solid #373B41;\ -}\ -\ -.ace-tomorrow-night .ace_invisible {\ - color: #4B4E55;\ -}\ -\ -.ace-tomorrow-night .ace_keyword, .ace-tomorrow-night .ace_meta {\ - color:#B294BB;\ -}\ -\ -.ace-tomorrow-night .ace_keyword.ace_operator {\ - color:#8ABEB7;\ -}\ -\ -.ace-tomorrow-night .ace_constant.ace_language {\ - color:#DE935F;\ -}\ -\ -.ace-tomorrow-night .ace_constant.ace_numeric {\ - color:#DE935F;\ -}\ -\ -.ace-tomorrow-night .ace_constant.ace_other {\ - color:#CED1CF;\ -}\ -\ -.ace-tomorrow-night .ace_invalid {\ - color:#CED2CF;\ -background-color:#DF5F5F;\ -}\ -\ -.ace-tomorrow-night .ace_invalid.ace_deprecated {\ - color:#CED2CF;\ -background-color:#B798BF;\ -}\ -\ -.ace-tomorrow-night .ace_support.ace_constant {\ - color:#DE935F;\ -}\ -\ -.ace-tomorrow-night .ace_fold {\ - background-color: #81A2BE;\ - border-color: #C5C8C6;\ -}\ -\ -.ace-tomorrow-night .ace_support.ace_function {\ - color:#81A2BE;\ -}\ -\ -.ace-tomorrow-night .ace_storage {\ - color:#B294BB;\ -}\ -\ -.ace-tomorrow-night .ace_storage.ace_type, .ace-tomorrow-night .ace_support.ace_type{\ - color:#B294BB;\ -}\ -\ -.ace-tomorrow-night .ace_variable {\ - color:#81A2BE;\ -}\ -\ -.ace-tomorrow-night .ace_variable.ace_parameter {\ - color:#DE935F;\ -}\ -\ -.ace-tomorrow-night .ace_string {\ - color:#B5BD68;\ -}\ -\ -.ace-tomorrow-night .ace_string.ace_regexp {\ - color:#CC6666;\ -}\ -\ -.ace-tomorrow-night .ace_comment {\ - color:#969896;\ -}\ -\ -.ace-tomorrow-night .ace_variable {\ - color:#CC6666;\ -}\ -\ -.ace-tomorrow-night .ace_meta.ace_tag {\ - color:#CC6666;\ -}\ -\ -.ace-tomorrow-night .ace_entity.ace_other.ace_attribute-name {\ - color:#CC6666;\ -}\ -\ -.ace-tomorrow-night .ace_entity.ace_name.ace_function {\ - color:#81A2BE;\ -}\ -\ -.ace-tomorrow-night .ace_markup.ace_underline {\ - text-decoration:underline;\ -}\ -\ -.ace-tomorrow-night .ace_markup.ace_heading {\ - color:#B5BD68;\ -}"; - - var dom = require("../lib/dom"); - dom.importCssString(exports.cssText, exports.cssClass); -}); diff --git a/public/ace_editor/theme-tomorrow_night-uncompressed.js b/public/ace_editor/theme-tomorrow_night-uncompressed.js deleted file mode 100644 index a5a774f..0000000 --- a/public/ace_editor/theme-tomorrow_night-uncompressed.js +++ /dev/null @@ -1,206 +0,0 @@ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla Public License Version - * 1.1 (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * http://www.mozilla.org/MPL/ - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - * - * The Original Code is Ajax.org Code Editor (ACE). - * - * The Initial Developer of the Original Code is - * Ajax.org B.V. - * Portions created by the Initial Developer are Copyright (C) 2010 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Fabian Jakobs - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -define('ace/theme/tomorrow_night', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { - -exports.isDark = true; -exports.cssClass = "ace-tomorrow-night"; -exports.cssText = "\ -.ace-tomorrow-night .ace_editor {\ - border: 2px solid rgb(159, 159, 159);\ -}\ -\ -.ace-tomorrow-night .ace_editor.ace_focus {\ - border: 2px solid #327fbd;\ -}\ -\ -.ace-tomorrow-night .ace_gutter {\ - background: #e8e8e8;\ - color: #333;\ -}\ -\ -.ace-tomorrow-night .ace_print_margin {\ - width: 1px;\ - background: #e8e8e8;\ -}\ -\ -.ace-tomorrow-night .ace_scroller {\ - background-color: #1D1F21;\ -}\ -\ -.ace-tomorrow-night .ace_text-layer {\ - cursor: text;\ - color: #C5C8C6;\ -}\ -\ -.ace-tomorrow-night .ace_cursor {\ - border-left: 2px solid #AEAFAD;\ -}\ -\ -.ace-tomorrow-night .ace_cursor.ace_overwrite {\ - border-left: 0px;\ - border-bottom: 1px solid #AEAFAD;\ -}\ -\ -.ace-tomorrow-night .ace_marker-layer .ace_selection {\ - background: #373B41;\ -}\ -\ -.ace-tomorrow-night.multiselect .ace_selection.start {\ - box-shadow: 0 0 3px 0px #1D1F21;\ - border-radius: 2px;\ -}\ -\ -.ace-tomorrow-night .ace_marker-layer .ace_step {\ - background: rgb(198, 219, 174);\ -}\ -\ -.ace-tomorrow-night .ace_marker-layer .ace_bracket {\ - margin: -1px 0 0 -1px;\ - border: 1px solid #4B4E55;\ -}\ -\ -.ace-tomorrow-night .ace_marker-layer .ace_active_line {\ - background: #282A2E;\ -}\ -\ -.ace-tomorrow-night .ace_marker-layer .ace_selected_word {\ - border: 1px solid #373B41;\ -}\ -\ -.ace-tomorrow-night .ace_invisible {\ - color: #4B4E55;\ -}\ -\ -.ace-tomorrow-night .ace_keyword, .ace-tomorrow-night .ace_meta {\ - color:#B294BB;\ -}\ -\ -.ace-tomorrow-night .ace_keyword.ace_operator {\ - color:#8ABEB7;\ -}\ -\ -.ace-tomorrow-night .ace_constant.ace_language {\ - color:#DE935F;\ -}\ -\ -.ace-tomorrow-night .ace_constant.ace_numeric {\ - color:#DE935F;\ -}\ -\ -.ace-tomorrow-night .ace_constant.ace_other {\ - color:#CED1CF;\ -}\ -\ -.ace-tomorrow-night .ace_invalid {\ - color:#CED2CF;\ -background-color:#DF5F5F;\ -}\ -\ -.ace-tomorrow-night .ace_invalid.ace_deprecated {\ - color:#CED2CF;\ -background-color:#B798BF;\ -}\ -\ -.ace-tomorrow-night .ace_support.ace_constant {\ - color:#DE935F;\ -}\ -\ -.ace-tomorrow-night .ace_fold {\ - background-color: #81A2BE;\ - border-color: #C5C8C6;\ -}\ -\ -.ace-tomorrow-night .ace_support.ace_function {\ - color:#81A2BE;\ -}\ -\ -.ace-tomorrow-night .ace_storage {\ - color:#B294BB;\ -}\ -\ -.ace-tomorrow-night .ace_storage.ace_type, .ace-tomorrow-night .ace_support.ace_type{\ - color:#B294BB;\ -}\ -\ -.ace-tomorrow-night .ace_variable {\ - color:#81A2BE;\ -}\ -\ -.ace-tomorrow-night .ace_variable.ace_parameter {\ - color:#DE935F;\ -}\ -\ -.ace-tomorrow-night .ace_string {\ - color:#B5BD68;\ -}\ -\ -.ace-tomorrow-night .ace_string.ace_regexp {\ - color:#CC6666;\ -}\ -\ -.ace-tomorrow-night .ace_comment {\ - color:#969896;\ -}\ -\ -.ace-tomorrow-night .ace_variable {\ - color:#CC6666;\ -}\ -\ -.ace-tomorrow-night .ace_meta.ace_tag {\ - color:#CC6666;\ -}\ -\ -.ace-tomorrow-night .ace_entity.ace_other.ace_attribute-name {\ - color:#CC6666;\ -}\ -\ -.ace-tomorrow-night .ace_entity.ace_name.ace_function {\ - color:#81A2BE;\ -}\ -\ -.ace-tomorrow-night .ace_markup.ace_underline {\ - text-decoration:underline;\ -}\ -\ -.ace-tomorrow-night .ace_markup.ace_heading {\ - color:#B5BD68;\ -}"; - - var dom = require("../lib/dom"); - dom.importCssString(exports.cssText, exports.cssClass); -}); diff --git a/public/ace_editor/theme-tomorrow_night.js b/public/ace_editor/theme-tomorrow_night.js old mode 100644 new mode 100755 index 746ee82..b23370f --- a/public/ace_editor/theme-tomorrow_night.js +++ b/public/ace_editor/theme-tomorrow_night.js @@ -1 +1,139 @@ -define("ace/theme/tomorrow_night",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!0,b.cssClass="ace-tomorrow-night",b.cssText=".ace-tomorrow-night .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-tomorrow-night .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-tomorrow-night .ace_gutter { background: #e8e8e8; color: #333;}.ace-tomorrow-night .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-tomorrow-night .ace_scroller { background-color: #1D1F21;}.ace-tomorrow-night .ace_text-layer { cursor: text; color: #C5C8C6;}.ace-tomorrow-night .ace_cursor { border-left: 2px solid #AEAFAD;}.ace-tomorrow-night .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #AEAFAD;}.ace-tomorrow-night .ace_marker-layer .ace_selection { background: #373B41;}.ace-tomorrow-night.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #1D1F21; border-radius: 2px;}.ace-tomorrow-night .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-tomorrow-night .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid #4B4E55;}.ace-tomorrow-night .ace_marker-layer .ace_active_line { background: #282A2E;}.ace-tomorrow-night .ace_marker-layer .ace_selected_word { border: 1px solid #373B41;}.ace-tomorrow-night .ace_invisible { color: #4B4E55;}.ace-tomorrow-night .ace_keyword, .ace-tomorrow-night .ace_meta { color:#B294BB;}.ace-tomorrow-night .ace_keyword.ace_operator { color:#8ABEB7;}.ace-tomorrow-night .ace_constant.ace_language { color:#DE935F;}.ace-tomorrow-night .ace_constant.ace_numeric { color:#DE935F;}.ace-tomorrow-night .ace_constant.ace_other { color:#CED1CF;}.ace-tomorrow-night .ace_invalid { color:#CED2CF;background-color:#DF5F5F;}.ace-tomorrow-night .ace_invalid.ace_deprecated { color:#CED2CF;background-color:#B798BF;}.ace-tomorrow-night .ace_support.ace_constant { color:#DE935F;}.ace-tomorrow-night .ace_fold { background-color: #81A2BE; border-color: #C5C8C6;}.ace-tomorrow-night .ace_support.ace_function { color:#81A2BE;}.ace-tomorrow-night .ace_storage { color:#B294BB;}.ace-tomorrow-night .ace_storage.ace_type, .ace-tomorrow-night .ace_support.ace_type{ color:#B294BB;}.ace-tomorrow-night .ace_variable { color:#81A2BE;}.ace-tomorrow-night .ace_variable.ace_parameter { color:#DE935F;}.ace-tomorrow-night .ace_string { color:#B5BD68;}.ace-tomorrow-night .ace_string.ace_regexp { color:#CC6666;}.ace-tomorrow-night .ace_comment { color:#969896;}.ace-tomorrow-night .ace_variable { color:#CC6666;}.ace-tomorrow-night .ace_meta.ace_tag { color:#CC6666;}.ace-tomorrow-night .ace_entity.ace_other.ace_attribute-name { color:#CC6666;}.ace-tomorrow-night .ace_entity.ace_name.ace_function { color:#81A2BE;}.ace-tomorrow-night .ace_markup.ace_underline { text-decoration:underline;}.ace-tomorrow-night .ace_markup.ace_heading { color:#B5BD68;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)}) \ No newline at end of file +/* ***** BEGIN LICENSE BLOCK ***** + * Distributed under the BSD license: + * + * Copyright (c) 2010, Ajax.org B.V. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Ajax.org B.V. nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL AJAX.ORG B.V. BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * ***** END LICENSE BLOCK ***** */ + +ace.define('ace/theme/tomorrow_night', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { + +exports.isDark = true; +exports.cssClass = "ace-tomorrow-night"; +exports.cssText = ".ace-tomorrow-night .ace_gutter {\ +background: #25282c;\ +color: #C5C8C6\ +}\ +.ace-tomorrow-night .ace_print-margin {\ +width: 1px;\ +background: #25282c\ +}\ +.ace-tomorrow-night {\ +background-color: #1D1F21;\ +color: #C5C8C6\ +}\ +.ace-tomorrow-night .ace_cursor {\ +color: #AEAFAD\ +}\ +.ace-tomorrow-night .ace_marker-layer .ace_selection {\ +background: #373B41\ +}\ +.ace-tomorrow-night.ace_multiselect .ace_selection.ace_start {\ +box-shadow: 0 0 3px 0px #1D1F21;\ +border-radius: 2px\ +}\ +.ace-tomorrow-night .ace_marker-layer .ace_step {\ +background: rgb(102, 82, 0)\ +}\ +.ace-tomorrow-night .ace_marker-layer .ace_bracket {\ +margin: -1px 0 0 -1px;\ +border: 1px solid #4B4E55\ +}\ +.ace-tomorrow-night .ace_marker-layer .ace_active-line {\ +background: #282A2E\ +}\ +.ace-tomorrow-night .ace_gutter-active-line {\ +background-color: #282A2E\ +}\ +.ace-tomorrow-night .ace_marker-layer .ace_selected-word {\ +border: 1px solid #373B41\ +}\ +.ace-tomorrow-night .ace_invisible {\ +color: #4B4E55\ +}\ +.ace-tomorrow-night .ace_keyword,\ +.ace-tomorrow-night .ace_meta,\ +.ace-tomorrow-night .ace_storage,\ +.ace-tomorrow-night .ace_storage.ace_type,\ +.ace-tomorrow-night .ace_support.ace_type {\ +color: #B294BB\ +}\ +.ace-tomorrow-night .ace_keyword.ace_operator {\ +color: #8ABEB7\ +}\ +.ace-tomorrow-night .ace_constant.ace_character,\ +.ace-tomorrow-night .ace_constant.ace_language,\ +.ace-tomorrow-night .ace_constant.ace_numeric,\ +.ace-tomorrow-night .ace_keyword.ace_other.ace_unit,\ +.ace-tomorrow-night .ace_support.ace_constant,\ +.ace-tomorrow-night .ace_variable.ace_parameter {\ +color: #DE935F\ +}\ +.ace-tomorrow-night .ace_constant.ace_other {\ +color: #CED1CF\ +}\ +.ace-tomorrow-night .ace_invalid {\ +color: #CED2CF;\ +background-color: #DF5F5F\ +}\ +.ace-tomorrow-night .ace_invalid.ace_deprecated {\ +color: #CED2CF;\ +background-color: #B798BF\ +}\ +.ace-tomorrow-night .ace_fold {\ +background-color: #81A2BE;\ +border-color: #C5C8C6\ +}\ +.ace-tomorrow-night .ace_entity.ace_name.ace_function,\ +.ace-tomorrow-night .ace_support.ace_function,\ +.ace-tomorrow-night .ace_variable {\ +color: #81A2BE\ +}\ +.ace-tomorrow-night .ace_support.ace_class,\ +.ace-tomorrow-night .ace_support.ace_type {\ +color: #F0C674\ +}\ +.ace-tomorrow-night .ace_heading,\ +.ace-tomorrow-night .ace_markup.ace_heading,\ +.ace-tomorrow-night .ace_string {\ +color: #B5BD68\ +}\ +.ace-tomorrow-night .ace_entity.ace_name.ace_tag,\ +.ace-tomorrow-night .ace_entity.ace_other.ace_attribute-name,\ +.ace-tomorrow-night .ace_meta.ace_tag,\ +.ace-tomorrow-night .ace_string.ace_regexp,\ +.ace-tomorrow-night .ace_variable {\ +color: #CC6666\ +}\ +.ace-tomorrow-night .ace_comment {\ +color: #969896\ +}\ +.ace-tomorrow-night .ace_indent-guide {\ +background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAEklEQVQImWNgYGBgYHB3d/8PAAOIAdULw8qMAAAAAElFTkSuQmCC) right repeat-y\ +}"; + +var dom = require("../lib/dom"); +dom.importCssString(exports.cssText, exports.cssClass); +}); diff --git a/public/ace_editor/theme-tomorrow_night_blue-noconflict.js b/public/ace_editor/theme-tomorrow_night_blue-noconflict.js deleted file mode 100644 index 35fa697..0000000 --- a/public/ace_editor/theme-tomorrow_night_blue-noconflict.js +++ /dev/null @@ -1 +0,0 @@ -ace.define("ace/theme/tomorrow_night_blue",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!0,b.cssClass="ace-tomorrow-night-blue",b.cssText=".ace-tomorrow-night-blue .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-tomorrow-night-blue .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-tomorrow-night-blue .ace_gutter { background: #022346; color: #7388b5;}.ace-tomorrow-night-blue .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-tomorrow-night-blue .ace_scroller { background-color: #002451;}.ace-tomorrow-night-blue .ace_text-layer { cursor: text; color: #FFFFFF;}.ace-tomorrow-night-blue .ace_cursor { border-left: 2px solid #FFFFFF;}.ace-tomorrow-night-blue .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #FFFFFF;}.ace-tomorrow-night-blue .ace_marker-layer .ace_selection { background: #003F8E;}.ace-tomorrow-night-blue.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #002451; border-radius: 2px;}.ace-tomorrow-night-blue .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-tomorrow-night-blue .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid #404F7D;}.ace-tomorrow-night-blue .ace_marker-layer .ace_active_line{ background: #00346E;}.ace-tomorrow-night-blue .ace_gutter_active_line{ background: #022040;}.ace-tomorrow-night-blue .ace_marker-layer .ace_selected_word { border: 1px solid #003F8E;}.ace-tomorrow-night-blue .ace_invisible { color: #404F7D;}.ace-tomorrow-night-blue .ace_keyword, .ace-tomorrow-night-blue .ace_meta { color:#EBBBFF;}.ace-tomorrow-night-blue .ace_keyword.ace_operator { color:#99FFFF;}.ace-tomorrow-night-blue .ace_constant.ace_language { color:#FFC58F;}.ace-tomorrow-night-blue .ace_constant.ace_numeric { color:#FFC58F;}.ace-tomorrow-night-blue .ace_constant.ace_other { color:#FFFFFF;}.ace-tomorrow-night-blue .ace_invalid { color:#FFFFFF;background-color:#F99DA5;}.ace-tomorrow-night-blue .ace_invalid.ace_deprecated { color:#FFFFFF;background-color:#EBBBFF;}.ace-tomorrow-night-blue .ace_support.ace_constant { color:#FFC58F;}.ace-tomorrow-night-blue .ace_fold { background-color: #BBDAFF; border-color: #FFFFFF;}.ace-tomorrow-night-blue .ace_support.ace_function { color:#BBDAFF;}.ace-tomorrow-night-blue .ace_storage { color:#EBBBFF;}.ace-tomorrow-night-blue .ace_storage.ace_type, .ace-tomorrow-night-blue .ace_support.ace_type{ color:#EBBBFF;}.ace-tomorrow-night-blue .ace_variable { color:#BBDAFF;}.ace-tomorrow-night-blue .ace_variable.ace_parameter { color:#FFC58F;}.ace-tomorrow-night-blue .ace_string { color:#D1F1A9;}.ace-tomorrow-night-blue .ace_string.ace_regexp { color:#FF9DA4;}.ace-tomorrow-night-blue .ace_comment { color:#7285B7;}.ace-tomorrow-night-blue .ace_variable { color:#FF9DA4;}.ace-tomorrow-night-blue .ace_meta.ace_tag { color:#FF9DA4;}.ace-tomorrow-night-blue .ace_entity.ace_other.ace_attribute-name { color:#FF9DA4;}.ace-tomorrow-night-blue .ace_entity.ace_name.ace_function { color:#BBDAFF;}.ace-tomorrow-night-blue .ace_markup.ace_underline { text-decoration:underline;}.ace-tomorrow-night-blue .ace_markup.ace_heading { color:#D1F1A9;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)}) \ No newline at end of file diff --git a/public/ace_editor/theme-tomorrow_night_blue-uncompressed-noconflict.js b/public/ace_editor/theme-tomorrow_night_blue-uncompressed-noconflict.js deleted file mode 100644 index a5d95ca..0000000 --- a/public/ace_editor/theme-tomorrow_night_blue-uncompressed-noconflict.js +++ /dev/null @@ -1,209 +0,0 @@ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla Public License Version - * 1.1 (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * http://www.mozilla.org/MPL/ - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - * - * The Original Code is Ajax.org Code Editor (ACE). - * - * The Initial Developer of the Original Code is - * Ajax.org B.V. - * Portions created by the Initial Developer are Copyright (C) 2010 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Fabian Jakobs - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -ace.define('ace/theme/tomorrow_night_blue', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { - -exports.isDark = true; -exports.cssClass = "ace-tomorrow-night-blue"; -exports.cssText = "\ -.ace-tomorrow-night-blue .ace_editor {\ - border: 2px solid rgb(159, 159, 159);\ -}\ -\ -.ace-tomorrow-night-blue .ace_editor.ace_focus {\ - border: 2px solid #327fbd;\ -}\ -\ -.ace-tomorrow-night-blue .ace_gutter {\ - background: #022346;\ - color: #7388b5;\ -}\ -\ -.ace-tomorrow-night-blue .ace_print_margin {\ - width: 1px;\ - background: #e8e8e8;\ -}\ -\ -.ace-tomorrow-night-blue .ace_scroller {\ - background-color: #002451;\ -}\ -\ -.ace-tomorrow-night-blue .ace_text-layer {\ - cursor: text;\ - color: #FFFFFF;\ -}\ -\ -.ace-tomorrow-night-blue .ace_cursor {\ - border-left: 2px solid #FFFFFF;\ -}\ -\ -.ace-tomorrow-night-blue .ace_cursor.ace_overwrite {\ - border-left: 0px;\ - border-bottom: 1px solid #FFFFFF;\ -}\ -\ -.ace-tomorrow-night-blue .ace_marker-layer .ace_selection {\ - background: #003F8E;\ -}\ -\ -.ace-tomorrow-night-blue.multiselect .ace_selection.start {\ - box-shadow: 0 0 3px 0px #002451;\ - border-radius: 2px;\ -}\ -\ -.ace-tomorrow-night-blue .ace_marker-layer .ace_step {\ - background: rgb(198, 219, 174);\ -}\ -\ -.ace-tomorrow-night-blue .ace_marker-layer .ace_bracket {\ - margin: -1px 0 0 -1px;\ - border: 1px solid #404F7D;\ -}\ -\ -.ace-tomorrow-night-blue .ace_marker-layer .ace_active_line{\ - background: #00346E;\ -}\ -.ace-tomorrow-night-blue .ace_gutter_active_line{\ - background: #022040;\ -}\ -\ -.ace-tomorrow-night-blue .ace_marker-layer .ace_selected_word {\ - border: 1px solid #003F8E;\ -}\ -\ -.ace-tomorrow-night-blue .ace_invisible {\ - color: #404F7D;\ -}\ -\ -.ace-tomorrow-night-blue .ace_keyword, .ace-tomorrow-night-blue .ace_meta {\ - color:#EBBBFF;\ -}\ -\ -.ace-tomorrow-night-blue .ace_keyword.ace_operator {\ - color:#99FFFF;\ -}\ -\ -.ace-tomorrow-night-blue .ace_constant.ace_language {\ - color:#FFC58F;\ -}\ -\ -.ace-tomorrow-night-blue .ace_constant.ace_numeric {\ - color:#FFC58F;\ -}\ -\ -.ace-tomorrow-night-blue .ace_constant.ace_other {\ - color:#FFFFFF;\ -}\ -\ -.ace-tomorrow-night-blue .ace_invalid {\ - color:#FFFFFF;\ -background-color:#F99DA5;\ -}\ -\ -.ace-tomorrow-night-blue .ace_invalid.ace_deprecated {\ - color:#FFFFFF;\ -background-color:#EBBBFF;\ -}\ -\ -.ace-tomorrow-night-blue .ace_support.ace_constant {\ - color:#FFC58F;\ -}\ -\ -.ace-tomorrow-night-blue .ace_fold {\ - background-color: #BBDAFF;\ - border-color: #FFFFFF;\ -}\ -\ -.ace-tomorrow-night-blue .ace_support.ace_function {\ - color:#BBDAFF;\ -}\ -\ -.ace-tomorrow-night-blue .ace_storage {\ - color:#EBBBFF;\ -}\ -\ -.ace-tomorrow-night-blue .ace_storage.ace_type, .ace-tomorrow-night-blue .ace_support.ace_type{\ - color:#EBBBFF;\ -}\ -\ -.ace-tomorrow-night-blue .ace_variable {\ - color:#BBDAFF;\ -}\ -\ -.ace-tomorrow-night-blue .ace_variable.ace_parameter {\ - color:#FFC58F;\ -}\ -\ -.ace-tomorrow-night-blue .ace_string {\ - color:#D1F1A9;\ -}\ -\ -.ace-tomorrow-night-blue .ace_string.ace_regexp {\ - color:#FF9DA4;\ -}\ -\ -.ace-tomorrow-night-blue .ace_comment {\ - color:#7285B7;\ -}\ -\ -.ace-tomorrow-night-blue .ace_variable {\ - color:#FF9DA4;\ -}\ -\ -.ace-tomorrow-night-blue .ace_meta.ace_tag {\ - color:#FF9DA4;\ -}\ -\ -.ace-tomorrow-night-blue .ace_entity.ace_other.ace_attribute-name {\ - color:#FF9DA4;\ -}\ -\ -.ace-tomorrow-night-blue .ace_entity.ace_name.ace_function {\ - color:#BBDAFF;\ -}\ -\ -.ace-tomorrow-night-blue .ace_markup.ace_underline {\ - text-decoration:underline;\ -}\ -\ -.ace-tomorrow-night-blue .ace_markup.ace_heading {\ - color:#D1F1A9;\ -}"; - - var dom = require("../lib/dom"); - dom.importCssString(exports.cssText, exports.cssClass); -}); diff --git a/public/ace_editor/theme-tomorrow_night_blue-uncompressed.js b/public/ace_editor/theme-tomorrow_night_blue-uncompressed.js deleted file mode 100644 index 7c01429..0000000 --- a/public/ace_editor/theme-tomorrow_night_blue-uncompressed.js +++ /dev/null @@ -1,209 +0,0 @@ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla Public License Version - * 1.1 (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * http://www.mozilla.org/MPL/ - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - * - * The Original Code is Ajax.org Code Editor (ACE). - * - * The Initial Developer of the Original Code is - * Ajax.org B.V. - * Portions created by the Initial Developer are Copyright (C) 2010 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Fabian Jakobs - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -define('ace/theme/tomorrow_night_blue', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { - -exports.isDark = true; -exports.cssClass = "ace-tomorrow-night-blue"; -exports.cssText = "\ -.ace-tomorrow-night-blue .ace_editor {\ - border: 2px solid rgb(159, 159, 159);\ -}\ -\ -.ace-tomorrow-night-blue .ace_editor.ace_focus {\ - border: 2px solid #327fbd;\ -}\ -\ -.ace-tomorrow-night-blue .ace_gutter {\ - background: #022346;\ - color: #7388b5;\ -}\ -\ -.ace-tomorrow-night-blue .ace_print_margin {\ - width: 1px;\ - background: #e8e8e8;\ -}\ -\ -.ace-tomorrow-night-blue .ace_scroller {\ - background-color: #002451;\ -}\ -\ -.ace-tomorrow-night-blue .ace_text-layer {\ - cursor: text;\ - color: #FFFFFF;\ -}\ -\ -.ace-tomorrow-night-blue .ace_cursor {\ - border-left: 2px solid #FFFFFF;\ -}\ -\ -.ace-tomorrow-night-blue .ace_cursor.ace_overwrite {\ - border-left: 0px;\ - border-bottom: 1px solid #FFFFFF;\ -}\ -\ -.ace-tomorrow-night-blue .ace_marker-layer .ace_selection {\ - background: #003F8E;\ -}\ -\ -.ace-tomorrow-night-blue.multiselect .ace_selection.start {\ - box-shadow: 0 0 3px 0px #002451;\ - border-radius: 2px;\ -}\ -\ -.ace-tomorrow-night-blue .ace_marker-layer .ace_step {\ - background: rgb(198, 219, 174);\ -}\ -\ -.ace-tomorrow-night-blue .ace_marker-layer .ace_bracket {\ - margin: -1px 0 0 -1px;\ - border: 1px solid #404F7D;\ -}\ -\ -.ace-tomorrow-night-blue .ace_marker-layer .ace_active_line{\ - background: #00346E;\ -}\ -.ace-tomorrow-night-blue .ace_gutter_active_line{\ - background: #022040;\ -}\ -\ -.ace-tomorrow-night-blue .ace_marker-layer .ace_selected_word {\ - border: 1px solid #003F8E;\ -}\ -\ -.ace-tomorrow-night-blue .ace_invisible {\ - color: #404F7D;\ -}\ -\ -.ace-tomorrow-night-blue .ace_keyword, .ace-tomorrow-night-blue .ace_meta {\ - color:#EBBBFF;\ -}\ -\ -.ace-tomorrow-night-blue .ace_keyword.ace_operator {\ - color:#99FFFF;\ -}\ -\ -.ace-tomorrow-night-blue .ace_constant.ace_language {\ - color:#FFC58F;\ -}\ -\ -.ace-tomorrow-night-blue .ace_constant.ace_numeric {\ - color:#FFC58F;\ -}\ -\ -.ace-tomorrow-night-blue .ace_constant.ace_other {\ - color:#FFFFFF;\ -}\ -\ -.ace-tomorrow-night-blue .ace_invalid {\ - color:#FFFFFF;\ -background-color:#F99DA5;\ -}\ -\ -.ace-tomorrow-night-blue .ace_invalid.ace_deprecated {\ - color:#FFFFFF;\ -background-color:#EBBBFF;\ -}\ -\ -.ace-tomorrow-night-blue .ace_support.ace_constant {\ - color:#FFC58F;\ -}\ -\ -.ace-tomorrow-night-blue .ace_fold {\ - background-color: #BBDAFF;\ - border-color: #FFFFFF;\ -}\ -\ -.ace-tomorrow-night-blue .ace_support.ace_function {\ - color:#BBDAFF;\ -}\ -\ -.ace-tomorrow-night-blue .ace_storage {\ - color:#EBBBFF;\ -}\ -\ -.ace-tomorrow-night-blue .ace_storage.ace_type, .ace-tomorrow-night-blue .ace_support.ace_type{\ - color:#EBBBFF;\ -}\ -\ -.ace-tomorrow-night-blue .ace_variable {\ - color:#BBDAFF;\ -}\ -\ -.ace-tomorrow-night-blue .ace_variable.ace_parameter {\ - color:#FFC58F;\ -}\ -\ -.ace-tomorrow-night-blue .ace_string {\ - color:#D1F1A9;\ -}\ -\ -.ace-tomorrow-night-blue .ace_string.ace_regexp {\ - color:#FF9DA4;\ -}\ -\ -.ace-tomorrow-night-blue .ace_comment {\ - color:#7285B7;\ -}\ -\ -.ace-tomorrow-night-blue .ace_variable {\ - color:#FF9DA4;\ -}\ -\ -.ace-tomorrow-night-blue .ace_meta.ace_tag {\ - color:#FF9DA4;\ -}\ -\ -.ace-tomorrow-night-blue .ace_entity.ace_other.ace_attribute-name {\ - color:#FF9DA4;\ -}\ -\ -.ace-tomorrow-night-blue .ace_entity.ace_name.ace_function {\ - color:#BBDAFF;\ -}\ -\ -.ace-tomorrow-night-blue .ace_markup.ace_underline {\ - text-decoration:underline;\ -}\ -\ -.ace-tomorrow-night-blue .ace_markup.ace_heading {\ - color:#D1F1A9;\ -}"; - - var dom = require("../lib/dom"); - dom.importCssString(exports.cssText, exports.cssClass); -}); diff --git a/public/ace_editor/theme-tomorrow_night_blue.js b/public/ace_editor/theme-tomorrow_night_blue.js old mode 100644 new mode 100755 index 252a4fd..6dc17e5 --- a/public/ace_editor/theme-tomorrow_night_blue.js +++ b/public/ace_editor/theme-tomorrow_night_blue.js @@ -1 +1,137 @@ -define("ace/theme/tomorrow_night_blue",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!0,b.cssClass="ace-tomorrow-night-blue",b.cssText=".ace-tomorrow-night-blue .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-tomorrow-night-blue .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-tomorrow-night-blue .ace_gutter { background: #022346; color: #7388b5;}.ace-tomorrow-night-blue .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-tomorrow-night-blue .ace_scroller { background-color: #002451;}.ace-tomorrow-night-blue .ace_text-layer { cursor: text; color: #FFFFFF;}.ace-tomorrow-night-blue .ace_cursor { border-left: 2px solid #FFFFFF;}.ace-tomorrow-night-blue .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #FFFFFF;}.ace-tomorrow-night-blue .ace_marker-layer .ace_selection { background: #003F8E;}.ace-tomorrow-night-blue.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #002451; border-radius: 2px;}.ace-tomorrow-night-blue .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-tomorrow-night-blue .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid #404F7D;}.ace-tomorrow-night-blue .ace_marker-layer .ace_active_line{ background: #00346E;}.ace-tomorrow-night-blue .ace_gutter_active_line{ background: #022040;}.ace-tomorrow-night-blue .ace_marker-layer .ace_selected_word { border: 1px solid #003F8E;}.ace-tomorrow-night-blue .ace_invisible { color: #404F7D;}.ace-tomorrow-night-blue .ace_keyword, .ace-tomorrow-night-blue .ace_meta { color:#EBBBFF;}.ace-tomorrow-night-blue .ace_keyword.ace_operator { color:#99FFFF;}.ace-tomorrow-night-blue .ace_constant.ace_language { color:#FFC58F;}.ace-tomorrow-night-blue .ace_constant.ace_numeric { color:#FFC58F;}.ace-tomorrow-night-blue .ace_constant.ace_other { color:#FFFFFF;}.ace-tomorrow-night-blue .ace_invalid { color:#FFFFFF;background-color:#F99DA5;}.ace-tomorrow-night-blue .ace_invalid.ace_deprecated { color:#FFFFFF;background-color:#EBBBFF;}.ace-tomorrow-night-blue .ace_support.ace_constant { color:#FFC58F;}.ace-tomorrow-night-blue .ace_fold { background-color: #BBDAFF; border-color: #FFFFFF;}.ace-tomorrow-night-blue .ace_support.ace_function { color:#BBDAFF;}.ace-tomorrow-night-blue .ace_storage { color:#EBBBFF;}.ace-tomorrow-night-blue .ace_storage.ace_type, .ace-tomorrow-night-blue .ace_support.ace_type{ color:#EBBBFF;}.ace-tomorrow-night-blue .ace_variable { color:#BBDAFF;}.ace-tomorrow-night-blue .ace_variable.ace_parameter { color:#FFC58F;}.ace-tomorrow-night-blue .ace_string { color:#D1F1A9;}.ace-tomorrow-night-blue .ace_string.ace_regexp { color:#FF9DA4;}.ace-tomorrow-night-blue .ace_comment { color:#7285B7;}.ace-tomorrow-night-blue .ace_variable { color:#FF9DA4;}.ace-tomorrow-night-blue .ace_meta.ace_tag { color:#FF9DA4;}.ace-tomorrow-night-blue .ace_entity.ace_other.ace_attribute-name { color:#FF9DA4;}.ace-tomorrow-night-blue .ace_entity.ace_name.ace_function { color:#BBDAFF;}.ace-tomorrow-night-blue .ace_markup.ace_underline { text-decoration:underline;}.ace-tomorrow-night-blue .ace_markup.ace_heading { color:#D1F1A9;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)}) \ No newline at end of file +/* ***** BEGIN LICENSE BLOCK ***** + * Distributed under the BSD license: + * + * Copyright (c) 2010, Ajax.org B.V. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Ajax.org B.V. nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL AJAX.ORG B.V. BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * ***** END LICENSE BLOCK ***** */ + +ace.define('ace/theme/tomorrow_night_blue', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { + +exports.isDark = true; +exports.cssClass = "ace-tomorrow-night-blue"; +exports.cssText = ".ace-tomorrow-night-blue .ace_gutter {\ +background: #00204b;\ +color: #7388b5\ +}\ +.ace-tomorrow-night-blue .ace_print-margin {\ +width: 1px;\ +background: #00204b\ +}\ +.ace-tomorrow-night-blue {\ +background-color: #002451;\ +color: #FFFFFF\ +}\ +.ace-tomorrow-night-blue .ace_constant.ace_other,\ +.ace-tomorrow-night-blue .ace_cursor {\ +color: #FFFFFF\ +}\ +.ace-tomorrow-night-blue .ace_marker-layer .ace_selection {\ +background: #003F8E\ +}\ +.ace-tomorrow-night-blue.ace_multiselect .ace_selection.ace_start {\ +box-shadow: 0 0 3px 0px #002451;\ +border-radius: 2px\ +}\ +.ace-tomorrow-night-blue .ace_marker-layer .ace_step {\ +background: rgb(127, 111, 19)\ +}\ +.ace-tomorrow-night-blue .ace_marker-layer .ace_bracket {\ +margin: -1px 0 0 -1px;\ +border: 1px solid #404F7D\ +}\ +.ace-tomorrow-night-blue .ace_marker-layer .ace_active-line {\ +background: #00346E\ +}\ +.ace-tomorrow-night-blue .ace_gutter-active-line {\ +background-color: #022040\ +}\ +.ace-tomorrow-night-blue .ace_marker-layer .ace_selected-word {\ +border: 1px solid #003F8E\ +}\ +.ace-tomorrow-night-blue .ace_invisible {\ +color: #404F7D\ +}\ +.ace-tomorrow-night-blue .ace_keyword,\ +.ace-tomorrow-night-blue .ace_meta,\ +.ace-tomorrow-night-blue .ace_storage,\ +.ace-tomorrow-night-blue .ace_storage.ace_type,\ +.ace-tomorrow-night-blue .ace_support.ace_type {\ +color: #EBBBFF\ +}\ +.ace-tomorrow-night-blue .ace_keyword.ace_operator {\ +color: #99FFFF\ +}\ +.ace-tomorrow-night-blue .ace_constant.ace_character,\ +.ace-tomorrow-night-blue .ace_constant.ace_language,\ +.ace-tomorrow-night-blue .ace_constant.ace_numeric,\ +.ace-tomorrow-night-blue .ace_keyword.ace_other.ace_unit,\ +.ace-tomorrow-night-blue .ace_support.ace_constant,\ +.ace-tomorrow-night-blue .ace_variable.ace_parameter {\ +color: #FFC58F\ +}\ +.ace-tomorrow-night-blue .ace_invalid {\ +color: #FFFFFF;\ +background-color: #F99DA5\ +}\ +.ace-tomorrow-night-blue .ace_invalid.ace_deprecated {\ +color: #FFFFFF;\ +background-color: #EBBBFF\ +}\ +.ace-tomorrow-night-blue .ace_fold {\ +background-color: #BBDAFF;\ +border-color: #FFFFFF\ +}\ +.ace-tomorrow-night-blue .ace_entity.ace_name.ace_function,\ +.ace-tomorrow-night-blue .ace_support.ace_function,\ +.ace-tomorrow-night-blue .ace_variable {\ +color: #BBDAFF\ +}\ +.ace-tomorrow-night-blue .ace_support.ace_class,\ +.ace-tomorrow-night-blue .ace_support.ace_type {\ +color: #FFEEAD\ +}\ +.ace-tomorrow-night-blue .ace_heading,\ +.ace-tomorrow-night-blue .ace_markup.ace_heading,\ +.ace-tomorrow-night-blue .ace_string {\ +color: #D1F1A9\ +}\ +.ace-tomorrow-night-blue .ace_entity.ace_name.ace_tag,\ +.ace-tomorrow-night-blue .ace_entity.ace_other.ace_attribute-name,\ +.ace-tomorrow-night-blue .ace_meta.ace_tag,\ +.ace-tomorrow-night-blue .ace_string.ace_regexp,\ +.ace-tomorrow-night-blue .ace_variable {\ +color: #FF9DA4\ +}\ +.ace-tomorrow-night-blue .ace_comment {\ +color: #7285B7\ +}\ +.ace-tomorrow-night-blue .ace_indent-guide {\ +background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAEklEQVQImWNgYGBgYJDzqfwPAANXAeNsiA+ZAAAAAElFTkSuQmCC) right repeat-y\ +}"; + +var dom = require("../lib/dom"); +dom.importCssString(exports.cssText, exports.cssClass); +}); diff --git a/public/ace_editor/theme-tomorrow_night_bright-noconflict.js b/public/ace_editor/theme-tomorrow_night_bright-noconflict.js deleted file mode 100644 index 839033a..0000000 --- a/public/ace_editor/theme-tomorrow_night_bright-noconflict.js +++ /dev/null @@ -1 +0,0 @@ -ace.define("ace/theme/tomorrow_night_bright",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!0,b.cssClass="ace-tomorrow-night-bright",b.cssText=".ace-tomorrow-night-bright .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-tomorrow-night-bright .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-tomorrow-night-bright .ace_gutter { background: #e8e8e8; color: #333;}.ace-tomorrow-night-bright .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-tomorrow-night-bright .ace_scroller { background-color: #000000;}.ace-tomorrow-night-bright .ace_text-layer { cursor: text; color: #DEDEDE;}.ace-tomorrow-night-bright .ace_cursor { border-left: 2px solid #9F9F9F;}.ace-tomorrow-night-bright .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #9F9F9F;}.ace-tomorrow-night-bright .ace_marker-layer .ace_selection { background: #424242;}.ace-tomorrow-night-bright.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #000000; border-radius: 2px;}.ace-tomorrow-night-bright .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-tomorrow-night-bright .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid #343434;}.ace-tomorrow-night-bright .ace_marker-layer .ace_active_line { background: #2A2A2A;}.ace-tomorrow-night-bright .ace_marker-layer .ace_selected_word { border: 1px solid #424242;}.ace-tomorrow-night-bright .ace_invisible { color: #343434;}.ace-tomorrow-night-bright .ace_keyword, .ace-tomorrow-night-bright .ace_meta { color:#C397D8;}.ace-tomorrow-night-bright .ace_keyword.ace_operator { color:#70C0B1;}.ace-tomorrow-night-bright .ace_constant.ace_language { color:#E78C45;}.ace-tomorrow-night-bright .ace_constant.ace_numeric { color:#E78C45;}.ace-tomorrow-night-bright .ace_constant.ace_other { color:#EEEEEE;}.ace-tomorrow-night-bright .ace_invalid { color:#CED2CF;background-color:#DF5F5F;}.ace-tomorrow-night-bright .ace_invalid.ace_deprecated { color:#CED2CF;background-color:#B798BF;}.ace-tomorrow-night-bright .ace_support.ace_constant { color:#E78C45;}.ace-tomorrow-night-bright .ace_fold { background-color: #7AA6DA; border-color: #DEDEDE;}.ace-tomorrow-night-bright .ace_support.ace_function { color:#7AA6DA;}.ace-tomorrow-night-bright .ace_storage { color:#C397D8;}.ace-tomorrow-night-bright .ace_storage.ace_type, .ace-tomorrow-night-bright .ace_support.ace_type{ color:#C397D8;}.ace-tomorrow-night-bright .ace_variable { color:#7AA6DA;}.ace-tomorrow-night-bright .ace_variable.ace_parameter { color:#E78C45;}.ace-tomorrow-night-bright .ace_string { color:#B9CA4A;}.ace-tomorrow-night-bright .ace_string.ace_regexp { color:#D54E53;}.ace-tomorrow-night-bright .ace_comment { color:#969896;}.ace-tomorrow-night-bright .ace_variable { color:#D54E53;}.ace-tomorrow-night-bright .ace_meta.ace_tag { color:#D54E53;}.ace-tomorrow-night-bright .ace_entity.ace_other.ace_attribute-name { color:#D54E53;}.ace-tomorrow-night-bright .ace_entity.ace_name.ace_function { color:#7AA6DA;}.ace-tomorrow-night-bright .ace_markup.ace_underline { text-decoration:underline;}.ace-tomorrow-night-bright .ace_markup.ace_heading { color:#B9CA4A;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)}) \ No newline at end of file diff --git a/public/ace_editor/theme-tomorrow_night_bright-uncompressed-noconflict.js b/public/ace_editor/theme-tomorrow_night_bright-uncompressed-noconflict.js deleted file mode 100644 index 931f855..0000000 --- a/public/ace_editor/theme-tomorrow_night_bright-uncompressed-noconflict.js +++ /dev/null @@ -1,206 +0,0 @@ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla Public License Version - * 1.1 (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * http://www.mozilla.org/MPL/ - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - * - * The Original Code is Ajax.org Code Editor (ACE). - * - * The Initial Developer of the Original Code is - * Ajax.org B.V. - * Portions created by the Initial Developer are Copyright (C) 2010 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Fabian Jakobs - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -ace.define('ace/theme/tomorrow_night_bright', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { - -exports.isDark = true; -exports.cssClass = "ace-tomorrow-night-bright"; -exports.cssText = "\ -.ace-tomorrow-night-bright .ace_editor {\ - border: 2px solid rgb(159, 159, 159);\ -}\ -\ -.ace-tomorrow-night-bright .ace_editor.ace_focus {\ - border: 2px solid #327fbd;\ -}\ -\ -.ace-tomorrow-night-bright .ace_gutter {\ - background: #e8e8e8;\ - color: #333;\ -}\ -\ -.ace-tomorrow-night-bright .ace_print_margin {\ - width: 1px;\ - background: #e8e8e8;\ -}\ -\ -.ace-tomorrow-night-bright .ace_scroller {\ - background-color: #000000;\ -}\ -\ -.ace-tomorrow-night-bright .ace_text-layer {\ - cursor: text;\ - color: #DEDEDE;\ -}\ -\ -.ace-tomorrow-night-bright .ace_cursor {\ - border-left: 2px solid #9F9F9F;\ -}\ -\ -.ace-tomorrow-night-bright .ace_cursor.ace_overwrite {\ - border-left: 0px;\ - border-bottom: 1px solid #9F9F9F;\ -}\ -\ -.ace-tomorrow-night-bright .ace_marker-layer .ace_selection {\ - background: #424242;\ -}\ -\ -.ace-tomorrow-night-bright.multiselect .ace_selection.start {\ - box-shadow: 0 0 3px 0px #000000;\ - border-radius: 2px;\ -}\ -\ -.ace-tomorrow-night-bright .ace_marker-layer .ace_step {\ - background: rgb(198, 219, 174);\ -}\ -\ -.ace-tomorrow-night-bright .ace_marker-layer .ace_bracket {\ - margin: -1px 0 0 -1px;\ - border: 1px solid #343434;\ -}\ -\ -.ace-tomorrow-night-bright .ace_marker-layer .ace_active_line {\ - background: #2A2A2A;\ -}\ -\ -.ace-tomorrow-night-bright .ace_marker-layer .ace_selected_word {\ - border: 1px solid #424242;\ -}\ -\ -.ace-tomorrow-night-bright .ace_invisible {\ - color: #343434;\ -}\ -\ -.ace-tomorrow-night-bright .ace_keyword, .ace-tomorrow-night-bright .ace_meta {\ - color:#C397D8;\ -}\ -\ -.ace-tomorrow-night-bright .ace_keyword.ace_operator {\ - color:#70C0B1;\ -}\ -\ -.ace-tomorrow-night-bright .ace_constant.ace_language {\ - color:#E78C45;\ -}\ -\ -.ace-tomorrow-night-bright .ace_constant.ace_numeric {\ - color:#E78C45;\ -}\ -\ -.ace-tomorrow-night-bright .ace_constant.ace_other {\ - color:#EEEEEE;\ -}\ -\ -.ace-tomorrow-night-bright .ace_invalid {\ - color:#CED2CF;\ -background-color:#DF5F5F;\ -}\ -\ -.ace-tomorrow-night-bright .ace_invalid.ace_deprecated {\ - color:#CED2CF;\ -background-color:#B798BF;\ -}\ -\ -.ace-tomorrow-night-bright .ace_support.ace_constant {\ - color:#E78C45;\ -}\ -\ -.ace-tomorrow-night-bright .ace_fold {\ - background-color: #7AA6DA;\ - border-color: #DEDEDE;\ -}\ -\ -.ace-tomorrow-night-bright .ace_support.ace_function {\ - color:#7AA6DA;\ -}\ -\ -.ace-tomorrow-night-bright .ace_storage {\ - color:#C397D8;\ -}\ -\ -.ace-tomorrow-night-bright .ace_storage.ace_type, .ace-tomorrow-night-bright .ace_support.ace_type{\ - color:#C397D8;\ -}\ -\ -.ace-tomorrow-night-bright .ace_variable {\ - color:#7AA6DA;\ -}\ -\ -.ace-tomorrow-night-bright .ace_variable.ace_parameter {\ - color:#E78C45;\ -}\ -\ -.ace-tomorrow-night-bright .ace_string {\ - color:#B9CA4A;\ -}\ -\ -.ace-tomorrow-night-bright .ace_string.ace_regexp {\ - color:#D54E53;\ -}\ -\ -.ace-tomorrow-night-bright .ace_comment {\ - color:#969896;\ -}\ -\ -.ace-tomorrow-night-bright .ace_variable {\ - color:#D54E53;\ -}\ -\ -.ace-tomorrow-night-bright .ace_meta.ace_tag {\ - color:#D54E53;\ -}\ -\ -.ace-tomorrow-night-bright .ace_entity.ace_other.ace_attribute-name {\ - color:#D54E53;\ -}\ -\ -.ace-tomorrow-night-bright .ace_entity.ace_name.ace_function {\ - color:#7AA6DA;\ -}\ -\ -.ace-tomorrow-night-bright .ace_markup.ace_underline {\ - text-decoration:underline;\ -}\ -\ -.ace-tomorrow-night-bright .ace_markup.ace_heading {\ - color:#B9CA4A;\ -}"; - - var dom = require("../lib/dom"); - dom.importCssString(exports.cssText, exports.cssClass); -}); diff --git a/public/ace_editor/theme-tomorrow_night_bright-uncompressed.js b/public/ace_editor/theme-tomorrow_night_bright-uncompressed.js deleted file mode 100644 index 7d93bee..0000000 --- a/public/ace_editor/theme-tomorrow_night_bright-uncompressed.js +++ /dev/null @@ -1,206 +0,0 @@ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla Public License Version - * 1.1 (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * http://www.mozilla.org/MPL/ - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - * - * The Original Code is Ajax.org Code Editor (ACE). - * - * The Initial Developer of the Original Code is - * Ajax.org B.V. - * Portions created by the Initial Developer are Copyright (C) 2010 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Fabian Jakobs - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -define('ace/theme/tomorrow_night_bright', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { - -exports.isDark = true; -exports.cssClass = "ace-tomorrow-night-bright"; -exports.cssText = "\ -.ace-tomorrow-night-bright .ace_editor {\ - border: 2px solid rgb(159, 159, 159);\ -}\ -\ -.ace-tomorrow-night-bright .ace_editor.ace_focus {\ - border: 2px solid #327fbd;\ -}\ -\ -.ace-tomorrow-night-bright .ace_gutter {\ - background: #e8e8e8;\ - color: #333;\ -}\ -\ -.ace-tomorrow-night-bright .ace_print_margin {\ - width: 1px;\ - background: #e8e8e8;\ -}\ -\ -.ace-tomorrow-night-bright .ace_scroller {\ - background-color: #000000;\ -}\ -\ -.ace-tomorrow-night-bright .ace_text-layer {\ - cursor: text;\ - color: #DEDEDE;\ -}\ -\ -.ace-tomorrow-night-bright .ace_cursor {\ - border-left: 2px solid #9F9F9F;\ -}\ -\ -.ace-tomorrow-night-bright .ace_cursor.ace_overwrite {\ - border-left: 0px;\ - border-bottom: 1px solid #9F9F9F;\ -}\ -\ -.ace-tomorrow-night-bright .ace_marker-layer .ace_selection {\ - background: #424242;\ -}\ -\ -.ace-tomorrow-night-bright.multiselect .ace_selection.start {\ - box-shadow: 0 0 3px 0px #000000;\ - border-radius: 2px;\ -}\ -\ -.ace-tomorrow-night-bright .ace_marker-layer .ace_step {\ - background: rgb(198, 219, 174);\ -}\ -\ -.ace-tomorrow-night-bright .ace_marker-layer .ace_bracket {\ - margin: -1px 0 0 -1px;\ - border: 1px solid #343434;\ -}\ -\ -.ace-tomorrow-night-bright .ace_marker-layer .ace_active_line {\ - background: #2A2A2A;\ -}\ -\ -.ace-tomorrow-night-bright .ace_marker-layer .ace_selected_word {\ - border: 1px solid #424242;\ -}\ -\ -.ace-tomorrow-night-bright .ace_invisible {\ - color: #343434;\ -}\ -\ -.ace-tomorrow-night-bright .ace_keyword, .ace-tomorrow-night-bright .ace_meta {\ - color:#C397D8;\ -}\ -\ -.ace-tomorrow-night-bright .ace_keyword.ace_operator {\ - color:#70C0B1;\ -}\ -\ -.ace-tomorrow-night-bright .ace_constant.ace_language {\ - color:#E78C45;\ -}\ -\ -.ace-tomorrow-night-bright .ace_constant.ace_numeric {\ - color:#E78C45;\ -}\ -\ -.ace-tomorrow-night-bright .ace_constant.ace_other {\ - color:#EEEEEE;\ -}\ -\ -.ace-tomorrow-night-bright .ace_invalid {\ - color:#CED2CF;\ -background-color:#DF5F5F;\ -}\ -\ -.ace-tomorrow-night-bright .ace_invalid.ace_deprecated {\ - color:#CED2CF;\ -background-color:#B798BF;\ -}\ -\ -.ace-tomorrow-night-bright .ace_support.ace_constant {\ - color:#E78C45;\ -}\ -\ -.ace-tomorrow-night-bright .ace_fold {\ - background-color: #7AA6DA;\ - border-color: #DEDEDE;\ -}\ -\ -.ace-tomorrow-night-bright .ace_support.ace_function {\ - color:#7AA6DA;\ -}\ -\ -.ace-tomorrow-night-bright .ace_storage {\ - color:#C397D8;\ -}\ -\ -.ace-tomorrow-night-bright .ace_storage.ace_type, .ace-tomorrow-night-bright .ace_support.ace_type{\ - color:#C397D8;\ -}\ -\ -.ace-tomorrow-night-bright .ace_variable {\ - color:#7AA6DA;\ -}\ -\ -.ace-tomorrow-night-bright .ace_variable.ace_parameter {\ - color:#E78C45;\ -}\ -\ -.ace-tomorrow-night-bright .ace_string {\ - color:#B9CA4A;\ -}\ -\ -.ace-tomorrow-night-bright .ace_string.ace_regexp {\ - color:#D54E53;\ -}\ -\ -.ace-tomorrow-night-bright .ace_comment {\ - color:#969896;\ -}\ -\ -.ace-tomorrow-night-bright .ace_variable {\ - color:#D54E53;\ -}\ -\ -.ace-tomorrow-night-bright .ace_meta.ace_tag {\ - color:#D54E53;\ -}\ -\ -.ace-tomorrow-night-bright .ace_entity.ace_other.ace_attribute-name {\ - color:#D54E53;\ -}\ -\ -.ace-tomorrow-night-bright .ace_entity.ace_name.ace_function {\ - color:#7AA6DA;\ -}\ -\ -.ace-tomorrow-night-bright .ace_markup.ace_underline {\ - text-decoration:underline;\ -}\ -\ -.ace-tomorrow-night-bright .ace_markup.ace_heading {\ - color:#B9CA4A;\ -}"; - - var dom = require("../lib/dom"); - dom.importCssString(exports.cssText, exports.cssClass); -}); diff --git a/public/ace_editor/theme-tomorrow_night_bright.js b/public/ace_editor/theme-tomorrow_night_bright.js old mode 100644 new mode 100755 index 0566de0..7763677 --- a/public/ace_editor/theme-tomorrow_night_bright.js +++ b/public/ace_editor/theme-tomorrow_night_bright.js @@ -1 +1,152 @@ -define("ace/theme/tomorrow_night_bright",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!0,b.cssClass="ace-tomorrow-night-bright",b.cssText=".ace-tomorrow-night-bright .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-tomorrow-night-bright .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-tomorrow-night-bright .ace_gutter { background: #e8e8e8; color: #333;}.ace-tomorrow-night-bright .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-tomorrow-night-bright .ace_scroller { background-color: #000000;}.ace-tomorrow-night-bright .ace_text-layer { cursor: text; color: #DEDEDE;}.ace-tomorrow-night-bright .ace_cursor { border-left: 2px solid #9F9F9F;}.ace-tomorrow-night-bright .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #9F9F9F;}.ace-tomorrow-night-bright .ace_marker-layer .ace_selection { background: #424242;}.ace-tomorrow-night-bright.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #000000; border-radius: 2px;}.ace-tomorrow-night-bright .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-tomorrow-night-bright .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid #343434;}.ace-tomorrow-night-bright .ace_marker-layer .ace_active_line { background: #2A2A2A;}.ace-tomorrow-night-bright .ace_marker-layer .ace_selected_word { border: 1px solid #424242;}.ace-tomorrow-night-bright .ace_invisible { color: #343434;}.ace-tomorrow-night-bright .ace_keyword, .ace-tomorrow-night-bright .ace_meta { color:#C397D8;}.ace-tomorrow-night-bright .ace_keyword.ace_operator { color:#70C0B1;}.ace-tomorrow-night-bright .ace_constant.ace_language { color:#E78C45;}.ace-tomorrow-night-bright .ace_constant.ace_numeric { color:#E78C45;}.ace-tomorrow-night-bright .ace_constant.ace_other { color:#EEEEEE;}.ace-tomorrow-night-bright .ace_invalid { color:#CED2CF;background-color:#DF5F5F;}.ace-tomorrow-night-bright .ace_invalid.ace_deprecated { color:#CED2CF;background-color:#B798BF;}.ace-tomorrow-night-bright .ace_support.ace_constant { color:#E78C45;}.ace-tomorrow-night-bright .ace_fold { background-color: #7AA6DA; border-color: #DEDEDE;}.ace-tomorrow-night-bright .ace_support.ace_function { color:#7AA6DA;}.ace-tomorrow-night-bright .ace_storage { color:#C397D8;}.ace-tomorrow-night-bright .ace_storage.ace_type, .ace-tomorrow-night-bright .ace_support.ace_type{ color:#C397D8;}.ace-tomorrow-night-bright .ace_variable { color:#7AA6DA;}.ace-tomorrow-night-bright .ace_variable.ace_parameter { color:#E78C45;}.ace-tomorrow-night-bright .ace_string { color:#B9CA4A;}.ace-tomorrow-night-bright .ace_string.ace_regexp { color:#D54E53;}.ace-tomorrow-night-bright .ace_comment { color:#969896;}.ace-tomorrow-night-bright .ace_variable { color:#D54E53;}.ace-tomorrow-night-bright .ace_meta.ace_tag { color:#D54E53;}.ace-tomorrow-night-bright .ace_entity.ace_other.ace_attribute-name { color:#D54E53;}.ace-tomorrow-night-bright .ace_entity.ace_name.ace_function { color:#7AA6DA;}.ace-tomorrow-night-bright .ace_markup.ace_underline { text-decoration:underline;}.ace-tomorrow-night-bright .ace_markup.ace_heading { color:#B9CA4A;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)}) \ No newline at end of file +/* ***** BEGIN LICENSE BLOCK ***** + * Distributed under the BSD license: + * + * Copyright (c) 2010, Ajax.org B.V. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Ajax.org B.V. nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL AJAX.ORG B.V. BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * ***** END LICENSE BLOCK ***** */ + +ace.define('ace/theme/tomorrow_night_bright', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { + +exports.isDark = true; +exports.cssClass = "ace-tomorrow-night-bright"; +exports.cssText = ".ace-tomorrow-night-bright .ace_gutter {\ +background: #1a1a1a;\ +color: #DEDEDE\ +}\ +.ace-tomorrow-night-bright .ace_print-margin {\ +width: 1px;\ +background: #1a1a1a\ +}\ +.ace-tomorrow-night-bright {\ +background-color: #000000;\ +color: #DEDEDE\ +}\ +.ace-tomorrow-night-bright .ace_cursor {\ +color: #9F9F9F\ +}\ +.ace-tomorrow-night-bright .ace_marker-layer .ace_selection {\ +background: #424242\ +}\ +.ace-tomorrow-night-bright.ace_multiselect .ace_selection.ace_start {\ +box-shadow: 0 0 3px 0px #000000;\ +border-radius: 2px\ +}\ +.ace-tomorrow-night-bright .ace_marker-layer .ace_step {\ +background: rgb(102, 82, 0)\ +}\ +.ace-tomorrow-night-bright .ace_marker-layer .ace_bracket {\ +margin: -1px 0 0 -1px;\ +border: 1px solid #888888\ +}\ +.ace-tomorrow-night-bright .ace_marker-layer .ace_highlight {\ +border: 1px solid rgb(110, 119, 0);\ +border-bottom: 0;\ +box-shadow: inset 0 -1px rgb(110, 119, 0);\ +margin: -1px 0 0 -1px;\ +background: rgba(255, 235, 0, 0.1);\ +}\ +.ace-tomorrow-night-bright .ace_marker-layer .ace_active-line {\ +background: #2A2A2A\ +}\ +.ace-tomorrow-night-bright .ace_gutter-active-line {\ +background-color: #2A2A2A\ +}\ +.ace-tomorrow-night-bright .ace_stack {\ +background-color: rgb(66, 90, 44)\ +}\ +.ace-tomorrow-night-bright .ace_marker-layer .ace_selected-word {\ +border: 1px solid #888888\ +}\ +.ace-tomorrow-night-bright .ace_invisible {\ +color: #343434\ +}\ +.ace-tomorrow-night-bright .ace_keyword,\ +.ace-tomorrow-night-bright .ace_meta,\ +.ace-tomorrow-night-bright .ace_storage,\ +.ace-tomorrow-night-bright .ace_storage.ace_type,\ +.ace-tomorrow-night-bright .ace_support.ace_type {\ +color: #C397D8\ +}\ +.ace-tomorrow-night-bright .ace_keyword.ace_operator {\ +color: #70C0B1\ +}\ +.ace-tomorrow-night-bright .ace_constant.ace_character,\ +.ace-tomorrow-night-bright .ace_constant.ace_language,\ +.ace-tomorrow-night-bright .ace_constant.ace_numeric,\ +.ace-tomorrow-night-bright .ace_keyword.ace_other.ace_unit,\ +.ace-tomorrow-night-bright .ace_support.ace_constant,\ +.ace-tomorrow-night-bright .ace_variable.ace_parameter {\ +color: #E78C45\ +}\ +.ace-tomorrow-night-bright .ace_constant.ace_other {\ +color: #EEEEEE\ +}\ +.ace-tomorrow-night-bright .ace_invalid {\ +color: #CED2CF;\ +background-color: #DF5F5F\ +}\ +.ace-tomorrow-night-bright .ace_invalid.ace_deprecated {\ +color: #CED2CF;\ +background-color: #B798BF\ +}\ +.ace-tomorrow-night-bright .ace_fold {\ +background-color: #7AA6DA;\ +border-color: #DEDEDE\ +}\ +.ace-tomorrow-night-bright .ace_entity.ace_name.ace_function,\ +.ace-tomorrow-night-bright .ace_support.ace_function,\ +.ace-tomorrow-night-bright .ace_variable {\ +color: #7AA6DA\ +}\ +.ace-tomorrow-night-bright .ace_support.ace_class,\ +.ace-tomorrow-night-bright .ace_support.ace_type {\ +color: #E7C547\ +}\ +.ace-tomorrow-night-bright .ace_heading,\ +.ace-tomorrow-night-bright .ace_markup.ace_heading,\ +.ace-tomorrow-night-bright .ace_string {\ +color: #B9CA4A\ +}\ +.ace-tomorrow-night-bright .ace_entity.ace_name.ace_tag,\ +.ace-tomorrow-night-bright .ace_entity.ace_other.ace_attribute-name,\ +.ace-tomorrow-night-bright .ace_meta.ace_tag,\ +.ace-tomorrow-night-bright .ace_string.ace_regexp,\ +.ace-tomorrow-night-bright .ace_variable {\ +color: #D54E53\ +}\ +.ace-tomorrow-night-bright .ace_comment {\ +color: #969896\ +}\ +.ace-tomorrow-night-bright .ace_c9searchresults.ace_keyword {\ +color: #C2C280;\ +}\ +.ace-tomorrow-night-bright .ace_indent-guide {\ +background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAEklEQVQImWNgYGBgYFBXV/8PAAJoAXX4kT2EAAAAAElFTkSuQmCC) right repeat-y\ +}"; + +var dom = require("../lib/dom"); +dom.importCssString(exports.cssText, exports.cssClass); +}); diff --git a/public/ace_editor/theme-tomorrow_night_eighties-noconflict.js b/public/ace_editor/theme-tomorrow_night_eighties-noconflict.js deleted file mode 100644 index 8c2f344..0000000 --- a/public/ace_editor/theme-tomorrow_night_eighties-noconflict.js +++ /dev/null @@ -1 +0,0 @@ -ace.define("ace/theme/tomorrow_night_eighties",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!0,b.cssClass="ace-tomorrow-night-eighties",b.cssText=".ace-tomorrow-night-eighties .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-tomorrow-night-eighties .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-tomorrow-night-eighties .ace_gutter { background: #e8e8e8; color: #333;}.ace-tomorrow-night-eighties .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-tomorrow-night-eighties .ace_scroller { background-color: #2D2D2D;}.ace-tomorrow-night-eighties .ace_text-layer { cursor: text; color: #CCCCCC;}.ace-tomorrow-night-eighties .ace_cursor { border-left: 2px solid #CCCCCC;}.ace-tomorrow-night-eighties .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #CCCCCC;}.ace-tomorrow-night-eighties .ace_marker-layer .ace_selection { background: #515151;}.ace-tomorrow-night-eighties.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #2D2D2D; border-radius: 2px;}.ace-tomorrow-night-eighties .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-tomorrow-night-eighties .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid #6A6A6A;}.ace-tomorrow-night-eighties .ace_marker-layer .ace_active_line { background: #393939;}.ace-tomorrow-night-eighties .ace_marker-layer .ace_selected_word { border: 1px solid #515151;}.ace-tomorrow-night-eighties .ace_invisible { color: #6A6A6A;}.ace-tomorrow-night-eighties .ace_keyword, .ace-tomorrow-night-eighties .ace_meta { color:#CC99CC;}.ace-tomorrow-night-eighties .ace_keyword.ace_operator { color:#66CCCC;}.ace-tomorrow-night-eighties .ace_constant.ace_language { color:#F99157;}.ace-tomorrow-night-eighties .ace_constant.ace_numeric { color:#F99157;}.ace-tomorrow-night-eighties .ace_constant.ace_other { color:#CCCCCC;}.ace-tomorrow-night-eighties .ace_invalid { color:#CDCDCD;background-color:#F2777A;}.ace-tomorrow-night-eighties .ace_invalid.ace_deprecated { color:#CDCDCD;background-color:#CC99CC;}.ace-tomorrow-night-eighties .ace_support.ace_constant { color:#F99157;}.ace-tomorrow-night-eighties .ace_fold { background-color: #6699CC; border-color: #CCCCCC;}.ace-tomorrow-night-eighties .ace_support.ace_function { color:#6699CC;}.ace-tomorrow-night-eighties .ace_storage { color:#CC99CC;}.ace-tomorrow-night-eighties .ace_storage.ace_type, .ace-tomorrow-night-eighties .ace_support.ace_type{ color:#CC99CC;}.ace-tomorrow-night-eighties .ace_variable { color:#6699CC;}.ace-tomorrow-night-eighties .ace_variable.ace_parameter { color:#F99157;}.ace-tomorrow-night-eighties .ace_string { color:#99CC99;}.ace-tomorrow-night-eighties .ace_comment { color:#999999;}.ace-tomorrow-night-eighties .ace_variable { color:#F2777A;}.ace-tomorrow-night-eighties .ace_meta.ace_tag { color:#F2777A;}.ace-tomorrow-night-eighties .ace_entity.ace_other.ace_attribute-name { color:#F2777A;}.ace-tomorrow-night-eighties .ace_entity.ace_name.ace_function { color:#6699CC;}.ace-tomorrow-night-eighties .ace_markup.ace_underline { text-decoration:underline;}.ace-tomorrow-night-eighties .ace_markup.ace_heading { color:#99CC99;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)}) \ No newline at end of file diff --git a/public/ace_editor/theme-tomorrow_night_eighties-uncompressed-noconflict.js b/public/ace_editor/theme-tomorrow_night_eighties-uncompressed-noconflict.js deleted file mode 100644 index 631d78c..0000000 --- a/public/ace_editor/theme-tomorrow_night_eighties-uncompressed-noconflict.js +++ /dev/null @@ -1,202 +0,0 @@ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla Public License Version - * 1.1 (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * http://www.mozilla.org/MPL/ - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - * - * The Original Code is Ajax.org Code Editor (ACE). - * - * The Initial Developer of the Original Code is - * Ajax.org B.V. - * Portions created by the Initial Developer are Copyright (C) 2010 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Fabian Jakobs - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -ace.define('ace/theme/tomorrow_night_eighties', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { - -exports.isDark = true; -exports.cssClass = "ace-tomorrow-night-eighties"; -exports.cssText = "\ -.ace-tomorrow-night-eighties .ace_editor {\ - border: 2px solid rgb(159, 159, 159);\ -}\ -\ -.ace-tomorrow-night-eighties .ace_editor.ace_focus {\ - border: 2px solid #327fbd;\ -}\ -\ -.ace-tomorrow-night-eighties .ace_gutter {\ - background: #e8e8e8;\ - color: #333;\ -}\ -\ -.ace-tomorrow-night-eighties .ace_print_margin {\ - width: 1px;\ - background: #e8e8e8;\ -}\ -\ -.ace-tomorrow-night-eighties .ace_scroller {\ - background-color: #2D2D2D;\ -}\ -\ -.ace-tomorrow-night-eighties .ace_text-layer {\ - cursor: text;\ - color: #CCCCCC;\ -}\ -\ -.ace-tomorrow-night-eighties .ace_cursor {\ - border-left: 2px solid #CCCCCC;\ -}\ -\ -.ace-tomorrow-night-eighties .ace_cursor.ace_overwrite {\ - border-left: 0px;\ - border-bottom: 1px solid #CCCCCC;\ -}\ -\ -.ace-tomorrow-night-eighties .ace_marker-layer .ace_selection {\ - background: #515151;\ -}\ -\ -.ace-tomorrow-night-eighties.multiselect .ace_selection.start {\ - box-shadow: 0 0 3px 0px #2D2D2D;\ - border-radius: 2px;\ -}\ -\ -.ace-tomorrow-night-eighties .ace_marker-layer .ace_step {\ - background: rgb(198, 219, 174);\ -}\ -\ -.ace-tomorrow-night-eighties .ace_marker-layer .ace_bracket {\ - margin: -1px 0 0 -1px;\ - border: 1px solid #6A6A6A;\ -}\ -\ -.ace-tomorrow-night-eighties .ace_marker-layer .ace_active_line {\ - background: #393939;\ -}\ -\ -.ace-tomorrow-night-eighties .ace_marker-layer .ace_selected_word {\ - border: 1px solid #515151;\ -}\ -\ -.ace-tomorrow-night-eighties .ace_invisible {\ - color: #6A6A6A;\ -}\ -\ -.ace-tomorrow-night-eighties .ace_keyword, .ace-tomorrow-night-eighties .ace_meta {\ - color:#CC99CC;\ -}\ -\ -.ace-tomorrow-night-eighties .ace_keyword.ace_operator {\ - color:#66CCCC;\ -}\ -\ -.ace-tomorrow-night-eighties .ace_constant.ace_language {\ - color:#F99157;\ -}\ -\ -.ace-tomorrow-night-eighties .ace_constant.ace_numeric {\ - color:#F99157;\ -}\ -\ -.ace-tomorrow-night-eighties .ace_constant.ace_other {\ - color:#CCCCCC;\ -}\ -\ -.ace-tomorrow-night-eighties .ace_invalid {\ - color:#CDCDCD;\ -background-color:#F2777A;\ -}\ -\ -.ace-tomorrow-night-eighties .ace_invalid.ace_deprecated {\ - color:#CDCDCD;\ -background-color:#CC99CC;\ -}\ -\ -.ace-tomorrow-night-eighties .ace_support.ace_constant {\ - color:#F99157;\ -}\ -\ -.ace-tomorrow-night-eighties .ace_fold {\ - background-color: #6699CC;\ - border-color: #CCCCCC;\ -}\ -\ -.ace-tomorrow-night-eighties .ace_support.ace_function {\ - color:#6699CC;\ -}\ -\ -.ace-tomorrow-night-eighties .ace_storage {\ - color:#CC99CC;\ -}\ -\ -.ace-tomorrow-night-eighties .ace_storage.ace_type, .ace-tomorrow-night-eighties .ace_support.ace_type{\ - color:#CC99CC;\ -}\ -\ -.ace-tomorrow-night-eighties .ace_variable {\ - color:#6699CC;\ -}\ -\ -.ace-tomorrow-night-eighties .ace_variable.ace_parameter {\ - color:#F99157;\ -}\ -\ -.ace-tomorrow-night-eighties .ace_string {\ - color:#99CC99;\ -}\ -\ -.ace-tomorrow-night-eighties .ace_comment {\ - color:#999999;\ -}\ -\ -.ace-tomorrow-night-eighties .ace_variable {\ - color:#F2777A;\ -}\ -\ -.ace-tomorrow-night-eighties .ace_meta.ace_tag {\ - color:#F2777A;\ -}\ -\ -.ace-tomorrow-night-eighties .ace_entity.ace_other.ace_attribute-name {\ - color:#F2777A;\ -}\ -\ -.ace-tomorrow-night-eighties .ace_entity.ace_name.ace_function {\ - color:#6699CC;\ -}\ -\ -.ace-tomorrow-night-eighties .ace_markup.ace_underline {\ - text-decoration:underline;\ -}\ -\ -.ace-tomorrow-night-eighties .ace_markup.ace_heading {\ - color:#99CC99;\ -}"; - - var dom = require("../lib/dom"); - dom.importCssString(exports.cssText, exports.cssClass); -}); diff --git a/public/ace_editor/theme-tomorrow_night_eighties-uncompressed.js b/public/ace_editor/theme-tomorrow_night_eighties-uncompressed.js deleted file mode 100644 index 9b24b0e..0000000 --- a/public/ace_editor/theme-tomorrow_night_eighties-uncompressed.js +++ /dev/null @@ -1,202 +0,0 @@ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla Public License Version - * 1.1 (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * http://www.mozilla.org/MPL/ - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - * - * The Original Code is Ajax.org Code Editor (ACE). - * - * The Initial Developer of the Original Code is - * Ajax.org B.V. - * Portions created by the Initial Developer are Copyright (C) 2010 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Fabian Jakobs - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -define('ace/theme/tomorrow_night_eighties', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { - -exports.isDark = true; -exports.cssClass = "ace-tomorrow-night-eighties"; -exports.cssText = "\ -.ace-tomorrow-night-eighties .ace_editor {\ - border: 2px solid rgb(159, 159, 159);\ -}\ -\ -.ace-tomorrow-night-eighties .ace_editor.ace_focus {\ - border: 2px solid #327fbd;\ -}\ -\ -.ace-tomorrow-night-eighties .ace_gutter {\ - background: #e8e8e8;\ - color: #333;\ -}\ -\ -.ace-tomorrow-night-eighties .ace_print_margin {\ - width: 1px;\ - background: #e8e8e8;\ -}\ -\ -.ace-tomorrow-night-eighties .ace_scroller {\ - background-color: #2D2D2D;\ -}\ -\ -.ace-tomorrow-night-eighties .ace_text-layer {\ - cursor: text;\ - color: #CCCCCC;\ -}\ -\ -.ace-tomorrow-night-eighties .ace_cursor {\ - border-left: 2px solid #CCCCCC;\ -}\ -\ -.ace-tomorrow-night-eighties .ace_cursor.ace_overwrite {\ - border-left: 0px;\ - border-bottom: 1px solid #CCCCCC;\ -}\ -\ -.ace-tomorrow-night-eighties .ace_marker-layer .ace_selection {\ - background: #515151;\ -}\ -\ -.ace-tomorrow-night-eighties.multiselect .ace_selection.start {\ - box-shadow: 0 0 3px 0px #2D2D2D;\ - border-radius: 2px;\ -}\ -\ -.ace-tomorrow-night-eighties .ace_marker-layer .ace_step {\ - background: rgb(198, 219, 174);\ -}\ -\ -.ace-tomorrow-night-eighties .ace_marker-layer .ace_bracket {\ - margin: -1px 0 0 -1px;\ - border: 1px solid #6A6A6A;\ -}\ -\ -.ace-tomorrow-night-eighties .ace_marker-layer .ace_active_line {\ - background: #393939;\ -}\ -\ -.ace-tomorrow-night-eighties .ace_marker-layer .ace_selected_word {\ - border: 1px solid #515151;\ -}\ -\ -.ace-tomorrow-night-eighties .ace_invisible {\ - color: #6A6A6A;\ -}\ -\ -.ace-tomorrow-night-eighties .ace_keyword, .ace-tomorrow-night-eighties .ace_meta {\ - color:#CC99CC;\ -}\ -\ -.ace-tomorrow-night-eighties .ace_keyword.ace_operator {\ - color:#66CCCC;\ -}\ -\ -.ace-tomorrow-night-eighties .ace_constant.ace_language {\ - color:#F99157;\ -}\ -\ -.ace-tomorrow-night-eighties .ace_constant.ace_numeric {\ - color:#F99157;\ -}\ -\ -.ace-tomorrow-night-eighties .ace_constant.ace_other {\ - color:#CCCCCC;\ -}\ -\ -.ace-tomorrow-night-eighties .ace_invalid {\ - color:#CDCDCD;\ -background-color:#F2777A;\ -}\ -\ -.ace-tomorrow-night-eighties .ace_invalid.ace_deprecated {\ - color:#CDCDCD;\ -background-color:#CC99CC;\ -}\ -\ -.ace-tomorrow-night-eighties .ace_support.ace_constant {\ - color:#F99157;\ -}\ -\ -.ace-tomorrow-night-eighties .ace_fold {\ - background-color: #6699CC;\ - border-color: #CCCCCC;\ -}\ -\ -.ace-tomorrow-night-eighties .ace_support.ace_function {\ - color:#6699CC;\ -}\ -\ -.ace-tomorrow-night-eighties .ace_storage {\ - color:#CC99CC;\ -}\ -\ -.ace-tomorrow-night-eighties .ace_storage.ace_type, .ace-tomorrow-night-eighties .ace_support.ace_type{\ - color:#CC99CC;\ -}\ -\ -.ace-tomorrow-night-eighties .ace_variable {\ - color:#6699CC;\ -}\ -\ -.ace-tomorrow-night-eighties .ace_variable.ace_parameter {\ - color:#F99157;\ -}\ -\ -.ace-tomorrow-night-eighties .ace_string {\ - color:#99CC99;\ -}\ -\ -.ace-tomorrow-night-eighties .ace_comment {\ - color:#999999;\ -}\ -\ -.ace-tomorrow-night-eighties .ace_variable {\ - color:#F2777A;\ -}\ -\ -.ace-tomorrow-night-eighties .ace_meta.ace_tag {\ - color:#F2777A;\ -}\ -\ -.ace-tomorrow-night-eighties .ace_entity.ace_other.ace_attribute-name {\ - color:#F2777A;\ -}\ -\ -.ace-tomorrow-night-eighties .ace_entity.ace_name.ace_function {\ - color:#6699CC;\ -}\ -\ -.ace-tomorrow-night-eighties .ace_markup.ace_underline {\ - text-decoration:underline;\ -}\ -\ -.ace-tomorrow-night-eighties .ace_markup.ace_heading {\ - color:#99CC99;\ -}"; - - var dom = require("../lib/dom"); - dom.importCssString(exports.cssText, exports.cssClass); -}); diff --git a/public/ace_editor/theme-tomorrow_night_eighties.js b/public/ace_editor/theme-tomorrow_night_eighties.js old mode 100644 new mode 100755 index 21cb743..3146147 --- a/public/ace_editor/theme-tomorrow_night_eighties.js +++ b/public/ace_editor/theme-tomorrow_night_eighties.js @@ -1 +1,139 @@ -define("ace/theme/tomorrow_night_eighties",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!0,b.cssClass="ace-tomorrow-night-eighties",b.cssText=".ace-tomorrow-night-eighties .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-tomorrow-night-eighties .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-tomorrow-night-eighties .ace_gutter { background: #e8e8e8; color: #333;}.ace-tomorrow-night-eighties .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-tomorrow-night-eighties .ace_scroller { background-color: #2D2D2D;}.ace-tomorrow-night-eighties .ace_text-layer { cursor: text; color: #CCCCCC;}.ace-tomorrow-night-eighties .ace_cursor { border-left: 2px solid #CCCCCC;}.ace-tomorrow-night-eighties .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #CCCCCC;}.ace-tomorrow-night-eighties .ace_marker-layer .ace_selection { background: #515151;}.ace-tomorrow-night-eighties.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #2D2D2D; border-radius: 2px;}.ace-tomorrow-night-eighties .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-tomorrow-night-eighties .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid #6A6A6A;}.ace-tomorrow-night-eighties .ace_marker-layer .ace_active_line { background: #393939;}.ace-tomorrow-night-eighties .ace_marker-layer .ace_selected_word { border: 1px solid #515151;}.ace-tomorrow-night-eighties .ace_invisible { color: #6A6A6A;}.ace-tomorrow-night-eighties .ace_keyword, .ace-tomorrow-night-eighties .ace_meta { color:#CC99CC;}.ace-tomorrow-night-eighties .ace_keyword.ace_operator { color:#66CCCC;}.ace-tomorrow-night-eighties .ace_constant.ace_language { color:#F99157;}.ace-tomorrow-night-eighties .ace_constant.ace_numeric { color:#F99157;}.ace-tomorrow-night-eighties .ace_constant.ace_other { color:#CCCCCC;}.ace-tomorrow-night-eighties .ace_invalid { color:#CDCDCD;background-color:#F2777A;}.ace-tomorrow-night-eighties .ace_invalid.ace_deprecated { color:#CDCDCD;background-color:#CC99CC;}.ace-tomorrow-night-eighties .ace_support.ace_constant { color:#F99157;}.ace-tomorrow-night-eighties .ace_fold { background-color: #6699CC; border-color: #CCCCCC;}.ace-tomorrow-night-eighties .ace_support.ace_function { color:#6699CC;}.ace-tomorrow-night-eighties .ace_storage { color:#CC99CC;}.ace-tomorrow-night-eighties .ace_storage.ace_type, .ace-tomorrow-night-eighties .ace_support.ace_type{ color:#CC99CC;}.ace-tomorrow-night-eighties .ace_variable { color:#6699CC;}.ace-tomorrow-night-eighties .ace_variable.ace_parameter { color:#F99157;}.ace-tomorrow-night-eighties .ace_string { color:#99CC99;}.ace-tomorrow-night-eighties .ace_comment { color:#999999;}.ace-tomorrow-night-eighties .ace_variable { color:#F2777A;}.ace-tomorrow-night-eighties .ace_meta.ace_tag { color:#F2777A;}.ace-tomorrow-night-eighties .ace_entity.ace_other.ace_attribute-name { color:#F2777A;}.ace-tomorrow-night-eighties .ace_entity.ace_name.ace_function { color:#6699CC;}.ace-tomorrow-night-eighties .ace_markup.ace_underline { text-decoration:underline;}.ace-tomorrow-night-eighties .ace_markup.ace_heading { color:#99CC99;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)}) \ No newline at end of file +/* ***** BEGIN LICENSE BLOCK ***** + * Distributed under the BSD license: + * + * Copyright (c) 2010, Ajax.org B.V. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Ajax.org B.V. nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL AJAX.ORG B.V. BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * ***** END LICENSE BLOCK ***** */ + +ace.define('ace/theme/tomorrow_night_eighties', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { + +exports.isDark = true; +exports.cssClass = "ace-tomorrow-night-eighties"; +exports.cssText = ".ace-tomorrow-night-eighties .ace_gutter {\ +background: #272727;\ +color: #CCC\ +}\ +.ace-tomorrow-night-eighties .ace_print-margin {\ +width: 1px;\ +background: #272727\ +}\ +.ace-tomorrow-night-eighties {\ +background-color: #2D2D2D;\ +color: #CCCCCC\ +}\ +.ace-tomorrow-night-eighties .ace_constant.ace_other,\ +.ace-tomorrow-night-eighties .ace_cursor {\ +color: #CCCCCC\ +}\ +.ace-tomorrow-night-eighties .ace_marker-layer .ace_selection {\ +background: #515151\ +}\ +.ace-tomorrow-night-eighties.ace_multiselect .ace_selection.ace_start {\ +box-shadow: 0 0 3px 0px #2D2D2D;\ +border-radius: 2px\ +}\ +.ace-tomorrow-night-eighties .ace_marker-layer .ace_step {\ +background: rgb(102, 82, 0)\ +}\ +.ace-tomorrow-night-eighties .ace_marker-layer .ace_bracket {\ +margin: -1px 0 0 -1px;\ +border: 1px solid #6A6A6A\ +}\ +.ace-tomorrow-night-bright .ace_stack {\ +background: rgb(66, 90, 44)\ +}\ +.ace-tomorrow-night-eighties .ace_marker-layer .ace_active-line {\ +background: #393939\ +}\ +.ace-tomorrow-night-eighties .ace_gutter-active-line {\ +background-color: #393939\ +}\ +.ace-tomorrow-night-eighties .ace_marker-layer .ace_selected-word {\ +border: 1px solid #515151\ +}\ +.ace-tomorrow-night-eighties .ace_invisible {\ +color: #6A6A6A\ +}\ +.ace-tomorrow-night-eighties .ace_keyword,\ +.ace-tomorrow-night-eighties .ace_meta,\ +.ace-tomorrow-night-eighties .ace_storage,\ +.ace-tomorrow-night-eighties .ace_storage.ace_type,\ +.ace-tomorrow-night-eighties .ace_support.ace_type {\ +color: #CC99CC\ +}\ +.ace-tomorrow-night-eighties .ace_keyword.ace_operator {\ +color: #66CCCC\ +}\ +.ace-tomorrow-night-eighties .ace_constant.ace_character,\ +.ace-tomorrow-night-eighties .ace_constant.ace_language,\ +.ace-tomorrow-night-eighties .ace_constant.ace_numeric,\ +.ace-tomorrow-night-eighties .ace_keyword.ace_other.ace_unit,\ +.ace-tomorrow-night-eighties .ace_support.ace_constant,\ +.ace-tomorrow-night-eighties .ace_variable.ace_parameter {\ +color: #F99157\ +}\ +.ace-tomorrow-night-eighties .ace_invalid {\ +color: #CDCDCD;\ +background-color: #F2777A\ +}\ +.ace-tomorrow-night-eighties .ace_invalid.ace_deprecated {\ +color: #CDCDCD;\ +background-color: #CC99CC\ +}\ +.ace-tomorrow-night-eighties .ace_fold {\ +background-color: #6699CC;\ +border-color: #CCCCCC\ +}\ +.ace-tomorrow-night-eighties .ace_entity.ace_name.ace_function,\ +.ace-tomorrow-night-eighties .ace_support.ace_function,\ +.ace-tomorrow-night-eighties .ace_variable {\ +color: #6699CC\ +}\ +.ace-tomorrow-night-eighties .ace_support.ace_class,\ +.ace-tomorrow-night-eighties .ace_support.ace_type {\ +color: #FFCC66\ +}\ +.ace-tomorrow-night-eighties .ace_heading,\ +.ace-tomorrow-night-eighties .ace_markup.ace_heading,\ +.ace-tomorrow-night-eighties .ace_string {\ +color: #99CC99\ +}\ +.ace-tomorrow-night-eighties .ace_comment {\ +color: #999999\ +}\ +.ace-tomorrow-night-eighties .ace_entity.ace_name.ace_tag,\ +.ace-tomorrow-night-eighties .ace_entity.ace_other.ace_attribute-name,\ +.ace-tomorrow-night-eighties .ace_meta.ace_tag,\ +.ace-tomorrow-night-eighties .ace_variable {\ +color: #F2777A\ +}\ +.ace-tomorrow-night-eighties .ace_indent-guide {\ +background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAEklEQVQImWPQ09NrYAgMjP4PAAtGAwchHMyAAAAAAElFTkSuQmCC) right repeat-y\ +}"; + +var dom = require("../lib/dom"); +dom.importCssString(exports.cssText, exports.cssClass); +}); diff --git a/public/ace_editor/theme-twilight-noconflict.js b/public/ace_editor/theme-twilight-noconflict.js deleted file mode 100644 index 83b266a..0000000 --- a/public/ace_editor/theme-twilight-noconflict.js +++ /dev/null @@ -1 +0,0 @@ -ace.define("ace/theme/twilight",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!0,b.cssClass="ace-twilight",b.cssText=".ace-twilight .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-twilight .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-twilight .ace_gutter { background: #e8e8e8; color: #333;}.ace-twilight .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-twilight .ace_scroller { background-color: #141414;}.ace-twilight .ace_text-layer { cursor: text; color: #F8F8F8;}.ace-twilight .ace_cursor { border-left: 2px solid #A7A7A7;}.ace-twilight .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #A7A7A7;}.ace-twilight .ace_marker-layer .ace_selection { background: rgba(221, 240, 255, 0.20);}.ace-twilight.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #141414; border-radius: 2px;}.ace-twilight .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-twilight .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid rgba(255, 255, 255, 0.25);}.ace-twilight .ace_marker-layer .ace_active_line { background: rgba(255, 255, 255, 0.031);}.ace-twilight .ace_marker-layer .ace_selected_word { border: 1px solid rgba(221, 240, 255, 0.20);}.ace-twilight .ace_invisible { color: rgba(255, 255, 255, 0.25);}.ace-twilight .ace_keyword, .ace-twilight .ace_meta { color:#CDA869;}.ace-twilight .ace_constant, .ace-twilight .ace_constant.ace_other { color:#CF6A4C;}.ace-twilight .ace_constant.ace_character, { color:#CF6A4C;}.ace-twilight .ace_constant.ace_character.ace_escape, { color:#CF6A4C;}.ace-twilight .ace_invalid.ace_illegal { color:#F8F8F8;background-color:rgba(86, 45, 86, 0.75);}.ace-twilight .ace_invalid.ace_deprecated { text-decoration:underline;font-style:italic;color:#D2A8A1;}.ace-twilight .ace_support { color:#9B859D;}.ace-twilight .ace_support.ace_constant { color:#CF6A4C;}.ace-twilight .ace_fold { background-color: #AC885B; border-color: #F8F8F8;}.ace-twilight .ace_support.ace_function { color:#DAD085;}.ace-twilight .ace_storage { color:#F9EE98;}.ace-twilight .ace_variable { color:#AC885B;}.ace-twilight .ace_string { color:#8F9D6A;}.ace-twilight .ace_string.ace_regexp { color:#E9C062;}.ace-twilight .ace_comment { font-style:italic;color:#5F5A60;}.ace-twilight .ace_variable { color:#7587A6;}.ace-twilight .ace_xml_pe { color:#494949;}.ace-twilight .ace_meta.ace_tag { color:#AC885B;}.ace-twilight .ace_entity.ace_name.ace_function { color:#AC885B;}.ace-twilight .ace_markup.ace_underline { text-decoration:underline;}.ace-twilight .ace_markup.ace_heading { color:#CF6A4C;}.ace-twilight .ace_markup.ace_list { color:#F9EE98;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)}) \ No newline at end of file diff --git a/public/ace_editor/theme-twilight-uncompressed-noconflict.js b/public/ace_editor/theme-twilight-uncompressed-noconflict.js deleted file mode 100644 index 894ce62..0000000 --- a/public/ace_editor/theme-twilight-uncompressed-noconflict.js +++ /dev/null @@ -1,204 +0,0 @@ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla Public License Version - * 1.1 (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * http://www.mozilla.org/MPL/ - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - * - * The Original Code is Ajax.org Code Editor (ACE). - * - * The Initial Developer of the Original Code is - * Ajax.org B.V. - * Portions created by the Initial Developer are Copyright (C) 2010 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Fabian Jakobs - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -ace.define('ace/theme/twilight', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { - -exports.isDark = true; -exports.cssClass = "ace-twilight"; -exports.cssText = "\ -.ace-twilight .ace_editor {\ - border: 2px solid rgb(159, 159, 159);\ -}\ -\ -.ace-twilight .ace_editor.ace_focus {\ - border: 2px solid #327fbd;\ -}\ -\ -.ace-twilight .ace_gutter {\ - background: #e8e8e8;\ - color: #333;\ -}\ -\ -.ace-twilight .ace_print_margin {\ - width: 1px;\ - background: #e8e8e8;\ -}\ -\ -.ace-twilight .ace_scroller {\ - background-color: #141414;\ -}\ -\ -.ace-twilight .ace_text-layer {\ - cursor: text;\ - color: #F8F8F8;\ -}\ -\ -.ace-twilight .ace_cursor {\ - border-left: 2px solid #A7A7A7;\ -}\ -\ -.ace-twilight .ace_cursor.ace_overwrite {\ - border-left: 0px;\ - border-bottom: 1px solid #A7A7A7;\ -}\ -\ -.ace-twilight .ace_marker-layer .ace_selection {\ - background: rgba(221, 240, 255, 0.20);\ -}\ -\ -.ace-twilight.multiselect .ace_selection.start {\ - box-shadow: 0 0 3px 0px #141414;\ - border-radius: 2px;\ -}\ -\ -.ace-twilight .ace_marker-layer .ace_step {\ - background: rgb(198, 219, 174);\ -}\ -\ -.ace-twilight .ace_marker-layer .ace_bracket {\ - margin: -1px 0 0 -1px;\ - border: 1px solid rgba(255, 255, 255, 0.25);\ -}\ -\ -.ace-twilight .ace_marker-layer .ace_active_line {\ - background: rgba(255, 255, 255, 0.031);\ -}\ -\ -.ace-twilight .ace_marker-layer .ace_selected_word {\ - border: 1px solid rgba(221, 240, 255, 0.20);\ -}\ -\ -.ace-twilight .ace_invisible {\ - color: rgba(255, 255, 255, 0.25);\ -}\ -\ -.ace-twilight .ace_keyword, .ace-twilight .ace_meta {\ - color:#CDA869;\ -}\ -\ -.ace-twilight .ace_constant, .ace-twilight .ace_constant.ace_other {\ - color:#CF6A4C;\ -}\ -\ -.ace-twilight .ace_constant.ace_character, {\ - color:#CF6A4C;\ -}\ -\ -.ace-twilight .ace_constant.ace_character.ace_escape, {\ - color:#CF6A4C;\ -}\ -\ -.ace-twilight .ace_invalid.ace_illegal {\ - color:#F8F8F8;\ -background-color:rgba(86, 45, 86, 0.75);\ -}\ -\ -.ace-twilight .ace_invalid.ace_deprecated {\ - text-decoration:underline;\ -font-style:italic;\ -color:#D2A8A1;\ -}\ -\ -.ace-twilight .ace_support {\ - color:#9B859D;\ -}\ -\ -.ace-twilight .ace_support.ace_constant {\ - color:#CF6A4C;\ -}\ -\ -.ace-twilight .ace_fold {\ - background-color: #AC885B;\ - border-color: #F8F8F8;\ -}\ -\ -.ace-twilight .ace_support.ace_function {\ - color:#DAD085;\ -}\ -\ -.ace-twilight .ace_storage {\ - color:#F9EE98;\ -}\ -\ -.ace-twilight .ace_variable {\ - color:#AC885B;\ -}\ -\ -.ace-twilight .ace_string {\ - color:#8F9D6A;\ -}\ -\ -.ace-twilight .ace_string.ace_regexp {\ - color:#E9C062;\ -}\ -\ -.ace-twilight .ace_comment {\ - font-style:italic;\ -color:#5F5A60;\ -}\ -\ -.ace-twilight .ace_variable {\ - color:#7587A6;\ -}\ -\ -.ace-twilight .ace_xml_pe {\ - color:#494949;\ -}\ -\ -.ace-twilight .ace_meta.ace_tag {\ - color:#AC885B;\ -}\ -\ -.ace-twilight .ace_entity.ace_name.ace_function {\ - color:#AC885B;\ -}\ -\ -.ace-twilight .ace_markup.ace_underline {\ - text-decoration:underline;\ -}\ -\ -.ace-twilight .ace_markup.ace_heading {\ - color:#CF6A4C;\ -}\ -\ -.ace-twilight .ace_markup.ace_list {\ - color:#F9EE98;\ -}"; - - var dom = require("../lib/dom"); - dom.importCssString(exports.cssText, exports.cssClass); -}); diff --git a/public/ace_editor/theme-twilight-uncompressed.js b/public/ace_editor/theme-twilight-uncompressed.js deleted file mode 100644 index 72cd8ec..0000000 --- a/public/ace_editor/theme-twilight-uncompressed.js +++ /dev/null @@ -1,204 +0,0 @@ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla Public License Version - * 1.1 (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * http://www.mozilla.org/MPL/ - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - * - * The Original Code is Ajax.org Code Editor (ACE). - * - * The Initial Developer of the Original Code is - * Ajax.org B.V. - * Portions created by the Initial Developer are Copyright (C) 2010 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Fabian Jakobs - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -define('ace/theme/twilight', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { - -exports.isDark = true; -exports.cssClass = "ace-twilight"; -exports.cssText = "\ -.ace-twilight .ace_editor {\ - border: 2px solid rgb(159, 159, 159);\ -}\ -\ -.ace-twilight .ace_editor.ace_focus {\ - border: 2px solid #327fbd;\ -}\ -\ -.ace-twilight .ace_gutter {\ - background: #e8e8e8;\ - color: #333;\ -}\ -\ -.ace-twilight .ace_print_margin {\ - width: 1px;\ - background: #e8e8e8;\ -}\ -\ -.ace-twilight .ace_scroller {\ - background-color: #141414;\ -}\ -\ -.ace-twilight .ace_text-layer {\ - cursor: text;\ - color: #F8F8F8;\ -}\ -\ -.ace-twilight .ace_cursor {\ - border-left: 2px solid #A7A7A7;\ -}\ -\ -.ace-twilight .ace_cursor.ace_overwrite {\ - border-left: 0px;\ - border-bottom: 1px solid #A7A7A7;\ -}\ -\ -.ace-twilight .ace_marker-layer .ace_selection {\ - background: rgba(221, 240, 255, 0.20);\ -}\ -\ -.ace-twilight.multiselect .ace_selection.start {\ - box-shadow: 0 0 3px 0px #141414;\ - border-radius: 2px;\ -}\ -\ -.ace-twilight .ace_marker-layer .ace_step {\ - background: rgb(198, 219, 174);\ -}\ -\ -.ace-twilight .ace_marker-layer .ace_bracket {\ - margin: -1px 0 0 -1px;\ - border: 1px solid rgba(255, 255, 255, 0.25);\ -}\ -\ -.ace-twilight .ace_marker-layer .ace_active_line {\ - background: rgba(255, 255, 255, 0.031);\ -}\ -\ -.ace-twilight .ace_marker-layer .ace_selected_word {\ - border: 1px solid rgba(221, 240, 255, 0.20);\ -}\ -\ -.ace-twilight .ace_invisible {\ - color: rgba(255, 255, 255, 0.25);\ -}\ -\ -.ace-twilight .ace_keyword, .ace-twilight .ace_meta {\ - color:#CDA869;\ -}\ -\ -.ace-twilight .ace_constant, .ace-twilight .ace_constant.ace_other {\ - color:#CF6A4C;\ -}\ -\ -.ace-twilight .ace_constant.ace_character, {\ - color:#CF6A4C;\ -}\ -\ -.ace-twilight .ace_constant.ace_character.ace_escape, {\ - color:#CF6A4C;\ -}\ -\ -.ace-twilight .ace_invalid.ace_illegal {\ - color:#F8F8F8;\ -background-color:rgba(86, 45, 86, 0.75);\ -}\ -\ -.ace-twilight .ace_invalid.ace_deprecated {\ - text-decoration:underline;\ -font-style:italic;\ -color:#D2A8A1;\ -}\ -\ -.ace-twilight .ace_support {\ - color:#9B859D;\ -}\ -\ -.ace-twilight .ace_support.ace_constant {\ - color:#CF6A4C;\ -}\ -\ -.ace-twilight .ace_fold {\ - background-color: #AC885B;\ - border-color: #F8F8F8;\ -}\ -\ -.ace-twilight .ace_support.ace_function {\ - color:#DAD085;\ -}\ -\ -.ace-twilight .ace_storage {\ - color:#F9EE98;\ -}\ -\ -.ace-twilight .ace_variable {\ - color:#AC885B;\ -}\ -\ -.ace-twilight .ace_string {\ - color:#8F9D6A;\ -}\ -\ -.ace-twilight .ace_string.ace_regexp {\ - color:#E9C062;\ -}\ -\ -.ace-twilight .ace_comment {\ - font-style:italic;\ -color:#5F5A60;\ -}\ -\ -.ace-twilight .ace_variable {\ - color:#7587A6;\ -}\ -\ -.ace-twilight .ace_xml_pe {\ - color:#494949;\ -}\ -\ -.ace-twilight .ace_meta.ace_tag {\ - color:#AC885B;\ -}\ -\ -.ace-twilight .ace_entity.ace_name.ace_function {\ - color:#AC885B;\ -}\ -\ -.ace-twilight .ace_markup.ace_underline {\ - text-decoration:underline;\ -}\ -\ -.ace-twilight .ace_markup.ace_heading {\ - color:#CF6A4C;\ -}\ -\ -.ace-twilight .ace_markup.ace_list {\ - color:#F9EE98;\ -}"; - - var dom = require("../lib/dom"); - dom.importCssString(exports.cssText, exports.cssClass); -}); diff --git a/public/ace_editor/theme-twilight.js b/public/ace_editor/theme-twilight.js old mode 100644 new mode 100755 index fa5b43d..59af501 --- a/public/ace_editor/theme-twilight.js +++ b/public/ace_editor/theme-twilight.js @@ -1 +1,140 @@ -define("ace/theme/twilight",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!0,b.cssClass="ace-twilight",b.cssText=".ace-twilight .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-twilight .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-twilight .ace_gutter { background: #e8e8e8; color: #333;}.ace-twilight .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-twilight .ace_scroller { background-color: #141414;}.ace-twilight .ace_text-layer { cursor: text; color: #F8F8F8;}.ace-twilight .ace_cursor { border-left: 2px solid #A7A7A7;}.ace-twilight .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #A7A7A7;}.ace-twilight .ace_marker-layer .ace_selection { background: rgba(221, 240, 255, 0.20);}.ace-twilight.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #141414; border-radius: 2px;}.ace-twilight .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-twilight .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid rgba(255, 255, 255, 0.25);}.ace-twilight .ace_marker-layer .ace_active_line { background: rgba(255, 255, 255, 0.031);}.ace-twilight .ace_marker-layer .ace_selected_word { border: 1px solid rgba(221, 240, 255, 0.20);}.ace-twilight .ace_invisible { color: rgba(255, 255, 255, 0.25);}.ace-twilight .ace_keyword, .ace-twilight .ace_meta { color:#CDA869;}.ace-twilight .ace_constant, .ace-twilight .ace_constant.ace_other { color:#CF6A4C;}.ace-twilight .ace_constant.ace_character, { color:#CF6A4C;}.ace-twilight .ace_constant.ace_character.ace_escape, { color:#CF6A4C;}.ace-twilight .ace_invalid.ace_illegal { color:#F8F8F8;background-color:rgba(86, 45, 86, 0.75);}.ace-twilight .ace_invalid.ace_deprecated { text-decoration:underline;font-style:italic;color:#D2A8A1;}.ace-twilight .ace_support { color:#9B859D;}.ace-twilight .ace_support.ace_constant { color:#CF6A4C;}.ace-twilight .ace_fold { background-color: #AC885B; border-color: #F8F8F8;}.ace-twilight .ace_support.ace_function { color:#DAD085;}.ace-twilight .ace_storage { color:#F9EE98;}.ace-twilight .ace_variable { color:#AC885B;}.ace-twilight .ace_string { color:#8F9D6A;}.ace-twilight .ace_string.ace_regexp { color:#E9C062;}.ace-twilight .ace_comment { font-style:italic;color:#5F5A60;}.ace-twilight .ace_variable { color:#7587A6;}.ace-twilight .ace_xml_pe { color:#494949;}.ace-twilight .ace_meta.ace_tag { color:#AC885B;}.ace-twilight .ace_entity.ace_name.ace_function { color:#AC885B;}.ace-twilight .ace_markup.ace_underline { text-decoration:underline;}.ace-twilight .ace_markup.ace_heading { color:#CF6A4C;}.ace-twilight .ace_markup.ace_list { color:#F9EE98;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)}) \ No newline at end of file +/* ***** BEGIN LICENSE BLOCK ***** + * Distributed under the BSD license: + * + * Copyright (c) 2010, Ajax.org B.V. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Ajax.org B.V. nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL AJAX.ORG B.V. BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * ***** END LICENSE BLOCK ***** */ + +ace.define('ace/theme/twilight', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { + +exports.isDark = true; +exports.cssClass = "ace-twilight"; +exports.cssText = ".ace-twilight .ace_gutter {\ +background: #232323;\ +color: #E2E2E2\ +}\ +.ace-twilight .ace_print-margin {\ +width: 1px;\ +background: #232323\ +}\ +.ace-twilight {\ +background-color: #141414;\ +color: #F8F8F8\ +}\ +.ace-twilight .ace_cursor {\ +color: #A7A7A7\ +}\ +.ace-twilight .ace_marker-layer .ace_selection {\ +background: rgba(221, 240, 255, 0.20)\ +}\ +.ace-twilight.ace_multiselect .ace_selection.ace_start {\ +box-shadow: 0 0 3px 0px #141414;\ +border-radius: 2px\ +}\ +.ace-twilight .ace_marker-layer .ace_step {\ +background: rgb(102, 82, 0)\ +}\ +.ace-twilight .ace_marker-layer .ace_bracket {\ +margin: -1px 0 0 -1px;\ +border: 1px solid rgba(255, 255, 255, 0.25)\ +}\ +.ace-twilight .ace_marker-layer .ace_active-line {\ +background: rgba(255, 255, 255, 0.031)\ +}\ +.ace-twilight .ace_gutter-active-line {\ +background-color: rgba(255, 255, 255, 0.031)\ +}\ +.ace-twilight .ace_marker-layer .ace_selected-word {\ +border: 1px solid rgba(221, 240, 255, 0.20)\ +}\ +.ace-twilight .ace_invisible {\ +color: rgba(255, 255, 255, 0.25)\ +}\ +.ace-twilight .ace_keyword,\ +.ace-twilight .ace_meta {\ +color: #CDA869\ +}\ +.ace-twilight .ace_constant,\ +.ace-twilight .ace_constant.ace_character,\ +.ace-twilight .ace_constant.ace_character.ace_escape,\ +.ace-twilight .ace_constant.ace_other,\ +.ace-twilight .ace_heading,\ +.ace-twilight .ace_markup.ace_heading,\ +.ace-twilight .ace_support.ace_constant {\ +color: #CF6A4C\ +}\ +.ace-twilight .ace_invalid.ace_illegal {\ +color: #F8F8F8;\ +background-color: rgba(86, 45, 86, 0.75)\ +}\ +.ace-twilight .ace_invalid.ace_deprecated {\ +text-decoration: underline;\ +font-style: italic;\ +color: #D2A8A1\ +}\ +.ace-twilight .ace_support {\ +color: #9B859D\ +}\ +.ace-twilight .ace_fold {\ +background-color: #AC885B;\ +border-color: #F8F8F8\ +}\ +.ace-twilight .ace_support.ace_function {\ +color: #DAD085\ +}\ +.ace-twilight .ace_list,\ +.ace-twilight .ace_markup.ace_list,\ +.ace-twilight .ace_storage {\ +color: #F9EE98\ +}\ +.ace-twilight .ace_entity.ace_name.ace_function,\ +.ace-twilight .ace_meta.ace_tag,\ +.ace-twilight .ace_variable {\ +color: #AC885B\ +}\ +.ace-twilight .ace_string {\ +color: #8F9D6A\ +}\ +.ace-twilight .ace_string.ace_regexp {\ +color: #E9C062\ +}\ +.ace-twilight .ace_comment {\ +font-style: italic;\ +color: #5F5A60\ +}\ +.ace-twilight .ace_variable {\ +color: #7587A6\ +}\ +.ace-twilight .ace_xml-pe {\ +color: #494949\ +}\ +.ace-twilight .ace_indent-guide {\ +background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAEklEQVQImWMQERFpYLC1tf0PAAgOAnPnhxyiAAAAAElFTkSuQmCC) right repeat-y\ +}"; + +var dom = require("../lib/dom"); +dom.importCssString(exports.cssText, exports.cssClass); +}); diff --git a/public/ace_editor/theme-vibrant_ink-noconflict.js b/public/ace_editor/theme-vibrant_ink-noconflict.js deleted file mode 100644 index 9c2e51f..0000000 --- a/public/ace_editor/theme-vibrant_ink-noconflict.js +++ /dev/null @@ -1 +0,0 @@ -ace.define("ace/theme/vibrant_ink",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!0,b.cssClass="ace-vibrant-ink",b.cssText=".ace-vibrant-ink .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-vibrant-ink .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-vibrant-ink .ace_gutter { background: #e8e8e8; color: #333;}.ace-vibrant-ink .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-vibrant-ink .ace_scroller { background-color: #0F0F0F;}.ace-vibrant-ink .ace_text-layer { cursor: text; color: #FFFFFF;}.ace-vibrant-ink .ace_cursor { border-left: 2px solid #FFFFFF;}.ace-vibrant-ink .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #FFFFFF;}.ace-vibrant-ink .ace_marker-layer .ace_selection { background: #6699CC;}.ace-vibrant-ink.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #0F0F0F; border-radius: 2px;}.ace-vibrant-ink .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-vibrant-ink .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid #404040;}.ace-vibrant-ink .ace_marker-layer .ace_active_line { background: #333333;}.ace-vibrant-ink .ace_marker-layer .ace_selected_word { border: 1px solid #6699CC;}.ace-vibrant-ink .ace_invisible { color: #404040;}.ace-vibrant-ink .ace_keyword, .ace-vibrant-ink .ace_meta { color:#FF6600;}.ace-vibrant-ink .ace_constant, .ace-vibrant-ink .ace_constant.ace_other { color:#339999;}.ace-vibrant-ink .ace_constant.ace_character, { color:#339999;}.ace-vibrant-ink .ace_constant.ace_character.ace_escape, { color:#339999;}.ace-vibrant-ink .ace_constant.ace_numeric { color:#99CC99;}.ace-vibrant-ink .ace_invalid { color:#CCFF33;background-color:#000000;}.ace-vibrant-ink .ace_invalid.ace_deprecated { color:#CCFF33;background-color:#000000;}.ace-vibrant-ink .ace_fold { background-color: #FFCC00; border-color: #FFFFFF;}.ace-vibrant-ink .ace_support.ace_function { color:#FFCC00;}.ace-vibrant-ink .ace_variable { color:#FFCC00;}.ace-vibrant-ink .ace_variable.ace_parameter { font-style:italic;}.ace-vibrant-ink .ace_string { color:#66FF00;}.ace-vibrant-ink .ace_string.ace_regexp { color:#44B4CC;}.ace-vibrant-ink .ace_comment { color:#9933CC;}.ace-vibrant-ink .ace_entity.ace_other.ace_attribute-name { font-style:italic;color:#99CC99;}.ace-vibrant-ink .ace_entity.ace_name.ace_function { color:#FFCC00;}.ace-vibrant-ink .ace_markup.ace_underline { text-decoration:underline;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)}) \ No newline at end of file diff --git a/public/ace_editor/theme-vibrant_ink-uncompressed-noconflict.js b/public/ace_editor/theme-vibrant_ink-uncompressed-noconflict.js deleted file mode 100644 index 0b9eb79..0000000 --- a/public/ace_editor/theme-vibrant_ink-uncompressed-noconflict.js +++ /dev/null @@ -1,183 +0,0 @@ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla Public License Version - * 1.1 (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * http://www.mozilla.org/MPL/ - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - * - * The Original Code is Ajax.org Code Editor (ACE). - * - * The Initial Developer of the Original Code is - * Ajax.org B.V. - * Portions created by the Initial Developer are Copyright (C) 2010 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Fabian Jakobs - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -ace.define('ace/theme/vibrant_ink', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { - -exports.isDark = true; -exports.cssClass = "ace-vibrant-ink"; -exports.cssText = "\ -.ace-vibrant-ink .ace_editor {\ - border: 2px solid rgb(159, 159, 159);\ -}\ -\ -.ace-vibrant-ink .ace_editor.ace_focus {\ - border: 2px solid #327fbd;\ -}\ -\ -.ace-vibrant-ink .ace_gutter {\ - background: #e8e8e8;\ - color: #333;\ -}\ -\ -.ace-vibrant-ink .ace_print_margin {\ - width: 1px;\ - background: #e8e8e8;\ -}\ -\ -.ace-vibrant-ink .ace_scroller {\ - background-color: #0F0F0F;\ -}\ -\ -.ace-vibrant-ink .ace_text-layer {\ - cursor: text;\ - color: #FFFFFF;\ -}\ -\ -.ace-vibrant-ink .ace_cursor {\ - border-left: 2px solid #FFFFFF;\ -}\ -\ -.ace-vibrant-ink .ace_cursor.ace_overwrite {\ - border-left: 0px;\ - border-bottom: 1px solid #FFFFFF;\ -}\ -\ -.ace-vibrant-ink .ace_marker-layer .ace_selection {\ - background: #6699CC;\ -}\ -\ -.ace-vibrant-ink.multiselect .ace_selection.start {\ - box-shadow: 0 0 3px 0px #0F0F0F;\ - border-radius: 2px;\ -}\ -\ -.ace-vibrant-ink .ace_marker-layer .ace_step {\ - background: rgb(198, 219, 174);\ -}\ -\ -.ace-vibrant-ink .ace_marker-layer .ace_bracket {\ - margin: -1px 0 0 -1px;\ - border: 1px solid #404040;\ -}\ -\ -.ace-vibrant-ink .ace_marker-layer .ace_active_line {\ - background: #333333;\ -}\ -\ -.ace-vibrant-ink .ace_marker-layer .ace_selected_word {\ - border: 1px solid #6699CC;\ -}\ -\ -.ace-vibrant-ink .ace_invisible {\ - color: #404040;\ -}\ -\ -.ace-vibrant-ink .ace_keyword, .ace-vibrant-ink .ace_meta {\ - color:#FF6600;\ -}\ -\ -.ace-vibrant-ink .ace_constant, .ace-vibrant-ink .ace_constant.ace_other {\ - color:#339999;\ -}\ -\ -.ace-vibrant-ink .ace_constant.ace_character, {\ - color:#339999;\ -}\ -\ -.ace-vibrant-ink .ace_constant.ace_character.ace_escape, {\ - color:#339999;\ -}\ -\ -.ace-vibrant-ink .ace_constant.ace_numeric {\ - color:#99CC99;\ -}\ -\ -.ace-vibrant-ink .ace_invalid {\ - color:#CCFF33;\ -background-color:#000000;\ -}\ -\ -.ace-vibrant-ink .ace_invalid.ace_deprecated {\ - color:#CCFF33;\ -background-color:#000000;\ -}\ -\ -.ace-vibrant-ink .ace_fold {\ - background-color: #FFCC00;\ - border-color: #FFFFFF;\ -}\ -\ -.ace-vibrant-ink .ace_support.ace_function {\ - color:#FFCC00;\ -}\ -\ -.ace-vibrant-ink .ace_variable {\ - color:#FFCC00;\ -}\ -\ -.ace-vibrant-ink .ace_variable.ace_parameter {\ - font-style:italic;\ -}\ -\ -.ace-vibrant-ink .ace_string {\ - color:#66FF00;\ -}\ -\ -.ace-vibrant-ink .ace_string.ace_regexp {\ - color:#44B4CC;\ -}\ -\ -.ace-vibrant-ink .ace_comment {\ - color:#9933CC;\ -}\ -\ -.ace-vibrant-ink .ace_entity.ace_other.ace_attribute-name {\ - font-style:italic;\ -color:#99CC99;\ -}\ -\ -.ace-vibrant-ink .ace_entity.ace_name.ace_function {\ - color:#FFCC00;\ -}\ -\ -.ace-vibrant-ink .ace_markup.ace_underline {\ - text-decoration:underline;\ -}"; - - var dom = require("../lib/dom"); - dom.importCssString(exports.cssText, exports.cssClass); -}); diff --git a/public/ace_editor/theme-vibrant_ink-uncompressed.js b/public/ace_editor/theme-vibrant_ink-uncompressed.js deleted file mode 100644 index 6c0e27c..0000000 --- a/public/ace_editor/theme-vibrant_ink-uncompressed.js +++ /dev/null @@ -1,183 +0,0 @@ -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla Public License Version - * 1.1 (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * http://www.mozilla.org/MPL/ - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - * - * The Original Code is Ajax.org Code Editor (ACE). - * - * The Initial Developer of the Original Code is - * Ajax.org B.V. - * Portions created by the Initial Developer are Copyright (C) 2010 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Fabian Jakobs - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -define('ace/theme/vibrant_ink', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { - -exports.isDark = true; -exports.cssClass = "ace-vibrant-ink"; -exports.cssText = "\ -.ace-vibrant-ink .ace_editor {\ - border: 2px solid rgb(159, 159, 159);\ -}\ -\ -.ace-vibrant-ink .ace_editor.ace_focus {\ - border: 2px solid #327fbd;\ -}\ -\ -.ace-vibrant-ink .ace_gutter {\ - background: #e8e8e8;\ - color: #333;\ -}\ -\ -.ace-vibrant-ink .ace_print_margin {\ - width: 1px;\ - background: #e8e8e8;\ -}\ -\ -.ace-vibrant-ink .ace_scroller {\ - background-color: #0F0F0F;\ -}\ -\ -.ace-vibrant-ink .ace_text-layer {\ - cursor: text;\ - color: #FFFFFF;\ -}\ -\ -.ace-vibrant-ink .ace_cursor {\ - border-left: 2px solid #FFFFFF;\ -}\ -\ -.ace-vibrant-ink .ace_cursor.ace_overwrite {\ - border-left: 0px;\ - border-bottom: 1px solid #FFFFFF;\ -}\ -\ -.ace-vibrant-ink .ace_marker-layer .ace_selection {\ - background: #6699CC;\ -}\ -\ -.ace-vibrant-ink.multiselect .ace_selection.start {\ - box-shadow: 0 0 3px 0px #0F0F0F;\ - border-radius: 2px;\ -}\ -\ -.ace-vibrant-ink .ace_marker-layer .ace_step {\ - background: rgb(198, 219, 174);\ -}\ -\ -.ace-vibrant-ink .ace_marker-layer .ace_bracket {\ - margin: -1px 0 0 -1px;\ - border: 1px solid #404040;\ -}\ -\ -.ace-vibrant-ink .ace_marker-layer .ace_active_line {\ - background: #333333;\ -}\ -\ -.ace-vibrant-ink .ace_marker-layer .ace_selected_word {\ - border: 1px solid #6699CC;\ -}\ -\ -.ace-vibrant-ink .ace_invisible {\ - color: #404040;\ -}\ -\ -.ace-vibrant-ink .ace_keyword, .ace-vibrant-ink .ace_meta {\ - color:#FF6600;\ -}\ -\ -.ace-vibrant-ink .ace_constant, .ace-vibrant-ink .ace_constant.ace_other {\ - color:#339999;\ -}\ -\ -.ace-vibrant-ink .ace_constant.ace_character, {\ - color:#339999;\ -}\ -\ -.ace-vibrant-ink .ace_constant.ace_character.ace_escape, {\ - color:#339999;\ -}\ -\ -.ace-vibrant-ink .ace_constant.ace_numeric {\ - color:#99CC99;\ -}\ -\ -.ace-vibrant-ink .ace_invalid {\ - color:#CCFF33;\ -background-color:#000000;\ -}\ -\ -.ace-vibrant-ink .ace_invalid.ace_deprecated {\ - color:#CCFF33;\ -background-color:#000000;\ -}\ -\ -.ace-vibrant-ink .ace_fold {\ - background-color: #FFCC00;\ - border-color: #FFFFFF;\ -}\ -\ -.ace-vibrant-ink .ace_support.ace_function {\ - color:#FFCC00;\ -}\ -\ -.ace-vibrant-ink .ace_variable {\ - color:#FFCC00;\ -}\ -\ -.ace-vibrant-ink .ace_variable.ace_parameter {\ - font-style:italic;\ -}\ -\ -.ace-vibrant-ink .ace_string {\ - color:#66FF00;\ -}\ -\ -.ace-vibrant-ink .ace_string.ace_regexp {\ - color:#44B4CC;\ -}\ -\ -.ace-vibrant-ink .ace_comment {\ - color:#9933CC;\ -}\ -\ -.ace-vibrant-ink .ace_entity.ace_other.ace_attribute-name {\ - font-style:italic;\ -color:#99CC99;\ -}\ -\ -.ace-vibrant-ink .ace_entity.ace_name.ace_function {\ - color:#FFCC00;\ -}\ -\ -.ace-vibrant-ink .ace_markup.ace_underline {\ - text-decoration:underline;\ -}"; - - var dom = require("../lib/dom"); - dom.importCssString(exports.cssText, exports.cssClass); -}); diff --git a/public/ace_editor/theme-vibrant_ink.js b/public/ace_editor/theme-vibrant_ink.js old mode 100644 new mode 100755 index 77d87ef..eb9152c --- a/public/ace_editor/theme-vibrant_ink.js +++ b/public/ace_editor/theme-vibrant_ink.js @@ -1 +1,125 @@ -define("ace/theme/vibrant_ink",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!0,b.cssClass="ace-vibrant-ink",b.cssText=".ace-vibrant-ink .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-vibrant-ink .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-vibrant-ink .ace_gutter { background: #e8e8e8; color: #333;}.ace-vibrant-ink .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-vibrant-ink .ace_scroller { background-color: #0F0F0F;}.ace-vibrant-ink .ace_text-layer { cursor: text; color: #FFFFFF;}.ace-vibrant-ink .ace_cursor { border-left: 2px solid #FFFFFF;}.ace-vibrant-ink .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #FFFFFF;}.ace-vibrant-ink .ace_marker-layer .ace_selection { background: #6699CC;}.ace-vibrant-ink.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #0F0F0F; border-radius: 2px;}.ace-vibrant-ink .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-vibrant-ink .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid #404040;}.ace-vibrant-ink .ace_marker-layer .ace_active_line { background: #333333;}.ace-vibrant-ink .ace_marker-layer .ace_selected_word { border: 1px solid #6699CC;}.ace-vibrant-ink .ace_invisible { color: #404040;}.ace-vibrant-ink .ace_keyword, .ace-vibrant-ink .ace_meta { color:#FF6600;}.ace-vibrant-ink .ace_constant, .ace-vibrant-ink .ace_constant.ace_other { color:#339999;}.ace-vibrant-ink .ace_constant.ace_character, { color:#339999;}.ace-vibrant-ink .ace_constant.ace_character.ace_escape, { color:#339999;}.ace-vibrant-ink .ace_constant.ace_numeric { color:#99CC99;}.ace-vibrant-ink .ace_invalid { color:#CCFF33;background-color:#000000;}.ace-vibrant-ink .ace_invalid.ace_deprecated { color:#CCFF33;background-color:#000000;}.ace-vibrant-ink .ace_fold { background-color: #FFCC00; border-color: #FFFFFF;}.ace-vibrant-ink .ace_support.ace_function { color:#FFCC00;}.ace-vibrant-ink .ace_variable { color:#FFCC00;}.ace-vibrant-ink .ace_variable.ace_parameter { font-style:italic;}.ace-vibrant-ink .ace_string { color:#66FF00;}.ace-vibrant-ink .ace_string.ace_regexp { color:#44B4CC;}.ace-vibrant-ink .ace_comment { color:#9933CC;}.ace-vibrant-ink .ace_entity.ace_other.ace_attribute-name { font-style:italic;color:#99CC99;}.ace-vibrant-ink .ace_entity.ace_name.ace_function { color:#FFCC00;}.ace-vibrant-ink .ace_markup.ace_underline { text-decoration:underline;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)}) \ No newline at end of file +/* ***** BEGIN LICENSE BLOCK ***** + * Distributed under the BSD license: + * + * Copyright (c) 2010, Ajax.org B.V. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Ajax.org B.V. nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL AJAX.ORG B.V. BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * ***** END LICENSE BLOCK ***** */ + +ace.define('ace/theme/vibrant_ink', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { + +exports.isDark = true; +exports.cssClass = "ace-vibrant-ink"; +exports.cssText = ".ace-vibrant-ink .ace_gutter {\ +background: #1a1a1a;\ +color: #BEBEBE\ +}\ +.ace-vibrant-ink .ace_print-margin {\ +width: 1px;\ +background: #1a1a1a\ +}\ +.ace-vibrant-ink {\ +background-color: #0F0F0F;\ +color: #FFFFFF\ +}\ +.ace-vibrant-ink .ace_cursor {\ +color: #FFFFFF\ +}\ +.ace-vibrant-ink .ace_marker-layer .ace_selection {\ +background: #6699CC\ +}\ +.ace-vibrant-ink.ace_multiselect .ace_selection.ace_start {\ +box-shadow: 0 0 3px 0px #0F0F0F;\ +border-radius: 2px\ +}\ +.ace-vibrant-ink .ace_marker-layer .ace_step {\ +background: rgb(102, 82, 0)\ +}\ +.ace-vibrant-ink .ace_marker-layer .ace_bracket {\ +margin: -1px 0 0 -1px;\ +border: 1px solid #404040\ +}\ +.ace-vibrant-ink .ace_marker-layer .ace_active-line {\ +background: #333333\ +}\ +.ace-vibrant-ink .ace_gutter-active-line {\ +background-color: #333333\ +}\ +.ace-vibrant-ink .ace_marker-layer .ace_selected-word {\ +border: 1px solid #6699CC\ +}\ +.ace-vibrant-ink .ace_invisible {\ +color: #404040\ +}\ +.ace-vibrant-ink .ace_keyword,\ +.ace-vibrant-ink .ace_meta {\ +color: #FF6600\ +}\ +.ace-vibrant-ink .ace_constant,\ +.ace-vibrant-ink .ace_constant.ace_character,\ +.ace-vibrant-ink .ace_constant.ace_character.ace_escape,\ +.ace-vibrant-ink .ace_constant.ace_other {\ +color: #339999\ +}\ +.ace-vibrant-ink .ace_constant.ace_numeric {\ +color: #99CC99\ +}\ +.ace-vibrant-ink .ace_invalid,\ +.ace-vibrant-ink .ace_invalid.ace_deprecated {\ +color: #CCFF33;\ +background-color: #000000\ +}\ +.ace-vibrant-ink .ace_fold {\ +background-color: #FFCC00;\ +border-color: #FFFFFF\ +}\ +.ace-vibrant-ink .ace_entity.ace_name.ace_function,\ +.ace-vibrant-ink .ace_support.ace_function,\ +.ace-vibrant-ink .ace_variable {\ +color: #FFCC00\ +}\ +.ace-vibrant-ink .ace_variable.ace_parameter {\ +font-style: italic\ +}\ +.ace-vibrant-ink .ace_string {\ +color: #66FF00\ +}\ +.ace-vibrant-ink .ace_string.ace_regexp {\ +color: #44B4CC\ +}\ +.ace-vibrant-ink .ace_comment {\ +color: #9933CC\ +}\ +.ace-vibrant-ink .ace_entity.ace_other.ace_attribute-name {\ +font-style: italic;\ +color: #99CC99\ +}\ +.ace-vibrant-ink .ace_indent-guide {\ +background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAEklEQVQImWNgYGBgYNDTc/oPAALPAZ7hxlbYAAAAAElFTkSuQmCC) right repeat-y\ +}"; + +var dom = require("../lib/dom"); +dom.importCssString(exports.cssText, exports.cssClass); +}); diff --git a/public/ace_editor/theme-xcode.js b/public/ace_editor/theme-xcode.js new file mode 100755 index 0000000..d4018ea --- /dev/null +++ b/public/ace_editor/theme-xcode.js @@ -0,0 +1,119 @@ +/* ***** BEGIN LICENSE BLOCK ***** + * Distributed under the BSD license: + * + * Copyright (c) 2010, Ajax.org B.V. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Ajax.org B.V. nor the + * names of its contributors may be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL AJAX.ORG B.V. BE LIABLE FOR ANY + * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * ***** END LICENSE BLOCK ***** */ + +ace.define('ace/theme/xcode', ['require', 'exports', 'module' , 'ace/lib/dom'], function(require, exports, module) { + +exports.isDark = false; +exports.cssClass = "ace-xcode"; +exports.cssText = "/* THIS THEME WAS AUTOGENERATED BY Theme.tmpl.css (UUID: EE3AD170-2B7F-4DE1-B724-C75F13FE0085) */\ +.ace-xcode .ace_gutter {\ +background: #e8e8e8;\ +color: #333\ +}\ +.ace-xcode .ace_print-margin {\ +width: 1px;\ +background: #e8e8e8\ +}\ +.ace-xcode {\ +background-color: #FFFFFF;\ +color: #000000\ +}\ +.ace-xcode .ace_cursor {\ +color: #000000\ +}\ +.ace-xcode .ace_marker-layer .ace_selection {\ +background: #B5D5FF\ +}\ +.ace-xcode.ace_multiselect .ace_selection.ace_start {\ +box-shadow: 0 0 3px 0px #FFFFFF;\ +border-radius: 2px\ +}\ +.ace-xcode .ace_marker-layer .ace_step {\ +background: rgb(198, 219, 174)\ +}\ +.ace-xcode .ace_marker-layer .ace_bracket {\ +margin: -1px 0 0 -1px;\ +border: 1px solid #BFBFBF\ +}\ +.ace-xcode .ace_marker-layer .ace_active-line {\ +background: rgba(0, 0, 0, 0.071)\ +}\ +.ace-xcode .ace_gutter-active-line {\ +background-color: rgba(0, 0, 0, 0.071)\ +}\ +.ace-xcode .ace_marker-layer .ace_selected-word {\ +border: 1px solid #B5D5FF\ +}\ +.ace-xcode .ace_constant.ace_language,\ +.ace-xcode .ace_keyword,\ +.ace-xcode .ace_meta,\ +.ace-xcode .ace_variable.ace_language {\ +color: #C800A4\ +}\ +.ace-xcode .ace_invisible {\ +color: #BFBFBF\ +}\ +.ace-xcode .ace_constant.ace_character,\ +.ace-xcode .ace_constant.ace_other {\ +color: #275A5E\ +}\ +.ace-xcode .ace_constant.ace_numeric {\ +color: #3A00DC\ +}\ +.ace-xcode .ace_entity.ace_other.ace_attribute-name,\ +.ace-xcode .ace_support.ace_constant,\ +.ace-xcode .ace_support.ace_function {\ +color: #450084\ +}\ +.ace-xcode .ace_fold {\ +background-color: #C800A4;\ +border-color: #000000\ +}\ +.ace-xcode .ace_entity.ace_name.ace_tag,\ +.ace-xcode .ace_support.ace_class,\ +.ace-xcode .ace_support.ace_type {\ +color: #790EAD\ +}\ +.ace-xcode .ace_storage {\ +color: #C900A4\ +}\ +.ace-xcode .ace_string {\ +color: #DF0002\ +}\ +.ace-xcode .ace_comment {\ +color: #008E00\ +}\ +.ace-xcode .ace_indent-guide {\ +background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAE0lEQVQImWP4////f4bLly//BwAmVgd1/w11/gAAAABJRU5ErkJggg==) right repeat-y\ +}"; + +var dom = require("../lib/dom"); +dom.importCssString(exports.cssText, exports.cssClass); +}); diff --git a/public/ace_editor/worker-coffee.js b/public/ace_editor/worker-coffee.js old mode 100644 new mode 100755 index aa9daad..0bb9741 --- a/public/ace_editor/worker-coffee.js +++ b/public/ace_editor/worker-coffee.js @@ -1,94 +1,126 @@ "no use strict"; +;(function(window) { +if (typeof window.window != "undefined" && window.document) { + return; +} -var console = { - log: function(msg) { - postMessage({type: "log", data: msg}); - } +window.console = function() { + var msgs = Array.prototype.slice.call(arguments, 0); + postMessage({type: "log", data: msgs}); }; -var window = { - console: console +window.console.error = +window.console.warn = +window.console.log = +window.console.trace = window.console; + +window.window = window; +window.ace = window; + +window.onerror = function(message, file, line, col, err) { + console.error("Worker " + (err ? err.stack : message)); }; -var normalizeModule = function(parentId, moduleName) { - // normalize plugin requires +window.normalizeModule = function(parentId, moduleName) { if (moduleName.indexOf("!") !== -1) { var chunks = moduleName.split("!"); - return normalizeModule(parentId, chunks[0]) + "!" + normalizeModule(parentId, chunks[1]); + return window.normalizeModule(parentId, chunks[0]) + "!" + window.normalizeModule(parentId, chunks[1]); } - // normalize relative requires if (moduleName.charAt(0) == ".") { var base = parentId.split("/").slice(0, -1).join("/"); - var moduleName = base + "/" + moduleName; + moduleName = (base ? base + "/" : "") + moduleName; while(moduleName.indexOf(".") !== -1 && previous != moduleName) { var previous = moduleName; - var moduleName = moduleName.replace(/\/\.\//, "/").replace(/[^\/]+\/\.\.\//, ""); + moduleName = moduleName.replace(/^\.\//, "").replace(/\/\.\//, "/").replace(/[^\/]+\/\.\.\//, ""); } } return moduleName; }; -var require = function(parentId, id) { - var id = normalizeModule(parentId, id); - - var module = require.modules[id]; +window.require = function(parentId, id) { + if (!id) { + id = parentId; + parentId = null; + } + if (!id.charAt) + throw new Error("worker.js require() accepts only (parentId, id) as arguments"); + + id = window.normalizeModule(parentId, id); + + var module = window.require.modules[id]; if (module) { if (!module.initialized) { - module.exports = module.factory().exports; module.initialized = true; + module.exports = module.factory().exports; } return module.exports; } var chunks = id.split("/"); - chunks[0] = require.tlns[chunks[0]] || chunks[0]; + if (!window.require.tlns) + return console.log("unable to load " + id); + chunks[0] = window.require.tlns[chunks[0]] || chunks[0]; var path = chunks.join("/") + ".js"; - require.id = id; + window.require.id = id; importScripts(path); - return require(parentId, id); + return window.require(parentId, id); }; +window.require.modules = {}; +window.require.tlns = {}; -require.modules = {}; -require.tlns = {}; - -var define = function(id, deps, factory) { +window.define = function(id, deps, factory) { if (arguments.length == 2) { factory = deps; + if (typeof id != "string") { + deps = id; + id = window.require.id; + } } else if (arguments.length == 1) { factory = id; - id = require.id; + deps = []; + id = window.require.id; } + if (!deps.length) + deps = ['require', 'exports', 'module']; + if (id.indexOf("text!") === 0) return; - var req = function(deps, factory) { - return require(id, deps, factory); + var req = function(childId) { + return window.require(id, childId); }; - require.modules[id] = { + window.require.modules[id] = { + exports: {}, factory: function() { - var module = { - exports: {} - }; - var returnExports = factory(req, module.exports, module); + var module = this; + var returnExports = factory.apply(this, deps.map(function(dep) { + switch(dep) { + case 'require': return req; + case 'exports': return module.exports; + case 'module': return module; + default: return req(dep); + } + })); if (returnExports) module.exports = returnExports; return module; } }; }; +window.define.amd = {}; -function initBaseUrls(topLevelNamespaces) { +window.initBaseUrls = function initBaseUrls(topLevelNamespaces) { require.tlns = topLevelNamespaces; -} +}; -function initSender() { +window.initSender = function initSender() { - var EventEmitter = require(null, "ace/lib/event_emitter").EventEmitter; - var oop = require(null, "ace/lib/oop"); + var EventEmitter = window.require("ace/lib/event_emitter").EventEmitter; + var oop = window.require("ace/lib/oop"); var Sender = function() {}; @@ -115,275 +147,57 @@ function initSender() { }).call(Sender.prototype); return new Sender(); -} +}; -var main; -var sender; +var main = window.main = null; +var sender = window.sender = null; -onmessage = function(e) { +window.onmessage = function(e) { var msg = e.data; if (msg.command) { - main[msg.command].apply(main, msg.args); + if (main[msg.command]) + main[msg.command].apply(main, msg.args); + else + throw new Error("Unknown command:" + msg.command); } else if (msg.init) { initBaseUrls(msg.tlns); - require(null, "ace/lib/fixoldbrowsers"); - sender = initSender(); - var clazz = require(null, msg.module)[msg.classname]; - main = new clazz(sender); + require("ace/lib/es5-shim"); + sender = window.sender = initSender(); + var clazz = require(msg.module)[msg.classname]; + main = window.main = new clazz(sender); } else if (msg.event && sender) { - sender._emit(msg.event, msg.data); + sender._signal(msg.event, msg.data); } }; -// vim:set ts=4 sts=4 sw=4 st: -// -- kriskowal Kris Kowal Copyright (C) 2009-2010 MIT License -// -- tlrobinson Tom Robinson Copyright (C) 2009-2010 MIT License (Narwhal Project) -// -- dantman Daniel Friesen Copyright(C) 2010 XXX No License Specified -// -- fschaefer Florian Schäfer Copyright (C) 2010 MIT License -// -- Irakli Gozalishvili Copyright (C) 2010 MIT License +})(this);// https://github.com/kriskowal/es5-shim -/*! - Copyright (c) 2009, 280 North Inc. http://280north.com/ - MIT License. http://github.com/280north/narwhal/blob/master/README.md -*/ +ace.define('ace/lib/es5-shim', ['require', 'exports', 'module' ], function(require, exports, module) { -define('ace/lib/fixoldbrowsers', ['require', 'exports', 'module' , 'ace/lib/regexp', 'ace/lib/es5-shim'], function(require, exports, module) { -"use strict"; - -require("./regexp"); -require("./es5-shim"); - -}); -/* - * Based on code from: - * - * XRegExp 1.5.0 - * (c) 2007-2010 Steven Levithan - * MIT License - * - * Provides an augmented, extensible, cross-browser implementation of regular expressions, - * including support for additional syntax, flags, and methods - */ - -define('ace/lib/regexp', ['require', 'exports', 'module' ], function(require, exports, module) { -"use strict"; - - //--------------------------------- - // Private variables - //--------------------------------- - - var real = { - exec: RegExp.prototype.exec, - test: RegExp.prototype.test, - match: String.prototype.match, - replace: String.prototype.replace, - split: String.prototype.split - }, - compliantExecNpcg = real.exec.call(/()??/, "")[1] === undefined, // check `exec` handling of nonparticipating capturing groups - compliantLastIndexIncrement = function () { - var x = /^/g; - real.test.call(x, ""); - return !x.lastIndex; - }(); - - //--------------------------------- - // Overriden native methods - //--------------------------------- - - // Adds named capture support (with backreferences returned as `result.name`), and fixes two - // cross-browser issues per ES3: - // - Captured values for nonparticipating capturing groups should be returned as `undefined`, - // rather than the empty string. - // - `lastIndex` should not be incremented after zero-length matches. - RegExp.prototype.exec = function (str) { - var match = real.exec.apply(this, arguments), - name, r2; - if ( typeof(str) == 'string' && match) { - // Fix browsers whose `exec` methods don't consistently return `undefined` for - // nonparticipating capturing groups - if (!compliantExecNpcg && match.length > 1 && indexOf(match, "") > -1) { - r2 = RegExp(this.source, real.replace.call(getNativeFlags(this), "g", "")); - // Using `str.slice(match.index)` rather than `match[0]` in case lookahead allowed - // matching due to characters outside the match - real.replace.call(str.slice(match.index), r2, function () { - for (var i = 1; i < arguments.length - 2; i++) { - if (arguments[i] === undefined) - match[i] = undefined; - } - }); - } - // Attach named capture properties - if (this._xregexp && this._xregexp.captureNames) { - for (var i = 1; i < match.length; i++) { - name = this._xregexp.captureNames[i - 1]; - if (name) - match[name] = match[i]; - } - } - // Fix browsers that increment `lastIndex` after zero-length matches - if (!compliantLastIndexIncrement && this.global && !match[0].length && (this.lastIndex > match.index)) - this.lastIndex--; - } - return match; - }; - - // Don't override `test` if it won't change anything - if (!compliantLastIndexIncrement) { - // Fix browser bug in native method - RegExp.prototype.test = function (str) { - // Use the native `exec` to skip some processing overhead, even though the overriden - // `exec` would take care of the `lastIndex` fix - var match = real.exec.call(this, str); - // Fix browsers that increment `lastIndex` after zero-length matches - if (match && this.global && !match[0].length && (this.lastIndex > match.index)) - this.lastIndex--; - return !!match; - }; - } - - //--------------------------------- - // Private helper functions - //--------------------------------- - - function getNativeFlags (regex) { - return (regex.global ? "g" : "") + - (regex.ignoreCase ? "i" : "") + - (regex.multiline ? "m" : "") + - (regex.extended ? "x" : "") + // Proposed for ES4; included in AS3 - (regex.sticky ? "y" : ""); - }; - - function indexOf (array, item, from) { - if (Array.prototype.indexOf) // Use the native array method if available - return array.indexOf(item, from); - for (var i = from || 0; i < array.length; i++) { - if (array[i] === item) - return i; - } - return -1; - }; - -}); -// vim: ts=4 sts=4 sw=4 expandtab -// -- kriskowal Kris Kowal Copyright (C) 2009-2011 MIT License -// -- tlrobinson Tom Robinson Copyright (C) 2009-2010 MIT License (Narwhal Project) -// -- dantman Daniel Friesen Copyright (C) 2010 XXX TODO License or CLA -// -- fschaefer Florian Schäfer Copyright (C) 2010 MIT License -// -- Gozala Irakli Gozalishvili Copyright (C) 2010 MIT License -// -- kitcambridge Kit Cambridge Copyright (C) 2011 MIT License -// -- kossnocorp Sasha Koss XXX TODO License or CLA -// -- bryanforbes Bryan Forbes XXX TODO License or CLA -// -- killdream Quildreen Motta Copyright (C) 2011 MIT Licence -// -- michaelficarra Michael Ficarra Copyright (C) 2011 3-clause BSD License -// -- sharkbrainguy Gerard Paapu Copyright (C) 2011 MIT License -// -- bbqsrc Brendan Molloy (C) 2011 Creative Commons Zero (public domain) -// -- iwyg XXX TODO License or CLA -// -- DomenicDenicola Domenic Denicola Copyright (C) 2011 MIT License -// -- xavierm02 Montillet Xavier XXX TODO License or CLA -// -- Raynos Raynos XXX TODO License or CLA -// -- samsonjs Sami Samhuri Copyright (C) 2010 MIT License -// -- rwldrn Rick Waldron Copyright (C) 2011 MIT License -// -- lexer Alexey Zakharov XXX TODO License or CLA - -/*! - Copyright (c) 2009, 280 North Inc. http://280north.com/ - MIT License. http://github.com/280north/narwhal/blob/master/README.md -*/ - -define('ace/lib/es5-shim', ['require', 'exports', 'module' ], function(require, exports, module) { - -/* - * Brings an environment as close to ECMAScript 5 compliance - * as is possible with the facilities of erstwhile engines. - * - * Annotated ES5: http://es5.github.com/ (specific links below) - * ES5 Spec: http://www.ecma-international.org/publications/files/ECMA-ST/Ecma-262.pdf - * - * @module - */ - -/*whatsupdoc*/ - -// -// Function -// ======== -// - -// ES-5 15.3.4.5 -// http://es5.github.com/#x15.3.4.5 +function Empty() {} if (!Function.prototype.bind) { Function.prototype.bind = function bind(that) { // .length is 1 - // 1. Let Target be the this value. var target = this; - // 2. If IsCallable(Target) is false, throw a TypeError exception. - if (typeof target != "function") - throw new TypeError(); // TODO message - // 3. Let A be a new (possibly empty) internal list of all of the - // argument values provided after thisArg (arg1, arg2 etc), in order. - // XXX slicedArgs will stand in for "A" if used + if (typeof target != "function") { + throw new TypeError("Function.prototype.bind called on incompatible " + target); + } var args = slice.call(arguments, 1); // for normal call - // 4. Let F be a new native ECMAScript object. - // 11. Set the [[Prototype]] internal property of F to the standard - // built-in Function prototype object as specified in 15.3.3.1. - // 12. Set the [[Call]] internal property of F as described in - // 15.3.4.5.1. - // 13. Set the [[Construct]] internal property of F as described in - // 15.3.4.5.2. - // 14. Set the [[HasInstance]] internal property of F as described in - // 15.3.4.5.3. var bound = function () { if (this instanceof bound) { - // 15.3.4.5.2 [[Construct]] - // When the [[Construct]] internal method of a function object, - // F that was created using the bind function is called with a - // list of arguments ExtraArgs, the following steps are taken: - // 1. Let target be the value of F's [[TargetFunction]] - // internal property. - // 2. If target has no [[Construct]] internal method, a - // TypeError exception is thrown. - // 3. Let boundArgs be the value of F's [[BoundArgs]] internal - // property. - // 4. Let args be a new list containing the same values as the - // list boundArgs in the same order followed by the same - // values as the list ExtraArgs in the same order. - // 5. Return the result of calling the [[Construct]] internal - // method of target providing args as the arguments. - - var F = function(){}; - F.prototype = target.prototype; - var self = new F; var result = target.apply( - self, + this, args.concat(slice.call(arguments)) ); - if (result !== null && Object(result) === result) + if (Object(result) === result) { return result; - return self; + } + return this; } else { - // 15.3.4.5.1 [[Call]] - // When the [[Call]] internal method of a function object, F, - // which was created using the bind function is called with a - // this value and a list of arguments ExtraArgs, the following - // steps are taken: - // 1. Let boundArgs be the value of F's [[BoundArgs]] internal - // property. - // 2. Let boundThis be the value of F's [[BoundThis]] internal - // property. - // 3. Let target be the value of F's [[TargetFunction]] internal - // property. - // 4. Let args be a new list containing the same values as the - // list boundArgs in the same order followed by the same - // values as the list ExtraArgs in the same order. - // 5. Return the result of calling the [[Call]] internal method - // of target providing boundThis as the this value and - // providing args as the arguments. - - // equiv: target.call(this, ...boundArgs, ...args) return target.apply( that, args.concat(slice.call(arguments)) @@ -392,53 +206,20 @@ if (!Function.prototype.bind) { } }; - // XXX bound.length is never writable, so don't even try - // - // 15. If the [[Class]] internal property of Target is "Function", then - // a. Let L be the length property of Target minus the length of A. - // b. Set the length own property of F to either 0 or L, whichever is - // larger. - // 16. Else set the length own property of F to 0. - // 17. Set the attributes of the length own property of F to the values - // specified in 15.3.5.1. - - // TODO - // 18. Set the [[Extensible]] internal property of F to true. - - // TODO - // 19. Let thrower be the [[ThrowTypeError]] function Object (13.2.3). - // 20. Call the [[DefineOwnProperty]] internal method of F with - // arguments "caller", PropertyDescriptor {[[Get]]: thrower, [[Set]]: - // thrower, [[Enumerable]]: false, [[Configurable]]: false}, and - // false. - // 21. Call the [[DefineOwnProperty]] internal method of F with - // arguments "arguments", PropertyDescriptor {[[Get]]: thrower, - // [[Set]]: thrower, [[Enumerable]]: false, [[Configurable]]: false}, - // and false. - - // TODO - // NOTE Function objects created using Function.prototype.bind do not - // have a prototype property or the [[Code]], [[FormalParameters]], and - // [[Scope]] internal properties. - // XXX can't delete prototype in pure-js. - - // 22. Return F. + if(target.prototype) { + Empty.prototype = target.prototype; + bound.prototype = new Empty(); + Empty.prototype = null; + } return bound; }; } - -// Shortcut to an often accessed properties, in order to avoid multiple -// dereference that costs universally. -// _Please note: Shortcuts are defined after `Function.prototype.bind` as we -// us it in defining shortcuts. var call = Function.prototype.call; var prototypeOfArray = Array.prototype; var prototypeOfObject = Object.prototype; var slice = prototypeOfArray.slice; -var toString = call.bind(prototypeOfObject.toString); +var _toString = call.bind(prototypeOfObject.toString); var owns = call.bind(prototypeOfObject.hasOwnProperty); - -// If JS engine supports accessors creating shortcuts. var defineGetter; var defineSetter; var lookupGetter; @@ -450,165 +231,217 @@ if ((supportsAccessors = owns(prototypeOfObject, "__defineGetter__"))) { lookupGetter = call.bind(prototypeOfObject.__lookupGetter__); lookupSetter = call.bind(prototypeOfObject.__lookupSetter__); } +if ([1,2].splice(0).length != 2) { + if(function() { // test IE < 9 to splice bug - see issue #138 + function makeArray(l) { + var a = new Array(l+2); + a[0] = a[1] = 0; + return a; + } + var array = [], lengthBefore; + + array.splice.apply(array, makeArray(20)); + array.splice.apply(array, makeArray(26)); -// -// Array -// ===== -// + lengthBefore = array.length; //46 + array.splice(5, 0, "XXX"); // add one element -// ES5 15.4.3.2 -// http://es5.github.com/#x15.4.3.2 -// https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/isArray + lengthBefore + 1 == array.length + + if (lengthBefore + 1 == array.length) { + return true;// has right splice implementation without bugs + } + }()) {//IE 6/7 + var array_splice = Array.prototype.splice; + Array.prototype.splice = function(start, deleteCount) { + if (!arguments.length) { + return []; + } else { + return array_splice.apply(this, [ + start === void 0 ? 0 : start, + deleteCount === void 0 ? (this.length - start) : deleteCount + ].concat(slice.call(arguments, 2))) + } + }; + } else {//IE8 + Array.prototype.splice = function(pos, removeCount){ + var length = this.length; + if (pos > 0) { + if (pos > length) + pos = length; + } else if (pos == void 0) { + pos = 0; + } else if (pos < 0) { + pos = Math.max(length + pos, 0); + } + + if (!(pos+removeCount < length)) + removeCount = length - pos; + + var removed = this.slice(pos, pos+removeCount); + var insert = slice.call(arguments, 2); + var add = insert.length; + if (pos === length) { + if (add) { + this.push.apply(this, insert); + } + } else { + var remove = Math.min(removeCount, length - pos); + var tailOldPos = pos + remove; + var tailNewPos = tailOldPos + add - remove; + var tailCount = length - tailOldPos; + var lengthAfterRemove = length - remove; + + if (tailNewPos < tailOldPos) { // case A + for (var i = 0; i < tailCount; ++i) { + this[tailNewPos+i] = this[tailOldPos+i]; + } + } else if (tailNewPos > tailOldPos) { // case B + for (i = tailCount; i--; ) { + this[tailNewPos+i] = this[tailOldPos+i]; + } + } // else, add == remove (nothing to do) + + if (add && pos === lengthAfterRemove) { + this.length = lengthAfterRemove; // truncate array + this.push.apply(this, insert); + } else { + this.length = lengthAfterRemove + add; // reserves space + for (i = 0; i < add; ++i) { + this[pos+i] = insert[i]; + } + } + } + return removed; + }; + } +} if (!Array.isArray) { Array.isArray = function isArray(obj) { - return toString(obj) == "[object Array]"; + return _toString(obj) == "[object Array]"; }; } +var boxedString = Object("a"), + splitString = boxedString[0] != "a" || !(0 in boxedString); -// The IsCallable() check in the Array functions -// has been replaced with a strict check on the -// internal class of the object to trap cases where -// the provided function was actually a regular -// expression literal, which in V8 and -// JavaScriptCore is a typeof "function". Only in -// V8 are regular expression literals permitted as -// reduce parameters, so it is desirable in the -// general case for the shim to match the more -// strict and common behavior of rejecting regular -// expressions. - -// ES5 15.4.4.18 -// http://es5.github.com/#x15.4.4.18 -// https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/array/forEach if (!Array.prototype.forEach) { Array.prototype.forEach = function forEach(fun /*, thisp*/) { - var self = toObject(this), + var object = toObject(this), + self = splitString && _toString(this) == "[object String]" ? + this.split("") : + object, thisp = arguments[1], - i = 0, + i = -1, length = self.length >>> 0; - - // If no callback function or if callback is not a callable function - if (toString(fun) != "[object Function]") { + if (_toString(fun) != "[object Function]") { throw new TypeError(); // TODO message } - while (i < length) { + while (++i < length) { if (i in self) { - // Invoke the callback function with call, passing arguments: - // context, property value, property key, thisArg object context - fun.call(thisp, self[i], i, self); + fun.call(thisp, self[i], i, object); } - i++; } }; } - -// ES5 15.4.4.19 -// http://es5.github.com/#x15.4.4.19 -// https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Objects/Array/map if (!Array.prototype.map) { Array.prototype.map = function map(fun /*, thisp*/) { - var self = toObject(this), + var object = toObject(this), + self = splitString && _toString(this) == "[object String]" ? + this.split("") : + object, length = self.length >>> 0, result = Array(length), thisp = arguments[1]; - - // If no callback function or if callback is not a callable function - if (toString(fun) != "[object Function]") { - throw new TypeError(); // TODO message + if (_toString(fun) != "[object Function]") { + throw new TypeError(fun + " is not a function"); } for (var i = 0; i < length; i++) { if (i in self) - result[i] = fun.call(thisp, self[i], i, self); + result[i] = fun.call(thisp, self[i], i, object); } return result; }; } - -// ES5 15.4.4.20 -// http://es5.github.com/#x15.4.4.20 -// https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Objects/Array/filter if (!Array.prototype.filter) { Array.prototype.filter = function filter(fun /*, thisp */) { - var self = toObject(this), + var object = toObject(this), + self = splitString && _toString(this) == "[object String]" ? + this.split("") : + object, length = self.length >>> 0, result = [], + value, thisp = arguments[1]; - - // If no callback function or if callback is not a callable function - if (toString(fun) != "[object Function]") { - throw new TypeError(); // TODO message + if (_toString(fun) != "[object Function]") { + throw new TypeError(fun + " is not a function"); } for (var i = 0; i < length; i++) { - if (i in self && fun.call(thisp, self[i], i, self)) - result.push(self[i]); + if (i in self) { + value = self[i]; + if (fun.call(thisp, value, i, object)) { + result.push(value); + } + } } return result; }; } - -// ES5 15.4.4.16 -// http://es5.github.com/#x15.4.4.16 -// https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/every if (!Array.prototype.every) { Array.prototype.every = function every(fun /*, thisp */) { - var self = toObject(this), + var object = toObject(this), + self = splitString && _toString(this) == "[object String]" ? + this.split("") : + object, length = self.length >>> 0, thisp = arguments[1]; - - // If no callback function or if callback is not a callable function - if (toString(fun) != "[object Function]") { - throw new TypeError(); // TODO message + if (_toString(fun) != "[object Function]") { + throw new TypeError(fun + " is not a function"); } for (var i = 0; i < length; i++) { - if (i in self && !fun.call(thisp, self[i], i, self)) + if (i in self && !fun.call(thisp, self[i], i, object)) { return false; + } } return true; }; } - -// ES5 15.4.4.17 -// http://es5.github.com/#x15.4.4.17 -// https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/some if (!Array.prototype.some) { Array.prototype.some = function some(fun /*, thisp */) { - var self = toObject(this), + var object = toObject(this), + self = splitString && _toString(this) == "[object String]" ? + this.split("") : + object, length = self.length >>> 0, thisp = arguments[1]; - - // If no callback function or if callback is not a callable function - if (toString(fun) != "[object Function]") { - throw new TypeError(); // TODO message + if (_toString(fun) != "[object Function]") { + throw new TypeError(fun + " is not a function"); } for (var i = 0; i < length; i++) { - if (i in self && fun.call(thisp, self[i], i, self)) + if (i in self && fun.call(thisp, self[i], i, object)) { return true; + } } return false; }; } - -// ES5 15.4.4.21 -// http://es5.github.com/#x15.4.4.21 -// https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Objects/Array/reduce if (!Array.prototype.reduce) { Array.prototype.reduce = function reduce(fun /*, initial*/) { - var self = toObject(this), + var object = toObject(this), + self = splitString && _toString(this) == "[object String]" ? + this.split("") : + object, length = self.length >>> 0; - - // If no callback function or if callback is not a callable function - if (toString(fun) != "[object Function]") { - throw new TypeError(); // TODO message + if (_toString(fun) != "[object Function]") { + throw new TypeError(fun + " is not a function"); + } + if (!length && arguments.length == 1) { + throw new TypeError("reduce of empty array with no initial value"); } - - // no value to return if no initial value and an empty array - if (!length && arguments.length == 1) - throw new TypeError(); // TODO message var i = 0; var result; @@ -620,38 +453,34 @@ if (!Array.prototype.reduce) { result = self[i++]; break; } - - // if array contains no values, no initial value to return - if (++i >= length) - throw new TypeError(); // TODO message + if (++i >= length) { + throw new TypeError("reduce of empty array with no initial value"); + } } while (true); } for (; i < length; i++) { - if (i in self) - result = fun.call(void 0, result, self[i], i, self); + if (i in self) { + result = fun.call(void 0, result, self[i], i, object); + } } return result; }; } - -// ES5 15.4.4.22 -// http://es5.github.com/#x15.4.4.22 -// https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Objects/Array/reduceRight if (!Array.prototype.reduceRight) { Array.prototype.reduceRight = function reduceRight(fun /*, initial*/) { - var self = toObject(this), + var object = toObject(this), + self = splitString && _toString(this) == "[object String]" ? + this.split("") : + object, length = self.length >>> 0; - - // If no callback function or if callback is not a callable function - if (toString(fun) != "[object Function]") { - throw new TypeError(); // TODO message + if (_toString(fun) != "[object Function]") { + throw new TypeError(fun + " is not a function"); + } + if (!length && arguments.length == 1) { + throw new TypeError("reduceRight of empty array with no initial value"); } - - // no value to return if no initial value, empty array - if (!length && arguments.length == 1) - throw new TypeError(); // TODO message var result, i = length - 1; if (arguments.length >= 2) { @@ -662,38 +491,36 @@ if (!Array.prototype.reduceRight) { result = self[i--]; break; } - - // if array contains no values, no initial value to return - if (--i < 0) - throw new TypeError(); // TODO message + if (--i < 0) { + throw new TypeError("reduceRight of empty array with no initial value"); + } } while (true); } do { - if (i in this) - result = fun.call(void 0, result, self[i], i, self); + if (i in this) { + result = fun.call(void 0, result, self[i], i, object); + } } while (i--); return result; }; } - -// ES5 15.4.4.14 -// http://es5.github.com/#x15.4.4.14 -// https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/indexOf -if (!Array.prototype.indexOf) { +if (!Array.prototype.indexOf || ([0, 1].indexOf(1, 2) != -1)) { Array.prototype.indexOf = function indexOf(sought /*, fromIndex */ ) { - var self = toObject(this), + var self = splitString && _toString(this) == "[object String]" ? + this.split("") : + toObject(this), length = self.length >>> 0; - if (!length) + if (!length) { return -1; + } var i = 0; - if (arguments.length > 1) + if (arguments.length > 1) { i = toInteger(arguments[1]); - - // handle negative indices + } i = i >= 0 ? i : Math.max(0, length + i); for (; i < length; i++) { if (i in self && self[i] === sought) { @@ -703,41 +530,30 @@ if (!Array.prototype.indexOf) { return -1; }; } - -// ES5 15.4.4.15 -// http://es5.github.com/#x15.4.4.15 -// https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/lastIndexOf -if (!Array.prototype.lastIndexOf) { +if (!Array.prototype.lastIndexOf || ([0, 1].lastIndexOf(0, -3) != -1)) { Array.prototype.lastIndexOf = function lastIndexOf(sought /*, fromIndex */) { - var self = toObject(this), + var self = splitString && _toString(this) == "[object String]" ? + this.split("") : + toObject(this), length = self.length >>> 0; - if (!length) + if (!length) { return -1; + } var i = length - 1; - if (arguments.length > 1) + if (arguments.length > 1) { i = Math.min(i, toInteger(arguments[1])); - // handle negative indices + } i = i >= 0 ? i : length - Math.abs(i); for (; i >= 0; i--) { - if (i in self && sought === self[i]) + if (i in self && sought === self[i]) { return i; + } } return -1; }; } - -// -// Object -// ====== -// - -// ES5 15.2.3.2 -// http://es5.github.com/#x15.2.3.2 if (!Object.getPrototypeOf) { - // https://github.com/kriskowal/es5-shim/issues#issue/2 - // http://ejohn.org/blog/objectgetprototypeof/ - // recommended by fschaefer on github Object.getPrototypeOf = function getPrototypeOf(object) { return object.__proto__ || ( object.constructor ? @@ -746,84 +562,73 @@ if (!Object.getPrototypeOf) { ); }; } - -// ES5 15.2.3.3 -// http://es5.github.com/#x15.2.3.3 if (!Object.getOwnPropertyDescriptor) { var ERR_NON_OBJECT = "Object.getOwnPropertyDescriptor called on a " + "non-object: "; Object.getOwnPropertyDescriptor = function getOwnPropertyDescriptor(object, property) { if ((typeof object != "object" && typeof object != "function") || object === null) throw new TypeError(ERR_NON_OBJECT + object); - // If object does not owns property return undefined immediately. if (!owns(object, property)) return; var descriptor, getter, setter; - - // If object has a property then it's for sure both `enumerable` and - // `configurable`. descriptor = { enumerable: true, configurable: true }; - - // If JS engine supports accessor properties then property may be a - // getter or setter. if (supportsAccessors) { - // Unfortunately `__lookupGetter__` will return a getter even - // if object has own non getter property along with a same named - // inherited getter. To avoid misbehavior we temporary remove - // `__proto__` so that `__lookupGetter__` will return getter only - // if it's owned by an object. var prototype = object.__proto__; object.__proto__ = prototypeOfObject; var getter = lookupGetter(object, property); var setter = lookupSetter(object, property); - - // Once we have getter and setter we can put values back. object.__proto__ = prototype; if (getter || setter) { if (getter) descriptor.get = getter; if (setter) descriptor.set = setter; - - // If it was accessor property we're done and return here - // in order to avoid adding `value` to the descriptor. return descriptor; } } - - // If we got this far we know that object has an own property that is - // not an accessor so we set it as a value and return descriptor. descriptor.value = object[property]; return descriptor; }; } - -// ES5 15.2.3.4 -// http://es5.github.com/#x15.2.3.4 if (!Object.getOwnPropertyNames) { Object.getOwnPropertyNames = function getOwnPropertyNames(object) { return Object.keys(object); }; } - -// ES5 15.2.3.5 -// http://es5.github.com/#x15.2.3.5 if (!Object.create) { + var createEmpty; + if (Object.prototype.__proto__ === null) { + createEmpty = function () { + return { "__proto__": null }; + }; + } else { + createEmpty = function () { + var empty = {}; + for (var i in empty) + empty[i] = null; + empty.constructor = + empty.hasOwnProperty = + empty.propertyIsEnumerable = + empty.isPrototypeOf = + empty.toLocaleString = + empty.toString = + empty.valueOf = + empty.__proto__ = null; + return empty; + } + } + Object.create = function create(prototype, properties) { var object; if (prototype === null) { - object = { "__proto__": null }; + object = createEmpty(); } else { if (typeof prototype != "object") throw new TypeError("typeof prototype["+(typeof prototype)+"] != 'object'"); var Type = function () {}; Type.prototype = prototype; object = new Type(); - // IE has no built-in implementation of `Object.getPrototypeOf` - // neither `__proto__`, but this manually setting `__proto__` will - // guarantee that `Object.getPrototypeOf` will work as expected with - // objects created using `Object.create` object.__proto__ = prototype; } if (properties !== void 0) @@ -832,29 +637,13 @@ if (!Object.create) { }; } -// ES5 15.2.3.6 -// http://es5.github.com/#x15.2.3.6 - -// Patch for WebKit and IE8 standard mode -// Designed by hax -// related issue: https://github.com/kriskowal/es5-shim/issues#issue/5 -// IE8 Reference: -// http://msdn.microsoft.com/en-us/library/dd282900.aspx -// http://msdn.microsoft.com/en-us/library/dd229916.aspx -// WebKit Bugs: -// https://bugs.webkit.org/show_bug.cgi?id=36423 - function doesDefinePropertyWork(object) { try { Object.defineProperty(object, "sentinel", {}); return "sentinel" in object; } catch (exception) { - // returns falsy } } - -// check whether defineProperty works if it's given. Otherwise, -// shim partially. if (Object.defineProperty) { var definePropertyWorksOnObject = doesDefinePropertyWork({}); var definePropertyWorksOnDom = typeof document == "undefined" || @@ -875,48 +664,21 @@ if (!Object.defineProperty || definePropertyFallback) { throw new TypeError(ERR_NON_OBJECT_TARGET + object); if ((typeof descriptor != "object" && typeof descriptor != "function") || descriptor === null) throw new TypeError(ERR_NON_OBJECT_DESCRIPTOR + descriptor); - - // make a valiant attempt to use the real defineProperty - // for I8's DOM elements. if (definePropertyFallback) { try { return definePropertyFallback.call(Object, object, property, descriptor); } catch (exception) { - // try the shim if the real one doesn't work } } - - // If it's a data property. if (owns(descriptor, "value")) { - // fail silently if "writable", "enumerable", or "configurable" - // are requested but not supported - /* - // alternate approach: - if ( // can't implement these features; allow false but not true - !(owns(descriptor, "writable") ? descriptor.writable : true) || - !(owns(descriptor, "enumerable") ? descriptor.enumerable : true) || - !(owns(descriptor, "configurable") ? descriptor.configurable : true) - ) - throw new RangeError( - "This implementation of Object.defineProperty does not " + - "support configurable, enumerable, or writable." - ); - */ if (supportsAccessors && (lookupGetter(object, property) || lookupSetter(object, property))) { - // As accessors are supported only on engines implementing - // `__proto__` we can safely override `__proto__` while defining - // a property to make sure that we don't hit an inherited - // accessor. var prototype = object.__proto__; object.__proto__ = prototypeOfObject; - // Deleting a property anyway since getter / setter may be - // defined on object itself. delete object[property]; object[property] = descriptor.value; - // Setting original `__proto__` back now. object.__proto__ = prototype; } else { object[property] = descriptor.value; @@ -924,7 +686,6 @@ if (!Object.defineProperty || definePropertyFallback) { } else { if (!supportsAccessors) throw new TypeError(ERR_ACCESSORS_NOT_SUPPORTED); - // If we got that far then getters and setters can be defined !! if (owns(descriptor, "get")) defineGetter(object, property, descriptor.get); if (owns(descriptor, "set")) @@ -934,9 +695,6 @@ if (!Object.defineProperty || definePropertyFallback) { return object; }; } - -// ES5 15.2.3.7 -// http://es5.github.com/#x15.2.3.7 if (!Object.defineProperties) { Object.defineProperties = function defineProperties(object, properties) { for (var property in properties) { @@ -946,30 +704,16 @@ if (!Object.defineProperties) { return object; }; } - -// ES5 15.2.3.8 -// http://es5.github.com/#x15.2.3.8 if (!Object.seal) { Object.seal = function seal(object) { - // this is misleading and breaks feature-detection, but - // allows "securable" code to "gracefully" degrade to working - // but insecure code. return object; }; } - -// ES5 15.2.3.9 -// http://es5.github.com/#x15.2.3.9 if (!Object.freeze) { Object.freeze = function freeze(object) { - // this is misleading and breaks feature-detection, but - // allows "securable" code to "gracefully" degrade to working - // but insecure code. return object; }; } - -// detect a Rhino bug and patch it try { Object.freeze(function () {}); } catch (exception) { @@ -983,43 +727,26 @@ try { }; })(Object.freeze); } - -// ES5 15.2.3.10 -// http://es5.github.com/#x15.2.3.10 if (!Object.preventExtensions) { Object.preventExtensions = function preventExtensions(object) { - // this is misleading and breaks feature-detection, but - // allows "securable" code to "gracefully" degrade to working - // but insecure code. return object; }; } - -// ES5 15.2.3.11 -// http://es5.github.com/#x15.2.3.11 if (!Object.isSealed) { Object.isSealed = function isSealed(object) { return false; }; } - -// ES5 15.2.3.12 -// http://es5.github.com/#x15.2.3.12 if (!Object.isFrozen) { Object.isFrozen = function isFrozen(object) { return false; }; } - -// ES5 15.2.3.13 -// http://es5.github.com/#x15.2.3.13 if (!Object.isExtensible) { Object.isExtensible = function isExtensible(object) { - // 1. If Type(O) is not Object throw a TypeError exception. if (Object(object) === object) { throw new TypeError(); // TODO message } - // 2. Return the Boolean value of the [[Extensible]] internal property of O. var name = ''; while (owns(object, name)) { name += '?'; @@ -1030,11 +757,7 @@ if (!Object.isExtensible) { return returnValue; }; } - -// ES5 15.2.3.14 -// http://es5.github.com/#x15.2.3.14 if (!Object.keys) { - // http://whattheheadsaid.com/2010/10/a-safer-object-keys-compatibility-implementation var hasDontEnumBug = true, dontEnums = [ "toString", @@ -1047,13 +770,18 @@ if (!Object.keys) { ], dontEnumsLength = dontEnums.length; - for (var key in {"toString": null}) + for (var key in {"toString": null}) { hasDontEnumBug = false; + } Object.keys = function keys(object) { - if ((typeof object != "object" && typeof object != "function") || object === null) + if ( + (typeof object != "object" && typeof object != "function") || + object === null + ) { throw new TypeError("Object.keys called on a non-object"); + } var keys = []; for (var name in object) { @@ -1070,220 +798,19 @@ if (!Object.keys) { } } } - return keys; }; } - -// -// Date -// ==== -// - -// ES5 15.9.5.43 -// http://es5.github.com/#x15.9.5.43 -// This function returns a String value represent the instance in time -// represented by this Date object. The format of the String is the Date Time -// string format defined in 15.9.1.15. All fields are present in the String. -// The time zone is always UTC, denoted by the suffix Z. If the time value of -// this object is not a finite Number a RangeError exception is thrown. -if (!Date.prototype.toISOString || (new Date(-62198755200000).toISOString().indexOf('-000001') === -1)) { - Date.prototype.toISOString = function toISOString() { - var result, length, value, year; - if (!isFinite(this)) - throw new RangeError; - - // the date time string format is specified in 15.9.1.15. - result = [this.getUTCMonth() + 1, this.getUTCDate(), - this.getUTCHours(), this.getUTCMinutes(), this.getUTCSeconds()]; - year = this.getUTCFullYear(); - year = (year < 0 ? '-' : (year > 9999 ? '+' : '')) + ('00000' + Math.abs(year)).slice(0 <= year && year <= 9999 ? -4 : -6); - - length = result.length; - while (length--) { - value = result[length]; - // pad months, days, hours, minutes, and seconds to have two digits. - if (value < 10) - result[length] = "0" + value; - } - // pad milliseconds to have three digits. - return year + "-" + result.slice(0, 2).join("-") + "T" + result.slice(2).join(":") + "." + - ("000" + this.getUTCMilliseconds()).slice(-3) + "Z"; - } -} - -// ES5 15.9.4.4 -// http://es5.github.com/#x15.9.4.4 if (!Date.now) { Date.now = function now() { return new Date().getTime(); }; } - -// ES5 15.9.5.44 -// http://es5.github.com/#x15.9.5.44 -// This function provides a String representation of a Date object for use by -// JSON.stringify (15.12.3). -if (!Date.prototype.toJSON) { - Date.prototype.toJSON = function toJSON(key) { - // When the toJSON method is called with argument key, the following - // steps are taken: - - // 1. Let O be the result of calling ToObject, giving it the this - // value as its argument. - // 2. Let tv be ToPrimitive(O, hint Number). - // 3. If tv is a Number and is not finite, return null. - // XXX - // 4. Let toISO be the result of calling the [[Get]] internal method of - // O with argument "toISOString". - // 5. If IsCallable(toISO) is false, throw a TypeError exception. - if (typeof this.toISOString != "function") - throw new TypeError(); // TODO message - // 6. Return the result of calling the [[Call]] internal method of - // toISO with O as the this value and an empty argument list. - return this.toISOString(); - - // NOTE 1 The argument is ignored. - - // NOTE 2 The toJSON function is intentionally generic; it does not - // require that its this value be a Date object. Therefore, it can be - // transferred to other kinds of objects for use as a method. However, - // it does require that any such object have a toISOString method. An - // object is free to use the argument key to filter its - // stringification. - }; -} - -// ES5 15.9.4.2 -// http://es5.github.com/#x15.9.4.2 -// based on work shared by Daniel Friesen (dantman) -// http://gist.github.com/303249 -if (Date.parse("+275760-09-13T00:00:00.000Z") !== 8.64e15) { - // XXX global assignment won't work in embeddings that use - // an alternate object for the context. - Date = (function(NativeDate) { - - // Date.length === 7 - var Date = function Date(Y, M, D, h, m, s, ms) { - var length = arguments.length; - if (this instanceof NativeDate) { - var date = length == 1 && String(Y) === Y ? // isString(Y) - // We explicitly pass it through parse: - new NativeDate(Date.parse(Y)) : - // We have to manually make calls depending on argument - // length here - length >= 7 ? new NativeDate(Y, M, D, h, m, s, ms) : - length >= 6 ? new NativeDate(Y, M, D, h, m, s) : - length >= 5 ? new NativeDate(Y, M, D, h, m) : - length >= 4 ? new NativeDate(Y, M, D, h) : - length >= 3 ? new NativeDate(Y, M, D) : - length >= 2 ? new NativeDate(Y, M) : - length >= 1 ? new NativeDate(Y) : - new NativeDate(); - // Prevent mixups with unfixed Date object - date.constructor = Date; - return date; - } - return NativeDate.apply(this, arguments); - }; - - // 15.9.1.15 Date Time String Format. - var isoDateExpression = new RegExp("^" + - "(\\d{4}|[\+\-]\\d{6})" + // four-digit year capture or sign + 6-digit extended year - "(?:-(\\d{2})" + // optional month capture - "(?:-(\\d{2})" + // optional day capture - "(?:" + // capture hours:minutes:seconds.milliseconds - "T(\\d{2})" + // hours capture - ":(\\d{2})" + // minutes capture - "(?:" + // optional :seconds.milliseconds - ":(\\d{2})" + // seconds capture - "(?:\\.(\\d{3}))?" + // milliseconds capture - ")?" + - "(?:" + // capture UTC offset component - "Z|" + // UTC capture - "(?:" + // offset specifier +/-hours:minutes - "([-+])" + // sign capture - "(\\d{2})" + // hours offset capture - ":(\\d{2})" + // minutes offset capture - ")" + - ")?)?)?)?" + - "$"); - - // Copy any custom methods a 3rd party library may have added - for (var key in NativeDate) - Date[key] = NativeDate[key]; - - // Copy "native" methods explicitly; they may be non-enumerable - Date.now = NativeDate.now; - Date.UTC = NativeDate.UTC; - Date.prototype = NativeDate.prototype; - Date.prototype.constructor = Date; - - // Upgrade Date.parse to handle simplified ISO 8601 strings - Date.parse = function parse(string) { - var match = isoDateExpression.exec(string); - if (match) { - match.shift(); // kill match[0], the full match - // parse months, days, hours, minutes, seconds, and milliseconds - for (var i = 1; i < 7; i++) { - // provide default values if necessary - match[i] = +(match[i] || (i < 3 ? 1 : 0)); - // match[1] is the month. Months are 0-11 in JavaScript - // `Date` objects, but 1-12 in ISO notation, so we - // decrement. - if (i == 1) - match[i]--; - } - - // parse the UTC offset component - var minuteOffset = +match.pop(), hourOffset = +match.pop(), sign = match.pop(); - - // compute the explicit time zone offset if specified - var offset = 0; - if (sign) { - // detect invalid offsets and return early - if (hourOffset > 23 || minuteOffset > 59) - return NaN; - - // express the provided time zone offset in minutes. The offset is - // negative for time zones west of UTC; positive otherwise. - offset = (hourOffset * 60 + minuteOffset) * 6e4 * (sign == "+" ? -1 : 1); - } - - // Date.UTC for years between 0 and 99 converts year to 1900 + year - // The Gregorian calendar has a 400-year cycle, so - // to Date.UTC(year + 400, .... ) - 12622780800000 == Date.UTC(year, ...), - // where 12622780800000 - number of milliseconds in Gregorian calendar 400 years - var year = +match[0]; - if (0 <= year && year <= 99) { - match[0] = year + 400; - return NativeDate.UTC.apply(this, match) + offset - 12622780800000; - } - - // compute a new UTC date value, accounting for the optional offset - return NativeDate.UTC.apply(this, match) + offset; - } - return NativeDate.parse.apply(this, arguments); - }; - - return Date; - })(Date); -} - -// -// String -// ====== -// - -// ES5 15.5.4.20 -// http://es5.github.com/#x15.5.4.20 var ws = "\x09\x0A\x0B\x0C\x0D\x20\xA0\u1680\u180E\u2000\u2001\u2002\u2003" + "\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028" + "\u2029\uFEFF"; if (!String.prototype.trim || ws.trim()) { - // http://blog.stevenlevithan.com/archives/faster-trim-javascript - // http://perfectionkills.com/whitespace-deviations/ ws = "[" + ws + "]"; var trimBeginRegexp = new RegExp("^" + ws + ws + "*"), trimEndRegexp = new RegExp(ws + ws + "*$"); @@ -1292,259 +819,59 @@ if (!String.prototype.trim || ws.trim()) { }; } -// -// Util -// ====== -// - -// ES5 9.4 -// http://es5.github.com/#x9.4 -// http://jsperf.com/to-integer -var toInteger = function (n) { +function toInteger(n) { n = +n; - if (n !== n) // isNaN + if (n !== n) { // isNaN n = 0; - else if (n !== 0 && n !== (1/0) && n !== -(1/0)) + } else if (n !== 0 && n !== (1/0) && n !== -(1/0)) { n = (n > 0 || -1) * Math.floor(Math.abs(n)); + } return n; -}; +} -var prepareString = "a"[0] != "a", - // ES5 9.9 - // http://es5.github.com/#x9.9 - toObject = function (o) { - if (o == null) { // this matches both null and undefined - throw new TypeError(); // TODO message +function isPrimitive(input) { + var type = typeof input; + return ( + input === null || + type === "undefined" || + type === "boolean" || + type === "number" || + type === "string" + ); +} + +function toPrimitive(input) { + var val, valueOf, toString; + if (isPrimitive(input)) { + return input; + } + valueOf = input.valueOf; + if (typeof valueOf === "function") { + val = valueOf.call(input); + if (isPrimitive(val)) { + return val; } - // If the implementation doesn't support by-index access of - // string characters (ex. IE < 7), split the string - if (prepareString && typeof o == "string" && o) { - return o.split(""); + } + toString = input.toString; + if (typeof toString === "function") { + val = toString.call(input); + if (isPrimitive(val)) { + return val; } - return Object(o); - }; -}); -/* vim:ts=4:sts=4:sw=4: - * ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla Public License Version - * 1.1 (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * http://www.mozilla.org/MPL/ - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - * - * The Original Code is Ajax.org Code Editor (ACE). - * - * The Initial Developer of the Original Code is - * Ajax.org B.V. - * Portions created by the Initial Developer are Copyright (C) 2010 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Fabian Jakobs - * Irakli Gozalishvili (http://jeditoolkit.com) - * Mike de Boer - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -define('ace/lib/event_emitter', ['require', 'exports', 'module' ], function(require, exports, module) { -"use strict"; - -var EventEmitter = {}; - -EventEmitter._emit = -EventEmitter._dispatchEvent = function(eventName, e) { - this._eventRegistry = this._eventRegistry || {}; - this._defaultHandlers = this._defaultHandlers || {}; - - var listeners = this._eventRegistry[eventName] || []; - var defaultHandler = this._defaultHandlers[eventName]; - if (!listeners.length && !defaultHandler) - return; - - e = e || {}; - e.type = eventName; - - if (!e.stopPropagation) { - e.stopPropagation = function() { - this.propagationStopped = true; - }; } - - if (!e.preventDefault) { - e.preventDefault = function() { - this.defaultPrevented = true; - }; + throw new TypeError(); +} +var toObject = function (o) { + if (o == null) { // this matches both null and undefined + throw new TypeError("can't convert "+o+" to object"); } - - for (var i=0; i - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -define('ace/lib/oop', ['require', 'exports', 'module' ], function(require, exports, module) { -"use strict"; - -exports.inherits = (function() { - var tempCtor = function() {}; - return function(ctor, superCtor) { - tempCtor.prototype = superCtor.prototype; - ctor.super_ = superCtor.prototype; - ctor.prototype = new tempCtor(); - ctor.prototype.constructor = ctor; - }; -}()); - -exports.mixin = function(obj, mixin) { - for (var key in mixin) { - obj[key] = mixin[key]; - } -}; - -exports.implement = function(proto, mixin) { - exports.mixin(proto, mixin); + return Object(o); }; }); -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla Public License Version - * 1.1 (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * http://www.mozilla.org/MPL/ - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - * - * The Original Code is Ajax.org Code Editor (ACE). - * - * The Initial Developer of the Original Code is - * Ajax.org B.V. - * Portions created by the Initial Developer are Copyright (C) 2010 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Fabian Jakobs - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ -define('ace/mode/coffee_worker', ['require', 'exports', 'module' , 'ace/lib/oop', 'ace/worker/mirror', 'ace/mode/coffee/coffee-script'], function(require, exports, module) { -"use strict"; +ace.define('ace/mode/coffee_worker', ['require', 'exports', 'module' , 'ace/lib/oop', 'ace/worker/mirror', 'ace/mode/coffee/coffee-script'], function(require, exports, module) { + var oop = require("../lib/oop"); var Mirror = require("../worker/mirror").Mirror; @@ -1555,7 +882,7 @@ window.addEventListener = function() {}; var Worker = exports.Worker = function(sender) { Mirror.call(this, sender); - this.setTimeout(200); + this.setTimeout(250); }; oop.inherits(Worker, Mirror); @@ -1566,29 +893,18 @@ oop.inherits(Worker, Mirror); var value = this.doc.getValue(); try { - coffee.parse(value); + coffee.parse(value).compile(); } catch(e) { - var m = e.message.match(/Parse error on line (\d+): (.*)/); - if (m) { + var loc = e.location; + if (loc) { this.sender.emit("error", { - row: parseInt(m[1], 10) - 1, - column: null, - text: m[2], + row: loc.first_line, + column: loc.first_column, + endRow: loc.last_line, + endColumn: loc.last_column, + text: e.message, type: "error" }); - return; - } - - if (e instanceof SyntaxError) { - var m = e.message.match(/ on line (\d+)/); - if (m) { - this.sender.emit("error", { - row: parseInt(m[1], 10) - 1, - column: null, - text: e.message.replace(m[0], ""), - type: "error" - }); - } } return; } @@ -1598,8 +914,36 @@ oop.inherits(Worker, Mirror); }).call(Worker.prototype); }); -define('ace/worker/mirror', ['require', 'exports', 'module' , 'ace/document', 'ace/lib/lang'], function(require, exports, module) { -"use strict"; + +ace.define('ace/lib/oop', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.inherits = function(ctor, superCtor) { + ctor.super_ = superCtor; + ctor.prototype = Object.create(superCtor.prototype, { + constructor: { + value: ctor, + enumerable: false, + writable: true, + configurable: true + } + }); +}; + +exports.mixin = function(obj, mixin) { + for (var key in mixin) { + obj[key] = mixin[key]; + } + return obj; +}; + +exports.implement = function(proto, mixin) { + exports.mixin(proto, mixin); +}; + +}); +ace.define('ace/worker/mirror', ['require', 'exports', 'module' , 'ace/document', 'ace/lib/lang'], function(require, exports, module) { + var Document = require("../document").Document; var lang = require("../lib/lang"); @@ -1608,12 +952,14 @@ var Mirror = exports.Mirror = function(sender) { this.sender = sender; var doc = this.doc = new Document(""); - var deferredUpdate = this.deferredUpdate = lang.deferredCall(this.onUpdate.bind(this)); + var deferredUpdate = this.deferredUpdate = lang.delayedCall(this.onUpdate.bind(this)); var _self = this; sender.on("change", function(e) { - doc.applyDeltas([e.data]); - deferredUpdate.schedule(_self.$timeout); + doc.applyDeltas(e.data); + if (_self.$timeout) + return deferredUpdate.schedule(_self.$timeout); + _self.onUpdate(); }); }; @@ -1635,82 +981,30 @@ var Mirror = exports.Mirror = function(sender) { }; this.onUpdate = function() { - // abstract method + }; + + this.isPending = function() { + return this.deferredUpdate.isPending(); }; }).call(Mirror.prototype); }); -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla Public License Version - * 1.1 (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * http://www.mozilla.org/MPL/ - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - * - * The Original Code is Ajax.org Code Editor (ACE). - * - * The Initial Developer of the Original Code is - * Ajax.org B.V. - * Portions created by the Initial Developer are Copyright (C) 2010 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Fabian Jakobs - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ -define('ace/document', ['require', 'exports', 'module' , 'ace/lib/oop', 'ace/lib/event_emitter', 'ace/range', 'ace/anchor'], function(require, exports, module) { -"use strict"; +ace.define('ace/document', ['require', 'exports', 'module' , 'ace/lib/oop', 'ace/lib/event_emitter', 'ace/range', 'ace/anchor'], function(require, exports, module) { + var oop = require("./lib/oop"); var EventEmitter = require("./lib/event_emitter").EventEmitter; var Range = require("./range").Range; var Anchor = require("./anchor").Anchor; -/** - * class Document - * - * Contains the text of the document. Documents are controlled by a single [[EditSession `EditSession`]]. At its core, `Document`s are just an array of strings, with each row in the document matching up to the array index. - * - * - **/ - - /** - * new Document([text]) - * - text (String | Array): The starting text - * - * Creates a new `Document`. If `text` is included, the `Document` contains those strings; otherwise, it's empty. - * - **/ var Document = function(text) { this.$lines = []; - - if (Array.isArray(text)) { - this.insertLines(0, text); - } - // There has to be one line at least in the document. If you pass an empty - // string to the insert function, nothing will happen. Workaround. - else if (text.length == 0) { + if (text.length === 0) { this.$lines = [""]; + } else if (Array.isArray(text)) { + this._insertLines(0, text); } else { this.insert({row: 0, column:0}, text); } @@ -1719,224 +1013,97 @@ var Document = function(text) { (function() { oop.implement(this, EventEmitter); - - /** - * Document.setValue(text) -> Void - * - text (String): The text to use - * - * Replaces all the lines in the current `Document` with the value of `text`. - **/ this.setValue = function(text) { var len = this.getLength(); this.remove(new Range(0, 0, len, this.getLine(len-1).length)); this.insert({row: 0, column:0}, text); }; - - /** - * Document.getValue() -> String - * - * Returns all the lines in the document as a single string, split by the new line character. - **/ this.getValue = function() { return this.getAllLines().join(this.getNewLineCharacter()); }; - - /** - * Document.createAnchor(row, column) -> Anchor - * - row (Number): The row number to use - * - column (Number): The column number to use - * - * Creates a new `Anchor` to define a floating point in the document. - **/ this.createAnchor = function(row, column) { return new Anchor(this, row, column); }; - - /** internal, hide - * Document.$split(text) -> [String] - * - text (String): The text to work with - * + ([String]): A String array, with each index containing a piece of the original `text` string. - * - * Splits a string of text on any newline (`\n`) or carriage-return ('\r') characters. - * - * - **/ - - // check for IE split bug - if ("aaa".split(/a/).length == 0) + if ("aaa".split(/a/).length === 0) this.$split = function(text) { return text.replace(/\r\n|\r/g, "\n").split("\n"); - } + }; else this.$split = function(text) { return text.split(/\r\n|\r|\n/); }; - /** internal, hide - * Document.$detectNewLine(text) -> Void - * - * - **/ this.$detectNewLine = function(text) { var match = text.match(/^.*?(\r\n|\r|\n)/m); - if (match) { - this.$autoNewLine = match[1]; - } else { - this.$autoNewLine = "\n"; + this.$autoNewLine = match ? match[1] : "\n"; + this._signal("changeNewLineMode"); + }; + this.getNewLineCharacter = function() { + switch (this.$newLineMode) { + case "windows": + return "\r\n"; + case "unix": + return "\n"; + default: + return this.$autoNewLine || "\n"; } }; - /** - * Document.getNewLineCharacter() -> String - * + (String): If `newLineMode == windows`, `\r\n` is returned.
          - * If `newLineMode == unix`, `\n` is returned.
          - * If `newLineMode == auto`, the value of `autoNewLine` is returned. - * - * Returns the newline character that's being used, depending on the value of `newLineMode`. - * - * - * - **/ - this.getNewLineCharacter = function() { - switch (this.$newLineMode) { - case "windows": - return "\r\n"; - - case "unix": - return "\n"; - - case "auto": - return this.$autoNewLine; - } - }; - - this.$autoNewLine = "\n"; + this.$autoNewLine = ""; this.$newLineMode = "auto"; - /** - * Document.setNewLineMode(newLineMode) -> Void - * - newLineMode(String): [The newline mode to use; can be either `windows`, `unix`, or `auto`]{: #Document.setNewLineMode.param} - * - * [Sets the new line mode.]{: #Document.setNewLineMode.desc} - **/ this.setNewLineMode = function(newLineMode) { if (this.$newLineMode === newLineMode) return; this.$newLineMode = newLineMode; + this._signal("changeNewLineMode"); }; - - /** - * Document.getNewLineMode() -> String - * - * [Returns the type of newlines being used; either `windows`, `unix`, or `auto`]{: #Document.getNewLineMode} - * - **/ this.getNewLineMode = function() { return this.$newLineMode; }; - - /** - * Document.isNewLine(text) -> Boolean - * - text (String): The text to check - * - * Returns `true` if `text` is a newline character (either `\r\n`, `\r`, or `\n`). - * - **/ this.isNewLine = function(text) { return (text == "\r\n" || text == "\r" || text == "\n"); }; - - /** - * Document.getLine(row) -> String - * - row (Number): The row index to retrieve - * - * Returns a verbatim copy of the given line as it is in the document - * - **/ this.getLine = function(row) { return this.$lines[row] || ""; }; - - /** - * Document.getLines(firstRow, lastRow) -> [String] - * - firstRow (Number): The first row index to retrieve - * - lastRow (Number): The final row index to retrieve - * - * Returns an array of strings of the rows between `firstRow` and `lastRow`. This function is inclusive of `lastRow`. - * - **/ this.getLines = function(firstRow, lastRow) { return this.$lines.slice(firstRow, lastRow + 1); }; - - /** - * Document.getAllLines() -> [String] - * - * Returns all lines in the document as string array. Warning: The caller should not modify this array! - **/ this.getAllLines = function() { return this.getLines(0, this.getLength()); }; - - /** - * Document.getLength() -> Number - * - * Returns the number of rows in the document. - **/ this.getLength = function() { return this.$lines.length; }; - - /** - * Document.getTextRange(range) -> String - * - range (Range): The range to work with - * - * [Given a range within the document, this function returns all the text within that range as a single string.]{: #Document.getTextRange.desc} - **/ this.getTextRange = function(range) { if (range.start.row == range.end.row) { - return this.$lines[range.start.row].substring(range.start.column, - range.end.column); - } - else { - var lines = this.getLines(range.start.row+1, range.end.row-1); - lines.unshift((this.$lines[range.start.row] || "").substring(range.start.column)); - lines.push((this.$lines[range.end.row] || "").substring(0, range.end.column)); - return lines.join(this.getNewLineCharacter()); + return this.getLine(range.start.row) + .substring(range.start.column, range.end.column); } + var lines = this.getLines(range.start.row, range.end.row); + lines[0] = (lines[0] || "").substring(range.start.column); + var l = lines.length - 1; + if (range.end.row - range.start.row == l) + lines[l] = lines[l].substring(0, range.end.column); + return lines.join(this.getNewLineCharacter()); }; - /** internal, hide - * Document.$clipPosition(position) -> Number - * - * - **/ this.$clipPosition = function(position) { var length = this.getLength(); if (position.row >= length) { position.row = Math.max(0, length - 1); position.column = this.getLine(length-1).length; - } + } else if (position.row < 0) + position.row = 0; return position; }; - - /** - * Document.insert(position, text) -> Number - * - position (Number): The position to start inserting at - * - text (String): A chunk of text to insert - * + (Number): The position of the last line of `text`. If the length of `text` is 0, this function simply returns `position`. - * Inserts a block of `text` and the indicated `position`. - * - * - **/ this.insert = function(position, text) { if (!text || text.length === 0) return position; position = this.$clipPosition(position); - - // only detect new lines if the document has no line break yet if (this.getLength() <= 1) this.$detectNewLine(text); @@ -1947,28 +1114,24 @@ var Document = function(text) { position = this.insertInLine(position, firstLine); if (lastLine !== null) { position = this.insertNewLine(position); // terminate first line - position = this.insertLines(position.row, lines); + position = this._insertLines(position.row, lines); position = this.insertInLine(position, lastLine || ""); } return position; }; - - /** - * Document.insertLines(row, lines) -> Object - * - row (Number): The index of the row to insert at - * - lines (Array): An array of strings - * + (Object): Returns an object containing the final row and column, like this:
          - * ```{row: endRow, column: 0}```
          - * If `lines` is empty, this function returns an object containing the current row, and column, like this:
          - * ```{row: row, column: 0}``` - * - * Inserts the elements in `lines` into the document, starting at the row index given by `row`. This method also triggers the `'change'` event. - * - * - **/ this.insertLines = function(row, lines) { + if (row >= this.getLength()) + return this.insert({row: row, column: 0}, "\n" + lines.join("\n")); + return this._insertLines(Math.max(row, 0), lines); + }; + this._insertLines = function(row, lines) { if (lines.length == 0) return {row: row, column: 0}; + while (lines.length > 0xF000) { + var end = this._insertLines(row, lines.slice(0, 0xF000)); + lines = lines.slice(0xF000); + row = end.row; + } var args = [row, 0]; args.push.apply(args, lines); @@ -1980,21 +1143,9 @@ var Document = function(text) { range: range, lines: lines }; - this._emit("change", { data: delta }); + this._signal("change", { data: delta }); return range.end; }; - - /** - * Document.insertNewLine(position) -> Object - * - position (String): The position to insert at - * + (Object): Returns an object containing the final row and column, like this:
          - * ```{row: endRow, column: 0}``` - * - * Inserts a new line into the document at the current row's `position`. This method also triggers the `'change'` event. - * - * - * - **/ this.insertNewLine = function(position) { position = this.$clipPosition(position); var line = this.$lines[position.row] || ""; @@ -2012,24 +1163,10 @@ var Document = function(text) { range: Range.fromPoints(position, end), text: this.getNewLineCharacter() }; - this._emit("change", { data: delta }); + this._signal("change", { data: delta }); return end; }; - - /** - * Document.insertInLine(position, text) -> Object | Number - * - position (Number): The position to insert at - * - text (String): A chunk of text - * + (Object): Returns an object containing the final row and column, like this:
          - * ```{row: endRow, column: 0}``` - * + (Number): If `text` is empty, this function returns the value of `position` - * - * Inserts `text` into the `position` at the current row. This method also triggers the `'change'` event. - * - * - * - **/ this.insertInLine = function(position, text) { if (text.length == 0) return position; @@ -2049,22 +1186,13 @@ var Document = function(text) { range: Range.fromPoints(position, end), text: text }; - this._emit("change", { data: delta }); + this._signal("change", { data: delta }); return end; }; - - /** - * Document.remove(range) -> Object - * - range (Range): A specified Range to remove - * + (Object): Returns the new `start` property of the range, which contains `startRow` and `startColumn`. If `range` is empty, this function returns the unmodified value of `range.start`. - * - * Removes the `range` from the document. - * - * - **/ this.remove = function(range) { - // clip to document + if (!(range instanceof Range)) + range = Range.fromPoints(range.start, range.end); range.start = this.$clipPosition(range.start); range.end = this.$clipPosition(range.end); @@ -2082,7 +1210,7 @@ var Document = function(text) { this.removeInLine(lastRow, 0, range.end.column); if (lastFullRow >= firstFullRow) - this.removeLines(firstFullRow, lastFullRow); + this._removeLines(firstFullRow, lastFullRow); if (firstFullRow != firstRow) { this.removeInLine(firstRow, range.start.column, this.getLine(firstRow).length); @@ -2094,18 +1222,6 @@ var Document = function(text) { } return range.start; }; - - /** - * Document.removeInLine(row, startColumn, endColumn) -> Object - * - row (Number): The row to remove from - * - startColumn (Number): The column to start removing at - * - endColumn (Number): The column to stop removing at - * + (Object): Returns an object containing `startRow` and `startColumn`, indicating the new row and column values.
          If `startColumn` is equal to `endColumn`, this function returns nothing. - * - * Removes the specified columns from the `row`. This method also triggers the `'change'` event. - * - * - **/ this.removeInLine = function(row, startColumn, endColumn) { if (startColumn == endColumn) return; @@ -2121,21 +1237,16 @@ var Document = function(text) { range: range, text: removed }; - this._emit("change", { data: delta }); + this._signal("change", { data: delta }); return range.start; }; - - /** - * Document.removeLines(firstRow, lastRow) -> [String] - * - firstRow (Number): The first row to be removed - * - lastRow (Number): The last row to be removed - * + ([String]): Returns all the removed lines. - * - * Removes a range of full lines. This method also triggers the `'change'` event. - * - * - **/ this.removeLines = function(firstRow, lastRow) { + if (firstRow < 0 || lastRow >= this.getLength()) + return this.remove(new Range(firstRow, 0, lastRow + 1, 0)); + return this._removeLines(firstRow, lastRow); + }; + + this._removeLines = function(firstRow, lastRow) { var range = new Range(firstRow, 0, lastRow + 1, 0); var removed = this.$lines.splice(firstRow, lastRow - firstRow + 1); @@ -2145,17 +1256,9 @@ var Document = function(text) { nl: this.getNewLineCharacter(), lines: removed }; - this._emit("change", { data: delta }); + this._signal("change", { data: delta }); return removed; }; - - /** - * Document.removeNewLine(row) -> Void - * - row (Number): The row to check - * - * Removes the new line between `row` and the row immediately following it. This method also triggers the `'change'` event. - * - **/ this.removeNewLine = function(row) { var firstLine = this.getLine(row); var secondLine = this.getLine(row+1); @@ -2170,27 +1273,13 @@ var Document = function(text) { range: range, text: this.getNewLineCharacter() }; - this._emit("change", { data: delta }); + this._signal("change", { data: delta }); }; - - /** - * Document.replace(range, text) -> Object - * - range (Range): A specified Range to replace - * - text (String): The new text to use as a replacement - * + (Object): Returns an object containing the final row and column, like this: - * {row: endRow, column: 0} - * If the text and range are empty, this function returns an object containing the current `range.start` value. - * If the text is the exact same as what currently exists, this function returns an object containing the current `range.end` value. - * - * Replaces a range in the document with the new `text`. - * - **/ this.replace = function(range, text) { + if (!(range instanceof Range)) + range = Range.fromPoints(range.start, range.end); if (text.length == 0 && range.isEmpty()) return range.start; - - // Shortcut: If the text we want to insert is the same as it is already - // in the document, we don't have to replace anything. if (text == this.getTextRange(range)) return range.end; @@ -2204,12 +1293,6 @@ var Document = function(text) { return end; }; - - /** - * Document.applyDeltas(deltas) -> Void - * - * Applies all the changes previously accumulated. These can be either `'includeText'`, `'insertLines'`, `'removeText'`, and `'removeLines'`. - **/ this.applyDeltas = function(deltas) { for (var i=0; i Void - * - * Reverts any changes previously applied. These can be either `'includeText'`, `'insertLines'`, `'removeText'`, and `'removeLines'`. - **/ this.revertDeltas = function(deltas) { for (var i=deltas.length-1; i>=0; i--) { var delta = deltas[i]; @@ -2238,77 +1315,172 @@ var Document = function(text) { var range = Range.fromPoints(delta.range.start, delta.range.end); if (delta.action == "insertLines") - this.removeLines(range.start.row, range.end.row - 1); + this._removeLines(range.start.row, range.end.row - 1); else if (delta.action == "insertText") this.remove(range); else if (delta.action == "removeLines") - this.insertLines(range.start.row, delta.lines); + this._insertLines(range.start.row, delta.lines); else if (delta.action == "removeText") this.insert(range.start, delta.text); } }; + this.indexToPosition = function(index, startRow) { + var lines = this.$lines || this.getAllLines(); + var newlineLength = this.getNewLineCharacter().length; + for (var i = startRow || 0, l = lines.length; i < l; i++) { + index -= lines[i].length + newlineLength; + if (index < 0) + return {row: i, column: index + lines[i].length + newlineLength}; + } + return {row: l-1, column: lines[l-1].length}; + }; + this.positionToIndex = function(pos, startRow) { + var lines = this.$lines || this.getAllLines(); + var newlineLength = this.getNewLineCharacter().length; + var index = 0; + var row = Math.min(pos.row, lines.length); + for (var i = startRow || 0; i < row; ++i) + index += lines[i].length + newlineLength; + + return index + pos.column; + }; }).call(Document.prototype); exports.Document = Document; }); -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla Public License Version - * 1.1 (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * http://www.mozilla.org/MPL/ - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - * - * The Original Code is Ajax.org Code Editor (ACE). - * - * The Initial Developer of the Original Code is - * Ajax.org B.V. - * Portions created by the Initial Developer are Copyright (C) 2010 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Fabian Jakobs - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ -define('ace/range', ['require', 'exports', 'module' ], function(require, exports, module) { -"use strict"; +ace.define('ace/lib/event_emitter', ['require', 'exports', 'module' ], function(require, exports, module) { -/** - * class Range - * - * This object is used in various places to indicate a region within the editor. To better visualize how this works, imagine a rectangle. Each quadrant of the rectangle is analogus to a range, as ranges contain a starting row and starting column, and an ending row, and ending column. - * - **/ -/** - * new Range(startRow, startColumn, endRow, endColumn) - * - startRow (Number): The starting row - * - startColumn (Number): The starting column - * - endRow (Number): The ending row - * - endColumn (Number): The ending column - * - * Creates a new `Range` object with the given starting and ending row and column points. - * - **/ +var EventEmitter = {}; +var stopPropagation = function() { this.propagationStopped = true; }; +var preventDefault = function() { this.defaultPrevented = true; }; + +EventEmitter._emit = +EventEmitter._dispatchEvent = function(eventName, e) { + this._eventRegistry || (this._eventRegistry = {}); + this._defaultHandlers || (this._defaultHandlers = {}); + + var listeners = this._eventRegistry[eventName] || []; + var defaultHandler = this._defaultHandlers[eventName]; + if (!listeners.length && !defaultHandler) + return; + + if (typeof e != "object" || !e) + e = {}; + + if (!e.type) + e.type = eventName; + if (!e.stopPropagation) + e.stopPropagation = stopPropagation; + if (!e.preventDefault) + e.preventDefault = preventDefault; + + listeners = listeners.slice(); + for (var i=0; i Boolean - * - range (Range): A range to check against - * - * Returns `true` if and only if the starting row and column, and ending tow and column, are equivalent to those given by `range`. - * - **/ this.isEqual = function(range) { - return this.start.row == range.start.row && - this.end.row == range.end.row && - this.start.column == range.start.column && - this.end.column == range.end.column + return this.start.row === range.start.row && + this.end.row === range.end.row && + this.start.column === range.start.column && + this.end.column === range.end.column; }; - - /** - * Range.toString() -> String - * - * Returns a string containing the range's row and column information, given like this: - * - * [start.row/start.column] -> [end.row/end.column] - * - **/ - this.toString = function() { return ("Range: [" + this.start.row + "/" + this.start.column + "] -> [" + this.end.row + "/" + this.end.column + "]"); }; - /** related to: Range.compare - * Range.contains(row, column) -> Boolean - * - row (Number): A row to check for - * - column (Number): A column to check for - * - * Returns `true` if the `row` and `column` provided are within the given range. This can better be expressed as returning `true` if: - * - * this.start.row <= row <= this.end.row && - * this.start.column <= column <= this.end.column - * - **/ - this.contains = function(row, column) { return this.compare(row, column) == 0; }; - - /** related to: Range.compare - * Range.compareRange(range) -> Number - * - range (Range): A range to compare with - * + (Number): This method returns one of the following numbers:
          - *
          - * * `-2`: (B) is in front of (A), and doesn't intersect with (A)
          - * * `-1`: (B) begins before (A) but ends inside of (A)
          - * * `0`: (B) is completely inside of (A) OR (A) is completely inside of (B)
          - * * `+1`: (B) begins inside of (A) but ends outside of (A)
          - * * `+2`: (B) is after (A) and doesn't intersect with (A)
          - * * `42`: FTW state: (B) ends in (A) but starts outside of (A) - * - * Compares `this` range (A) with another range (B). - * - **/ this.compareRange = function(range) { var cmp, end = range.end, @@ -2408,88 +1535,23 @@ var Range = function(startRow, startColumn, endRow, endColumn) { return 0; } } - } - - /** related to: Range.compare - * Range.comparePoint(p) -> Number - * - p (Range): A point to compare with - * + (Number): This method returns one of the following numbers:
          - * * `0` if the two points are exactly equal
          - * * `-1` if `p.row` is less then the calling range
          - * * `1` if `p.row` is greater than the calling range
          - *
          - * If the starting row of the calling range is equal to `p.row`, and:
          - * * `p.column` is greater than or equal to the calling range's starting column, this returns `0`
          - * * Otherwise, it returns -1
          - *
          - * If the ending row of the calling range is equal to `p.row`, and:
          - * * `p.column` is less than or equal to the calling range's ending column, this returns `0`
          - * * Otherwise, it returns 1
          - * - * Checks the row and column points of `p` with the row and column points of the calling range. - * - * - * - **/ + }; this.comparePoint = function(p) { return this.compare(p.row, p.column); - } - - /** related to: Range.comparePoint - * Range.containsRange(range) -> Boolean - * - range (Range): A range to compare with - * - * Checks the start and end points of `range` and compares them to the calling range. Returns `true` if the `range` is contained within the caller's range. - * - **/ + }; this.containsRange = function(range) { return this.comparePoint(range.start) == 0 && this.comparePoint(range.end) == 0; - } - - /** - * Range.intersects(range) -> Boolean - * - range (Range): A range to compare with - * - * Returns `true` if passed in `range` intersects with the one calling this method. - * - **/ + }; this.intersects = function(range) { var cmp = this.compareRange(range); return (cmp == -1 || cmp == 0 || cmp == 1); - } - - /** - * Range.isEnd(row, column) -> Boolean - * - row (Number): A row point to compare with - * - column (Number): A column point to compare with - * - * Returns `true` if the caller's ending row point is the same as `row`, and if the caller's ending column is the same as `column`. - * - **/ + }; this.isEnd = function(row, column) { return this.end.row == row && this.end.column == column; - } - - /** - * Range.isStart(row, column) -> Boolean - * - row (Number): A row point to compare with - * - column (Number): A column point to compare with - * - * Returns `true` if the caller's starting row point is the same as `row`, and if the caller's starting column is the same as `column`. - * - **/ + }; this.isStart = function(row, column) { return this.start.row == row && this.start.column == column; - } - - /** - * Range.setStart(row, column) - * - row (Number): A row point to set - * - column (Number): A column point to set - * - * Sets the starting row and column for the range. - * - **/ + }; this.setStart = function(row, column) { if (typeof row == "object") { this.start.column = row.column; @@ -2498,16 +1560,7 @@ var Range = function(startRow, startColumn, endRow, endColumn) { this.start.row = row; this.start.column = column; } - } - - /** - * Range.setEnd(row, column) - * - row (Number): A row point to set - * - column (Number): A column point to set - * - * Sets the starting row and column for the range. - * - **/ + }; this.setEnd = function(row, column) { if (typeof row == "object") { this.end.column = row.column; @@ -2516,16 +1569,7 @@ var Range = function(startRow, startColumn, endRow, endColumn) { this.end.row = row; this.end.column = column; } - } - - /** related to: Range.compare - * Range.inside(row, column) -> Boolean - * - row (Number): A row point to compare with - * - column (Number): A column point to compare with - * - * Returns `true` if the `row` and `column` are within the given range. - * - **/ + }; this.inside = function(row, column) { if (this.compare(row, column) == 0) { if (this.isEnd(row, column) || this.isStart(row, column)) { @@ -2535,16 +1579,7 @@ var Range = function(startRow, startColumn, endRow, endColumn) { } } return false; - } - - /** related to: Range.compare - * Range.insideStart(row, column) -> Boolean - * - row (Number): A row point to compare with - * - column (Number): A column point to compare with - * - * Returns `true` if the `row` and `column` are within the given range's starting points. - * - **/ + }; this.insideStart = function(row, column) { if (this.compare(row, column) == 0) { if (this.isEnd(row, column)) { @@ -2554,16 +1589,7 @@ var Range = function(startRow, startColumn, endRow, endColumn) { } } return false; - } - - /** related to: Range.compare - * Range.insideEnd(row, column) -> Boolean - * - row (Number): A row point to compare with - * - column (Number): A column point to compare with - * - * Returns `true` if the `row` and `column` are within the given range's ending points. - * - **/ + }; this.insideEnd = function(row, column) { if (this.compare(row, column) == 0) { if (this.isStart(row, column)) { @@ -2573,29 +1599,7 @@ var Range = function(startRow, startColumn, endRow, endColumn) { } } return false; - } - - /** - * Range.compare(row, column) -> Number - * - row (Number): A row point to compare with - * - column (Number): A column point to compare with - * + (Number): This method returns one of the following numbers:
          - * * `0` if the two points are exactly equal
          - * * `-1` if `p.row` is less then the calling range
          - * * `1` if `p.row` is greater than the calling range
          - *
          - * If the starting row of the calling range is equal to `p.row`, and:
          - * * `p.column` is greater than or equal to the calling range's starting column, this returns `0`
          - * * Otherwise, it returns -1
          - *
          - * If the ending row of the calling range is equal to `p.row`, and:
          - * * `p.column` is less than or equal to the calling range's ending column, this returns `0`
          - * * Otherwise, it returns 1 - * - * Checks the row and column points with the row and column points of the calling range. - * - * - **/ + }; this.compare = function(row, column) { if (!this.isMultiLine()) { if (row === this.start.row) { @@ -2617,82 +1621,20 @@ var Range = function(startRow, startColumn, endRow, endColumn) { return 0; }; - - /** - * Range.compareStart(row, column) -> Number - * - row (Number): A row point to compare with - * - column (Number): A column point to compare with - * + (Number): This method returns one of the following numbers:
          - *
          - * * `0` if the two points are exactly equal
          - * * `-1` if `p.row` is less then the calling range
          - * * `1` if `p.row` is greater than the calling range, or if `isStart` is `true`.
          - *
          - * If the starting row of the calling range is equal to `p.row`, and:
          - * * `p.column` is greater than or equal to the calling range's starting column, this returns `0`
          - * * Otherwise, it returns -1
          - *
          - * If the ending row of the calling range is equal to `p.row`, and:
          - * * `p.column` is less than or equal to the calling range's ending column, this returns `0`
          - * * Otherwise, it returns 1 - * - * Checks the row and column points with the row and column points of the calling range. - * - * - * - **/ this.compareStart = function(row, column) { if (this.start.row == row && this.start.column == column) { return -1; } else { return this.compare(row, column); } - } - - /** - * Range.compareEnd(row, column) -> Number - * - row (Number): A row point to compare with - * - column (Number): A column point to compare with - * + (Number): This method returns one of the following numbers:
          - * * `0` if the two points are exactly equal
          - * * `-1` if `p.row` is less then the calling range
          - * * `1` if `p.row` is greater than the calling range, or if `isEnd` is `true.
          - *
          - * If the starting row of the calling range is equal to `p.row`, and:
          - * * `p.column` is greater than or equal to the calling range's starting column, this returns `0`
          - * * Otherwise, it returns -1
          - *
          - * If the ending row of the calling range is equal to `p.row`, and:
          - * * `p.column` is less than or equal to the calling range's ending column, this returns `0`
          - * * Otherwise, it returns 1 - * - * Checks the row and column points with the row and column points of the calling range. - * - * - **/ + }; this.compareEnd = function(row, column) { if (this.end.row == row && this.end.column == column) { return 1; } else { return this.compare(row, column); } - } - - /** - * Range.compareInside(row, column) -> Number - * - row (Number): A row point to compare with - * - column (Number): A column point to compare with - * + (Number): This method returns one of the following numbers:
          - * * `1` if the ending row of the calling range is equal to `row`, and the ending column of the calling range is equal to `column`
          - * * `-1` if the starting row of the calling range is equal to `row`, and the starting column of the calling range is equal to `column`
          - *
          - * Otherwise, it returns the value after calling [[Range.compare `compare()`]]. - * - * Checks the row and column points with the row and column points of the calling range. - * - * - * - **/ + }; this.compareInside = function(row, column) { if (this.end.row == row && this.end.column == column) { return 1; @@ -2701,55 +1643,20 @@ var Range = function(startRow, startColumn, endRow, endColumn) { } else { return this.compare(row, column); } - } - - /** - * Range.clipRows(firstRow, lastRow) -> Range - * - firstRow (Number): The starting row - * - lastRow (Number): The ending row - * - * Returns the part of the current `Range` that occurs within the boundaries of `firstRow` and `lastRow` as a new `Range` object. - * - **/ + }; this.clipRows = function(firstRow, lastRow) { - if (this.end.row > lastRow) { - var end = { - row: lastRow+1, - column: 0 - }; - } + if (this.end.row > lastRow) + var end = {row: lastRow + 1, column: 0}; + else if (this.end.row < firstRow) + var end = {row: firstRow, column: 0}; - if (this.start.row > lastRow) { - var start = { - row: lastRow+1, - column: 0 - }; - } + if (this.start.row > lastRow) + var start = {row: lastRow + 1, column: 0}; + else if (this.start.row < firstRow) + var start = {row: firstRow, column: 0}; - if (this.start.row < firstRow) { - var start = { - row: firstRow, - column: 0 - }; - } - - if (this.end.row < firstRow) { - var end = { - row: firstRow, - column: 0 - }; - } return Range.fromPoints(start || this.start, end || this.end); }; - - /** - * Range.extend(row, column) -> Range - * - row (Number): A new row to extend to - * - column (Number): A new column to extend to - * - * Changes the row and column points for the calling range for both the starting and ending points. This method returns that range with a new row. - * - **/ this.extend = function(row, column) { var cmp = this.compare(row, column); @@ -2764,239 +1671,133 @@ var Range = function(startRow, startColumn, endRow, endColumn) { }; this.isEmpty = function() { - return (this.start.row == this.end.row && this.start.column == this.end.column); + return (this.start.row === this.end.row && this.start.column === this.end.column); }; - - /** - * Range.isMultiLine() -> Boolean - * - * Returns true if the range spans across multiple lines. - * - **/ this.isMultiLine = function() { return (this.start.row !== this.end.row); }; - - /** - * Range.clone() -> Range - * - * Returns a duplicate of the calling range. - * - **/ this.clone = function() { return Range.fromPoints(this.start, this.end); }; - - /** - * Range.collapseRows() -> Range - * - * Returns a range containing the starting and ending rows of the original range, but with a column value of `0`. - * - **/ this.collapseRows = function() { if (this.end.column == 0) return new Range(this.start.row, 0, Math.max(this.start.row, this.end.row-1), 0) else return new Range(this.start.row, 0, this.end.row, 0) }; - - /** - * Range.toScreenRange(session) -> Range - * - session (EditSession): The `EditSession` to retrieve coordinates from - * - * Given the current `Range`, this function converts those starting and ending points into screen positions, and then returns a new `Range` object. - **/ this.toScreenRange = function(session) { - var screenPosStart = - session.documentToScreenPosition(this.start); - var screenPosEnd = - session.documentToScreenPosition(this.end); + var screenPosStart = session.documentToScreenPosition(this.start); + var screenPosEnd = session.documentToScreenPosition(this.end); return new Range( screenPosStart.row, screenPosStart.column, screenPosEnd.row, screenPosEnd.column ); }; + this.moveBy = function(row, column) { + this.start.row += row; + this.start.column += column; + this.end.row += row; + this.end.column += column; + }; }).call(Range.prototype); - -/** - * Range.fromPoints(start, end) -> Range - * - start (Range): A starting point to use - * - end (Range): An ending point to use - * - * Creates and returns a new `Range` based on the row and column of the given parameters. - * -**/ Range.fromPoints = function(start, end) { return new Range(start.row, start.column, end.row, end.column); }; +Range.comparePoints = comparePoints; + +Range.comparePoints = function(p1, p2) { + return p1.row - p2.row || p1.column - p2.column; +}; + exports.Range = Range; }); -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla Public License Version - * 1.1 (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * http://www.mozilla.org/MPL/ - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - * - * The Original Code is Ajax.org Code Editor (ACE). - * - * The Initial Developer of the Original Code is - * Ajax.org B.V. - * Portions created by the Initial Developer are Copyright (C) 2010 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Fabian Jakobs - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ -define('ace/anchor', ['require', 'exports', 'module' , 'ace/lib/oop', 'ace/lib/event_emitter'], function(require, exports, module) { -"use strict"; +ace.define('ace/anchor', ['require', 'exports', 'module' , 'ace/lib/oop', 'ace/lib/event_emitter'], function(require, exports, module) { + var oop = require("./lib/oop"); var EventEmitter = require("./lib/event_emitter").EventEmitter; -/** - * class Anchor - * - * Defines the floating pointer in the document. Whenever text is inserted or deleted before the cursor, the position of the cursor is updated - * - **/ - -/** - * new Anchor(doc, row, column) - * - doc (Document): The document to associate with the anchor - * - row (Number): The starting row position - * - column (Number): The starting column position - * - * Creates a new `Anchor` and associates it with a document. - * - **/ - var Anchor = exports.Anchor = function(doc, row, column) { - this.document = doc; + this.$onChange = this.onChange.bind(this); + this.attach(doc); if (typeof column == "undefined") this.setPosition(row.row, row.column); else this.setPosition(row, column); - - this.$onChange = this.onChange.bind(this); - doc.on("change", this.$onChange); }; (function() { oop.implement(this, EventEmitter); - - /** - * Anchor.getPosition() -> Object - * - * Returns an object identifying the `row` and `column` position of the current anchor. - * - **/ - this.getPosition = function() { return this.$clipPositionToDocument(this.row, this.column); }; - - /** - * Anchor.getDocument() -> Document - * - * Returns the current document. - * - **/ - this.getDocument = function() { return this.document; }; - - /** - * Anchor@onChange(e) - * - e (Event): Contains data about the event - * - * Fires whenever the anchor position changes. Events that can trigger this function include `'includeText'`, `'insertLines'`, `'removeText'`, and `'removeLines'`. - * - **/ - + this.$insertRight = false; this.onChange = function(e) { var delta = e.data; var range = delta.range; - + if (range.start.row == range.end.row && range.start.row != this.row) return; - + if (range.start.row > this.row) return; - + if (range.start.row == this.row && range.start.column > this.column) return; - + var row = this.row; var column = this.column; - + var start = range.start; + var end = range.end; + if (delta.action === "insertText") { - if (range.start.row === row && range.start.column <= column) { - if (range.start.row === range.end.row) { - column += range.end.column - range.start.column; + if (start.row === row && start.column <= column) { + if (start.column === column && this.$insertRight) { + } else if (start.row === end.row) { + column += end.column - start.column; + } else { + column -= start.column; + row += end.row - start.row; } - else { - column -= range.start.column; - row += range.end.row - range.start.row; - } - } - else if (range.start.row !== range.end.row && range.start.row < row) { - row += range.end.row - range.start.row; + } else if (start.row !== end.row && start.row < row) { + row += end.row - start.row; } } else if (delta.action === "insertLines") { - if (range.start.row <= row) { - row += range.end.row - range.start.row; + if (start.row === row && column === 0 && this.$insertRight) { } - } - else if (delta.action == "removeText") { - if (range.start.row == row && range.start.column < column) { - if (range.end.column >= column) - column = range.start.column; + else if (start.row <= row) { + row += end.row - start.row; + } + } else if (delta.action === "removeText") { + if (start.row === row && start.column < column) { + if (end.column >= column) + column = start.column; else - column = Math.max(0, column - (range.end.column - range.start.column)); - - } else if (range.start.row !== range.end.row && range.start.row < row) { - if (range.end.row == row) { - column = Math.max(0, column - range.end.column) + range.start.column; - } - row -= (range.end.row - range.start.row); - } - else if (range.end.row == row) { - row -= range.end.row - range.start.row; - column = Math.max(0, column - range.end.column) + range.start.column; + column = Math.max(0, column - (end.column - start.column)); + + } else if (start.row !== end.row && start.row < row) { + if (end.row === row) + column = Math.max(0, column - end.column) + start.column; + row -= (end.row - start.row); + } else if (end.row === row) { + row -= end.row - start.row; + column = Math.max(0, column - end.column) + start.column; } } else if (delta.action == "removeLines") { - if (range.start.row <= row) { - if (range.end.row <= row) - row -= range.end.row - range.start.row; + if (start.row <= row) { + if (end.row <= row) + row -= end.row - start.row; else { - row = range.start.row; + row = start.row; column = 0; } } @@ -3004,17 +1805,6 @@ var Anchor = exports.Anchor = function(doc, row, column) { this.setPosition(row, column, true); }; - - /** - * Anchor.setPosition(row, column, noClip) - * - row (Number): The row index to move the anchor to - * - column (Number): The column index to move the anchor to - * - noClip (Boolean): Identifies if you want the position to be clipped - * - * Sets the anchor position to the specified row and column. If `noClip` is `true`, the position is not clipped. - * - **/ - this.setPosition = function(row, column, noClip) { var pos; if (noClip) { @@ -3022,50 +1812,35 @@ var Anchor = exports.Anchor = function(doc, row, column) { row: row, column: column }; - } - else { + } else { pos = this.$clipPositionToDocument(row, column); } - + if (this.row == pos.row && this.column == pos.column) return; - + var old = { row: this.row, column: this.column }; - + this.row = pos.row; this.column = pos.column; - this._emit("change", { + this._signal("change", { old: old, value: pos }); }; - - /** - * Anchor.detach() - * - * When called, the `'change'` event listener is removed. - * - **/ - this.detach = function() { this.document.removeEventListener("change", this.$onChange); }; - - /** internal, hide - * Anchor.clipPositionToDocument(row, column) - * - row (Number): The row index to clip the anchor to - * - column (Number): The column index to clip the anchor to - * - * Clips the anchor position to the specified row and column. - * - **/ - + this.attach = function(doc) { + this.document = doc || this.document; + this.document.on("change", this.$onChange); + }; this.$clipPositionToDocument = function(row, column) { var pos = {}; - + if (row >= this.document.getLength()) { pos.row = Math.max(0, this.document.getLength() - 1); pos.column = this.document.getLine(pos.row).length; @@ -3078,62 +1853,38 @@ var Anchor = exports.Anchor = function(doc, row, column) { pos.row = row; pos.column = Math.min(this.document.getLine(pos.row).length, Math.max(0, column)); } - + if (column < 0) pos.column = 0; - + return pos; }; - + }).call(Anchor.prototype); }); -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla Public License Version - * 1.1 (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * http://www.mozilla.org/MPL/ - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - * - * The Original Code is Ajax.org Code Editor (ACE). - * - * The Initial Developer of the Original Code is - * Ajax.org B.V. - * Portions created by the Initial Developer are Copyright (C) 2010 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Fabian Jakobs - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ -define('ace/lib/lang', ['require', 'exports', 'module' ], function(require, exports, module) { -"use strict"; +ace.define('ace/lib/lang', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.last = function(a) { + return a[a.length - 1]; +}; exports.stringReverse = function(string) { return string.split("").reverse().join(""); }; exports.stringRepeat = function (string, count) { - return new Array(count + 1).join(string); + var result = ''; + while (count > 0) { + if (count & 1) + result += string; + + if (count >>= 1) + string += string; + } + return result; }; var trimBeginRegexp = /^\s\s*/; @@ -3167,14 +1918,16 @@ exports.copyArray = function(array){ }; exports.deepCopy = function (obj) { - if (typeof obj != "object") { + if (typeof obj !== "object" || !obj) + return obj; + var cons = obj.constructor; + if (cons === RegExp) return obj; - } - var copy = obj.constructor(); + var copy = cons(); for (var key in obj) { - if (typeof obj[key] == "object") { - copy[key] = this.deepCopy(obj[key]); + if (typeof obj[key] === "object") { + copy[key] = exports.deepCopy(obj[key]); } else { copy[key] = obj[key]; } @@ -3191,9 +1944,13 @@ exports.arrayToMap = function(arr) { }; -/* - * splice out of 'array' anything that === 'value' - */ +exports.createMap = function(props) { + var map = Object.create(null); + for (var i in props) { + map[i] = props[i]; + } + return map; +}; exports.arrayRemove = function(array, value) { for (var i = 0; i <= array.length; i++) { if (value === array[i]) { @@ -3206,6 +1963,22 @@ exports.escapeRegExp = function(str) { return str.replace(/([.*+?^${}()|[\]\/\\])/g, '\\$1'); }; +exports.escapeHTML = function(str) { + return str.replace(/&/g, "&").replace(/"/g, """).replace(/'/g, "'").replace(/ - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -define('ace/mode/coffee/coffee-script', ['require', 'exports', 'module' , 'ace/mode/coffee/lexer', 'ace/mode/coffee/parser', 'ace/mode/coffee/nodes'], function(require, exports, module) { - + +ace.define('ace/mode/coffee/coffee-script', ['require', 'exports', 'module' , 'ace/mode/coffee/lexer', 'ace/mode/coffee/parser', 'ace/mode/coffee/nodes'], function(require, exports, module) { + var Lexer = require("./lexer").Lexer; var parser = require("./parser"); var lexer = new Lexer(); parser.lexer = { lex: function() { - var tag, _ref2; - _ref2 = this.tokens[this.pos++] || [''], tag = _ref2[0], this.yytext = _ref2[1], this.yylineno = _ref2[2]; + var tag, token; + token = this.tokens[this.pos++]; + if (token) { + tag = token[0], this.yytext = token[1], this.yylloc = token[2]; + this.yylineno = this.yylloc.first_line; + } else { + tag = ''; + } return tag; }, setInput: function(tokens) { @@ -3296,84 +2078,84 @@ define('ace/mode/coffee/coffee-script', ['require', 'exports', 'module' , 'ace/m } }; parser.yy = require('./nodes'); - + exports.parse = function(code) { return parser.parse(lexer.tokenize(code)); }; }); -/* - * Copyright (c) 2011 Jeremy Ashkenas - * - * Permission is hereby granted, free of charge, to any person - * obtaining a copy of this software and associated documentation - * files (the "Software"), to deal in the Software without - * restriction, including without limitation the rights to use, - * copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the - * Software is furnished to do so, subject to the following - * conditions: - * - * The above copyright notice and this permission notice shall be - * included in all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, - * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES - * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND - * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT - * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, - * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING - * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR - * OTHER DEALINGS IN THE SOFTWARE. - */ -define('ace/mode/coffee/lexer', ['require', 'exports', 'module' , 'ace/mode/coffee/rewriter', 'ace/mode/coffee/helpers'], function(require, exports, module) { -// Generated by CoffeeScript 1.2.1-pre +ace.define('ace/mode/coffee/lexer', ['require', 'exports', 'module' , 'ace/mode/coffee/rewriter', 'ace/mode/coffee/helpers'], function(require, exports, module) { - var BOOL, CALLABLE, CODE, COFFEE_ALIASES, COFFEE_ALIAS_MAP, COFFEE_KEYWORDS, COMMENT, COMPARE, COMPOUND_ASSIGN, HEREDOC, HEREDOC_ILLEGAL, HEREDOC_INDENT, HEREGEX, HEREGEX_OMIT, IDENTIFIER, INDEXABLE, INVERSES, JSTOKEN, JS_FORBIDDEN, JS_KEYWORDS, LINE_BREAK, LINE_CONTINUER, LOGIC, Lexer, MATH, MULTILINER, MULTI_DENT, NOT_REGEX, NOT_SPACED_REGEX, NUMBER, OPERATOR, REGEX, RELATION, RESERVED, Rewriter, SHIFT, SIMPLESTR, STRICT_PROSCRIBED, TRAILING_SPACES, UNARY, WHITESPACE, compact, count, key, last, starts, _ref, _ref1, + var BOM, BOOL, CALLABLE, CODE, COFFEE_ALIASES, COFFEE_ALIAS_MAP, COFFEE_KEYWORDS, COMMENT, COMPARE, COMPOUND_ASSIGN, HEREDOC, HEREDOC_ILLEGAL, HEREDOC_INDENT, HEREGEX, HEREGEX_OMIT, IDENTIFIER, INDEXABLE, INVERSES, JSTOKEN, JS_FORBIDDEN, JS_KEYWORDS, LINE_BREAK, LINE_CONTINUER, LOGIC, Lexer, MATH, MULTILINER, MULTI_DENT, NOT_REGEX, NOT_SPACED_REGEX, NUMBER, OPERATOR, REGEX, RELATION, RESERVED, Rewriter, SHIFT, SIMPLESTR, STRICT_PROSCRIBED, TRAILING_SPACES, UNARY, WHITESPACE, compact, count, invertLiterate, key, last, locationDataToString, repeat, starts, throwSyntaxError, _ref, _ref1, __indexOf = [].indexOf || function(item) { for (var i = 0, l = this.length; i < l; i++) { if (i in this && this[i] === item) return i; } return -1; }; _ref = require('./rewriter'), Rewriter = _ref.Rewriter, INVERSES = _ref.INVERSES; - _ref1 = require('./helpers'), count = _ref1.count, starts = _ref1.starts, compact = _ref1.compact, last = _ref1.last; + _ref1 = require('./helpers'), count = _ref1.count, starts = _ref1.starts, compact = _ref1.compact, last = _ref1.last, repeat = _ref1.repeat, invertLiterate = _ref1.invertLiterate, locationDataToString = _ref1.locationDataToString, throwSyntaxError = _ref1.throwSyntaxError; exports.Lexer = Lexer = (function() { - - Lexer.name = 'Lexer'; - function Lexer() {} Lexer.prototype.tokenize = function(code, opts) { - var i, tag; - if (opts == null) opts = {}; - if (WHITESPACE.test(code)) code = "\n" + code; - code = code.replace(/\r/g, '').replace(TRAILING_SPACES, ''); - this.code = code; - this.line = opts.line || 0; + var consumed, i, tag, _ref2; + if (opts == null) { + opts = {}; + } + this.literate = opts.literate; this.indent = 0; + this.baseIndent = 0; this.indebt = 0; this.outdebt = 0; this.indents = []; this.ends = []; this.tokens = []; + this.chunkLine = opts.line || 0; + this.chunkColumn = opts.column || 0; + code = this.clean(code); i = 0; while (this.chunk = code.slice(i)) { - i += this.identifierToken() || this.commentToken() || this.whitespaceToken() || this.lineToken() || this.heredocToken() || this.stringToken() || this.numberToken() || this.regexToken() || this.jsToken() || this.literalToken(); + consumed = this.identifierToken() || this.commentToken() || this.whitespaceToken() || this.lineToken() || this.heredocToken() || this.stringToken() || this.numberToken() || this.regexToken() || this.jsToken() || this.literalToken(); + _ref2 = this.getLineAndColumnFromChunk(consumed), this.chunkLine = _ref2[0], this.chunkColumn = _ref2[1]; + i += consumed; } this.closeIndentation(); - if (tag = this.ends.pop()) this.error("missing " + tag); - if (opts.rewrite === false) return this.tokens; + if (tag = this.ends.pop()) { + this.error("missing " + tag); + } + if (opts.rewrite === false) { + return this.tokens; + } return (new Rewriter).rewrite(this.tokens); }; + Lexer.prototype.clean = function(code) { + if (code.charCodeAt(0) === BOM) { + code = code.slice(1); + } + code = code.replace(/\r/g, '').replace(TRAILING_SPACES, ''); + if (WHITESPACE.test(code)) { + code = "\n" + code; + this.chunkLine--; + } + if (this.literate) { + code = invertLiterate(code); + } + return code; + }; + Lexer.prototype.identifierToken = function() { - var colon, forcedIdentifier, id, input, match, prev, tag, _ref2, _ref3; - if (!(match = IDENTIFIER.exec(this.chunk))) return 0; + var colon, colonOffset, forcedIdentifier, id, idLength, input, match, poppedToken, prev, tag, tagToken, _ref2, _ref3, _ref4; + if (!(match = IDENTIFIER.exec(this.chunk))) { + return 0; + } input = match[0], id = match[1], colon = match[2]; + idLength = id.length; + poppedToken = void 0; if (id === 'own' && this.tag() === 'FOR') { this.token('OWN', id); return id.length; } - forcedIdentifier = colon || (prev = last(this.tokens)) && (((_ref2 = prev[0]) === '.' || _ref2 === '?.' || _ref2 === '::') || !prev.spaced && prev[0] === '@'); + forcedIdentifier = colon || (prev = last(this.tokens)) && (((_ref2 = prev[0]) === '.' || _ref2 === '?.' || _ref2 === '::' || _ref2 === '?::') || !prev.spaced && prev[0] === '@'); tag = 'IDENTIFIER'; if (!forcedIdentifier && (__indexOf.call(JS_KEYWORDS, id) >= 0 || __indexOf.call(COFFEE_KEYWORDS, id) >= 0)) { tag = id.toUpperCase(); @@ -3392,7 +2174,7 @@ define('ace/mode/coffee/lexer', ['require', 'exports', 'module' , 'ace/mode/coff } else { tag = 'RELATION'; if (this.value() === '!') { - this.tokens.pop(); + poppedToken = this.tokens.pop(); id = '!' + id; } } @@ -3408,7 +2190,9 @@ define('ace/mode/coffee/lexer', ['require', 'exports', 'module' , 'ace/mode/coff } } if (!forcedIdentifier) { - if (__indexOf.call(COFFEE_ALIASES, id) >= 0) id = COFFEE_ALIAS_MAP[id]; + if (__indexOf.call(COFFEE_ALIASES, id) >= 0) { + id = COFFEE_ALIAS_MAP[id]; + } tag = (function() { switch (id) { case '!': @@ -3421,8 +2205,6 @@ define('ace/mode/coffee/lexer', ['require', 'exports', 'module' , 'ace/mode/coff return 'LOGIC'; case 'true': case 'false': - case 'null': - case 'undefined': return 'BOOL'; case 'break': case 'continue': @@ -3432,63 +2214,75 @@ define('ace/mode/coffee/lexer', ['require', 'exports', 'module' , 'ace/mode/coff } })(); } - this.token(tag, id); - if (colon) this.token(':', ':'); + tagToken = this.token(tag, id, 0, idLength); + if (poppedToken) { + _ref4 = [poppedToken[2].first_line, poppedToken[2].first_column], tagToken[2].first_line = _ref4[0], tagToken[2].first_column = _ref4[1]; + } + if (colon) { + colonOffset = input.lastIndexOf(':'); + this.token(':', ':', colonOffset, colon.length); + } return input.length; }; Lexer.prototype.numberToken = function() { var binaryLiteral, lexedLength, match, number, octalLiteral; - if (!(match = NUMBER.exec(this.chunk))) return 0; + if (!(match = NUMBER.exec(this.chunk))) { + return 0; + } number = match[0]; - if (/E/.test(number)) { - this.error("exponential notation '" + number + "' must be indicated with a lowercase 'e'"); - } else if (/[BOX]/.test(number)) { + if (/^0[BOX]/.test(number)) { this.error("radix prefix '" + number + "' must be lowercase"); - } else if (/^0[89]/.test(number)) { + } else if (/E/.test(number) && !/^0x/.test(number)) { + this.error("exponential notation '" + number + "' must be indicated with a lowercase 'e'"); + } else if (/^0\d*[89]/.test(number)) { this.error("decimal literal '" + number + "' must not be prefixed with '0'"); - } else if (/^0[0-7]/.test(number)) { + } else if (/^0\d+/.test(number)) { this.error("octal literal '" + number + "' must be prefixed with '0o'"); } lexedLength = number.length; - if (octalLiteral = /0o([0-7]+)/.exec(number)) { - number = (parseInt(octalLiteral[1], 8)).toString(); + if (octalLiteral = /^0o([0-7]+)/.exec(number)) { + number = '0x' + parseInt(octalLiteral[1], 8).toString(16); } - if (binaryLiteral = /0b([01]+)/.exec(number)) { - number = (parseInt(binaryLiteral[1], 2)).toString(); + if (binaryLiteral = /^0b([01]+)/.exec(number)) { + number = '0x' + parseInt(binaryLiteral[1], 2).toString(16); } - this.token('NUMBER', number); + this.token('NUMBER', number, 0, lexedLength); return lexedLength; }; Lexer.prototype.stringToken = function() { - var match, octalEsc, string; - switch (this.chunk.charAt(0)) { + var octalEsc, quote, string, trimmed; + switch (quote = this.chunk.charAt(0)) { case "'": - if (!(match = SIMPLESTR.exec(this.chunk))) return 0; - this.token('STRING', (string = match[0]).replace(MULTILINER, '\\\n')); + string = SIMPLESTR.exec(this.chunk)[0]; break; case '"': - if (!(string = this.balancedString(this.chunk, '"'))) return 0; - if (0 < string.indexOf('#{', 1)) { - this.interpolateString(string.slice(1, -1)); - } else { - this.token('STRING', this.escapeLines(string)); - } - break; - default: - return 0; + string = this.balancedString(this.chunk, '"'); } - if (octalEsc = /^(?:\\.|[^\\])*\\[0-7]/.test(string)) { + if (!string) { + return 0; + } + trimmed = this.removeNewlines(string.slice(1, -1)); + if (quote === '"' && 0 < string.indexOf('#{', 1)) { + this.interpolateString(trimmed, { + strOffset: 1, + lexedLength: string.length + }); + } else { + this.token('STRING', quote + this.escapeLines(trimmed) + quote, 0, string.length); + } + if (octalEsc = /^(?:\\.|[^\\])*\\(?:0[0-7]|[1-7])/.test(string)) { this.error("octal escape sequences " + string + " are not allowed"); } - this.line += count(string, '\n'); return string.length; }; Lexer.prototype.heredocToken = function() { var doc, heredoc, match, quote; - if (!(match = HEREDOC.exec(this.chunk))) return 0; + if (!(match = HEREDOC.exec(this.chunk))) { + return 0; + } heredoc = match[0]; quote = heredoc.charAt(0); doc = this.sanitizeHeredoc(match[2], { @@ -3497,26 +2291,28 @@ define('ace/mode/coffee/lexer', ['require', 'exports', 'module' , 'ace/mode/coff }); if (quote === '"' && 0 <= doc.indexOf('#{')) { this.interpolateString(doc, { - heredoc: true + heredoc: true, + strOffset: 3, + lexedLength: heredoc.length }); } else { - this.token('STRING', this.makeString(doc, quote, true)); + this.token('STRING', this.makeString(doc, quote, true), 0, heredoc.length); } - this.line += count(heredoc, '\n'); return heredoc.length; }; Lexer.prototype.commentToken = function() { var comment, here, match; - if (!(match = this.chunk.match(COMMENT))) return 0; + if (!(match = this.chunk.match(COMMENT))) { + return 0; + } comment = match[0], here = match[1]; if (here) { this.token('HERECOMMENT', this.sanitizeHeredoc(here, { herecomment: true, - indent: Array(this.indent + 1).join(' ') - })); + indent: repeat(' ', this.indent) + }), 0, comment.length); } - this.line += count(comment, '\n'); return comment.length; }; @@ -3525,84 +2321,104 @@ define('ace/mode/coffee/lexer', ['require', 'exports', 'module' , 'ace/mode/coff if (!(this.chunk.charAt(0) === '`' && (match = JSTOKEN.exec(this.chunk)))) { return 0; } - this.token('JS', (script = match[0]).slice(1, -1)); + this.token('JS', (script = match[0]).slice(1, -1), 0, script.length); return script.length; }; Lexer.prototype.regexToken = function() { var flags, length, match, prev, regex, _ref2, _ref3; - if (this.chunk.charAt(0) !== '/') return 0; + if (this.chunk.charAt(0) !== '/') { + return 0; + } if (match = HEREGEX.exec(this.chunk)) { length = this.heregexToken(match); - this.line += count(match[0], '\n'); return length; } prev = last(this.tokens); if (prev && (_ref2 = prev[0], __indexOf.call((prev.spaced ? NOT_REGEX : NOT_SPACED_REGEX), _ref2) >= 0)) { return 0; } - if (!(match = REGEX.exec(this.chunk))) return 0; + if (!(match = REGEX.exec(this.chunk))) { + return 0; + } _ref3 = match, match = _ref3[0], regex = _ref3[1], flags = _ref3[2]; if (regex.slice(0, 2) === '/*') { this.error('regular expressions cannot begin with `*`'); } - if (regex === '//') regex = '/(?:)/'; - this.token('REGEX', "" + regex + flags); + if (regex === '//') { + regex = '/(?:)/'; + } + this.token('REGEX', "" + regex + flags, 0, match.length); return match.length; }; Lexer.prototype.heregexToken = function(match) { - var body, flags, heregex, re, tag, tokens, value, _i, _len, _ref2, _ref3, _ref4, _ref5; + var body, flags, flagsOffset, heregex, plusToken, prev, re, tag, token, tokens, value, _i, _len, _ref2, _ref3, _ref4; heregex = match[0], body = match[1], flags = match[2]; if (0 > body.indexOf('#{')) { - re = body.replace(HEREGEX_OMIT, '').replace(/\//g, '\\/'); + re = this.escapeLines(body.replace(HEREGEX_OMIT, '$1$2').replace(/\//g, '\\/'), true); if (re.match(/^\*/)) { this.error('regular expressions cannot begin with `*`'); } - this.token('REGEX', "/" + (re || '(?:)') + "/" + flags); + this.token('REGEX', "/" + (re || '(?:)') + "/" + flags, 0, heregex.length); return heregex.length; } - this.token('IDENTIFIER', 'RegExp'); - this.tokens.push(['CALL_START', '(']); + this.token('IDENTIFIER', 'RegExp', 0, 0); + this.token('CALL_START', '(', 0, 0); tokens = []; _ref2 = this.interpolateString(body, { regex: true }); for (_i = 0, _len = _ref2.length; _i < _len; _i++) { - _ref3 = _ref2[_i], tag = _ref3[0], value = _ref3[1]; + token = _ref2[_i]; + tag = token[0], value = token[1]; if (tag === 'TOKENS') { tokens.push.apply(tokens, value); - } else { - if (!(value = value.replace(HEREGEX_OMIT, ''))) continue; + } else if (tag === 'NEOSTRING') { + if (!(value = value.replace(HEREGEX_OMIT, '$1$2'))) { + continue; + } value = value.replace(/\\/g, '\\\\'); - tokens.push(['STRING', this.makeString(value, '"', true)]); + token[0] = 'STRING'; + token[1] = this.makeString(value, '"', true); + tokens.push(token); + } else { + this.error("Unexpected " + tag); } - tokens.push(['+', '+']); + prev = last(this.tokens); + plusToken = ['+', '+']; + plusToken[2] = prev[2]; + tokens.push(plusToken); } tokens.pop(); - if (((_ref4 = tokens[0]) != null ? _ref4[0] : void 0) !== 'STRING') { - this.tokens.push(['STRING', '""'], ['+', '+']); + if (((_ref3 = tokens[0]) != null ? _ref3[0] : void 0) !== 'STRING') { + this.token('STRING', '""', 0, 0); + this.token('+', '+', 0, 0); } - (_ref5 = this.tokens).push.apply(_ref5, tokens); - if (flags) this.tokens.push([',', ','], ['STRING', '"' + flags + '"']); - this.token(')', ')'); + (_ref4 = this.tokens).push.apply(_ref4, tokens); + if (flags) { + flagsOffset = heregex.lastIndexOf(flags); + this.token(',', ',', flagsOffset, 0); + this.token('STRING', '"' + flags + '"', flagsOffset, flags.length); + } + this.token(')', ')', heregex.length - 1, 0); return heregex.length; }; Lexer.prototype.lineToken = function() { - var diff, indent, match, noNewlines, prev, size; - if (!(match = MULTI_DENT.exec(this.chunk))) return 0; + var diff, indent, match, noNewlines, size; + if (!(match = MULTI_DENT.exec(this.chunk))) { + return 0; + } indent = match[0]; - this.line += count(indent, '\n'); this.seenFor = false; - prev = last(this.tokens, 1); size = indent.length - 1 - indent.lastIndexOf('\n'); noNewlines = this.unfinished(); if (size - this.indebt === this.indent) { if (noNewlines) { this.suppressNewlines(); } else { - this.newlineToken(); + this.newlineToken(0); } return indent.length; } @@ -3612,20 +2428,26 @@ define('ace/mode/coffee/lexer', ['require', 'exports', 'module' , 'ace/mode/coff this.suppressNewlines(); return indent.length; } + if (!this.tokens.length) { + this.baseIndent = this.indent = size; + return indent.length; + } diff = size - this.indent + this.outdebt; - this.token('INDENT', diff); + this.token('INDENT', diff, indent.length - size, size); this.indents.push(diff); this.ends.push('OUTDENT'); this.outdebt = this.indebt = 0; + } else if (size < this.baseIndent) { + this.error('missing indentation', indent.length); } else { this.indebt = 0; - this.outdentToken(this.indent - size, noNewlines); + this.outdentToken(this.indent - size, noNewlines, indent.length); } this.indent = size; return indent.length; }; - Lexer.prototype.outdentToken = function(moveOut, noNewlines) { + Lexer.prototype.outdentToken = function(moveOut, noNewlines, outdentLength) { var dent, len; while (moveOut > 0) { len = this.indents.length - 1; @@ -3638,19 +2460,21 @@ define('ace/mode/coffee/lexer', ['require', 'exports', 'module' , 'ace/mode/coff this.outdebt -= this.indents[len]; moveOut -= this.indents[len]; } else { - dent = this.indents.pop() - this.outdebt; + dent = this.indents.pop() + this.outdebt; moveOut -= dent; this.outdebt = 0; this.pair('OUTDENT'); - this.token('OUTDENT', dent); + this.token('OUTDENT', dent, 0, outdentLength); } } - if (dent) this.outdebt -= moveOut; + if (dent) { + this.outdebt -= moveOut; + } while (this.value() === ';') { this.tokens.pop(); } if (!(this.tag() === 'TERMINATOR' || noNewlines)) { - this.token('TERMINATOR', '\n'); + this.token('TERMINATOR', '\n', outdentLength, 0); } return this; }; @@ -3661,7 +2485,9 @@ define('ace/mode/coffee/lexer', ['require', 'exports', 'module' , 'ace/mode/coff return 0; } prev = last(this.tokens); - if (prev) prev[match ? 'spaced' : 'newLine'] = true; + if (prev) { + prev[match ? 'spaced' : 'newLine'] = true; + } if (match) { return match[0].length; } else { @@ -3669,16 +2495,20 @@ define('ace/mode/coffee/lexer', ['require', 'exports', 'module' , 'ace/mode/coff } }; - Lexer.prototype.newlineToken = function() { + Lexer.prototype.newlineToken = function(offset) { while (this.value() === ';') { this.tokens.pop(); } - if (this.tag() !== 'TERMINATOR') this.token('TERMINATOR', '\n'); + if (this.tag() !== 'TERMINATOR') { + this.token('TERMINATOR', '\n', offset, 0); + } return this; }; Lexer.prototype.suppressNewlines = function() { - if (this.value() === '\\') this.tokens.pop(); + if (this.value() === '\\') { + this.tokens.pop(); + } return this; }; @@ -3686,7 +2516,9 @@ define('ace/mode/coffee/lexer', ['require', 'exports', 'module' , 'ace/mode/coff var match, prev, tag, value, _ref2, _ref3, _ref4, _ref5; if (match = OPERATOR.exec(this.chunk)) { value = match[0]; - if (CODE.test(value)) this.tagParameters(); + if (CODE.test(value)) { + this.tagParameters(); + } } else { value = this.chunk.charAt(0); } @@ -3719,7 +2551,9 @@ define('ace/mode/coffee/lexer', ['require', 'exports', 'module' , 'ace/mode/coff tag = 'LOGIC'; } else if (prev && !prev.spaced) { if (value === '(' && (_ref4 = prev[0], __indexOf.call(CALLABLE, _ref4) >= 0)) { - if (prev[0] === '?') prev[0] = 'FUNC_EXIST'; + if (prev[0] === '?') { + prev[0] = 'FUNC_EXIST'; + } tag = 'CALL_START'; } else if (value === '[' && (_ref5 = prev[0], __indexOf.call(INDEXABLE, _ref5) >= 0)) { tag = 'INDEX_START'; @@ -3751,7 +2585,9 @@ define('ace/mode/coffee/lexer', ['require', 'exports', 'module' , 'ace/mode/coff if (HEREDOC_ILLEGAL.test(doc)) { this.error("block comment cannot contain \"*/\", starting"); } - if (doc.indexOf('\n') <= 0) return doc; + if (doc.indexOf('\n') < 0) { + return doc; + } } else { while (match = HEREDOC_INDENT.exec(doc)) { attempt = match[1]; @@ -3760,14 +2596,20 @@ define('ace/mode/coffee/lexer', ['require', 'exports', 'module' , 'ace/mode/coff } } } - if (indent) doc = doc.replace(RegExp("\\n" + indent, "g"), '\n'); - if (!herecomment) doc = doc.replace(/^\n/, ''); + if (indent) { + doc = doc.replace(RegExp("\\n" + indent, "g"), '\n'); + } + if (!herecomment) { + doc = doc.replace(/^\n/, ''); + } return doc; }; Lexer.prototype.tagParameters = function() { var i, stack, tok, tokens; - if (this.tag() !== ')') return this; + if (this.tag() !== ')') { + return this; + } stack = []; tokens = this.tokens; i = tokens.length; @@ -3811,7 +2653,9 @@ define('ace/mode/coffee/lexer', ['require', 'exports', 'module' , 'ace/mode/coff continue; case end: stack.pop(); - if (!stack.length) return str.slice(0, i + 1 || 9e9); + if (!stack.length) { + return str.slice(0, +i + 1 || 9e9); + } end = stack[stack.length - 1]; continue; } @@ -3830,9 +2674,14 @@ define('ace/mode/coffee/lexer', ['require', 'exports', 'module' , 'ace/mode/coff }; Lexer.prototype.interpolateString = function(str, options) { - var expr, heredoc, i, inner, interpolated, len, letter, nested, pi, regex, tag, tokens, value, _i, _len, _ref2, _ref3, _ref4; - if (options == null) options = {}; - heredoc = options.heredoc, regex = options.regex; + var column, expr, heredoc, i, inner, interpolated, len, letter, lexedLength, line, locationToken, nested, offsetInChunk, pi, plusToken, popped, regex, rparen, strOffset, tag, token, tokens, value, _i, _len, _ref2, _ref3, _ref4; + if (options == null) { + options = {}; + } + heredoc = options.heredoc, regex = options.regex, offsetInChunk = options.offsetInChunk, strOffset = options.strOffset, lexedLength = options.lexedLength; + offsetInChunk = offsetInChunk || 0; + strOffset = strOffset || 0; + lexedLength = lexedLength || str.length; tokens = []; pi = 0; i = -1; @@ -3844,21 +2693,25 @@ define('ace/mode/coffee/lexer', ['require', 'exports', 'module' , 'ace/mode/coff if (!(letter === '#' && str.charAt(i + 1) === '{' && (expr = this.balancedString(str.slice(i + 1), '}')))) { continue; } - if (pi < i) tokens.push(['NEOSTRING', str.slice(pi, i)]); + if (pi < i) { + tokens.push(this.makeToken('NEOSTRING', str.slice(pi, i), strOffset + pi)); + } inner = expr.slice(1, -1); if (inner.length) { + _ref2 = this.getLineAndColumnFromChunk(strOffset + i + 1), line = _ref2[0], column = _ref2[1]; nested = new Lexer().tokenize(inner, { - line: this.line, + line: line, + column: column, rewrite: false }); - nested.pop(); - if (((_ref2 = nested[0]) != null ? _ref2[0] : void 0) === 'TERMINATOR') { - nested.shift(); + popped = nested.pop(); + if (((_ref3 = nested[0]) != null ? _ref3[0] : void 0) === 'TERMINATOR') { + popped = nested.shift(); } if (len = nested.length) { if (len > 1) { - nested.unshift(['(', '(', this.line]); - nested.push([')', ')', this.line]); + nested.unshift(this.makeToken('(', '(', strOffset + i + 1, 0)); + nested.push(this.makeToken(')', ')', strOffset + i + 1 + inner.length, 0)); } tokens.push(['TOKENS', nested]); } @@ -3866,28 +2719,60 @@ define('ace/mode/coffee/lexer', ['require', 'exports', 'module' , 'ace/mode/coff i += expr.length; pi = i + 1; } - if ((i > pi && pi < str.length)) tokens.push(['NEOSTRING', str.slice(pi)]); - if (regex) return tokens; - if (!tokens.length) return this.token('STRING', '""'); - if (tokens[0][0] !== 'NEOSTRING') tokens.unshift(['', '']); - if (interpolated = tokens.length > 1) this.token('(', '('); + if ((i > pi && pi < str.length)) { + tokens.push(this.makeToken('NEOSTRING', str.slice(pi), strOffset + pi)); + } + if (regex) { + return tokens; + } + if (!tokens.length) { + return this.token('STRING', '""', offsetInChunk, lexedLength); + } + if (tokens[0][0] !== 'NEOSTRING') { + tokens.unshift(this.makeToken('NEOSTRING', '', offsetInChunk)); + } + if (interpolated = tokens.length > 1) { + this.token('(', '(', offsetInChunk, 0); + } for (i = _i = 0, _len = tokens.length; _i < _len; i = ++_i) { - _ref3 = tokens[i], tag = _ref3[0], value = _ref3[1]; - if (i) this.token('+', '+'); + token = tokens[i]; + tag = token[0], value = token[1]; + if (i) { + if (i) { + plusToken = this.token('+', '+'); + } + locationToken = tag === 'TOKENS' ? value[0] : token; + plusToken[2] = { + first_line: locationToken[2].first_line, + first_column: locationToken[2].first_column, + last_line: locationToken[2].first_line, + last_column: locationToken[2].first_column + }; + } if (tag === 'TOKENS') { (_ref4 = this.tokens).push.apply(_ref4, value); + } else if (tag === 'NEOSTRING') { + token[0] = 'STRING'; + token[1] = this.makeString(value, '"', heredoc); + this.tokens.push(token); } else { - this.token('STRING', this.makeString(value, '"', heredoc)); + this.error("Unexpected " + tag); } } - if (interpolated) this.token(')', ')'); + if (interpolated) { + rparen = this.makeToken(')', ')', offsetInChunk + lexedLength, 0); + rparen.stringEnd = true; + this.tokens.push(rparen); + } return tokens; }; Lexer.prototype.pair = function(tag) { var size, wanted; if (tag !== (wanted = last(this.ends))) { - if ('OUTDENT' !== wanted) this.error("unmatched " + tag); + if ('OUTDENT' !== wanted) { + this.error("unmatched " + tag); + } this.indent -= size = last(this.indents); this.outdentToken(size, true); return this.pair(tag); @@ -3895,8 +2780,48 @@ define('ace/mode/coffee/lexer', ['require', 'exports', 'module' , 'ace/mode/coff return this.ends.pop(); }; - Lexer.prototype.token = function(tag, value) { - return this.tokens.push([tag, value, this.line]); + Lexer.prototype.getLineAndColumnFromChunk = function(offset) { + var column, lineCount, lines, string; + if (offset === 0) { + return [this.chunkLine, this.chunkColumn]; + } + if (offset >= this.chunk.length) { + string = this.chunk; + } else { + string = this.chunk.slice(0, +(offset - 1) + 1 || 9e9); + } + lineCount = count(string, '\n'); + column = this.chunkColumn; + if (lineCount > 0) { + lines = string.split('\n'); + column = last(lines).length; + } else { + column += string.length; + } + return [this.chunkLine + lineCount, column]; + }; + + Lexer.prototype.makeToken = function(tag, value, offsetInChunk, length) { + var lastCharacter, locationData, token, _ref2, _ref3; + if (offsetInChunk == null) { + offsetInChunk = 0; + } + if (length == null) { + length = value.length; + } + locationData = {}; + _ref2 = this.getLineAndColumnFromChunk(offsetInChunk), locationData.first_line = _ref2[0], locationData.first_column = _ref2[1]; + lastCharacter = Math.max(0, length - 1); + _ref3 = this.getLineAndColumnFromChunk(offsetInChunk + lastCharacter), locationData.last_line = _ref3[0], locationData.last_column = _ref3[1]; + token = [tag, value, locationData]; + return token; + }; + + Lexer.prototype.token = function(tag, value, offsetInChunk, length) { + var token; + token = this.makeToken(tag, value, offsetInChunk, length); + this.tokens.push(token); + return token; }; Lexer.prototype.tag = function(index, tag) { @@ -3911,17 +2836,34 @@ define('ace/mode/coffee/lexer', ['require', 'exports', 'module' , 'ace/mode/coff Lexer.prototype.unfinished = function() { var _ref2; - return LINE_CONTINUER.test(this.chunk) || ((_ref2 = this.tag()) === '\\' || _ref2 === '.' || _ref2 === '?.' || _ref2 === 'UNARY' || _ref2 === 'MATH' || _ref2 === '+' || _ref2 === '-' || _ref2 === 'SHIFT' || _ref2 === 'RELATION' || _ref2 === 'COMPARE' || _ref2 === 'LOGIC' || _ref2 === 'THROW' || _ref2 === 'EXTENDS'); + return LINE_CONTINUER.test(this.chunk) || ((_ref2 = this.tag()) === '\\' || _ref2 === '.' || _ref2 === '?.' || _ref2 === '?::' || _ref2 === 'UNARY' || _ref2 === 'MATH' || _ref2 === '+' || _ref2 === '-' || _ref2 === 'SHIFT' || _ref2 === 'RELATION' || _ref2 === 'COMPARE' || _ref2 === 'LOGIC' || _ref2 === 'THROW' || _ref2 === 'EXTENDS'); + }; + + Lexer.prototype.removeNewlines = function(str) { + return str.replace(/^\s*\n\s*/, '').replace(/([^\\]|\\\\)\s*\n\s*$/, '$1'); }; Lexer.prototype.escapeLines = function(str, heredoc) { - return str.replace(MULTILINER, heredoc ? '\\n' : ''); + str = str.replace(/\\[^\S\n]*(\n|\\)\s*/g, function(escaped, character) { + if (character === '\n') { + return ''; + } else { + return escaped; + } + }); + if (heredoc) { + return str.replace(MULTILINER, '\\n'); + } else { + return str.replace(/\s*\n\s*/g, ' '); + } }; Lexer.prototype.makeString = function(body, quote, heredoc) { - if (!body) return quote + quote; - body = body.replace(/\\([\s\S])/g, function(match, contents) { - if (contents === '\n' || contents === quote) { + if (!body) { + return quote + quote; + } + body = body.replace(RegExp("\\\\(" + quote + "|\\\\)", "g"), function(match, contents) { + if (contents === quote) { return contents; } else { return match; @@ -3931,8 +2873,16 @@ define('ace/mode/coffee/lexer', ['require', 'exports', 'module' , 'ace/mode/coff return quote + this.escapeLines(body, heredoc) + quote; }; - Lexer.prototype.error = function(message) { - throw SyntaxError("" + message + " on line " + (this.line + 1)); + Lexer.prototype.error = function(message, offset) { + var first_column, first_line, _ref2; + if (offset == null) { + offset = 0; + } + _ref2 = this.getLineAndColumnFromChunk(offset), first_line = _ref2[0], first_column = _ref2[1]; + return throwSyntaxError(message, { + first_line: first_line, + first_column: first_column + }); }; return Lexer; @@ -3966,7 +2916,7 @@ define('ace/mode/coffee/lexer', ['require', 'exports', 'module' , 'ace/mode/coff COFFEE_KEYWORDS = COFFEE_KEYWORDS.concat(COFFEE_ALIASES); - RESERVED = ['case', 'default', 'function', 'var', 'void', 'with', 'const', 'let', 'enum', 'export', 'import', 'native', '__hasProp', '__extends', '__slice', '__bind', '__indexOf', 'implements', 'interface', 'let', 'package', 'private', 'protected', 'public', 'static', 'yield']; + RESERVED = ['case', 'default', 'function', 'var', 'void', 'with', 'const', 'let', 'enum', 'export', 'import', 'native', '__hasProp', '__extends', '__slice', '__bind', '__indexOf', 'implements', 'interface', 'package', 'private', 'protected', 'public', 'static', 'yield']; STRICT_PROSCRIBED = ['arguments', 'eval']; @@ -3976,31 +2926,33 @@ define('ace/mode/coffee/lexer', ['require', 'exports', 'module' , 'ace/mode/coff exports.STRICT_PROSCRIBED = STRICT_PROSCRIBED; + BOM = 65279; + IDENTIFIER = /^([$A-Za-z_\x7f-\uffff][$\w\x7f-\uffff]*)([^\n\S]*:(?!:))?/; NUMBER = /^0b[01]+|^0o[0-7]+|^0x[\da-f]+|^\d*\.?\d+(?:e[+-]?\d+)?/i; - HEREDOC = /^("""|''')([\s\S]*?)(?:\n[^\n\S]*)?\1/; + HEREDOC = /^("""|''')((?:\\[\s\S]|[^\\])*?)(?:\n[^\n\S]*)?\1/; - OPERATOR = /^(?:[-=]>|[-+*\/%<>&|^!?=]=|>>>=?|([-+:])\1|([&|<>])\2=?|\?\.|\.{2,3})/; + OPERATOR = /^(?:[-=]>|[-+*\/%<>&|^!?=]=|>>>=?|([-+:])\1|([&|<>])\2=?|\?(\.|::)|\.{2,3})/; WHITESPACE = /^[^\n\S]+/; - COMMENT = /^###([^#][\s\S]*?)(?:###[^\n\S]*|(?:###)?$)|^(?:\s*#(?!##[^#]).*)+/; + COMMENT = /^###([^#][\s\S]*?)(?:###[^\n\S]*|###$)|^(?:\s*#(?!##[^#]).*)+/; CODE = /^[-=]>/; MULTI_DENT = /^(?:\n[^\n\S]*)+/; - SIMPLESTR = /^'[^\\']*(?:\\.[^\\']*)*'/; + SIMPLESTR = /^'[^\\']*(?:\\[\s\S][^\\']*)*'/; JSTOKEN = /^`[^\\`]*(?:\\.[^\\`]*)*`/; REGEX = /^(\/(?![\s=])[^[\/\n\\]*(?:(?:\\[\s\S]|\[[^\]\n\\]*(?:\\[\s\S][^\]\n\\]*)*])[^[\/\n\\]*)*\/)([imgy]{0,4})(?!\w)/; - HEREGEX = /^\/{3}([\s\S]+?)\/{3}([imgy]{0,4})(?!\w)/; + HEREGEX = /^\/{3}((?:\\?[\s\S])+?)\/{3}([imgy]{0,4})(?!\w)/; - HEREGEX_OMIT = /\s+(?:#.*)?/g; + HEREGEX_OMIT = /((?:\\\\)+)|\\(\s|\/)|\s+(?:#.*)?/g; MULTILINER = /\n/g; @@ -4026,68 +2978,46 @@ define('ace/mode/coffee/lexer', ['require', 'exports', 'module' , 'ace/mode/coff RELATION = ['IN', 'OF', 'INSTANCEOF']; - BOOL = ['TRUE', 'FALSE', 'NULL', 'UNDEFINED']; + BOOL = ['TRUE', 'FALSE']; - NOT_REGEX = ['NUMBER', 'REGEX', 'BOOL', '++', '--', ']']; + NOT_REGEX = ['NUMBER', 'REGEX', 'BOOL', 'NULL', 'UNDEFINED', '++', '--']; - NOT_SPACED_REGEX = NOT_REGEX.concat(')', '}', 'THIS', 'IDENTIFIER', 'STRING'); + NOT_SPACED_REGEX = NOT_REGEX.concat(')', '}', 'THIS', 'IDENTIFIER', 'STRING', ']'); CALLABLE = ['IDENTIFIER', 'STRING', 'REGEX', ')', ']', '}', '?', '::', '@', 'THIS', 'SUPER']; - INDEXABLE = CALLABLE.concat('NUMBER', 'BOOL'); + INDEXABLE = CALLABLE.concat('NUMBER', 'BOOL', 'NULL', 'UNDEFINED'); LINE_BREAK = ['INDENT', 'OUTDENT', 'TERMINATOR']; }); -/* - * Copyright (c) 2011 Jeremy Ashkenas - * - * Permission is hereby granted, free of charge, to any person - * obtaining a copy of this software and associated documentation - * files (the "Software"), to deal in the Software without - * restriction, including without limitation the rights to use, - * copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the - * Software is furnished to do so, subject to the following - * conditions: - * - * The above copyright notice and this permission notice shall be - * included in all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, - * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES - * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND - * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT - * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, - * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING - * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR - * OTHER DEALINGS IN THE SOFTWARE. - */ -define('ace/mode/coffee/rewriter', ['require', 'exports', 'module' ], function(require, exports, module) { -// Generated by CoffeeScript 1.2.1-pre +ace.define('ace/mode/coffee/rewriter', ['require', 'exports', 'module' ], function(require, exports, module) { - var BALANCED_PAIRS, EXPRESSION_CLOSE, EXPRESSION_END, EXPRESSION_START, IMPLICIT_BLOCK, IMPLICIT_CALL, IMPLICIT_END, IMPLICIT_FUNC, IMPLICIT_UNSPACED_CALL, INVERSES, LINEBREAKS, SINGLE_CLOSERS, SINGLE_LINERS, left, rite, _i, _len, _ref, + var BALANCED_PAIRS, CALL_CLOSERS, EXPRESSION_CLOSE, EXPRESSION_END, EXPRESSION_START, IMPLICIT_CALL, IMPLICIT_END, IMPLICIT_FUNC, IMPLICIT_UNSPACED_CALL, INVERSES, LINEBREAKS, SINGLE_CLOSERS, SINGLE_LINERS, generate, left, rite, _i, _len, _ref, __indexOf = [].indexOf || function(item) { for (var i = 0, l = this.length; i < l; i++) { if (i in this && this[i] === item) return i; } return -1; }, __slice = [].slice; + generate = function(tag, value) { + var tok; + tok = [tag, value]; + tok.generated = true; + return tok; + }; + exports.Rewriter = (function() { - - Rewriter.name = 'Rewriter'; - function Rewriter() {} Rewriter.prototype.rewrite = function(tokens) { this.tokens = tokens; this.removeLeadingNewlines(); - this.removeMidExpressionNewlines(); this.closeOpenCalls(); this.closeOpenIndexes(); - this.addImplicitIndentation(); + this.normalizeLines(); this.tagPostfixConditionals(); - this.addImplicitBraces(); - this.addImplicitParentheses(); + this.addImplicitBracesAndParens(); + this.addLocationDataToGeneratedTokens(); return this.tokens; }; @@ -4109,7 +3039,9 @@ define('ace/mode/coffee/rewriter', ['require', 'exports', 'module' ], function(r if (levels === 0 && condition.call(this, token, i)) { return action.call(this, token, i); } - if (!token || levels < 0) return action.call(this, token, i - 1); + if (!token || levels < 0) { + return action.call(this, token, i - 1); + } if (_ref = token[0], __indexOf.call(EXPRESSION_START, _ref) >= 0) { levels += 1; } else if (_ref1 = token[0], __indexOf.call(EXPRESSION_END, _ref1) >= 0) { @@ -4125,20 +3057,13 @@ define('ace/mode/coffee/rewriter', ['require', 'exports', 'module' ], function(r _ref = this.tokens; for (i = _i = 0, _len = _ref.length; _i < _len; i = ++_i) { tag = _ref[i][0]; - if (tag !== 'TERMINATOR') break; - } - if (i) return this.tokens.splice(0, i); - }; - - Rewriter.prototype.removeMidExpressionNewlines = function() { - return this.scanTokens(function(token, i, tokens) { - var _ref; - if (!(token[0] === 'TERMINATOR' && (_ref = this.tag(i + 1), __indexOf.call(EXPRESSION_CLOSE, _ref) >= 0))) { - return 1; + if (tag !== 'TERMINATOR') { + break; } - tokens.splice(i, 1); - return 0; - }); + } + if (i) { + return this.tokens.splice(0, i); + } }; Rewriter.prototype.closeOpenCalls = function() { @@ -4151,7 +3076,9 @@ define('ace/mode/coffee/rewriter', ['require', 'exports', 'module' ], function(r return this.tokens[token[0] === 'OUTDENT' ? i - 1 : i][0] = 'CALL_END'; }; return this.scanTokens(function(token, i) { - if (token[0] === 'CALL_START') this.detectEnd(i + 1, condition, action); + if (token[0] === 'CALL_START') { + this.detectEnd(i + 1, condition, action); + } return 1; }); }; @@ -4166,137 +3093,304 @@ define('ace/mode/coffee/rewriter', ['require', 'exports', 'module' ], function(r return token[0] = 'INDEX_END'; }; return this.scanTokens(function(token, i) { - if (token[0] === 'INDEX_START') this.detectEnd(i + 1, condition, action); + if (token[0] === 'INDEX_START') { + this.detectEnd(i + 1, condition, action); + } return 1; }); }; - Rewriter.prototype.addImplicitBraces = function() { - var action, condition, sameLine, stack, start, startIndent, startsLine; + Rewriter.prototype.matchTags = function() { + var fuzz, i, j, pattern, _i, _ref, _ref1; + i = arguments[0], pattern = 2 <= arguments.length ? __slice.call(arguments, 1) : []; + fuzz = 0; + for (j = _i = 0, _ref = pattern.length; 0 <= _ref ? _i < _ref : _i > _ref; j = 0 <= _ref ? ++_i : --_i) { + while (this.tag(i + j + fuzz) === 'HERECOMMENT') { + fuzz += 2; + } + if (pattern[j] == null) { + continue; + } + if (typeof pattern[j] === 'string') { + pattern[j] = [pattern[j]]; + } + if (_ref1 = this.tag(i + j + fuzz), __indexOf.call(pattern[j], _ref1) < 0) { + return false; + } + } + return true; + }; + + Rewriter.prototype.looksObjectish = function(j) { + return this.matchTags(j, '@', null, ':') || this.matchTags(j, null, ':'); + }; + + Rewriter.prototype.findTagsBackwards = function(i, tags) { + var backStack, _ref, _ref1, _ref2, _ref3, _ref4, _ref5; + backStack = []; + while (i >= 0 && (backStack.length || (_ref2 = this.tag(i), __indexOf.call(tags, _ref2) < 0) && ((_ref3 = this.tag(i), __indexOf.call(EXPRESSION_START, _ref3) < 0) || this.tokens[i].generated) && (_ref4 = this.tag(i), __indexOf.call(LINEBREAKS, _ref4) < 0))) { + if (_ref = this.tag(i), __indexOf.call(EXPRESSION_END, _ref) >= 0) { + backStack.push(this.tag(i)); + } + if ((_ref1 = this.tag(i), __indexOf.call(EXPRESSION_START, _ref1) >= 0) && backStack.length) { + backStack.pop(); + } + i -= 1; + } + return _ref5 = this.tag(i), __indexOf.call(tags, _ref5) >= 0; + }; + + Rewriter.prototype.addImplicitBracesAndParens = function() { + var stack; stack = []; - start = null; - startsLine = null; - sameLine = true; - startIndent = 0; - condition = function(token, i) { - var one, tag, three, two, _ref, _ref1; - _ref = this.tokens.slice(i + 1, (i + 3) + 1 || 9e9), one = _ref[0], two = _ref[1], three = _ref[2]; - if ('HERECOMMENT' === (one != null ? one[0] : void 0)) return false; - tag = token[0]; - if (__indexOf.call(LINEBREAKS, tag) >= 0) sameLine = false; - return (((tag === 'TERMINATOR' || tag === 'OUTDENT') || (__indexOf.call(IMPLICIT_END, tag) >= 0 && sameLine)) && ((!startsLine && this.tag(i - 1) !== ',') || !((two != null ? two[0] : void 0) === ':' || (one != null ? one[0] : void 0) === '@' && (three != null ? three[0] : void 0) === ':'))) || (tag === ',' && one && ((_ref1 = one[0]) !== 'IDENTIFIER' && _ref1 !== 'NUMBER' && _ref1 !== 'STRING' && _ref1 !== '@' && _ref1 !== 'TERMINATOR' && _ref1 !== 'OUTDENT')); - }; - action = function(token, i) { - var tok; - tok = this.generate('}', '}', token[2]); - return this.tokens.splice(i, 0, tok); - }; return this.scanTokens(function(token, i, tokens) { - var ago, idx, prevTag, tag, tok, value, _ref, _ref1; - if (_ref = (tag = token[0]), __indexOf.call(EXPRESSION_START, _ref) >= 0) { - stack.push([(tag === 'INDENT' && this.tag(i - 1) === '{' ? '{' : tag), i]); - return 1; + var endAllImplicitCalls, endImplicitCall, endImplicitObject, forward, inImplicit, inImplicitCall, inImplicitControl, inImplicitObject, nextTag, offset, prevTag, prevToken, s, sameLine, stackIdx, stackTag, stackTop, startIdx, startImplicitCall, startImplicitObject, startsLine, tag, _ref, _ref1, _ref2, _ref3, _ref4, _ref5; + tag = token[0]; + prevTag = (prevToken = i > 0 ? tokens[i - 1] : [])[0]; + nextTag = (i < tokens.length - 1 ? tokens[i + 1] : [])[0]; + stackTop = function() { + return stack[stack.length - 1]; + }; + startIdx = i; + forward = function(n) { + return i - startIdx + n; + }; + inImplicit = function() { + var _ref, _ref1; + return (_ref = stackTop()) != null ? (_ref1 = _ref[2]) != null ? _ref1.ours : void 0 : void 0; + }; + inImplicitCall = function() { + var _ref; + return inImplicit() && ((_ref = stackTop()) != null ? _ref[0] : void 0) === '('; + }; + inImplicitObject = function() { + var _ref; + return inImplicit() && ((_ref = stackTop()) != null ? _ref[0] : void 0) === '{'; + }; + inImplicitControl = function() { + var _ref; + return inImplicit && ((_ref = stackTop()) != null ? _ref[0] : void 0) === 'CONTROL'; + }; + startImplicitCall = function(j) { + var idx; + idx = j != null ? j : i; + stack.push([ + '(', idx, { + ours: true + } + ]); + tokens.splice(idx, 0, generate('CALL_START', '(')); + if (j == null) { + return i += 1; + } + }; + endImplicitCall = function() { + stack.pop(); + tokens.splice(i, 0, generate('CALL_END', ')')); + return i += 1; + }; + endAllImplicitCalls = function() { + while (inImplicitCall()) { + endImplicitCall(); + } + }; + startImplicitObject = function(j, startsLine) { + var idx; + if (startsLine == null) { + startsLine = true; + } + idx = j != null ? j : i; + stack.push([ + '{', idx, { + sameLine: true, + startsLine: startsLine, + ours: true + } + ]); + tokens.splice(idx, 0, generate('{', generate(new String('{')))); + if (j == null) { + return i += 1; + } + }; + endImplicitObject = function(j) { + j = j != null ? j : i; + stack.pop(); + tokens.splice(j, 0, generate('}', '}')); + return i += 1; + }; + if (inImplicitCall() && (tag === 'IF' || tag === 'TRY' || tag === 'FINALLY' || tag === 'CATCH' || tag === 'CLASS' || tag === 'SWITCH')) { + stack.push([ + 'CONTROL', i, { + ours: true + } + ]); + return forward(1); + } + if (tag === 'INDENT' && inImplicit()) { + if (prevTag !== '=>' && prevTag !== '->' && prevTag !== '[' && prevTag !== '(' && prevTag !== ',' && prevTag !== '{' && prevTag !== 'TRY' && prevTag !== 'ELSE' && prevTag !== '=') { + while (inImplicitCall()) { + endImplicitCall(); + } + } + if (inImplicitControl()) { + stack.pop(); + } + stack.push([tag, i]); + return forward(1); + } + if (__indexOf.call(EXPRESSION_START, tag) >= 0) { + stack.push([tag, i]); + return forward(1); } if (__indexOf.call(EXPRESSION_END, tag) >= 0) { - start = stack.pop(); - return 1; + while (inImplicit()) { + if (inImplicitCall()) { + endImplicitCall(); + } else if (inImplicitObject()) { + endImplicitObject(); + } else { + stack.pop(); + } + } + stack.pop(); } - if (!(tag === ':' && ((ago = this.tag(i - 2)) === ':' || ((_ref1 = stack[stack.length - 1]) != null ? _ref1[0] : void 0) !== '{'))) { - return 1; + if ((__indexOf.call(IMPLICIT_FUNC, tag) >= 0 && token.spaced && !token.stringEnd || tag === '?' && i > 0 && !tokens[i - 1].spaced) && (__indexOf.call(IMPLICIT_CALL, nextTag) >= 0 || __indexOf.call(IMPLICIT_UNSPACED_CALL, nextTag) >= 0 && !((_ref = tokens[i + 1]) != null ? _ref.spaced : void 0) && !((_ref1 = tokens[i + 1]) != null ? _ref1.newLine : void 0))) { + if (tag === '?') { + tag = token[0] = 'FUNC_EXIST'; + } + startImplicitCall(i + 1); + return forward(2); } - sameLine = true; - stack.push(['{']); - idx = ago === '@' ? i - 2 : i - 1; - while (this.tag(idx - 2) === 'HERECOMMENT') { - idx -= 2; + if (__indexOf.call(IMPLICIT_FUNC, tag) >= 0 && this.matchTags(i + 1, 'INDENT', null, ':') && !this.findTagsBackwards(i, ['CLASS', 'EXTENDS', 'IF', 'CATCH', 'SWITCH', 'LEADING_WHEN', 'FOR', 'WHILE', 'UNTIL'])) { + startImplicitCall(i + 1); + stack.push(['INDENT', i + 2]); + return forward(3); } - prevTag = this.tag(idx - 1); - startsLine = !prevTag || (__indexOf.call(LINEBREAKS, prevTag) >= 0); - value = new String('{'); - value.generated = true; - tok = this.generate('{', value, token[2]); - tokens.splice(idx, 0, tok); - this.detectEnd(i + 2, condition, action); - return 2; + if (tag === ':') { + if (this.tag(i - 2) === '@') { + s = i - 2; + } else { + s = i - 1; + } + while (this.tag(s - 2) === 'HERECOMMENT') { + s -= 2; + } + startsLine = s === 0 || (_ref2 = this.tag(s - 1), __indexOf.call(LINEBREAKS, _ref2) >= 0) || tokens[s - 1].newLine; + if (stackTop()) { + _ref3 = stackTop(), stackTag = _ref3[0], stackIdx = _ref3[1]; + if ((stackTag === '{' || stackTag === 'INDENT' && this.tag(stackIdx - 1) === '{') && (startsLine || this.tag(s - 1) === ',' || this.tag(s - 1) === '{')) { + return forward(1); + } + } + startImplicitObject(s, !!startsLine); + return forward(2); + } + if (inImplicitCall() && __indexOf.call(CALL_CLOSERS, tag) >= 0) { + if (prevTag === 'OUTDENT') { + endImplicitCall(); + return forward(1); + } + if (prevToken.newLine) { + endAllImplicitCalls(); + return forward(1); + } + } + if (inImplicitObject() && __indexOf.call(LINEBREAKS, tag) >= 0) { + stackTop()[2].sameLine = false; + } + if (__indexOf.call(IMPLICIT_END, tag) >= 0) { + while (inImplicit()) { + _ref4 = stackTop(), stackTag = _ref4[0], stackIdx = _ref4[1], (_ref5 = _ref4[2], sameLine = _ref5.sameLine, startsLine = _ref5.startsLine); + if (inImplicitCall() && prevTag !== ',') { + endImplicitCall(); + } else if (inImplicitObject() && sameLine && !startsLine) { + endImplicitObject(); + } else if (inImplicitObject() && tag === 'TERMINATOR' && prevTag !== ',' && !(startsLine && this.looksObjectish(i + 1))) { + endImplicitObject(); + } else { + break; + } + } + } + if (tag === ',' && !this.looksObjectish(i + 1) && inImplicitObject() && (nextTag !== 'TERMINATOR' || !this.looksObjectish(i + 2))) { + offset = nextTag === 'OUTDENT' ? 1 : 0; + while (inImplicitObject()) { + endImplicitObject(i + offset); + } + } + return forward(1); }); }; - Rewriter.prototype.addImplicitParentheses = function() { - var action, condition, noCall, seenControl, seenSingle; - noCall = seenSingle = seenControl = false; - condition = function(token, i) { - var post, tag, _ref, _ref1; - tag = token[0]; - if (!seenSingle && token.fromThen) return true; - if (tag === 'IF' || tag === 'ELSE' || tag === 'CATCH' || tag === '->' || tag === '=>' || tag === 'CLASS') { - seenSingle = true; - } - if (tag === 'IF' || tag === 'ELSE' || tag === 'SWITCH' || tag === 'TRY' || tag === '=') { - seenControl = true; - } - if ((tag === '.' || tag === '?.' || tag === '::') && this.tag(i - 1) === 'OUTDENT') { - return true; - } - return !token.generated && this.tag(i - 1) !== ',' && (__indexOf.call(IMPLICIT_END, tag) >= 0 || (tag === 'INDENT' && !seenControl)) && (tag !== 'INDENT' || (((_ref = this.tag(i - 2)) !== 'CLASS' && _ref !== 'EXTENDS') && (_ref1 = this.tag(i - 1), __indexOf.call(IMPLICIT_BLOCK, _ref1) < 0) && !((post = this.tokens[i + 1]) && post.generated && post[0] === '{'))); - }; - action = function(token, i) { - return this.tokens.splice(i, 0, this.generate('CALL_END', ')', token[2])); - }; + Rewriter.prototype.addLocationDataToGeneratedTokens = function() { return this.scanTokens(function(token, i, tokens) { - var callObject, current, next, prev, tag, _ref, _ref1, _ref2; - tag = token[0]; - if (tag === 'CLASS' || tag === 'IF' || tag === 'FOR' || tag === 'WHILE') { - noCall = true; - } - _ref = tokens.slice(i - 1, (i + 1) + 1 || 9e9), prev = _ref[0], current = _ref[1], next = _ref[2]; - callObject = !noCall && tag === 'INDENT' && next && next.generated && next[0] === '{' && prev && (_ref1 = prev[0], __indexOf.call(IMPLICIT_FUNC, _ref1) >= 0); - seenSingle = false; - seenControl = false; - if (__indexOf.call(LINEBREAKS, tag) >= 0) noCall = false; - if (prev && !prev.spaced && tag === '?') token.call = true; - if (token.fromThen) return 1; - if (!(callObject || (prev != null ? prev.spaced : void 0) && (prev.call || (_ref2 = prev[0], __indexOf.call(IMPLICIT_FUNC, _ref2) >= 0)) && (__indexOf.call(IMPLICIT_CALL, tag) >= 0 || !(token.spaced || token.newLine) && __indexOf.call(IMPLICIT_UNSPACED_CALL, tag) >= 0))) { + var column, line, nextLocation, prevLocation, _ref, _ref1; + if (token[2]) { return 1; } - tokens.splice(i, 0, this.generate('CALL_START', '(', token[2])); - this.detectEnd(i + 1, condition, action); - if (prev[0] === '?') prev[0] = 'FUNC_EXIST'; - return 2; + if (!(token.generated || token.explicit)) { + return 1; + } + if (token[0] === '{' && (nextLocation = (_ref = tokens[i + 1]) != null ? _ref[2] : void 0)) { + line = nextLocation.first_line, column = nextLocation.first_column; + } else if (prevLocation = (_ref1 = tokens[i - 1]) != null ? _ref1[2] : void 0) { + line = prevLocation.last_line, column = prevLocation.last_column; + } else { + line = column = 0; + } + token[2] = { + first_line: line, + first_column: column, + last_line: line, + last_column: column + }; + return 1; }); }; - Rewriter.prototype.addImplicitIndentation = function() { + Rewriter.prototype.normalizeLines = function() { var action, condition, indent, outdent, starter; starter = indent = outdent = null; condition = function(token, i) { - var _ref; - return token[1] !== ';' && (_ref = token[0], __indexOf.call(SINGLE_CLOSERS, _ref) >= 0) && !(token[0] === 'ELSE' && (starter !== 'IF' && starter !== 'THEN')); + var _ref, _ref1, _ref2, _ref3; + return token[1] !== ';' && (_ref = token[0], __indexOf.call(SINGLE_CLOSERS, _ref) >= 0) && !(token[0] === 'TERMINATOR' && (_ref1 = this.tag(i + 1), __indexOf.call(EXPRESSION_CLOSE, _ref1) >= 0)) && !(token[0] === 'ELSE' && starter !== 'THEN') && !(((_ref2 = token[0]) === 'CATCH' || _ref2 === 'FINALLY') && (starter === '->' || starter === '=>')) || (_ref3 = token[0], __indexOf.call(CALL_CLOSERS, _ref3) >= 0) && this.tokens[i - 1].newLine; }; action = function(token, i) { return this.tokens.splice((this.tag(i - 1) === ',' ? i - 1 : i), 0, outdent); }; return this.scanTokens(function(token, i, tokens) { - var tag, _ref, _ref1; + var j, tag, _i, _ref, _ref1, _ref2; tag = token[0]; - if (tag === 'TERMINATOR' && this.tag(i + 1) === 'THEN') { - tokens.splice(i, 1); - return 0; + if (tag === 'TERMINATOR') { + if (this.tag(i + 1) === 'ELSE' && this.tag(i - 1) !== 'OUTDENT') { + tokens.splice.apply(tokens, [i, 1].concat(__slice.call(this.indentation()))); + return 1; + } + if (_ref = this.tag(i + 1), __indexOf.call(EXPRESSION_CLOSE, _ref) >= 0) { + tokens.splice(i, 1); + return 0; + } } - if (tag === 'ELSE' && this.tag(i - 1) !== 'OUTDENT') { - tokens.splice.apply(tokens, [i, 0].concat(__slice.call(this.indentation(token)))); - return 2; - } - if (tag === 'CATCH' && ((_ref = this.tag(i + 2)) === 'OUTDENT' || _ref === 'TERMINATOR' || _ref === 'FINALLY')) { - tokens.splice.apply(tokens, [i + 2, 0].concat(__slice.call(this.indentation(token)))); - return 4; + if (tag === 'CATCH') { + for (j = _i = 1; _i <= 2; j = ++_i) { + if (!((_ref1 = this.tag(i + j)) === 'OUTDENT' || _ref1 === 'TERMINATOR' || _ref1 === 'FINALLY')) { + continue; + } + tokens.splice.apply(tokens, [i + j, 0].concat(__slice.call(this.indentation()))); + return 2 + j; + } } if (__indexOf.call(SINGLE_LINERS, tag) >= 0 && this.tag(i + 1) !== 'INDENT' && !(tag === 'ELSE' && this.tag(i + 1) === 'IF')) { starter = tag; - _ref1 = this.indentation(token, true), indent = _ref1[0], outdent = _ref1[1]; - if (starter === 'THEN') indent.fromThen = true; + _ref2 = this.indentation(true), indent = _ref2[0], outdent = _ref2[1]; + if (starter === 'THEN') { + indent.fromThen = true; + } tokens.splice(i + 1, 0, indent); this.detectEnd(i + 2, condition, action); - if (tag === 'THEN') tokens.splice(i, 1); + if (tag === 'THEN') { + tokens.splice(i, 1); + } return 1; } return 1; @@ -4307,8 +3401,10 @@ define('ace/mode/coffee/rewriter', ['require', 'exports', 'module' ], function(r var action, condition, original; original = null; condition = function(token, i) { - var _ref; - return (_ref = token[0]) === 'TERMINATOR' || _ref === 'INDENT'; + var prevTag, tag; + tag = token[0]; + prevTag = this.tokens[i - 1][0]; + return tag === 'TERMINATOR' || (tag === 'INDENT' && __indexOf.call(SINGLE_LINERS, prevTag) < 0); }; action = function(token, i) { if (token[0] !== 'INDENT' || (token.generated && !token.fromThen)) { @@ -4316,28 +3412,32 @@ define('ace/mode/coffee/rewriter', ['require', 'exports', 'module' ], function(r } }; return this.scanTokens(function(token, i) { - if (token[0] !== 'IF') return 1; + if (token[0] !== 'IF') { + return 1; + } original = token; this.detectEnd(i + 1, condition, action); return 1; }); }; - Rewriter.prototype.indentation = function(token, implicit) { + Rewriter.prototype.indentation = function(implicit) { var indent, outdent; - if (implicit == null) implicit = false; - indent = ['INDENT', 2, token[2]]; - outdent = ['OUTDENT', 2, token[2]]; - if (implicit) indent.generated = outdent.generated = true; + if (implicit == null) { + implicit = false; + } + indent = ['INDENT', 2]; + outdent = ['OUTDENT', 2]; + if (implicit) { + indent.generated = outdent.generated = true; + } + if (!implicit) { + indent.explicit = outdent.explicit = true; + } return [indent, outdent]; }; - Rewriter.prototype.generate = function(tag, value, line) { - var tok; - tok = [tag, value, line]; - tok.generated = true; - return tok; - }; + Rewriter.prototype.generate = generate; Rewriter.prototype.tag = function(i) { var _ref; @@ -4362,16 +3462,14 @@ define('ace/mode/coffee/rewriter', ['require', 'exports', 'module' ], function(r EXPRESSION_END.push(INVERSES[left] = rite); } - EXPRESSION_CLOSE = ['CATCH', 'WHEN', 'ELSE', 'FINALLY'].concat(EXPRESSION_END); + EXPRESSION_CLOSE = ['CATCH', 'THEN', 'ELSE', 'FINALLY'].concat(EXPRESSION_END); IMPLICIT_FUNC = ['IDENTIFIER', 'SUPER', ')', 'CALL_END', ']', 'INDEX_END', '@', 'THIS']; - IMPLICIT_CALL = ['IDENTIFIER', 'NUMBER', 'STRING', 'JS', 'REGEX', 'NEW', 'PARAM_START', 'CLASS', 'IF', 'TRY', 'SWITCH', 'THIS', 'BOOL', 'UNARY', 'SUPER', '@', '->', '=>', '[', '(', '{', '--', '++']; + IMPLICIT_CALL = ['IDENTIFIER', 'NUMBER', 'STRING', 'JS', 'REGEX', 'NEW', 'PARAM_START', 'CLASS', 'IF', 'TRY', 'SWITCH', 'THIS', 'BOOL', 'NULL', 'UNDEFINED', 'UNARY', 'SUPER', 'THROW', '@', '->', '=>', '[', '(', '{', '--', '++']; IMPLICIT_UNSPACED_CALL = ['+', '-']; - IMPLICIT_BLOCK = ['->', '=>', '{', '[', ',']; - IMPLICIT_END = ['POST_IF', 'FOR', 'WHILE', 'UNTIL', 'WHEN', 'BY', 'LOOP', 'TERMINATOR']; SINGLE_LINERS = ['ELSE', '->', '=>', 'TRY', 'FINALLY', 'THEN']; @@ -4380,37 +3478,14 @@ define('ace/mode/coffee/rewriter', ['require', 'exports', 'module' ], function(r LINEBREAKS = ['TERMINATOR', 'INDENT', 'OUTDENT']; + CALL_CLOSERS = ['.', '?.', '::', '?::']; + }); -/* - * Copyright (c) 2011 Jeremy Ashkenas - * - * Permission is hereby granted, free of charge, to any person - * obtaining a copy of this software and associated documentation - * files (the "Software"), to deal in the Software without - * restriction, including without limitation the rights to use, - * copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the - * Software is furnished to do so, subject to the following - * conditions: - * - * The above copyright notice and this permission notice shall be - * included in all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, - * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES - * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND - * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT - * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, - * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING - * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR - * OTHER DEALINGS IN THE SOFTWARE. - */ -define('ace/mode/coffee/helpers', ['require', 'exports', 'module' ], function(require, exports, module) { -// Generated by CoffeeScript 1.2.1-pre +ace.define('ace/mode/coffee/helpers', ['require', 'exports', 'module' ], function(require, exports, module) { - var extend, flatten; + var buildLocationData, extend, flatten, last, repeat, syntaxErrorToString, _ref; exports.starts = function(string, literal, start) { return literal === string.substr(start, literal.length); @@ -4422,12 +3497,27 @@ define('ace/mode/coffee/helpers', ['require', 'exports', 'module' ], function(re return literal === string.substr(string.length - len - (back || 0), len); }; + exports.repeat = repeat = function(str, n) { + var res; + res = ''; + while (n > 0) { + if (n & 1) { + res += str; + } + n >>>= 1; + str += str; + } + return res; + }; + exports.compact = function(array) { var item, _i, _len, _results; _results = []; for (_i = 0, _len = array.length; _i < _len; _i++) { item = array[_i]; - if (item) _results.push(item); + if (item) { + _results.push(item); + } } return _results; }; @@ -4435,7 +3525,9 @@ define('ace/mode/coffee/helpers', ['require', 'exports', 'module' ], function(re exports.count = function(string, substr) { var num, pos; num = pos = 0; - if (!substr.length) return 1 / 0; + if (!substr.length) { + return 1 / 0; + } while (pos = 1 + string.indexOf(substr, pos)) { num++; } @@ -4476,61 +3568,188 @@ define('ace/mode/coffee/helpers', ['require', 'exports', 'module' ], function(re return val; }; - exports.last = function(array, back) { + exports.last = last = function(array, back) { return array[array.length - (back || 0) - 1]; }; + exports.some = (_ref = Array.prototype.some) != null ? _ref : function(fn) { + var e, _i, _len; + for (_i = 0, _len = this.length; _i < _len; _i++) { + e = this[_i]; + if (fn(e)) { + return true; + } + } + return false; + }; + + exports.invertLiterate = function(code) { + var line, lines, maybe_code; + maybe_code = true; + lines = (function() { + var _i, _len, _ref1, _results; + _ref1 = code.split('\n'); + _results = []; + for (_i = 0, _len = _ref1.length; _i < _len; _i++) { + line = _ref1[_i]; + if (maybe_code && /^([ ]{4}|[ ]{0,3}\t)/.test(line)) { + _results.push(line); + } else if (maybe_code = /^\s*$/.test(line)) { + _results.push(line); + } else { + _results.push('# ' + line); + } + } + return _results; + })(); + return lines.join('\n'); + }; + + buildLocationData = function(first, last) { + if (!last) { + return first; + } else { + return { + first_line: first.first_line, + first_column: first.first_column, + last_line: last.last_line, + last_column: last.last_column + }; + } + }; + + exports.addLocationDataFn = function(first, last) { + return function(obj) { + if (((typeof obj) === 'object') && (!!obj['updateLocationDataIfMissing'])) { + obj.updateLocationDataIfMissing(buildLocationData(first, last)); + } + return obj; + }; + }; + + exports.locationDataToString = function(obj) { + var locationData; + if (("2" in obj) && ("first_line" in obj[2])) { + locationData = obj[2]; + } else if ("first_line" in obj) { + locationData = obj; + } + if (locationData) { + return ("" + (locationData.first_line + 1) + ":" + (locationData.first_column + 1) + "-") + ("" + (locationData.last_line + 1) + ":" + (locationData.last_column + 1)); + } else { + return "No location data"; + } + }; + + exports.baseFileName = function(file, stripExt, useWinPathSep) { + var parts, pathSep; + if (stripExt == null) { + stripExt = false; + } + if (useWinPathSep == null) { + useWinPathSep = false; + } + pathSep = useWinPathSep ? /\\|\// : /\//; + parts = file.split(pathSep); + file = parts[parts.length - 1]; + if (!(stripExt && file.indexOf('.') >= 0)) { + return file; + } + parts = file.split('.'); + parts.pop(); + if (parts[parts.length - 1] === 'coffee' && parts.length > 1) { + parts.pop(); + } + return parts.join('.'); + }; + + exports.isCoffee = function(file) { + return /\.((lit)?coffee|coffee\.md)$/.test(file); + }; + + exports.isLiterate = function(file) { + return /\.(litcoffee|coffee\.md)$/.test(file); + }; + + exports.throwSyntaxError = function(message, location) { + var error; + if (location.last_line == null) { + location.last_line = location.first_line; + } + if (location.last_column == null) { + location.last_column = location.first_column; + } + error = new SyntaxError(message); + error.location = location; + error.toString = syntaxErrorToString; + error.stack = error.toString(); + throw error; + }; + + exports.updateSyntaxError = function(error, code, filename) { + if (error.toString === syntaxErrorToString) { + error.code || (error.code = code); + error.filename || (error.filename = filename); + error.stack = error.toString(); + } + return error; + }; + + syntaxErrorToString = function() { + var codeLine, colorize, colorsEnabled, end, filename, first_column, first_line, last_column, last_line, marker, start, _ref1, _ref2; + if (!(this.code && this.location)) { + return Error.prototype.toString.call(this); + } + _ref1 = this.location, first_line = _ref1.first_line, first_column = _ref1.first_column, last_line = _ref1.last_line, last_column = _ref1.last_column; + if (last_line == null) { + last_line = first_line; + } + if (last_column == null) { + last_column = first_column; + } + filename = this.filename || '[stdin]'; + codeLine = this.code.split('\n')[first_line]; + start = first_column; + end = first_line === last_line ? last_column + 1 : codeLine.length; + marker = repeat(' ', start) + repeat('^', end - start); + if (typeof process !== "undefined" && process !== null) { + colorsEnabled = process.stdout.isTTY && !process.env.NODE_DISABLE_COLORS; + } + if ((_ref2 = this.colorful) != null ? _ref2 : colorsEnabled) { + colorize = function(str) { + return "\x1B[1;31m" + str + "\x1B[0m"; + }; + codeLine = codeLine.slice(0, start) + colorize(codeLine.slice(start, end)) + codeLine.slice(end); + marker = colorize(marker); + } + return "" + filename + ":" + (first_line + 1) + ":" + (first_column + 1) + ": error: " + this.message + "\n" + codeLine + "\n" + marker; + }; + }); -/* - * Copyright (c) 2011 Jeremy Ashkenas - * - * Permission is hereby granted, free of charge, to any person - * obtaining a copy of this software and associated documentation - * files (the "Software"), to deal in the Software without - * restriction, including without limitation the rights to use, - * copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the - * Software is furnished to do so, subject to the following - * conditions: - * - * The above copyright notice and this permission notice shall be - * included in all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, - * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES - * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND - * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT - * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, - * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING - * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR - * OTHER DEALINGS IN THE SOFTWARE. - */ -define('ace/mode/coffee/parser', ['require', 'exports', 'module' ], function(require, exports, module) { -/* Jison generated parser */ +ace.define('ace/mode/coffee/parser', ['require', 'exports', 'module' ], function(require, exports, module) { -undefined var parser = {trace: function trace() { }, yy: {}, -symbols_: {"error":2,"Root":3,"Body":4,"Block":5,"TERMINATOR":6,"Line":7,"Expression":8,"Statement":9,"Return":10,"Comment":11,"STATEMENT":12,"Value":13,"Invocation":14,"Code":15,"Operation":16,"Assign":17,"If":18,"Try":19,"While":20,"For":21,"Switch":22,"Class":23,"Throw":24,"INDENT":25,"OUTDENT":26,"Identifier":27,"IDENTIFIER":28,"AlphaNumeric":29,"NUMBER":30,"STRING":31,"Literal":32,"JS":33,"REGEX":34,"DEBUGGER":35,"BOOL":36,"Assignable":37,"=":38,"AssignObj":39,"ObjAssignable":40,":":41,"ThisProperty":42,"RETURN":43,"HERECOMMENT":44,"PARAM_START":45,"ParamList":46,"PARAM_END":47,"FuncGlyph":48,"->":49,"=>":50,"OptComma":51,",":52,"Param":53,"ParamVar":54,"...":55,"Array":56,"Object":57,"Splat":58,"SimpleAssignable":59,"Accessor":60,"Parenthetical":61,"Range":62,"This":63,".":64,"?.":65,"::":66,"Index":67,"INDEX_START":68,"IndexValue":69,"INDEX_END":70,"INDEX_SOAK":71,"Slice":72,"{":73,"AssignList":74,"}":75,"CLASS":76,"EXTENDS":77,"OptFuncExist":78,"Arguments":79,"SUPER":80,"FUNC_EXIST":81,"CALL_START":82,"CALL_END":83,"ArgList":84,"THIS":85,"@":86,"[":87,"]":88,"RangeDots":89,"..":90,"Arg":91,"SimpleArgs":92,"TRY":93,"Catch":94,"FINALLY":95,"CATCH":96,"THROW":97,"(":98,")":99,"WhileSource":100,"WHILE":101,"WHEN":102,"UNTIL":103,"Loop":104,"LOOP":105,"ForBody":106,"FOR":107,"ForStart":108,"ForSource":109,"ForVariables":110,"OWN":111,"ForValue":112,"FORIN":113,"FOROF":114,"BY":115,"SWITCH":116,"Whens":117,"ELSE":118,"When":119,"LEADING_WHEN":120,"IfBlock":121,"IF":122,"POST_IF":123,"UNARY":124,"-":125,"+":126,"--":127,"++":128,"?":129,"MATH":130,"SHIFT":131,"COMPARE":132,"LOGIC":133,"RELATION":134,"COMPOUND_ASSIGN":135,"$accept":0,"$end":1}, -terminals_: {2:"error",6:"TERMINATOR",12:"STATEMENT",25:"INDENT",26:"OUTDENT",28:"IDENTIFIER",30:"NUMBER",31:"STRING",33:"JS",34:"REGEX",35:"DEBUGGER",36:"BOOL",38:"=",41:":",43:"RETURN",44:"HERECOMMENT",45:"PARAM_START",47:"PARAM_END",49:"->",50:"=>",52:",",55:"...",64:".",65:"?.",66:"::",68:"INDEX_START",70:"INDEX_END",71:"INDEX_SOAK",73:"{",75:"}",76:"CLASS",77:"EXTENDS",80:"SUPER",81:"FUNC_EXIST",82:"CALL_START",83:"CALL_END",85:"THIS",86:"@",87:"[",88:"]",90:"..",93:"TRY",95:"FINALLY",96:"CATCH",97:"THROW",98:"(",99:")",101:"WHILE",102:"WHEN",103:"UNTIL",105:"LOOP",107:"FOR",111:"OWN",113:"FORIN",114:"FOROF",115:"BY",116:"SWITCH",118:"ELSE",120:"LEADING_WHEN",122:"IF",123:"POST_IF",124:"UNARY",125:"-",126:"+",127:"--",128:"++",129:"?",130:"MATH",131:"SHIFT",132:"COMPARE",133:"LOGIC",134:"RELATION",135:"COMPOUND_ASSIGN"}, -productions_: [0,[3,0],[3,1],[3,2],[4,1],[4,3],[4,2],[7,1],[7,1],[9,1],[9,1],[9,1],[8,1],[8,1],[8,1],[8,1],[8,1],[8,1],[8,1],[8,1],[8,1],[8,1],[8,1],[8,1],[5,2],[5,3],[27,1],[29,1],[29,1],[32,1],[32,1],[32,1],[32,1],[32,1],[17,3],[17,4],[17,5],[39,1],[39,3],[39,5],[39,1],[40,1],[40,1],[40,1],[10,2],[10,1],[11,1],[15,5],[15,2],[48,1],[48,1],[51,0],[51,1],[46,0],[46,1],[46,3],[53,1],[53,2],[53,3],[54,1],[54,1],[54,1],[54,1],[58,2],[59,1],[59,2],[59,2],[59,1],[37,1],[37,1],[37,1],[13,1],[13,1],[13,1],[13,1],[13,1],[60,2],[60,2],[60,2],[60,1],[60,1],[67,3],[67,2],[69,1],[69,1],[57,4],[74,0],[74,1],[74,3],[74,4],[74,6],[23,1],[23,2],[23,3],[23,4],[23,2],[23,3],[23,4],[23,5],[14,3],[14,3],[14,1],[14,2],[78,0],[78,1],[79,2],[79,4],[63,1],[63,1],[42,2],[56,2],[56,4],[89,1],[89,1],[62,5],[72,3],[72,2],[72,2],[72,1],[84,1],[84,3],[84,4],[84,4],[84,6],[91,1],[91,1],[92,1],[92,3],[19,2],[19,3],[19,4],[19,5],[94,3],[24,2],[61,3],[61,5],[100,2],[100,4],[100,2],[100,4],[20,2],[20,2],[20,2],[20,1],[104,2],[104,2],[21,2],[21,2],[21,2],[106,2],[106,2],[108,2],[108,3],[112,1],[112,1],[112,1],[110,1],[110,3],[109,2],[109,2],[109,4],[109,4],[109,4],[109,6],[109,6],[22,5],[22,7],[22,4],[22,6],[117,1],[117,2],[119,3],[119,4],[121,3],[121,5],[18,1],[18,3],[18,3],[18,3],[16,2],[16,2],[16,2],[16,2],[16,2],[16,2],[16,2],[16,2],[16,3],[16,3],[16,3],[16,3],[16,3],[16,3],[16,3],[16,3],[16,5],[16,3]], -performAction: function anonymous(yytext,yyleng,yylineno,yy,yystate,$$,_$) { +symbols_: {"error":2,"Root":3,"Body":4,"Line":5,"TERMINATOR":6,"Expression":7,"Statement":8,"Return":9,"Comment":10,"STATEMENT":11,"Value":12,"Invocation":13,"Code":14,"Operation":15,"Assign":16,"If":17,"Try":18,"While":19,"For":20,"Switch":21,"Class":22,"Throw":23,"Block":24,"INDENT":25,"OUTDENT":26,"Identifier":27,"IDENTIFIER":28,"AlphaNumeric":29,"NUMBER":30,"STRING":31,"Literal":32,"JS":33,"REGEX":34,"DEBUGGER":35,"UNDEFINED":36,"NULL":37,"BOOL":38,"Assignable":39,"=":40,"AssignObj":41,"ObjAssignable":42,":":43,"ThisProperty":44,"RETURN":45,"HERECOMMENT":46,"PARAM_START":47,"ParamList":48,"PARAM_END":49,"FuncGlyph":50,"->":51,"=>":52,"OptComma":53,",":54,"Param":55,"ParamVar":56,"...":57,"Array":58,"Object":59,"Splat":60,"SimpleAssignable":61,"Accessor":62,"Parenthetical":63,"Range":64,"This":65,".":66,"?.":67,"::":68,"?::":69,"Index":70,"INDEX_START":71,"IndexValue":72,"INDEX_END":73,"INDEX_SOAK":74,"Slice":75,"{":76,"AssignList":77,"}":78,"CLASS":79,"EXTENDS":80,"OptFuncExist":81,"Arguments":82,"SUPER":83,"FUNC_EXIST":84,"CALL_START":85,"CALL_END":86,"ArgList":87,"THIS":88,"@":89,"[":90,"]":91,"RangeDots":92,"..":93,"Arg":94,"SimpleArgs":95,"TRY":96,"Catch":97,"FINALLY":98,"CATCH":99,"THROW":100,"(":101,")":102,"WhileSource":103,"WHILE":104,"WHEN":105,"UNTIL":106,"Loop":107,"LOOP":108,"ForBody":109,"FOR":110,"ForStart":111,"ForSource":112,"ForVariables":113,"OWN":114,"ForValue":115,"FORIN":116,"FOROF":117,"BY":118,"SWITCH":119,"Whens":120,"ELSE":121,"When":122,"LEADING_WHEN":123,"IfBlock":124,"IF":125,"POST_IF":126,"UNARY":127,"-":128,"+":129,"--":130,"++":131,"?":132,"MATH":133,"SHIFT":134,"COMPARE":135,"LOGIC":136,"RELATION":137,"COMPOUND_ASSIGN":138,"$accept":0,"$end":1}, +terminals_: {2:"error",6:"TERMINATOR",11:"STATEMENT",25:"INDENT",26:"OUTDENT",28:"IDENTIFIER",30:"NUMBER",31:"STRING",33:"JS",34:"REGEX",35:"DEBUGGER",36:"UNDEFINED",37:"NULL",38:"BOOL",40:"=",43:":",45:"RETURN",46:"HERECOMMENT",47:"PARAM_START",49:"PARAM_END",51:"->",52:"=>",54:",",57:"...",66:".",67:"?.",68:"::",69:"?::",71:"INDEX_START",73:"INDEX_END",74:"INDEX_SOAK",76:"{",78:"}",79:"CLASS",80:"EXTENDS",83:"SUPER",84:"FUNC_EXIST",85:"CALL_START",86:"CALL_END",88:"THIS",89:"@",90:"[",91:"]",93:"..",96:"TRY",98:"FINALLY",99:"CATCH",100:"THROW",101:"(",102:")",104:"WHILE",105:"WHEN",106:"UNTIL",108:"LOOP",110:"FOR",114:"OWN",116:"FORIN",117:"FOROF",118:"BY",119:"SWITCH",121:"ELSE",123:"LEADING_WHEN",125:"IF",126:"POST_IF",127:"UNARY",128:"-",129:"+",130:"--",131:"++",132:"?",133:"MATH",134:"SHIFT",135:"COMPARE",136:"LOGIC",137:"RELATION",138:"COMPOUND_ASSIGN"}, +productions_: [0,[3,0],[3,1],[4,1],[4,3],[4,2],[5,1],[5,1],[8,1],[8,1],[8,1],[7,1],[7,1],[7,1],[7,1],[7,1],[7,1],[7,1],[7,1],[7,1],[7,1],[7,1],[7,1],[24,2],[24,3],[27,1],[29,1],[29,1],[32,1],[32,1],[32,1],[32,1],[32,1],[32,1],[32,1],[16,3],[16,4],[16,5],[41,1],[41,3],[41,5],[41,1],[42,1],[42,1],[42,1],[9,2],[9,1],[10,1],[14,5],[14,2],[50,1],[50,1],[53,0],[53,1],[48,0],[48,1],[48,3],[48,4],[48,6],[55,1],[55,2],[55,3],[56,1],[56,1],[56,1],[56,1],[60,2],[61,1],[61,2],[61,2],[61,1],[39,1],[39,1],[39,1],[12,1],[12,1],[12,1],[12,1],[12,1],[62,2],[62,2],[62,2],[62,2],[62,1],[62,1],[70,3],[70,2],[72,1],[72,1],[59,4],[77,0],[77,1],[77,3],[77,4],[77,6],[22,1],[22,2],[22,3],[22,4],[22,2],[22,3],[22,4],[22,5],[13,3],[13,3],[13,1],[13,2],[81,0],[81,1],[82,2],[82,4],[65,1],[65,1],[44,2],[58,2],[58,4],[92,1],[92,1],[64,5],[75,3],[75,2],[75,2],[75,1],[87,1],[87,3],[87,4],[87,4],[87,6],[94,1],[94,1],[95,1],[95,3],[18,2],[18,3],[18,4],[18,5],[97,3],[97,3],[97,2],[23,2],[63,3],[63,5],[103,2],[103,4],[103,2],[103,4],[19,2],[19,2],[19,2],[19,1],[107,2],[107,2],[20,2],[20,2],[20,2],[109,2],[109,2],[111,2],[111,3],[115,1],[115,1],[115,1],[115,1],[113,1],[113,3],[112,2],[112,2],[112,4],[112,4],[112,4],[112,6],[112,6],[21,5],[21,7],[21,4],[21,6],[120,1],[120,2],[122,3],[122,4],[124,3],[124,5],[17,1],[17,3],[17,3],[17,3],[15,2],[15,2],[15,2],[15,2],[15,2],[15,2],[15,2],[15,2],[15,3],[15,3],[15,3],[15,3],[15,3],[15,3],[15,3],[15,3],[15,5],[15,4],[15,3]], +performAction: function anonymous(yytext, yyleng, yylineno, yy, yystate /* action[1] */, $$ /* vstack */, _$ /* lstack */) { var $0 = $$.length - 1; switch (yystate) { -case 1:return this.$ = new yy.Block; +case 1:return this.$ = yy.addLocationDataFn(_$[$0], _$[$0])(new yy.Block); break; case 2:return this.$ = $$[$0]; break; -case 3:return this.$ = $$[$0-1]; +case 3:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])(yy.Block.wrap([$$[$0]])); break; -case 4:this.$ = yy.Block.wrap([$$[$0]]); +case 4:this.$ = yy.addLocationDataFn(_$[$0-2], _$[$0])($$[$0-2].push($$[$0])); break; -case 5:this.$ = $$[$0-2].push($$[$0]); +case 5:this.$ = $$[$0-1]; break; -case 6:this.$ = $$[$0-1]; +case 6:this.$ = $$[$0]; break; case 7:this.$ = $$[$0]; break; @@ -4538,9 +3757,9 @@ case 8:this.$ = $$[$0]; break; case 9:this.$ = $$[$0]; break; -case 10:this.$ = $$[$0]; +case 10:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])(new yy.Literal($$[$0])); break; -case 11:this.$ = new yy.Literal($$[$0]); +case 11:this.$ = $$[$0]; break; case 12:this.$ = $$[$0]; break; @@ -4564,46 +3783,41 @@ case 21:this.$ = $$[$0]; break; case 22:this.$ = $$[$0]; break; -case 23:this.$ = $$[$0]; +case 23:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])(new yy.Block); break; -case 24:this.$ = new yy.Block; +case 24:this.$ = yy.addLocationDataFn(_$[$0-2], _$[$0])($$[$0-1]); break; -case 25:this.$ = $$[$0-1]; +case 25:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])(new yy.Literal($$[$0])); break; -case 26:this.$ = new yy.Literal($$[$0]); +case 26:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])(new yy.Literal($$[$0])); break; -case 27:this.$ = new yy.Literal($$[$0]); +case 27:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])(new yy.Literal($$[$0])); break; -case 28:this.$ = new yy.Literal($$[$0]); +case 28:this.$ = $$[$0]; break; -case 29:this.$ = $$[$0]; +case 29:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])(new yy.Literal($$[$0])); break; -case 30:this.$ = new yy.Literal($$[$0]); +case 30:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])(new yy.Literal($$[$0])); break; -case 31:this.$ = new yy.Literal($$[$0]); +case 31:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])(new yy.Literal($$[$0])); break; -case 32:this.$ = new yy.Literal($$[$0]); +case 32:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])(new yy.Undefined); break; -case 33:this.$ = (function () { - var val; - val = new yy.Literal($$[$0]); - if ($$[$0] === 'undefined') val.isUndefined = true; - return val; - }()); +case 33:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])(new yy.Null); break; -case 34:this.$ = new yy.Assign($$[$0-2], $$[$0]); +case 34:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])(new yy.Bool($$[$0])); break; -case 35:this.$ = new yy.Assign($$[$0-3], $$[$0]); +case 35:this.$ = yy.addLocationDataFn(_$[$0-2], _$[$0])(new yy.Assign($$[$0-2], $$[$0])); break; -case 36:this.$ = new yy.Assign($$[$0-4], $$[$0-1]); +case 36:this.$ = yy.addLocationDataFn(_$[$0-3], _$[$0])(new yy.Assign($$[$0-3], $$[$0])); break; -case 37:this.$ = new yy.Value($$[$0]); +case 37:this.$ = yy.addLocationDataFn(_$[$0-4], _$[$0])(new yy.Assign($$[$0-4], $$[$0-1])); break; -case 38:this.$ = new yy.Assign(new yy.Value($$[$0-2]), $$[$0], 'object'); +case 38:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])(new yy.Value($$[$0])); break; -case 39:this.$ = new yy.Assign(new yy.Value($$[$0-4]), $$[$0-1], 'object'); +case 39:this.$ = yy.addLocationDataFn(_$[$0-2], _$[$0])(new yy.Assign(yy.addLocationDataFn(_$[$0-2])(new yy.Value($$[$0-2])), $$[$0], 'object')); break; -case 40:this.$ = $$[$0]; +case 40:this.$ = yy.addLocationDataFn(_$[$0-4], _$[$0])(new yy.Assign(yy.addLocationDataFn(_$[$0-4])(new yy.Value($$[$0-4])), $$[$0-1], 'object')); break; case 41:this.$ = $$[$0]; break; @@ -4611,388 +3825,416 @@ case 42:this.$ = $$[$0]; break; case 43:this.$ = $$[$0]; break; -case 44:this.$ = new yy.Return($$[$0]); +case 44:this.$ = $$[$0]; break; -case 45:this.$ = new yy.Return; +case 45:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])(new yy.Return($$[$0])); break; -case 46:this.$ = new yy.Comment($$[$0]); +case 46:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])(new yy.Return); break; -case 47:this.$ = new yy.Code($$[$0-3], $$[$0], $$[$0-1]); +case 47:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])(new yy.Comment($$[$0])); break; -case 48:this.$ = new yy.Code([], $$[$0], $$[$0-1]); +case 48:this.$ = yy.addLocationDataFn(_$[$0-4], _$[$0])(new yy.Code($$[$0-3], $$[$0], $$[$0-1])); break; -case 49:this.$ = 'func'; +case 49:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])(new yy.Code([], $$[$0], $$[$0-1])); break; -case 50:this.$ = 'boundfunc'; +case 50:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])('func'); break; -case 51:this.$ = $$[$0]; +case 51:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])('boundfunc'); break; case 52:this.$ = $$[$0]; break; -case 53:this.$ = []; +case 53:this.$ = $$[$0]; break; -case 54:this.$ = [$$[$0]]; +case 54:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])([]); break; -case 55:this.$ = $$[$0-2].concat($$[$0]); +case 55:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])([$$[$0]]); break; -case 56:this.$ = new yy.Param($$[$0]); +case 56:this.$ = yy.addLocationDataFn(_$[$0-2], _$[$0])($$[$0-2].concat($$[$0])); break; -case 57:this.$ = new yy.Param($$[$0-1], null, true); +case 57:this.$ = yy.addLocationDataFn(_$[$0-3], _$[$0])($$[$0-3].concat($$[$0])); break; -case 58:this.$ = new yy.Param($$[$0-2], $$[$0]); +case 58:this.$ = yy.addLocationDataFn(_$[$0-5], _$[$0])($$[$0-5].concat($$[$0-2])); break; -case 59:this.$ = $$[$0]; +case 59:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])(new yy.Param($$[$0])); break; -case 60:this.$ = $$[$0]; +case 60:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])(new yy.Param($$[$0-1], null, true)); break; -case 61:this.$ = $$[$0]; +case 61:this.$ = yy.addLocationDataFn(_$[$0-2], _$[$0])(new yy.Param($$[$0-2], $$[$0])); break; case 62:this.$ = $$[$0]; break; -case 63:this.$ = new yy.Splat($$[$0-1]); +case 63:this.$ = $$[$0]; break; -case 64:this.$ = new yy.Value($$[$0]); +case 64:this.$ = $$[$0]; break; -case 65:this.$ = $$[$0-1].add($$[$0]); +case 65:this.$ = $$[$0]; break; -case 66:this.$ = new yy.Value($$[$0-1], [].concat($$[$0])); +case 66:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])(new yy.Splat($$[$0-1])); break; -case 67:this.$ = $$[$0]; +case 67:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])(new yy.Value($$[$0])); break; -case 68:this.$ = $$[$0]; +case 68:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])($$[$0-1].add($$[$0])); break; -case 69:this.$ = new yy.Value($$[$0]); +case 69:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])(new yy.Value($$[$0-1], [].concat($$[$0]))); break; -case 70:this.$ = new yy.Value($$[$0]); +case 70:this.$ = $$[$0]; break; case 71:this.$ = $$[$0]; break; -case 72:this.$ = new yy.Value($$[$0]); +case 72:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])(new yy.Value($$[$0])); break; -case 73:this.$ = new yy.Value($$[$0]); +case 73:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])(new yy.Value($$[$0])); break; -case 74:this.$ = new yy.Value($$[$0]); +case 74:this.$ = $$[$0]; break; -case 75:this.$ = $$[$0]; +case 75:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])(new yy.Value($$[$0])); break; -case 76:this.$ = new yy.Access($$[$0]); +case 76:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])(new yy.Value($$[$0])); break; -case 77:this.$ = new yy.Access($$[$0], 'soak'); +case 77:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])(new yy.Value($$[$0])); break; -case 78:this.$ = [new yy.Access(new yy.Literal('prototype')), new yy.Access($$[$0])]; +case 78:this.$ = $$[$0]; break; -case 79:this.$ = new yy.Access(new yy.Literal('prototype')); +case 79:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])(new yy.Access($$[$0])); break; -case 80:this.$ = $$[$0]; +case 80:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])(new yy.Access($$[$0], 'soak')); break; -case 81:this.$ = $$[$0-1]; +case 81:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])([yy.addLocationDataFn(_$[$0-1])(new yy.Access(new yy.Literal('prototype'))), yy.addLocationDataFn(_$[$0])(new yy.Access($$[$0]))]); break; -case 82:this.$ = yy.extend($$[$0], { +case 82:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])([yy.addLocationDataFn(_$[$0-1])(new yy.Access(new yy.Literal('prototype'), 'soak')), yy.addLocationDataFn(_$[$0])(new yy.Access($$[$0]))]); +break; +case 83:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])(new yy.Access(new yy.Literal('prototype'))); +break; +case 84:this.$ = $$[$0]; +break; +case 85:this.$ = yy.addLocationDataFn(_$[$0-2], _$[$0])($$[$0-1]); +break; +case 86:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])(yy.extend($$[$0], { soak: true - }); + })); break; -case 83:this.$ = new yy.Index($$[$0]); +case 87:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])(new yy.Index($$[$0])); break; -case 84:this.$ = new yy.Slice($$[$0]); +case 88:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])(new yy.Slice($$[$0])); break; -case 85:this.$ = new yy.Obj($$[$0-2], $$[$0-3].generated); +case 89:this.$ = yy.addLocationDataFn(_$[$0-3], _$[$0])(new yy.Obj($$[$0-2], $$[$0-3].generated)); break; -case 86:this.$ = []; +case 90:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])([]); break; -case 87:this.$ = [$$[$0]]; +case 91:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])([$$[$0]]); break; -case 88:this.$ = $$[$0-2].concat($$[$0]); +case 92:this.$ = yy.addLocationDataFn(_$[$0-2], _$[$0])($$[$0-2].concat($$[$0])); break; -case 89:this.$ = $$[$0-3].concat($$[$0]); +case 93:this.$ = yy.addLocationDataFn(_$[$0-3], _$[$0])($$[$0-3].concat($$[$0])); break; -case 90:this.$ = $$[$0-5].concat($$[$0-2]); +case 94:this.$ = yy.addLocationDataFn(_$[$0-5], _$[$0])($$[$0-5].concat($$[$0-2])); break; -case 91:this.$ = new yy.Class; +case 95:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])(new yy.Class); break; -case 92:this.$ = new yy.Class(null, null, $$[$0]); +case 96:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])(new yy.Class(null, null, $$[$0])); break; -case 93:this.$ = new yy.Class(null, $$[$0]); +case 97:this.$ = yy.addLocationDataFn(_$[$0-2], _$[$0])(new yy.Class(null, $$[$0])); break; -case 94:this.$ = new yy.Class(null, $$[$0-1], $$[$0]); +case 98:this.$ = yy.addLocationDataFn(_$[$0-3], _$[$0])(new yy.Class(null, $$[$0-1], $$[$0])); break; -case 95:this.$ = new yy.Class($$[$0]); +case 99:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])(new yy.Class($$[$0])); break; -case 96:this.$ = new yy.Class($$[$0-1], null, $$[$0]); +case 100:this.$ = yy.addLocationDataFn(_$[$0-2], _$[$0])(new yy.Class($$[$0-1], null, $$[$0])); break; -case 97:this.$ = new yy.Class($$[$0-2], $$[$0]); +case 101:this.$ = yy.addLocationDataFn(_$[$0-3], _$[$0])(new yy.Class($$[$0-2], $$[$0])); break; -case 98:this.$ = new yy.Class($$[$0-3], $$[$0-1], $$[$0]); +case 102:this.$ = yy.addLocationDataFn(_$[$0-4], _$[$0])(new yy.Class($$[$0-3], $$[$0-1], $$[$0])); break; -case 99:this.$ = new yy.Call($$[$0-2], $$[$0], $$[$0-1]); +case 103:this.$ = yy.addLocationDataFn(_$[$0-2], _$[$0])(new yy.Call($$[$0-2], $$[$0], $$[$0-1])); break; -case 100:this.$ = new yy.Call($$[$0-2], $$[$0], $$[$0-1]); +case 104:this.$ = yy.addLocationDataFn(_$[$0-2], _$[$0])(new yy.Call($$[$0-2], $$[$0], $$[$0-1])); break; -case 101:this.$ = new yy.Call('super', [new yy.Splat(new yy.Literal('arguments'))]); +case 105:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])(new yy.Call('super', [new yy.Splat(new yy.Literal('arguments'))])); break; -case 102:this.$ = new yy.Call('super', $$[$0]); +case 106:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])(new yy.Call('super', $$[$0])); break; -case 103:this.$ = false; +case 107:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])(false); break; -case 104:this.$ = true; +case 108:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])(true); break; -case 105:this.$ = []; +case 109:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])([]); break; -case 106:this.$ = $$[$0-2]; +case 110:this.$ = yy.addLocationDataFn(_$[$0-3], _$[$0])($$[$0-2]); break; -case 107:this.$ = new yy.Value(new yy.Literal('this')); +case 111:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])(new yy.Value(new yy.Literal('this'))); break; -case 108:this.$ = new yy.Value(new yy.Literal('this')); +case 112:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])(new yy.Value(new yy.Literal('this'))); break; -case 109:this.$ = new yy.Value(new yy.Literal('this'), [new yy.Access($$[$0])], 'this'); +case 113:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])(new yy.Value(yy.addLocationDataFn(_$[$0-1])(new yy.Literal('this')), [yy.addLocationDataFn(_$[$0])(new yy.Access($$[$0]))], 'this')); break; -case 110:this.$ = new yy.Arr([]); +case 114:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])(new yy.Arr([])); break; -case 111:this.$ = new yy.Arr($$[$0-2]); +case 115:this.$ = yy.addLocationDataFn(_$[$0-3], _$[$0])(new yy.Arr($$[$0-2])); break; -case 112:this.$ = 'inclusive'; +case 116:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])('inclusive'); break; -case 113:this.$ = 'exclusive'; +case 117:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])('exclusive'); break; -case 114:this.$ = new yy.Range($$[$0-3], $$[$0-1], $$[$0-2]); +case 118:this.$ = yy.addLocationDataFn(_$[$0-4], _$[$0])(new yy.Range($$[$0-3], $$[$0-1], $$[$0-2])); break; -case 115:this.$ = new yy.Range($$[$0-2], $$[$0], $$[$0-1]); +case 119:this.$ = yy.addLocationDataFn(_$[$0-2], _$[$0])(new yy.Range($$[$0-2], $$[$0], $$[$0-1])); break; -case 116:this.$ = new yy.Range($$[$0-1], null, $$[$0]); +case 120:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])(new yy.Range($$[$0-1], null, $$[$0])); break; -case 117:this.$ = new yy.Range(null, $$[$0], $$[$0-1]); +case 121:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])(new yy.Range(null, $$[$0], $$[$0-1])); break; -case 118:this.$ = new yy.Range(null, null, $$[$0]); +case 122:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])(new yy.Range(null, null, $$[$0])); break; -case 119:this.$ = [$$[$0]]; +case 123:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])([$$[$0]]); break; -case 120:this.$ = $$[$0-2].concat($$[$0]); +case 124:this.$ = yy.addLocationDataFn(_$[$0-2], _$[$0])($$[$0-2].concat($$[$0])); break; -case 121:this.$ = $$[$0-3].concat($$[$0]); +case 125:this.$ = yy.addLocationDataFn(_$[$0-3], _$[$0])($$[$0-3].concat($$[$0])); break; -case 122:this.$ = $$[$0-2]; +case 126:this.$ = yy.addLocationDataFn(_$[$0-3], _$[$0])($$[$0-2]); break; -case 123:this.$ = $$[$0-5].concat($$[$0-2]); +case 127:this.$ = yy.addLocationDataFn(_$[$0-5], _$[$0])($$[$0-5].concat($$[$0-2])); break; -case 124:this.$ = $$[$0]; +case 128:this.$ = $$[$0]; break; -case 125:this.$ = $$[$0]; +case 129:this.$ = $$[$0]; break; -case 126:this.$ = $$[$0]; +case 130:this.$ = $$[$0]; break; -case 127:this.$ = [].concat($$[$0-2], $$[$0]); +case 131:this.$ = yy.addLocationDataFn(_$[$0-2], _$[$0])([].concat($$[$0-2], $$[$0])); break; -case 128:this.$ = new yy.Try($$[$0]); +case 132:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])(new yy.Try($$[$0])); break; -case 129:this.$ = new yy.Try($$[$0-1], $$[$0][0], $$[$0][1]); +case 133:this.$ = yy.addLocationDataFn(_$[$0-2], _$[$0])(new yy.Try($$[$0-1], $$[$0][0], $$[$0][1])); break; -case 130:this.$ = new yy.Try($$[$0-2], null, null, $$[$0]); +case 134:this.$ = yy.addLocationDataFn(_$[$0-3], _$[$0])(new yy.Try($$[$0-2], null, null, $$[$0])); break; -case 131:this.$ = new yy.Try($$[$0-3], $$[$0-2][0], $$[$0-2][1], $$[$0]); +case 135:this.$ = yy.addLocationDataFn(_$[$0-4], _$[$0])(new yy.Try($$[$0-3], $$[$0-2][0], $$[$0-2][1], $$[$0])); break; -case 132:this.$ = [$$[$0-1], $$[$0]]; +case 136:this.$ = yy.addLocationDataFn(_$[$0-2], _$[$0])([$$[$0-1], $$[$0]]); break; -case 133:this.$ = new yy.Throw($$[$0]); +case 137:this.$ = yy.addLocationDataFn(_$[$0-2], _$[$0])([yy.addLocationDataFn(_$[$0-1])(new yy.Value($$[$0-1])), $$[$0]]); break; -case 134:this.$ = new yy.Parens($$[$0-1]); +case 138:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])([null, $$[$0]]); break; -case 135:this.$ = new yy.Parens($$[$0-2]); +case 139:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])(new yy.Throw($$[$0])); break; -case 136:this.$ = new yy.While($$[$0]); +case 140:this.$ = yy.addLocationDataFn(_$[$0-2], _$[$0])(new yy.Parens($$[$0-1])); break; -case 137:this.$ = new yy.While($$[$0-2], { +case 141:this.$ = yy.addLocationDataFn(_$[$0-4], _$[$0])(new yy.Parens($$[$0-2])); +break; +case 142:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])(new yy.While($$[$0])); +break; +case 143:this.$ = yy.addLocationDataFn(_$[$0-3], _$[$0])(new yy.While($$[$0-2], { guard: $$[$0] - }); + })); break; -case 138:this.$ = new yy.While($$[$0], { +case 144:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])(new yy.While($$[$0], { invert: true - }); + })); break; -case 139:this.$ = new yy.While($$[$0-2], { +case 145:this.$ = yy.addLocationDataFn(_$[$0-3], _$[$0])(new yy.While($$[$0-2], { invert: true, guard: $$[$0] + })); +break; +case 146:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])($$[$0-1].addBody($$[$0])); +break; +case 147:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])($$[$0].addBody(yy.addLocationDataFn(_$[$0-1])(yy.Block.wrap([$$[$0-1]])))); +break; +case 148:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])($$[$0].addBody(yy.addLocationDataFn(_$[$0-1])(yy.Block.wrap([$$[$0-1]])))); +break; +case 149:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])($$[$0]); +break; +case 150:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])(new yy.While(yy.addLocationDataFn(_$[$0-1])(new yy.Literal('true'))).addBody($$[$0])); +break; +case 151:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])(new yy.While(yy.addLocationDataFn(_$[$0-1])(new yy.Literal('true'))).addBody(yy.addLocationDataFn(_$[$0])(yy.Block.wrap([$$[$0]])))); +break; +case 152:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])(new yy.For($$[$0-1], $$[$0])); +break; +case 153:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])(new yy.For($$[$0-1], $$[$0])); +break; +case 154:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])(new yy.For($$[$0], $$[$0-1])); +break; +case 155:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])({ + source: yy.addLocationDataFn(_$[$0])(new yy.Value($$[$0])) }); break; -case 140:this.$ = $$[$0-1].addBody($$[$0]); -break; -case 141:this.$ = $$[$0].addBody(yy.Block.wrap([$$[$0-1]])); -break; -case 142:this.$ = $$[$0].addBody(yy.Block.wrap([$$[$0-1]])); -break; -case 143:this.$ = $$[$0]; -break; -case 144:this.$ = new yy.While(new yy.Literal('true')).addBody($$[$0]); -break; -case 145:this.$ = new yy.While(new yy.Literal('true')).addBody(yy.Block.wrap([$$[$0]])); -break; -case 146:this.$ = new yy.For($$[$0-1], $$[$0]); -break; -case 147:this.$ = new yy.For($$[$0-1], $$[$0]); -break; -case 148:this.$ = new yy.For($$[$0], $$[$0-1]); -break; -case 149:this.$ = { - source: new yy.Value($$[$0]) - }; -break; -case 150:this.$ = (function () { +case 156:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])((function () { $$[$0].own = $$[$0-1].own; $$[$0].name = $$[$0-1][0]; $$[$0].index = $$[$0-1][1]; return $$[$0]; - }()); + }())); break; -case 151:this.$ = $$[$0]; +case 157:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])($$[$0]); break; -case 152:this.$ = (function () { +case 158:this.$ = yy.addLocationDataFn(_$[$0-2], _$[$0])((function () { $$[$0].own = true; return $$[$0]; - }()); + }())); break; -case 153:this.$ = $$[$0]; +case 159:this.$ = $$[$0]; break; -case 154:this.$ = new yy.Value($$[$0]); +case 160:this.$ = $$[$0]; break; -case 155:this.$ = new yy.Value($$[$0]); +case 161:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])(new yy.Value($$[$0])); break; -case 156:this.$ = [$$[$0]]; +case 162:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])(new yy.Value($$[$0])); break; -case 157:this.$ = [$$[$0-2], $$[$0]]; +case 163:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])([$$[$0]]); break; -case 158:this.$ = { +case 164:this.$ = yy.addLocationDataFn(_$[$0-2], _$[$0])([$$[$0-2], $$[$0]]); +break; +case 165:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])({ source: $$[$0] - }; + }); break; -case 159:this.$ = { +case 166:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])({ source: $$[$0], object: true - }; + }); break; -case 160:this.$ = { +case 167:this.$ = yy.addLocationDataFn(_$[$0-3], _$[$0])({ source: $$[$0-2], guard: $$[$0] - }; + }); break; -case 161:this.$ = { +case 168:this.$ = yy.addLocationDataFn(_$[$0-3], _$[$0])({ source: $$[$0-2], guard: $$[$0], object: true - }; + }); break; -case 162:this.$ = { +case 169:this.$ = yy.addLocationDataFn(_$[$0-3], _$[$0])({ source: $$[$0-2], step: $$[$0] - }; + }); break; -case 163:this.$ = { +case 170:this.$ = yy.addLocationDataFn(_$[$0-5], _$[$0])({ source: $$[$0-4], guard: $$[$0-2], step: $$[$0] - }; + }); break; -case 164:this.$ = { +case 171:this.$ = yy.addLocationDataFn(_$[$0-5], _$[$0])({ source: $$[$0-4], step: $$[$0-2], guard: $$[$0] - }; -break; -case 165:this.$ = new yy.Switch($$[$0-3], $$[$0-1]); -break; -case 166:this.$ = new yy.Switch($$[$0-5], $$[$0-3], $$[$0-1]); -break; -case 167:this.$ = new yy.Switch(null, $$[$0-1]); -break; -case 168:this.$ = new yy.Switch(null, $$[$0-3], $$[$0-1]); -break; -case 169:this.$ = $$[$0]; -break; -case 170:this.$ = $$[$0-1].concat($$[$0]); -break; -case 171:this.$ = [[$$[$0-1], $$[$0]]]; -break; -case 172:this.$ = [[$$[$0-2], $$[$0-1]]]; -break; -case 173:this.$ = new yy.If($$[$0-1], $$[$0], { - type: $$[$0-2] }); break; -case 174:this.$ = $$[$0-4].addElse(new yy.If($$[$0-1], $$[$0], { +case 172:this.$ = yy.addLocationDataFn(_$[$0-4], _$[$0])(new yy.Switch($$[$0-3], $$[$0-1])); +break; +case 173:this.$ = yy.addLocationDataFn(_$[$0-6], _$[$0])(new yy.Switch($$[$0-5], $$[$0-3], $$[$0-1])); +break; +case 174:this.$ = yy.addLocationDataFn(_$[$0-3], _$[$0])(new yy.Switch(null, $$[$0-1])); +break; +case 175:this.$ = yy.addLocationDataFn(_$[$0-5], _$[$0])(new yy.Switch(null, $$[$0-3], $$[$0-1])); +break; +case 176:this.$ = $$[$0]; +break; +case 177:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])($$[$0-1].concat($$[$0])); +break; +case 178:this.$ = yy.addLocationDataFn(_$[$0-2], _$[$0])([[$$[$0-1], $$[$0]]]); +break; +case 179:this.$ = yy.addLocationDataFn(_$[$0-3], _$[$0])([[$$[$0-2], $$[$0-1]]]); +break; +case 180:this.$ = yy.addLocationDataFn(_$[$0-2], _$[$0])(new yy.If($$[$0-1], $$[$0], { type: $$[$0-2] })); break; -case 175:this.$ = $$[$0]; +case 181:this.$ = yy.addLocationDataFn(_$[$0-4], _$[$0])($$[$0-4].addElse(yy.addLocationDataFn(_$[$0-2], _$[$0])(new yy.If($$[$0-1], $$[$0], { + type: $$[$0-2] + })))); break; -case 176:this.$ = $$[$0-2].addElse($$[$0]); +case 182:this.$ = $$[$0]; break; -case 177:this.$ = new yy.If($$[$0], yy.Block.wrap([$$[$0-2]]), { +case 183:this.$ = yy.addLocationDataFn(_$[$0-2], _$[$0])($$[$0-2].addElse($$[$0])); +break; +case 184:this.$ = yy.addLocationDataFn(_$[$0-2], _$[$0])(new yy.If($$[$0], yy.addLocationDataFn(_$[$0-2])(yy.Block.wrap([$$[$0-2]])), { type: $$[$0-1], statement: true - }); + })); break; -case 178:this.$ = new yy.If($$[$0], yy.Block.wrap([$$[$0-2]]), { +case 185:this.$ = yy.addLocationDataFn(_$[$0-2], _$[$0])(new yy.If($$[$0], yy.addLocationDataFn(_$[$0-2])(yy.Block.wrap([$$[$0-2]])), { type: $$[$0-1], statement: true - }); + })); break; -case 179:this.$ = new yy.Op($$[$0-1], $$[$0]); +case 186:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])(new yy.Op($$[$0-1], $$[$0])); break; -case 180:this.$ = new yy.Op('-', $$[$0]); +case 187:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])(new yy.Op('-', $$[$0])); break; -case 181:this.$ = new yy.Op('+', $$[$0]); +case 188:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])(new yy.Op('+', $$[$0])); break; -case 182:this.$ = new yy.Op('--', $$[$0]); +case 189:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])(new yy.Op('--', $$[$0])); break; -case 183:this.$ = new yy.Op('++', $$[$0]); +case 190:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])(new yy.Op('++', $$[$0])); break; -case 184:this.$ = new yy.Op('--', $$[$0-1], null, true); +case 191:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])(new yy.Op('--', $$[$0-1], null, true)); break; -case 185:this.$ = new yy.Op('++', $$[$0-1], null, true); +case 192:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])(new yy.Op('++', $$[$0-1], null, true)); break; -case 186:this.$ = new yy.Existence($$[$0-1]); +case 193:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])(new yy.Existence($$[$0-1])); break; -case 187:this.$ = new yy.Op('+', $$[$0-2], $$[$0]); +case 194:this.$ = yy.addLocationDataFn(_$[$0-2], _$[$0])(new yy.Op('+', $$[$0-2], $$[$0])); break; -case 188:this.$ = new yy.Op('-', $$[$0-2], $$[$0]); +case 195:this.$ = yy.addLocationDataFn(_$[$0-2], _$[$0])(new yy.Op('-', $$[$0-2], $$[$0])); break; -case 189:this.$ = new yy.Op($$[$0-1], $$[$0-2], $$[$0]); +case 196:this.$ = yy.addLocationDataFn(_$[$0-2], _$[$0])(new yy.Op($$[$0-1], $$[$0-2], $$[$0])); break; -case 190:this.$ = new yy.Op($$[$0-1], $$[$0-2], $$[$0]); +case 197:this.$ = yy.addLocationDataFn(_$[$0-2], _$[$0])(new yy.Op($$[$0-1], $$[$0-2], $$[$0])); break; -case 191:this.$ = new yy.Op($$[$0-1], $$[$0-2], $$[$0]); +case 198:this.$ = yy.addLocationDataFn(_$[$0-2], _$[$0])(new yy.Op($$[$0-1], $$[$0-2], $$[$0])); break; -case 192:this.$ = new yy.Op($$[$0-1], $$[$0-2], $$[$0]); +case 199:this.$ = yy.addLocationDataFn(_$[$0-2], _$[$0])(new yy.Op($$[$0-1], $$[$0-2], $$[$0])); break; -case 193:this.$ = (function () { +case 200:this.$ = yy.addLocationDataFn(_$[$0-2], _$[$0])((function () { if ($$[$0-1].charAt(0) === '!') { return new yy.Op($$[$0-1].slice(1), $$[$0-2], $$[$0]).invert(); } else { return new yy.Op($$[$0-1], $$[$0-2], $$[$0]); } - }()); + }())); break; -case 194:this.$ = new yy.Assign($$[$0-2], $$[$0], $$[$0-1]); +case 201:this.$ = yy.addLocationDataFn(_$[$0-2], _$[$0])(new yy.Assign($$[$0-2], $$[$0], $$[$0-1])); break; -case 195:this.$ = new yy.Assign($$[$0-4], $$[$0-1], $$[$0-3]); +case 202:this.$ = yy.addLocationDataFn(_$[$0-4], _$[$0])(new yy.Assign($$[$0-4], $$[$0-1], $$[$0-3])); break; -case 196:this.$ = new yy.Extends($$[$0-2], $$[$0]); +case 203:this.$ = yy.addLocationDataFn(_$[$0-3], _$[$0])(new yy.Assign($$[$0-3], $$[$0], $$[$0-2])); +break; +case 204:this.$ = yy.addLocationDataFn(_$[$0-2], _$[$0])(new yy.Extends($$[$0-2], $$[$0])); break; } }, -table: [{1:[2,1],3:1,4:2,5:3,7:4,8:6,9:7,10:20,11:21,12:[1,22],13:8,14:9,15:10,16:11,17:12,18:13,19:14,20:15,21:16,22:17,23:18,24:19,25:[1,5],27:60,28:[1,71],29:49,30:[1,69],31:[1,70],32:24,33:[1,50],34:[1,51],35:[1,52],36:[1,53],37:23,42:61,43:[1,45],44:[1,46],45:[1,29],48:30,49:[1,58],50:[1,59],56:47,57:48,59:36,61:25,62:26,63:27,73:[1,68],76:[1,43],80:[1,28],85:[1,56],86:[1,57],87:[1,55],93:[1,38],97:[1,44],98:[1,54],100:39,101:[1,63],103:[1,64],104:40,105:[1,65],106:41,107:[1,66],108:67,116:[1,42],121:37,122:[1,62],124:[1,31],125:[1,32],126:[1,33],127:[1,34],128:[1,35]},{1:[3]},{1:[2,2],6:[1,72]},{6:[1,73]},{1:[2,4],6:[2,4],26:[2,4],99:[2,4]},{4:75,7:4,8:6,9:7,10:20,11:21,12:[1,22],13:8,14:9,15:10,16:11,17:12,18:13,19:14,20:15,21:16,22:17,23:18,24:19,26:[1,74],27:60,28:[1,71],29:49,30:[1,69],31:[1,70],32:24,33:[1,50],34:[1,51],35:[1,52],36:[1,53],37:23,42:61,43:[1,45],44:[1,46],45:[1,29],48:30,49:[1,58],50:[1,59],56:47,57:48,59:36,61:25,62:26,63:27,73:[1,68],76:[1,43],80:[1,28],85:[1,56],86:[1,57],87:[1,55],93:[1,38],97:[1,44],98:[1,54],100:39,101:[1,63],103:[1,64],104:40,105:[1,65],106:41,107:[1,66],108:67,116:[1,42],121:37,122:[1,62],124:[1,31],125:[1,32],126:[1,33],127:[1,34],128:[1,35]},{1:[2,7],6:[2,7],26:[2,7],99:[2,7],100:85,101:[1,63],103:[1,64],106:86,107:[1,66],108:67,123:[1,84],125:[1,78],126:[1,77],129:[1,76],130:[1,79],131:[1,80],132:[1,81],133:[1,82],134:[1,83]},{1:[2,8],6:[2,8],26:[2,8],99:[2,8],100:88,101:[1,63],103:[1,64],106:89,107:[1,66],108:67,123:[1,87]},{1:[2,12],6:[2,12],25:[2,12],26:[2,12],47:[2,12],52:[2,12],55:[2,12],60:91,64:[1,93],65:[1,94],66:[1,95],67:96,68:[1,97],70:[2,12],71:[1,98],75:[2,12],78:90,81:[1,92],82:[2,103],83:[2,12],88:[2,12],90:[2,12],99:[2,12],101:[2,12],102:[2,12],103:[2,12],107:[2,12],115:[2,12],123:[2,12],125:[2,12],126:[2,12],129:[2,12],130:[2,12],131:[2,12],132:[2,12],133:[2,12],134:[2,12]},{1:[2,13],6:[2,13],25:[2,13],26:[2,13],47:[2,13],52:[2,13],55:[2,13],60:100,64:[1,93],65:[1,94],66:[1,95],67:96,68:[1,97],70:[2,13],71:[1,98],75:[2,13],78:99,81:[1,92],82:[2,103],83:[2,13],88:[2,13],90:[2,13],99:[2,13],101:[2,13],102:[2,13],103:[2,13],107:[2,13],115:[2,13],123:[2,13],125:[2,13],126:[2,13],129:[2,13],130:[2,13],131:[2,13],132:[2,13],133:[2,13],134:[2,13]},{1:[2,14],6:[2,14],25:[2,14],26:[2,14],47:[2,14],52:[2,14],55:[2,14],70:[2,14],75:[2,14],83:[2,14],88:[2,14],90:[2,14],99:[2,14],101:[2,14],102:[2,14],103:[2,14],107:[2,14],115:[2,14],123:[2,14],125:[2,14],126:[2,14],129:[2,14],130:[2,14],131:[2,14],132:[2,14],133:[2,14],134:[2,14]},{1:[2,15],6:[2,15],25:[2,15],26:[2,15],47:[2,15],52:[2,15],55:[2,15],70:[2,15],75:[2,15],83:[2,15],88:[2,15],90:[2,15],99:[2,15],101:[2,15],102:[2,15],103:[2,15],107:[2,15],115:[2,15],123:[2,15],125:[2,15],126:[2,15],129:[2,15],130:[2,15],131:[2,15],132:[2,15],133:[2,15],134:[2,15]},{1:[2,16],6:[2,16],25:[2,16],26:[2,16],47:[2,16],52:[2,16],55:[2,16],70:[2,16],75:[2,16],83:[2,16],88:[2,16],90:[2,16],99:[2,16],101:[2,16],102:[2,16],103:[2,16],107:[2,16],115:[2,16],123:[2,16],125:[2,16],126:[2,16],129:[2,16],130:[2,16],131:[2,16],132:[2,16],133:[2,16],134:[2,16]},{1:[2,17],6:[2,17],25:[2,17],26:[2,17],47:[2,17],52:[2,17],55:[2,17],70:[2,17],75:[2,17],83:[2,17],88:[2,17],90:[2,17],99:[2,17],101:[2,17],102:[2,17],103:[2,17],107:[2,17],115:[2,17],123:[2,17],125:[2,17],126:[2,17],129:[2,17],130:[2,17],131:[2,17],132:[2,17],133:[2,17],134:[2,17]},{1:[2,18],6:[2,18],25:[2,18],26:[2,18],47:[2,18],52:[2,18],55:[2,18],70:[2,18],75:[2,18],83:[2,18],88:[2,18],90:[2,18],99:[2,18],101:[2,18],102:[2,18],103:[2,18],107:[2,18],115:[2,18],123:[2,18],125:[2,18],126:[2,18],129:[2,18],130:[2,18],131:[2,18],132:[2,18],133:[2,18],134:[2,18]},{1:[2,19],6:[2,19],25:[2,19],26:[2,19],47:[2,19],52:[2,19],55:[2,19],70:[2,19],75:[2,19],83:[2,19],88:[2,19],90:[2,19],99:[2,19],101:[2,19],102:[2,19],103:[2,19],107:[2,19],115:[2,19],123:[2,19],125:[2,19],126:[2,19],129:[2,19],130:[2,19],131:[2,19],132:[2,19],133:[2,19],134:[2,19]},{1:[2,20],6:[2,20],25:[2,20],26:[2,20],47:[2,20],52:[2,20],55:[2,20],70:[2,20],75:[2,20],83:[2,20],88:[2,20],90:[2,20],99:[2,20],101:[2,20],102:[2,20],103:[2,20],107:[2,20],115:[2,20],123:[2,20],125:[2,20],126:[2,20],129:[2,20],130:[2,20],131:[2,20],132:[2,20],133:[2,20],134:[2,20]},{1:[2,21],6:[2,21],25:[2,21],26:[2,21],47:[2,21],52:[2,21],55:[2,21],70:[2,21],75:[2,21],83:[2,21],88:[2,21],90:[2,21],99:[2,21],101:[2,21],102:[2,21],103:[2,21],107:[2,21],115:[2,21],123:[2,21],125:[2,21],126:[2,21],129:[2,21],130:[2,21],131:[2,21],132:[2,21],133:[2,21],134:[2,21]},{1:[2,22],6:[2,22],25:[2,22],26:[2,22],47:[2,22],52:[2,22],55:[2,22],70:[2,22],75:[2,22],83:[2,22],88:[2,22],90:[2,22],99:[2,22],101:[2,22],102:[2,22],103:[2,22],107:[2,22],115:[2,22],123:[2,22],125:[2,22],126:[2,22],129:[2,22],130:[2,22],131:[2,22],132:[2,22],133:[2,22],134:[2,22]},{1:[2,23],6:[2,23],25:[2,23],26:[2,23],47:[2,23],52:[2,23],55:[2,23],70:[2,23],75:[2,23],83:[2,23],88:[2,23],90:[2,23],99:[2,23],101:[2,23],102:[2,23],103:[2,23],107:[2,23],115:[2,23],123:[2,23],125:[2,23],126:[2,23],129:[2,23],130:[2,23],131:[2,23],132:[2,23],133:[2,23],134:[2,23]},{1:[2,9],6:[2,9],26:[2,9],99:[2,9],101:[2,9],103:[2,9],107:[2,9],123:[2,9]},{1:[2,10],6:[2,10],26:[2,10],99:[2,10],101:[2,10],103:[2,10],107:[2,10],123:[2,10]},{1:[2,11],6:[2,11],26:[2,11],99:[2,11],101:[2,11],103:[2,11],107:[2,11],123:[2,11]},{1:[2,71],6:[2,71],25:[2,71],26:[2,71],38:[1,101],47:[2,71],52:[2,71],55:[2,71],64:[2,71],65:[2,71],66:[2,71],68:[2,71],70:[2,71],71:[2,71],75:[2,71],81:[2,71],82:[2,71],83:[2,71],88:[2,71],90:[2,71],99:[2,71],101:[2,71],102:[2,71],103:[2,71],107:[2,71],115:[2,71],123:[2,71],125:[2,71],126:[2,71],129:[2,71],130:[2,71],131:[2,71],132:[2,71],133:[2,71],134:[2,71]},{1:[2,72],6:[2,72],25:[2,72],26:[2,72],47:[2,72],52:[2,72],55:[2,72],64:[2,72],65:[2,72],66:[2,72],68:[2,72],70:[2,72],71:[2,72],75:[2,72],81:[2,72],82:[2,72],83:[2,72],88:[2,72],90:[2,72],99:[2,72],101:[2,72],102:[2,72],103:[2,72],107:[2,72],115:[2,72],123:[2,72],125:[2,72],126:[2,72],129:[2,72],130:[2,72],131:[2,72],132:[2,72],133:[2,72],134:[2,72]},{1:[2,73],6:[2,73],25:[2,73],26:[2,73],47:[2,73],52:[2,73],55:[2,73],64:[2,73],65:[2,73],66:[2,73],68:[2,73],70:[2,73],71:[2,73],75:[2,73],81:[2,73],82:[2,73],83:[2,73],88:[2,73],90:[2,73],99:[2,73],101:[2,73],102:[2,73],103:[2,73],107:[2,73],115:[2,73],123:[2,73],125:[2,73],126:[2,73],129:[2,73],130:[2,73],131:[2,73],132:[2,73],133:[2,73],134:[2,73]},{1:[2,74],6:[2,74],25:[2,74],26:[2,74],47:[2,74],52:[2,74],55:[2,74],64:[2,74],65:[2,74],66:[2,74],68:[2,74],70:[2,74],71:[2,74],75:[2,74],81:[2,74],82:[2,74],83:[2,74],88:[2,74],90:[2,74],99:[2,74],101:[2,74],102:[2,74],103:[2,74],107:[2,74],115:[2,74],123:[2,74],125:[2,74],126:[2,74],129:[2,74],130:[2,74],131:[2,74],132:[2,74],133:[2,74],134:[2,74]},{1:[2,75],6:[2,75],25:[2,75],26:[2,75],47:[2,75],52:[2,75],55:[2,75],64:[2,75],65:[2,75],66:[2,75],68:[2,75],70:[2,75],71:[2,75],75:[2,75],81:[2,75],82:[2,75],83:[2,75],88:[2,75],90:[2,75],99:[2,75],101:[2,75],102:[2,75],103:[2,75],107:[2,75],115:[2,75],123:[2,75],125:[2,75],126:[2,75],129:[2,75],130:[2,75],131:[2,75],132:[2,75],133:[2,75],134:[2,75]},{1:[2,101],6:[2,101],25:[2,101],26:[2,101],47:[2,101],52:[2,101],55:[2,101],64:[2,101],65:[2,101],66:[2,101],68:[2,101],70:[2,101],71:[2,101],75:[2,101],79:102,81:[2,101],82:[1,103],83:[2,101],88:[2,101],90:[2,101],99:[2,101],101:[2,101],102:[2,101],103:[2,101],107:[2,101],115:[2,101],123:[2,101],125:[2,101],126:[2,101],129:[2,101],130:[2,101],131:[2,101],132:[2,101],133:[2,101],134:[2,101]},{27:107,28:[1,71],42:108,46:104,47:[2,53],52:[2,53],53:105,54:106,56:109,57:110,73:[1,68],86:[1,111],87:[1,112]},{5:113,25:[1,5]},{8:114,9:115,10:20,11:21,12:[1,22],13:8,14:9,15:10,16:11,17:12,18:13,19:14,20:15,21:16,22:17,23:18,24:19,27:60,28:[1,71],29:49,30:[1,69],31:[1,70],32:24,33:[1,50],34:[1,51],35:[1,52],36:[1,53],37:23,42:61,43:[1,45],44:[1,46],45:[1,29],48:30,49:[1,58],50:[1,59],56:47,57:48,59:36,61:25,62:26,63:27,73:[1,68],76:[1,43],80:[1,28],85:[1,56],86:[1,57],87:[1,55],93:[1,38],97:[1,44],98:[1,54],100:39,101:[1,63],103:[1,64],104:40,105:[1,65],106:41,107:[1,66],108:67,116:[1,42],121:37,122:[1,62],124:[1,31],125:[1,32],126:[1,33],127:[1,34],128:[1,35]},{8:116,9:115,10:20,11:21,12:[1,22],13:8,14:9,15:10,16:11,17:12,18:13,19:14,20:15,21:16,22:17,23:18,24:19,27:60,28:[1,71],29:49,30:[1,69],31:[1,70],32:24,33:[1,50],34:[1,51],35:[1,52],36:[1,53],37:23,42:61,43:[1,45],44:[1,46],45:[1,29],48:30,49:[1,58],50:[1,59],56:47,57:48,59:36,61:25,62:26,63:27,73:[1,68],76:[1,43],80:[1,28],85:[1,56],86:[1,57],87:[1,55],93:[1,38],97:[1,44],98:[1,54],100:39,101:[1,63],103:[1,64],104:40,105:[1,65],106:41,107:[1,66],108:67,116:[1,42],121:37,122:[1,62],124:[1,31],125:[1,32],126:[1,33],127:[1,34],128:[1,35]},{8:117,9:115,10:20,11:21,12:[1,22],13:8,14:9,15:10,16:11,17:12,18:13,19:14,20:15,21:16,22:17,23:18,24:19,27:60,28:[1,71],29:49,30:[1,69],31:[1,70],32:24,33:[1,50],34:[1,51],35:[1,52],36:[1,53],37:23,42:61,43:[1,45],44:[1,46],45:[1,29],48:30,49:[1,58],50:[1,59],56:47,57:48,59:36,61:25,62:26,63:27,73:[1,68],76:[1,43],80:[1,28],85:[1,56],86:[1,57],87:[1,55],93:[1,38],97:[1,44],98:[1,54],100:39,101:[1,63],103:[1,64],104:40,105:[1,65],106:41,107:[1,66],108:67,116:[1,42],121:37,122:[1,62],124:[1,31],125:[1,32],126:[1,33],127:[1,34],128:[1,35]},{13:119,14:120,27:60,28:[1,71],29:49,30:[1,69],31:[1,70],32:24,33:[1,50],34:[1,51],35:[1,52],36:[1,53],37:121,42:61,56:47,57:48,59:118,61:25,62:26,63:27,73:[1,68],80:[1,28],85:[1,56],86:[1,57],87:[1,55],98:[1,54]},{13:119,14:120,27:60,28:[1,71],29:49,30:[1,69],31:[1,70],32:24,33:[1,50],34:[1,51],35:[1,52],36:[1,53],37:121,42:61,56:47,57:48,59:122,61:25,62:26,63:27,73:[1,68],80:[1,28],85:[1,56],86:[1,57],87:[1,55],98:[1,54]},{1:[2,68],6:[2,68],25:[2,68],26:[2,68],38:[2,68],47:[2,68],52:[2,68],55:[2,68],64:[2,68],65:[2,68],66:[2,68],68:[2,68],70:[2,68],71:[2,68],75:[2,68],77:[1,126],81:[2,68],82:[2,68],83:[2,68],88:[2,68],90:[2,68],99:[2,68],101:[2,68],102:[2,68],103:[2,68],107:[2,68],115:[2,68],123:[2,68],125:[2,68],126:[2,68],127:[1,123],128:[1,124],129:[2,68],130:[2,68],131:[2,68],132:[2,68],133:[2,68],134:[2,68],135:[1,125]},{1:[2,175],6:[2,175],25:[2,175],26:[2,175],47:[2,175],52:[2,175],55:[2,175],70:[2,175],75:[2,175],83:[2,175],88:[2,175],90:[2,175],99:[2,175],101:[2,175],102:[2,175],103:[2,175],107:[2,175],115:[2,175],118:[1,127],123:[2,175],125:[2,175],126:[2,175],129:[2,175],130:[2,175],131:[2,175],132:[2,175],133:[2,175],134:[2,175]},{5:128,25:[1,5]},{5:129,25:[1,5]},{1:[2,143],6:[2,143],25:[2,143],26:[2,143],47:[2,143],52:[2,143],55:[2,143],70:[2,143],75:[2,143],83:[2,143],88:[2,143],90:[2,143],99:[2,143],101:[2,143],102:[2,143],103:[2,143],107:[2,143],115:[2,143],123:[2,143],125:[2,143],126:[2,143],129:[2,143],130:[2,143],131:[2,143],132:[2,143],133:[2,143],134:[2,143]},{5:130,25:[1,5]},{8:131,9:115,10:20,11:21,12:[1,22],13:8,14:9,15:10,16:11,17:12,18:13,19:14,20:15,21:16,22:17,23:18,24:19,25:[1,132],27:60,28:[1,71],29:49,30:[1,69],31:[1,70],32:24,33:[1,50],34:[1,51],35:[1,52],36:[1,53],37:23,42:61,43:[1,45],44:[1,46],45:[1,29],48:30,49:[1,58],50:[1,59],56:47,57:48,59:36,61:25,62:26,63:27,73:[1,68],76:[1,43],80:[1,28],85:[1,56],86:[1,57],87:[1,55],93:[1,38],97:[1,44],98:[1,54],100:39,101:[1,63],103:[1,64],104:40,105:[1,65],106:41,107:[1,66],108:67,116:[1,42],121:37,122:[1,62],124:[1,31],125:[1,32],126:[1,33],127:[1,34],128:[1,35]},{1:[2,91],5:133,6:[2,91],13:119,14:120,25:[1,5],26:[2,91],27:60,28:[1,71],29:49,30:[1,69],31:[1,70],32:24,33:[1,50],34:[1,51],35:[1,52],36:[1,53],37:121,42:61,47:[2,91],52:[2,91],55:[2,91],56:47,57:48,59:135,61:25,62:26,63:27,70:[2,91],73:[1,68],75:[2,91],77:[1,134],80:[1,28],83:[2,91],85:[1,56],86:[1,57],87:[1,55],88:[2,91],90:[2,91],98:[1,54],99:[2,91],101:[2,91],102:[2,91],103:[2,91],107:[2,91],115:[2,91],123:[2,91],125:[2,91],126:[2,91],129:[2,91],130:[2,91],131:[2,91],132:[2,91],133:[2,91],134:[2,91]},{8:136,9:115,10:20,11:21,12:[1,22],13:8,14:9,15:10,16:11,17:12,18:13,19:14,20:15,21:16,22:17,23:18,24:19,27:60,28:[1,71],29:49,30:[1,69],31:[1,70],32:24,33:[1,50],34:[1,51],35:[1,52],36:[1,53],37:23,42:61,43:[1,45],44:[1,46],45:[1,29],48:30,49:[1,58],50:[1,59],56:47,57:48,59:36,61:25,62:26,63:27,73:[1,68],76:[1,43],80:[1,28],85:[1,56],86:[1,57],87:[1,55],93:[1,38],97:[1,44],98:[1,54],100:39,101:[1,63],103:[1,64],104:40,105:[1,65],106:41,107:[1,66],108:67,116:[1,42],121:37,122:[1,62],124:[1,31],125:[1,32],126:[1,33],127:[1,34],128:[1,35]},{1:[2,45],6:[2,45],8:137,9:115,10:20,11:21,12:[1,22],13:8,14:9,15:10,16:11,17:12,18:13,19:14,20:15,21:16,22:17,23:18,24:19,26:[2,45],27:60,28:[1,71],29:49,30:[1,69],31:[1,70],32:24,33:[1,50],34:[1,51],35:[1,52],36:[1,53],37:23,42:61,43:[1,45],44:[1,46],45:[1,29],48:30,49:[1,58],50:[1,59],56:47,57:48,59:36,61:25,62:26,63:27,73:[1,68],76:[1,43],80:[1,28],85:[1,56],86:[1,57],87:[1,55],93:[1,38],97:[1,44],98:[1,54],99:[2,45],100:39,101:[2,45],103:[2,45],104:40,105:[1,65],106:41,107:[2,45],108:67,116:[1,42],121:37,122:[1,62],123:[2,45],124:[1,31],125:[1,32],126:[1,33],127:[1,34],128:[1,35]},{1:[2,46],6:[2,46],25:[2,46],26:[2,46],52:[2,46],75:[2,46],99:[2,46],101:[2,46],103:[2,46],107:[2,46],123:[2,46]},{1:[2,69],6:[2,69],25:[2,69],26:[2,69],38:[2,69],47:[2,69],52:[2,69],55:[2,69],64:[2,69],65:[2,69],66:[2,69],68:[2,69],70:[2,69],71:[2,69],75:[2,69],81:[2,69],82:[2,69],83:[2,69],88:[2,69],90:[2,69],99:[2,69],101:[2,69],102:[2,69],103:[2,69],107:[2,69],115:[2,69],123:[2,69],125:[2,69],126:[2,69],129:[2,69],130:[2,69],131:[2,69],132:[2,69],133:[2,69],134:[2,69]},{1:[2,70],6:[2,70],25:[2,70],26:[2,70],38:[2,70],47:[2,70],52:[2,70],55:[2,70],64:[2,70],65:[2,70],66:[2,70],68:[2,70],70:[2,70],71:[2,70],75:[2,70],81:[2,70],82:[2,70],83:[2,70],88:[2,70],90:[2,70],99:[2,70],101:[2,70],102:[2,70],103:[2,70],107:[2,70],115:[2,70],123:[2,70],125:[2,70],126:[2,70],129:[2,70],130:[2,70],131:[2,70],132:[2,70],133:[2,70],134:[2,70]},{1:[2,29],6:[2,29],25:[2,29],26:[2,29],47:[2,29],52:[2,29],55:[2,29],64:[2,29],65:[2,29],66:[2,29],68:[2,29],70:[2,29],71:[2,29],75:[2,29],81:[2,29],82:[2,29],83:[2,29],88:[2,29],90:[2,29],99:[2,29],101:[2,29],102:[2,29],103:[2,29],107:[2,29],115:[2,29],123:[2,29],125:[2,29],126:[2,29],129:[2,29],130:[2,29],131:[2,29],132:[2,29],133:[2,29],134:[2,29]},{1:[2,30],6:[2,30],25:[2,30],26:[2,30],47:[2,30],52:[2,30],55:[2,30],64:[2,30],65:[2,30],66:[2,30],68:[2,30],70:[2,30],71:[2,30],75:[2,30],81:[2,30],82:[2,30],83:[2,30],88:[2,30],90:[2,30],99:[2,30],101:[2,30],102:[2,30],103:[2,30],107:[2,30],115:[2,30],123:[2,30],125:[2,30],126:[2,30],129:[2,30],130:[2,30],131:[2,30],132:[2,30],133:[2,30],134:[2,30]},{1:[2,31],6:[2,31],25:[2,31],26:[2,31],47:[2,31],52:[2,31],55:[2,31],64:[2,31],65:[2,31],66:[2,31],68:[2,31],70:[2,31],71:[2,31],75:[2,31],81:[2,31],82:[2,31],83:[2,31],88:[2,31],90:[2,31],99:[2,31],101:[2,31],102:[2,31],103:[2,31],107:[2,31],115:[2,31],123:[2,31],125:[2,31],126:[2,31],129:[2,31],130:[2,31],131:[2,31],132:[2,31],133:[2,31],134:[2,31]},{1:[2,32],6:[2,32],25:[2,32],26:[2,32],47:[2,32],52:[2,32],55:[2,32],64:[2,32],65:[2,32],66:[2,32],68:[2,32],70:[2,32],71:[2,32],75:[2,32],81:[2,32],82:[2,32],83:[2,32],88:[2,32],90:[2,32],99:[2,32],101:[2,32],102:[2,32],103:[2,32],107:[2,32],115:[2,32],123:[2,32],125:[2,32],126:[2,32],129:[2,32],130:[2,32],131:[2,32],132:[2,32],133:[2,32],134:[2,32]},{1:[2,33],6:[2,33],25:[2,33],26:[2,33],47:[2,33],52:[2,33],55:[2,33],64:[2,33],65:[2,33],66:[2,33],68:[2,33],70:[2,33],71:[2,33],75:[2,33],81:[2,33],82:[2,33],83:[2,33],88:[2,33],90:[2,33],99:[2,33],101:[2,33],102:[2,33],103:[2,33],107:[2,33],115:[2,33],123:[2,33],125:[2,33],126:[2,33],129:[2,33],130:[2,33],131:[2,33],132:[2,33],133:[2,33],134:[2,33]},{4:138,7:4,8:6,9:7,10:20,11:21,12:[1,22],13:8,14:9,15:10,16:11,17:12,18:13,19:14,20:15,21:16,22:17,23:18,24:19,25:[1,139],27:60,28:[1,71],29:49,30:[1,69],31:[1,70],32:24,33:[1,50],34:[1,51],35:[1,52],36:[1,53],37:23,42:61,43:[1,45],44:[1,46],45:[1,29],48:30,49:[1,58],50:[1,59],56:47,57:48,59:36,61:25,62:26,63:27,73:[1,68],76:[1,43],80:[1,28],85:[1,56],86:[1,57],87:[1,55],93:[1,38],97:[1,44],98:[1,54],100:39,101:[1,63],103:[1,64],104:40,105:[1,65],106:41,107:[1,66],108:67,116:[1,42],121:37,122:[1,62],124:[1,31],125:[1,32],126:[1,33],127:[1,34],128:[1,35]},{8:140,9:115,10:20,11:21,12:[1,22],13:8,14:9,15:10,16:11,17:12,18:13,19:14,20:15,21:16,22:17,23:18,24:19,25:[1,144],27:60,28:[1,71],29:49,30:[1,69],31:[1,70],32:24,33:[1,50],34:[1,51],35:[1,52],36:[1,53],37:23,42:61,43:[1,45],44:[1,46],45:[1,29],48:30,49:[1,58],50:[1,59],56:47,57:48,58:145,59:36,61:25,62:26,63:27,73:[1,68],76:[1,43],80:[1,28],84:142,85:[1,56],86:[1,57],87:[1,55],88:[1,141],91:143,93:[1,38],97:[1,44],98:[1,54],100:39,101:[1,63],103:[1,64],104:40,105:[1,65],106:41,107:[1,66],108:67,116:[1,42],121:37,122:[1,62],124:[1,31],125:[1,32],126:[1,33],127:[1,34],128:[1,35]},{1:[2,107],6:[2,107],25:[2,107],26:[2,107],47:[2,107],52:[2,107],55:[2,107],64:[2,107],65:[2,107],66:[2,107],68:[2,107],70:[2,107],71:[2,107],75:[2,107],81:[2,107],82:[2,107],83:[2,107],88:[2,107],90:[2,107],99:[2,107],101:[2,107],102:[2,107],103:[2,107],107:[2,107],115:[2,107],123:[2,107],125:[2,107],126:[2,107],129:[2,107],130:[2,107],131:[2,107],132:[2,107],133:[2,107],134:[2,107]},{1:[2,108],6:[2,108],25:[2,108],26:[2,108],27:146,28:[1,71],47:[2,108],52:[2,108],55:[2,108],64:[2,108],65:[2,108],66:[2,108],68:[2,108],70:[2,108],71:[2,108],75:[2,108],81:[2,108],82:[2,108],83:[2,108],88:[2,108],90:[2,108],99:[2,108],101:[2,108],102:[2,108],103:[2,108],107:[2,108],115:[2,108],123:[2,108],125:[2,108],126:[2,108],129:[2,108],130:[2,108],131:[2,108],132:[2,108],133:[2,108],134:[2,108]},{25:[2,49]},{25:[2,50]},{1:[2,64],6:[2,64],25:[2,64],26:[2,64],38:[2,64],47:[2,64],52:[2,64],55:[2,64],64:[2,64],65:[2,64],66:[2,64],68:[2,64],70:[2,64],71:[2,64],75:[2,64],77:[2,64],81:[2,64],82:[2,64],83:[2,64],88:[2,64],90:[2,64],99:[2,64],101:[2,64],102:[2,64],103:[2,64],107:[2,64],115:[2,64],123:[2,64],125:[2,64],126:[2,64],127:[2,64],128:[2,64],129:[2,64],130:[2,64],131:[2,64],132:[2,64],133:[2,64],134:[2,64],135:[2,64]},{1:[2,67],6:[2,67],25:[2,67],26:[2,67],38:[2,67],47:[2,67],52:[2,67],55:[2,67],64:[2,67],65:[2,67],66:[2,67],68:[2,67],70:[2,67],71:[2,67],75:[2,67],77:[2,67],81:[2,67],82:[2,67],83:[2,67],88:[2,67],90:[2,67],99:[2,67],101:[2,67],102:[2,67],103:[2,67],107:[2,67],115:[2,67],123:[2,67],125:[2,67],126:[2,67],127:[2,67],128:[2,67],129:[2,67],130:[2,67],131:[2,67],132:[2,67],133:[2,67],134:[2,67],135:[2,67]},{8:147,9:115,10:20,11:21,12:[1,22],13:8,14:9,15:10,16:11,17:12,18:13,19:14,20:15,21:16,22:17,23:18,24:19,27:60,28:[1,71],29:49,30:[1,69],31:[1,70],32:24,33:[1,50],34:[1,51],35:[1,52],36:[1,53],37:23,42:61,43:[1,45],44:[1,46],45:[1,29],48:30,49:[1,58],50:[1,59],56:47,57:48,59:36,61:25,62:26,63:27,73:[1,68],76:[1,43],80:[1,28],85:[1,56],86:[1,57],87:[1,55],93:[1,38],97:[1,44],98:[1,54],100:39,101:[1,63],103:[1,64],104:40,105:[1,65],106:41,107:[1,66],108:67,116:[1,42],121:37,122:[1,62],124:[1,31],125:[1,32],126:[1,33],127:[1,34],128:[1,35]},{8:148,9:115,10:20,11:21,12:[1,22],13:8,14:9,15:10,16:11,17:12,18:13,19:14,20:15,21:16,22:17,23:18,24:19,27:60,28:[1,71],29:49,30:[1,69],31:[1,70],32:24,33:[1,50],34:[1,51],35:[1,52],36:[1,53],37:23,42:61,43:[1,45],44:[1,46],45:[1,29],48:30,49:[1,58],50:[1,59],56:47,57:48,59:36,61:25,62:26,63:27,73:[1,68],76:[1,43],80:[1,28],85:[1,56],86:[1,57],87:[1,55],93:[1,38],97:[1,44],98:[1,54],100:39,101:[1,63],103:[1,64],104:40,105:[1,65],106:41,107:[1,66],108:67,116:[1,42],121:37,122:[1,62],124:[1,31],125:[1,32],126:[1,33],127:[1,34],128:[1,35]},{8:149,9:115,10:20,11:21,12:[1,22],13:8,14:9,15:10,16:11,17:12,18:13,19:14,20:15,21:16,22:17,23:18,24:19,27:60,28:[1,71],29:49,30:[1,69],31:[1,70],32:24,33:[1,50],34:[1,51],35:[1,52],36:[1,53],37:23,42:61,43:[1,45],44:[1,46],45:[1,29],48:30,49:[1,58],50:[1,59],56:47,57:48,59:36,61:25,62:26,63:27,73:[1,68],76:[1,43],80:[1,28],85:[1,56],86:[1,57],87:[1,55],93:[1,38],97:[1,44],98:[1,54],100:39,101:[1,63],103:[1,64],104:40,105:[1,65],106:41,107:[1,66],108:67,116:[1,42],121:37,122:[1,62],124:[1,31],125:[1,32],126:[1,33],127:[1,34],128:[1,35]},{5:150,8:151,9:115,10:20,11:21,12:[1,22],13:8,14:9,15:10,16:11,17:12,18:13,19:14,20:15,21:16,22:17,23:18,24:19,25:[1,5],27:60,28:[1,71],29:49,30:[1,69],31:[1,70],32:24,33:[1,50],34:[1,51],35:[1,52],36:[1,53],37:23,42:61,43:[1,45],44:[1,46],45:[1,29],48:30,49:[1,58],50:[1,59],56:47,57:48,59:36,61:25,62:26,63:27,73:[1,68],76:[1,43],80:[1,28],85:[1,56],86:[1,57],87:[1,55],93:[1,38],97:[1,44],98:[1,54],100:39,101:[1,63],103:[1,64],104:40,105:[1,65],106:41,107:[1,66],108:67,116:[1,42],121:37,122:[1,62],124:[1,31],125:[1,32],126:[1,33],127:[1,34],128:[1,35]},{27:156,28:[1,71],56:157,57:158,62:152,73:[1,68],87:[1,55],110:153,111:[1,154],112:155},{109:159,113:[1,160],114:[1,161]},{6:[2,86],11:165,25:[2,86],27:166,28:[1,71],29:167,30:[1,69],31:[1,70],39:163,40:164,42:168,44:[1,46],52:[2,86],74:162,75:[2,86],86:[1,111]},{1:[2,27],6:[2,27],25:[2,27],26:[2,27],41:[2,27],47:[2,27],52:[2,27],55:[2,27],64:[2,27],65:[2,27],66:[2,27],68:[2,27],70:[2,27],71:[2,27],75:[2,27],81:[2,27],82:[2,27],83:[2,27],88:[2,27],90:[2,27],99:[2,27],101:[2,27],102:[2,27],103:[2,27],107:[2,27],115:[2,27],123:[2,27],125:[2,27],126:[2,27],129:[2,27],130:[2,27],131:[2,27],132:[2,27],133:[2,27],134:[2,27]},{1:[2,28],6:[2,28],25:[2,28],26:[2,28],41:[2,28],47:[2,28],52:[2,28],55:[2,28],64:[2,28],65:[2,28],66:[2,28],68:[2,28],70:[2,28],71:[2,28],75:[2,28],81:[2,28],82:[2,28],83:[2,28],88:[2,28],90:[2,28],99:[2,28],101:[2,28],102:[2,28],103:[2,28],107:[2,28],115:[2,28],123:[2,28],125:[2,28],126:[2,28],129:[2,28],130:[2,28],131:[2,28],132:[2,28],133:[2,28],134:[2,28]},{1:[2,26],6:[2,26],25:[2,26],26:[2,26],38:[2,26],41:[2,26],47:[2,26],52:[2,26],55:[2,26],64:[2,26],65:[2,26],66:[2,26],68:[2,26],70:[2,26],71:[2,26],75:[2,26],77:[2,26],81:[2,26],82:[2,26],83:[2,26],88:[2,26],90:[2,26],99:[2,26],101:[2,26],102:[2,26],103:[2,26],107:[2,26],113:[2,26],114:[2,26],115:[2,26],123:[2,26],125:[2,26],126:[2,26],127:[2,26],128:[2,26],129:[2,26],130:[2,26],131:[2,26],132:[2,26],133:[2,26],134:[2,26],135:[2,26]},{1:[2,6],6:[2,6],7:169,8:6,9:7,10:20,11:21,12:[1,22],13:8,14:9,15:10,16:11,17:12,18:13,19:14,20:15,21:16,22:17,23:18,24:19,26:[2,6],27:60,28:[1,71],29:49,30:[1,69],31:[1,70],32:24,33:[1,50],34:[1,51],35:[1,52],36:[1,53],37:23,42:61,43:[1,45],44:[1,46],45:[1,29],48:30,49:[1,58],50:[1,59],56:47,57:48,59:36,61:25,62:26,63:27,73:[1,68],76:[1,43],80:[1,28],85:[1,56],86:[1,57],87:[1,55],93:[1,38],97:[1,44],98:[1,54],99:[2,6],100:39,101:[1,63],103:[1,64],104:40,105:[1,65],106:41,107:[1,66],108:67,116:[1,42],121:37,122:[1,62],124:[1,31],125:[1,32],126:[1,33],127:[1,34],128:[1,35]},{1:[2,3]},{1:[2,24],6:[2,24],25:[2,24],26:[2,24],47:[2,24],52:[2,24],55:[2,24],70:[2,24],75:[2,24],83:[2,24],88:[2,24],90:[2,24],95:[2,24],96:[2,24],99:[2,24],101:[2,24],102:[2,24],103:[2,24],107:[2,24],115:[2,24],118:[2,24],120:[2,24],123:[2,24],125:[2,24],126:[2,24],129:[2,24],130:[2,24],131:[2,24],132:[2,24],133:[2,24],134:[2,24]},{6:[1,72],26:[1,170]},{1:[2,186],6:[2,186],25:[2,186],26:[2,186],47:[2,186],52:[2,186],55:[2,186],70:[2,186],75:[2,186],83:[2,186],88:[2,186],90:[2,186],99:[2,186],101:[2,186],102:[2,186],103:[2,186],107:[2,186],115:[2,186],123:[2,186],125:[2,186],126:[2,186],129:[2,186],130:[2,186],131:[2,186],132:[2,186],133:[2,186],134:[2,186]},{8:171,9:115,10:20,11:21,12:[1,22],13:8,14:9,15:10,16:11,17:12,18:13,19:14,20:15,21:16,22:17,23:18,24:19,27:60,28:[1,71],29:49,30:[1,69],31:[1,70],32:24,33:[1,50],34:[1,51],35:[1,52],36:[1,53],37:23,42:61,43:[1,45],44:[1,46],45:[1,29],48:30,49:[1,58],50:[1,59],56:47,57:48,59:36,61:25,62:26,63:27,73:[1,68],76:[1,43],80:[1,28],85:[1,56],86:[1,57],87:[1,55],93:[1,38],97:[1,44],98:[1,54],100:39,101:[1,63],103:[1,64],104:40,105:[1,65],106:41,107:[1,66],108:67,116:[1,42],121:37,122:[1,62],124:[1,31],125:[1,32],126:[1,33],127:[1,34],128:[1,35]},{8:172,9:115,10:20,11:21,12:[1,22],13:8,14:9,15:10,16:11,17:12,18:13,19:14,20:15,21:16,22:17,23:18,24:19,27:60,28:[1,71],29:49,30:[1,69],31:[1,70],32:24,33:[1,50],34:[1,51],35:[1,52],36:[1,53],37:23,42:61,43:[1,45],44:[1,46],45:[1,29],48:30,49:[1,58],50:[1,59],56:47,57:48,59:36,61:25,62:26,63:27,73:[1,68],76:[1,43],80:[1,28],85:[1,56],86:[1,57],87:[1,55],93:[1,38],97:[1,44],98:[1,54],100:39,101:[1,63],103:[1,64],104:40,105:[1,65],106:41,107:[1,66],108:67,116:[1,42],121:37,122:[1,62],124:[1,31],125:[1,32],126:[1,33],127:[1,34],128:[1,35]},{8:173,9:115,10:20,11:21,12:[1,22],13:8,14:9,15:10,16:11,17:12,18:13,19:14,20:15,21:16,22:17,23:18,24:19,27:60,28:[1,71],29:49,30:[1,69],31:[1,70],32:24,33:[1,50],34:[1,51],35:[1,52],36:[1,53],37:23,42:61,43:[1,45],44:[1,46],45:[1,29],48:30,49:[1,58],50:[1,59],56:47,57:48,59:36,61:25,62:26,63:27,73:[1,68],76:[1,43],80:[1,28],85:[1,56],86:[1,57],87:[1,55],93:[1,38],97:[1,44],98:[1,54],100:39,101:[1,63],103:[1,64],104:40,105:[1,65],106:41,107:[1,66],108:67,116:[1,42],121:37,122:[1,62],124:[1,31],125:[1,32],126:[1,33],127:[1,34],128:[1,35]},{8:174,9:115,10:20,11:21,12:[1,22],13:8,14:9,15:10,16:11,17:12,18:13,19:14,20:15,21:16,22:17,23:18,24:19,27:60,28:[1,71],29:49,30:[1,69],31:[1,70],32:24,33:[1,50],34:[1,51],35:[1,52],36:[1,53],37:23,42:61,43:[1,45],44:[1,46],45:[1,29],48:30,49:[1,58],50:[1,59],56:47,57:48,59:36,61:25,62:26,63:27,73:[1,68],76:[1,43],80:[1,28],85:[1,56],86:[1,57],87:[1,55],93:[1,38],97:[1,44],98:[1,54],100:39,101:[1,63],103:[1,64],104:40,105:[1,65],106:41,107:[1,66],108:67,116:[1,42],121:37,122:[1,62],124:[1,31],125:[1,32],126:[1,33],127:[1,34],128:[1,35]},{8:175,9:115,10:20,11:21,12:[1,22],13:8,14:9,15:10,16:11,17:12,18:13,19:14,20:15,21:16,22:17,23:18,24:19,27:60,28:[1,71],29:49,30:[1,69],31:[1,70],32:24,33:[1,50],34:[1,51],35:[1,52],36:[1,53],37:23,42:61,43:[1,45],44:[1,46],45:[1,29],48:30,49:[1,58],50:[1,59],56:47,57:48,59:36,61:25,62:26,63:27,73:[1,68],76:[1,43],80:[1,28],85:[1,56],86:[1,57],87:[1,55],93:[1,38],97:[1,44],98:[1,54],100:39,101:[1,63],103:[1,64],104:40,105:[1,65],106:41,107:[1,66],108:67,116:[1,42],121:37,122:[1,62],124:[1,31],125:[1,32],126:[1,33],127:[1,34],128:[1,35]},{8:176,9:115,10:20,11:21,12:[1,22],13:8,14:9,15:10,16:11,17:12,18:13,19:14,20:15,21:16,22:17,23:18,24:19,27:60,28:[1,71],29:49,30:[1,69],31:[1,70],32:24,33:[1,50],34:[1,51],35:[1,52],36:[1,53],37:23,42:61,43:[1,45],44:[1,46],45:[1,29],48:30,49:[1,58],50:[1,59],56:47,57:48,59:36,61:25,62:26,63:27,73:[1,68],76:[1,43],80:[1,28],85:[1,56],86:[1,57],87:[1,55],93:[1,38],97:[1,44],98:[1,54],100:39,101:[1,63],103:[1,64],104:40,105:[1,65],106:41,107:[1,66],108:67,116:[1,42],121:37,122:[1,62],124:[1,31],125:[1,32],126:[1,33],127:[1,34],128:[1,35]},{8:177,9:115,10:20,11:21,12:[1,22],13:8,14:9,15:10,16:11,17:12,18:13,19:14,20:15,21:16,22:17,23:18,24:19,27:60,28:[1,71],29:49,30:[1,69],31:[1,70],32:24,33:[1,50],34:[1,51],35:[1,52],36:[1,53],37:23,42:61,43:[1,45],44:[1,46],45:[1,29],48:30,49:[1,58],50:[1,59],56:47,57:48,59:36,61:25,62:26,63:27,73:[1,68],76:[1,43],80:[1,28],85:[1,56],86:[1,57],87:[1,55],93:[1,38],97:[1,44],98:[1,54],100:39,101:[1,63],103:[1,64],104:40,105:[1,65],106:41,107:[1,66],108:67,116:[1,42],121:37,122:[1,62],124:[1,31],125:[1,32],126:[1,33],127:[1,34],128:[1,35]},{8:178,9:115,10:20,11:21,12:[1,22],13:8,14:9,15:10,16:11,17:12,18:13,19:14,20:15,21:16,22:17,23:18,24:19,27:60,28:[1,71],29:49,30:[1,69],31:[1,70],32:24,33:[1,50],34:[1,51],35:[1,52],36:[1,53],37:23,42:61,43:[1,45],44:[1,46],45:[1,29],48:30,49:[1,58],50:[1,59],56:47,57:48,59:36,61:25,62:26,63:27,73:[1,68],76:[1,43],80:[1,28],85:[1,56],86:[1,57],87:[1,55],93:[1,38],97:[1,44],98:[1,54],100:39,101:[1,63],103:[1,64],104:40,105:[1,65],106:41,107:[1,66],108:67,116:[1,42],121:37,122:[1,62],124:[1,31],125:[1,32],126:[1,33],127:[1,34],128:[1,35]},{1:[2,142],6:[2,142],25:[2,142],26:[2,142],47:[2,142],52:[2,142],55:[2,142],70:[2,142],75:[2,142],83:[2,142],88:[2,142],90:[2,142],99:[2,142],101:[2,142],102:[2,142],103:[2,142],107:[2,142],115:[2,142],123:[2,142],125:[2,142],126:[2,142],129:[2,142],130:[2,142],131:[2,142],132:[2,142],133:[2,142],134:[2,142]},{1:[2,147],6:[2,147],25:[2,147],26:[2,147],47:[2,147],52:[2,147],55:[2,147],70:[2,147],75:[2,147],83:[2,147],88:[2,147],90:[2,147],99:[2,147],101:[2,147],102:[2,147],103:[2,147],107:[2,147],115:[2,147],123:[2,147],125:[2,147],126:[2,147],129:[2,147],130:[2,147],131:[2,147],132:[2,147],133:[2,147],134:[2,147]},{8:179,9:115,10:20,11:21,12:[1,22],13:8,14:9,15:10,16:11,17:12,18:13,19:14,20:15,21:16,22:17,23:18,24:19,27:60,28:[1,71],29:49,30:[1,69],31:[1,70],32:24,33:[1,50],34:[1,51],35:[1,52],36:[1,53],37:23,42:61,43:[1,45],44:[1,46],45:[1,29],48:30,49:[1,58],50:[1,59],56:47,57:48,59:36,61:25,62:26,63:27,73:[1,68],76:[1,43],80:[1,28],85:[1,56],86:[1,57],87:[1,55],93:[1,38],97:[1,44],98:[1,54],100:39,101:[1,63],103:[1,64],104:40,105:[1,65],106:41,107:[1,66],108:67,116:[1,42],121:37,122:[1,62],124:[1,31],125:[1,32],126:[1,33],127:[1,34],128:[1,35]},{1:[2,141],6:[2,141],25:[2,141],26:[2,141],47:[2,141],52:[2,141],55:[2,141],70:[2,141],75:[2,141],83:[2,141],88:[2,141],90:[2,141],99:[2,141],101:[2,141],102:[2,141],103:[2,141],107:[2,141],115:[2,141],123:[2,141],125:[2,141],126:[2,141],129:[2,141],130:[2,141],131:[2,141],132:[2,141],133:[2,141],134:[2,141]},{1:[2,146],6:[2,146],25:[2,146],26:[2,146],47:[2,146],52:[2,146],55:[2,146],70:[2,146],75:[2,146],83:[2,146],88:[2,146],90:[2,146],99:[2,146],101:[2,146],102:[2,146],103:[2,146],107:[2,146],115:[2,146],123:[2,146],125:[2,146],126:[2,146],129:[2,146],130:[2,146],131:[2,146],132:[2,146],133:[2,146],134:[2,146]},{79:180,82:[1,103]},{1:[2,65],6:[2,65],25:[2,65],26:[2,65],38:[2,65],47:[2,65],52:[2,65],55:[2,65],64:[2,65],65:[2,65],66:[2,65],68:[2,65],70:[2,65],71:[2,65],75:[2,65],77:[2,65],81:[2,65],82:[2,65],83:[2,65],88:[2,65],90:[2,65],99:[2,65],101:[2,65],102:[2,65],103:[2,65],107:[2,65],115:[2,65],123:[2,65],125:[2,65],126:[2,65],127:[2,65],128:[2,65],129:[2,65],130:[2,65],131:[2,65],132:[2,65],133:[2,65],134:[2,65],135:[2,65]},{82:[2,104]},{27:181,28:[1,71]},{27:182,28:[1,71]},{1:[2,79],6:[2,79],25:[2,79],26:[2,79],27:183,28:[1,71],38:[2,79],47:[2,79],52:[2,79],55:[2,79],64:[2,79],65:[2,79],66:[2,79],68:[2,79],70:[2,79],71:[2,79],75:[2,79],77:[2,79],81:[2,79],82:[2,79],83:[2,79],88:[2,79],90:[2,79],99:[2,79],101:[2,79],102:[2,79],103:[2,79],107:[2,79],115:[2,79],123:[2,79],125:[2,79],126:[2,79],127:[2,79],128:[2,79],129:[2,79],130:[2,79],131:[2,79],132:[2,79],133:[2,79],134:[2,79],135:[2,79]},{1:[2,80],6:[2,80],25:[2,80],26:[2,80],38:[2,80],47:[2,80],52:[2,80],55:[2,80],64:[2,80],65:[2,80],66:[2,80],68:[2,80],70:[2,80],71:[2,80],75:[2,80],77:[2,80],81:[2,80],82:[2,80],83:[2,80],88:[2,80],90:[2,80],99:[2,80],101:[2,80],102:[2,80],103:[2,80],107:[2,80],115:[2,80],123:[2,80],125:[2,80],126:[2,80],127:[2,80],128:[2,80],129:[2,80],130:[2,80],131:[2,80],132:[2,80],133:[2,80],134:[2,80],135:[2,80]},{8:185,9:115,10:20,11:21,12:[1,22],13:8,14:9,15:10,16:11,17:12,18:13,19:14,20:15,21:16,22:17,23:18,24:19,27:60,28:[1,71],29:49,30:[1,69],31:[1,70],32:24,33:[1,50],34:[1,51],35:[1,52],36:[1,53],37:23,42:61,43:[1,45],44:[1,46],45:[1,29],48:30,49:[1,58],50:[1,59],55:[1,189],56:47,57:48,59:36,61:25,62:26,63:27,69:184,72:186,73:[1,68],76:[1,43],80:[1,28],85:[1,56],86:[1,57],87:[1,55],89:187,90:[1,188],93:[1,38],97:[1,44],98:[1,54],100:39,101:[1,63],103:[1,64],104:40,105:[1,65],106:41,107:[1,66],108:67,116:[1,42],121:37,122:[1,62],124:[1,31],125:[1,32],126:[1,33],127:[1,34],128:[1,35]},{67:190,68:[1,97],71:[1,98]},{79:191,82:[1,103]},{1:[2,66],6:[2,66],25:[2,66],26:[2,66],38:[2,66],47:[2,66],52:[2,66],55:[2,66],64:[2,66],65:[2,66],66:[2,66],68:[2,66],70:[2,66],71:[2,66],75:[2,66],77:[2,66],81:[2,66],82:[2,66],83:[2,66],88:[2,66],90:[2,66],99:[2,66],101:[2,66],102:[2,66],103:[2,66],107:[2,66],115:[2,66],123:[2,66],125:[2,66],126:[2,66],127:[2,66],128:[2,66],129:[2,66],130:[2,66],131:[2,66],132:[2,66],133:[2,66],134:[2,66],135:[2,66]},{6:[1,193],8:192,9:115,10:20,11:21,12:[1,22],13:8,14:9,15:10,16:11,17:12,18:13,19:14,20:15,21:16,22:17,23:18,24:19,25:[1,194],27:60,28:[1,71],29:49,30:[1,69],31:[1,70],32:24,33:[1,50],34:[1,51],35:[1,52],36:[1,53],37:23,42:61,43:[1,45],44:[1,46],45:[1,29],48:30,49:[1,58],50:[1,59],56:47,57:48,59:36,61:25,62:26,63:27,73:[1,68],76:[1,43],80:[1,28],85:[1,56],86:[1,57],87:[1,55],93:[1,38],97:[1,44],98:[1,54],100:39,101:[1,63],103:[1,64],104:40,105:[1,65],106:41,107:[1,66],108:67,116:[1,42],121:37,122:[1,62],124:[1,31],125:[1,32],126:[1,33],127:[1,34],128:[1,35]},{1:[2,102],6:[2,102],25:[2,102],26:[2,102],47:[2,102],52:[2,102],55:[2,102],64:[2,102],65:[2,102],66:[2,102],68:[2,102],70:[2,102],71:[2,102],75:[2,102],81:[2,102],82:[2,102],83:[2,102],88:[2,102],90:[2,102],99:[2,102],101:[2,102],102:[2,102],103:[2,102],107:[2,102],115:[2,102],123:[2,102],125:[2,102],126:[2,102],129:[2,102],130:[2,102],131:[2,102],132:[2,102],133:[2,102],134:[2,102]},{8:197,9:115,10:20,11:21,12:[1,22],13:8,14:9,15:10,16:11,17:12,18:13,19:14,20:15,21:16,22:17,23:18,24:19,25:[1,144],27:60,28:[1,71],29:49,30:[1,69],31:[1,70],32:24,33:[1,50],34:[1,51],35:[1,52],36:[1,53],37:23,42:61,43:[1,45],44:[1,46],45:[1,29],48:30,49:[1,58],50:[1,59],56:47,57:48,58:145,59:36,61:25,62:26,63:27,73:[1,68],76:[1,43],80:[1,28],83:[1,195],84:196,85:[1,56],86:[1,57],87:[1,55],91:143,93:[1,38],97:[1,44],98:[1,54],100:39,101:[1,63],103:[1,64],104:40,105:[1,65],106:41,107:[1,66],108:67,116:[1,42],121:37,122:[1,62],124:[1,31],125:[1,32],126:[1,33],127:[1,34],128:[1,35]},{47:[1,198],52:[1,199]},{47:[2,54],52:[2,54]},{38:[1,201],47:[2,56],52:[2,56],55:[1,200]},{38:[2,59],47:[2,59],52:[2,59],55:[2,59]},{38:[2,60],47:[2,60],52:[2,60],55:[2,60]},{38:[2,61],47:[2,61],52:[2,61],55:[2,61]},{38:[2,62],47:[2,62],52:[2,62],55:[2,62]},{27:146,28:[1,71]},{8:197,9:115,10:20,11:21,12:[1,22],13:8,14:9,15:10,16:11,17:12,18:13,19:14,20:15,21:16,22:17,23:18,24:19,25:[1,144],27:60,28:[1,71],29:49,30:[1,69],31:[1,70],32:24,33:[1,50],34:[1,51],35:[1,52],36:[1,53],37:23,42:61,43:[1,45],44:[1,46],45:[1,29],48:30,49:[1,58],50:[1,59],56:47,57:48,58:145,59:36,61:25,62:26,63:27,73:[1,68],76:[1,43],80:[1,28],84:142,85:[1,56],86:[1,57],87:[1,55],88:[1,141],91:143,93:[1,38],97:[1,44],98:[1,54],100:39,101:[1,63],103:[1,64],104:40,105:[1,65],106:41,107:[1,66],108:67,116:[1,42],121:37,122:[1,62],124:[1,31],125:[1,32],126:[1,33],127:[1,34],128:[1,35]},{1:[2,48],6:[2,48],25:[2,48],26:[2,48],47:[2,48],52:[2,48],55:[2,48],70:[2,48],75:[2,48],83:[2,48],88:[2,48],90:[2,48],99:[2,48],101:[2,48],102:[2,48],103:[2,48],107:[2,48],115:[2,48],123:[2,48],125:[2,48],126:[2,48],129:[2,48],130:[2,48],131:[2,48],132:[2,48],133:[2,48],134:[2,48]},{1:[2,179],6:[2,179],25:[2,179],26:[2,179],47:[2,179],52:[2,179],55:[2,179],70:[2,179],75:[2,179],83:[2,179],88:[2,179],90:[2,179],99:[2,179],100:85,101:[2,179],102:[2,179],103:[2,179],106:86,107:[2,179],108:67,115:[2,179],123:[2,179],125:[2,179],126:[2,179],129:[1,76],130:[2,179],131:[2,179],132:[2,179],133:[2,179],134:[2,179]},{100:88,101:[1,63],103:[1,64],106:89,107:[1,66],108:67,123:[1,87]},{1:[2,180],6:[2,180],25:[2,180],26:[2,180],47:[2,180],52:[2,180],55:[2,180],70:[2,180],75:[2,180],83:[2,180],88:[2,180],90:[2,180],99:[2,180],100:85,101:[2,180],102:[2,180],103:[2,180],106:86,107:[2,180],108:67,115:[2,180],123:[2,180],125:[2,180],126:[2,180],129:[1,76],130:[2,180],131:[2,180],132:[2,180],133:[2,180],134:[2,180]},{1:[2,181],6:[2,181],25:[2,181],26:[2,181],47:[2,181],52:[2,181],55:[2,181],70:[2,181],75:[2,181],83:[2,181],88:[2,181],90:[2,181],99:[2,181],100:85,101:[2,181],102:[2,181],103:[2,181],106:86,107:[2,181],108:67,115:[2,181],123:[2,181],125:[2,181],126:[2,181],129:[1,76],130:[2,181],131:[2,181],132:[2,181],133:[2,181],134:[2,181]},{1:[2,182],6:[2,182],25:[2,182],26:[2,182],47:[2,182],52:[2,182],55:[2,182],64:[2,68],65:[2,68],66:[2,68],68:[2,68],70:[2,182],71:[2,68],75:[2,182],81:[2,68],82:[2,68],83:[2,182],88:[2,182],90:[2,182],99:[2,182],101:[2,182],102:[2,182],103:[2,182],107:[2,182],115:[2,182],123:[2,182],125:[2,182],126:[2,182],129:[2,182],130:[2,182],131:[2,182],132:[2,182],133:[2,182],134:[2,182]},{60:91,64:[1,93],65:[1,94],66:[1,95],67:96,68:[1,97],71:[1,98],78:90,81:[1,92],82:[2,103]},{60:100,64:[1,93],65:[1,94],66:[1,95],67:96,68:[1,97],71:[1,98],78:99,81:[1,92],82:[2,103]},{64:[2,71],65:[2,71],66:[2,71],68:[2,71],71:[2,71],81:[2,71],82:[2,71]},{1:[2,183],6:[2,183],25:[2,183],26:[2,183],47:[2,183],52:[2,183],55:[2,183],64:[2,68],65:[2,68],66:[2,68],68:[2,68],70:[2,183],71:[2,68],75:[2,183],81:[2,68],82:[2,68],83:[2,183],88:[2,183],90:[2,183],99:[2,183],101:[2,183],102:[2,183],103:[2,183],107:[2,183],115:[2,183],123:[2,183],125:[2,183],126:[2,183],129:[2,183],130:[2,183],131:[2,183],132:[2,183],133:[2,183],134:[2,183]},{1:[2,184],6:[2,184],25:[2,184],26:[2,184],47:[2,184],52:[2,184],55:[2,184],70:[2,184],75:[2,184],83:[2,184],88:[2,184],90:[2,184],99:[2,184],101:[2,184],102:[2,184],103:[2,184],107:[2,184],115:[2,184],123:[2,184],125:[2,184],126:[2,184],129:[2,184],130:[2,184],131:[2,184],132:[2,184],133:[2,184],134:[2,184]},{1:[2,185],6:[2,185],25:[2,185],26:[2,185],47:[2,185],52:[2,185],55:[2,185],70:[2,185],75:[2,185],83:[2,185],88:[2,185],90:[2,185],99:[2,185],101:[2,185],102:[2,185],103:[2,185],107:[2,185],115:[2,185],123:[2,185],125:[2,185],126:[2,185],129:[2,185],130:[2,185],131:[2,185],132:[2,185],133:[2,185],134:[2,185]},{8:202,9:115,10:20,11:21,12:[1,22],13:8,14:9,15:10,16:11,17:12,18:13,19:14,20:15,21:16,22:17,23:18,24:19,25:[1,203],27:60,28:[1,71],29:49,30:[1,69],31:[1,70],32:24,33:[1,50],34:[1,51],35:[1,52],36:[1,53],37:23,42:61,43:[1,45],44:[1,46],45:[1,29],48:30,49:[1,58],50:[1,59],56:47,57:48,59:36,61:25,62:26,63:27,73:[1,68],76:[1,43],80:[1,28],85:[1,56],86:[1,57],87:[1,55],93:[1,38],97:[1,44],98:[1,54],100:39,101:[1,63],103:[1,64],104:40,105:[1,65],106:41,107:[1,66],108:67,116:[1,42],121:37,122:[1,62],124:[1,31],125:[1,32],126:[1,33],127:[1,34],128:[1,35]},{8:204,9:115,10:20,11:21,12:[1,22],13:8,14:9,15:10,16:11,17:12,18:13,19:14,20:15,21:16,22:17,23:18,24:19,27:60,28:[1,71],29:49,30:[1,69],31:[1,70],32:24,33:[1,50],34:[1,51],35:[1,52],36:[1,53],37:23,42:61,43:[1,45],44:[1,46],45:[1,29],48:30,49:[1,58],50:[1,59],56:47,57:48,59:36,61:25,62:26,63:27,73:[1,68],76:[1,43],80:[1,28],85:[1,56],86:[1,57],87:[1,55],93:[1,38],97:[1,44],98:[1,54],100:39,101:[1,63],103:[1,64],104:40,105:[1,65],106:41,107:[1,66],108:67,116:[1,42],121:37,122:[1,62],124:[1,31],125:[1,32],126:[1,33],127:[1,34],128:[1,35]},{5:205,25:[1,5],122:[1,206]},{1:[2,128],6:[2,128],25:[2,128],26:[2,128],47:[2,128],52:[2,128],55:[2,128],70:[2,128],75:[2,128],83:[2,128],88:[2,128],90:[2,128],94:207,95:[1,208],96:[1,209],99:[2,128],101:[2,128],102:[2,128],103:[2,128],107:[2,128],115:[2,128],123:[2,128],125:[2,128],126:[2,128],129:[2,128],130:[2,128],131:[2,128],132:[2,128],133:[2,128],134:[2,128]},{1:[2,140],6:[2,140],25:[2,140],26:[2,140],47:[2,140],52:[2,140],55:[2,140],70:[2,140],75:[2,140],83:[2,140],88:[2,140],90:[2,140],99:[2,140],101:[2,140],102:[2,140],103:[2,140],107:[2,140],115:[2,140],123:[2,140],125:[2,140],126:[2,140],129:[2,140],130:[2,140],131:[2,140],132:[2,140],133:[2,140],134:[2,140]},{1:[2,148],6:[2,148],25:[2,148],26:[2,148],47:[2,148],52:[2,148],55:[2,148],70:[2,148],75:[2,148],83:[2,148],88:[2,148],90:[2,148],99:[2,148],101:[2,148],102:[2,148],103:[2,148],107:[2,148],115:[2,148],123:[2,148],125:[2,148],126:[2,148],129:[2,148],130:[2,148],131:[2,148],132:[2,148],133:[2,148],134:[2,148]},{25:[1,210],100:85,101:[1,63],103:[1,64],106:86,107:[1,66],108:67,123:[1,84],125:[1,78],126:[1,77],129:[1,76],130:[1,79],131:[1,80],132:[1,81],133:[1,82],134:[1,83]},{117:211,119:212,120:[1,213]},{1:[2,92],6:[2,92],25:[2,92],26:[2,92],47:[2,92],52:[2,92],55:[2,92],70:[2,92],75:[2,92],83:[2,92],88:[2,92],90:[2,92],99:[2,92],101:[2,92],102:[2,92],103:[2,92],107:[2,92],115:[2,92],123:[2,92],125:[2,92],126:[2,92],129:[2,92],130:[2,92],131:[2,92],132:[2,92],133:[2,92],134:[2,92]},{8:214,9:115,10:20,11:21,12:[1,22],13:8,14:9,15:10,16:11,17:12,18:13,19:14,20:15,21:16,22:17,23:18,24:19,27:60,28:[1,71],29:49,30:[1,69],31:[1,70],32:24,33:[1,50],34:[1,51],35:[1,52],36:[1,53],37:23,42:61,43:[1,45],44:[1,46],45:[1,29],48:30,49:[1,58],50:[1,59],56:47,57:48,59:36,61:25,62:26,63:27,73:[1,68],76:[1,43],80:[1,28],85:[1,56],86:[1,57],87:[1,55],93:[1,38],97:[1,44],98:[1,54],100:39,101:[1,63],103:[1,64],104:40,105:[1,65],106:41,107:[1,66],108:67,116:[1,42],121:37,122:[1,62],124:[1,31],125:[1,32],126:[1,33],127:[1,34],128:[1,35]},{1:[2,95],5:215,6:[2,95],25:[1,5],26:[2,95],47:[2,95],52:[2,95],55:[2,95],64:[2,68],65:[2,68],66:[2,68],68:[2,68],70:[2,95],71:[2,68],75:[2,95],77:[1,216],81:[2,68],82:[2,68],83:[2,95],88:[2,95],90:[2,95],99:[2,95],101:[2,95],102:[2,95],103:[2,95],107:[2,95],115:[2,95],123:[2,95],125:[2,95],126:[2,95],129:[2,95],130:[2,95],131:[2,95],132:[2,95],133:[2,95],134:[2,95]},{1:[2,133],6:[2,133],25:[2,133],26:[2,133],47:[2,133],52:[2,133],55:[2,133],70:[2,133],75:[2,133],83:[2,133],88:[2,133],90:[2,133],99:[2,133],100:85,101:[2,133],102:[2,133],103:[2,133],106:86,107:[2,133],108:67,115:[2,133],123:[2,133],125:[1,78],126:[1,77],129:[1,76],130:[1,79],131:[1,80],132:[1,81],133:[1,82],134:[1,83]},{1:[2,44],6:[2,44],26:[2,44],99:[2,44],100:85,101:[2,44],103:[2,44],106:86,107:[2,44],108:67,123:[2,44],125:[1,78],126:[1,77],129:[1,76],130:[1,79],131:[1,80],132:[1,81],133:[1,82],134:[1,83]},{6:[1,72],99:[1,217]},{4:218,7:4,8:6,9:7,10:20,11:21,12:[1,22],13:8,14:9,15:10,16:11,17:12,18:13,19:14,20:15,21:16,22:17,23:18,24:19,27:60,28:[1,71],29:49,30:[1,69],31:[1,70],32:24,33:[1,50],34:[1,51],35:[1,52],36:[1,53],37:23,42:61,43:[1,45],44:[1,46],45:[1,29],48:30,49:[1,58],50:[1,59],56:47,57:48,59:36,61:25,62:26,63:27,73:[1,68],76:[1,43],80:[1,28],85:[1,56],86:[1,57],87:[1,55],93:[1,38],97:[1,44],98:[1,54],100:39,101:[1,63],103:[1,64],104:40,105:[1,65],106:41,107:[1,66],108:67,116:[1,42],121:37,122:[1,62],124:[1,31],125:[1,32],126:[1,33],127:[1,34],128:[1,35]},{6:[2,124],25:[2,124],52:[2,124],55:[1,220],88:[2,124],89:219,90:[1,188],100:85,101:[1,63],103:[1,64],106:86,107:[1,66],108:67,123:[1,84],125:[1,78],126:[1,77],129:[1,76],130:[1,79],131:[1,80],132:[1,81],133:[1,82],134:[1,83]},{1:[2,110],6:[2,110],25:[2,110],26:[2,110],38:[2,110],47:[2,110],52:[2,110],55:[2,110],64:[2,110],65:[2,110],66:[2,110],68:[2,110],70:[2,110],71:[2,110],75:[2,110],81:[2,110],82:[2,110],83:[2,110],88:[2,110],90:[2,110],99:[2,110],101:[2,110],102:[2,110],103:[2,110],107:[2,110],113:[2,110],114:[2,110],115:[2,110],123:[2,110],125:[2,110],126:[2,110],129:[2,110],130:[2,110],131:[2,110],132:[2,110],133:[2,110],134:[2,110]},{6:[2,51],25:[2,51],51:221,52:[1,222],88:[2,51]},{6:[2,119],25:[2,119],26:[2,119],52:[2,119],83:[2,119],88:[2,119]},{8:197,9:115,10:20,11:21,12:[1,22],13:8,14:9,15:10,16:11,17:12,18:13,19:14,20:15,21:16,22:17,23:18,24:19,25:[1,144],27:60,28:[1,71],29:49,30:[1,69],31:[1,70],32:24,33:[1,50],34:[1,51],35:[1,52],36:[1,53],37:23,42:61,43:[1,45],44:[1,46],45:[1,29],48:30,49:[1,58],50:[1,59],56:47,57:48,58:145,59:36,61:25,62:26,63:27,73:[1,68],76:[1,43],80:[1,28],84:223,85:[1,56],86:[1,57],87:[1,55],91:143,93:[1,38],97:[1,44],98:[1,54],100:39,101:[1,63],103:[1,64],104:40,105:[1,65],106:41,107:[1,66],108:67,116:[1,42],121:37,122:[1,62],124:[1,31],125:[1,32],126:[1,33],127:[1,34],128:[1,35]},{6:[2,125],25:[2,125],26:[2,125],52:[2,125],83:[2,125],88:[2,125]},{1:[2,109],6:[2,109],25:[2,109],26:[2,109],38:[2,109],41:[2,109],47:[2,109],52:[2,109],55:[2,109],64:[2,109],65:[2,109],66:[2,109],68:[2,109],70:[2,109],71:[2,109],75:[2,109],77:[2,109],81:[2,109],82:[2,109],83:[2,109],88:[2,109],90:[2,109],99:[2,109],101:[2,109],102:[2,109],103:[2,109],107:[2,109],115:[2,109],123:[2,109],125:[2,109],126:[2,109],127:[2,109],128:[2,109],129:[2,109],130:[2,109],131:[2,109],132:[2,109],133:[2,109],134:[2,109],135:[2,109]},{5:224,25:[1,5],100:85,101:[1,63],103:[1,64],106:86,107:[1,66],108:67,123:[1,84],125:[1,78],126:[1,77],129:[1,76],130:[1,79],131:[1,80],132:[1,81],133:[1,82],134:[1,83]},{1:[2,136],6:[2,136],25:[2,136],26:[2,136],47:[2,136],52:[2,136],55:[2,136],70:[2,136],75:[2,136],83:[2,136],88:[2,136],90:[2,136],99:[2,136],100:85,101:[1,63],102:[1,225],103:[1,64],106:86,107:[1,66],108:67,115:[2,136],123:[2,136],125:[1,78],126:[1,77],129:[1,76],130:[1,79],131:[1,80],132:[1,81],133:[1,82],134:[1,83]},{1:[2,138],6:[2,138],25:[2,138],26:[2,138],47:[2,138],52:[2,138],55:[2,138],70:[2,138],75:[2,138],83:[2,138],88:[2,138],90:[2,138],99:[2,138],100:85,101:[1,63],102:[1,226],103:[1,64],106:86,107:[1,66],108:67,115:[2,138],123:[2,138],125:[1,78],126:[1,77],129:[1,76],130:[1,79],131:[1,80],132:[1,81],133:[1,82],134:[1,83]},{1:[2,144],6:[2,144],25:[2,144],26:[2,144],47:[2,144],52:[2,144],55:[2,144],70:[2,144],75:[2,144],83:[2,144],88:[2,144],90:[2,144],99:[2,144],101:[2,144],102:[2,144],103:[2,144],107:[2,144],115:[2,144],123:[2,144],125:[2,144],126:[2,144],129:[2,144],130:[2,144],131:[2,144],132:[2,144],133:[2,144],134:[2,144]},{1:[2,145],6:[2,145],25:[2,145],26:[2,145],47:[2,145],52:[2,145],55:[2,145],70:[2,145],75:[2,145],83:[2,145],88:[2,145],90:[2,145],99:[2,145],100:85,101:[1,63],102:[2,145],103:[1,64],106:86,107:[1,66],108:67,115:[2,145],123:[2,145],125:[1,78],126:[1,77],129:[1,76],130:[1,79],131:[1,80],132:[1,81],133:[1,82],134:[1,83]},{1:[2,149],6:[2,149],25:[2,149],26:[2,149],47:[2,149],52:[2,149],55:[2,149],70:[2,149],75:[2,149],83:[2,149],88:[2,149],90:[2,149],99:[2,149],101:[2,149],102:[2,149],103:[2,149],107:[2,149],115:[2,149],123:[2,149],125:[2,149],126:[2,149],129:[2,149],130:[2,149],131:[2,149],132:[2,149],133:[2,149],134:[2,149]},{113:[2,151],114:[2,151]},{27:156,28:[1,71],56:157,57:158,73:[1,68],87:[1,112],110:227,112:155},{52:[1,228],113:[2,156],114:[2,156]},{52:[2,153],113:[2,153],114:[2,153]},{52:[2,154],113:[2,154],114:[2,154]},{52:[2,155],113:[2,155],114:[2,155]},{1:[2,150],6:[2,150],25:[2,150],26:[2,150],47:[2,150],52:[2,150],55:[2,150],70:[2,150],75:[2,150],83:[2,150],88:[2,150],90:[2,150],99:[2,150],101:[2,150],102:[2,150],103:[2,150],107:[2,150],115:[2,150],123:[2,150],125:[2,150],126:[2,150],129:[2,150],130:[2,150],131:[2,150],132:[2,150],133:[2,150],134:[2,150]},{8:229,9:115,10:20,11:21,12:[1,22],13:8,14:9,15:10,16:11,17:12,18:13,19:14,20:15,21:16,22:17,23:18,24:19,27:60,28:[1,71],29:49,30:[1,69],31:[1,70],32:24,33:[1,50],34:[1,51],35:[1,52],36:[1,53],37:23,42:61,43:[1,45],44:[1,46],45:[1,29],48:30,49:[1,58],50:[1,59],56:47,57:48,59:36,61:25,62:26,63:27,73:[1,68],76:[1,43],80:[1,28],85:[1,56],86:[1,57],87:[1,55],93:[1,38],97:[1,44],98:[1,54],100:39,101:[1,63],103:[1,64],104:40,105:[1,65],106:41,107:[1,66],108:67,116:[1,42],121:37,122:[1,62],124:[1,31],125:[1,32],126:[1,33],127:[1,34],128:[1,35]},{8:230,9:115,10:20,11:21,12:[1,22],13:8,14:9,15:10,16:11,17:12,18:13,19:14,20:15,21:16,22:17,23:18,24:19,27:60,28:[1,71],29:49,30:[1,69],31:[1,70],32:24,33:[1,50],34:[1,51],35:[1,52],36:[1,53],37:23,42:61,43:[1,45],44:[1,46],45:[1,29],48:30,49:[1,58],50:[1,59],56:47,57:48,59:36,61:25,62:26,63:27,73:[1,68],76:[1,43],80:[1,28],85:[1,56],86:[1,57],87:[1,55],93:[1,38],97:[1,44],98:[1,54],100:39,101:[1,63],103:[1,64],104:40,105:[1,65],106:41,107:[1,66],108:67,116:[1,42],121:37,122:[1,62],124:[1,31],125:[1,32],126:[1,33],127:[1,34],128:[1,35]},{6:[2,51],25:[2,51],51:231,52:[1,232],75:[2,51]},{6:[2,87],25:[2,87],26:[2,87],52:[2,87],75:[2,87]},{6:[2,37],25:[2,37],26:[2,37],41:[1,233],52:[2,37],75:[2,37]},{6:[2,40],25:[2,40],26:[2,40],52:[2,40],75:[2,40]},{6:[2,41],25:[2,41],26:[2,41],41:[2,41],52:[2,41],75:[2,41]},{6:[2,42],25:[2,42],26:[2,42],41:[2,42],52:[2,42],75:[2,42]},{6:[2,43],25:[2,43],26:[2,43],41:[2,43],52:[2,43],75:[2,43]},{1:[2,5],6:[2,5],26:[2,5],99:[2,5]},{1:[2,25],6:[2,25],25:[2,25],26:[2,25],47:[2,25],52:[2,25],55:[2,25],70:[2,25],75:[2,25],83:[2,25],88:[2,25],90:[2,25],95:[2,25],96:[2,25],99:[2,25],101:[2,25],102:[2,25],103:[2,25],107:[2,25],115:[2,25],118:[2,25],120:[2,25],123:[2,25],125:[2,25],126:[2,25],129:[2,25],130:[2,25],131:[2,25],132:[2,25],133:[2,25],134:[2,25]},{1:[2,187],6:[2,187],25:[2,187],26:[2,187],47:[2,187],52:[2,187],55:[2,187],70:[2,187],75:[2,187],83:[2,187],88:[2,187],90:[2,187],99:[2,187],100:85,101:[2,187],102:[2,187],103:[2,187],106:86,107:[2,187],108:67,115:[2,187],123:[2,187],125:[2,187],126:[2,187],129:[1,76],130:[1,79],131:[2,187],132:[2,187],133:[2,187],134:[2,187]},{1:[2,188],6:[2,188],25:[2,188],26:[2,188],47:[2,188],52:[2,188],55:[2,188],70:[2,188],75:[2,188],83:[2,188],88:[2,188],90:[2,188],99:[2,188],100:85,101:[2,188],102:[2,188],103:[2,188],106:86,107:[2,188],108:67,115:[2,188],123:[2,188],125:[2,188],126:[2,188],129:[1,76],130:[1,79],131:[2,188],132:[2,188],133:[2,188],134:[2,188]},{1:[2,189],6:[2,189],25:[2,189],26:[2,189],47:[2,189],52:[2,189],55:[2,189],70:[2,189],75:[2,189],83:[2,189],88:[2,189],90:[2,189],99:[2,189],100:85,101:[2,189],102:[2,189],103:[2,189],106:86,107:[2,189],108:67,115:[2,189],123:[2,189],125:[2,189],126:[2,189],129:[1,76],130:[2,189],131:[2,189],132:[2,189],133:[2,189],134:[2,189]},{1:[2,190],6:[2,190],25:[2,190],26:[2,190],47:[2,190],52:[2,190],55:[2,190],70:[2,190],75:[2,190],83:[2,190],88:[2,190],90:[2,190],99:[2,190],100:85,101:[2,190],102:[2,190],103:[2,190],106:86,107:[2,190],108:67,115:[2,190],123:[2,190],125:[1,78],126:[1,77],129:[1,76],130:[1,79],131:[2,190],132:[2,190],133:[2,190],134:[2,190]},{1:[2,191],6:[2,191],25:[2,191],26:[2,191],47:[2,191],52:[2,191],55:[2,191],70:[2,191],75:[2,191],83:[2,191],88:[2,191],90:[2,191],99:[2,191],100:85,101:[2,191],102:[2,191],103:[2,191],106:86,107:[2,191],108:67,115:[2,191],123:[2,191],125:[1,78],126:[1,77],129:[1,76],130:[1,79],131:[1,80],132:[2,191],133:[2,191],134:[1,83]},{1:[2,192],6:[2,192],25:[2,192],26:[2,192],47:[2,192],52:[2,192],55:[2,192],70:[2,192],75:[2,192],83:[2,192],88:[2,192],90:[2,192],99:[2,192],100:85,101:[2,192],102:[2,192],103:[2,192],106:86,107:[2,192],108:67,115:[2,192],123:[2,192],125:[1,78],126:[1,77],129:[1,76],130:[1,79],131:[1,80],132:[1,81],133:[2,192],134:[1,83]},{1:[2,193],6:[2,193],25:[2,193],26:[2,193],47:[2,193],52:[2,193],55:[2,193],70:[2,193],75:[2,193],83:[2,193],88:[2,193],90:[2,193],99:[2,193],100:85,101:[2,193],102:[2,193],103:[2,193],106:86,107:[2,193],108:67,115:[2,193],123:[2,193],125:[1,78],126:[1,77],129:[1,76],130:[1,79],131:[1,80],132:[2,193],133:[2,193],134:[2,193]},{1:[2,178],6:[2,178],25:[2,178],26:[2,178],47:[2,178],52:[2,178],55:[2,178],70:[2,178],75:[2,178],83:[2,178],88:[2,178],90:[2,178],99:[2,178],100:85,101:[1,63],102:[2,178],103:[1,64],106:86,107:[1,66],108:67,115:[2,178],123:[1,84],125:[1,78],126:[1,77],129:[1,76],130:[1,79],131:[1,80],132:[1,81],133:[1,82],134:[1,83]},{1:[2,177],6:[2,177],25:[2,177],26:[2,177],47:[2,177],52:[2,177],55:[2,177],70:[2,177],75:[2,177],83:[2,177],88:[2,177],90:[2,177],99:[2,177],100:85,101:[1,63],102:[2,177],103:[1,64],106:86,107:[1,66],108:67,115:[2,177],123:[1,84],125:[1,78],126:[1,77],129:[1,76],130:[1,79],131:[1,80],132:[1,81],133:[1,82],134:[1,83]},{1:[2,99],6:[2,99],25:[2,99],26:[2,99],47:[2,99],52:[2,99],55:[2,99],64:[2,99],65:[2,99],66:[2,99],68:[2,99],70:[2,99],71:[2,99],75:[2,99],81:[2,99],82:[2,99],83:[2,99],88:[2,99],90:[2,99],99:[2,99],101:[2,99],102:[2,99],103:[2,99],107:[2,99],115:[2,99],123:[2,99],125:[2,99],126:[2,99],129:[2,99],130:[2,99],131:[2,99],132:[2,99],133:[2,99],134:[2,99]},{1:[2,76],6:[2,76],25:[2,76],26:[2,76],38:[2,76],47:[2,76],52:[2,76],55:[2,76],64:[2,76],65:[2,76],66:[2,76],68:[2,76],70:[2,76],71:[2,76],75:[2,76],77:[2,76],81:[2,76],82:[2,76],83:[2,76],88:[2,76],90:[2,76],99:[2,76],101:[2,76],102:[2,76],103:[2,76],107:[2,76],115:[2,76],123:[2,76],125:[2,76],126:[2,76],127:[2,76],128:[2,76],129:[2,76],130:[2,76],131:[2,76],132:[2,76],133:[2,76],134:[2,76],135:[2,76]},{1:[2,77],6:[2,77],25:[2,77],26:[2,77],38:[2,77],47:[2,77],52:[2,77],55:[2,77],64:[2,77],65:[2,77],66:[2,77],68:[2,77],70:[2,77],71:[2,77],75:[2,77],77:[2,77],81:[2,77],82:[2,77],83:[2,77],88:[2,77],90:[2,77],99:[2,77],101:[2,77],102:[2,77],103:[2,77],107:[2,77],115:[2,77],123:[2,77],125:[2,77],126:[2,77],127:[2,77],128:[2,77],129:[2,77],130:[2,77],131:[2,77],132:[2,77],133:[2,77],134:[2,77],135:[2,77]},{1:[2,78],6:[2,78],25:[2,78],26:[2,78],38:[2,78],47:[2,78],52:[2,78],55:[2,78],64:[2,78],65:[2,78],66:[2,78],68:[2,78],70:[2,78],71:[2,78],75:[2,78],77:[2,78],81:[2,78],82:[2,78],83:[2,78],88:[2,78],90:[2,78],99:[2,78],101:[2,78],102:[2,78],103:[2,78],107:[2,78],115:[2,78],123:[2,78],125:[2,78],126:[2,78],127:[2,78],128:[2,78],129:[2,78],130:[2,78],131:[2,78],132:[2,78],133:[2,78],134:[2,78],135:[2,78]},{70:[1,234]},{55:[1,189],70:[2,83],89:235,90:[1,188],100:85,101:[1,63],103:[1,64],106:86,107:[1,66],108:67,123:[1,84],125:[1,78],126:[1,77],129:[1,76],130:[1,79],131:[1,80],132:[1,81],133:[1,82],134:[1,83]},{70:[2,84]},{8:236,9:115,10:20,11:21,12:[1,22],13:8,14:9,15:10,16:11,17:12,18:13,19:14,20:15,21:16,22:17,23:18,24:19,27:60,28:[1,71],29:49,30:[1,69],31:[1,70],32:24,33:[1,50],34:[1,51],35:[1,52],36:[1,53],37:23,42:61,43:[1,45],44:[1,46],45:[1,29],48:30,49:[1,58],50:[1,59],56:47,57:48,59:36,61:25,62:26,63:27,70:[2,118],73:[1,68],76:[1,43],80:[1,28],85:[1,56],86:[1,57],87:[1,55],93:[1,38],97:[1,44],98:[1,54],100:39,101:[1,63],103:[1,64],104:40,105:[1,65],106:41,107:[1,66],108:67,116:[1,42],121:37,122:[1,62],124:[1,31],125:[1,32],126:[1,33],127:[1,34],128:[1,35]},{12:[2,112],28:[2,112],30:[2,112],31:[2,112],33:[2,112],34:[2,112],35:[2,112],36:[2,112],43:[2,112],44:[2,112],45:[2,112],49:[2,112],50:[2,112],70:[2,112],73:[2,112],76:[2,112],80:[2,112],85:[2,112],86:[2,112],87:[2,112],93:[2,112],97:[2,112],98:[2,112],101:[2,112],103:[2,112],105:[2,112],107:[2,112],116:[2,112],122:[2,112],124:[2,112],125:[2,112],126:[2,112],127:[2,112],128:[2,112]},{12:[2,113],28:[2,113],30:[2,113],31:[2,113],33:[2,113],34:[2,113],35:[2,113],36:[2,113],43:[2,113],44:[2,113],45:[2,113],49:[2,113],50:[2,113],70:[2,113],73:[2,113],76:[2,113],80:[2,113],85:[2,113],86:[2,113],87:[2,113],93:[2,113],97:[2,113],98:[2,113],101:[2,113],103:[2,113],105:[2,113],107:[2,113],116:[2,113],122:[2,113],124:[2,113],125:[2,113],126:[2,113],127:[2,113],128:[2,113]},{1:[2,82],6:[2,82],25:[2,82],26:[2,82],38:[2,82],47:[2,82],52:[2,82],55:[2,82],64:[2,82],65:[2,82],66:[2,82],68:[2,82],70:[2,82],71:[2,82],75:[2,82],77:[2,82],81:[2,82],82:[2,82],83:[2,82],88:[2,82],90:[2,82],99:[2,82],101:[2,82],102:[2,82],103:[2,82],107:[2,82],115:[2,82],123:[2,82],125:[2,82],126:[2,82],127:[2,82],128:[2,82],129:[2,82],130:[2,82],131:[2,82],132:[2,82],133:[2,82],134:[2,82],135:[2,82]},{1:[2,100],6:[2,100],25:[2,100],26:[2,100],47:[2,100],52:[2,100],55:[2,100],64:[2,100],65:[2,100],66:[2,100],68:[2,100],70:[2,100],71:[2,100],75:[2,100],81:[2,100],82:[2,100],83:[2,100],88:[2,100],90:[2,100],99:[2,100],101:[2,100],102:[2,100],103:[2,100],107:[2,100],115:[2,100],123:[2,100],125:[2,100],126:[2,100],129:[2,100],130:[2,100],131:[2,100],132:[2,100],133:[2,100],134:[2,100]},{1:[2,34],6:[2,34],25:[2,34],26:[2,34],47:[2,34],52:[2,34],55:[2,34],70:[2,34],75:[2,34],83:[2,34],88:[2,34],90:[2,34],99:[2,34],100:85,101:[2,34],102:[2,34],103:[2,34],106:86,107:[2,34],108:67,115:[2,34],123:[2,34],125:[1,78],126:[1,77],129:[1,76],130:[1,79],131:[1,80],132:[1,81],133:[1,82],134:[1,83]},{8:237,9:115,10:20,11:21,12:[1,22],13:8,14:9,15:10,16:11,17:12,18:13,19:14,20:15,21:16,22:17,23:18,24:19,27:60,28:[1,71],29:49,30:[1,69],31:[1,70],32:24,33:[1,50],34:[1,51],35:[1,52],36:[1,53],37:23,42:61,43:[1,45],44:[1,46],45:[1,29],48:30,49:[1,58],50:[1,59],56:47,57:48,59:36,61:25,62:26,63:27,73:[1,68],76:[1,43],80:[1,28],85:[1,56],86:[1,57],87:[1,55],93:[1,38],97:[1,44],98:[1,54],100:39,101:[1,63],103:[1,64],104:40,105:[1,65],106:41,107:[1,66],108:67,116:[1,42],121:37,122:[1,62],124:[1,31],125:[1,32],126:[1,33],127:[1,34],128:[1,35]},{8:238,9:115,10:20,11:21,12:[1,22],13:8,14:9,15:10,16:11,17:12,18:13,19:14,20:15,21:16,22:17,23:18,24:19,27:60,28:[1,71],29:49,30:[1,69],31:[1,70],32:24,33:[1,50],34:[1,51],35:[1,52],36:[1,53],37:23,42:61,43:[1,45],44:[1,46],45:[1,29],48:30,49:[1,58],50:[1,59],56:47,57:48,59:36,61:25,62:26,63:27,73:[1,68],76:[1,43],80:[1,28],85:[1,56],86:[1,57],87:[1,55],93:[1,38],97:[1,44],98:[1,54],100:39,101:[1,63],103:[1,64],104:40,105:[1,65],106:41,107:[1,66],108:67,116:[1,42],121:37,122:[1,62],124:[1,31],125:[1,32],126:[1,33],127:[1,34],128:[1,35]},{1:[2,105],6:[2,105],25:[2,105],26:[2,105],47:[2,105],52:[2,105],55:[2,105],64:[2,105],65:[2,105],66:[2,105],68:[2,105],70:[2,105],71:[2,105],75:[2,105],81:[2,105],82:[2,105],83:[2,105],88:[2,105],90:[2,105],99:[2,105],101:[2,105],102:[2,105],103:[2,105],107:[2,105],115:[2,105],123:[2,105],125:[2,105],126:[2,105],129:[2,105],130:[2,105],131:[2,105],132:[2,105],133:[2,105],134:[2,105]},{6:[2,51],25:[2,51],51:239,52:[1,222],83:[2,51]},{6:[2,124],25:[2,124],26:[2,124],52:[2,124],55:[1,240],83:[2,124],88:[2,124],100:85,101:[1,63],103:[1,64],106:86,107:[1,66],108:67,123:[1,84],125:[1,78],126:[1,77],129:[1,76],130:[1,79],131:[1,80],132:[1,81],133:[1,82],134:[1,83]},{48:241,49:[1,58],50:[1,59]},{27:107,28:[1,71],42:108,53:242,54:106,56:109,57:110,73:[1,68],86:[1,111],87:[1,112]},{47:[2,57],52:[2,57]},{8:243,9:115,10:20,11:21,12:[1,22],13:8,14:9,15:10,16:11,17:12,18:13,19:14,20:15,21:16,22:17,23:18,24:19,27:60,28:[1,71],29:49,30:[1,69],31:[1,70],32:24,33:[1,50],34:[1,51],35:[1,52],36:[1,53],37:23,42:61,43:[1,45],44:[1,46],45:[1,29],48:30,49:[1,58],50:[1,59],56:47,57:48,59:36,61:25,62:26,63:27,73:[1,68],76:[1,43],80:[1,28],85:[1,56],86:[1,57],87:[1,55],93:[1,38],97:[1,44],98:[1,54],100:39,101:[1,63],103:[1,64],104:40,105:[1,65],106:41,107:[1,66],108:67,116:[1,42],121:37,122:[1,62],124:[1,31],125:[1,32],126:[1,33],127:[1,34],128:[1,35]},{1:[2,194],6:[2,194],25:[2,194],26:[2,194],47:[2,194],52:[2,194],55:[2,194],70:[2,194],75:[2,194],83:[2,194],88:[2,194],90:[2,194],99:[2,194],100:85,101:[2,194],102:[2,194],103:[2,194],106:86,107:[2,194],108:67,115:[2,194],123:[2,194],125:[1,78],126:[1,77],129:[1,76],130:[1,79],131:[1,80],132:[1,81],133:[1,82],134:[1,83]},{8:244,9:115,10:20,11:21,12:[1,22],13:8,14:9,15:10,16:11,17:12,18:13,19:14,20:15,21:16,22:17,23:18,24:19,27:60,28:[1,71],29:49,30:[1,69],31:[1,70],32:24,33:[1,50],34:[1,51],35:[1,52],36:[1,53],37:23,42:61,43:[1,45],44:[1,46],45:[1,29],48:30,49:[1,58],50:[1,59],56:47,57:48,59:36,61:25,62:26,63:27,73:[1,68],76:[1,43],80:[1,28],85:[1,56],86:[1,57],87:[1,55],93:[1,38],97:[1,44],98:[1,54],100:39,101:[1,63],103:[1,64],104:40,105:[1,65],106:41,107:[1,66],108:67,116:[1,42],121:37,122:[1,62],124:[1,31],125:[1,32],126:[1,33],127:[1,34],128:[1,35]},{1:[2,196],6:[2,196],25:[2,196],26:[2,196],47:[2,196],52:[2,196],55:[2,196],70:[2,196],75:[2,196],83:[2,196],88:[2,196],90:[2,196],99:[2,196],100:85,101:[2,196],102:[2,196],103:[2,196],106:86,107:[2,196],108:67,115:[2,196],123:[2,196],125:[1,78],126:[1,77],129:[1,76],130:[1,79],131:[1,80],132:[1,81],133:[1,82],134:[1,83]},{1:[2,176],6:[2,176],25:[2,176],26:[2,176],47:[2,176],52:[2,176],55:[2,176],70:[2,176],75:[2,176],83:[2,176],88:[2,176],90:[2,176],99:[2,176],101:[2,176],102:[2,176],103:[2,176],107:[2,176],115:[2,176],123:[2,176],125:[2,176],126:[2,176],129:[2,176],130:[2,176],131:[2,176],132:[2,176],133:[2,176],134:[2,176]},{8:245,9:115,10:20,11:21,12:[1,22],13:8,14:9,15:10,16:11,17:12,18:13,19:14,20:15,21:16,22:17,23:18,24:19,27:60,28:[1,71],29:49,30:[1,69],31:[1,70],32:24,33:[1,50],34:[1,51],35:[1,52],36:[1,53],37:23,42:61,43:[1,45],44:[1,46],45:[1,29],48:30,49:[1,58],50:[1,59],56:47,57:48,59:36,61:25,62:26,63:27,73:[1,68],76:[1,43],80:[1,28],85:[1,56],86:[1,57],87:[1,55],93:[1,38],97:[1,44],98:[1,54],100:39,101:[1,63],103:[1,64],104:40,105:[1,65],106:41,107:[1,66],108:67,116:[1,42],121:37,122:[1,62],124:[1,31],125:[1,32],126:[1,33],127:[1,34],128:[1,35]},{1:[2,129],6:[2,129],25:[2,129],26:[2,129],47:[2,129],52:[2,129],55:[2,129],70:[2,129],75:[2,129],83:[2,129],88:[2,129],90:[2,129],95:[1,246],99:[2,129],101:[2,129],102:[2,129],103:[2,129],107:[2,129],115:[2,129],123:[2,129],125:[2,129],126:[2,129],129:[2,129],130:[2,129],131:[2,129],132:[2,129],133:[2,129],134:[2,129]},{5:247,25:[1,5]},{27:248,28:[1,71]},{117:249,119:212,120:[1,213]},{26:[1,250],118:[1,251],119:252,120:[1,213]},{26:[2,169],118:[2,169],120:[2,169]},{8:254,9:115,10:20,11:21,12:[1,22],13:8,14:9,15:10,16:11,17:12,18:13,19:14,20:15,21:16,22:17,23:18,24:19,27:60,28:[1,71],29:49,30:[1,69],31:[1,70],32:24,33:[1,50],34:[1,51],35:[1,52],36:[1,53],37:23,42:61,43:[1,45],44:[1,46],45:[1,29],48:30,49:[1,58],50:[1,59],56:47,57:48,59:36,61:25,62:26,63:27,73:[1,68],76:[1,43],80:[1,28],85:[1,56],86:[1,57],87:[1,55],92:253,93:[1,38],97:[1,44],98:[1,54],100:39,101:[1,63],103:[1,64],104:40,105:[1,65],106:41,107:[1,66],108:67,116:[1,42],121:37,122:[1,62],124:[1,31],125:[1,32],126:[1,33],127:[1,34],128:[1,35]},{1:[2,93],5:255,6:[2,93],25:[1,5],26:[2,93],47:[2,93],52:[2,93],55:[2,93],70:[2,93],75:[2,93],83:[2,93],88:[2,93],90:[2,93],99:[2,93],100:85,101:[1,63],102:[2,93],103:[1,64],106:86,107:[1,66],108:67,115:[2,93],123:[2,93],125:[1,78],126:[1,77],129:[1,76],130:[1,79],131:[1,80],132:[1,81],133:[1,82],134:[1,83]},{1:[2,96],6:[2,96],25:[2,96],26:[2,96],47:[2,96],52:[2,96],55:[2,96],70:[2,96],75:[2,96],83:[2,96],88:[2,96],90:[2,96],99:[2,96],101:[2,96],102:[2,96],103:[2,96],107:[2,96],115:[2,96],123:[2,96],125:[2,96],126:[2,96],129:[2,96],130:[2,96],131:[2,96],132:[2,96],133:[2,96],134:[2,96]},{8:256,9:115,10:20,11:21,12:[1,22],13:8,14:9,15:10,16:11,17:12,18:13,19:14,20:15,21:16,22:17,23:18,24:19,27:60,28:[1,71],29:49,30:[1,69],31:[1,70],32:24,33:[1,50],34:[1,51],35:[1,52],36:[1,53],37:23,42:61,43:[1,45],44:[1,46],45:[1,29],48:30,49:[1,58],50:[1,59],56:47,57:48,59:36,61:25,62:26,63:27,73:[1,68],76:[1,43],80:[1,28],85:[1,56],86:[1,57],87:[1,55],93:[1,38],97:[1,44],98:[1,54],100:39,101:[1,63],103:[1,64],104:40,105:[1,65],106:41,107:[1,66],108:67,116:[1,42],121:37,122:[1,62],124:[1,31],125:[1,32],126:[1,33],127:[1,34],128:[1,35]},{1:[2,134],6:[2,134],25:[2,134],26:[2,134],47:[2,134],52:[2,134],55:[2,134],64:[2,134],65:[2,134],66:[2,134],68:[2,134],70:[2,134],71:[2,134],75:[2,134],81:[2,134],82:[2,134],83:[2,134],88:[2,134],90:[2,134],99:[2,134],101:[2,134],102:[2,134],103:[2,134],107:[2,134],115:[2,134],123:[2,134],125:[2,134],126:[2,134],129:[2,134],130:[2,134],131:[2,134],132:[2,134],133:[2,134],134:[2,134]},{6:[1,72],26:[1,257]},{8:258,9:115,10:20,11:21,12:[1,22],13:8,14:9,15:10,16:11,17:12,18:13,19:14,20:15,21:16,22:17,23:18,24:19,27:60,28:[1,71],29:49,30:[1,69],31:[1,70],32:24,33:[1,50],34:[1,51],35:[1,52],36:[1,53],37:23,42:61,43:[1,45],44:[1,46],45:[1,29],48:30,49:[1,58],50:[1,59],56:47,57:48,59:36,61:25,62:26,63:27,73:[1,68],76:[1,43],80:[1,28],85:[1,56],86:[1,57],87:[1,55],93:[1,38],97:[1,44],98:[1,54],100:39,101:[1,63],103:[1,64],104:40,105:[1,65],106:41,107:[1,66],108:67,116:[1,42],121:37,122:[1,62],124:[1,31],125:[1,32],126:[1,33],127:[1,34],128:[1,35]},{6:[2,63],12:[2,113],25:[2,63],28:[2,113],30:[2,113],31:[2,113],33:[2,113],34:[2,113],35:[2,113],36:[2,113],43:[2,113],44:[2,113],45:[2,113],49:[2,113],50:[2,113],52:[2,63],73:[2,113],76:[2,113],80:[2,113],85:[2,113],86:[2,113],87:[2,113],88:[2,63],93:[2,113],97:[2,113],98:[2,113],101:[2,113],103:[2,113],105:[2,113],107:[2,113],116:[2,113],122:[2,113],124:[2,113],125:[2,113],126:[2,113],127:[2,113],128:[2,113]},{6:[1,260],25:[1,261],88:[1,259]},{6:[2,52],8:197,9:115,10:20,11:21,12:[1,22],13:8,14:9,15:10,16:11,17:12,18:13,19:14,20:15,21:16,22:17,23:18,24:19,25:[2,52],26:[2,52],27:60,28:[1,71],29:49,30:[1,69],31:[1,70],32:24,33:[1,50],34:[1,51],35:[1,52],36:[1,53],37:23,42:61,43:[1,45],44:[1,46],45:[1,29],48:30,49:[1,58],50:[1,59],56:47,57:48,58:145,59:36,61:25,62:26,63:27,73:[1,68],76:[1,43],80:[1,28],83:[2,52],85:[1,56],86:[1,57],87:[1,55],88:[2,52],91:262,93:[1,38],97:[1,44],98:[1,54],100:39,101:[1,63],103:[1,64],104:40,105:[1,65],106:41,107:[1,66],108:67,116:[1,42],121:37,122:[1,62],124:[1,31],125:[1,32],126:[1,33],127:[1,34],128:[1,35]},{6:[2,51],25:[2,51],26:[2,51],51:263,52:[1,222]},{1:[2,173],6:[2,173],25:[2,173],26:[2,173],47:[2,173],52:[2,173],55:[2,173],70:[2,173],75:[2,173],83:[2,173],88:[2,173],90:[2,173],99:[2,173],101:[2,173],102:[2,173],103:[2,173],107:[2,173],115:[2,173],118:[2,173],123:[2,173],125:[2,173],126:[2,173],129:[2,173],130:[2,173],131:[2,173],132:[2,173],133:[2,173],134:[2,173]},{8:264,9:115,10:20,11:21,12:[1,22],13:8,14:9,15:10,16:11,17:12,18:13,19:14,20:15,21:16,22:17,23:18,24:19,27:60,28:[1,71],29:49,30:[1,69],31:[1,70],32:24,33:[1,50],34:[1,51],35:[1,52],36:[1,53],37:23,42:61,43:[1,45],44:[1,46],45:[1,29],48:30,49:[1,58],50:[1,59],56:47,57:48,59:36,61:25,62:26,63:27,73:[1,68],76:[1,43],80:[1,28],85:[1,56],86:[1,57],87:[1,55],93:[1,38],97:[1,44],98:[1,54],100:39,101:[1,63],103:[1,64],104:40,105:[1,65],106:41,107:[1,66],108:67,116:[1,42],121:37,122:[1,62],124:[1,31],125:[1,32],126:[1,33],127:[1,34],128:[1,35]},{8:265,9:115,10:20,11:21,12:[1,22],13:8,14:9,15:10,16:11,17:12,18:13,19:14,20:15,21:16,22:17,23:18,24:19,27:60,28:[1,71],29:49,30:[1,69],31:[1,70],32:24,33:[1,50],34:[1,51],35:[1,52],36:[1,53],37:23,42:61,43:[1,45],44:[1,46],45:[1,29],48:30,49:[1,58],50:[1,59],56:47,57:48,59:36,61:25,62:26,63:27,73:[1,68],76:[1,43],80:[1,28],85:[1,56],86:[1,57],87:[1,55],93:[1,38],97:[1,44],98:[1,54],100:39,101:[1,63],103:[1,64],104:40,105:[1,65],106:41,107:[1,66],108:67,116:[1,42],121:37,122:[1,62],124:[1,31],125:[1,32],126:[1,33],127:[1,34],128:[1,35]},{113:[2,152],114:[2,152]},{27:156,28:[1,71],56:157,57:158,73:[1,68],87:[1,112],112:266},{1:[2,158],6:[2,158],25:[2,158],26:[2,158],47:[2,158],52:[2,158],55:[2,158],70:[2,158],75:[2,158],83:[2,158],88:[2,158],90:[2,158],99:[2,158],100:85,101:[2,158],102:[1,267],103:[2,158],106:86,107:[2,158],108:67,115:[1,268],123:[2,158],125:[1,78],126:[1,77],129:[1,76],130:[1,79],131:[1,80],132:[1,81],133:[1,82],134:[1,83]},{1:[2,159],6:[2,159],25:[2,159],26:[2,159],47:[2,159],52:[2,159],55:[2,159],70:[2,159],75:[2,159],83:[2,159],88:[2,159],90:[2,159],99:[2,159],100:85,101:[2,159],102:[1,269],103:[2,159],106:86,107:[2,159],108:67,115:[2,159],123:[2,159],125:[1,78],126:[1,77],129:[1,76],130:[1,79],131:[1,80],132:[1,81],133:[1,82],134:[1,83]},{6:[1,271],25:[1,272],75:[1,270]},{6:[2,52],11:165,25:[2,52],26:[2,52],27:166,28:[1,71],29:167,30:[1,69],31:[1,70],39:273,40:164,42:168,44:[1,46],75:[2,52],86:[1,111]},{8:274,9:115,10:20,11:21,12:[1,22],13:8,14:9,15:10,16:11,17:12,18:13,19:14,20:15,21:16,22:17,23:18,24:19,25:[1,275],27:60,28:[1,71],29:49,30:[1,69],31:[1,70],32:24,33:[1,50],34:[1,51],35:[1,52],36:[1,53],37:23,42:61,43:[1,45],44:[1,46],45:[1,29],48:30,49:[1,58],50:[1,59],56:47,57:48,59:36,61:25,62:26,63:27,73:[1,68],76:[1,43],80:[1,28],85:[1,56],86:[1,57],87:[1,55],93:[1,38],97:[1,44],98:[1,54],100:39,101:[1,63],103:[1,64],104:40,105:[1,65],106:41,107:[1,66],108:67,116:[1,42],121:37,122:[1,62],124:[1,31],125:[1,32],126:[1,33],127:[1,34],128:[1,35]},{1:[2,81],6:[2,81],25:[2,81],26:[2,81],38:[2,81],47:[2,81],52:[2,81],55:[2,81],64:[2,81],65:[2,81],66:[2,81],68:[2,81],70:[2,81],71:[2,81],75:[2,81],77:[2,81],81:[2,81],82:[2,81],83:[2,81],88:[2,81],90:[2,81],99:[2,81],101:[2,81],102:[2,81],103:[2,81],107:[2,81],115:[2,81],123:[2,81],125:[2,81],126:[2,81],127:[2,81],128:[2,81],129:[2,81],130:[2,81],131:[2,81],132:[2,81],133:[2,81],134:[2,81],135:[2,81]},{8:276,9:115,10:20,11:21,12:[1,22],13:8,14:9,15:10,16:11,17:12,18:13,19:14,20:15,21:16,22:17,23:18,24:19,27:60,28:[1,71],29:49,30:[1,69],31:[1,70],32:24,33:[1,50],34:[1,51],35:[1,52],36:[1,53],37:23,42:61,43:[1,45],44:[1,46],45:[1,29],48:30,49:[1,58],50:[1,59],56:47,57:48,59:36,61:25,62:26,63:27,70:[2,116],73:[1,68],76:[1,43],80:[1,28],85:[1,56],86:[1,57],87:[1,55],93:[1,38],97:[1,44],98:[1,54],100:39,101:[1,63],103:[1,64],104:40,105:[1,65],106:41,107:[1,66],108:67,116:[1,42],121:37,122:[1,62],124:[1,31],125:[1,32],126:[1,33],127:[1,34],128:[1,35]},{70:[2,117],100:85,101:[1,63],103:[1,64],106:86,107:[1,66],108:67,123:[1,84],125:[1,78],126:[1,77],129:[1,76],130:[1,79],131:[1,80],132:[1,81],133:[1,82],134:[1,83]},{1:[2,35],6:[2,35],25:[2,35],26:[2,35],47:[2,35],52:[2,35],55:[2,35],70:[2,35],75:[2,35],83:[2,35],88:[2,35],90:[2,35],99:[2,35],100:85,101:[2,35],102:[2,35],103:[2,35],106:86,107:[2,35],108:67,115:[2,35],123:[2,35],125:[1,78],126:[1,77],129:[1,76],130:[1,79],131:[1,80],132:[1,81],133:[1,82],134:[1,83]},{26:[1,277],100:85,101:[1,63],103:[1,64],106:86,107:[1,66],108:67,123:[1,84],125:[1,78],126:[1,77],129:[1,76],130:[1,79],131:[1,80],132:[1,81],133:[1,82],134:[1,83]},{6:[1,260],25:[1,261],83:[1,278]},{6:[2,63],25:[2,63],26:[2,63],52:[2,63],83:[2,63],88:[2,63]},{5:279,25:[1,5]},{47:[2,55],52:[2,55]},{47:[2,58],52:[2,58],100:85,101:[1,63],103:[1,64],106:86,107:[1,66],108:67,123:[1,84],125:[1,78],126:[1,77],129:[1,76],130:[1,79],131:[1,80],132:[1,81],133:[1,82],134:[1,83]},{26:[1,280],100:85,101:[1,63],103:[1,64],106:86,107:[1,66],108:67,123:[1,84],125:[1,78],126:[1,77],129:[1,76],130:[1,79],131:[1,80],132:[1,81],133:[1,82],134:[1,83]},{5:281,25:[1,5],100:85,101:[1,63],103:[1,64],106:86,107:[1,66],108:67,123:[1,84],125:[1,78],126:[1,77],129:[1,76],130:[1,79],131:[1,80],132:[1,81],133:[1,82],134:[1,83]},{5:282,25:[1,5]},{1:[2,130],6:[2,130],25:[2,130],26:[2,130],47:[2,130],52:[2,130],55:[2,130],70:[2,130],75:[2,130],83:[2,130],88:[2,130],90:[2,130],99:[2,130],101:[2,130],102:[2,130],103:[2,130],107:[2,130],115:[2,130],123:[2,130],125:[2,130],126:[2,130],129:[2,130],130:[2,130],131:[2,130],132:[2,130],133:[2,130],134:[2,130]},{5:283,25:[1,5]},{26:[1,284],118:[1,285],119:252,120:[1,213]},{1:[2,167],6:[2,167],25:[2,167],26:[2,167],47:[2,167],52:[2,167],55:[2,167],70:[2,167],75:[2,167],83:[2,167],88:[2,167],90:[2,167],99:[2,167],101:[2,167],102:[2,167],103:[2,167],107:[2,167],115:[2,167],123:[2,167],125:[2,167],126:[2,167],129:[2,167],130:[2,167],131:[2,167],132:[2,167],133:[2,167],134:[2,167]},{5:286,25:[1,5]},{26:[2,170],118:[2,170],120:[2,170]},{5:287,25:[1,5],52:[1,288]},{25:[2,126],52:[2,126],100:85,101:[1,63],103:[1,64],106:86,107:[1,66],108:67,123:[1,84],125:[1,78],126:[1,77],129:[1,76],130:[1,79],131:[1,80],132:[1,81],133:[1,82],134:[1,83]},{1:[2,94],6:[2,94],25:[2,94],26:[2,94],47:[2,94],52:[2,94],55:[2,94],70:[2,94],75:[2,94],83:[2,94],88:[2,94],90:[2,94],99:[2,94],101:[2,94],102:[2,94],103:[2,94],107:[2,94],115:[2,94],123:[2,94],125:[2,94],126:[2,94],129:[2,94],130:[2,94],131:[2,94],132:[2,94],133:[2,94],134:[2,94]},{1:[2,97],5:289,6:[2,97],25:[1,5],26:[2,97],47:[2,97],52:[2,97],55:[2,97],70:[2,97],75:[2,97],83:[2,97],88:[2,97],90:[2,97],99:[2,97],100:85,101:[1,63],102:[2,97],103:[1,64],106:86,107:[1,66],108:67,115:[2,97],123:[2,97],125:[1,78],126:[1,77],129:[1,76],130:[1,79],131:[1,80],132:[1,81],133:[1,82],134:[1,83]},{99:[1,290]},{88:[1,291],100:85,101:[1,63],103:[1,64],106:86,107:[1,66],108:67,123:[1,84],125:[1,78],126:[1,77],129:[1,76],130:[1,79],131:[1,80],132:[1,81],133:[1,82],134:[1,83]},{1:[2,111],6:[2,111],25:[2,111],26:[2,111],38:[2,111],47:[2,111],52:[2,111],55:[2,111],64:[2,111],65:[2,111],66:[2,111],68:[2,111],70:[2,111],71:[2,111],75:[2,111],81:[2,111],82:[2,111],83:[2,111],88:[2,111],90:[2,111],99:[2,111],101:[2,111],102:[2,111],103:[2,111],107:[2,111],113:[2,111],114:[2,111],115:[2,111],123:[2,111],125:[2,111],126:[2,111],129:[2,111],130:[2,111],131:[2,111],132:[2,111],133:[2,111],134:[2,111]},{8:197,9:115,10:20,11:21,12:[1,22],13:8,14:9,15:10,16:11,17:12,18:13,19:14,20:15,21:16,22:17,23:18,24:19,27:60,28:[1,71],29:49,30:[1,69],31:[1,70],32:24,33:[1,50],34:[1,51],35:[1,52],36:[1,53],37:23,42:61,43:[1,45],44:[1,46],45:[1,29],48:30,49:[1,58],50:[1,59],56:47,57:48,58:145,59:36,61:25,62:26,63:27,73:[1,68],76:[1,43],80:[1,28],85:[1,56],86:[1,57],87:[1,55],91:292,93:[1,38],97:[1,44],98:[1,54],100:39,101:[1,63],103:[1,64],104:40,105:[1,65],106:41,107:[1,66],108:67,116:[1,42],121:37,122:[1,62],124:[1,31],125:[1,32],126:[1,33],127:[1,34],128:[1,35]},{8:197,9:115,10:20,11:21,12:[1,22],13:8,14:9,15:10,16:11,17:12,18:13,19:14,20:15,21:16,22:17,23:18,24:19,25:[1,144],27:60,28:[1,71],29:49,30:[1,69],31:[1,70],32:24,33:[1,50],34:[1,51],35:[1,52],36:[1,53],37:23,42:61,43:[1,45],44:[1,46],45:[1,29],48:30,49:[1,58],50:[1,59],56:47,57:48,58:145,59:36,61:25,62:26,63:27,73:[1,68],76:[1,43],80:[1,28],84:293,85:[1,56],86:[1,57],87:[1,55],91:143,93:[1,38],97:[1,44],98:[1,54],100:39,101:[1,63],103:[1,64],104:40,105:[1,65],106:41,107:[1,66],108:67,116:[1,42],121:37,122:[1,62],124:[1,31],125:[1,32],126:[1,33],127:[1,34],128:[1,35]},{6:[2,120],25:[2,120],26:[2,120],52:[2,120],83:[2,120],88:[2,120]},{6:[1,260],25:[1,261],26:[1,294]},{1:[2,137],6:[2,137],25:[2,137],26:[2,137],47:[2,137],52:[2,137],55:[2,137],70:[2,137],75:[2,137],83:[2,137],88:[2,137],90:[2,137],99:[2,137],100:85,101:[1,63],102:[2,137],103:[1,64],106:86,107:[1,66],108:67,115:[2,137],123:[2,137],125:[1,78],126:[1,77],129:[1,76],130:[1,79],131:[1,80],132:[1,81],133:[1,82],134:[1,83]},{1:[2,139],6:[2,139],25:[2,139],26:[2,139],47:[2,139],52:[2,139],55:[2,139],70:[2,139],75:[2,139],83:[2,139],88:[2,139],90:[2,139],99:[2,139],100:85,101:[1,63],102:[2,139],103:[1,64],106:86,107:[1,66],108:67,115:[2,139],123:[2,139],125:[1,78],126:[1,77],129:[1,76],130:[1,79],131:[1,80],132:[1,81],133:[1,82],134:[1,83]},{113:[2,157],114:[2,157]},{8:295,9:115,10:20,11:21,12:[1,22],13:8,14:9,15:10,16:11,17:12,18:13,19:14,20:15,21:16,22:17,23:18,24:19,27:60,28:[1,71],29:49,30:[1,69],31:[1,70],32:24,33:[1,50],34:[1,51],35:[1,52],36:[1,53],37:23,42:61,43:[1,45],44:[1,46],45:[1,29],48:30,49:[1,58],50:[1,59],56:47,57:48,59:36,61:25,62:26,63:27,73:[1,68],76:[1,43],80:[1,28],85:[1,56],86:[1,57],87:[1,55],93:[1,38],97:[1,44],98:[1,54],100:39,101:[1,63],103:[1,64],104:40,105:[1,65],106:41,107:[1,66],108:67,116:[1,42],121:37,122:[1,62],124:[1,31],125:[1,32],126:[1,33],127:[1,34],128:[1,35]},{8:296,9:115,10:20,11:21,12:[1,22],13:8,14:9,15:10,16:11,17:12,18:13,19:14,20:15,21:16,22:17,23:18,24:19,27:60,28:[1,71],29:49,30:[1,69],31:[1,70],32:24,33:[1,50],34:[1,51],35:[1,52],36:[1,53],37:23,42:61,43:[1,45],44:[1,46],45:[1,29],48:30,49:[1,58],50:[1,59],56:47,57:48,59:36,61:25,62:26,63:27,73:[1,68],76:[1,43],80:[1,28],85:[1,56],86:[1,57],87:[1,55],93:[1,38],97:[1,44],98:[1,54],100:39,101:[1,63],103:[1,64],104:40,105:[1,65],106:41,107:[1,66],108:67,116:[1,42],121:37,122:[1,62],124:[1,31],125:[1,32],126:[1,33],127:[1,34],128:[1,35]},{8:297,9:115,10:20,11:21,12:[1,22],13:8,14:9,15:10,16:11,17:12,18:13,19:14,20:15,21:16,22:17,23:18,24:19,27:60,28:[1,71],29:49,30:[1,69],31:[1,70],32:24,33:[1,50],34:[1,51],35:[1,52],36:[1,53],37:23,42:61,43:[1,45],44:[1,46],45:[1,29],48:30,49:[1,58],50:[1,59],56:47,57:48,59:36,61:25,62:26,63:27,73:[1,68],76:[1,43],80:[1,28],85:[1,56],86:[1,57],87:[1,55],93:[1,38],97:[1,44],98:[1,54],100:39,101:[1,63],103:[1,64],104:40,105:[1,65],106:41,107:[1,66],108:67,116:[1,42],121:37,122:[1,62],124:[1,31],125:[1,32],126:[1,33],127:[1,34],128:[1,35]},{1:[2,85],6:[2,85],25:[2,85],26:[2,85],38:[2,85],47:[2,85],52:[2,85],55:[2,85],64:[2,85],65:[2,85],66:[2,85],68:[2,85],70:[2,85],71:[2,85],75:[2,85],81:[2,85],82:[2,85],83:[2,85],88:[2,85],90:[2,85],99:[2,85],101:[2,85],102:[2,85],103:[2,85],107:[2,85],113:[2,85],114:[2,85],115:[2,85],123:[2,85],125:[2,85],126:[2,85],129:[2,85],130:[2,85],131:[2,85],132:[2,85],133:[2,85],134:[2,85]},{11:165,27:166,28:[1,71],29:167,30:[1,69],31:[1,70],39:298,40:164,42:168,44:[1,46],86:[1,111]},{6:[2,86],11:165,25:[2,86],26:[2,86],27:166,28:[1,71],29:167,30:[1,69],31:[1,70],39:163,40:164,42:168,44:[1,46],52:[2,86],74:299,86:[1,111]},{6:[2,88],25:[2,88],26:[2,88],52:[2,88],75:[2,88]},{6:[2,38],25:[2,38],26:[2,38],52:[2,38],75:[2,38],100:85,101:[1,63],103:[1,64],106:86,107:[1,66],108:67,123:[1,84],125:[1,78],126:[1,77],129:[1,76],130:[1,79],131:[1,80],132:[1,81],133:[1,82],134:[1,83]},{8:300,9:115,10:20,11:21,12:[1,22],13:8,14:9,15:10,16:11,17:12,18:13,19:14,20:15,21:16,22:17,23:18,24:19,27:60,28:[1,71],29:49,30:[1,69],31:[1,70],32:24,33:[1,50],34:[1,51],35:[1,52],36:[1,53],37:23,42:61,43:[1,45],44:[1,46],45:[1,29],48:30,49:[1,58],50:[1,59],56:47,57:48,59:36,61:25,62:26,63:27,73:[1,68],76:[1,43],80:[1,28],85:[1,56],86:[1,57],87:[1,55],93:[1,38],97:[1,44],98:[1,54],100:39,101:[1,63],103:[1,64],104:40,105:[1,65],106:41,107:[1,66],108:67,116:[1,42],121:37,122:[1,62],124:[1,31],125:[1,32],126:[1,33],127:[1,34],128:[1,35]},{70:[2,115],100:85,101:[1,63],103:[1,64],106:86,107:[1,66],108:67,123:[1,84],125:[1,78],126:[1,77],129:[1,76],130:[1,79],131:[1,80],132:[1,81],133:[1,82],134:[1,83]},{1:[2,36],6:[2,36],25:[2,36],26:[2,36],47:[2,36],52:[2,36],55:[2,36],70:[2,36],75:[2,36],83:[2,36],88:[2,36],90:[2,36],99:[2,36],101:[2,36],102:[2,36],103:[2,36],107:[2,36],115:[2,36],123:[2,36],125:[2,36],126:[2,36],129:[2,36],130:[2,36],131:[2,36],132:[2,36],133:[2,36],134:[2,36]},{1:[2,106],6:[2,106],25:[2,106],26:[2,106],47:[2,106],52:[2,106],55:[2,106],64:[2,106],65:[2,106],66:[2,106],68:[2,106],70:[2,106],71:[2,106],75:[2,106],81:[2,106],82:[2,106],83:[2,106],88:[2,106],90:[2,106],99:[2,106],101:[2,106],102:[2,106],103:[2,106],107:[2,106],115:[2,106],123:[2,106],125:[2,106],126:[2,106],129:[2,106],130:[2,106],131:[2,106],132:[2,106],133:[2,106],134:[2,106]},{1:[2,47],6:[2,47],25:[2,47],26:[2,47],47:[2,47],52:[2,47],55:[2,47],70:[2,47],75:[2,47],83:[2,47],88:[2,47],90:[2,47],99:[2,47],101:[2,47],102:[2,47],103:[2,47],107:[2,47],115:[2,47],123:[2,47],125:[2,47],126:[2,47],129:[2,47],130:[2,47],131:[2,47],132:[2,47],133:[2,47],134:[2,47]},{1:[2,195],6:[2,195],25:[2,195],26:[2,195],47:[2,195],52:[2,195],55:[2,195],70:[2,195],75:[2,195],83:[2,195],88:[2,195],90:[2,195],99:[2,195],101:[2,195],102:[2,195],103:[2,195],107:[2,195],115:[2,195],123:[2,195],125:[2,195],126:[2,195],129:[2,195],130:[2,195],131:[2,195],132:[2,195],133:[2,195],134:[2,195]},{1:[2,174],6:[2,174],25:[2,174],26:[2,174],47:[2,174],52:[2,174],55:[2,174],70:[2,174],75:[2,174],83:[2,174],88:[2,174],90:[2,174],99:[2,174],101:[2,174],102:[2,174],103:[2,174],107:[2,174],115:[2,174],118:[2,174],123:[2,174],125:[2,174],126:[2,174],129:[2,174],130:[2,174],131:[2,174],132:[2,174],133:[2,174],134:[2,174]},{1:[2,131],6:[2,131],25:[2,131],26:[2,131],47:[2,131],52:[2,131],55:[2,131],70:[2,131],75:[2,131],83:[2,131],88:[2,131],90:[2,131],99:[2,131],101:[2,131],102:[2,131],103:[2,131],107:[2,131],115:[2,131],123:[2,131],125:[2,131],126:[2,131],129:[2,131],130:[2,131],131:[2,131],132:[2,131],133:[2,131],134:[2,131]},{1:[2,132],6:[2,132],25:[2,132],26:[2,132],47:[2,132],52:[2,132],55:[2,132],70:[2,132],75:[2,132],83:[2,132],88:[2,132],90:[2,132],95:[2,132],99:[2,132],101:[2,132],102:[2,132],103:[2,132],107:[2,132],115:[2,132],123:[2,132],125:[2,132],126:[2,132],129:[2,132],130:[2,132],131:[2,132],132:[2,132],133:[2,132],134:[2,132]},{1:[2,165],6:[2,165],25:[2,165],26:[2,165],47:[2,165],52:[2,165],55:[2,165],70:[2,165],75:[2,165],83:[2,165],88:[2,165],90:[2,165],99:[2,165],101:[2,165],102:[2,165],103:[2,165],107:[2,165],115:[2,165],123:[2,165],125:[2,165],126:[2,165],129:[2,165],130:[2,165],131:[2,165],132:[2,165],133:[2,165],134:[2,165]},{5:301,25:[1,5]},{26:[1,302]},{6:[1,303],26:[2,171],118:[2,171],120:[2,171]},{8:304,9:115,10:20,11:21,12:[1,22],13:8,14:9,15:10,16:11,17:12,18:13,19:14,20:15,21:16,22:17,23:18,24:19,27:60,28:[1,71],29:49,30:[1,69],31:[1,70],32:24,33:[1,50],34:[1,51],35:[1,52],36:[1,53],37:23,42:61,43:[1,45],44:[1,46],45:[1,29],48:30,49:[1,58],50:[1,59],56:47,57:48,59:36,61:25,62:26,63:27,73:[1,68],76:[1,43],80:[1,28],85:[1,56],86:[1,57],87:[1,55],93:[1,38],97:[1,44],98:[1,54],100:39,101:[1,63],103:[1,64],104:40,105:[1,65],106:41,107:[1,66],108:67,116:[1,42],121:37,122:[1,62],124:[1,31],125:[1,32],126:[1,33],127:[1,34],128:[1,35]},{1:[2,98],6:[2,98],25:[2,98],26:[2,98],47:[2,98],52:[2,98],55:[2,98],70:[2,98],75:[2,98],83:[2,98],88:[2,98],90:[2,98],99:[2,98],101:[2,98],102:[2,98],103:[2,98],107:[2,98],115:[2,98],123:[2,98],125:[2,98],126:[2,98],129:[2,98],130:[2,98],131:[2,98],132:[2,98],133:[2,98],134:[2,98]},{1:[2,135],6:[2,135],25:[2,135],26:[2,135],47:[2,135],52:[2,135],55:[2,135],64:[2,135],65:[2,135],66:[2,135],68:[2,135],70:[2,135],71:[2,135],75:[2,135],81:[2,135],82:[2,135],83:[2,135],88:[2,135],90:[2,135],99:[2,135],101:[2,135],102:[2,135],103:[2,135],107:[2,135],115:[2,135],123:[2,135],125:[2,135],126:[2,135],129:[2,135],130:[2,135],131:[2,135],132:[2,135],133:[2,135],134:[2,135]},{1:[2,114],6:[2,114],25:[2,114],26:[2,114],47:[2,114],52:[2,114],55:[2,114],64:[2,114],65:[2,114],66:[2,114],68:[2,114],70:[2,114],71:[2,114],75:[2,114],81:[2,114],82:[2,114],83:[2,114],88:[2,114],90:[2,114],99:[2,114],101:[2,114],102:[2,114],103:[2,114],107:[2,114],115:[2,114],123:[2,114],125:[2,114],126:[2,114],129:[2,114],130:[2,114],131:[2,114],132:[2,114],133:[2,114],134:[2,114]},{6:[2,121],25:[2,121],26:[2,121],52:[2,121],83:[2,121],88:[2,121]},{6:[2,51],25:[2,51],26:[2,51],51:305,52:[1,222]},{6:[2,122],25:[2,122],26:[2,122],52:[2,122],83:[2,122],88:[2,122]},{1:[2,160],6:[2,160],25:[2,160],26:[2,160],47:[2,160],52:[2,160],55:[2,160],70:[2,160],75:[2,160],83:[2,160],88:[2,160],90:[2,160],99:[2,160],100:85,101:[2,160],102:[2,160],103:[2,160],106:86,107:[2,160],108:67,115:[1,306],123:[2,160],125:[1,78],126:[1,77],129:[1,76],130:[1,79],131:[1,80],132:[1,81],133:[1,82],134:[1,83]},{1:[2,162],6:[2,162],25:[2,162],26:[2,162],47:[2,162],52:[2,162],55:[2,162],70:[2,162],75:[2,162],83:[2,162],88:[2,162],90:[2,162],99:[2,162],100:85,101:[2,162],102:[1,307],103:[2,162],106:86,107:[2,162],108:67,115:[2,162],123:[2,162],125:[1,78],126:[1,77],129:[1,76],130:[1,79],131:[1,80],132:[1,81],133:[1,82],134:[1,83]},{1:[2,161],6:[2,161],25:[2,161],26:[2,161],47:[2,161],52:[2,161],55:[2,161],70:[2,161],75:[2,161],83:[2,161],88:[2,161],90:[2,161],99:[2,161],100:85,101:[2,161],102:[2,161],103:[2,161],106:86,107:[2,161],108:67,115:[2,161],123:[2,161],125:[1,78],126:[1,77],129:[1,76],130:[1,79],131:[1,80],132:[1,81],133:[1,82],134:[1,83]},{6:[2,89],25:[2,89],26:[2,89],52:[2,89],75:[2,89]},{6:[2,51],25:[2,51],26:[2,51],51:308,52:[1,232]},{26:[1,309],100:85,101:[1,63],103:[1,64],106:86,107:[1,66],108:67,123:[1,84],125:[1,78],126:[1,77],129:[1,76],130:[1,79],131:[1,80],132:[1,81],133:[1,82],134:[1,83]},{26:[1,310]},{1:[2,168],6:[2,168],25:[2,168],26:[2,168],47:[2,168],52:[2,168],55:[2,168],70:[2,168],75:[2,168],83:[2,168],88:[2,168],90:[2,168],99:[2,168],101:[2,168],102:[2,168],103:[2,168],107:[2,168],115:[2,168],123:[2,168],125:[2,168],126:[2,168],129:[2,168],130:[2,168],131:[2,168],132:[2,168],133:[2,168],134:[2,168]},{26:[2,172],118:[2,172],120:[2,172]},{25:[2,127],52:[2,127],100:85,101:[1,63],103:[1,64],106:86,107:[1,66],108:67,123:[1,84],125:[1,78],126:[1,77],129:[1,76],130:[1,79],131:[1,80],132:[1,81],133:[1,82],134:[1,83]},{6:[1,260],25:[1,261],26:[1,311]},{8:312,9:115,10:20,11:21,12:[1,22],13:8,14:9,15:10,16:11,17:12,18:13,19:14,20:15,21:16,22:17,23:18,24:19,27:60,28:[1,71],29:49,30:[1,69],31:[1,70],32:24,33:[1,50],34:[1,51],35:[1,52],36:[1,53],37:23,42:61,43:[1,45],44:[1,46],45:[1,29],48:30,49:[1,58],50:[1,59],56:47,57:48,59:36,61:25,62:26,63:27,73:[1,68],76:[1,43],80:[1,28],85:[1,56],86:[1,57],87:[1,55],93:[1,38],97:[1,44],98:[1,54],100:39,101:[1,63],103:[1,64],104:40,105:[1,65],106:41,107:[1,66],108:67,116:[1,42],121:37,122:[1,62],124:[1,31],125:[1,32],126:[1,33],127:[1,34],128:[1,35]},{8:313,9:115,10:20,11:21,12:[1,22],13:8,14:9,15:10,16:11,17:12,18:13,19:14,20:15,21:16,22:17,23:18,24:19,27:60,28:[1,71],29:49,30:[1,69],31:[1,70],32:24,33:[1,50],34:[1,51],35:[1,52],36:[1,53],37:23,42:61,43:[1,45],44:[1,46],45:[1,29],48:30,49:[1,58],50:[1,59],56:47,57:48,59:36,61:25,62:26,63:27,73:[1,68],76:[1,43],80:[1,28],85:[1,56],86:[1,57],87:[1,55],93:[1,38],97:[1,44],98:[1,54],100:39,101:[1,63],103:[1,64],104:40,105:[1,65],106:41,107:[1,66],108:67,116:[1,42],121:37,122:[1,62],124:[1,31],125:[1,32],126:[1,33],127:[1,34],128:[1,35]},{6:[1,271],25:[1,272],26:[1,314]},{6:[2,39],25:[2,39],26:[2,39],52:[2,39],75:[2,39]},{1:[2,166],6:[2,166],25:[2,166],26:[2,166],47:[2,166],52:[2,166],55:[2,166],70:[2,166],75:[2,166],83:[2,166],88:[2,166],90:[2,166],99:[2,166],101:[2,166],102:[2,166],103:[2,166],107:[2,166],115:[2,166],123:[2,166],125:[2,166],126:[2,166],129:[2,166],130:[2,166],131:[2,166],132:[2,166],133:[2,166],134:[2,166]},{6:[2,123],25:[2,123],26:[2,123],52:[2,123],83:[2,123],88:[2,123]},{1:[2,163],6:[2,163],25:[2,163],26:[2,163],47:[2,163],52:[2,163],55:[2,163],70:[2,163],75:[2,163],83:[2,163],88:[2,163],90:[2,163],99:[2,163],100:85,101:[2,163],102:[2,163],103:[2,163],106:86,107:[2,163],108:67,115:[2,163],123:[2,163],125:[1,78],126:[1,77],129:[1,76],130:[1,79],131:[1,80],132:[1,81],133:[1,82],134:[1,83]},{1:[2,164],6:[2,164],25:[2,164],26:[2,164],47:[2,164],52:[2,164],55:[2,164],70:[2,164],75:[2,164],83:[2,164],88:[2,164],90:[2,164],99:[2,164],100:85,101:[2,164],102:[2,164],103:[2,164],106:86,107:[2,164],108:67,115:[2,164],123:[2,164],125:[1,78],126:[1,77],129:[1,76],130:[1,79],131:[1,80],132:[1,81],133:[1,82],134:[1,83]},{6:[2,90],25:[2,90],26:[2,90],52:[2,90],75:[2,90]}], -defaultActions: {58:[2,49],59:[2,50],73:[2,3],92:[2,104],186:[2,84]}, +table: [{1:[2,1],3:1,4:2,5:3,7:4,8:5,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:60,28:[1,71],29:47,30:[1,69],31:[1,70],32:22,33:[1,48],34:[1,49],35:[1,50],36:[1,51],37:[1,52],38:[1,53],39:21,44:61,45:[1,43],46:[1,44],47:[1,27],50:28,51:[1,58],52:[1,59],58:45,59:46,61:34,63:23,64:24,65:25,76:[1,68],79:[1,41],83:[1,26],88:[1,56],89:[1,57],90:[1,55],96:[1,36],100:[1,42],101:[1,54],103:37,104:[1,63],106:[1,64],107:38,108:[1,65],109:39,110:[1,66],111:67,119:[1,40],124:35,125:[1,62],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33]},{1:[3]},{1:[2,2],6:[1,72]},{1:[2,3],6:[2,3],26:[2,3],102:[2,3]},{1:[2,6],6:[2,6],26:[2,6],102:[2,6],103:82,104:[1,63],106:[1,64],109:83,110:[1,66],111:67,126:[1,81],128:[1,75],129:[1,74],132:[1,73],133:[1,76],134:[1,77],135:[1,78],136:[1,79],137:[1,80]},{1:[2,7],6:[2,7],26:[2,7],102:[2,7],103:85,104:[1,63],106:[1,64],109:86,110:[1,66],111:67,126:[1,84]},{1:[2,11],6:[2,11],25:[2,11],26:[2,11],49:[2,11],54:[2,11],57:[2,11],62:88,66:[1,90],67:[1,91],68:[1,92],69:[1,93],70:94,71:[1,95],73:[2,11],74:[1,96],78:[2,11],81:87,84:[1,89],85:[2,107],86:[2,11],91:[2,11],93:[2,11],102:[2,11],104:[2,11],105:[2,11],106:[2,11],110:[2,11],118:[2,11],126:[2,11],128:[2,11],129:[2,11],132:[2,11],133:[2,11],134:[2,11],135:[2,11],136:[2,11],137:[2,11]},{1:[2,12],6:[2,12],25:[2,12],26:[2,12],49:[2,12],54:[2,12],57:[2,12],62:98,66:[1,90],67:[1,91],68:[1,92],69:[1,93],70:94,71:[1,95],73:[2,12],74:[1,96],78:[2,12],81:97,84:[1,89],85:[2,107],86:[2,12],91:[2,12],93:[2,12],102:[2,12],104:[2,12],105:[2,12],106:[2,12],110:[2,12],118:[2,12],126:[2,12],128:[2,12],129:[2,12],132:[2,12],133:[2,12],134:[2,12],135:[2,12],136:[2,12],137:[2,12]},{1:[2,13],6:[2,13],25:[2,13],26:[2,13],49:[2,13],54:[2,13],57:[2,13],73:[2,13],78:[2,13],86:[2,13],91:[2,13],93:[2,13],102:[2,13],104:[2,13],105:[2,13],106:[2,13],110:[2,13],118:[2,13],126:[2,13],128:[2,13],129:[2,13],132:[2,13],133:[2,13],134:[2,13],135:[2,13],136:[2,13],137:[2,13]},{1:[2,14],6:[2,14],25:[2,14],26:[2,14],49:[2,14],54:[2,14],57:[2,14],73:[2,14],78:[2,14],86:[2,14],91:[2,14],93:[2,14],102:[2,14],104:[2,14],105:[2,14],106:[2,14],110:[2,14],118:[2,14],126:[2,14],128:[2,14],129:[2,14],132:[2,14],133:[2,14],134:[2,14],135:[2,14],136:[2,14],137:[2,14]},{1:[2,15],6:[2,15],25:[2,15],26:[2,15],49:[2,15],54:[2,15],57:[2,15],73:[2,15],78:[2,15],86:[2,15],91:[2,15],93:[2,15],102:[2,15],104:[2,15],105:[2,15],106:[2,15],110:[2,15],118:[2,15],126:[2,15],128:[2,15],129:[2,15],132:[2,15],133:[2,15],134:[2,15],135:[2,15],136:[2,15],137:[2,15]},{1:[2,16],6:[2,16],25:[2,16],26:[2,16],49:[2,16],54:[2,16],57:[2,16],73:[2,16],78:[2,16],86:[2,16],91:[2,16],93:[2,16],102:[2,16],104:[2,16],105:[2,16],106:[2,16],110:[2,16],118:[2,16],126:[2,16],128:[2,16],129:[2,16],132:[2,16],133:[2,16],134:[2,16],135:[2,16],136:[2,16],137:[2,16]},{1:[2,17],6:[2,17],25:[2,17],26:[2,17],49:[2,17],54:[2,17],57:[2,17],73:[2,17],78:[2,17],86:[2,17],91:[2,17],93:[2,17],102:[2,17],104:[2,17],105:[2,17],106:[2,17],110:[2,17],118:[2,17],126:[2,17],128:[2,17],129:[2,17],132:[2,17],133:[2,17],134:[2,17],135:[2,17],136:[2,17],137:[2,17]},{1:[2,18],6:[2,18],25:[2,18],26:[2,18],49:[2,18],54:[2,18],57:[2,18],73:[2,18],78:[2,18],86:[2,18],91:[2,18],93:[2,18],102:[2,18],104:[2,18],105:[2,18],106:[2,18],110:[2,18],118:[2,18],126:[2,18],128:[2,18],129:[2,18],132:[2,18],133:[2,18],134:[2,18],135:[2,18],136:[2,18],137:[2,18]},{1:[2,19],6:[2,19],25:[2,19],26:[2,19],49:[2,19],54:[2,19],57:[2,19],73:[2,19],78:[2,19],86:[2,19],91:[2,19],93:[2,19],102:[2,19],104:[2,19],105:[2,19],106:[2,19],110:[2,19],118:[2,19],126:[2,19],128:[2,19],129:[2,19],132:[2,19],133:[2,19],134:[2,19],135:[2,19],136:[2,19],137:[2,19]},{1:[2,20],6:[2,20],25:[2,20],26:[2,20],49:[2,20],54:[2,20],57:[2,20],73:[2,20],78:[2,20],86:[2,20],91:[2,20],93:[2,20],102:[2,20],104:[2,20],105:[2,20],106:[2,20],110:[2,20],118:[2,20],126:[2,20],128:[2,20],129:[2,20],132:[2,20],133:[2,20],134:[2,20],135:[2,20],136:[2,20],137:[2,20]},{1:[2,21],6:[2,21],25:[2,21],26:[2,21],49:[2,21],54:[2,21],57:[2,21],73:[2,21],78:[2,21],86:[2,21],91:[2,21],93:[2,21],102:[2,21],104:[2,21],105:[2,21],106:[2,21],110:[2,21],118:[2,21],126:[2,21],128:[2,21],129:[2,21],132:[2,21],133:[2,21],134:[2,21],135:[2,21],136:[2,21],137:[2,21]},{1:[2,22],6:[2,22],25:[2,22],26:[2,22],49:[2,22],54:[2,22],57:[2,22],73:[2,22],78:[2,22],86:[2,22],91:[2,22],93:[2,22],102:[2,22],104:[2,22],105:[2,22],106:[2,22],110:[2,22],118:[2,22],126:[2,22],128:[2,22],129:[2,22],132:[2,22],133:[2,22],134:[2,22],135:[2,22],136:[2,22],137:[2,22]},{1:[2,8],6:[2,8],26:[2,8],102:[2,8],104:[2,8],106:[2,8],110:[2,8],126:[2,8]},{1:[2,9],6:[2,9],26:[2,9],102:[2,9],104:[2,9],106:[2,9],110:[2,9],126:[2,9]},{1:[2,10],6:[2,10],26:[2,10],102:[2,10],104:[2,10],106:[2,10],110:[2,10],126:[2,10]},{1:[2,74],6:[2,74],25:[2,74],26:[2,74],40:[1,99],49:[2,74],54:[2,74],57:[2,74],66:[2,74],67:[2,74],68:[2,74],69:[2,74],71:[2,74],73:[2,74],74:[2,74],78:[2,74],84:[2,74],85:[2,74],86:[2,74],91:[2,74],93:[2,74],102:[2,74],104:[2,74],105:[2,74],106:[2,74],110:[2,74],118:[2,74],126:[2,74],128:[2,74],129:[2,74],132:[2,74],133:[2,74],134:[2,74],135:[2,74],136:[2,74],137:[2,74]},{1:[2,75],6:[2,75],25:[2,75],26:[2,75],49:[2,75],54:[2,75],57:[2,75],66:[2,75],67:[2,75],68:[2,75],69:[2,75],71:[2,75],73:[2,75],74:[2,75],78:[2,75],84:[2,75],85:[2,75],86:[2,75],91:[2,75],93:[2,75],102:[2,75],104:[2,75],105:[2,75],106:[2,75],110:[2,75],118:[2,75],126:[2,75],128:[2,75],129:[2,75],132:[2,75],133:[2,75],134:[2,75],135:[2,75],136:[2,75],137:[2,75]},{1:[2,76],6:[2,76],25:[2,76],26:[2,76],49:[2,76],54:[2,76],57:[2,76],66:[2,76],67:[2,76],68:[2,76],69:[2,76],71:[2,76],73:[2,76],74:[2,76],78:[2,76],84:[2,76],85:[2,76],86:[2,76],91:[2,76],93:[2,76],102:[2,76],104:[2,76],105:[2,76],106:[2,76],110:[2,76],118:[2,76],126:[2,76],128:[2,76],129:[2,76],132:[2,76],133:[2,76],134:[2,76],135:[2,76],136:[2,76],137:[2,76]},{1:[2,77],6:[2,77],25:[2,77],26:[2,77],49:[2,77],54:[2,77],57:[2,77],66:[2,77],67:[2,77],68:[2,77],69:[2,77],71:[2,77],73:[2,77],74:[2,77],78:[2,77],84:[2,77],85:[2,77],86:[2,77],91:[2,77],93:[2,77],102:[2,77],104:[2,77],105:[2,77],106:[2,77],110:[2,77],118:[2,77],126:[2,77],128:[2,77],129:[2,77],132:[2,77],133:[2,77],134:[2,77],135:[2,77],136:[2,77],137:[2,77]},{1:[2,78],6:[2,78],25:[2,78],26:[2,78],49:[2,78],54:[2,78],57:[2,78],66:[2,78],67:[2,78],68:[2,78],69:[2,78],71:[2,78],73:[2,78],74:[2,78],78:[2,78],84:[2,78],85:[2,78],86:[2,78],91:[2,78],93:[2,78],102:[2,78],104:[2,78],105:[2,78],106:[2,78],110:[2,78],118:[2,78],126:[2,78],128:[2,78],129:[2,78],132:[2,78],133:[2,78],134:[2,78],135:[2,78],136:[2,78],137:[2,78]},{1:[2,105],6:[2,105],25:[2,105],26:[2,105],49:[2,105],54:[2,105],57:[2,105],66:[2,105],67:[2,105],68:[2,105],69:[2,105],71:[2,105],73:[2,105],74:[2,105],78:[2,105],82:100,84:[2,105],85:[1,101],86:[2,105],91:[2,105],93:[2,105],102:[2,105],104:[2,105],105:[2,105],106:[2,105],110:[2,105],118:[2,105],126:[2,105],128:[2,105],129:[2,105],132:[2,105],133:[2,105],134:[2,105],135:[2,105],136:[2,105],137:[2,105]},{6:[2,54],25:[2,54],27:105,28:[1,71],44:106,48:102,49:[2,54],54:[2,54],55:103,56:104,58:107,59:108,76:[1,68],89:[1,109],90:[1,110]},{24:111,25:[1,112]},{7:113,8:114,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:60,28:[1,71],29:47,30:[1,69],31:[1,70],32:22,33:[1,48],34:[1,49],35:[1,50],36:[1,51],37:[1,52],38:[1,53],39:21,44:61,45:[1,43],46:[1,44],47:[1,27],50:28,51:[1,58],52:[1,59],58:45,59:46,61:34,63:23,64:24,65:25,76:[1,68],79:[1,41],83:[1,26],88:[1,56],89:[1,57],90:[1,55],96:[1,36],100:[1,42],101:[1,54],103:37,104:[1,63],106:[1,64],107:38,108:[1,65],109:39,110:[1,66],111:67,119:[1,40],124:35,125:[1,62],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33]},{7:115,8:114,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:60,28:[1,71],29:47,30:[1,69],31:[1,70],32:22,33:[1,48],34:[1,49],35:[1,50],36:[1,51],37:[1,52],38:[1,53],39:21,44:61,45:[1,43],46:[1,44],47:[1,27],50:28,51:[1,58],52:[1,59],58:45,59:46,61:34,63:23,64:24,65:25,76:[1,68],79:[1,41],83:[1,26],88:[1,56],89:[1,57],90:[1,55],96:[1,36],100:[1,42],101:[1,54],103:37,104:[1,63],106:[1,64],107:38,108:[1,65],109:39,110:[1,66],111:67,119:[1,40],124:35,125:[1,62],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33]},{7:116,8:114,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:60,28:[1,71],29:47,30:[1,69],31:[1,70],32:22,33:[1,48],34:[1,49],35:[1,50],36:[1,51],37:[1,52],38:[1,53],39:21,44:61,45:[1,43],46:[1,44],47:[1,27],50:28,51:[1,58],52:[1,59],58:45,59:46,61:34,63:23,64:24,65:25,76:[1,68],79:[1,41],83:[1,26],88:[1,56],89:[1,57],90:[1,55],96:[1,36],100:[1,42],101:[1,54],103:37,104:[1,63],106:[1,64],107:38,108:[1,65],109:39,110:[1,66],111:67,119:[1,40],124:35,125:[1,62],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33]},{12:118,13:119,27:60,28:[1,71],29:47,30:[1,69],31:[1,70],32:22,33:[1,48],34:[1,49],35:[1,50],36:[1,51],37:[1,52],38:[1,53],39:120,44:61,58:45,59:46,61:117,63:23,64:24,65:25,76:[1,68],83:[1,26],88:[1,56],89:[1,57],90:[1,55],101:[1,54]},{12:118,13:119,27:60,28:[1,71],29:47,30:[1,69],31:[1,70],32:22,33:[1,48],34:[1,49],35:[1,50],36:[1,51],37:[1,52],38:[1,53],39:120,44:61,58:45,59:46,61:121,63:23,64:24,65:25,76:[1,68],83:[1,26],88:[1,56],89:[1,57],90:[1,55],101:[1,54]},{1:[2,71],6:[2,71],25:[2,71],26:[2,71],40:[2,71],49:[2,71],54:[2,71],57:[2,71],66:[2,71],67:[2,71],68:[2,71],69:[2,71],71:[2,71],73:[2,71],74:[2,71],78:[2,71],80:[1,125],84:[2,71],85:[2,71],86:[2,71],91:[2,71],93:[2,71],102:[2,71],104:[2,71],105:[2,71],106:[2,71],110:[2,71],118:[2,71],126:[2,71],128:[2,71],129:[2,71],130:[1,122],131:[1,123],132:[2,71],133:[2,71],134:[2,71],135:[2,71],136:[2,71],137:[2,71],138:[1,124]},{1:[2,182],6:[2,182],25:[2,182],26:[2,182],49:[2,182],54:[2,182],57:[2,182],73:[2,182],78:[2,182],86:[2,182],91:[2,182],93:[2,182],102:[2,182],104:[2,182],105:[2,182],106:[2,182],110:[2,182],118:[2,182],121:[1,126],126:[2,182],128:[2,182],129:[2,182],132:[2,182],133:[2,182],134:[2,182],135:[2,182],136:[2,182],137:[2,182]},{24:127,25:[1,112]},{24:128,25:[1,112]},{1:[2,149],6:[2,149],25:[2,149],26:[2,149],49:[2,149],54:[2,149],57:[2,149],73:[2,149],78:[2,149],86:[2,149],91:[2,149],93:[2,149],102:[2,149],104:[2,149],105:[2,149],106:[2,149],110:[2,149],118:[2,149],126:[2,149],128:[2,149],129:[2,149],132:[2,149],133:[2,149],134:[2,149],135:[2,149],136:[2,149],137:[2,149]},{24:129,25:[1,112]},{7:130,8:114,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,25:[1,131],27:60,28:[1,71],29:47,30:[1,69],31:[1,70],32:22,33:[1,48],34:[1,49],35:[1,50],36:[1,51],37:[1,52],38:[1,53],39:21,44:61,45:[1,43],46:[1,44],47:[1,27],50:28,51:[1,58],52:[1,59],58:45,59:46,61:34,63:23,64:24,65:25,76:[1,68],79:[1,41],83:[1,26],88:[1,56],89:[1,57],90:[1,55],96:[1,36],100:[1,42],101:[1,54],103:37,104:[1,63],106:[1,64],107:38,108:[1,65],109:39,110:[1,66],111:67,119:[1,40],124:35,125:[1,62],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33]},{1:[2,95],6:[2,95],12:118,13:119,24:132,25:[1,112],26:[2,95],27:60,28:[1,71],29:47,30:[1,69],31:[1,70],32:22,33:[1,48],34:[1,49],35:[1,50],36:[1,51],37:[1,52],38:[1,53],39:120,44:61,49:[2,95],54:[2,95],57:[2,95],58:45,59:46,61:134,63:23,64:24,65:25,73:[2,95],76:[1,68],78:[2,95],80:[1,133],83:[1,26],86:[2,95],88:[1,56],89:[1,57],90:[1,55],91:[2,95],93:[2,95],101:[1,54],102:[2,95],104:[2,95],105:[2,95],106:[2,95],110:[2,95],118:[2,95],126:[2,95],128:[2,95],129:[2,95],132:[2,95],133:[2,95],134:[2,95],135:[2,95],136:[2,95],137:[2,95]},{7:135,8:114,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:60,28:[1,71],29:47,30:[1,69],31:[1,70],32:22,33:[1,48],34:[1,49],35:[1,50],36:[1,51],37:[1,52],38:[1,53],39:21,44:61,45:[1,43],46:[1,44],47:[1,27],50:28,51:[1,58],52:[1,59],58:45,59:46,61:34,63:23,64:24,65:25,76:[1,68],79:[1,41],83:[1,26],88:[1,56],89:[1,57],90:[1,55],96:[1,36],100:[1,42],101:[1,54],103:37,104:[1,63],106:[1,64],107:38,108:[1,65],109:39,110:[1,66],111:67,119:[1,40],124:35,125:[1,62],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33]},{1:[2,46],6:[2,46],7:136,8:114,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,26:[2,46],27:60,28:[1,71],29:47,30:[1,69],31:[1,70],32:22,33:[1,48],34:[1,49],35:[1,50],36:[1,51],37:[1,52],38:[1,53],39:21,44:61,45:[1,43],46:[1,44],47:[1,27],50:28,51:[1,58],52:[1,59],58:45,59:46,61:34,63:23,64:24,65:25,76:[1,68],79:[1,41],83:[1,26],88:[1,56],89:[1,57],90:[1,55],96:[1,36],100:[1,42],101:[1,54],102:[2,46],103:37,104:[2,46],106:[2,46],107:38,108:[1,65],109:39,110:[2,46],111:67,119:[1,40],124:35,125:[1,62],126:[2,46],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33]},{1:[2,47],6:[2,47],25:[2,47],26:[2,47],54:[2,47],78:[2,47],102:[2,47],104:[2,47],106:[2,47],110:[2,47],126:[2,47]},{1:[2,72],6:[2,72],25:[2,72],26:[2,72],40:[2,72],49:[2,72],54:[2,72],57:[2,72],66:[2,72],67:[2,72],68:[2,72],69:[2,72],71:[2,72],73:[2,72],74:[2,72],78:[2,72],84:[2,72],85:[2,72],86:[2,72],91:[2,72],93:[2,72],102:[2,72],104:[2,72],105:[2,72],106:[2,72],110:[2,72],118:[2,72],126:[2,72],128:[2,72],129:[2,72],132:[2,72],133:[2,72],134:[2,72],135:[2,72],136:[2,72],137:[2,72]},{1:[2,73],6:[2,73],25:[2,73],26:[2,73],40:[2,73],49:[2,73],54:[2,73],57:[2,73],66:[2,73],67:[2,73],68:[2,73],69:[2,73],71:[2,73],73:[2,73],74:[2,73],78:[2,73],84:[2,73],85:[2,73],86:[2,73],91:[2,73],93:[2,73],102:[2,73],104:[2,73],105:[2,73],106:[2,73],110:[2,73],118:[2,73],126:[2,73],128:[2,73],129:[2,73],132:[2,73],133:[2,73],134:[2,73],135:[2,73],136:[2,73],137:[2,73]},{1:[2,28],6:[2,28],25:[2,28],26:[2,28],49:[2,28],54:[2,28],57:[2,28],66:[2,28],67:[2,28],68:[2,28],69:[2,28],71:[2,28],73:[2,28],74:[2,28],78:[2,28],84:[2,28],85:[2,28],86:[2,28],91:[2,28],93:[2,28],102:[2,28],104:[2,28],105:[2,28],106:[2,28],110:[2,28],118:[2,28],126:[2,28],128:[2,28],129:[2,28],132:[2,28],133:[2,28],134:[2,28],135:[2,28],136:[2,28],137:[2,28]},{1:[2,29],6:[2,29],25:[2,29],26:[2,29],49:[2,29],54:[2,29],57:[2,29],66:[2,29],67:[2,29],68:[2,29],69:[2,29],71:[2,29],73:[2,29],74:[2,29],78:[2,29],84:[2,29],85:[2,29],86:[2,29],91:[2,29],93:[2,29],102:[2,29],104:[2,29],105:[2,29],106:[2,29],110:[2,29],118:[2,29],126:[2,29],128:[2,29],129:[2,29],132:[2,29],133:[2,29],134:[2,29],135:[2,29],136:[2,29],137:[2,29]},{1:[2,30],6:[2,30],25:[2,30],26:[2,30],49:[2,30],54:[2,30],57:[2,30],66:[2,30],67:[2,30],68:[2,30],69:[2,30],71:[2,30],73:[2,30],74:[2,30],78:[2,30],84:[2,30],85:[2,30],86:[2,30],91:[2,30],93:[2,30],102:[2,30],104:[2,30],105:[2,30],106:[2,30],110:[2,30],118:[2,30],126:[2,30],128:[2,30],129:[2,30],132:[2,30],133:[2,30],134:[2,30],135:[2,30],136:[2,30],137:[2,30]},{1:[2,31],6:[2,31],25:[2,31],26:[2,31],49:[2,31],54:[2,31],57:[2,31],66:[2,31],67:[2,31],68:[2,31],69:[2,31],71:[2,31],73:[2,31],74:[2,31],78:[2,31],84:[2,31],85:[2,31],86:[2,31],91:[2,31],93:[2,31],102:[2,31],104:[2,31],105:[2,31],106:[2,31],110:[2,31],118:[2,31],126:[2,31],128:[2,31],129:[2,31],132:[2,31],133:[2,31],134:[2,31],135:[2,31],136:[2,31],137:[2,31]},{1:[2,32],6:[2,32],25:[2,32],26:[2,32],49:[2,32],54:[2,32],57:[2,32],66:[2,32],67:[2,32],68:[2,32],69:[2,32],71:[2,32],73:[2,32],74:[2,32],78:[2,32],84:[2,32],85:[2,32],86:[2,32],91:[2,32],93:[2,32],102:[2,32],104:[2,32],105:[2,32],106:[2,32],110:[2,32],118:[2,32],126:[2,32],128:[2,32],129:[2,32],132:[2,32],133:[2,32],134:[2,32],135:[2,32],136:[2,32],137:[2,32]},{1:[2,33],6:[2,33],25:[2,33],26:[2,33],49:[2,33],54:[2,33],57:[2,33],66:[2,33],67:[2,33],68:[2,33],69:[2,33],71:[2,33],73:[2,33],74:[2,33],78:[2,33],84:[2,33],85:[2,33],86:[2,33],91:[2,33],93:[2,33],102:[2,33],104:[2,33],105:[2,33],106:[2,33],110:[2,33],118:[2,33],126:[2,33],128:[2,33],129:[2,33],132:[2,33],133:[2,33],134:[2,33],135:[2,33],136:[2,33],137:[2,33]},{1:[2,34],6:[2,34],25:[2,34],26:[2,34],49:[2,34],54:[2,34],57:[2,34],66:[2,34],67:[2,34],68:[2,34],69:[2,34],71:[2,34],73:[2,34],74:[2,34],78:[2,34],84:[2,34],85:[2,34],86:[2,34],91:[2,34],93:[2,34],102:[2,34],104:[2,34],105:[2,34],106:[2,34],110:[2,34],118:[2,34],126:[2,34],128:[2,34],129:[2,34],132:[2,34],133:[2,34],134:[2,34],135:[2,34],136:[2,34],137:[2,34]},{4:137,5:3,7:4,8:5,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,25:[1,138],27:60,28:[1,71],29:47,30:[1,69],31:[1,70],32:22,33:[1,48],34:[1,49],35:[1,50],36:[1,51],37:[1,52],38:[1,53],39:21,44:61,45:[1,43],46:[1,44],47:[1,27],50:28,51:[1,58],52:[1,59],58:45,59:46,61:34,63:23,64:24,65:25,76:[1,68],79:[1,41],83:[1,26],88:[1,56],89:[1,57],90:[1,55],96:[1,36],100:[1,42],101:[1,54],103:37,104:[1,63],106:[1,64],107:38,108:[1,65],109:39,110:[1,66],111:67,119:[1,40],124:35,125:[1,62],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33]},{7:139,8:114,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,25:[1,143],27:60,28:[1,71],29:47,30:[1,69],31:[1,70],32:22,33:[1,48],34:[1,49],35:[1,50],36:[1,51],37:[1,52],38:[1,53],39:21,44:61,45:[1,43],46:[1,44],47:[1,27],50:28,51:[1,58],52:[1,59],58:45,59:46,60:144,61:34,63:23,64:24,65:25,76:[1,68],79:[1,41],83:[1,26],87:141,88:[1,56],89:[1,57],90:[1,55],91:[1,140],94:142,96:[1,36],100:[1,42],101:[1,54],103:37,104:[1,63],106:[1,64],107:38,108:[1,65],109:39,110:[1,66],111:67,119:[1,40],124:35,125:[1,62],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33]},{1:[2,111],6:[2,111],25:[2,111],26:[2,111],49:[2,111],54:[2,111],57:[2,111],66:[2,111],67:[2,111],68:[2,111],69:[2,111],71:[2,111],73:[2,111],74:[2,111],78:[2,111],84:[2,111],85:[2,111],86:[2,111],91:[2,111],93:[2,111],102:[2,111],104:[2,111],105:[2,111],106:[2,111],110:[2,111],118:[2,111],126:[2,111],128:[2,111],129:[2,111],132:[2,111],133:[2,111],134:[2,111],135:[2,111],136:[2,111],137:[2,111]},{1:[2,112],6:[2,112],25:[2,112],26:[2,112],27:145,28:[1,71],49:[2,112],54:[2,112],57:[2,112],66:[2,112],67:[2,112],68:[2,112],69:[2,112],71:[2,112],73:[2,112],74:[2,112],78:[2,112],84:[2,112],85:[2,112],86:[2,112],91:[2,112],93:[2,112],102:[2,112],104:[2,112],105:[2,112],106:[2,112],110:[2,112],118:[2,112],126:[2,112],128:[2,112],129:[2,112],132:[2,112],133:[2,112],134:[2,112],135:[2,112],136:[2,112],137:[2,112]},{25:[2,50]},{25:[2,51]},{1:[2,67],6:[2,67],25:[2,67],26:[2,67],40:[2,67],49:[2,67],54:[2,67],57:[2,67],66:[2,67],67:[2,67],68:[2,67],69:[2,67],71:[2,67],73:[2,67],74:[2,67],78:[2,67],80:[2,67],84:[2,67],85:[2,67],86:[2,67],91:[2,67],93:[2,67],102:[2,67],104:[2,67],105:[2,67],106:[2,67],110:[2,67],118:[2,67],126:[2,67],128:[2,67],129:[2,67],130:[2,67],131:[2,67],132:[2,67],133:[2,67],134:[2,67],135:[2,67],136:[2,67],137:[2,67],138:[2,67]},{1:[2,70],6:[2,70],25:[2,70],26:[2,70],40:[2,70],49:[2,70],54:[2,70],57:[2,70],66:[2,70],67:[2,70],68:[2,70],69:[2,70],71:[2,70],73:[2,70],74:[2,70],78:[2,70],80:[2,70],84:[2,70],85:[2,70],86:[2,70],91:[2,70],93:[2,70],102:[2,70],104:[2,70],105:[2,70],106:[2,70],110:[2,70],118:[2,70],126:[2,70],128:[2,70],129:[2,70],130:[2,70],131:[2,70],132:[2,70],133:[2,70],134:[2,70],135:[2,70],136:[2,70],137:[2,70],138:[2,70]},{7:146,8:114,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:60,28:[1,71],29:47,30:[1,69],31:[1,70],32:22,33:[1,48],34:[1,49],35:[1,50],36:[1,51],37:[1,52],38:[1,53],39:21,44:61,45:[1,43],46:[1,44],47:[1,27],50:28,51:[1,58],52:[1,59],58:45,59:46,61:34,63:23,64:24,65:25,76:[1,68],79:[1,41],83:[1,26],88:[1,56],89:[1,57],90:[1,55],96:[1,36],100:[1,42],101:[1,54],103:37,104:[1,63],106:[1,64],107:38,108:[1,65],109:39,110:[1,66],111:67,119:[1,40],124:35,125:[1,62],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33]},{7:147,8:114,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:60,28:[1,71],29:47,30:[1,69],31:[1,70],32:22,33:[1,48],34:[1,49],35:[1,50],36:[1,51],37:[1,52],38:[1,53],39:21,44:61,45:[1,43],46:[1,44],47:[1,27],50:28,51:[1,58],52:[1,59],58:45,59:46,61:34,63:23,64:24,65:25,76:[1,68],79:[1,41],83:[1,26],88:[1,56],89:[1,57],90:[1,55],96:[1,36],100:[1,42],101:[1,54],103:37,104:[1,63],106:[1,64],107:38,108:[1,65],109:39,110:[1,66],111:67,119:[1,40],124:35,125:[1,62],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33]},{7:148,8:114,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:60,28:[1,71],29:47,30:[1,69],31:[1,70],32:22,33:[1,48],34:[1,49],35:[1,50],36:[1,51],37:[1,52],38:[1,53],39:21,44:61,45:[1,43],46:[1,44],47:[1,27],50:28,51:[1,58],52:[1,59],58:45,59:46,61:34,63:23,64:24,65:25,76:[1,68],79:[1,41],83:[1,26],88:[1,56],89:[1,57],90:[1,55],96:[1,36],100:[1,42],101:[1,54],103:37,104:[1,63],106:[1,64],107:38,108:[1,65],109:39,110:[1,66],111:67,119:[1,40],124:35,125:[1,62],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33]},{7:150,8:114,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,24:149,25:[1,112],27:60,28:[1,71],29:47,30:[1,69],31:[1,70],32:22,33:[1,48],34:[1,49],35:[1,50],36:[1,51],37:[1,52],38:[1,53],39:21,44:61,45:[1,43],46:[1,44],47:[1,27],50:28,51:[1,58],52:[1,59],58:45,59:46,61:34,63:23,64:24,65:25,76:[1,68],79:[1,41],83:[1,26],88:[1,56],89:[1,57],90:[1,55],96:[1,36],100:[1,42],101:[1,54],103:37,104:[1,63],106:[1,64],107:38,108:[1,65],109:39,110:[1,66],111:67,119:[1,40],124:35,125:[1,62],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33]},{27:155,28:[1,71],44:156,58:157,59:158,64:151,76:[1,68],89:[1,109],90:[1,55],113:152,114:[1,153],115:154},{112:159,116:[1,160],117:[1,161]},{6:[2,90],10:165,25:[2,90],27:166,28:[1,71],29:167,30:[1,69],31:[1,70],41:163,42:164,44:168,46:[1,44],54:[2,90],77:162,78:[2,90],89:[1,109]},{1:[2,26],6:[2,26],25:[2,26],26:[2,26],43:[2,26],49:[2,26],54:[2,26],57:[2,26],66:[2,26],67:[2,26],68:[2,26],69:[2,26],71:[2,26],73:[2,26],74:[2,26],78:[2,26],84:[2,26],85:[2,26],86:[2,26],91:[2,26],93:[2,26],102:[2,26],104:[2,26],105:[2,26],106:[2,26],110:[2,26],118:[2,26],126:[2,26],128:[2,26],129:[2,26],132:[2,26],133:[2,26],134:[2,26],135:[2,26],136:[2,26],137:[2,26]},{1:[2,27],6:[2,27],25:[2,27],26:[2,27],43:[2,27],49:[2,27],54:[2,27],57:[2,27],66:[2,27],67:[2,27],68:[2,27],69:[2,27],71:[2,27],73:[2,27],74:[2,27],78:[2,27],84:[2,27],85:[2,27],86:[2,27],91:[2,27],93:[2,27],102:[2,27],104:[2,27],105:[2,27],106:[2,27],110:[2,27],118:[2,27],126:[2,27],128:[2,27],129:[2,27],132:[2,27],133:[2,27],134:[2,27],135:[2,27],136:[2,27],137:[2,27]},{1:[2,25],6:[2,25],25:[2,25],26:[2,25],40:[2,25],43:[2,25],49:[2,25],54:[2,25],57:[2,25],66:[2,25],67:[2,25],68:[2,25],69:[2,25],71:[2,25],73:[2,25],74:[2,25],78:[2,25],80:[2,25],84:[2,25],85:[2,25],86:[2,25],91:[2,25],93:[2,25],102:[2,25],104:[2,25],105:[2,25],106:[2,25],110:[2,25],116:[2,25],117:[2,25],118:[2,25],126:[2,25],128:[2,25],129:[2,25],130:[2,25],131:[2,25],132:[2,25],133:[2,25],134:[2,25],135:[2,25],136:[2,25],137:[2,25],138:[2,25]},{1:[2,5],5:169,6:[2,5],7:4,8:5,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,26:[2,5],27:60,28:[1,71],29:47,30:[1,69],31:[1,70],32:22,33:[1,48],34:[1,49],35:[1,50],36:[1,51],37:[1,52],38:[1,53],39:21,44:61,45:[1,43],46:[1,44],47:[1,27],50:28,51:[1,58],52:[1,59],58:45,59:46,61:34,63:23,64:24,65:25,76:[1,68],79:[1,41],83:[1,26],88:[1,56],89:[1,57],90:[1,55],96:[1,36],100:[1,42],101:[1,54],102:[2,5],103:37,104:[1,63],106:[1,64],107:38,108:[1,65],109:39,110:[1,66],111:67,119:[1,40],124:35,125:[1,62],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33]},{1:[2,193],6:[2,193],25:[2,193],26:[2,193],49:[2,193],54:[2,193],57:[2,193],73:[2,193],78:[2,193],86:[2,193],91:[2,193],93:[2,193],102:[2,193],104:[2,193],105:[2,193],106:[2,193],110:[2,193],118:[2,193],126:[2,193],128:[2,193],129:[2,193],132:[2,193],133:[2,193],134:[2,193],135:[2,193],136:[2,193],137:[2,193]},{7:170,8:114,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:60,28:[1,71],29:47,30:[1,69],31:[1,70],32:22,33:[1,48],34:[1,49],35:[1,50],36:[1,51],37:[1,52],38:[1,53],39:21,44:61,45:[1,43],46:[1,44],47:[1,27],50:28,51:[1,58],52:[1,59],58:45,59:46,61:34,63:23,64:24,65:25,76:[1,68],79:[1,41],83:[1,26],88:[1,56],89:[1,57],90:[1,55],96:[1,36],100:[1,42],101:[1,54],103:37,104:[1,63],106:[1,64],107:38,108:[1,65],109:39,110:[1,66],111:67,119:[1,40],124:35,125:[1,62],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33]},{7:171,8:114,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:60,28:[1,71],29:47,30:[1,69],31:[1,70],32:22,33:[1,48],34:[1,49],35:[1,50],36:[1,51],37:[1,52],38:[1,53],39:21,44:61,45:[1,43],46:[1,44],47:[1,27],50:28,51:[1,58],52:[1,59],58:45,59:46,61:34,63:23,64:24,65:25,76:[1,68],79:[1,41],83:[1,26],88:[1,56],89:[1,57],90:[1,55],96:[1,36],100:[1,42],101:[1,54],103:37,104:[1,63],106:[1,64],107:38,108:[1,65],109:39,110:[1,66],111:67,119:[1,40],124:35,125:[1,62],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33]},{7:172,8:114,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:60,28:[1,71],29:47,30:[1,69],31:[1,70],32:22,33:[1,48],34:[1,49],35:[1,50],36:[1,51],37:[1,52],38:[1,53],39:21,44:61,45:[1,43],46:[1,44],47:[1,27],50:28,51:[1,58],52:[1,59],58:45,59:46,61:34,63:23,64:24,65:25,76:[1,68],79:[1,41],83:[1,26],88:[1,56],89:[1,57],90:[1,55],96:[1,36],100:[1,42],101:[1,54],103:37,104:[1,63],106:[1,64],107:38,108:[1,65],109:39,110:[1,66],111:67,119:[1,40],124:35,125:[1,62],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33]},{7:173,8:114,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:60,28:[1,71],29:47,30:[1,69],31:[1,70],32:22,33:[1,48],34:[1,49],35:[1,50],36:[1,51],37:[1,52],38:[1,53],39:21,44:61,45:[1,43],46:[1,44],47:[1,27],50:28,51:[1,58],52:[1,59],58:45,59:46,61:34,63:23,64:24,65:25,76:[1,68],79:[1,41],83:[1,26],88:[1,56],89:[1,57],90:[1,55],96:[1,36],100:[1,42],101:[1,54],103:37,104:[1,63],106:[1,64],107:38,108:[1,65],109:39,110:[1,66],111:67,119:[1,40],124:35,125:[1,62],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33]},{7:174,8:114,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:60,28:[1,71],29:47,30:[1,69],31:[1,70],32:22,33:[1,48],34:[1,49],35:[1,50],36:[1,51],37:[1,52],38:[1,53],39:21,44:61,45:[1,43],46:[1,44],47:[1,27],50:28,51:[1,58],52:[1,59],58:45,59:46,61:34,63:23,64:24,65:25,76:[1,68],79:[1,41],83:[1,26],88:[1,56],89:[1,57],90:[1,55],96:[1,36],100:[1,42],101:[1,54],103:37,104:[1,63],106:[1,64],107:38,108:[1,65],109:39,110:[1,66],111:67,119:[1,40],124:35,125:[1,62],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33]},{7:175,8:114,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:60,28:[1,71],29:47,30:[1,69],31:[1,70],32:22,33:[1,48],34:[1,49],35:[1,50],36:[1,51],37:[1,52],38:[1,53],39:21,44:61,45:[1,43],46:[1,44],47:[1,27],50:28,51:[1,58],52:[1,59],58:45,59:46,61:34,63:23,64:24,65:25,76:[1,68],79:[1,41],83:[1,26],88:[1,56],89:[1,57],90:[1,55],96:[1,36],100:[1,42],101:[1,54],103:37,104:[1,63],106:[1,64],107:38,108:[1,65],109:39,110:[1,66],111:67,119:[1,40],124:35,125:[1,62],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33]},{7:176,8:114,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:60,28:[1,71],29:47,30:[1,69],31:[1,70],32:22,33:[1,48],34:[1,49],35:[1,50],36:[1,51],37:[1,52],38:[1,53],39:21,44:61,45:[1,43],46:[1,44],47:[1,27],50:28,51:[1,58],52:[1,59],58:45,59:46,61:34,63:23,64:24,65:25,76:[1,68],79:[1,41],83:[1,26],88:[1,56],89:[1,57],90:[1,55],96:[1,36],100:[1,42],101:[1,54],103:37,104:[1,63],106:[1,64],107:38,108:[1,65],109:39,110:[1,66],111:67,119:[1,40],124:35,125:[1,62],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33]},{7:177,8:114,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:60,28:[1,71],29:47,30:[1,69],31:[1,70],32:22,33:[1,48],34:[1,49],35:[1,50],36:[1,51],37:[1,52],38:[1,53],39:21,44:61,45:[1,43],46:[1,44],47:[1,27],50:28,51:[1,58],52:[1,59],58:45,59:46,61:34,63:23,64:24,65:25,76:[1,68],79:[1,41],83:[1,26],88:[1,56],89:[1,57],90:[1,55],96:[1,36],100:[1,42],101:[1,54],103:37,104:[1,63],106:[1,64],107:38,108:[1,65],109:39,110:[1,66],111:67,119:[1,40],124:35,125:[1,62],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33]},{1:[2,148],6:[2,148],25:[2,148],26:[2,148],49:[2,148],54:[2,148],57:[2,148],73:[2,148],78:[2,148],86:[2,148],91:[2,148],93:[2,148],102:[2,148],104:[2,148],105:[2,148],106:[2,148],110:[2,148],118:[2,148],126:[2,148],128:[2,148],129:[2,148],132:[2,148],133:[2,148],134:[2,148],135:[2,148],136:[2,148],137:[2,148]},{1:[2,153],6:[2,153],25:[2,153],26:[2,153],49:[2,153],54:[2,153],57:[2,153],73:[2,153],78:[2,153],86:[2,153],91:[2,153],93:[2,153],102:[2,153],104:[2,153],105:[2,153],106:[2,153],110:[2,153],118:[2,153],126:[2,153],128:[2,153],129:[2,153],132:[2,153],133:[2,153],134:[2,153],135:[2,153],136:[2,153],137:[2,153]},{7:178,8:114,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:60,28:[1,71],29:47,30:[1,69],31:[1,70],32:22,33:[1,48],34:[1,49],35:[1,50],36:[1,51],37:[1,52],38:[1,53],39:21,44:61,45:[1,43],46:[1,44],47:[1,27],50:28,51:[1,58],52:[1,59],58:45,59:46,61:34,63:23,64:24,65:25,76:[1,68],79:[1,41],83:[1,26],88:[1,56],89:[1,57],90:[1,55],96:[1,36],100:[1,42],101:[1,54],103:37,104:[1,63],106:[1,64],107:38,108:[1,65],109:39,110:[1,66],111:67,119:[1,40],124:35,125:[1,62],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33]},{1:[2,147],6:[2,147],25:[2,147],26:[2,147],49:[2,147],54:[2,147],57:[2,147],73:[2,147],78:[2,147],86:[2,147],91:[2,147],93:[2,147],102:[2,147],104:[2,147],105:[2,147],106:[2,147],110:[2,147],118:[2,147],126:[2,147],128:[2,147],129:[2,147],132:[2,147],133:[2,147],134:[2,147],135:[2,147],136:[2,147],137:[2,147]},{1:[2,152],6:[2,152],25:[2,152],26:[2,152],49:[2,152],54:[2,152],57:[2,152],73:[2,152],78:[2,152],86:[2,152],91:[2,152],93:[2,152],102:[2,152],104:[2,152],105:[2,152],106:[2,152],110:[2,152],118:[2,152],126:[2,152],128:[2,152],129:[2,152],132:[2,152],133:[2,152],134:[2,152],135:[2,152],136:[2,152],137:[2,152]},{82:179,85:[1,101]},{1:[2,68],6:[2,68],25:[2,68],26:[2,68],40:[2,68],49:[2,68],54:[2,68],57:[2,68],66:[2,68],67:[2,68],68:[2,68],69:[2,68],71:[2,68],73:[2,68],74:[2,68],78:[2,68],80:[2,68],84:[2,68],85:[2,68],86:[2,68],91:[2,68],93:[2,68],102:[2,68],104:[2,68],105:[2,68],106:[2,68],110:[2,68],118:[2,68],126:[2,68],128:[2,68],129:[2,68],130:[2,68],131:[2,68],132:[2,68],133:[2,68],134:[2,68],135:[2,68],136:[2,68],137:[2,68],138:[2,68]},{85:[2,108]},{27:180,28:[1,71]},{27:181,28:[1,71]},{1:[2,83],6:[2,83],25:[2,83],26:[2,83],27:182,28:[1,71],40:[2,83],49:[2,83],54:[2,83],57:[2,83],66:[2,83],67:[2,83],68:[2,83],69:[2,83],71:[2,83],73:[2,83],74:[2,83],78:[2,83],80:[2,83],84:[2,83],85:[2,83],86:[2,83],91:[2,83],93:[2,83],102:[2,83],104:[2,83],105:[2,83],106:[2,83],110:[2,83],118:[2,83],126:[2,83],128:[2,83],129:[2,83],130:[2,83],131:[2,83],132:[2,83],133:[2,83],134:[2,83],135:[2,83],136:[2,83],137:[2,83],138:[2,83]},{27:183,28:[1,71]},{1:[2,84],6:[2,84],25:[2,84],26:[2,84],40:[2,84],49:[2,84],54:[2,84],57:[2,84],66:[2,84],67:[2,84],68:[2,84],69:[2,84],71:[2,84],73:[2,84],74:[2,84],78:[2,84],80:[2,84],84:[2,84],85:[2,84],86:[2,84],91:[2,84],93:[2,84],102:[2,84],104:[2,84],105:[2,84],106:[2,84],110:[2,84],118:[2,84],126:[2,84],128:[2,84],129:[2,84],130:[2,84],131:[2,84],132:[2,84],133:[2,84],134:[2,84],135:[2,84],136:[2,84],137:[2,84],138:[2,84]},{7:185,8:114,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:60,28:[1,71],29:47,30:[1,69],31:[1,70],32:22,33:[1,48],34:[1,49],35:[1,50],36:[1,51],37:[1,52],38:[1,53],39:21,44:61,45:[1,43],46:[1,44],47:[1,27],50:28,51:[1,58],52:[1,59],57:[1,189],58:45,59:46,61:34,63:23,64:24,65:25,72:184,75:186,76:[1,68],79:[1,41],83:[1,26],88:[1,56],89:[1,57],90:[1,55],92:187,93:[1,188],96:[1,36],100:[1,42],101:[1,54],103:37,104:[1,63],106:[1,64],107:38,108:[1,65],109:39,110:[1,66],111:67,119:[1,40],124:35,125:[1,62],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33]},{70:190,71:[1,95],74:[1,96]},{82:191,85:[1,101]},{1:[2,69],6:[2,69],25:[2,69],26:[2,69],40:[2,69],49:[2,69],54:[2,69],57:[2,69],66:[2,69],67:[2,69],68:[2,69],69:[2,69],71:[2,69],73:[2,69],74:[2,69],78:[2,69],80:[2,69],84:[2,69],85:[2,69],86:[2,69],91:[2,69],93:[2,69],102:[2,69],104:[2,69],105:[2,69],106:[2,69],110:[2,69],118:[2,69],126:[2,69],128:[2,69],129:[2,69],130:[2,69],131:[2,69],132:[2,69],133:[2,69],134:[2,69],135:[2,69],136:[2,69],137:[2,69],138:[2,69]},{6:[1,193],7:192,8:114,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,25:[1,194],27:60,28:[1,71],29:47,30:[1,69],31:[1,70],32:22,33:[1,48],34:[1,49],35:[1,50],36:[1,51],37:[1,52],38:[1,53],39:21,44:61,45:[1,43],46:[1,44],47:[1,27],50:28,51:[1,58],52:[1,59],58:45,59:46,61:34,63:23,64:24,65:25,76:[1,68],79:[1,41],83:[1,26],88:[1,56],89:[1,57],90:[1,55],96:[1,36],100:[1,42],101:[1,54],103:37,104:[1,63],106:[1,64],107:38,108:[1,65],109:39,110:[1,66],111:67,119:[1,40],124:35,125:[1,62],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33]},{1:[2,106],6:[2,106],25:[2,106],26:[2,106],49:[2,106],54:[2,106],57:[2,106],66:[2,106],67:[2,106],68:[2,106],69:[2,106],71:[2,106],73:[2,106],74:[2,106],78:[2,106],84:[2,106],85:[2,106],86:[2,106],91:[2,106],93:[2,106],102:[2,106],104:[2,106],105:[2,106],106:[2,106],110:[2,106],118:[2,106],126:[2,106],128:[2,106],129:[2,106],132:[2,106],133:[2,106],134:[2,106],135:[2,106],136:[2,106],137:[2,106]},{7:197,8:114,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,25:[1,143],27:60,28:[1,71],29:47,30:[1,69],31:[1,70],32:22,33:[1,48],34:[1,49],35:[1,50],36:[1,51],37:[1,52],38:[1,53],39:21,44:61,45:[1,43],46:[1,44],47:[1,27],50:28,51:[1,58],52:[1,59],58:45,59:46,60:144,61:34,63:23,64:24,65:25,76:[1,68],79:[1,41],83:[1,26],86:[1,195],87:196,88:[1,56],89:[1,57],90:[1,55],94:142,96:[1,36],100:[1,42],101:[1,54],103:37,104:[1,63],106:[1,64],107:38,108:[1,65],109:39,110:[1,66],111:67,119:[1,40],124:35,125:[1,62],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33]},{6:[2,52],25:[2,52],49:[1,198],53:200,54:[1,199]},{6:[2,55],25:[2,55],26:[2,55],49:[2,55],54:[2,55]},{6:[2,59],25:[2,59],26:[2,59],40:[1,202],49:[2,59],54:[2,59],57:[1,201]},{6:[2,62],25:[2,62],26:[2,62],40:[2,62],49:[2,62],54:[2,62],57:[2,62]},{6:[2,63],25:[2,63],26:[2,63],40:[2,63],49:[2,63],54:[2,63],57:[2,63]},{6:[2,64],25:[2,64],26:[2,64],40:[2,64],49:[2,64],54:[2,64],57:[2,64]},{6:[2,65],25:[2,65],26:[2,65],40:[2,65],49:[2,65],54:[2,65],57:[2,65]},{27:145,28:[1,71]},{7:197,8:114,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,25:[1,143],27:60,28:[1,71],29:47,30:[1,69],31:[1,70],32:22,33:[1,48],34:[1,49],35:[1,50],36:[1,51],37:[1,52],38:[1,53],39:21,44:61,45:[1,43],46:[1,44],47:[1,27],50:28,51:[1,58],52:[1,59],58:45,59:46,60:144,61:34,63:23,64:24,65:25,76:[1,68],79:[1,41],83:[1,26],87:141,88:[1,56],89:[1,57],90:[1,55],91:[1,140],94:142,96:[1,36],100:[1,42],101:[1,54],103:37,104:[1,63],106:[1,64],107:38,108:[1,65],109:39,110:[1,66],111:67,119:[1,40],124:35,125:[1,62],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33]},{1:[2,49],6:[2,49],25:[2,49],26:[2,49],49:[2,49],54:[2,49],57:[2,49],73:[2,49],78:[2,49],86:[2,49],91:[2,49],93:[2,49],102:[2,49],104:[2,49],105:[2,49],106:[2,49],110:[2,49],118:[2,49],126:[2,49],128:[2,49],129:[2,49],132:[2,49],133:[2,49],134:[2,49],135:[2,49],136:[2,49],137:[2,49]},{4:204,5:3,7:4,8:5,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,26:[1,203],27:60,28:[1,71],29:47,30:[1,69],31:[1,70],32:22,33:[1,48],34:[1,49],35:[1,50],36:[1,51],37:[1,52],38:[1,53],39:21,44:61,45:[1,43],46:[1,44],47:[1,27],50:28,51:[1,58],52:[1,59],58:45,59:46,61:34,63:23,64:24,65:25,76:[1,68],79:[1,41],83:[1,26],88:[1,56],89:[1,57],90:[1,55],96:[1,36],100:[1,42],101:[1,54],103:37,104:[1,63],106:[1,64],107:38,108:[1,65],109:39,110:[1,66],111:67,119:[1,40],124:35,125:[1,62],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33]},{1:[2,186],6:[2,186],25:[2,186],26:[2,186],49:[2,186],54:[2,186],57:[2,186],73:[2,186],78:[2,186],86:[2,186],91:[2,186],93:[2,186],102:[2,186],103:82,104:[2,186],105:[2,186],106:[2,186],109:83,110:[2,186],111:67,118:[2,186],126:[2,186],128:[2,186],129:[2,186],132:[1,73],133:[2,186],134:[2,186],135:[2,186],136:[2,186],137:[2,186]},{103:85,104:[1,63],106:[1,64],109:86,110:[1,66],111:67,126:[1,84]},{1:[2,187],6:[2,187],25:[2,187],26:[2,187],49:[2,187],54:[2,187],57:[2,187],73:[2,187],78:[2,187],86:[2,187],91:[2,187],93:[2,187],102:[2,187],103:82,104:[2,187],105:[2,187],106:[2,187],109:83,110:[2,187],111:67,118:[2,187],126:[2,187],128:[2,187],129:[2,187],132:[1,73],133:[2,187],134:[2,187],135:[2,187],136:[2,187],137:[2,187]},{1:[2,188],6:[2,188],25:[2,188],26:[2,188],49:[2,188],54:[2,188],57:[2,188],73:[2,188],78:[2,188],86:[2,188],91:[2,188],93:[2,188],102:[2,188],103:82,104:[2,188],105:[2,188],106:[2,188],109:83,110:[2,188],111:67,118:[2,188],126:[2,188],128:[2,188],129:[2,188],132:[1,73],133:[2,188],134:[2,188],135:[2,188],136:[2,188],137:[2,188]},{1:[2,189],6:[2,189],25:[2,189],26:[2,189],49:[2,189],54:[2,189],57:[2,189],66:[2,71],67:[2,71],68:[2,71],69:[2,71],71:[2,71],73:[2,189],74:[2,71],78:[2,189],84:[2,71],85:[2,71],86:[2,189],91:[2,189],93:[2,189],102:[2,189],104:[2,189],105:[2,189],106:[2,189],110:[2,189],118:[2,189],126:[2,189],128:[2,189],129:[2,189],132:[2,189],133:[2,189],134:[2,189],135:[2,189],136:[2,189],137:[2,189]},{62:88,66:[1,90],67:[1,91],68:[1,92],69:[1,93],70:94,71:[1,95],74:[1,96],81:87,84:[1,89],85:[2,107]},{62:98,66:[1,90],67:[1,91],68:[1,92],69:[1,93],70:94,71:[1,95],74:[1,96],81:97,84:[1,89],85:[2,107]},{66:[2,74],67:[2,74],68:[2,74],69:[2,74],71:[2,74],74:[2,74],84:[2,74],85:[2,74]},{1:[2,190],6:[2,190],25:[2,190],26:[2,190],49:[2,190],54:[2,190],57:[2,190],66:[2,71],67:[2,71],68:[2,71],69:[2,71],71:[2,71],73:[2,190],74:[2,71],78:[2,190],84:[2,71],85:[2,71],86:[2,190],91:[2,190],93:[2,190],102:[2,190],104:[2,190],105:[2,190],106:[2,190],110:[2,190],118:[2,190],126:[2,190],128:[2,190],129:[2,190],132:[2,190],133:[2,190],134:[2,190],135:[2,190],136:[2,190],137:[2,190]},{1:[2,191],6:[2,191],25:[2,191],26:[2,191],49:[2,191],54:[2,191],57:[2,191],73:[2,191],78:[2,191],86:[2,191],91:[2,191],93:[2,191],102:[2,191],104:[2,191],105:[2,191],106:[2,191],110:[2,191],118:[2,191],126:[2,191],128:[2,191],129:[2,191],132:[2,191],133:[2,191],134:[2,191],135:[2,191],136:[2,191],137:[2,191]},{1:[2,192],6:[2,192],25:[2,192],26:[2,192],49:[2,192],54:[2,192],57:[2,192],73:[2,192],78:[2,192],86:[2,192],91:[2,192],93:[2,192],102:[2,192],104:[2,192],105:[2,192],106:[2,192],110:[2,192],118:[2,192],126:[2,192],128:[2,192],129:[2,192],132:[2,192],133:[2,192],134:[2,192],135:[2,192],136:[2,192],137:[2,192]},{6:[1,207],7:205,8:114,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,25:[1,206],27:60,28:[1,71],29:47,30:[1,69],31:[1,70],32:22,33:[1,48],34:[1,49],35:[1,50],36:[1,51],37:[1,52],38:[1,53],39:21,44:61,45:[1,43],46:[1,44],47:[1,27],50:28,51:[1,58],52:[1,59],58:45,59:46,61:34,63:23,64:24,65:25,76:[1,68],79:[1,41],83:[1,26],88:[1,56],89:[1,57],90:[1,55],96:[1,36],100:[1,42],101:[1,54],103:37,104:[1,63],106:[1,64],107:38,108:[1,65],109:39,110:[1,66],111:67,119:[1,40],124:35,125:[1,62],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33]},{7:208,8:114,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:60,28:[1,71],29:47,30:[1,69],31:[1,70],32:22,33:[1,48],34:[1,49],35:[1,50],36:[1,51],37:[1,52],38:[1,53],39:21,44:61,45:[1,43],46:[1,44],47:[1,27],50:28,51:[1,58],52:[1,59],58:45,59:46,61:34,63:23,64:24,65:25,76:[1,68],79:[1,41],83:[1,26],88:[1,56],89:[1,57],90:[1,55],96:[1,36],100:[1,42],101:[1,54],103:37,104:[1,63],106:[1,64],107:38,108:[1,65],109:39,110:[1,66],111:67,119:[1,40],124:35,125:[1,62],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33]},{24:209,25:[1,112],125:[1,210]},{1:[2,132],6:[2,132],25:[2,132],26:[2,132],49:[2,132],54:[2,132],57:[2,132],73:[2,132],78:[2,132],86:[2,132],91:[2,132],93:[2,132],97:211,98:[1,212],99:[1,213],102:[2,132],104:[2,132],105:[2,132],106:[2,132],110:[2,132],118:[2,132],126:[2,132],128:[2,132],129:[2,132],132:[2,132],133:[2,132],134:[2,132],135:[2,132],136:[2,132],137:[2,132]},{1:[2,146],6:[2,146],25:[2,146],26:[2,146],49:[2,146],54:[2,146],57:[2,146],73:[2,146],78:[2,146],86:[2,146],91:[2,146],93:[2,146],102:[2,146],104:[2,146],105:[2,146],106:[2,146],110:[2,146],118:[2,146],126:[2,146],128:[2,146],129:[2,146],132:[2,146],133:[2,146],134:[2,146],135:[2,146],136:[2,146],137:[2,146]},{1:[2,154],6:[2,154],25:[2,154],26:[2,154],49:[2,154],54:[2,154],57:[2,154],73:[2,154],78:[2,154],86:[2,154],91:[2,154],93:[2,154],102:[2,154],104:[2,154],105:[2,154],106:[2,154],110:[2,154],118:[2,154],126:[2,154],128:[2,154],129:[2,154],132:[2,154],133:[2,154],134:[2,154],135:[2,154],136:[2,154],137:[2,154]},{25:[1,214],103:82,104:[1,63],106:[1,64],109:83,110:[1,66],111:67,126:[1,81],128:[1,75],129:[1,74],132:[1,73],133:[1,76],134:[1,77],135:[1,78],136:[1,79],137:[1,80]},{120:215,122:216,123:[1,217]},{1:[2,96],6:[2,96],25:[2,96],26:[2,96],49:[2,96],54:[2,96],57:[2,96],73:[2,96],78:[2,96],86:[2,96],91:[2,96],93:[2,96],102:[2,96],104:[2,96],105:[2,96],106:[2,96],110:[2,96],118:[2,96],126:[2,96],128:[2,96],129:[2,96],132:[2,96],133:[2,96],134:[2,96],135:[2,96],136:[2,96],137:[2,96]},{7:218,8:114,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:60,28:[1,71],29:47,30:[1,69],31:[1,70],32:22,33:[1,48],34:[1,49],35:[1,50],36:[1,51],37:[1,52],38:[1,53],39:21,44:61,45:[1,43],46:[1,44],47:[1,27],50:28,51:[1,58],52:[1,59],58:45,59:46,61:34,63:23,64:24,65:25,76:[1,68],79:[1,41],83:[1,26],88:[1,56],89:[1,57],90:[1,55],96:[1,36],100:[1,42],101:[1,54],103:37,104:[1,63],106:[1,64],107:38,108:[1,65],109:39,110:[1,66],111:67,119:[1,40],124:35,125:[1,62],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33]},{1:[2,99],6:[2,99],24:219,25:[1,112],26:[2,99],49:[2,99],54:[2,99],57:[2,99],66:[2,71],67:[2,71],68:[2,71],69:[2,71],71:[2,71],73:[2,99],74:[2,71],78:[2,99],80:[1,220],84:[2,71],85:[2,71],86:[2,99],91:[2,99],93:[2,99],102:[2,99],104:[2,99],105:[2,99],106:[2,99],110:[2,99],118:[2,99],126:[2,99],128:[2,99],129:[2,99],132:[2,99],133:[2,99],134:[2,99],135:[2,99],136:[2,99],137:[2,99]},{1:[2,139],6:[2,139],25:[2,139],26:[2,139],49:[2,139],54:[2,139],57:[2,139],73:[2,139],78:[2,139],86:[2,139],91:[2,139],93:[2,139],102:[2,139],103:82,104:[2,139],105:[2,139],106:[2,139],109:83,110:[2,139],111:67,118:[2,139],126:[2,139],128:[1,75],129:[1,74],132:[1,73],133:[1,76],134:[1,77],135:[1,78],136:[1,79],137:[1,80]},{1:[2,45],6:[2,45],26:[2,45],102:[2,45],103:82,104:[2,45],106:[2,45],109:83,110:[2,45],111:67,126:[2,45],128:[1,75],129:[1,74],132:[1,73],133:[1,76],134:[1,77],135:[1,78],136:[1,79],137:[1,80]},{6:[1,72],102:[1,221]},{4:222,5:3,7:4,8:5,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:60,28:[1,71],29:47,30:[1,69],31:[1,70],32:22,33:[1,48],34:[1,49],35:[1,50],36:[1,51],37:[1,52],38:[1,53],39:21,44:61,45:[1,43],46:[1,44],47:[1,27],50:28,51:[1,58],52:[1,59],58:45,59:46,61:34,63:23,64:24,65:25,76:[1,68],79:[1,41],83:[1,26],88:[1,56],89:[1,57],90:[1,55],96:[1,36],100:[1,42],101:[1,54],103:37,104:[1,63],106:[1,64],107:38,108:[1,65],109:39,110:[1,66],111:67,119:[1,40],124:35,125:[1,62],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33]},{6:[2,128],25:[2,128],54:[2,128],57:[1,224],91:[2,128],92:223,93:[1,188],103:82,104:[1,63],106:[1,64],109:83,110:[1,66],111:67,126:[1,81],128:[1,75],129:[1,74],132:[1,73],133:[1,76],134:[1,77],135:[1,78],136:[1,79],137:[1,80]},{1:[2,114],6:[2,114],25:[2,114],26:[2,114],40:[2,114],49:[2,114],54:[2,114],57:[2,114],66:[2,114],67:[2,114],68:[2,114],69:[2,114],71:[2,114],73:[2,114],74:[2,114],78:[2,114],84:[2,114],85:[2,114],86:[2,114],91:[2,114],93:[2,114],102:[2,114],104:[2,114],105:[2,114],106:[2,114],110:[2,114],116:[2,114],117:[2,114],118:[2,114],126:[2,114],128:[2,114],129:[2,114],132:[2,114],133:[2,114],134:[2,114],135:[2,114],136:[2,114],137:[2,114]},{6:[2,52],25:[2,52],53:225,54:[1,226],91:[2,52]},{6:[2,123],25:[2,123],26:[2,123],54:[2,123],86:[2,123],91:[2,123]},{7:197,8:114,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,25:[1,143],27:60,28:[1,71],29:47,30:[1,69],31:[1,70],32:22,33:[1,48],34:[1,49],35:[1,50],36:[1,51],37:[1,52],38:[1,53],39:21,44:61,45:[1,43],46:[1,44],47:[1,27],50:28,51:[1,58],52:[1,59],58:45,59:46,60:144,61:34,63:23,64:24,65:25,76:[1,68],79:[1,41],83:[1,26],87:227,88:[1,56],89:[1,57],90:[1,55],94:142,96:[1,36],100:[1,42],101:[1,54],103:37,104:[1,63],106:[1,64],107:38,108:[1,65],109:39,110:[1,66],111:67,119:[1,40],124:35,125:[1,62],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33]},{6:[2,129],25:[2,129],26:[2,129],54:[2,129],86:[2,129],91:[2,129]},{1:[2,113],6:[2,113],25:[2,113],26:[2,113],40:[2,113],43:[2,113],49:[2,113],54:[2,113],57:[2,113],66:[2,113],67:[2,113],68:[2,113],69:[2,113],71:[2,113],73:[2,113],74:[2,113],78:[2,113],80:[2,113],84:[2,113],85:[2,113],86:[2,113],91:[2,113],93:[2,113],102:[2,113],104:[2,113],105:[2,113],106:[2,113],110:[2,113],116:[2,113],117:[2,113],118:[2,113],126:[2,113],128:[2,113],129:[2,113],130:[2,113],131:[2,113],132:[2,113],133:[2,113],134:[2,113],135:[2,113],136:[2,113],137:[2,113],138:[2,113]},{24:228,25:[1,112],103:82,104:[1,63],106:[1,64],109:83,110:[1,66],111:67,126:[1,81],128:[1,75],129:[1,74],132:[1,73],133:[1,76],134:[1,77],135:[1,78],136:[1,79],137:[1,80]},{1:[2,142],6:[2,142],25:[2,142],26:[2,142],49:[2,142],54:[2,142],57:[2,142],73:[2,142],78:[2,142],86:[2,142],91:[2,142],93:[2,142],102:[2,142],103:82,104:[1,63],105:[1,229],106:[1,64],109:83,110:[1,66],111:67,118:[2,142],126:[2,142],128:[1,75],129:[1,74],132:[1,73],133:[1,76],134:[1,77],135:[1,78],136:[1,79],137:[1,80]},{1:[2,144],6:[2,144],25:[2,144],26:[2,144],49:[2,144],54:[2,144],57:[2,144],73:[2,144],78:[2,144],86:[2,144],91:[2,144],93:[2,144],102:[2,144],103:82,104:[1,63],105:[1,230],106:[1,64],109:83,110:[1,66],111:67,118:[2,144],126:[2,144],128:[1,75],129:[1,74],132:[1,73],133:[1,76],134:[1,77],135:[1,78],136:[1,79],137:[1,80]},{1:[2,150],6:[2,150],25:[2,150],26:[2,150],49:[2,150],54:[2,150],57:[2,150],73:[2,150],78:[2,150],86:[2,150],91:[2,150],93:[2,150],102:[2,150],104:[2,150],105:[2,150],106:[2,150],110:[2,150],118:[2,150],126:[2,150],128:[2,150],129:[2,150],132:[2,150],133:[2,150],134:[2,150],135:[2,150],136:[2,150],137:[2,150]},{1:[2,151],6:[2,151],25:[2,151],26:[2,151],49:[2,151],54:[2,151],57:[2,151],73:[2,151],78:[2,151],86:[2,151],91:[2,151],93:[2,151],102:[2,151],103:82,104:[1,63],105:[2,151],106:[1,64],109:83,110:[1,66],111:67,118:[2,151],126:[2,151],128:[1,75],129:[1,74],132:[1,73],133:[1,76],134:[1,77],135:[1,78],136:[1,79],137:[1,80]},{1:[2,155],6:[2,155],25:[2,155],26:[2,155],49:[2,155],54:[2,155],57:[2,155],73:[2,155],78:[2,155],86:[2,155],91:[2,155],93:[2,155],102:[2,155],104:[2,155],105:[2,155],106:[2,155],110:[2,155],118:[2,155],126:[2,155],128:[2,155],129:[2,155],132:[2,155],133:[2,155],134:[2,155],135:[2,155],136:[2,155],137:[2,155]},{116:[2,157],117:[2,157]},{27:155,28:[1,71],44:156,58:157,59:158,76:[1,68],89:[1,109],90:[1,110],113:231,115:154},{54:[1,232],116:[2,163],117:[2,163]},{54:[2,159],116:[2,159],117:[2,159]},{54:[2,160],116:[2,160],117:[2,160]},{54:[2,161],116:[2,161],117:[2,161]},{54:[2,162],116:[2,162],117:[2,162]},{1:[2,156],6:[2,156],25:[2,156],26:[2,156],49:[2,156],54:[2,156],57:[2,156],73:[2,156],78:[2,156],86:[2,156],91:[2,156],93:[2,156],102:[2,156],104:[2,156],105:[2,156],106:[2,156],110:[2,156],118:[2,156],126:[2,156],128:[2,156],129:[2,156],132:[2,156],133:[2,156],134:[2,156],135:[2,156],136:[2,156],137:[2,156]},{7:233,8:114,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:60,28:[1,71],29:47,30:[1,69],31:[1,70],32:22,33:[1,48],34:[1,49],35:[1,50],36:[1,51],37:[1,52],38:[1,53],39:21,44:61,45:[1,43],46:[1,44],47:[1,27],50:28,51:[1,58],52:[1,59],58:45,59:46,61:34,63:23,64:24,65:25,76:[1,68],79:[1,41],83:[1,26],88:[1,56],89:[1,57],90:[1,55],96:[1,36],100:[1,42],101:[1,54],103:37,104:[1,63],106:[1,64],107:38,108:[1,65],109:39,110:[1,66],111:67,119:[1,40],124:35,125:[1,62],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33]},{7:234,8:114,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:60,28:[1,71],29:47,30:[1,69],31:[1,70],32:22,33:[1,48],34:[1,49],35:[1,50],36:[1,51],37:[1,52],38:[1,53],39:21,44:61,45:[1,43],46:[1,44],47:[1,27],50:28,51:[1,58],52:[1,59],58:45,59:46,61:34,63:23,64:24,65:25,76:[1,68],79:[1,41],83:[1,26],88:[1,56],89:[1,57],90:[1,55],96:[1,36],100:[1,42],101:[1,54],103:37,104:[1,63],106:[1,64],107:38,108:[1,65],109:39,110:[1,66],111:67,119:[1,40],124:35,125:[1,62],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33]},{6:[2,52],25:[2,52],53:235,54:[1,236],78:[2,52]},{6:[2,91],25:[2,91],26:[2,91],54:[2,91],78:[2,91]},{6:[2,38],25:[2,38],26:[2,38],43:[1,237],54:[2,38],78:[2,38]},{6:[2,41],25:[2,41],26:[2,41],54:[2,41],78:[2,41]},{6:[2,42],25:[2,42],26:[2,42],43:[2,42],54:[2,42],78:[2,42]},{6:[2,43],25:[2,43],26:[2,43],43:[2,43],54:[2,43],78:[2,43]},{6:[2,44],25:[2,44],26:[2,44],43:[2,44],54:[2,44],78:[2,44]},{1:[2,4],6:[2,4],26:[2,4],102:[2,4]},{1:[2,194],6:[2,194],25:[2,194],26:[2,194],49:[2,194],54:[2,194],57:[2,194],73:[2,194],78:[2,194],86:[2,194],91:[2,194],93:[2,194],102:[2,194],103:82,104:[2,194],105:[2,194],106:[2,194],109:83,110:[2,194],111:67,118:[2,194],126:[2,194],128:[2,194],129:[2,194],132:[1,73],133:[1,76],134:[2,194],135:[2,194],136:[2,194],137:[2,194]},{1:[2,195],6:[2,195],25:[2,195],26:[2,195],49:[2,195],54:[2,195],57:[2,195],73:[2,195],78:[2,195],86:[2,195],91:[2,195],93:[2,195],102:[2,195],103:82,104:[2,195],105:[2,195],106:[2,195],109:83,110:[2,195],111:67,118:[2,195],126:[2,195],128:[2,195],129:[2,195],132:[1,73],133:[1,76],134:[2,195],135:[2,195],136:[2,195],137:[2,195]},{1:[2,196],6:[2,196],25:[2,196],26:[2,196],49:[2,196],54:[2,196],57:[2,196],73:[2,196],78:[2,196],86:[2,196],91:[2,196],93:[2,196],102:[2,196],103:82,104:[2,196],105:[2,196],106:[2,196],109:83,110:[2,196],111:67,118:[2,196],126:[2,196],128:[2,196],129:[2,196],132:[1,73],133:[2,196],134:[2,196],135:[2,196],136:[2,196],137:[2,196]},{1:[2,197],6:[2,197],25:[2,197],26:[2,197],49:[2,197],54:[2,197],57:[2,197],73:[2,197],78:[2,197],86:[2,197],91:[2,197],93:[2,197],102:[2,197],103:82,104:[2,197],105:[2,197],106:[2,197],109:83,110:[2,197],111:67,118:[2,197],126:[2,197],128:[1,75],129:[1,74],132:[1,73],133:[1,76],134:[2,197],135:[2,197],136:[2,197],137:[2,197]},{1:[2,198],6:[2,198],25:[2,198],26:[2,198],49:[2,198],54:[2,198],57:[2,198],73:[2,198],78:[2,198],86:[2,198],91:[2,198],93:[2,198],102:[2,198],103:82,104:[2,198],105:[2,198],106:[2,198],109:83,110:[2,198],111:67,118:[2,198],126:[2,198],128:[1,75],129:[1,74],132:[1,73],133:[1,76],134:[1,77],135:[2,198],136:[2,198],137:[1,80]},{1:[2,199],6:[2,199],25:[2,199],26:[2,199],49:[2,199],54:[2,199],57:[2,199],73:[2,199],78:[2,199],86:[2,199],91:[2,199],93:[2,199],102:[2,199],103:82,104:[2,199],105:[2,199],106:[2,199],109:83,110:[2,199],111:67,118:[2,199],126:[2,199],128:[1,75],129:[1,74],132:[1,73],133:[1,76],134:[1,77],135:[1,78],136:[2,199],137:[1,80]},{1:[2,200],6:[2,200],25:[2,200],26:[2,200],49:[2,200],54:[2,200],57:[2,200],73:[2,200],78:[2,200],86:[2,200],91:[2,200],93:[2,200],102:[2,200],103:82,104:[2,200],105:[2,200],106:[2,200],109:83,110:[2,200],111:67,118:[2,200],126:[2,200],128:[1,75],129:[1,74],132:[1,73],133:[1,76],134:[1,77],135:[2,200],136:[2,200],137:[2,200]},{1:[2,185],6:[2,185],25:[2,185],26:[2,185],49:[2,185],54:[2,185],57:[2,185],73:[2,185],78:[2,185],86:[2,185],91:[2,185],93:[2,185],102:[2,185],103:82,104:[1,63],105:[2,185],106:[1,64],109:83,110:[1,66],111:67,118:[2,185],126:[1,81],128:[1,75],129:[1,74],132:[1,73],133:[1,76],134:[1,77],135:[1,78],136:[1,79],137:[1,80]},{1:[2,184],6:[2,184],25:[2,184],26:[2,184],49:[2,184],54:[2,184],57:[2,184],73:[2,184],78:[2,184],86:[2,184],91:[2,184],93:[2,184],102:[2,184],103:82,104:[1,63],105:[2,184],106:[1,64],109:83,110:[1,66],111:67,118:[2,184],126:[1,81],128:[1,75],129:[1,74],132:[1,73],133:[1,76],134:[1,77],135:[1,78],136:[1,79],137:[1,80]},{1:[2,103],6:[2,103],25:[2,103],26:[2,103],49:[2,103],54:[2,103],57:[2,103],66:[2,103],67:[2,103],68:[2,103],69:[2,103],71:[2,103],73:[2,103],74:[2,103],78:[2,103],84:[2,103],85:[2,103],86:[2,103],91:[2,103],93:[2,103],102:[2,103],104:[2,103],105:[2,103],106:[2,103],110:[2,103],118:[2,103],126:[2,103],128:[2,103],129:[2,103],132:[2,103],133:[2,103],134:[2,103],135:[2,103],136:[2,103],137:[2,103]},{1:[2,79],6:[2,79],25:[2,79],26:[2,79],40:[2,79],49:[2,79],54:[2,79],57:[2,79],66:[2,79],67:[2,79],68:[2,79],69:[2,79],71:[2,79],73:[2,79],74:[2,79],78:[2,79],80:[2,79],84:[2,79],85:[2,79],86:[2,79],91:[2,79],93:[2,79],102:[2,79],104:[2,79],105:[2,79],106:[2,79],110:[2,79],118:[2,79],126:[2,79],128:[2,79],129:[2,79],130:[2,79],131:[2,79],132:[2,79],133:[2,79],134:[2,79],135:[2,79],136:[2,79],137:[2,79],138:[2,79]},{1:[2,80],6:[2,80],25:[2,80],26:[2,80],40:[2,80],49:[2,80],54:[2,80],57:[2,80],66:[2,80],67:[2,80],68:[2,80],69:[2,80],71:[2,80],73:[2,80],74:[2,80],78:[2,80],80:[2,80],84:[2,80],85:[2,80],86:[2,80],91:[2,80],93:[2,80],102:[2,80],104:[2,80],105:[2,80],106:[2,80],110:[2,80],118:[2,80],126:[2,80],128:[2,80],129:[2,80],130:[2,80],131:[2,80],132:[2,80],133:[2,80],134:[2,80],135:[2,80],136:[2,80],137:[2,80],138:[2,80]},{1:[2,81],6:[2,81],25:[2,81],26:[2,81],40:[2,81],49:[2,81],54:[2,81],57:[2,81],66:[2,81],67:[2,81],68:[2,81],69:[2,81],71:[2,81],73:[2,81],74:[2,81],78:[2,81],80:[2,81],84:[2,81],85:[2,81],86:[2,81],91:[2,81],93:[2,81],102:[2,81],104:[2,81],105:[2,81],106:[2,81],110:[2,81],118:[2,81],126:[2,81],128:[2,81],129:[2,81],130:[2,81],131:[2,81],132:[2,81],133:[2,81],134:[2,81],135:[2,81],136:[2,81],137:[2,81],138:[2,81]},{1:[2,82],6:[2,82],25:[2,82],26:[2,82],40:[2,82],49:[2,82],54:[2,82],57:[2,82],66:[2,82],67:[2,82],68:[2,82],69:[2,82],71:[2,82],73:[2,82],74:[2,82],78:[2,82],80:[2,82],84:[2,82],85:[2,82],86:[2,82],91:[2,82],93:[2,82],102:[2,82],104:[2,82],105:[2,82],106:[2,82],110:[2,82],118:[2,82],126:[2,82],128:[2,82],129:[2,82],130:[2,82],131:[2,82],132:[2,82],133:[2,82],134:[2,82],135:[2,82],136:[2,82],137:[2,82],138:[2,82]},{73:[1,238]},{57:[1,189],73:[2,87],92:239,93:[1,188],103:82,104:[1,63],106:[1,64],109:83,110:[1,66],111:67,126:[1,81],128:[1,75],129:[1,74],132:[1,73],133:[1,76],134:[1,77],135:[1,78],136:[1,79],137:[1,80]},{73:[2,88]},{7:240,8:114,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:60,28:[1,71],29:47,30:[1,69],31:[1,70],32:22,33:[1,48],34:[1,49],35:[1,50],36:[1,51],37:[1,52],38:[1,53],39:21,44:61,45:[1,43],46:[1,44],47:[1,27],50:28,51:[1,58],52:[1,59],58:45,59:46,61:34,63:23,64:24,65:25,73:[2,122],76:[1,68],79:[1,41],83:[1,26],88:[1,56],89:[1,57],90:[1,55],96:[1,36],100:[1,42],101:[1,54],103:37,104:[1,63],106:[1,64],107:38,108:[1,65],109:39,110:[1,66],111:67,119:[1,40],124:35,125:[1,62],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33]},{11:[2,116],28:[2,116],30:[2,116],31:[2,116],33:[2,116],34:[2,116],35:[2,116],36:[2,116],37:[2,116],38:[2,116],45:[2,116],46:[2,116],47:[2,116],51:[2,116],52:[2,116],73:[2,116],76:[2,116],79:[2,116],83:[2,116],88:[2,116],89:[2,116],90:[2,116],96:[2,116],100:[2,116],101:[2,116],104:[2,116],106:[2,116],108:[2,116],110:[2,116],119:[2,116],125:[2,116],127:[2,116],128:[2,116],129:[2,116],130:[2,116],131:[2,116]},{11:[2,117],28:[2,117],30:[2,117],31:[2,117],33:[2,117],34:[2,117],35:[2,117],36:[2,117],37:[2,117],38:[2,117],45:[2,117],46:[2,117],47:[2,117],51:[2,117],52:[2,117],73:[2,117],76:[2,117],79:[2,117],83:[2,117],88:[2,117],89:[2,117],90:[2,117],96:[2,117],100:[2,117],101:[2,117],104:[2,117],106:[2,117],108:[2,117],110:[2,117],119:[2,117],125:[2,117],127:[2,117],128:[2,117],129:[2,117],130:[2,117],131:[2,117]},{1:[2,86],6:[2,86],25:[2,86],26:[2,86],40:[2,86],49:[2,86],54:[2,86],57:[2,86],66:[2,86],67:[2,86],68:[2,86],69:[2,86],71:[2,86],73:[2,86],74:[2,86],78:[2,86],80:[2,86],84:[2,86],85:[2,86],86:[2,86],91:[2,86],93:[2,86],102:[2,86],104:[2,86],105:[2,86],106:[2,86],110:[2,86],118:[2,86],126:[2,86],128:[2,86],129:[2,86],130:[2,86],131:[2,86],132:[2,86],133:[2,86],134:[2,86],135:[2,86],136:[2,86],137:[2,86],138:[2,86]},{1:[2,104],6:[2,104],25:[2,104],26:[2,104],49:[2,104],54:[2,104],57:[2,104],66:[2,104],67:[2,104],68:[2,104],69:[2,104],71:[2,104],73:[2,104],74:[2,104],78:[2,104],84:[2,104],85:[2,104],86:[2,104],91:[2,104],93:[2,104],102:[2,104],104:[2,104],105:[2,104],106:[2,104],110:[2,104],118:[2,104],126:[2,104],128:[2,104],129:[2,104],132:[2,104],133:[2,104],134:[2,104],135:[2,104],136:[2,104],137:[2,104]},{1:[2,35],6:[2,35],25:[2,35],26:[2,35],49:[2,35],54:[2,35],57:[2,35],73:[2,35],78:[2,35],86:[2,35],91:[2,35],93:[2,35],102:[2,35],103:82,104:[2,35],105:[2,35],106:[2,35],109:83,110:[2,35],111:67,118:[2,35],126:[2,35],128:[1,75],129:[1,74],132:[1,73],133:[1,76],134:[1,77],135:[1,78],136:[1,79],137:[1,80]},{7:241,8:114,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:60,28:[1,71],29:47,30:[1,69],31:[1,70],32:22,33:[1,48],34:[1,49],35:[1,50],36:[1,51],37:[1,52],38:[1,53],39:21,44:61,45:[1,43],46:[1,44],47:[1,27],50:28,51:[1,58],52:[1,59],58:45,59:46,61:34,63:23,64:24,65:25,76:[1,68],79:[1,41],83:[1,26],88:[1,56],89:[1,57],90:[1,55],96:[1,36],100:[1,42],101:[1,54],103:37,104:[1,63],106:[1,64],107:38,108:[1,65],109:39,110:[1,66],111:67,119:[1,40],124:35,125:[1,62],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33]},{7:242,8:114,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:60,28:[1,71],29:47,30:[1,69],31:[1,70],32:22,33:[1,48],34:[1,49],35:[1,50],36:[1,51],37:[1,52],38:[1,53],39:21,44:61,45:[1,43],46:[1,44],47:[1,27],50:28,51:[1,58],52:[1,59],58:45,59:46,61:34,63:23,64:24,65:25,76:[1,68],79:[1,41],83:[1,26],88:[1,56],89:[1,57],90:[1,55],96:[1,36],100:[1,42],101:[1,54],103:37,104:[1,63],106:[1,64],107:38,108:[1,65],109:39,110:[1,66],111:67,119:[1,40],124:35,125:[1,62],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33]},{1:[2,109],6:[2,109],25:[2,109],26:[2,109],49:[2,109],54:[2,109],57:[2,109],66:[2,109],67:[2,109],68:[2,109],69:[2,109],71:[2,109],73:[2,109],74:[2,109],78:[2,109],84:[2,109],85:[2,109],86:[2,109],91:[2,109],93:[2,109],102:[2,109],104:[2,109],105:[2,109],106:[2,109],110:[2,109],118:[2,109],126:[2,109],128:[2,109],129:[2,109],132:[2,109],133:[2,109],134:[2,109],135:[2,109],136:[2,109],137:[2,109]},{6:[2,52],25:[2,52],53:243,54:[1,226],86:[2,52]},{6:[2,128],25:[2,128],26:[2,128],54:[2,128],57:[1,244],86:[2,128],91:[2,128],103:82,104:[1,63],106:[1,64],109:83,110:[1,66],111:67,126:[1,81],128:[1,75],129:[1,74],132:[1,73],133:[1,76],134:[1,77],135:[1,78],136:[1,79],137:[1,80]},{50:245,51:[1,58],52:[1,59]},{6:[2,53],25:[2,53],26:[2,53],27:105,28:[1,71],44:106,55:246,56:104,58:107,59:108,76:[1,68],89:[1,109],90:[1,110]},{6:[1,247],25:[1,248]},{6:[2,60],25:[2,60],26:[2,60],49:[2,60],54:[2,60]},{7:249,8:114,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:60,28:[1,71],29:47,30:[1,69],31:[1,70],32:22,33:[1,48],34:[1,49],35:[1,50],36:[1,51],37:[1,52],38:[1,53],39:21,44:61,45:[1,43],46:[1,44],47:[1,27],50:28,51:[1,58],52:[1,59],58:45,59:46,61:34,63:23,64:24,65:25,76:[1,68],79:[1,41],83:[1,26],88:[1,56],89:[1,57],90:[1,55],96:[1,36],100:[1,42],101:[1,54],103:37,104:[1,63],106:[1,64],107:38,108:[1,65],109:39,110:[1,66],111:67,119:[1,40],124:35,125:[1,62],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33]},{1:[2,23],6:[2,23],25:[2,23],26:[2,23],49:[2,23],54:[2,23],57:[2,23],73:[2,23],78:[2,23],86:[2,23],91:[2,23],93:[2,23],98:[2,23],99:[2,23],102:[2,23],104:[2,23],105:[2,23],106:[2,23],110:[2,23],118:[2,23],121:[2,23],123:[2,23],126:[2,23],128:[2,23],129:[2,23],132:[2,23],133:[2,23],134:[2,23],135:[2,23],136:[2,23],137:[2,23]},{6:[1,72],26:[1,250]},{1:[2,201],6:[2,201],25:[2,201],26:[2,201],49:[2,201],54:[2,201],57:[2,201],73:[2,201],78:[2,201],86:[2,201],91:[2,201],93:[2,201],102:[2,201],103:82,104:[2,201],105:[2,201],106:[2,201],109:83,110:[2,201],111:67,118:[2,201],126:[2,201],128:[1,75],129:[1,74],132:[1,73],133:[1,76],134:[1,77],135:[1,78],136:[1,79],137:[1,80]},{7:251,8:114,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:60,28:[1,71],29:47,30:[1,69],31:[1,70],32:22,33:[1,48],34:[1,49],35:[1,50],36:[1,51],37:[1,52],38:[1,53],39:21,44:61,45:[1,43],46:[1,44],47:[1,27],50:28,51:[1,58],52:[1,59],58:45,59:46,61:34,63:23,64:24,65:25,76:[1,68],79:[1,41],83:[1,26],88:[1,56],89:[1,57],90:[1,55],96:[1,36],100:[1,42],101:[1,54],103:37,104:[1,63],106:[1,64],107:38,108:[1,65],109:39,110:[1,66],111:67,119:[1,40],124:35,125:[1,62],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33]},{7:252,8:114,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:60,28:[1,71],29:47,30:[1,69],31:[1,70],32:22,33:[1,48],34:[1,49],35:[1,50],36:[1,51],37:[1,52],38:[1,53],39:21,44:61,45:[1,43],46:[1,44],47:[1,27],50:28,51:[1,58],52:[1,59],58:45,59:46,61:34,63:23,64:24,65:25,76:[1,68],79:[1,41],83:[1,26],88:[1,56],89:[1,57],90:[1,55],96:[1,36],100:[1,42],101:[1,54],103:37,104:[1,63],106:[1,64],107:38,108:[1,65],109:39,110:[1,66],111:67,119:[1,40],124:35,125:[1,62],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33]},{1:[2,204],6:[2,204],25:[2,204],26:[2,204],49:[2,204],54:[2,204],57:[2,204],73:[2,204],78:[2,204],86:[2,204],91:[2,204],93:[2,204],102:[2,204],103:82,104:[2,204],105:[2,204],106:[2,204],109:83,110:[2,204],111:67,118:[2,204],126:[2,204],128:[1,75],129:[1,74],132:[1,73],133:[1,76],134:[1,77],135:[1,78],136:[1,79],137:[1,80]},{1:[2,183],6:[2,183],25:[2,183],26:[2,183],49:[2,183],54:[2,183],57:[2,183],73:[2,183],78:[2,183],86:[2,183],91:[2,183],93:[2,183],102:[2,183],104:[2,183],105:[2,183],106:[2,183],110:[2,183],118:[2,183],126:[2,183],128:[2,183],129:[2,183],132:[2,183],133:[2,183],134:[2,183],135:[2,183],136:[2,183],137:[2,183]},{7:253,8:114,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:60,28:[1,71],29:47,30:[1,69],31:[1,70],32:22,33:[1,48],34:[1,49],35:[1,50],36:[1,51],37:[1,52],38:[1,53],39:21,44:61,45:[1,43],46:[1,44],47:[1,27],50:28,51:[1,58],52:[1,59],58:45,59:46,61:34,63:23,64:24,65:25,76:[1,68],79:[1,41],83:[1,26],88:[1,56],89:[1,57],90:[1,55],96:[1,36],100:[1,42],101:[1,54],103:37,104:[1,63],106:[1,64],107:38,108:[1,65],109:39,110:[1,66],111:67,119:[1,40],124:35,125:[1,62],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33]},{1:[2,133],6:[2,133],25:[2,133],26:[2,133],49:[2,133],54:[2,133],57:[2,133],73:[2,133],78:[2,133],86:[2,133],91:[2,133],93:[2,133],98:[1,254],102:[2,133],104:[2,133],105:[2,133],106:[2,133],110:[2,133],118:[2,133],126:[2,133],128:[2,133],129:[2,133],132:[2,133],133:[2,133],134:[2,133],135:[2,133],136:[2,133],137:[2,133]},{24:255,25:[1,112]},{24:258,25:[1,112],27:256,28:[1,71],59:257,76:[1,68]},{120:259,122:216,123:[1,217]},{26:[1,260],121:[1,261],122:262,123:[1,217]},{26:[2,176],121:[2,176],123:[2,176]},{7:264,8:114,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:60,28:[1,71],29:47,30:[1,69],31:[1,70],32:22,33:[1,48],34:[1,49],35:[1,50],36:[1,51],37:[1,52],38:[1,53],39:21,44:61,45:[1,43],46:[1,44],47:[1,27],50:28,51:[1,58],52:[1,59],58:45,59:46,61:34,63:23,64:24,65:25,76:[1,68],79:[1,41],83:[1,26],88:[1,56],89:[1,57],90:[1,55],95:263,96:[1,36],100:[1,42],101:[1,54],103:37,104:[1,63],106:[1,64],107:38,108:[1,65],109:39,110:[1,66],111:67,119:[1,40],124:35,125:[1,62],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33]},{1:[2,97],6:[2,97],24:265,25:[1,112],26:[2,97],49:[2,97],54:[2,97],57:[2,97],73:[2,97],78:[2,97],86:[2,97],91:[2,97],93:[2,97],102:[2,97],103:82,104:[1,63],105:[2,97],106:[1,64],109:83,110:[1,66],111:67,118:[2,97],126:[2,97],128:[1,75],129:[1,74],132:[1,73],133:[1,76],134:[1,77],135:[1,78],136:[1,79],137:[1,80]},{1:[2,100],6:[2,100],25:[2,100],26:[2,100],49:[2,100],54:[2,100],57:[2,100],73:[2,100],78:[2,100],86:[2,100],91:[2,100],93:[2,100],102:[2,100],104:[2,100],105:[2,100],106:[2,100],110:[2,100],118:[2,100],126:[2,100],128:[2,100],129:[2,100],132:[2,100],133:[2,100],134:[2,100],135:[2,100],136:[2,100],137:[2,100]},{7:266,8:114,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:60,28:[1,71],29:47,30:[1,69],31:[1,70],32:22,33:[1,48],34:[1,49],35:[1,50],36:[1,51],37:[1,52],38:[1,53],39:21,44:61,45:[1,43],46:[1,44],47:[1,27],50:28,51:[1,58],52:[1,59],58:45,59:46,61:34,63:23,64:24,65:25,76:[1,68],79:[1,41],83:[1,26],88:[1,56],89:[1,57],90:[1,55],96:[1,36],100:[1,42],101:[1,54],103:37,104:[1,63],106:[1,64],107:38,108:[1,65],109:39,110:[1,66],111:67,119:[1,40],124:35,125:[1,62],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33]},{1:[2,140],6:[2,140],25:[2,140],26:[2,140],49:[2,140],54:[2,140],57:[2,140],66:[2,140],67:[2,140],68:[2,140],69:[2,140],71:[2,140],73:[2,140],74:[2,140],78:[2,140],84:[2,140],85:[2,140],86:[2,140],91:[2,140],93:[2,140],102:[2,140],104:[2,140],105:[2,140],106:[2,140],110:[2,140],118:[2,140],126:[2,140],128:[2,140],129:[2,140],132:[2,140],133:[2,140],134:[2,140],135:[2,140],136:[2,140],137:[2,140]},{6:[1,72],26:[1,267]},{7:268,8:114,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:60,28:[1,71],29:47,30:[1,69],31:[1,70],32:22,33:[1,48],34:[1,49],35:[1,50],36:[1,51],37:[1,52],38:[1,53],39:21,44:61,45:[1,43],46:[1,44],47:[1,27],50:28,51:[1,58],52:[1,59],58:45,59:46,61:34,63:23,64:24,65:25,76:[1,68],79:[1,41],83:[1,26],88:[1,56],89:[1,57],90:[1,55],96:[1,36],100:[1,42],101:[1,54],103:37,104:[1,63],106:[1,64],107:38,108:[1,65],109:39,110:[1,66],111:67,119:[1,40],124:35,125:[1,62],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33]},{6:[2,66],11:[2,117],25:[2,66],28:[2,117],30:[2,117],31:[2,117],33:[2,117],34:[2,117],35:[2,117],36:[2,117],37:[2,117],38:[2,117],45:[2,117],46:[2,117],47:[2,117],51:[2,117],52:[2,117],54:[2,66],76:[2,117],79:[2,117],83:[2,117],88:[2,117],89:[2,117],90:[2,117],91:[2,66],96:[2,117],100:[2,117],101:[2,117],104:[2,117],106:[2,117],108:[2,117],110:[2,117],119:[2,117],125:[2,117],127:[2,117],128:[2,117],129:[2,117],130:[2,117],131:[2,117]},{6:[1,270],25:[1,271],91:[1,269]},{6:[2,53],7:197,8:114,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,25:[2,53],26:[2,53],27:60,28:[1,71],29:47,30:[1,69],31:[1,70],32:22,33:[1,48],34:[1,49],35:[1,50],36:[1,51],37:[1,52],38:[1,53],39:21,44:61,45:[1,43],46:[1,44],47:[1,27],50:28,51:[1,58],52:[1,59],58:45,59:46,60:144,61:34,63:23,64:24,65:25,76:[1,68],79:[1,41],83:[1,26],86:[2,53],88:[1,56],89:[1,57],90:[1,55],91:[2,53],94:272,96:[1,36],100:[1,42],101:[1,54],103:37,104:[1,63],106:[1,64],107:38,108:[1,65],109:39,110:[1,66],111:67,119:[1,40],124:35,125:[1,62],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33]},{6:[2,52],25:[2,52],26:[2,52],53:273,54:[1,226]},{1:[2,180],6:[2,180],25:[2,180],26:[2,180],49:[2,180],54:[2,180],57:[2,180],73:[2,180],78:[2,180],86:[2,180],91:[2,180],93:[2,180],102:[2,180],104:[2,180],105:[2,180],106:[2,180],110:[2,180],118:[2,180],121:[2,180],126:[2,180],128:[2,180],129:[2,180],132:[2,180],133:[2,180],134:[2,180],135:[2,180],136:[2,180],137:[2,180]},{7:274,8:114,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:60,28:[1,71],29:47,30:[1,69],31:[1,70],32:22,33:[1,48],34:[1,49],35:[1,50],36:[1,51],37:[1,52],38:[1,53],39:21,44:61,45:[1,43],46:[1,44],47:[1,27],50:28,51:[1,58],52:[1,59],58:45,59:46,61:34,63:23,64:24,65:25,76:[1,68],79:[1,41],83:[1,26],88:[1,56],89:[1,57],90:[1,55],96:[1,36],100:[1,42],101:[1,54],103:37,104:[1,63],106:[1,64],107:38,108:[1,65],109:39,110:[1,66],111:67,119:[1,40],124:35,125:[1,62],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33]},{7:275,8:114,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:60,28:[1,71],29:47,30:[1,69],31:[1,70],32:22,33:[1,48],34:[1,49],35:[1,50],36:[1,51],37:[1,52],38:[1,53],39:21,44:61,45:[1,43],46:[1,44],47:[1,27],50:28,51:[1,58],52:[1,59],58:45,59:46,61:34,63:23,64:24,65:25,76:[1,68],79:[1,41],83:[1,26],88:[1,56],89:[1,57],90:[1,55],96:[1,36],100:[1,42],101:[1,54],103:37,104:[1,63],106:[1,64],107:38,108:[1,65],109:39,110:[1,66],111:67,119:[1,40],124:35,125:[1,62],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33]},{116:[2,158],117:[2,158]},{27:155,28:[1,71],44:156,58:157,59:158,76:[1,68],89:[1,109],90:[1,110],115:276},{1:[2,165],6:[2,165],25:[2,165],26:[2,165],49:[2,165],54:[2,165],57:[2,165],73:[2,165],78:[2,165],86:[2,165],91:[2,165],93:[2,165],102:[2,165],103:82,104:[2,165],105:[1,277],106:[2,165],109:83,110:[2,165],111:67,118:[1,278],126:[2,165],128:[1,75],129:[1,74],132:[1,73],133:[1,76],134:[1,77],135:[1,78],136:[1,79],137:[1,80]},{1:[2,166],6:[2,166],25:[2,166],26:[2,166],49:[2,166],54:[2,166],57:[2,166],73:[2,166],78:[2,166],86:[2,166],91:[2,166],93:[2,166],102:[2,166],103:82,104:[2,166],105:[1,279],106:[2,166],109:83,110:[2,166],111:67,118:[2,166],126:[2,166],128:[1,75],129:[1,74],132:[1,73],133:[1,76],134:[1,77],135:[1,78],136:[1,79],137:[1,80]},{6:[1,281],25:[1,282],78:[1,280]},{6:[2,53],10:165,25:[2,53],26:[2,53],27:166,28:[1,71],29:167,30:[1,69],31:[1,70],41:283,42:164,44:168,46:[1,44],78:[2,53],89:[1,109]},{7:284,8:114,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,25:[1,285],27:60,28:[1,71],29:47,30:[1,69],31:[1,70],32:22,33:[1,48],34:[1,49],35:[1,50],36:[1,51],37:[1,52],38:[1,53],39:21,44:61,45:[1,43],46:[1,44],47:[1,27],50:28,51:[1,58],52:[1,59],58:45,59:46,61:34,63:23,64:24,65:25,76:[1,68],79:[1,41],83:[1,26],88:[1,56],89:[1,57],90:[1,55],96:[1,36],100:[1,42],101:[1,54],103:37,104:[1,63],106:[1,64],107:38,108:[1,65],109:39,110:[1,66],111:67,119:[1,40],124:35,125:[1,62],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33]},{1:[2,85],6:[2,85],25:[2,85],26:[2,85],40:[2,85],49:[2,85],54:[2,85],57:[2,85],66:[2,85],67:[2,85],68:[2,85],69:[2,85],71:[2,85],73:[2,85],74:[2,85],78:[2,85],80:[2,85],84:[2,85],85:[2,85],86:[2,85],91:[2,85],93:[2,85],102:[2,85],104:[2,85],105:[2,85],106:[2,85],110:[2,85],118:[2,85],126:[2,85],128:[2,85],129:[2,85],130:[2,85],131:[2,85],132:[2,85],133:[2,85],134:[2,85],135:[2,85],136:[2,85],137:[2,85],138:[2,85]},{7:286,8:114,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:60,28:[1,71],29:47,30:[1,69],31:[1,70],32:22,33:[1,48],34:[1,49],35:[1,50],36:[1,51],37:[1,52],38:[1,53],39:21,44:61,45:[1,43],46:[1,44],47:[1,27],50:28,51:[1,58],52:[1,59],58:45,59:46,61:34,63:23,64:24,65:25,73:[2,120],76:[1,68],79:[1,41],83:[1,26],88:[1,56],89:[1,57],90:[1,55],96:[1,36],100:[1,42],101:[1,54],103:37,104:[1,63],106:[1,64],107:38,108:[1,65],109:39,110:[1,66],111:67,119:[1,40],124:35,125:[1,62],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33]},{73:[2,121],103:82,104:[1,63],106:[1,64],109:83,110:[1,66],111:67,126:[1,81],128:[1,75],129:[1,74],132:[1,73],133:[1,76],134:[1,77],135:[1,78],136:[1,79],137:[1,80]},{1:[2,36],6:[2,36],25:[2,36],26:[2,36],49:[2,36],54:[2,36],57:[2,36],73:[2,36],78:[2,36],86:[2,36],91:[2,36],93:[2,36],102:[2,36],103:82,104:[2,36],105:[2,36],106:[2,36],109:83,110:[2,36],111:67,118:[2,36],126:[2,36],128:[1,75],129:[1,74],132:[1,73],133:[1,76],134:[1,77],135:[1,78],136:[1,79],137:[1,80]},{26:[1,287],103:82,104:[1,63],106:[1,64],109:83,110:[1,66],111:67,126:[1,81],128:[1,75],129:[1,74],132:[1,73],133:[1,76],134:[1,77],135:[1,78],136:[1,79],137:[1,80]},{6:[1,270],25:[1,271],86:[1,288]},{6:[2,66],25:[2,66],26:[2,66],54:[2,66],86:[2,66],91:[2,66]},{24:289,25:[1,112]},{6:[2,56],25:[2,56],26:[2,56],49:[2,56],54:[2,56]},{27:105,28:[1,71],44:106,55:290,56:104,58:107,59:108,76:[1,68],89:[1,109],90:[1,110]},{6:[2,54],25:[2,54],26:[2,54],27:105,28:[1,71],44:106,48:291,54:[2,54],55:103,56:104,58:107,59:108,76:[1,68],89:[1,109],90:[1,110]},{6:[2,61],25:[2,61],26:[2,61],49:[2,61],54:[2,61],103:82,104:[1,63],106:[1,64],109:83,110:[1,66],111:67,126:[1,81],128:[1,75],129:[1,74],132:[1,73],133:[1,76],134:[1,77],135:[1,78],136:[1,79],137:[1,80]},{1:[2,24],6:[2,24],25:[2,24],26:[2,24],49:[2,24],54:[2,24],57:[2,24],73:[2,24],78:[2,24],86:[2,24],91:[2,24],93:[2,24],98:[2,24],99:[2,24],102:[2,24],104:[2,24],105:[2,24],106:[2,24],110:[2,24],118:[2,24],121:[2,24],123:[2,24],126:[2,24],128:[2,24],129:[2,24],132:[2,24],133:[2,24],134:[2,24],135:[2,24],136:[2,24],137:[2,24]},{26:[1,292],103:82,104:[1,63],106:[1,64],109:83,110:[1,66],111:67,126:[1,81],128:[1,75],129:[1,74],132:[1,73],133:[1,76],134:[1,77],135:[1,78],136:[1,79],137:[1,80]},{1:[2,203],6:[2,203],25:[2,203],26:[2,203],49:[2,203],54:[2,203],57:[2,203],73:[2,203],78:[2,203],86:[2,203],91:[2,203],93:[2,203],102:[2,203],103:82,104:[2,203],105:[2,203],106:[2,203],109:83,110:[2,203],111:67,118:[2,203],126:[2,203],128:[1,75],129:[1,74],132:[1,73],133:[1,76],134:[1,77],135:[1,78],136:[1,79],137:[1,80]},{24:293,25:[1,112],103:82,104:[1,63],106:[1,64],109:83,110:[1,66],111:67,126:[1,81],128:[1,75],129:[1,74],132:[1,73],133:[1,76],134:[1,77],135:[1,78],136:[1,79],137:[1,80]},{24:294,25:[1,112]},{1:[2,134],6:[2,134],25:[2,134],26:[2,134],49:[2,134],54:[2,134],57:[2,134],73:[2,134],78:[2,134],86:[2,134],91:[2,134],93:[2,134],102:[2,134],104:[2,134],105:[2,134],106:[2,134],110:[2,134],118:[2,134],126:[2,134],128:[2,134],129:[2,134],132:[2,134],133:[2,134],134:[2,134],135:[2,134],136:[2,134],137:[2,134]},{24:295,25:[1,112]},{24:296,25:[1,112]},{1:[2,138],6:[2,138],25:[2,138],26:[2,138],49:[2,138],54:[2,138],57:[2,138],73:[2,138],78:[2,138],86:[2,138],91:[2,138],93:[2,138],98:[2,138],102:[2,138],104:[2,138],105:[2,138],106:[2,138],110:[2,138],118:[2,138],126:[2,138],128:[2,138],129:[2,138],132:[2,138],133:[2,138],134:[2,138],135:[2,138],136:[2,138],137:[2,138]},{26:[1,297],121:[1,298],122:262,123:[1,217]},{1:[2,174],6:[2,174],25:[2,174],26:[2,174],49:[2,174],54:[2,174],57:[2,174],73:[2,174],78:[2,174],86:[2,174],91:[2,174],93:[2,174],102:[2,174],104:[2,174],105:[2,174],106:[2,174],110:[2,174],118:[2,174],126:[2,174],128:[2,174],129:[2,174],132:[2,174],133:[2,174],134:[2,174],135:[2,174],136:[2,174],137:[2,174]},{24:299,25:[1,112]},{26:[2,177],121:[2,177],123:[2,177]},{24:300,25:[1,112],54:[1,301]},{25:[2,130],54:[2,130],103:82,104:[1,63],106:[1,64],109:83,110:[1,66],111:67,126:[1,81],128:[1,75],129:[1,74],132:[1,73],133:[1,76],134:[1,77],135:[1,78],136:[1,79],137:[1,80]},{1:[2,98],6:[2,98],25:[2,98],26:[2,98],49:[2,98],54:[2,98],57:[2,98],73:[2,98],78:[2,98],86:[2,98],91:[2,98],93:[2,98],102:[2,98],104:[2,98],105:[2,98],106:[2,98],110:[2,98],118:[2,98],126:[2,98],128:[2,98],129:[2,98],132:[2,98],133:[2,98],134:[2,98],135:[2,98],136:[2,98],137:[2,98]},{1:[2,101],6:[2,101],24:302,25:[1,112],26:[2,101],49:[2,101],54:[2,101],57:[2,101],73:[2,101],78:[2,101],86:[2,101],91:[2,101],93:[2,101],102:[2,101],103:82,104:[1,63],105:[2,101],106:[1,64],109:83,110:[1,66],111:67,118:[2,101],126:[2,101],128:[1,75],129:[1,74],132:[1,73],133:[1,76],134:[1,77],135:[1,78],136:[1,79],137:[1,80]},{102:[1,303]},{91:[1,304],103:82,104:[1,63],106:[1,64],109:83,110:[1,66],111:67,126:[1,81],128:[1,75],129:[1,74],132:[1,73],133:[1,76],134:[1,77],135:[1,78],136:[1,79],137:[1,80]},{1:[2,115],6:[2,115],25:[2,115],26:[2,115],40:[2,115],49:[2,115],54:[2,115],57:[2,115],66:[2,115],67:[2,115],68:[2,115],69:[2,115],71:[2,115],73:[2,115],74:[2,115],78:[2,115],84:[2,115],85:[2,115],86:[2,115],91:[2,115],93:[2,115],102:[2,115],104:[2,115],105:[2,115],106:[2,115],110:[2,115],116:[2,115],117:[2,115],118:[2,115],126:[2,115],128:[2,115],129:[2,115],132:[2,115],133:[2,115],134:[2,115],135:[2,115],136:[2,115],137:[2,115]},{7:197,8:114,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:60,28:[1,71],29:47,30:[1,69],31:[1,70],32:22,33:[1,48],34:[1,49],35:[1,50],36:[1,51],37:[1,52],38:[1,53],39:21,44:61,45:[1,43],46:[1,44],47:[1,27],50:28,51:[1,58],52:[1,59],58:45,59:46,60:144,61:34,63:23,64:24,65:25,76:[1,68],79:[1,41],83:[1,26],88:[1,56],89:[1,57],90:[1,55],94:305,96:[1,36],100:[1,42],101:[1,54],103:37,104:[1,63],106:[1,64],107:38,108:[1,65],109:39,110:[1,66],111:67,119:[1,40],124:35,125:[1,62],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33]},{7:197,8:114,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,25:[1,143],27:60,28:[1,71],29:47,30:[1,69],31:[1,70],32:22,33:[1,48],34:[1,49],35:[1,50],36:[1,51],37:[1,52],38:[1,53],39:21,44:61,45:[1,43],46:[1,44],47:[1,27],50:28,51:[1,58],52:[1,59],58:45,59:46,60:144,61:34,63:23,64:24,65:25,76:[1,68],79:[1,41],83:[1,26],87:306,88:[1,56],89:[1,57],90:[1,55],94:142,96:[1,36],100:[1,42],101:[1,54],103:37,104:[1,63],106:[1,64],107:38,108:[1,65],109:39,110:[1,66],111:67,119:[1,40],124:35,125:[1,62],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33]},{6:[2,124],25:[2,124],26:[2,124],54:[2,124],86:[2,124],91:[2,124]},{6:[1,270],25:[1,271],26:[1,307]},{1:[2,143],6:[2,143],25:[2,143],26:[2,143],49:[2,143],54:[2,143],57:[2,143],73:[2,143],78:[2,143],86:[2,143],91:[2,143],93:[2,143],102:[2,143],103:82,104:[1,63],105:[2,143],106:[1,64],109:83,110:[1,66],111:67,118:[2,143],126:[2,143],128:[1,75],129:[1,74],132:[1,73],133:[1,76],134:[1,77],135:[1,78],136:[1,79],137:[1,80]},{1:[2,145],6:[2,145],25:[2,145],26:[2,145],49:[2,145],54:[2,145],57:[2,145],73:[2,145],78:[2,145],86:[2,145],91:[2,145],93:[2,145],102:[2,145],103:82,104:[1,63],105:[2,145],106:[1,64],109:83,110:[1,66],111:67,118:[2,145],126:[2,145],128:[1,75],129:[1,74],132:[1,73],133:[1,76],134:[1,77],135:[1,78],136:[1,79],137:[1,80]},{116:[2,164],117:[2,164]},{7:308,8:114,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:60,28:[1,71],29:47,30:[1,69],31:[1,70],32:22,33:[1,48],34:[1,49],35:[1,50],36:[1,51],37:[1,52],38:[1,53],39:21,44:61,45:[1,43],46:[1,44],47:[1,27],50:28,51:[1,58],52:[1,59],58:45,59:46,61:34,63:23,64:24,65:25,76:[1,68],79:[1,41],83:[1,26],88:[1,56],89:[1,57],90:[1,55],96:[1,36],100:[1,42],101:[1,54],103:37,104:[1,63],106:[1,64],107:38,108:[1,65],109:39,110:[1,66],111:67,119:[1,40],124:35,125:[1,62],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33]},{7:309,8:114,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:60,28:[1,71],29:47,30:[1,69],31:[1,70],32:22,33:[1,48],34:[1,49],35:[1,50],36:[1,51],37:[1,52],38:[1,53],39:21,44:61,45:[1,43],46:[1,44],47:[1,27],50:28,51:[1,58],52:[1,59],58:45,59:46,61:34,63:23,64:24,65:25,76:[1,68],79:[1,41],83:[1,26],88:[1,56],89:[1,57],90:[1,55],96:[1,36],100:[1,42],101:[1,54],103:37,104:[1,63],106:[1,64],107:38,108:[1,65],109:39,110:[1,66],111:67,119:[1,40],124:35,125:[1,62],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33]},{7:310,8:114,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:60,28:[1,71],29:47,30:[1,69],31:[1,70],32:22,33:[1,48],34:[1,49],35:[1,50],36:[1,51],37:[1,52],38:[1,53],39:21,44:61,45:[1,43],46:[1,44],47:[1,27],50:28,51:[1,58],52:[1,59],58:45,59:46,61:34,63:23,64:24,65:25,76:[1,68],79:[1,41],83:[1,26],88:[1,56],89:[1,57],90:[1,55],96:[1,36],100:[1,42],101:[1,54],103:37,104:[1,63],106:[1,64],107:38,108:[1,65],109:39,110:[1,66],111:67,119:[1,40],124:35,125:[1,62],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33]},{1:[2,89],6:[2,89],25:[2,89],26:[2,89],40:[2,89],49:[2,89],54:[2,89],57:[2,89],66:[2,89],67:[2,89],68:[2,89],69:[2,89],71:[2,89],73:[2,89],74:[2,89],78:[2,89],84:[2,89],85:[2,89],86:[2,89],91:[2,89],93:[2,89],102:[2,89],104:[2,89],105:[2,89],106:[2,89],110:[2,89],116:[2,89],117:[2,89],118:[2,89],126:[2,89],128:[2,89],129:[2,89],132:[2,89],133:[2,89],134:[2,89],135:[2,89],136:[2,89],137:[2,89]},{10:165,27:166,28:[1,71],29:167,30:[1,69],31:[1,70],41:311,42:164,44:168,46:[1,44],89:[1,109]},{6:[2,90],10:165,25:[2,90],26:[2,90],27:166,28:[1,71],29:167,30:[1,69],31:[1,70],41:163,42:164,44:168,46:[1,44],54:[2,90],77:312,89:[1,109]},{6:[2,92],25:[2,92],26:[2,92],54:[2,92],78:[2,92]},{6:[2,39],25:[2,39],26:[2,39],54:[2,39],78:[2,39],103:82,104:[1,63],106:[1,64],109:83,110:[1,66],111:67,126:[1,81],128:[1,75],129:[1,74],132:[1,73],133:[1,76],134:[1,77],135:[1,78],136:[1,79],137:[1,80]},{7:313,8:114,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:60,28:[1,71],29:47,30:[1,69],31:[1,70],32:22,33:[1,48],34:[1,49],35:[1,50],36:[1,51],37:[1,52],38:[1,53],39:21,44:61,45:[1,43],46:[1,44],47:[1,27],50:28,51:[1,58],52:[1,59],58:45,59:46,61:34,63:23,64:24,65:25,76:[1,68],79:[1,41],83:[1,26],88:[1,56],89:[1,57],90:[1,55],96:[1,36],100:[1,42],101:[1,54],103:37,104:[1,63],106:[1,64],107:38,108:[1,65],109:39,110:[1,66],111:67,119:[1,40],124:35,125:[1,62],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33]},{73:[2,119],103:82,104:[1,63],106:[1,64],109:83,110:[1,66],111:67,126:[1,81],128:[1,75],129:[1,74],132:[1,73],133:[1,76],134:[1,77],135:[1,78],136:[1,79],137:[1,80]},{1:[2,37],6:[2,37],25:[2,37],26:[2,37],49:[2,37],54:[2,37],57:[2,37],73:[2,37],78:[2,37],86:[2,37],91:[2,37],93:[2,37],102:[2,37],104:[2,37],105:[2,37],106:[2,37],110:[2,37],118:[2,37],126:[2,37],128:[2,37],129:[2,37],132:[2,37],133:[2,37],134:[2,37],135:[2,37],136:[2,37],137:[2,37]},{1:[2,110],6:[2,110],25:[2,110],26:[2,110],49:[2,110],54:[2,110],57:[2,110],66:[2,110],67:[2,110],68:[2,110],69:[2,110],71:[2,110],73:[2,110],74:[2,110],78:[2,110],84:[2,110],85:[2,110],86:[2,110],91:[2,110],93:[2,110],102:[2,110],104:[2,110],105:[2,110],106:[2,110],110:[2,110],118:[2,110],126:[2,110],128:[2,110],129:[2,110],132:[2,110],133:[2,110],134:[2,110],135:[2,110],136:[2,110],137:[2,110]},{1:[2,48],6:[2,48],25:[2,48],26:[2,48],49:[2,48],54:[2,48],57:[2,48],73:[2,48],78:[2,48],86:[2,48],91:[2,48],93:[2,48],102:[2,48],104:[2,48],105:[2,48],106:[2,48],110:[2,48],118:[2,48],126:[2,48],128:[2,48],129:[2,48],132:[2,48],133:[2,48],134:[2,48],135:[2,48],136:[2,48],137:[2,48]},{6:[2,57],25:[2,57],26:[2,57],49:[2,57],54:[2,57]},{6:[2,52],25:[2,52],26:[2,52],53:314,54:[1,199]},{1:[2,202],6:[2,202],25:[2,202],26:[2,202],49:[2,202],54:[2,202],57:[2,202],73:[2,202],78:[2,202],86:[2,202],91:[2,202],93:[2,202],102:[2,202],104:[2,202],105:[2,202],106:[2,202],110:[2,202],118:[2,202],126:[2,202],128:[2,202],129:[2,202],132:[2,202],133:[2,202],134:[2,202],135:[2,202],136:[2,202],137:[2,202]},{1:[2,181],6:[2,181],25:[2,181],26:[2,181],49:[2,181],54:[2,181],57:[2,181],73:[2,181],78:[2,181],86:[2,181],91:[2,181],93:[2,181],102:[2,181],104:[2,181],105:[2,181],106:[2,181],110:[2,181],118:[2,181],121:[2,181],126:[2,181],128:[2,181],129:[2,181],132:[2,181],133:[2,181],134:[2,181],135:[2,181],136:[2,181],137:[2,181]},{1:[2,135],6:[2,135],25:[2,135],26:[2,135],49:[2,135],54:[2,135],57:[2,135],73:[2,135],78:[2,135],86:[2,135],91:[2,135],93:[2,135],102:[2,135],104:[2,135],105:[2,135],106:[2,135],110:[2,135],118:[2,135],126:[2,135],128:[2,135],129:[2,135],132:[2,135],133:[2,135],134:[2,135],135:[2,135],136:[2,135],137:[2,135]},{1:[2,136],6:[2,136],25:[2,136],26:[2,136],49:[2,136],54:[2,136],57:[2,136],73:[2,136],78:[2,136],86:[2,136],91:[2,136],93:[2,136],98:[2,136],102:[2,136],104:[2,136],105:[2,136],106:[2,136],110:[2,136],118:[2,136],126:[2,136],128:[2,136],129:[2,136],132:[2,136],133:[2,136],134:[2,136],135:[2,136],136:[2,136],137:[2,136]},{1:[2,137],6:[2,137],25:[2,137],26:[2,137],49:[2,137],54:[2,137],57:[2,137],73:[2,137],78:[2,137],86:[2,137],91:[2,137],93:[2,137],98:[2,137],102:[2,137],104:[2,137],105:[2,137],106:[2,137],110:[2,137],118:[2,137],126:[2,137],128:[2,137],129:[2,137],132:[2,137],133:[2,137],134:[2,137],135:[2,137],136:[2,137],137:[2,137]},{1:[2,172],6:[2,172],25:[2,172],26:[2,172],49:[2,172],54:[2,172],57:[2,172],73:[2,172],78:[2,172],86:[2,172],91:[2,172],93:[2,172],102:[2,172],104:[2,172],105:[2,172],106:[2,172],110:[2,172],118:[2,172],126:[2,172],128:[2,172],129:[2,172],132:[2,172],133:[2,172],134:[2,172],135:[2,172],136:[2,172],137:[2,172]},{24:315,25:[1,112]},{26:[1,316]},{6:[1,317],26:[2,178],121:[2,178],123:[2,178]},{7:318,8:114,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:60,28:[1,71],29:47,30:[1,69],31:[1,70],32:22,33:[1,48],34:[1,49],35:[1,50],36:[1,51],37:[1,52],38:[1,53],39:21,44:61,45:[1,43],46:[1,44],47:[1,27],50:28,51:[1,58],52:[1,59],58:45,59:46,61:34,63:23,64:24,65:25,76:[1,68],79:[1,41],83:[1,26],88:[1,56],89:[1,57],90:[1,55],96:[1,36],100:[1,42],101:[1,54],103:37,104:[1,63],106:[1,64],107:38,108:[1,65],109:39,110:[1,66],111:67,119:[1,40],124:35,125:[1,62],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33]},{1:[2,102],6:[2,102],25:[2,102],26:[2,102],49:[2,102],54:[2,102],57:[2,102],73:[2,102],78:[2,102],86:[2,102],91:[2,102],93:[2,102],102:[2,102],104:[2,102],105:[2,102],106:[2,102],110:[2,102],118:[2,102],126:[2,102],128:[2,102],129:[2,102],132:[2,102],133:[2,102],134:[2,102],135:[2,102],136:[2,102],137:[2,102]},{1:[2,141],6:[2,141],25:[2,141],26:[2,141],49:[2,141],54:[2,141],57:[2,141],66:[2,141],67:[2,141],68:[2,141],69:[2,141],71:[2,141],73:[2,141],74:[2,141],78:[2,141],84:[2,141],85:[2,141],86:[2,141],91:[2,141],93:[2,141],102:[2,141],104:[2,141],105:[2,141],106:[2,141],110:[2,141],118:[2,141],126:[2,141],128:[2,141],129:[2,141],132:[2,141],133:[2,141],134:[2,141],135:[2,141],136:[2,141],137:[2,141]},{1:[2,118],6:[2,118],25:[2,118],26:[2,118],49:[2,118],54:[2,118],57:[2,118],66:[2,118],67:[2,118],68:[2,118],69:[2,118],71:[2,118],73:[2,118],74:[2,118],78:[2,118],84:[2,118],85:[2,118],86:[2,118],91:[2,118],93:[2,118],102:[2,118],104:[2,118],105:[2,118],106:[2,118],110:[2,118],118:[2,118],126:[2,118],128:[2,118],129:[2,118],132:[2,118],133:[2,118],134:[2,118],135:[2,118],136:[2,118],137:[2,118]},{6:[2,125],25:[2,125],26:[2,125],54:[2,125],86:[2,125],91:[2,125]},{6:[2,52],25:[2,52],26:[2,52],53:319,54:[1,226]},{6:[2,126],25:[2,126],26:[2,126],54:[2,126],86:[2,126],91:[2,126]},{1:[2,167],6:[2,167],25:[2,167],26:[2,167],49:[2,167],54:[2,167],57:[2,167],73:[2,167],78:[2,167],86:[2,167],91:[2,167],93:[2,167],102:[2,167],103:82,104:[2,167],105:[2,167],106:[2,167],109:83,110:[2,167],111:67,118:[1,320],126:[2,167],128:[1,75],129:[1,74],132:[1,73],133:[1,76],134:[1,77],135:[1,78],136:[1,79],137:[1,80]},{1:[2,169],6:[2,169],25:[2,169],26:[2,169],49:[2,169],54:[2,169],57:[2,169],73:[2,169],78:[2,169],86:[2,169],91:[2,169],93:[2,169],102:[2,169],103:82,104:[2,169],105:[1,321],106:[2,169],109:83,110:[2,169],111:67,118:[2,169],126:[2,169],128:[1,75],129:[1,74],132:[1,73],133:[1,76],134:[1,77],135:[1,78],136:[1,79],137:[1,80]},{1:[2,168],6:[2,168],25:[2,168],26:[2,168],49:[2,168],54:[2,168],57:[2,168],73:[2,168],78:[2,168],86:[2,168],91:[2,168],93:[2,168],102:[2,168],103:82,104:[2,168],105:[2,168],106:[2,168],109:83,110:[2,168],111:67,118:[2,168],126:[2,168],128:[1,75],129:[1,74],132:[1,73],133:[1,76],134:[1,77],135:[1,78],136:[1,79],137:[1,80]},{6:[2,93],25:[2,93],26:[2,93],54:[2,93],78:[2,93]},{6:[2,52],25:[2,52],26:[2,52],53:322,54:[1,236]},{26:[1,323],103:82,104:[1,63],106:[1,64],109:83,110:[1,66],111:67,126:[1,81],128:[1,75],129:[1,74],132:[1,73],133:[1,76],134:[1,77],135:[1,78],136:[1,79],137:[1,80]},{6:[1,247],25:[1,248],26:[1,324]},{26:[1,325]},{1:[2,175],6:[2,175],25:[2,175],26:[2,175],49:[2,175],54:[2,175],57:[2,175],73:[2,175],78:[2,175],86:[2,175],91:[2,175],93:[2,175],102:[2,175],104:[2,175],105:[2,175],106:[2,175],110:[2,175],118:[2,175],126:[2,175],128:[2,175],129:[2,175],132:[2,175],133:[2,175],134:[2,175],135:[2,175],136:[2,175],137:[2,175]},{26:[2,179],121:[2,179],123:[2,179]},{25:[2,131],54:[2,131],103:82,104:[1,63],106:[1,64],109:83,110:[1,66],111:67,126:[1,81],128:[1,75],129:[1,74],132:[1,73],133:[1,76],134:[1,77],135:[1,78],136:[1,79],137:[1,80]},{6:[1,270],25:[1,271],26:[1,326]},{7:327,8:114,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:60,28:[1,71],29:47,30:[1,69],31:[1,70],32:22,33:[1,48],34:[1,49],35:[1,50],36:[1,51],37:[1,52],38:[1,53],39:21,44:61,45:[1,43],46:[1,44],47:[1,27],50:28,51:[1,58],52:[1,59],58:45,59:46,61:34,63:23,64:24,65:25,76:[1,68],79:[1,41],83:[1,26],88:[1,56],89:[1,57],90:[1,55],96:[1,36],100:[1,42],101:[1,54],103:37,104:[1,63],106:[1,64],107:38,108:[1,65],109:39,110:[1,66],111:67,119:[1,40],124:35,125:[1,62],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33]},{7:328,8:114,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:60,28:[1,71],29:47,30:[1,69],31:[1,70],32:22,33:[1,48],34:[1,49],35:[1,50],36:[1,51],37:[1,52],38:[1,53],39:21,44:61,45:[1,43],46:[1,44],47:[1,27],50:28,51:[1,58],52:[1,59],58:45,59:46,61:34,63:23,64:24,65:25,76:[1,68],79:[1,41],83:[1,26],88:[1,56],89:[1,57],90:[1,55],96:[1,36],100:[1,42],101:[1,54],103:37,104:[1,63],106:[1,64],107:38,108:[1,65],109:39,110:[1,66],111:67,119:[1,40],124:35,125:[1,62],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33]},{6:[1,281],25:[1,282],26:[1,329]},{6:[2,40],25:[2,40],26:[2,40],54:[2,40],78:[2,40]},{6:[2,58],25:[2,58],26:[2,58],49:[2,58],54:[2,58]},{1:[2,173],6:[2,173],25:[2,173],26:[2,173],49:[2,173],54:[2,173],57:[2,173],73:[2,173],78:[2,173],86:[2,173],91:[2,173],93:[2,173],102:[2,173],104:[2,173],105:[2,173],106:[2,173],110:[2,173],118:[2,173],126:[2,173],128:[2,173],129:[2,173],132:[2,173],133:[2,173],134:[2,173],135:[2,173],136:[2,173],137:[2,173]},{6:[2,127],25:[2,127],26:[2,127],54:[2,127],86:[2,127],91:[2,127]},{1:[2,170],6:[2,170],25:[2,170],26:[2,170],49:[2,170],54:[2,170],57:[2,170],73:[2,170],78:[2,170],86:[2,170],91:[2,170],93:[2,170],102:[2,170],103:82,104:[2,170],105:[2,170],106:[2,170],109:83,110:[2,170],111:67,118:[2,170],126:[2,170],128:[1,75],129:[1,74],132:[1,73],133:[1,76],134:[1,77],135:[1,78],136:[1,79],137:[1,80]},{1:[2,171],6:[2,171],25:[2,171],26:[2,171],49:[2,171],54:[2,171],57:[2,171],73:[2,171],78:[2,171],86:[2,171],91:[2,171],93:[2,171],102:[2,171],103:82,104:[2,171],105:[2,171],106:[2,171],109:83,110:[2,171],111:67,118:[2,171],126:[2,171],128:[1,75],129:[1,74],132:[1,73],133:[1,76],134:[1,77],135:[1,78],136:[1,79],137:[1,80]},{6:[2,94],25:[2,94],26:[2,94],54:[2,94],78:[2,94]}], +defaultActions: {58:[2,50],59:[2,51],89:[2,108],186:[2,88]}, parseError: function parseError(str, hash) { - throw new Error(str); + if (hash.recoverable) { + this.trace(str); + } else { + var e = new Error(str) + e.location = hash.loc + throw e; + } }, parse: function parse(input) { - var self = this, stack = [0], vstack = [null], lstack = [], table = this.table, yytext = "", yylineno = 0, yyleng = 0, recovering = 0, TERROR = 2, EOF = 1; + var self = this, stack = [0], vstack = [null], lstack = [], table = this.table, yytext = '', yylineno = 0, yyleng = 0, recovering = 0, TERROR = 2, EOF = 1; this.lexer.setInput(input); this.lexer.yy = this.yy; this.yy.lexer = this.lexer; - if (typeof this.lexer.yylloc == "undefined") + this.yy.parser = this; + if (typeof this.lexer.yylloc == 'undefined') { this.lexer.yylloc = {}; + } var yyloc = this.lexer.yylloc; lstack.push(yyloc); - if (typeof this.yy.parseError === "function") + var ranges = this.lexer.options && this.lexer.options.ranges; + if (typeof this.yy.parseError === 'function') { this.parseError = this.yy.parseError; + } else { + this.parseError = Object.getPrototypeOf(this).parseError; + } function popStack(n) { stack.length = stack.length - 2 * n; vstack.length = vstack.length - n; @@ -5000,8 +4242,8 @@ parse: function parse(input) { } function lex() { var token; - token = self.lexer.lex() || 1; - if (typeof token !== "number") { + token = self.lexer.lex() || EOF; + if (typeof token !== 'number') { token = self.symbols_[token] || token; } return token; @@ -5012,28 +4254,35 @@ parse: function parse(input) { if (this.defaultActions[state]) { action = this.defaultActions[state]; } else { - if (symbol == null) + if (symbol === null || typeof symbol == 'undefined') { symbol = lex(); + } action = table[state] && table[state][symbol]; } - if (typeof action === "undefined" || !action.length || !action[0]) { - if (!recovering) { + if (typeof action === 'undefined' || !action.length || !action[0]) { + var errStr = ''; expected = []; - for (p in table[state]) - if (this.terminals_[p] && p > 2) { - expected.push("'" + this.terminals_[p] + "'"); + for (p in table[state]) { + if (this.terminals_[p] && p > TERROR) { + expected.push('\'' + this.terminals_[p] + '\''); } - var errStr = ""; - if (this.lexer.showPosition) { - errStr = "Parse error on line " + (yylineno + 1) + ":\n" + this.lexer.showPosition() + "\nExpecting " + expected.join(", ") + ", got '" + this.terminals_[symbol] + "'"; - } else { - errStr = "Parse error on line " + (yylineno + 1) + ": Unexpected " + (symbol == 1?"end of input":"'" + (this.terminals_[symbol] || symbol) + "'"); } - this.parseError(errStr, {text: this.lexer.match, token: this.terminals_[symbol] || symbol, line: this.lexer.yylineno, loc: yyloc, expected: expected}); + if (this.lexer.showPosition) { + errStr = 'Expecting ' + expected.join(', ') + ', got \'' + (this.terminals_[symbol] || symbol) + '\''; + } else { + errStr = 'Unexpected ' + (symbol == EOF ? 'end of input' : '\'' + (this.terminals_[symbol] || symbol) + '\''); + } + if (this.lexer.yylloc.first_line !== yyloc.first_line) yyloc = this.lexer.yylloc; + this.parseError(errStr, { + text: this.lexer.match, + token: this.terminals_[symbol] || symbol, + line: this.lexer.yylineno, + loc: yyloc, + expected: expected + }); } - } if (action[0] instanceof Array && action.length > 1) { - throw new Error("Parse Error: multiple actions possible at state: " + state + ", token: " + symbol); + throw new Error('Parse Error: multiple actions possible at state: ' + state + ', token: ' + symbol); } switch (action[0]) { case 1: @@ -5047,8 +4296,9 @@ parse: function parse(input) { yytext = this.lexer.yytext; yylineno = this.lexer.yylineno; yyloc = this.lexer.yylloc; - if (recovering > 0) + if (recovering > 0) { recovering--; + } } else { symbol = preErrorSymbol; preErrorSymbol = null; @@ -5057,9 +4307,20 @@ parse: function parse(input) { case 2: len = this.productions_[action[1]][1]; yyval.$ = vstack[vstack.length - len]; - yyval._$ = {first_line: lstack[lstack.length - (len || 1)].first_line, last_line: lstack[lstack.length - 1].last_line, first_column: lstack[lstack.length - (len || 1)].first_column, last_column: lstack[lstack.length - 1].last_column}; + yyval._$ = { + first_line: lstack[lstack.length - (len || 1)].first_line, + last_line: lstack[lstack.length - 1].last_line, + first_column: lstack[lstack.length - (len || 1)].first_column, + last_column: lstack[lstack.length - 1].last_column + }; + if (ranges) { + yyval._$.range = [ + lstack[lstack.length - (len || 1)].range[0], + lstack[lstack.length - 1].range[1] + ]; + } r = this.performAction.call(yyval, yytext, yyleng, yylineno, this.yy, action[1], vstack, lstack); - if (typeof r !== "undefined") { + if (typeof r !== 'undefined') { return r; } if (len) { @@ -5078,54 +4339,38 @@ parse: function parse(input) { } } return true; +}}; +undefined +function Parser () { + this.yy = {}; } -}; +Parser.prototype = parser;parser.Parser = Parser; -module.exports = parser; +module.exports = new Parser; }); -/* - * Copyright (c) 2011 Jeremy Ashkenas - * - * Permission is hereby granted, free of charge, to any person - * obtaining a copy of this software and associated documentation - * files (the "Software"), to deal in the Software without - * restriction, including without limitation the rights to use, - * copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the - * Software is furnished to do so, subject to the following - * conditions: - * - * The above copyright notice and this permission notice shall be - * included in all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, - * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES - * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND - * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT - * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, - * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING - * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR - * OTHER DEALINGS IN THE SOFTWARE. - */ -define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coffee/scope', 'ace/mode/coffee/lexer', 'ace/mode/coffee/helpers'], function(require, exports, module) { -// Generated by CoffeeScript 1.2.1-pre +ace.define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coffee/scope', 'ace/mode/coffee/lexer', 'ace/mode/coffee/helpers'], function(require, exports, module) { - var Access, Arr, Assign, Base, Block, Call, Class, Closure, Code, Comment, Existence, Extends, For, IDENTIFIER, IDENTIFIER_STR, IS_STRING, If, In, Index, LEVEL_ACCESS, LEVEL_COND, LEVEL_LIST, LEVEL_OP, LEVEL_PAREN, LEVEL_TOP, Literal, METHOD_DEF, NEGATE, NO, Obj, Op, Param, Parens, RESERVED, Range, Return, SIMPLENUM, STRICT_PROSCRIBED, Scope, Slice, Splat, Switch, TAB, THIS, Throw, Try, UTILITIES, Value, While, YES, compact, del, ends, extend, flatten, last, merge, multident, starts, unfoldSoak, utility, _ref, _ref1, + var Access, Arr, Assign, Base, Block, Call, Class, Code, CodeFragment, Comment, Existence, Extends, For, HEXNUM, IDENTIFIER, IDENTIFIER_STR, IS_REGEX, IS_STRING, If, In, Index, LEVEL_ACCESS, LEVEL_COND, LEVEL_LIST, LEVEL_OP, LEVEL_PAREN, LEVEL_TOP, Literal, METHOD_DEF, NEGATE, NO, NUMBER, Obj, Op, Param, Parens, RESERVED, Range, Return, SIMPLENUM, STRICT_PROSCRIBED, Scope, Slice, Splat, Switch, TAB, THIS, Throw, Try, UTILITIES, Value, While, YES, addLocationDataFn, compact, del, ends, extend, flatten, fragmentsToText, isLiteralArguments, isLiteralThis, last, locationDataToString, merge, multident, parseNum, some, starts, throwSyntaxError, unfoldSoak, utility, _ref, _ref1, __hasProp = {}.hasOwnProperty, - __extends = function(child, parent) { for (var key in parent) { if (__hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor; child.__super__ = parent.prototype; return child; }, - __indexOf = [].indexOf || function(item) { for (var i = 0, l = this.length; i < l; i++) { if (i in this && this[i] === item) return i; } return -1; }; + __extends = function(child, parent) { for (var key in parent) { if (__hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; }, + __indexOf = [].indexOf || function(item) { for (var i = 0, l = this.length; i < l; i++) { if (i in this && this[i] === item) return i; } return -1; }, + __slice = [].slice; + + Error.stackTraceLimit = Infinity; Scope = require('./scope').Scope; _ref = require('./lexer'), RESERVED = _ref.RESERVED, STRICT_PROSCRIBED = _ref.STRICT_PROSCRIBED; - _ref1 = require('./helpers'), compact = _ref1.compact, flatten = _ref1.flatten, extend = _ref1.extend, merge = _ref1.merge, del = _ref1.del, starts = _ref1.starts, ends = _ref1.ends, last = _ref1.last; + _ref1 = require('./helpers'), compact = _ref1.compact, flatten = _ref1.flatten, extend = _ref1.extend, merge = _ref1.merge, del = _ref1.del, starts = _ref1.starts, ends = _ref1.ends, last = _ref1.last, some = _ref1.some, addLocationDataFn = _ref1.addLocationDataFn, locationDataToString = _ref1.locationDataToString, throwSyntaxError = _ref1.throwSyntaxError; exports.extend = extend; + exports.addLocationDataFn = addLocationDataFn; + YES = function() { return true; }; @@ -5143,16 +4388,48 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff return this; }; + exports.CodeFragment = CodeFragment = (function() { + function CodeFragment(parent, code) { + var _ref2; + this.code = "" + code; + this.locationData = parent != null ? parent.locationData : void 0; + this.type = (parent != null ? (_ref2 = parent.constructor) != null ? _ref2.name : void 0 : void 0) || 'unknown'; + } + + CodeFragment.prototype.toString = function() { + return "" + this.code + (this.locationData ? ": " + locationDataToString(this.locationData) : ''); + }; + + return CodeFragment; + + })(); + + fragmentsToText = function(fragments) { + var fragment; + return ((function() { + var _i, _len, _results; + _results = []; + for (_i = 0, _len = fragments.length; _i < _len; _i++) { + fragment = fragments[_i]; + _results.push(fragment.code); + } + return _results; + })()).join(''); + }; + exports.Base = Base = (function() { - - Base.name = 'Base'; - function Base() {} Base.prototype.compile = function(o, lvl) { + return fragmentsToText(this.compileToFragments(o, lvl)); + }; + + Base.prototype.compileToFragments = function(o, lvl) { var node; o = extend({}, o); - if (lvl) o.level = lvl; + if (lvl) { + o.level = lvl; + } node = this.unfoldSoak(o) || this; node.tab = o.indent; if (o.level === LEVEL_TOP || !node.isStatement(o)) { @@ -5163,36 +4440,44 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff }; Base.prototype.compileClosure = function(o) { - if (this.jumps()) { - throw SyntaxError('cannot use a pure statement in an expression.'); + var args, argumentsNode, func, jumpNode, meth; + if (jumpNode = this.jumps()) { + jumpNode.error('cannot use a pure statement in an expression'); } o.sharedScope = true; - return Closure.wrap(this).compileNode(o); + func = new Code([], Block.wrap([this])); + args = []; + if ((argumentsNode = this.contains(isLiteralArguments)) || this.contains(isLiteralThis)) { + args = [new Literal('this')]; + if (argumentsNode) { + meth = 'apply'; + args.push(new Literal('arguments')); + } else { + meth = 'call'; + } + func = new Value(func, [new Access(new Literal(meth))]); + } + return (new Call(func, args)).compileNode(o); }; Base.prototype.cache = function(o, level, reused) { var ref, sub; if (!this.isComplex()) { - ref = level ? this.compile(o, level) : this; + ref = level ? this.compileToFragments(o, level) : this; return [ref, ref]; } else { ref = new Literal(reused || o.scope.freeVariable('ref')); sub = new Assign(ref, this); if (level) { - return [sub.compile(o, level), ref.value]; + return [sub.compileToFragments(o, level), [this.makeCode(ref.value)]]; } else { return [sub, ref]; } } }; - Base.prototype.compileLoopReference = function(o, name) { - var src, tmp; - src = tmp = this.compile(o, LEVEL_LIST); - if (!((-Infinity < +src && +src < Infinity) || IDENTIFIER.test(src) && o.scope.check(src, true))) { - src = "" + (tmp = o.scope.freeVariable(name)) + " = " + src; - } - return [src, tmp]; + Base.prototype.cacheToCodeFragments = function(cacheValues) { + return [fragmentsToText(cacheValues[0]), fragmentsToText(cacheValues[1])]; }; Base.prototype.makeReturn = function(res) { @@ -5206,38 +4491,40 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff }; Base.prototype.contains = function(pred) { - var contains; - contains = false; - this.traverseChildren(false, function(node) { - if (pred(node)) { - contains = true; + var node; + node = void 0; + this.traverseChildren(false, function(n) { + if (pred(n)) { + node = n; return false; } }); - return contains; - }; - - Base.prototype.containsType = function(type) { - return this instanceof type || this.contains(function(node) { - return node instanceof type; - }); + return node; }; Base.prototype.lastNonComment = function(list) { var i; i = list.length; while (i--) { - if (!(list[i] instanceof Comment)) return list[i]; + if (!(list[i] instanceof Comment)) { + return list[i]; + } } return null; }; Base.prototype.toString = function(idt, name) { var tree; - if (idt == null) idt = ''; - if (name == null) name = this.constructor.name; + if (idt == null) { + idt = ''; + } + if (name == null) { + name = this.constructor.name; + } tree = '\n' + idt + name; - if (this.soak) tree += '?'; + if (this.soak) { + tree += '?'; + } this.eachChild(function(node) { return tree += node.toString(idt + TAB); }); @@ -5246,7 +4533,9 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff Base.prototype.eachChild = function(func) { var attr, child, _i, _j, _len, _len1, _ref2, _ref3; - if (!this.children) return this; + if (!this.children) { + return this; + } _ref2 = this.children; for (_i = 0, _len = _ref2.length; _i < _len; _i++) { attr = _ref2[_i]; @@ -5254,7 +4543,9 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff _ref3 = flatten([this[attr]]); for (_j = 0, _len1 = _ref3.length; _j < _len1; _j++) { child = _ref3[_j]; - if (func(child) === false) return this; + if (func(child) === false) { + return this; + } } } } @@ -5263,8 +4554,11 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff Base.prototype.traverseChildren = function(crossScope, func) { return this.eachChild(function(child) { - if (func(child) === false) return false; - return child.traverseChildren(crossScope, func); + var recur; + recur = func(child); + if (recur !== false) { + return child.traverseChildren(crossScope, func); + } }); }; @@ -5299,16 +4593,48 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff Base.prototype.assigns = NO; + Base.prototype.updateLocationDataIfMissing = function(locationData) { + if (this.locationData) { + return this; + } + this.locationData = locationData; + return this.eachChild(function(child) { + return child.updateLocationDataIfMissing(locationData); + }); + }; + + Base.prototype.error = function(message) { + return throwSyntaxError(message, this.locationData); + }; + + Base.prototype.makeCode = function(code) { + return new CodeFragment(this, code); + }; + + Base.prototype.wrapInBraces = function(fragments) { + return [].concat(this.makeCode('('), fragments, this.makeCode(')')); + }; + + Base.prototype.joinFragmentArrays = function(fragmentsList, joinStr) { + var answer, fragments, i, _i, _len; + answer = []; + for (i = _i = 0, _len = fragmentsList.length; _i < _len; i = ++_i) { + fragments = fragmentsList[i]; + if (i) { + answer.push(this.makeCode(joinStr)); + } + answer = answer.concat(fragments); + } + return answer; + }; + return Base; })(); exports.Block = Block = (function(_super) { - __extends(Block, _super); - Block.name = 'Block'; - function Block(nodes) { this.expressions = compact(flatten(nodes || [])); } @@ -5346,17 +4672,21 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff _ref2 = this.expressions; for (_i = 0, _len = _ref2.length; _i < _len; _i++) { exp = _ref2[_i]; - if (exp.isStatement(o)) return true; + if (exp.isStatement(o)) { + return true; + } } return false; }; Block.prototype.jumps = function(o) { - var exp, _i, _len, _ref2; + var exp, jumpNode, _i, _len, _ref2; _ref2 = this.expressions; for (_i = 0, _len = _ref2.length; _i < _len; _i++) { exp = _ref2[_i]; - if (exp.jumps(o)) return exp; + if (jumpNode = exp.jumps(o)) { + return jumpNode; + } } }; @@ -5376,69 +4706,82 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff return this; }; - Block.prototype.compile = function(o, level) { - if (o == null) o = {}; + Block.prototype.compileToFragments = function(o, level) { + if (o == null) { + o = {}; + } if (o.scope) { - return Block.__super__.compile.call(this, o, level); + return Block.__super__.compileToFragments.call(this, o, level); } else { return this.compileRoot(o); } }; Block.prototype.compileNode = function(o) { - var code, codes, node, top, _i, _len, _ref2; + var answer, compiledNodes, fragments, index, node, top, _i, _len, _ref2; this.tab = o.indent; top = o.level === LEVEL_TOP; - codes = []; + compiledNodes = []; _ref2 = this.expressions; - for (_i = 0, _len = _ref2.length; _i < _len; _i++) { - node = _ref2[_i]; + for (index = _i = 0, _len = _ref2.length; _i < _len; index = ++_i) { + node = _ref2[index]; node = node.unwrapAll(); node = node.unfoldSoak(o) || node; if (node instanceof Block) { - codes.push(node.compileNode(o)); + compiledNodes.push(node.compileNode(o)); } else if (top) { node.front = true; - code = node.compile(o); + fragments = node.compileToFragments(o); if (!node.isStatement(o)) { - code = "" + this.tab + code + ";"; - if (node instanceof Literal) code = "" + code + "\n"; + fragments.unshift(this.makeCode("" + this.tab)); + fragments.push(this.makeCode(";")); } - codes.push(code); + compiledNodes.push(fragments); } else { - codes.push(node.compile(o, LEVEL_LIST)); + compiledNodes.push(node.compileToFragments(o, LEVEL_LIST)); } } if (top) { if (this.spaced) { - return "\n" + (codes.join('\n\n')) + "\n"; + return [].concat(this.joinFragmentArrays(compiledNodes, '\n\n'), this.makeCode("\n")); } else { - return codes.join('\n'); + return this.joinFragmentArrays(compiledNodes, '\n'); } } - code = codes.join(', ') || 'void 0'; - if (codes.length > 1 && o.level >= LEVEL_LIST) { - return "(" + code + ")"; + if (compiledNodes.length) { + answer = this.joinFragmentArrays(compiledNodes, ', '); } else { - return code; + answer = [this.makeCode("void 0")]; + } + if (compiledNodes.length > 1 && o.level >= LEVEL_LIST) { + return this.wrapInBraces(answer); + } else { + return answer; } }; Block.prototype.compileRoot = function(o) { - var code, exp, i, prelude, preludeExps, rest; + var exp, fragments, i, name, prelude, preludeExps, rest, _i, _len, _ref2; o.indent = o.bare ? '' : TAB; - o.scope = new Scope(null, this, null); o.level = LEVEL_TOP; this.spaced = true; - prelude = ""; + o.scope = new Scope(null, this, null); + _ref2 = o.locals || []; + for (_i = 0, _len = _ref2.length; _i < _len; _i++) { + name = _ref2[_i]; + o.scope.parameter(name); + } + prelude = []; if (!o.bare) { preludeExps = (function() { - var _i, _len, _ref2, _results; - _ref2 = this.expressions; + var _j, _len1, _ref3, _results; + _ref3 = this.expressions; _results = []; - for (i = _i = 0, _len = _ref2.length; _i < _len; i = ++_i) { - exp = _ref2[i]; - if (!(exp.unwrap() instanceof Comment)) break; + for (i = _j = 0, _len1 = _ref3.length; _j < _len1; i = ++_j) { + exp = _ref3[i]; + if (!(exp.unwrap() instanceof Comment)) { + break; + } _results.push(exp); } return _results; @@ -5446,25 +4789,31 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff rest = this.expressions.slice(preludeExps.length); this.expressions = preludeExps; if (preludeExps.length) { - prelude = "" + (this.compileNode(merge(o, { + prelude = this.compileNode(merge(o, { indent: '' - }))) + "\n"; + })); + prelude.push(this.makeCode("\n")); } this.expressions = rest; } - code = this.compileWithDeclarations(o); - if (o.bare) return code; - return "" + prelude + "(function() {\n" + code + "\n}).call(this);\n"; + fragments = this.compileWithDeclarations(o); + if (o.bare) { + return fragments; + } + return [].concat(prelude, this.makeCode("(function() {\n"), fragments, this.makeCode("\n}).call(this);\n")); }; Block.prototype.compileWithDeclarations = function(o) { - var assigns, code, declars, exp, i, post, rest, scope, spaced, _i, _len, _ref2, _ref3, _ref4; - code = post = ''; + var assigns, declars, exp, fragments, i, post, rest, scope, spaced, _i, _len, _ref2, _ref3, _ref4; + fragments = []; + post = []; _ref2 = this.expressions; for (i = _i = 0, _len = _ref2.length; _i < _len; i = ++_i) { exp = _ref2[i]; exp = exp.unwrap(); - if (!(exp instanceof Comment || exp instanceof Literal)) break; + if (!(exp instanceof Comment || exp instanceof Literal)) { + break; + } } o = merge(o, { level: LEVEL_TOP @@ -5472,7 +4821,7 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff if (i) { rest = this.expressions.splice(i, 9e9); _ref3 = [this.spaced, false], spaced = _ref3[0], this.spaced = _ref3[1]; - _ref4 = [this.compileNode(o), spaced], code = _ref4[0], this.spaced = _ref4[1]; + _ref4 = [this.compileNode(o), spaced], fragments = _ref4[0], this.spaced = _ref4[1]; this.expressions = rest; } post = this.compileNode(o); @@ -5481,21 +4830,31 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff declars = o.scope.hasDeclarations(); assigns = scope.hasAssignments; if (declars || assigns) { - if (i) code += '\n'; - code += "" + this.tab + "var "; - if (declars) code += scope.declaredVariables().join(', '); - if (assigns) { - if (declars) code += ",\n" + (this.tab + TAB); - code += scope.assignedVariables().join(",\n" + (this.tab + TAB)); + if (i) { + fragments.push(this.makeCode('\n')); } - code += ';\n'; + fragments.push(this.makeCode("" + this.tab + "var ")); + if (declars) { + fragments.push(this.makeCode(scope.declaredVariables().join(', '))); + } + if (assigns) { + if (declars) { + fragments.push(this.makeCode(",\n" + (this.tab + TAB))); + } + fragments.push(this.makeCode(scope.assignedVariables().join(",\n" + (this.tab + TAB)))); + } + fragments.push(this.makeCode(";\n" + (this.spaced ? '\n' : ''))); + } else if (fragments.length && post.length) { + fragments.push(this.makeCode("\n")); } } - return code + post; + return fragments.concat(post); }; Block.wrap = function(nodes) { - if (nodes.length === 1 && nodes[0] instanceof Block) return nodes[0]; + if (nodes.length === 1 && nodes[0] instanceof Block) { + return nodes[0]; + } return new Block(nodes); }; @@ -5504,11 +4863,8 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff })(Base); exports.Literal = Literal = (function(_super) { - __extends(Literal, _super); - Literal.name = 'Literal'; - function Literal(value) { this.value = value; } @@ -5540,17 +4896,16 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff if (this.value === 'break' && !((o != null ? o.loop : void 0) || (o != null ? o.block : void 0))) { return this; } - if (this.value === 'continue' && !(o != null ? o.loop : void 0)) return this; + if (this.value === 'continue' && !(o != null ? o.loop : void 0)) { + return this; + } }; Literal.prototype.compileNode = function(o) { - var code, _ref2; - code = this.isUndefined ? o.level >= LEVEL_ACCESS ? '(void 0)' : 'void 0' : this.value === 'this' ? ((_ref2 = o.scope.method) != null ? _ref2.bound : void 0) ? o.scope.method.context : this.value : this.value.reserved ? "\"" + this.value + "\"" : this.value; - if (this.isStatement()) { - return "" + this.tab + code + ";"; - } else { - return code; - } + var answer, code, _ref2; + code = this.value === 'this' ? ((_ref2 = o.scope.method) != null ? _ref2.bound : void 0) ? o.scope.method.context : this.value : this.value.reserved ? "\"" + this.value + "\"" : this.value; + answer = this.isStatement() ? "" + this.tab + code + ";" : code; + return [this.makeCode(answer)]; }; Literal.prototype.toString = function() { @@ -5561,14 +4916,70 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff })(Base); - exports.Return = Return = (function(_super) { + exports.Undefined = (function(_super) { + __extends(Undefined, _super); + function Undefined() { + return Undefined.__super__.constructor.apply(this, arguments); + } + + Undefined.prototype.isAssignable = NO; + + Undefined.prototype.isComplex = NO; + + Undefined.prototype.compileNode = function(o) { + return [this.makeCode(o.level >= LEVEL_ACCESS ? '(void 0)' : 'void 0')]; + }; + + return Undefined; + + })(Base); + + exports.Null = (function(_super) { + __extends(Null, _super); + + function Null() { + return Null.__super__.constructor.apply(this, arguments); + } + + Null.prototype.isAssignable = NO; + + Null.prototype.isComplex = NO; + + Null.prototype.compileNode = function() { + return [this.makeCode("null")]; + }; + + return Null; + + })(Base); + + exports.Bool = (function(_super) { + __extends(Bool, _super); + + Bool.prototype.isAssignable = NO; + + Bool.prototype.isComplex = NO; + + Bool.prototype.compileNode = function() { + return [this.makeCode(this.val)]; + }; + + function Bool(val) { + this.val = val; + } + + return Bool; + + })(Base); + + exports.Return = Return = (function(_super) { __extends(Return, _super); - Return.name = 'Return'; - function Return(expr) { - if (expr && !expr.unwrap().isUndefined) this.expression = expr; + if (expr && !expr.unwrap().isUndefined) { + this.expression = expr; + } } Return.prototype.children = ['expression']; @@ -5579,18 +4990,25 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff Return.prototype.jumps = THIS; - Return.prototype.compile = function(o, level) { + Return.prototype.compileToFragments = function(o, level) { var expr, _ref2; expr = (_ref2 = this.expression) != null ? _ref2.makeReturn() : void 0; if (expr && !(expr instanceof Return)) { - return expr.compile(o, level); + return expr.compileToFragments(o, level); } else { - return Return.__super__.compile.call(this, o, level); + return Return.__super__.compileToFragments.call(this, o, level); } }; Return.prototype.compileNode = function(o) { - return this.tab + ("return" + [this.expression ? " " + (this.expression.compile(o, LEVEL_PAREN)) : void 0] + ";"); + var answer; + answer = []; + answer.push(this.makeCode(this.tab + ("return" + (this.expression ? " " : "")))); + if (this.expression) { + answer = answer.concat(this.expression.compileToFragments(o, LEVEL_PAREN)); + } + answer.push(this.makeCode(";")); + return answer; }; return Return; @@ -5598,16 +5016,17 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff })(Base); exports.Value = Value = (function(_super) { - __extends(Value, _super); - Value.name = 'Value'; - function Value(base, props, tag) { - if (!props && base instanceof Value) return base; + if (!props && base instanceof Value) { + return base; + } this.base = base; this.properties = props || []; - if (tag) this[tag] = true; + if (tag) { + this[tag] = true; + } return this; } @@ -5622,8 +5041,16 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff return !!this.properties.length; }; + Value.prototype.bareLiteral = function(type) { + return !this.properties.length && this.base instanceof type; + }; + Value.prototype.isArray = function() { - return !this.properties.length && this.base instanceof Arr; + return this.bareLiteral(Arr); + }; + + Value.prototype.isRange = function() { + return this.bareLiteral(Range); }; Value.prototype.isComplex = function() { @@ -5635,11 +5062,15 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff }; Value.prototype.isSimpleNumber = function() { - return this.base instanceof Literal && SIMPLENUM.test(this.base.value); + return this.bareLiteral(Literal) && SIMPLENUM.test(this.base.value); }; Value.prototype.isString = function() { - return this.base instanceof Literal && IS_STRING.test(this.base.value); + return this.bareLiteral(Literal) && IS_STRING.test(this.base.value); + }; + + Value.prototype.isRegex = function() { + return this.bareLiteral(Literal) && IS_REGEX.test(this.base.value); }; Value.prototype.isAtomic = function() { @@ -5647,11 +5078,17 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff _ref2 = this.properties.concat(this.base); for (_i = 0, _len = _ref2.length; _i < _len; _i++) { node = _ref2[_i]; - if (node.soak || node instanceof Call) return false; + if (node.soak || node instanceof Call) { + return false; + } } return true; }; + Value.prototype.isNotCallable = function() { + return this.isSimpleNumber() || this.isString() || this.isRegex() || this.isArray() || this.isRange() || this.isSplice() || this.isObject(); + }; + Value.prototype.isStatement = function(o) { return !this.properties.length && this.base.isStatement(o); }; @@ -5665,7 +5102,9 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff }; Value.prototype.isObject = function(onlyGenerated) { - if (this.properties.length) return false; + if (this.properties.length) { + return false; + } return (this.base instanceof Obj) && (!onlyGenerated || this.base.generated); }; @@ -5673,6 +5112,11 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff return last(this.properties) instanceof Slice; }; + Value.prototype.looksStatic = function(className) { + var _ref2; + return this.base.value === className && this.properties.length && ((_ref2 = this.properties[0].name) != null ? _ref2.value : void 0) !== 'prototype'; + }; + Value.prototype.unwrap = function() { if (this.properties.length) { return this; @@ -5692,7 +5136,9 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff bref = new Literal(o.scope.freeVariable('base')); base = new Value(new Parens(new Assign(bref, base))); } - if (!name) return [base, bref]; + if (!name) { + return [base, bref]; + } if (name.isComplex()) { nref = new Literal(o.scope.freeVariable('name')); name = new Index(new Assign(nref, name.index)); @@ -5702,49 +5148,49 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff }; Value.prototype.compileNode = function(o) { - var code, prop, props, _i, _len; + var fragments, prop, props, _i, _len; this.base.front = this.front; props = this.properties; - code = this.base.compile(o, props.length ? LEVEL_ACCESS : null); - if ((this.base instanceof Parens || props.length) && SIMPLENUM.test(code)) { - code = "" + code + "."; + fragments = this.base.compileToFragments(o, (props.length ? LEVEL_ACCESS : null)); + if ((this.base instanceof Parens || props.length) && SIMPLENUM.test(fragmentsToText(fragments))) { + fragments.push(this.makeCode('.')); } for (_i = 0, _len = props.length; _i < _len; _i++) { prop = props[_i]; - code += prop.compile(o); + fragments.push.apply(fragments, prop.compileToFragments(o)); } - return code; + return fragments; }; Value.prototype.unfoldSoak = function(o) { - var result, - _this = this; - if (this.unfoldedSoak != null) return this.unfoldedSoak; - result = (function() { - var fst, i, ifn, prop, ref, snd, _i, _len, _ref2; - if (ifn = _this.base.unfoldSoak(o)) { - Array.prototype.push.apply(ifn.body.properties, _this.properties); - return ifn; - } - _ref2 = _this.properties; - for (i = _i = 0, _len = _ref2.length; _i < _len; i = ++_i) { - prop = _ref2[i]; - if (!prop.soak) continue; - prop.soak = false; - fst = new Value(_this.base, _this.properties.slice(0, i)); - snd = new Value(_this.base, _this.properties.slice(i)); - if (fst.isComplex()) { - ref = new Literal(o.scope.freeVariable('ref')); - fst = new Parens(new Assign(ref, fst)); - snd.base = ref; + return this.unfoldedSoak != null ? this.unfoldedSoak : this.unfoldedSoak = (function(_this) { + return function() { + var fst, i, ifn, prop, ref, snd, _i, _len, _ref2, _ref3; + if (ifn = _this.base.unfoldSoak(o)) { + (_ref2 = ifn.body.properties).push.apply(_ref2, _this.properties); + return ifn; } - return new If(new Existence(fst), snd, { - soak: true - }); - } - return null; - })(); - return this.unfoldedSoak = result || false; + _ref3 = _this.properties; + for (i = _i = 0, _len = _ref3.length; _i < _len; i = ++_i) { + prop = _ref3[i]; + if (!prop.soak) { + continue; + } + prop.soak = false; + fst = new Value(_this.base, _this.properties.slice(0, i)); + snd = new Value(_this.base, _this.properties.slice(i)); + if (fst.isComplex()) { + ref = new Literal(o.scope.freeVariable('ref')); + fst = new Parens(new Assign(ref, fst)); + snd.base = ref; + } + return new If(new Existence(fst), snd, { + soak: true + }); + } + return false; + }; + })(this)(); }; return Value; @@ -5752,11 +5198,8 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff })(Base); exports.Comment = Comment = (function(_super) { - __extends(Comment, _super); - Comment.name = 'Comment'; - function Comment(comment) { this.comment = comment; } @@ -5766,10 +5209,13 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff Comment.prototype.makeReturn = THIS; Comment.prototype.compileNode = function(o, level) { - var code; - code = '/*' + multident(this.comment, this.tab) + ("\n" + this.tab + "*/\n"); - if ((level || o.level) === LEVEL_TOP) code = o.indent + code; - return code; + var code, comment; + comment = this.comment.replace(/^(\s*)#/gm, "$1 *"); + code = "/*" + (multident(comment, this.tab)) + (__indexOf.call(comment, '\n') >= 0 ? "\n" + this.tab : '') + " */"; + if ((level || o.level) === LEVEL_TOP) { + code = o.indent + code; + } + return [this.makeCode("\n"), this.makeCode(code)]; }; return Comment; @@ -5777,17 +5223,17 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff })(Base); exports.Call = Call = (function(_super) { - __extends(Call, _super); - Call.name = 'Call'; - function Call(variable, args, soak) { this.args = args != null ? args : []; this.soak = soak; this.isNew = false; this.isSuper = variable === 'super'; this.variable = this.isSuper ? null : variable; + if (variable instanceof Value && variable.isNotCallable()) { + variable.error("literal is not a function"); + } } Call.prototype.children = ['variable', 'args']; @@ -5804,30 +5250,35 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff }; Call.prototype.superReference = function(o) { - var accesses, method, name; - method = o.scope.method; - if (!method) throw SyntaxError('cannot call super outside of a function.'); - name = method.name; - if (name == null) { - throw SyntaxError('cannot call super on an anonymous function.'); - } - if (method.klass) { + var accesses, method; + method = o.scope.namedMethod(); + if (method != null ? method.klass : void 0) { accesses = [new Access(new Literal('__super__'))]; if (method["static"]) { accesses.push(new Access(new Literal('constructor'))); } - accesses.push(new Access(new Literal(name))); + accesses.push(new Access(new Literal(method.name))); return (new Value(new Literal(method.klass), accesses)).compile(o); + } else if (method != null ? method.ctor : void 0) { + return "" + method.name + ".__super__.constructor"; } else { - return "" + name + ".__super__.constructor"; + return this.error('cannot call super outside of an instance method.'); } }; + Call.prototype.superThis = function(o) { + var method; + method = o.scope.method; + return (method && !method.klass && method.context) || "this"; + }; + Call.prototype.unfoldSoak = function(o) { var call, ifn, left, list, rite, _i, _len, _ref2, _ref3; if (this.soak) { if (this.variable) { - if (ifn = unfoldSoak(o, this, 'variable')) return ifn; + if (ifn = unfoldSoak(o, this, 'variable')) { + return ifn; + } _ref2 = new Value(this.variable).cacheReference(o), left = _ref2[0], rite = _ref2[1]; } else { left = new Literal(this.superReference(o)); @@ -5848,9 +5299,13 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff call = call.variable; continue; } - if (!(call.variable instanceof Value)) break; + if (!(call.variable instanceof Value)) { + break; + } list.push(call); - if (!((call = call.variable.base) instanceof Call)) break; + if (!((call = call.variable.base) instanceof Call)) { + break; + } } _ref3 = list.reverse(); for (_i = 0, _len = _ref3.length; _i < _len; _i++) { @@ -5867,82 +5322,71 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff return ifn; }; - Call.prototype.filterImplicitObjects = function(list) { - var node, nodes, obj, prop, properties, _i, _j, _len, _len1, _ref2; - nodes = []; - for (_i = 0, _len = list.length; _i < _len; _i++) { - node = list[_i]; - if (!((typeof node.isObject === "function" ? node.isObject() : void 0) && node.base.generated)) { - nodes.push(node); - continue; - } - obj = null; - _ref2 = node.base.properties; - for (_j = 0, _len1 = _ref2.length; _j < _len1; _j++) { - prop = _ref2[_j]; - if (prop instanceof Assign || prop instanceof Comment) { - if (!obj) nodes.push(obj = new Obj(properties = [], true)); - properties.push(prop); - } else { - nodes.push(prop); - obj = null; - } - } - } - return nodes; - }; - Call.prototype.compileNode = function(o) { - var arg, args, code, _ref2; - if ((_ref2 = this.variable) != null) _ref2.front = this.front; - if (code = Splat.compileSplattedArray(o, this.args, true)) { - return this.compileSplat(o, code); + var arg, argIndex, compiledArgs, compiledArray, fragments, preface, _i, _len, _ref2, _ref3; + if ((_ref2 = this.variable) != null) { + _ref2.front = this.front; } - args = this.filterImplicitObjects(this.args); - args = ((function() { - var _i, _len, _results; - _results = []; - for (_i = 0, _len = args.length; _i < _len; _i++) { - arg = args[_i]; - _results.push(arg.compile(o, LEVEL_LIST)); + compiledArray = Splat.compileSplattedArray(o, this.args, true); + if (compiledArray.length) { + return this.compileSplat(o, compiledArray); + } + compiledArgs = []; + _ref3 = this.args; + for (argIndex = _i = 0, _len = _ref3.length; _i < _len; argIndex = ++_i) { + arg = _ref3[argIndex]; + if (argIndex) { + compiledArgs.push(this.makeCode(", ")); } - return _results; - })()).join(', '); - if (this.isSuper) { - return this.superReference(o) + (".call(this" + (args && ', ' + args) + ")"); - } else { - return (this.isNew ? 'new ' : '') + this.variable.compile(o, LEVEL_ACCESS) + ("(" + args + ")"); + compiledArgs.push.apply(compiledArgs, arg.compileToFragments(o, LEVEL_LIST)); } - }; - - Call.prototype.compileSuper = function(args, o) { - return "" + (this.superReference(o)) + ".call(this" + (args.length ? ', ' : '') + args + ")"; + fragments = []; + if (this.isSuper) { + preface = this.superReference(o) + (".call(" + (this.superThis(o))); + if (compiledArgs.length) { + preface += ", "; + } + fragments.push(this.makeCode(preface)); + } else { + if (this.isNew) { + fragments.push(this.makeCode('new ')); + } + fragments.push.apply(fragments, this.variable.compileToFragments(o, LEVEL_ACCESS)); + fragments.push(this.makeCode("(")); + } + fragments.push.apply(fragments, compiledArgs); + fragments.push(this.makeCode(")")); + return fragments; }; Call.prototype.compileSplat = function(o, splatArgs) { - var base, fun, idt, name, ref; + var answer, base, fun, idt, name, ref; if (this.isSuper) { - return "" + (this.superReference(o)) + ".apply(this, " + splatArgs + ")"; + return [].concat(this.makeCode("" + (this.superReference(o)) + ".apply(" + (this.superThis(o)) + ", "), splatArgs, this.makeCode(")")); } if (this.isNew) { idt = this.tab + TAB; - return "(function(func, args, ctor) {\n" + idt + "ctor.prototype = func.prototype;\n" + idt + "var child = new ctor, result = func.apply(child, args), t = typeof result;\n" + idt + "return t == \"object\" || t == \"function\" ? result || child : child;\n" + this.tab + "})(" + (this.variable.compile(o, LEVEL_LIST)) + ", " + splatArgs + ", function(){})"; + return [].concat(this.makeCode("(function(func, args, ctor) {\n" + idt + "ctor.prototype = func.prototype;\n" + idt + "var child = new ctor, result = func.apply(child, args);\n" + idt + "return Object(result) === result ? result : child;\n" + this.tab + "})("), this.variable.compileToFragments(o, LEVEL_LIST), this.makeCode(", "), splatArgs, this.makeCode(", function(){})")); } + answer = []; base = new Value(this.variable); if ((name = base.properties.pop()) && base.isComplex()) { ref = o.scope.freeVariable('ref'); - fun = "(" + ref + " = " + (base.compile(o, LEVEL_LIST)) + ")" + (name.compile(o)); + answer = answer.concat(this.makeCode("(" + ref + " = "), base.compileToFragments(o, LEVEL_LIST), this.makeCode(")"), name.compileToFragments(o)); } else { - fun = base.compile(o, LEVEL_ACCESS); - if (SIMPLENUM.test(fun)) fun = "(" + fun + ")"; + fun = base.compileToFragments(o, LEVEL_ACCESS); + if (SIMPLENUM.test(fragmentsToText(fun))) { + fun = this.wrapInBraces(fun); + } if (name) { - ref = fun; - fun += name.compile(o); + ref = fragmentsToText(fun); + fun.push.apply(fun, name.compileToFragments(o)); } else { ref = 'null'; } + answer = answer.concat(fun); } - return "" + fun + ".apply(" + ref + ", " + splatArgs + ")"; + return answer = answer.concat(this.makeCode(".apply(" + ref + ", "), splatArgs, this.makeCode(")")); }; return Call; @@ -5950,11 +5394,8 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff })(Base); exports.Extends = Extends = (function(_super) { - __extends(Extends, _super); - Extends.name = 'Extends'; - function Extends(child, parent) { this.child = child; this.parent = parent; @@ -5962,8 +5403,8 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff Extends.prototype.children = ['child', 'parent']; - Extends.prototype.compile = function(o) { - return new Call(new Value(new Literal(utility('extends'))), [this.child, this.parent]).compile(o); + Extends.prototype.compileToFragments = function(o) { + return new Call(new Value(new Literal(utility('extends'))), [this.child, this.parent]).compileToFragments(o); }; return Extends; @@ -5971,11 +5412,8 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff })(Base); exports.Access = Access = (function(_super) { - __extends(Access, _super); - Access.name = 'Access'; - function Access(name, tag) { this.name = name; this.name.asKey = true; @@ -5984,14 +5422,16 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff Access.prototype.children = ['name']; - Access.prototype.compile = function(o) { + Access.prototype.compileToFragments = function(o) { var name; - name = this.name.compile(o); - if (IDENTIFIER.test(name)) { - return "." + name; + name = this.name.compileToFragments(o); + if (IDENTIFIER.test(fragmentsToText(name))) { + name.unshift(this.makeCode(".")); } else { - return "[" + name + "]"; + name.unshift(this.makeCode("[")); + name.push(this.makeCode("]")); } + return name; }; Access.prototype.isComplex = NO; @@ -6001,19 +5441,16 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff })(Base); exports.Index = Index = (function(_super) { - __extends(Index, _super); - Index.name = 'Index'; - function Index(index) { this.index = index; } Index.prototype.children = ['index']; - Index.prototype.compile = function(o) { - return "[" + (this.index.compile(o, LEVEL_PAREN)) + "]"; + Index.prototype.compileToFragments = function(o) { + return [].concat(this.makeCode("["), this.index.compileToFragments(o, LEVEL_PAREN), this.makeCode("]")); }; Index.prototype.isComplex = function() { @@ -6025,11 +5462,8 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff })(Base); exports.Range = Range = (function(_super) { - __extends(Range, _super); - Range.name = 'Range'; - Range.prototype.children = ['from', 'to']; function Range(from, to, tag) { @@ -6044,32 +5478,46 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff o = merge(o, { top: true }); - _ref2 = this.from.cache(o, LEVEL_LIST), this.fromC = _ref2[0], this.fromVar = _ref2[1]; - _ref3 = this.to.cache(o, LEVEL_LIST), this.toC = _ref3[0], this.toVar = _ref3[1]; + _ref2 = this.cacheToCodeFragments(this.from.cache(o, LEVEL_LIST)), this.fromC = _ref2[0], this.fromVar = _ref2[1]; + _ref3 = this.cacheToCodeFragments(this.to.cache(o, LEVEL_LIST)), this.toC = _ref3[0], this.toVar = _ref3[1]; if (step = del(o, 'step')) { - _ref4 = step.cache(o, LEVEL_LIST), this.step = _ref4[0], this.stepVar = _ref4[1]; + _ref4 = this.cacheToCodeFragments(step.cache(o, LEVEL_LIST)), this.step = _ref4[0], this.stepVar = _ref4[1]; + } + _ref5 = [this.fromVar.match(NUMBER), this.toVar.match(NUMBER)], this.fromNum = _ref5[0], this.toNum = _ref5[1]; + if (this.stepVar) { + return this.stepNum = this.stepVar.match(NUMBER); } - _ref5 = [this.fromVar.match(SIMPLENUM), this.toVar.match(SIMPLENUM)], this.fromNum = _ref5[0], this.toNum = _ref5[1]; - if (this.stepVar) return this.stepNum = this.stepVar.match(SIMPLENUM); }; Range.prototype.compileNode = function(o) { var cond, condPart, from, gt, idx, idxName, known, lt, namedIndex, stepPart, to, varPart, _ref2, _ref3; - if (!this.fromVar) this.compileVariables(o); - if (!o.index) return this.compileArray(o); + if (!this.fromVar) { + this.compileVariables(o); + } + if (!o.index) { + return this.compileArray(o); + } known = this.fromNum && this.toNum; idx = del(o, 'index'); idxName = del(o, 'name'); namedIndex = idxName && idxName !== idx; varPart = "" + idx + " = " + this.fromC; - if (this.toC !== this.toVar) varPart += ", " + this.toC; - if (this.step !== this.stepVar) varPart += ", " + this.step; + if (this.toC !== this.toVar) { + varPart += ", " + this.toC; + } + if (this.step !== this.stepVar) { + varPart += ", " + this.step; + } _ref2 = ["" + idx + " <" + this.equals, "" + idx + " >" + this.equals], lt = _ref2[0], gt = _ref2[1]; - condPart = this.stepNum ? +this.stepNum > 0 ? "" + lt + " " + this.toVar : "" + gt + " " + this.toVar : known ? ((_ref3 = [+this.fromNum, +this.toNum], from = _ref3[0], to = _ref3[1], _ref3), from <= to ? "" + lt + " " + to : "" + gt + " " + to) : (cond = "" + this.fromVar + " <= " + this.toVar, "" + cond + " ? " + lt + " " + this.toVar + " : " + gt + " " + this.toVar); + condPart = this.stepNum ? parseNum(this.stepNum[0]) > 0 ? "" + lt + " " + this.toVar : "" + gt + " " + this.toVar : known ? ((_ref3 = [parseNum(this.fromNum[0]), parseNum(this.toNum[0])], from = _ref3[0], to = _ref3[1], _ref3), from <= to ? "" + lt + " " + to : "" + gt + " " + to) : (cond = this.stepVar ? "" + this.stepVar + " > 0" : "" + this.fromVar + " <= " + this.toVar, "" + cond + " ? " + lt + " " + this.toVar + " : " + gt + " " + this.toVar); stepPart = this.stepVar ? "" + idx + " += " + this.stepVar : known ? namedIndex ? from <= to ? "++" + idx : "--" + idx : from <= to ? "" + idx + "++" : "" + idx + "--" : namedIndex ? "" + cond + " ? ++" + idx + " : --" + idx : "" + cond + " ? " + idx + "++ : " + idx + "--"; - if (namedIndex) varPart = "" + idxName + " = " + varPart; - if (namedIndex) stepPart = "" + idxName + " = " + stepPart; - return "" + varPart + "; " + condPart + "; " + stepPart; + if (namedIndex) { + varPart = "" + idxName + " = " + varPart; + } + if (namedIndex) { + stepPart = "" + idxName + " = " + stepPart; + } + return [this.makeCode("" + varPart + "; " + condPart + "; " + stepPart)]; }; Range.prototype.compileArray = function(o) { @@ -6080,8 +5528,10 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff for (var _i = _ref2 = +this.fromNum, _ref3 = +this.toNum; _ref2 <= _ref3 ? _i <= _ref3 : _i >= _ref3; _ref2 <= _ref3 ? _i++ : _i--){ _results.push(_i); } return _results; }).apply(this); - if (this.exclusive) range.pop(); - return "[" + (range.join(', ')) + "]"; + if (this.exclusive) { + range.pop(); + } + return [this.makeCode("[" + (range.join(', ')) + "]")]; } idt = this.tab + TAB; i = o.scope.freeVariable('i'); @@ -6089,7 +5539,7 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff pre = "\n" + idt + result + " = [];"; if (this.fromNum && this.toNum) { o.index = i; - body = this.compileNode(o); + body = fragmentsToText(this.compileNode(o)); } else { vars = ("" + i + " = " + this.fromC) + (this.toC !== this.toVar ? ", " + this.toC : ''); cond = "" + this.fromVar + " <= " + this.toVar; @@ -6097,12 +5547,12 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff } post = "{ " + result + ".push(" + i + "); }\n" + idt + "return " + result + ";\n" + o.indent; hasArgs = function(node) { - return node != null ? node.contains(function(n) { - return n instanceof Literal && n.value === 'arguments' && !n.asKey; - }) : void 0; + return node != null ? node.contains(isLiteralArguments) : void 0; }; - if (hasArgs(this.from) || hasArgs(this.to)) args = ', arguments'; - return "(function() {" + pre + "\n" + idt + "for (" + body + ")" + post + "}).apply(this" + (args != null ? args : '') + ")"; + if (hasArgs(this.from) || hasArgs(this.to)) { + args = ', arguments'; + } + return [this.makeCode("(function() {" + pre + "\n" + idt + "for (" + body + ")" + post + "}).apply(this" + (args != null ? args : '') + ")")]; }; return Range; @@ -6110,11 +5560,8 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff })(Base); exports.Slice = Slice = (function(_super) { - __extends(Slice, _super); - Slice.name = 'Slice'; - Slice.prototype.children = ['range']; function Slice(range) { @@ -6123,14 +5570,17 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff } Slice.prototype.compileNode = function(o) { - var compiled, from, fromStr, to, toStr, _ref2; + var compiled, compiledText, from, fromCompiled, to, toStr, _ref2; _ref2 = this.range, to = _ref2.to, from = _ref2.from; - fromStr = from && from.compile(o, LEVEL_PAREN) || '0'; - compiled = to && to.compile(o, LEVEL_PAREN); - if (to && !(!this.range.exclusive && +compiled === -1)) { - toStr = ', ' + (this.range.exclusive ? compiled : SIMPLENUM.test(compiled) ? "" + (+compiled + 1) : (compiled = to.compile(o, LEVEL_ACCESS), "" + compiled + " + 1 || 9e9")); + fromCompiled = from && from.compileToFragments(o, LEVEL_PAREN) || [this.makeCode('0')]; + if (to) { + compiled = to.compileToFragments(o, LEVEL_PAREN); + compiledText = fragmentsToText(compiled); + if (!(!this.range.exclusive && +compiledText === -1)) { + toStr = ', ' + (this.range.exclusive ? compiledText : SIMPLENUM.test(compiledText) ? "" + (+compiledText + 1) : (compiled = to.compileToFragments(o, LEVEL_ACCESS), "+" + (fragmentsToText(compiled)) + " + 1 || 9e9")); + } } - return ".slice(" + fromStr + (toStr || '') + ")"; + return [this.makeCode(".slice(" + (fragmentsToText(fromCompiled)) + (toStr || '') + ")")]; }; return Slice; @@ -6138,11 +5588,8 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff })(Base); exports.Obj = Obj = (function(_super) { - __extends(Obj, _super); - Obj.name = 'Obj'; - function Obj(props, generated) { this.generated = generated != null ? generated : false; this.objects = this.properties = props || []; @@ -6151,56 +5598,52 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff Obj.prototype.children = ['properties']; Obj.prototype.compileNode = function(o) { - var i, idt, indent, join, lastNoncom, node, obj, prop, propName, propNames, props, _i, _j, _len, _len1, _ref2; + var answer, i, idt, indent, join, lastNoncom, node, prop, props, _i, _j, _len, _len1; props = this.properties; - propNames = []; - _ref2 = this.properties; - for (_i = 0, _len = _ref2.length; _i < _len; _i++) { - prop = _ref2[_i]; - if (prop.isComplex()) prop = prop.variable; - if (prop != null) { - propName = prop.unwrapAll().value.toString(); - if (__indexOf.call(propNames, propName) >= 0) { - throw SyntaxError("multiple object literal properties named \"" + propName + "\""); - } - propNames.push(propName); - } + if (!props.length) { + return [this.makeCode(this.front ? '({})' : '{}')]; } - if (!props.length) return (this.front ? '({})' : '{}'); if (this.generated) { - for (_j = 0, _len1 = props.length; _j < _len1; _j++) { - node = props[_j]; + for (_i = 0, _len = props.length; _i < _len; _i++) { + node = props[_i]; if (node instanceof Value) { - throw new Error('cannot have an implicit value in an implicit object'); + node.error('cannot have an implicit value in an implicit object'); } } } idt = o.indent += TAB; lastNoncom = this.lastNonComment(this.properties); - props = (function() { - var _k, _len2, _results; - _results = []; - for (i = _k = 0, _len2 = props.length; _k < _len2; i = ++_k) { - prop = props[i]; - join = i === props.length - 1 ? '' : prop === lastNoncom || prop instanceof Comment ? '\n' : ',\n'; - indent = prop instanceof Comment ? '' : idt; - if (prop instanceof Value && prop["this"]) { - prop = new Assign(prop.properties[0].name, prop, 'object'); - } - if (!(prop instanceof Comment)) { - if (!(prop instanceof Assign)) prop = new Assign(prop, prop, 'object'); - (prop.variable.base || prop.variable).asKey = true; - } - _results.push(indent + prop.compile(o, LEVEL_TOP) + join); + answer = []; + for (i = _j = 0, _len1 = props.length; _j < _len1; i = ++_j) { + prop = props[i]; + join = i === props.length - 1 ? '' : prop === lastNoncom || prop instanceof Comment ? '\n' : ',\n'; + indent = prop instanceof Comment ? '' : idt; + if (prop instanceof Assign && prop.variable instanceof Value && prop.variable.hasProperties()) { + prop.variable.error('Invalid object key'); } - return _results; - })(); - props = props.join(''); - obj = "{" + (props && '\n' + props + '\n' + this.tab) + "}"; + if (prop instanceof Value && prop["this"]) { + prop = new Assign(prop.properties[0].name, prop, 'object'); + } + if (!(prop instanceof Comment)) { + if (!(prop instanceof Assign)) { + prop = new Assign(prop, prop, 'object'); + } + (prop.variable.base || prop.variable).asKey = true; + } + if (indent) { + answer.push(this.makeCode(indent)); + } + answer.push.apply(answer, prop.compileToFragments(o, LEVEL_TOP)); + if (join) { + answer.push(this.makeCode(join)); + } + } + answer.unshift(this.makeCode("{" + (props.length && '\n'))); + answer.push(this.makeCode("" + (props.length && '\n' + this.tab) + "}")); if (this.front) { - return "(" + obj + ")"; + return this.wrapInBraces(answer); } else { - return obj; + return answer; } }; @@ -6209,7 +5652,9 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff _ref2 = this.properties; for (_i = 0, _len = _ref2.length; _i < _len; _i++) { prop = _ref2[_i]; - if (prop.assigns(name)) return true; + if (prop.assigns(name)) { + return true; + } } return false; }; @@ -6219,39 +5664,50 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff })(Base); exports.Arr = Arr = (function(_super) { - __extends(Arr, _super); - Arr.name = 'Arr'; - function Arr(objs) { this.objects = objs || []; } Arr.prototype.children = ['objects']; - Arr.prototype.filterImplicitObjects = Call.prototype.filterImplicitObjects; - Arr.prototype.compileNode = function(o) { - var code, obj, objs; - if (!this.objects.length) return '[]'; + var answer, compiledObjs, fragments, index, obj, _i, _len; + if (!this.objects.length) { + return [this.makeCode('[]')]; + } o.indent += TAB; - objs = this.filterImplicitObjects(this.objects); - if (code = Splat.compileSplattedArray(o, objs)) return code; - code = ((function() { - var _i, _len, _results; + answer = Splat.compileSplattedArray(o, this.objects); + if (answer.length) { + return answer; + } + answer = []; + compiledObjs = (function() { + var _i, _len, _ref2, _results; + _ref2 = this.objects; _results = []; - for (_i = 0, _len = objs.length; _i < _len; _i++) { - obj = objs[_i]; - _results.push(obj.compile(o, LEVEL_LIST)); + for (_i = 0, _len = _ref2.length; _i < _len; _i++) { + obj = _ref2[_i]; + _results.push(obj.compileToFragments(o, LEVEL_LIST)); } return _results; - })()).join(', '); - if (code.indexOf('\n') >= 0) { - return "[\n" + o.indent + code + "\n" + this.tab + "]"; - } else { - return "[" + code + "]"; + }).call(this); + for (index = _i = 0, _len = compiledObjs.length; _i < _len; index = ++_i) { + fragments = compiledObjs[index]; + if (index) { + answer.push(this.makeCode(", ")); + } + answer.push.apply(answer, fragments); } + if (fragmentsToText(answer).indexOf('\n') >= 0) { + answer.unshift(this.makeCode("[\n" + o.indent)); + answer.push(this.makeCode("\n" + this.tab + "]")); + } else { + answer.unshift(this.makeCode("[")); + answer.push(this.makeCode("]")); + } + return answer; }; Arr.prototype.assigns = function(name) { @@ -6259,7 +5715,9 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff _ref2 = this.objects; for (_i = 0, _len = _ref2.length; _i < _len; _i++) { obj = _ref2[_i]; - if (obj.assigns(name)) return true; + if (obj.assigns(name)) { + return true; + } } return false; }; @@ -6269,11 +5727,8 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff })(Base); exports.Class = Class = (function(_super) { - __extends(Class, _super); - Class.name = 'Class'; - function Class(variable, parent, body) { this.variable = variable; this.parent = parent; @@ -6286,37 +5741,39 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff Class.prototype.determineName = function() { var decl, tail; - if (!this.variable) return null; + if (!this.variable) { + return null; + } decl = (tail = last(this.variable.properties)) ? tail instanceof Access && tail.name.value : this.variable.base.value; if (__indexOf.call(STRICT_PROSCRIBED, decl) >= 0) { - throw SyntaxError("variable name may not be " + decl); + this.variable.error("class variable name may not be " + decl); } return decl && (decl = IDENTIFIER.test(decl) && decl); }; Class.prototype.setContext = function(name) { return this.body.traverseChildren(false, function(node) { - if (node.classBody) return false; + if (node.classBody) { + return false; + } if (node instanceof Literal && node.value === 'this') { return node.value = name; } else if (node instanceof Code) { node.klass = name; - if (node.bound) return node.context = name; + if (node.bound) { + return node.context = name; + } } }); }; Class.prototype.addBoundFunctions = function(o) { - var bvar, lhs, _i, _len, _ref2, _results; - if (this.boundFuncs.length) { - _ref2 = this.boundFuncs; - _results = []; - for (_i = 0, _len = _ref2.length; _i < _len; _i++) { - bvar = _ref2[_i]; - lhs = (new Value(new Literal("this"), [new Access(bvar)])).compile(o); - _results.push(this.ctor.body.unshift(new Literal("" + lhs + " = " + (utility('bind')) + "(" + lhs + ", this)"))); - } - return _results; + var bvar, lhs, _i, _len, _ref2; + _ref2 = this.boundFuncs; + for (_i = 0, _len = _ref2.length; _i < _len; _i++) { + bvar = _ref2[_i]; + lhs = (new Value(new Literal("this"), [new Access(bvar)])).compile(o); + this.ctor.body.unshift(new Literal("" + lhs + " = " + (utility('bind')) + "(" + lhs + ", this)")); } }; @@ -6333,21 +5790,20 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff func = assign.value; if (base.value === 'constructor') { if (this.ctor) { - throw new Error('cannot define more than one constructor in a class'); + assign.error('cannot define more than one constructor in a class'); } if (func.bound) { - throw new Error('cannot define a constructor as a bound function'); + assign.error('cannot define a constructor as a bound function'); } if (func instanceof Code) { assign = this.ctor = func; } else { - this.externalCtor = o.scope.freeVariable('class'); + this.externalCtor = o.classScope.freeVariable('class'); assign = new Assign(new Literal(this.externalCtor), func); } } else { if (assign.variable["this"]) { func["static"] = true; - if (func.bound) func.context = name; } else { assign.variable = new Value(new Literal(name), [new Access(new Literal('prototype')), new Access(base)]); if (func instanceof Code && func.bound) { @@ -6365,21 +5821,29 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff }; Class.prototype.walkBody = function(name, o) { - var _this = this; - return this.traverseChildren(false, function(child) { - var exps, i, node, _i, _len, _ref2; - if (child instanceof Class) return false; - if (child instanceof Block) { - _ref2 = exps = child.expressions; - for (i = _i = 0, _len = _ref2.length; _i < _len; i = ++_i) { - node = _ref2[i]; - if (node instanceof Value && node.isObject(true)) { - exps[i] = _this.addProperties(node, name, o); - } + return this.traverseChildren(false, (function(_this) { + return function(child) { + var cont, exps, i, node, _i, _len, _ref2; + cont = true; + if (child instanceof Class) { + return false; } - return child.expressions = exps = flatten(exps); - } - }); + if (child instanceof Block) { + _ref2 = exps = child.expressions; + for (i = _i = 0, _len = _ref2.length; _i < _len; i = ++_i) { + node = _ref2[i]; + if (node instanceof Assign && node.variable.looksStatic(name)) { + node.value["static"] = true; + } else if (node instanceof Value && node.isObject(true)) { + cont = false; + exps[i] = _this.addProperties(node, name, o); + } + } + child.expressions = exps = flatten(exps); + } + return cont && !(child instanceof Class); + }; + })(this)); }; Class.prototype.hoistDirectivePrologue = function() { @@ -6395,11 +5859,10 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff Class.prototype.ensureConstructor = function(name) { if (!this.ctor) { this.ctor = new Code; - if (this.parent) { - this.ctor.body.push(new Literal("" + name + ".__super__.constructor.apply(this, arguments)")); - } if (this.externalCtor) { this.ctor.body.push(new Literal("" + this.externalCtor + ".apply(this, arguments)")); + } else if (this.parent) { + this.ctor.body.push(new Literal("" + name + ".__super__.constructor.apply(this, arguments)")); } this.ctor.body.makeReturn(); this.body.expressions.unshift(this.ctor); @@ -6410,34 +5873,40 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff }; Class.prototype.compileNode = function(o) { - var call, decl, klass, lname, name, params, _ref2; - decl = this.determineName(); - name = decl || '_Class'; - if (name.reserved) name = "_" + name; + var args, argumentsNode, func, jumpNode, klass, lname, name, superClass, _ref2; + if (jumpNode = this.body.jumps()) { + jumpNode.error('Class bodies cannot contain pure statements'); + } + if (argumentsNode = this.body.contains(isLiteralArguments)) { + argumentsNode.error("Class bodies shouldn't reference arguments"); + } + name = this.determineName() || '_Class'; + if (name.reserved) { + name = "_" + name; + } lname = new Literal(name); + func = new Code([], Block.wrap([this.body])); + args = []; + o.classScope = func.makeScope(o.scope); this.hoistDirectivePrologue(); this.setContext(name); this.walkBody(name, o); this.ensureConstructor(name); - this.body.spaced = true; - if (!(this.ctor instanceof Code)) this.body.expressions.unshift(this.ctor); - if (decl) { - this.body.expressions.unshift(new Assign(new Value(new Literal(name), [new Access(new Literal('name'))]), new Literal("'" + name + "'"))); - } - this.body.expressions.push(lname); - (_ref2 = this.body.expressions).unshift.apply(_ref2, this.directives); this.addBoundFunctions(o); - call = Closure.wrap(this.body); + this.body.spaced = true; + this.body.expressions.push(lname); if (this.parent) { - this.superClass = new Literal(o.scope.freeVariable('super', false)); - this.body.expressions.unshift(new Extends(lname, this.superClass)); - call.args.push(this.parent); - params = call.variable.params || call.variable.base.params; - params.push(new Param(this.superClass)); + superClass = new Literal(o.classScope.freeVariable('super', false)); + this.body.expressions.unshift(new Extends(lname, superClass)); + func.params.push(new Param(superClass)); + args.push(this.parent); } - klass = new Parens(call, true); - if (this.variable) klass = new Assign(this.variable, klass); - return klass.compile(o); + (_ref2 = this.body.expressions).unshift.apply(_ref2, this.directives); + klass = new Parens(new Call(func, args)); + if (this.variable) { + klass = new Assign(this.variable, klass); + } + return klass.compileToFragments(o); }; return Class; @@ -6445,11 +5914,8 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff })(Base); exports.Assign = Assign = (function(_super) { - __extends(Assign, _super); - Assign.name = 'Assign'; - function Assign(variable, value, context, options) { var forbidden, name, _ref2; this.variable = variable; @@ -6459,7 +5925,7 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff this.subpattern = options && options.subpattern; forbidden = (_ref2 = (name = this.variable.unwrapAll().value), __indexOf.call(STRICT_PROSCRIBED, _ref2) >= 0); if (forbidden && this.context !== 'object') { - throw SyntaxError("variable name may not be \"" + name + "\""); + this.variable.error("variable name may not be \"" + name + "\""); } } @@ -6478,20 +5944,24 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff }; Assign.prototype.compileNode = function(o) { - var isValue, match, name, val, varBase, _ref2, _ref3, _ref4, _ref5; + var answer, compiledName, isValue, match, name, val, varBase, _ref2, _ref3, _ref4; if (isValue = this.variable instanceof Value) { if (this.variable.isArray() || this.variable.isObject()) { return this.compilePatternMatch(o); } - if (this.variable.isSplice()) return this.compileSplice(o); + if (this.variable.isSplice()) { + return this.compileSplice(o); + } if ((_ref2 = this.context) === '||=' || _ref2 === '&&=' || _ref2 === '?=') { return this.compileConditional(o); } } - name = this.variable.compile(o, LEVEL_LIST); + compiledName = this.variable.compileToFragments(o, LEVEL_LIST); + name = fragmentsToText(compiledName); if (!this.context) { - if (!(varBase = this.variable.unwrapAll()).isAssignable()) { - throw SyntaxError("\"" + (this.variable.compile(o)) + "\" cannot be assigned."); + varBase = this.variable.unwrapAll(); + if (!varBase.isAssignable()) { + this.variable.error("\"" + (this.variable.compile(o)) + "\" cannot be assigned"); } if (!(typeof varBase.hasProperties === "function" ? varBase.hasProperties() : void 0)) { if (this.param) { @@ -6502,28 +5972,32 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff } } if (this.value instanceof Code && (match = METHOD_DEF.exec(name))) { - if (match[1]) this.value.klass = match[1]; - this.value.name = (_ref3 = (_ref4 = (_ref5 = match[2]) != null ? _ref5 : match[3]) != null ? _ref4 : match[4]) != null ? _ref3 : match[5]; + if (match[2]) { + this.value.klass = match[1]; + } + this.value.name = (_ref3 = (_ref4 = match[3]) != null ? _ref4 : match[4]) != null ? _ref3 : match[5]; } - val = this.value.compile(o, LEVEL_LIST); - if (this.context === 'object') return "" + name + ": " + val; - val = name + (" " + (this.context || '=') + " ") + val; + val = this.value.compileToFragments(o, LEVEL_LIST); + if (this.context === 'object') { + return compiledName.concat(this.makeCode(": "), val); + } + answer = compiledName.concat(this.makeCode(" " + (this.context || '=') + " "), val); if (o.level <= LEVEL_LIST) { - return val; + return answer; } else { - return "(" + val + ")"; + return this.wrapInBraces(answer); } }; Assign.prototype.compilePatternMatch = function(o) { - var acc, assigns, code, i, idx, isObject, ivar, name, obj, objects, olen, ref, rest, splat, top, val, value, vvar, _i, _len, _ref2, _ref3, _ref4, _ref5, _ref6, _ref7, _ref8; + var acc, assigns, code, fragments, i, idx, isObject, ivar, name, obj, objects, olen, ref, rest, splat, top, val, value, vvar, vvarText, _i, _len, _ref2, _ref3, _ref4, _ref5, _ref6, _ref7; top = o.level === LEVEL_TOP; value = this.value; objects = this.variable.base.objects; if (!(olen = objects.length)) { - code = value.compile(o); + code = value.compileToFragments(o); if (o.level >= LEVEL_OP) { - return "(" + code + ")"; + return this.wrapInBraces(code); } else { return code; } @@ -6533,38 +6007,36 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff if (obj instanceof Assign) { _ref2 = obj, (_ref3 = _ref2.variable, idx = _ref3.base), obj = _ref2.value; } else { - if (obj.base instanceof Parens) { - _ref4 = new Value(obj.unwrapAll()).cacheReference(o), obj = _ref4[0], idx = _ref4[1]; - } else { - idx = isObject ? obj["this"] ? obj.properties[0].name : obj : new Literal(0); - } + idx = isObject ? obj["this"] ? obj.properties[0].name : obj : new Literal(0); } acc = IDENTIFIER.test(idx.unwrap().value || 0); value = new Value(value); value.properties.push(new (acc ? Access : Index)(idx)); - if (_ref5 = obj.unwrap().value, __indexOf.call(RESERVED, _ref5) >= 0) { - throw new SyntaxError("assignment to a reserved word: " + (obj.compile(o)) + " = " + (value.compile(o))); + if (_ref4 = obj.unwrap().value, __indexOf.call(RESERVED, _ref4) >= 0) { + obj.error("assignment to a reserved word: " + (obj.compile(o))); } return new Assign(obj, value, null, { param: this.param - }).compile(o, LEVEL_TOP); + }).compileToFragments(o, LEVEL_TOP); } - vvar = value.compile(o, LEVEL_LIST); + vvar = value.compileToFragments(o, LEVEL_LIST); + vvarText = fragmentsToText(vvar); assigns = []; splat = false; - if (!IDENTIFIER.test(vvar) || this.variable.assigns(vvar)) { - assigns.push("" + (ref = o.scope.freeVariable('ref')) + " = " + vvar); - vvar = ref; + if (!IDENTIFIER.test(vvarText) || this.variable.assigns(vvarText)) { + assigns.push([this.makeCode("" + (ref = o.scope.freeVariable('ref')) + " = ")].concat(__slice.call(vvar))); + vvar = [this.makeCode(ref)]; + vvarText = ref; } for (i = _i = 0, _len = objects.length; _i < _len; i = ++_i) { obj = objects[i]; idx = i; if (isObject) { if (obj instanceof Assign) { - _ref6 = obj, (_ref7 = _ref6.variable, idx = _ref7.base), obj = _ref6.value; + _ref5 = obj, (_ref6 = _ref5.variable, idx = _ref6.base), obj = _ref5.value; } else { if (obj.base instanceof Parens) { - _ref8 = new Value(obj.unwrapAll()).cacheReference(o), obj = _ref8[0], idx = _ref8[1]; + _ref7 = new Value(obj.unwrapAll()).cacheReference(o), obj = _ref7[0], idx = _ref7[1]; } else { idx = obj["this"] ? obj.properties[0].name : obj; } @@ -6573,10 +6045,10 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff if (!splat && obj instanceof Splat) { name = obj.name.unwrap().value; obj = obj.unwrap(); - val = "" + olen + " <= " + vvar + ".length ? " + (utility('slice')) + ".call(" + vvar + ", " + i; + val = "" + olen + " <= " + vvarText + ".length ? " + (utility('slice')) + ".call(" + vvarText + ", " + i; if (rest = olen - i - 1) { ivar = o.scope.freeVariable('i'); - val += ", " + ivar + " = " + vvar + ".length - " + rest + ") : (" + ivar + " = " + i + ", [])"; + val += ", " + ivar + " = " + vvarText + ".length - " + rest + ") : (" + ivar + " = " + i + ", [])"; } else { val += ") : []"; } @@ -6585,8 +6057,7 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff } else { name = obj.unwrap().value; if (obj instanceof Splat) { - obj = obj.name.compile(o); - throw new SyntaxError("multiple splats are disallowed in an assignment: " + obj + "..."); + obj.error("multiple splats are disallowed in an assignment"); } if (typeof idx === 'number') { idx = new Literal(splat || idx); @@ -6594,57 +6065,78 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff } else { acc = isObject && IDENTIFIER.test(idx.unwrap().value || 0); } - val = new Value(new Literal(vvar), [new (acc ? Access : Index)(idx)]); + val = new Value(new Literal(vvarText), [new (acc ? Access : Index)(idx)]); } if ((name != null) && __indexOf.call(RESERVED, name) >= 0) { - throw new SyntaxError("assignment to a reserved word: " + (obj.compile(o)) + " = " + (val.compile(o))); + obj.error("assignment to a reserved word: " + (obj.compile(o))); } assigns.push(new Assign(obj, val, null, { param: this.param, subpattern: true - }).compile(o, LEVEL_LIST)); + }).compileToFragments(o, LEVEL_LIST)); } - if (!(top || this.subpattern)) assigns.push(vvar); - code = assigns.join(', '); + if (!(top || this.subpattern)) { + assigns.push(vvar); + } + fragments = this.joinFragmentArrays(assigns, ', '); if (o.level < LEVEL_LIST) { - return code; + return fragments; } else { - return "(" + code + ")"; + return this.wrapInBraces(fragments); } }; Assign.prototype.compileConditional = function(o) { - var left, right, _ref2; + var fragments, left, right, _ref2; _ref2 = this.variable.cacheReference(o), left = _ref2[0], right = _ref2[1]; - if (left.base instanceof Literal && left.base.value !== "this" && !o.scope.check(left.base.value)) { - throw new Error("the variable \"" + left.base.value + "\" can't be assigned with " + this.context + " because it has not been defined."); + if (!left.properties.length && left.base instanceof Literal && left.base.value !== "this" && !o.scope.check(left.base.value)) { + this.variable.error("the variable \"" + left.base.value + "\" can't be assigned with " + this.context + " because it has not been declared before"); + } + if (__indexOf.call(this.context, "?") >= 0) { + o.isExistentialEquals = true; + return new If(new Existence(left), right, { + type: 'if' + }).addElse(new Assign(right, this.value, '=')).compileToFragments(o); + } else { + fragments = new Op(this.context.slice(0, -1), left, new Assign(right, this.value, '=')).compileToFragments(o); + if (o.level <= LEVEL_LIST) { + return fragments; + } else { + return this.wrapInBraces(fragments); + } } - if (__indexOf.call(this.context, "?") >= 0) o.isExistentialEquals = true; - return new Op(this.context.slice(0, -1), left, new Assign(right, this.value, '=')).compile(o); }; Assign.prototype.compileSplice = function(o) { - var code, exclusive, from, fromDecl, fromRef, name, to, valDef, valRef, _ref2, _ref3, _ref4; + var answer, exclusive, from, fromDecl, fromRef, name, to, valDef, valRef, _ref2, _ref3, _ref4; _ref2 = this.variable.properties.pop().range, from = _ref2.from, to = _ref2.to, exclusive = _ref2.exclusive; name = this.variable.compile(o); - _ref3 = (from != null ? from.cache(o, LEVEL_OP) : void 0) || ['0', '0'], fromDecl = _ref3[0], fromRef = _ref3[1]; + if (from) { + _ref3 = this.cacheToCodeFragments(from.cache(o, LEVEL_OP)), fromDecl = _ref3[0], fromRef = _ref3[1]; + } else { + fromDecl = fromRef = '0'; + } if (to) { - if ((from != null ? from.isSimpleNumber() : void 0) && to.isSimpleNumber()) { - to = +to.compile(o) - +fromRef; - if (!exclusive) to += 1; + if (from instanceof Value && from.isSimpleNumber() && to instanceof Value && to.isSimpleNumber()) { + to = to.compile(o) - fromRef; + if (!exclusive) { + to += 1; + } } else { to = to.compile(o, LEVEL_ACCESS) + ' - ' + fromRef; - if (!exclusive) to += ' + 1'; + if (!exclusive) { + to += ' + 1'; + } } } else { to = "9e9"; } _ref4 = this.value.cache(o, LEVEL_LIST), valDef = _ref4[0], valRef = _ref4[1]; - code = "[].splice.apply(" + name + ", [" + fromDecl + ", " + to + "].concat(" + valDef + ")), " + valRef; + answer = [].concat(this.makeCode("[].splice.apply(" + name + ", [" + fromDecl + ", " + to + "].concat("), valDef, this.makeCode(")), "), valRef); if (o.level > LEVEL_TOP) { - return "(" + code + ")"; + return this.wrapInBraces(answer); } else { - return code; + return answer; } }; @@ -6653,16 +6145,12 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff })(Base); exports.Code = Code = (function(_super) { - __extends(Code, _super); - Code.name = 'Code'; - function Code(params, body, tag) { this.params = params || []; this.body = body || new Block; this.bound = tag === 'boundfunc'; - if (this.bound) this.context = '_this'; } Code.prototype.children = ['params', 'body']; @@ -6673,47 +6161,70 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff Code.prototype.jumps = NO; + Code.prototype.makeScope = function(parentScope) { + return new Scope(parentScope, this.body, this); + }; + Code.prototype.compileNode = function(o) { - var code, exprs, i, idt, lit, name, p, param, params, ref, splats, uniqs, val, wasEmpty, _i, _j, _k, _l, _len, _len1, _len2, _len3, _len4, _len5, _m, _n, _ref2, _ref3, _ref4, _ref5, _ref6, _ref7, _ref8; - o.scope = new Scope(o.scope, this.body, this); + var answer, boundfunc, code, exprs, i, lit, p, param, params, ref, splats, uniqs, val, wasEmpty, wrapper, _i, _j, _k, _l, _len, _len1, _len2, _len3, _len4, _len5, _m, _n, _ref2, _ref3, _ref4, _ref5, _ref6, _ref7; + if (this.bound && ((_ref2 = o.scope.method) != null ? _ref2.bound : void 0)) { + this.context = o.scope.method.context; + } + if (this.bound && !this.context) { + this.context = '_this'; + wrapper = new Code([new Param(new Literal(this.context))], new Block([this])); + boundfunc = new Call(wrapper, [new Literal('this')]); + boundfunc.updateLocationDataIfMissing(this.locationData); + return boundfunc.compileNode(o); + } + o.scope = del(o, 'classScope') || this.makeScope(o.scope); o.scope.shared = del(o, 'sharedScope'); o.indent += TAB; delete o.bare; delete o.isExistentialEquals; params = []; exprs = []; - _ref2 = this.paramNames(); - for (_i = 0, _len = _ref2.length; _i < _len; _i++) { - name = _ref2[_i]; - if (!o.scope.check(name)) o.scope.parameter(name); - } _ref3 = this.params; - for (_j = 0, _len1 = _ref3.length; _j < _len1; _j++) { - param = _ref3[_j]; - if (!param.splat) continue; - _ref4 = this.params; - for (_k = 0, _len2 = _ref4.length; _k < _len2; _k++) { - p = _ref4[_k]; - if (p.name.value) o.scope.add(p.name.value, 'var', true); + for (_i = 0, _len = _ref3.length; _i < _len; _i++) { + param = _ref3[_i]; + o.scope.parameter(param.asReference(o)); + } + _ref4 = this.params; + for (_j = 0, _len1 = _ref4.length; _j < _len1; _j++) { + param = _ref4[_j]; + if (!param.splat) { + continue; + } + _ref5 = this.params; + for (_k = 0, _len2 = _ref5.length; _k < _len2; _k++) { + p = _ref5[_k].name; + if (p["this"]) { + p = p.properties[0].name; + } + if (p.value) { + o.scope.add(p.value, 'var', true); + } } splats = new Assign(new Value(new Arr((function() { - var _l, _len3, _ref5, _results; - _ref5 = this.params; + var _l, _len3, _ref6, _results; + _ref6 = this.params; _results = []; - for (_l = 0, _len3 = _ref5.length; _l < _len3; _l++) { - p = _ref5[_l]; + for (_l = 0, _len3 = _ref6.length; _l < _len3; _l++) { + p = _ref6[_l]; _results.push(p.asReference(o)); } return _results; }).call(this))), new Value(new Literal('arguments'))); break; } - _ref5 = this.params; - for (_l = 0, _len3 = _ref5.length; _l < _len3; _l++) { - param = _ref5[_l]; + _ref6 = this.params; + for (_l = 0, _len3 = _ref6.length; _l < _len3; _l++) { + param = _ref6[_l]; if (param.isComplex()) { val = ref = param.asReference(o); - if (param.value) val = new Op('?', ref, param.value); + if (param.value) { + val = new Op('?', ref, param.value); + } exprs.push(new Assign(new Value(param.name), val, '=', { param: true })); @@ -6725,59 +6236,69 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff exprs.push(new If(lit, val)); } } - if (!splats) params.push(ref); + if (!splats) { + params.push(ref); + } } wasEmpty = this.body.isEmpty(); - if (splats) exprs.unshift(splats); + if (splats) { + exprs.unshift(splats); + } if (exprs.length) { - (_ref6 = this.body.expressions).unshift.apply(_ref6, exprs); + (_ref7 = this.body.expressions).unshift.apply(_ref7, exprs); } for (i = _m = 0, _len4 = params.length; _m < _len4; i = ++_m) { p = params[i]; - o.scope.parameter(params[i] = p.compile(o)); + params[i] = p.compileToFragments(o); + o.scope.parameter(fragmentsToText(params[i])); } uniqs = []; - _ref7 = this.paramNames(); - for (_n = 0, _len5 = _ref7.length; _n < _len5; _n++) { - name = _ref7[_n]; + this.eachParamName(function(name, node) { if (__indexOf.call(uniqs, name) >= 0) { - throw SyntaxError("multiple parameters named '" + name + "'"); + node.error("multiple parameters named '" + name + "'"); } - uniqs.push(name); + return uniqs.push(name); + }); + if (!(wasEmpty || this.noReturn)) { + this.body.makeReturn(); } - if (!(wasEmpty || this.noReturn)) this.body.makeReturn(); - if (this.bound) { - if ((_ref8 = o.scope.parent.method) != null ? _ref8.bound : void 0) { - this.bound = this.context = o.scope.parent.method.context; - } else if (!this["static"]) { - o.scope.parent.assign('_this', 'this'); - } - } - idt = o.indent; code = 'function'; - if (this.ctor) code += ' ' + this.name; - code += '(' + params.join(', ') + ') {'; - if (!this.body.isEmpty()) { - code += "\n" + (this.body.compileWithDeclarations(o)) + "\n" + this.tab; + if (this.ctor) { + code += ' ' + this.name; + } + code += '('; + answer = [this.makeCode(code)]; + for (i = _n = 0, _len5 = params.length; _n < _len5; i = ++_n) { + p = params[i]; + if (i) { + answer.push(this.makeCode(", ")); + } + answer.push.apply(answer, p); + } + answer.push(this.makeCode(') {')); + if (!this.body.isEmpty()) { + answer = answer.concat(this.makeCode("\n"), this.body.compileWithDeclarations(o), this.makeCode("\n" + this.tab)); + } + answer.push(this.makeCode('}')); + if (this.ctor) { + return [this.makeCode(this.tab)].concat(__slice.call(answer)); } - code += '}'; - if (this.ctor) return this.tab + code; if (this.front || (o.level >= LEVEL_ACCESS)) { - return "(" + code + ")"; + return this.wrapInBraces(answer); } else { - return code; + return answer; } }; - Code.prototype.paramNames = function() { - var names, param, _i, _len, _ref2; - names = []; + Code.prototype.eachParamName = function(iterator) { + var param, _i, _len, _ref2, _results; _ref2 = this.params; + _results = []; for (_i = 0, _len = _ref2.length; _i < _len; _i++) { param = _ref2[_i]; - names.push.apply(names, param.names()); + _results.push(param.eachName(iterator)); } - return names; + return _results; }; Code.prototype.traverseChildren = function(crossScope, func) { @@ -6791,30 +6312,29 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff })(Base); exports.Param = Param = (function(_super) { - __extends(Param, _super); - Param.name = 'Param'; - function Param(name, value, splat) { var _ref2; this.name = name; this.value = value; this.splat = splat; if (_ref2 = (name = this.name.unwrapAll().value), __indexOf.call(STRICT_PROSCRIBED, _ref2) >= 0) { - throw SyntaxError("parameter name \"" + name + "\" is not allowed"); + this.name.error("parameter name \"" + name + "\" is not allowed"); } } Param.prototype.children = ['name', 'value']; - Param.prototype.compile = function(o) { - return this.name.compile(o, LEVEL_LIST); + Param.prototype.compileToFragments = function(o) { + return this.name.compileToFragments(o, LEVEL_LIST); }; Param.prototype.asReference = function(o) { var node; - if (this.reference) return this.reference; + if (this.reference) { + return this.reference; + } node = this.name; if (node["this"]) { node = node.properties[0].name; @@ -6825,7 +6345,10 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff node = new Literal(o.scope.freeVariable('arg')); } node = new Value(node); - if (this.splat) node = new Splat(node); + if (this.splat) { + node = new Splat(node); + } + node.updateLocationDataIfMissing(this.locationData); return this.reference = node; }; @@ -6833,35 +6356,44 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff return this.name.isComplex(); }; - Param.prototype.names = function(name) { - var atParam, names, obj, _i, _len, _ref2; - if (name == null) name = this.name; + Param.prototype.eachName = function(iterator, name) { + var atParam, node, obj, _i, _len, _ref2; + if (name == null) { + name = this.name; + } atParam = function(obj) { - var value; - value = obj.properties[0].name.value; - if (value.reserved) { - return []; - } else { - return [value]; + var node; + node = obj.properties[0].name; + if (!node.value.reserved) { + return iterator(node.value, node); } }; - if (name instanceof Literal) return [name.value]; - if (name instanceof Value) return atParam(name); - names = []; + if (name instanceof Literal) { + return iterator(name.value, name); + } + if (name instanceof Value) { + return atParam(name); + } _ref2 = name.objects; for (_i = 0, _len = _ref2.length; _i < _len; _i++) { obj = _ref2[_i]; if (obj instanceof Assign) { - names.push(obj.variable.base.value); - } else if (obj.isArray() || obj.isObject()) { - names.push.apply(names, this.names(obj.base)); - } else if (obj["this"]) { - names.push.apply(names, atParam(obj)); + this.eachName(iterator, obj.value.unwrap()); + } else if (obj instanceof Splat) { + node = obj.name.unwrap(); + iterator(node.value, node); + } else if (obj instanceof Value) { + if (obj.isArray() || obj.isObject()) { + this.eachName(iterator, obj.base); + } else if (obj["this"]) { + atParam(obj); + } else { + iterator(obj.base.value, obj.base); + } } else { - names.push(obj.base.value); + obj.error("illegal parameter " + (obj.compile())); } } - return names; }; return Param; @@ -6869,11 +6401,8 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff })(Base); exports.Splat = Splat = (function(_super) { - __extends(Splat, _super); - Splat.name = 'Splat'; - Splat.prototype.children = ['name']; Splat.prototype.isAssignable = YES; @@ -6886,12 +6415,8 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff return this.name.assigns(name); }; - Splat.prototype.compile = function(o) { - if (this.index != null) { - return this.compileParam(o); - } else { - return this.name.compile(o); - } + Splat.prototype.compileToFragments = function(o) { + return this.name.compileToFragments(o); }; Splat.prototype.unwrap = function() { @@ -6899,25 +6424,32 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff }; Splat.compileSplattedArray = function(o, list, apply) { - var args, base, code, i, index, node, _i, _len; + var args, base, compiledNode, concatPart, fragments, i, index, node, _i, _len; index = -1; while ((node = list[++index]) && !(node instanceof Splat)) { continue; } - if (index >= list.length) return ''; + if (index >= list.length) { + return []; + } if (list.length === 1) { - code = list[0].compile(o, LEVEL_LIST); - if (apply) return code; - return "" + (utility('slice')) + ".call(" + code + ")"; + node = list[0]; + fragments = node.compileToFragments(o, LEVEL_LIST); + if (apply) { + return fragments; + } + return [].concat(node.makeCode("" + (utility('slice')) + ".call("), fragments, node.makeCode(")")); } args = list.slice(index); for (i = _i = 0, _len = args.length; _i < _len; i = ++_i) { node = args[i]; - code = node.compile(o, LEVEL_LIST); - args[i] = node instanceof Splat ? "" + (utility('slice')) + ".call(" + code + ")" : "[" + code + "]"; + compiledNode = node.compileToFragments(o, LEVEL_LIST); + args[i] = node instanceof Splat ? [].concat(node.makeCode("" + (utility('slice')) + ".call("), compiledNode, node.makeCode(")")) : [].concat(node.makeCode("["), compiledNode, node.makeCode("]")); } if (index === 0) { - return args[0] + (".concat(" + (args.slice(1).join(', ')) + ")"); + node = list[0]; + concatPart = node.joinFragmentArrays(args.slice(1), ', '); + return args[0].concat(node.makeCode(".concat("), concatPart, node.makeCode(")")); } base = (function() { var _j, _len1, _ref2, _results; @@ -6925,11 +6457,13 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff _results = []; for (_j = 0, _len1 = _ref2.length; _j < _len1; _j++) { node = _ref2[_j]; - _results.push(node.compile(o, LEVEL_LIST)); + _results.push(node.compileToFragments(o, LEVEL_LIST)); } return _results; })(); - return "[" + (base.join(', ')) + "].concat(" + (args.join(', ')) + ")"; + base = list[0].joinFragmentArrays(base, ', '); + concatPart = list[index].joinFragmentArrays(args, ', '); + return [].concat(list[0].makeCode("["), base, list[index].makeCode("].concat("), concatPart, (last(list)).makeCode(")")); }; return Splat; @@ -6937,11 +6471,8 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff })(Base); exports.While = While = (function(_super) { - __extends(While, _super); - While.name = 'While'; - function While(condition, options) { this.condition = (options != null ? options.invert : void 0) ? condition.invert() : condition; this.guard = options != null ? options.guard : void 0; @@ -6968,25 +6499,29 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff }; While.prototype.jumps = function() { - var expressions, node, _i, _len; + var expressions, jumpNode, node, _i, _len; expressions = this.body.expressions; - if (!expressions.length) return false; + if (!expressions.length) { + return false; + } for (_i = 0, _len = expressions.length; _i < _len; _i++) { node = expressions[_i]; - if (node.jumps({ + if (jumpNode = node.jumps({ loop: true - })) return node; + })) { + return jumpNode; + } } return false; }; While.prototype.compileNode = function(o) { - var body, code, rvar, set; + var answer, body, rvar, set; o.indent += TAB; set = ''; body = this.body; if (body.isEmpty()) { - body = ''; + body = this.makeCode(''); } else { if (this.returns) { body.makeReturn(rvar = o.scope.freeVariable('results')); @@ -6996,14 +6531,18 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff if (body.expressions.length > 1) { body.expressions.unshift(new If((new Parens(this.guard)).invert(), new Literal("continue"))); } else { - if (this.guard) body = Block.wrap([new If(this.guard, body)]); + if (this.guard) { + body = Block.wrap([new If(this.guard, body)]); + } } } - body = "\n" + (body.compile(o, LEVEL_TOP)) + "\n" + this.tab; + body = [].concat(this.makeCode("\n"), body.compileToFragments(o, LEVEL_TOP), this.makeCode("\n" + this.tab)); } - code = set + this.tab + ("while (" + (this.condition.compile(o, LEVEL_PAREN)) + ") {" + body + "}"); - if (this.returns) code += "\n" + this.tab + "return " + rvar + ";"; - return code; + answer = [].concat(this.makeCode(set + this.tab + "while ("), this.condition.compileToFragments(o, LEVEL_PAREN), this.makeCode(") {"), body, this.makeCode("}")); + if (this.returns) { + answer.push(this.makeCode("\n" + this.tab + "return " + rvar + ";")); + } + return answer; }; return While; @@ -7015,11 +6554,13 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff __extends(Op, _super); - Op.name = 'Op'; - function Op(op, first, second, flip) { - if (op === 'in') return new In(first, second); - if (op === 'do') return this.generateDo(first); + if (op === 'in') { + return new In(first, second); + } + if (op === 'do') { + return this.generateDo(first); + } if (op === 'new') { if (first instanceof Call && !first["do"] && !first.isNew) { return first.newInstance(); @@ -7073,7 +6614,9 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff allInvertable && (allInvertable = curr.operator in INVERSIONS); curr = curr.first; } - if (!allInvertable) return new Parens(this).invert(); + if (!allInvertable) { + return new Parens(this).invert(); + } curr = this; while (curr && curr.operator) { curr.invert = !curr.invert; @@ -7083,7 +6626,9 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff return this; } else if (op = INVERSIONS[this.operator]) { this.operator = op; - if (this.first.unwrap() instanceof Op) this.first.invert(); + if (this.first.unwrap() instanceof Op) { + this.first.invert(); + } return this; } else if (this.second) { return new Parens(this).invert(); @@ -7119,37 +6664,45 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff }; Op.prototype.compileNode = function(o) { - var code, isChain, _ref2, _ref3; + var answer, isChain, _ref2, _ref3; isChain = this.isChainable() && this.first.isChainable(); - if (!isChain) this.first.front = this.front; + if (!isChain) { + this.first.front = this.front; + } if (this.operator === 'delete' && o.scope.check(this.first.unwrapAll().value)) { - throw SyntaxError('delete operand may not be argument or var'); + this.error('delete operand may not be argument or var'); } if (((_ref2 = this.operator) === '--' || _ref2 === '++') && (_ref3 = this.first.unwrapAll().value, __indexOf.call(STRICT_PROSCRIBED, _ref3) >= 0)) { - throw SyntaxError('prefix increment/decrement may not have eval or arguments operand'); + this.error("cannot increment/decrement \"" + (this.first.unwrapAll().value) + "\""); } - if (this.isUnary()) return this.compileUnary(o); - if (isChain) return this.compileChain(o); - if (this.operator === '?') return this.compileExistence(o); - code = this.first.compile(o, LEVEL_OP) + ' ' + this.operator + ' ' + this.second.compile(o, LEVEL_OP); + if (this.isUnary()) { + return this.compileUnary(o); + } + if (isChain) { + return this.compileChain(o); + } + if (this.operator === '?') { + return this.compileExistence(o); + } + answer = [].concat(this.first.compileToFragments(o, LEVEL_OP), this.makeCode(' ' + this.operator + ' '), this.second.compileToFragments(o, LEVEL_OP)); if (o.level <= LEVEL_OP) { - return code; + return answer; } else { - return "(" + code + ")"; + return this.wrapInBraces(answer); } }; Op.prototype.compileChain = function(o) { - var code, fst, shared, _ref2; + var fragments, fst, shared, _ref2; _ref2 = this.first.second.cache(o), this.first.second = _ref2[0], shared = _ref2[1]; - fst = this.first.compile(o, LEVEL_OP); - code = "" + fst + " " + (this.invert ? '&&' : '||') + " " + (shared.compile(o)) + " " + this.operator + " " + (this.second.compile(o, LEVEL_OP)); - return "(" + code + ")"; + fst = this.first.compileToFragments(o, LEVEL_OP); + fragments = fst.concat(this.makeCode(" " + (this.invert ? '&&' : '||') + " "), shared.compileToFragments(o), this.makeCode(" " + this.operator + " "), this.second.compileToFragments(o, LEVEL_OP)); + return this.wrapInBraces(fragments); }; Op.prototype.compileExistence = function(o) { var fst, ref; - if (this.first.isComplex() && o.level > LEVEL_TOP) { + if (this.first.isComplex()) { ref = new Literal(o.scope.freeVariable('ref')); fst = new Parens(new Assign(ref, this.first)); } else { @@ -7158,23 +6711,33 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff } return new If(new Existence(fst), ref, { type: 'if' - }).addElse(this.second).compile(o); + }).addElse(this.second).compileToFragments(o); }; Op.prototype.compileUnary = function(o) { var op, parts, plusMinus; - if (o.level >= LEVEL_ACCESS) return (new Parens(this)).compile(o); - parts = [op = this.operator]; + parts = []; + op = this.operator; + parts.push([this.makeCode(op)]); + if (op === '!' && this.first instanceof Existence) { + this.first.negated = !this.first.negated; + return this.first.compileToFragments(o); + } + if (o.level >= LEVEL_ACCESS) { + return (new Parens(this)).compileToFragments(o); + } plusMinus = op === '+' || op === '-'; if ((op === 'new' || op === 'typeof' || op === 'delete') || plusMinus && this.first instanceof Op && this.first.operator === op) { - parts.push(' '); + parts.push([this.makeCode(' ')]); } if ((plusMinus && this.first instanceof Op) || (op === 'new' && this.first.isStatement(o))) { this.first = new Parens(this.first); } - parts.push(this.first.compile(o, LEVEL_OP)); - if (this.flip) parts.reverse(); - return parts.join(''); + parts.push(this.first.compileToFragments(o, LEVEL_OP)); + if (this.flip) { + parts.reverse(); + } + return this.joinFragmentArrays(parts, ''); }; Op.prototype.toString = function(idt) { @@ -7186,11 +6749,8 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff })(Base); exports.In = In = (function(_super) { - __extends(In, _super); - In.name = 'In'; - function In(object, array) { this.object = object; this.array = array; @@ -7206,48 +6766,54 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff _ref2 = this.array.base.objects; for (_i = 0, _len = _ref2.length; _i < _len; _i++) { obj = _ref2[_i]; - if (!(obj instanceof Splat)) continue; + if (!(obj instanceof Splat)) { + continue; + } hasSplat = true; break; } - if (!hasSplat) return this.compileOrTest(o); + if (!hasSplat) { + return this.compileOrTest(o); + } } return this.compileLoopTest(o); }; In.prototype.compileOrTest = function(o) { - var cmp, cnj, i, item, ref, sub, tests, _ref2, _ref3; - if (this.array.base.objects.length === 0) return "" + (!!this.negated); + var cmp, cnj, i, item, ref, sub, tests, _i, _len, _ref2, _ref3, _ref4; + if (this.array.base.objects.length === 0) { + return [this.makeCode("" + (!!this.negated))]; + } _ref2 = this.object.cache(o, LEVEL_OP), sub = _ref2[0], ref = _ref2[1]; _ref3 = this.negated ? [' !== ', ' && '] : [' === ', ' || '], cmp = _ref3[0], cnj = _ref3[1]; - tests = (function() { - var _i, _len, _ref4, _results; - _ref4 = this.array.base.objects; - _results = []; - for (i = _i = 0, _len = _ref4.length; _i < _len; i = ++_i) { - item = _ref4[i]; - _results.push((i ? ref : sub) + cmp + item.compile(o, LEVEL_ACCESS)); + tests = []; + _ref4 = this.array.base.objects; + for (i = _i = 0, _len = _ref4.length; _i < _len; i = ++_i) { + item = _ref4[i]; + if (i) { + tests.push(this.makeCode(cnj)); } - return _results; - }).call(this); - tests = tests.join(cnj); + tests = tests.concat((i ? ref : sub), this.makeCode(cmp), item.compileToFragments(o, LEVEL_ACCESS)); + } if (o.level < LEVEL_OP) { return tests; } else { - return "(" + tests + ")"; + return this.wrapInBraces(tests); } }; In.prototype.compileLoopTest = function(o) { - var code, ref, sub, _ref2; + var fragments, ref, sub, _ref2; _ref2 = this.object.cache(o, LEVEL_LIST), sub = _ref2[0], ref = _ref2[1]; - code = utility('indexOf') + (".call(" + (this.array.compile(o, LEVEL_LIST)) + ", " + ref + ") ") + (this.negated ? '< 0' : '>= 0'); - if (sub === ref) return code; - code = sub + ', ' + code; + fragments = [].concat(this.makeCode(utility('indexOf') + ".call("), this.array.compileToFragments(o, LEVEL_LIST), this.makeCode(", "), ref, this.makeCode(") " + (this.negated ? '< 0' : '>= 0'))); + if (fragmentsToText(sub) === fragmentsToText(ref)) { + return fragments; + } + fragments = sub.concat(this.makeCode(', '), fragments); if (o.level < LEVEL_LIST) { - return code; + return fragments; } else { - return "(" + code + ")"; + return this.wrapInBraces(fragments); } }; @@ -7260,14 +6826,11 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff })(Base); exports.Try = Try = (function(_super) { - __extends(Try, _super); - Try.name = 'Try'; - - function Try(attempt, error, recovery, ensure) { + function Try(attempt, errorVariable, recovery, ensure) { this.attempt = attempt; - this.error = error; + this.errorVariable = errorVariable; this.recovery = recovery; this.ensure = ensure; } @@ -7282,32 +6845,22 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff }; Try.prototype.makeReturn = function(res) { - if (this.attempt) this.attempt = this.attempt.makeReturn(res); - if (this.recovery) this.recovery = this.recovery.makeReturn(res); + if (this.attempt) { + this.attempt = this.attempt.makeReturn(res); + } + if (this.recovery) { + this.recovery = this.recovery.makeReturn(res); + } return this; }; Try.prototype.compileNode = function(o) { - var catchPart, ensurePart, errorPart, tryPart; + var catchPart, ensurePart, placeholder, tryPart; o.indent += TAB; - errorPart = this.error ? " (" + (this.error.compile(o)) + ") " : ' '; - tryPart = this.attempt.compile(o, LEVEL_TOP); - catchPart = (function() { - var _ref2; - if (this.recovery) { - if (_ref2 = this.error.value, __indexOf.call(STRICT_PROSCRIBED, _ref2) >= 0) { - throw SyntaxError("catch variable may not be \"" + this.error.value + "\""); - } - if (!o.scope.check(this.error.value)) { - o.scope.add(this.error.value, 'param'); - } - return " catch" + errorPart + "{\n" + (this.recovery.compile(o, LEVEL_TOP)) + "\n" + this.tab + "}"; - } else if (!(this.ensure || this.recovery)) { - return ' catch (_error) {}'; - } - }).call(this); - ensurePart = this.ensure ? " finally {\n" + (this.ensure.compile(o, LEVEL_TOP)) + "\n" + this.tab + "}" : ''; - return "" + this.tab + "try {\n" + tryPart + "\n" + this.tab + "}" + (catchPart || '') + ensurePart; + tryPart = this.attempt.compileToFragments(o, LEVEL_TOP); + catchPart = this.recovery ? (placeholder = new Literal('_error'), this.errorVariable ? this.recovery.unshift(new Assign(this.errorVariable, placeholder)) : void 0, [].concat(this.makeCode(" catch ("), placeholder.compileToFragments(o), this.makeCode(") {\n"), this.recovery.compileToFragments(o, LEVEL_TOP), this.makeCode("\n" + this.tab + "}"))) : !(this.ensure || this.recovery) ? [this.makeCode(' catch (_error) {}')] : []; + ensurePart = this.ensure ? [].concat(this.makeCode(" finally {\n"), this.ensure.compileToFragments(o, LEVEL_TOP), this.makeCode("\n" + this.tab + "}")) : []; + return [].concat(this.makeCode("" + this.tab + "try {\n"), tryPart, this.makeCode("\n" + this.tab + "}"), catchPart, ensurePart); }; return Try; @@ -7315,11 +6868,8 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff })(Base); exports.Throw = Throw = (function(_super) { - __extends(Throw, _super); - Throw.name = 'Throw'; - function Throw(expression) { this.expression = expression; } @@ -7333,7 +6883,7 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff Throw.prototype.makeReturn = THIS; Throw.prototype.compileNode = function(o) { - return this.tab + ("throw " + (this.expression.compile(o)) + ";"); + return [].concat(this.makeCode(this.tab + "throw "), this.expression.compileToFragments(o), this.makeCode(";")); }; return Throw; @@ -7341,11 +6891,8 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff })(Base); exports.Existence = Existence = (function(_super) { - __extends(Existence, _super); - Existence.name = 'Existence'; - function Existence(expression) { this.expression = expression; } @@ -7364,11 +6911,7 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff } else { code = "" + code + " " + (this.negated ? '==' : '!=') + " null"; } - if (o.level <= LEVEL_COND) { - return code; - } else { - return "(" + code + ")"; - } + return [this.makeCode(o.level <= LEVEL_COND ? code : "(" + code + ")")]; }; return Existence; @@ -7376,11 +6919,8 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff })(Base); exports.Parens = Parens = (function(_super) { - __extends(Parens, _super); - Parens.name = 'Parens'; - function Parens(body) { this.body = body; } @@ -7396,18 +6936,18 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff }; Parens.prototype.compileNode = function(o) { - var bare, code, expr; + var bare, expr, fragments; expr = this.body.unwrap(); if (expr instanceof Value && expr.isAtomic()) { expr.front = this.front; - return expr.compile(o); + return expr.compileToFragments(o); } - code = expr.compile(o, LEVEL_PAREN); + fragments = expr.compileToFragments(o, LEVEL_PAREN); bare = o.level < LEVEL_OP && (expr instanceof Op || expr instanceof Call || (expr instanceof For && expr.returns)); if (bare) { - return code; + return fragments; } else { - return "(" + code + ")"; + return this.wrapInBraces(fragments); } }; @@ -7416,11 +6956,8 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff })(Base); exports.For = For = (function(_super) { - __extends(For, _super); - For.name = 'For'; - function For(body, source) { var _ref2; this.source = source.source, this.guard = source.guard, this.step = source.step, this.name = source.name, this.index = source.index; @@ -7431,15 +6968,18 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff _ref2 = [this.index, this.name], this.name = _ref2[0], this.index = _ref2[1]; } if (this.index instanceof Value) { - throw SyntaxError('index cannot be a pattern matching expression'); + this.index.error('index cannot be a pattern matching expression'); } this.range = this.source instanceof Value && this.source.base instanceof Range && !this.source.properties.length; this.pattern = this.name instanceof Value; if (this.range && this.index) { - throw SyntaxError('indexes do not apply to range loops'); + this.index.error('indexes do not apply to range loops'); } if (this.range && this.pattern) { - throw SyntaxError('cannot pattern match over range loops'); + this.name.error('cannot pattern match over range loops'); + } + if (this.own && !this.object) { + this.name.error('cannot use own with for-in'); } this.returns = false; } @@ -7447,36 +6987,41 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff For.prototype.children = ['body', 'source', 'guard', 'step']; For.prototype.compileNode = function(o) { - var body, defPart, forPart, forVarPart, guardPart, idt1, index, ivar, kvar, kvarAssign, lastJumps, lvar, name, namePart, ref, resultPart, returnResult, rvar, scope, source, stepPart, stepvar, svar, varPart, _ref2; + var body, bodyFragments, compare, compareDown, declare, declareDown, defPart, defPartFragments, down, forPartFragments, guardPart, idt1, increment, index, ivar, kvar, kvarAssign, lastJumps, lvar, name, namePart, ref, resultPart, returnResult, rvar, scope, source, step, stepNum, stepVar, svar, varPart, _ref2, _ref3; body = Block.wrap([this.body]); lastJumps = (_ref2 = last(body.expressions)) != null ? _ref2.jumps() : void 0; - if (lastJumps && lastJumps instanceof Return) this.returns = false; + if (lastJumps && lastJumps instanceof Return) { + this.returns = false; + } source = this.range ? this.source.base : this.source; scope = o.scope; - name = this.name && this.name.compile(o, LEVEL_LIST); - index = this.index && this.index.compile(o, LEVEL_LIST); + name = this.name && (this.name.compile(o, LEVEL_LIST)); + index = this.index && (this.index.compile(o, LEVEL_LIST)); if (name && !this.pattern) { - scope.find(name, { - immediate: true - }); + scope.find(name); } if (index) { - scope.find(index, { - immediate: true - }); + scope.find(index); + } + if (this.returns) { + rvar = scope.freeVariable('results'); } - if (this.returns) rvar = scope.freeVariable('results'); ivar = (this.object && index) || scope.freeVariable('i'); kvar = (this.range && name) || index || ivar; kvarAssign = kvar !== ivar ? "" + kvar + " = " : ""; - if (this.step && !this.range) stepvar = scope.freeVariable("step"); - if (this.pattern) name = ivar; + if (this.step && !this.range) { + _ref3 = this.cacheToCodeFragments(this.step.cache(o, LEVEL_LIST)), step = _ref3[0], stepVar = _ref3[1]; + stepNum = stepVar.match(NUMBER); + } + if (this.pattern) { + name = ivar; + } varPart = ''; guardPart = ''; defPart = ''; idt1 = this.tab + TAB; if (this.range) { - forPart = source.compile(merge(o, { + forPartFragments = source.compileToFragments(merge(o, { index: ivar, name: name, step: this.step @@ -7484,20 +7029,38 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff } else { svar = this.source.compile(o, LEVEL_LIST); if ((name || this.own) && !IDENTIFIER.test(svar)) { - defPart = "" + this.tab + (ref = scope.freeVariable('ref')) + " = " + svar + ";\n"; + defPart += "" + this.tab + (ref = scope.freeVariable('ref')) + " = " + svar + ";\n"; svar = ref; } if (name && !this.pattern) { namePart = "" + name + " = " + svar + "[" + kvar + "]"; } if (!this.object) { - lvar = scope.freeVariable('len'); - forVarPart = "" + kvarAssign + ivar + " = 0, " + lvar + " = " + svar + ".length"; - if (this.step) { - forVarPart += ", " + stepvar + " = " + (this.step.compile(o, LEVEL_OP)); + if (step !== stepVar) { + defPart += "" + this.tab + step + ";\n"; } - stepPart = "" + kvarAssign + (this.step ? "" + ivar + " += " + stepvar : (kvar !== ivar ? "++" + ivar : "" + ivar + "++")); - forPart = "" + forVarPart + "; " + ivar + " < " + lvar + "; " + stepPart; + if (!(this.step && stepNum && (down = parseNum(stepNum[0]) < 0))) { + lvar = scope.freeVariable('len'); + } + declare = "" + kvarAssign + ivar + " = 0, " + lvar + " = " + svar + ".length"; + declareDown = "" + kvarAssign + ivar + " = " + svar + ".length - 1"; + compare = "" + ivar + " < " + lvar; + compareDown = "" + ivar + " >= 0"; + if (this.step) { + if (stepNum) { + if (down) { + compare = compareDown; + declare = declareDown; + } + } else { + compare = "" + stepVar + " > 0 ? " + compare + " : " + compareDown; + declare = "(" + stepVar + " > 0 ? (" + declare + ") : " + declareDown + ")"; + } + increment = "" + ivar + " += " + stepVar; + } else { + increment = "" + (kvar !== ivar ? "++" + ivar : "" + ivar + "++"); + } + forPartFragments = [this.makeCode("" + declare + "; " + compare + "; " + kvarAssign + increment)]; } } if (this.returns) { @@ -7509,45 +7072,55 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff if (body.expressions.length > 1) { body.expressions.unshift(new If((new Parens(this.guard)).invert(), new Literal("continue"))); } else { - if (this.guard) body = Block.wrap([new If(this.guard, body)]); + if (this.guard) { + body = Block.wrap([new If(this.guard, body)]); + } } } if (this.pattern) { body.expressions.unshift(new Assign(this.name, new Literal("" + svar + "[" + kvar + "]"))); } - defPart += this.pluckDirectCall(o, body); - if (namePart) varPart = "\n" + idt1 + namePart + ";"; + defPartFragments = [].concat(this.makeCode(defPart), this.pluckDirectCall(o, body)); + if (namePart) { + varPart = "\n" + idt1 + namePart + ";"; + } if (this.object) { - forPart = "" + kvar + " in " + svar; + forPartFragments = [this.makeCode("" + kvar + " in " + svar)]; if (this.own) { guardPart = "\n" + idt1 + "if (!" + (utility('hasProp')) + ".call(" + svar + ", " + kvar + ")) continue;"; } } - body = body.compile(merge(o, { + bodyFragments = body.compileToFragments(merge(o, { indent: idt1 }), LEVEL_TOP); - if (body) body = '\n' + body + '\n'; - return "" + defPart + (resultPart || '') + this.tab + "for (" + forPart + ") {" + guardPart + varPart + body + this.tab + "}" + (returnResult || ''); + if (bodyFragments && (bodyFragments.length > 0)) { + bodyFragments = [].concat(this.makeCode("\n"), bodyFragments, this.makeCode("\n")); + } + return [].concat(defPartFragments, this.makeCode("" + (resultPart || '') + this.tab + "for ("), forPartFragments, this.makeCode(") {" + guardPart + varPart), bodyFragments, this.makeCode("" + this.tab + "}" + (returnResult || ''))); }; For.prototype.pluckDirectCall = function(o, body) { - var base, defs, expr, fn, idx, ref, val, _i, _len, _ref2, _ref3, _ref4, _ref5, _ref6, _ref7; - defs = ''; + var base, defs, expr, fn, idx, ref, val, _i, _len, _ref2, _ref3, _ref4, _ref5, _ref6, _ref7, _ref8; + defs = []; _ref2 = body.expressions; for (idx = _i = 0, _len = _ref2.length; _i < _len; idx = ++_i) { expr = _ref2[idx]; expr = expr.unwrapAll(); - if (!(expr instanceof Call)) continue; - val = expr.variable.unwrapAll(); - if (!((val instanceof Code) || (val instanceof Value && ((_ref3 = val.base) != null ? _ref3.unwrapAll() : void 0) instanceof Code && val.properties.length === 1 && ((_ref4 = (_ref5 = val.properties[0].name) != null ? _ref5.value : void 0) === 'call' || _ref4 === 'apply')))) { + if (!(expr instanceof Call)) { continue; } - fn = ((_ref6 = val.base) != null ? _ref6.unwrapAll() : void 0) || val; + val = (_ref3 = expr.variable) != null ? _ref3.unwrapAll() : void 0; + if (!((val instanceof Code) || (val instanceof Value && ((_ref4 = val.base) != null ? _ref4.unwrapAll() : void 0) instanceof Code && val.properties.length === 1 && ((_ref5 = (_ref6 = val.properties[0].name) != null ? _ref6.value : void 0) === 'call' || _ref5 === 'apply')))) { + continue; + } + fn = ((_ref7 = val.base) != null ? _ref7.unwrapAll() : void 0) || val; ref = new Literal(o.scope.freeVariable('fn')); base = new Value(ref); - if (val.base) _ref7 = [base, val], val.base = _ref7[0], base = _ref7[1]; + if (val.base) { + _ref8 = [base, val], val.base = _ref8[0], base = _ref8[1]; + } body.expressions[idx] = new Call(base, expr.args); - defs += this.tab + new Assign(ref, fn).compile(o, LEVEL_TOP) + ';\n'; + defs = defs.concat(this.makeCode(this.tab), new Assign(ref, fn).compileToFragments(o, LEVEL_TOP), this.makeCode(';\n')); } return defs; }; @@ -7557,11 +7130,8 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff })(While); exports.Switch = Switch = (function(_super) { - __extends(Switch, _super); - Switch.name = 'Switch'; - function Switch(subject, cases, otherwise) { this.subject = subject; this.cases = cases; @@ -7573,7 +7143,7 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff Switch.prototype.isStatement = YES; Switch.prototype.jumps = function(o) { - var block, conds, _i, _len, _ref2, _ref3, _ref4; + var block, conds, jumpNode, _i, _len, _ref2, _ref3, _ref4; if (o == null) { o = { block: true @@ -7582,7 +7152,9 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff _ref2 = this.cases; for (_i = 0, _len = _ref2.length; _i < _len; _i++) { _ref3 = _ref2[_i], conds = _ref3[0], block = _ref3[1]; - if (block.jumps(o)) return block; + if (jumpNode = block.jumps(o)) { + return jumpNode; + } } return (_ref4 = this.otherwise) != null ? _ref4.jumps(o) : void 0; }; @@ -7597,36 +7169,45 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff if (res) { this.otherwise || (this.otherwise = new Block([new Literal('void 0')])); } - if ((_ref3 = this.otherwise) != null) _ref3.makeReturn(res); + if ((_ref3 = this.otherwise) != null) { + _ref3.makeReturn(res); + } return this; }; Switch.prototype.compileNode = function(o) { - var block, body, code, cond, conditions, expr, i, idt1, idt2, _i, _j, _len, _len1, _ref2, _ref3, _ref4, _ref5; + var block, body, cond, conditions, expr, fragments, i, idt1, idt2, _i, _j, _len, _len1, _ref2, _ref3, _ref4; idt1 = o.indent + TAB; idt2 = o.indent = idt1 + TAB; - code = this.tab + ("switch (" + (((_ref2 = this.subject) != null ? _ref2.compile(o, LEVEL_PAREN) : void 0) || false) + ") {\n"); - _ref3 = this.cases; - for (i = _i = 0, _len = _ref3.length; _i < _len; i = ++_i) { - _ref4 = _ref3[i], conditions = _ref4[0], block = _ref4[1]; - _ref5 = flatten([conditions]); - for (_j = 0, _len1 = _ref5.length; _j < _len1; _j++) { - cond = _ref5[_j]; - if (!this.subject) cond = cond.invert(); - code += idt1 + ("case " + (cond.compile(o, LEVEL_PAREN)) + ":\n"); + fragments = [].concat(this.makeCode(this.tab + "switch ("), (this.subject ? this.subject.compileToFragments(o, LEVEL_PAREN) : this.makeCode("false")), this.makeCode(") {\n")); + _ref2 = this.cases; + for (i = _i = 0, _len = _ref2.length; _i < _len; i = ++_i) { + _ref3 = _ref2[i], conditions = _ref3[0], block = _ref3[1]; + _ref4 = flatten([conditions]); + for (_j = 0, _len1 = _ref4.length; _j < _len1; _j++) { + cond = _ref4[_j]; + if (!this.subject) { + cond = cond.invert(); + } + fragments = fragments.concat(this.makeCode(idt1 + "case "), cond.compileToFragments(o, LEVEL_PAREN), this.makeCode(":\n")); + } + if ((body = block.compileToFragments(o, LEVEL_TOP)).length > 0) { + fragments = fragments.concat(body, this.makeCode('\n')); + } + if (i === this.cases.length - 1 && !this.otherwise) { + break; } - if (body = block.compile(o, LEVEL_TOP)) code += body + '\n'; - if (i === this.cases.length - 1 && !this.otherwise) break; expr = this.lastNonComment(block.expressions); if (expr instanceof Return || (expr instanceof Literal && expr.jumps() && expr.value !== 'debugger')) { continue; } - code += idt2 + 'break;\n'; + fragments.push(cond.makeCode(idt2 + 'break;\n')); } if (this.otherwise && this.otherwise.expressions.length) { - code += idt1 + ("default:\n" + (this.otherwise.compile(o, LEVEL_TOP)) + "\n"); + fragments.push.apply(fragments, [this.makeCode(idt1 + "default:\n")].concat(__slice.call(this.otherwise.compileToFragments(o, LEVEL_TOP)), [this.makeCode("\n")])); } - return code + this.tab + '}'; + fragments.push(this.makeCode(this.tab + '}')); + return fragments; }; return Switch; @@ -7634,14 +7215,13 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff })(Base); exports.If = If = (function(_super) { - __extends(If, _super); - If.name = 'If'; - function If(condition, body, options) { this.body = body; - if (options == null) options = {}; + if (options == null) { + options = {}; + } this.condition = options.type === 'unless' ? condition.invert() : condition; this.elseBody = null; this.isChain = false; @@ -7666,6 +7246,7 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff } else { this.isChain = elseBody instanceof If; this.elseBody = this.ensureBlock(elseBody); + this.elseBody.updateLocationDataIfMissing(elseBody.locationData); } return this; }; @@ -7706,38 +7287,48 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff }; If.prototype.compileStatement = function(o) { - var body, bodyc, child, cond, exeq, ifPart, _ref2; + var answer, body, child, cond, exeq, ifPart, indent; child = del(o, 'chainChild'); exeq = del(o, 'isExistentialEquals'); if (exeq) { return new If(this.condition.invert(), this.elseBodyNode(), { type: 'if' - }).compile(o); + }).compileToFragments(o); } - cond = this.condition.compile(o, LEVEL_PAREN); - o.indent += TAB; - body = this.ensureBlock(this.body); - bodyc = body.compile(o); - if (1 === ((_ref2 = body.expressions) != null ? _ref2.length : void 0) && !this.elseBody && !child && bodyc && cond && -1 === (bodyc.indexOf('\n')) && 80 > cond.length + bodyc.length) { - return "" + this.tab + "if (" + cond + ") " + (bodyc.replace(/^\s+/, '')); + indent = o.indent + TAB; + cond = this.condition.compileToFragments(o, LEVEL_PAREN); + body = this.ensureBlock(this.body).compileToFragments(merge(o, { + indent: indent + })); + ifPart = [].concat(this.makeCode("if ("), cond, this.makeCode(") {\n"), body, this.makeCode("\n" + this.tab + "}")); + if (!child) { + ifPart.unshift(this.makeCode(this.tab)); } - if (bodyc) bodyc = "\n" + bodyc + "\n" + this.tab; - ifPart = "if (" + cond + ") {" + bodyc + "}"; - if (!child) ifPart = this.tab + ifPart; - if (!this.elseBody) return ifPart; - return ifPart + ' else ' + (this.isChain ? (o.indent = this.tab, o.chainChild = true, this.elseBody.unwrap().compile(o, LEVEL_TOP)) : "{\n" + (this.elseBody.compile(o, LEVEL_TOP)) + "\n" + this.tab + "}"); + if (!this.elseBody) { + return ifPart; + } + answer = ifPart.concat(this.makeCode(' else ')); + if (this.isChain) { + o.chainChild = true; + answer = answer.concat(this.elseBody.unwrap().compileToFragments(o, LEVEL_TOP)); + } else { + answer = answer.concat(this.makeCode("{\n"), this.elseBody.compileToFragments(merge(o, { + indent: indent + }), LEVEL_TOP), this.makeCode("\n" + this.tab + "}")); + } + return answer; }; If.prototype.compileExpression = function(o) { - var alt, body, code, cond; - cond = this.condition.compile(o, LEVEL_COND); - body = this.bodyNode().compile(o, LEVEL_LIST); - alt = this.elseBodyNode() ? this.elseBodyNode().compile(o, LEVEL_LIST) : 'void 0'; - code = "" + cond + " ? " + body + " : " + alt; + var alt, body, cond, fragments; + cond = this.condition.compileToFragments(o, LEVEL_COND); + body = this.bodyNode().compileToFragments(o, LEVEL_LIST); + alt = this.elseBodyNode() ? this.elseBodyNode().compileToFragments(o, LEVEL_LIST) : [this.makeCode('void 0')]; + fragments = cond.concat(this.makeCode(" ? "), body, this.makeCode(" : "), alt); if (o.level >= LEVEL_COND) { - return "(" + code + ")"; + return this.wrapInBraces(fragments); } else { - return code; + return fragments; } }; @@ -7749,45 +7340,9 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff })(Base); - Closure = { - wrap: function(expressions, statement, noReturn) { - var args, call, func, mentionsArgs, meth; - if (expressions.jumps()) return expressions; - func = new Code([], Block.wrap([expressions])); - args = []; - if ((mentionsArgs = expressions.contains(this.literalArgs)) || expressions.contains(this.literalThis)) { - meth = new Literal(mentionsArgs ? 'apply' : 'call'); - args = [new Literal('this')]; - if (mentionsArgs) args.push(new Literal('arguments')); - func = new Value(func, [new Access(meth)]); - } - func.noReturn = noReturn; - call = new Call(func, args); - if (statement) { - return Block.wrap([call]); - } else { - return call; - } - }, - literalArgs: function(node) { - return node instanceof Literal && node.value === 'arguments' && !node.asKey; - }, - literalThis: function(node) { - return (node instanceof Literal && node.value === 'this' && !node.asKey) || (node instanceof Code && node.bound); - } - }; - - unfoldSoak = function(o, parent, name) { - var ifn; - if (!(ifn = parent[name].unfoldSoak(o))) return; - parent[name] = ifn.body; - ifn.body = new Value(parent); - return ifn; - }; - UTILITIES = { "extends": function() { - return "function(child, parent) { for (var key in parent) { if (" + (utility('hasProp')) + ".call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor; child.__super__ = parent.prototype; return child; }"; + return "function(child, parent) { for (var key in parent) { if (" + (utility('hasProp')) + ".call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; }"; }, bind: function() { return 'function(fn, me){ return function(){ return fn.apply(me, arguments); }; }'; @@ -7823,10 +7378,16 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff SIMPLENUM = /^[+-]?\d+$/; - METHOD_DEF = RegExp("^(?:(" + IDENTIFIER_STR + ")\\.prototype(?:\\.(" + IDENTIFIER_STR + ")|\\[(\"(?:[^\\\\\"\\r\\n]|\\\\.)*\"|'(?:[^\\\\'\\r\\n]|\\\\.)*')\\]|\\[(0x[\\da-fA-F]+|\\d*\\.?\\d+(?:[eE][+-]?\\d+)?)\\]))|(" + IDENTIFIER_STR + ")$"); + HEXNUM = /^[+-]?0x[\da-f]+/i; + + NUMBER = /^[+-]?(?:0x[\da-f]+|\d*\.?\d+(?:e[+-]?\d+)?)$/i; + + METHOD_DEF = RegExp("^(" + IDENTIFIER_STR + ")(\\.prototype)?(?:\\.(" + IDENTIFIER_STR + ")|\\[(\"(?:[^\\\\\"\\r\\n]|\\\\.)*\"|'(?:[^\\\\'\\r\\n]|\\\\.)*')\\]|\\[(0x[\\da-fA-F]+|\\d*\\.?\\d+(?:[eE][+-]?\\d+)?)\\])$"); IS_STRING = /^['"]/; + IS_REGEX = /^\//; + utility = function(name) { var ref; ref = "__" + name; @@ -7839,44 +7400,44 @@ define('ace/mode/coffee/nodes', ['require', 'exports', 'module' , 'ace/mode/coff return code.replace(/\s+$/, ''); }; + parseNum = function(x) { + if (x == null) { + return 0; + } else if (x.match(HEXNUM)) { + return parseInt(x, 16); + } else { + return parseFloat(x); + } + }; + + isLiteralArguments = function(node) { + return node instanceof Literal && node.value === 'arguments' && !node.asKey; + }; + + isLiteralThis = function(node) { + return (node instanceof Literal && node.value === 'this' && !node.asKey) || (node instanceof Code && node.bound) || (node instanceof Call && node.isSuper); + }; + + unfoldSoak = function(o, parent, name) { + var ifn; + if (!(ifn = parent[name].unfoldSoak(o))) { + return; + } + parent[name] = ifn.body; + ifn.body = new Value(parent); + return ifn; + }; + }); -/* - * Copyright (c) 2011 Jeremy Ashkenas - * - * Permission is hereby granted, free of charge, to any person - * obtaining a copy of this software and associated documentation - * files (the "Software"), to deal in the Software without - * restriction, including without limitation the rights to use, - * copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the - * Software is furnished to do so, subject to the following - * conditions: - * - * The above copyright notice and this permission notice shall be - * included in all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, - * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES - * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND - * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT - * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, - * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING - * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR - * OTHER DEALINGS IN THE SOFTWARE. - */ -define('ace/mode/coffee/scope', ['require', 'exports', 'module' , 'ace/mode/coffee/helpers'], function(require, exports, module) { -// Generated by CoffeeScript 1.2.1-pre +ace.define('ace/mode/coffee/scope', ['require', 'exports', 'module' , 'ace/mode/coffee/helpers'], function(require, exports, module) { var Scope, extend, last, _ref; _ref = require('./helpers'), extend = _ref.extend, last = _ref.last; exports.Scope = Scope = (function() { - - Scope.name = 'Scope'; - Scope.root = null; function Scope(parent, expressions, method) { @@ -7890,11 +7451,15 @@ define('ace/mode/coffee/scope', ['require', 'exports', 'module' , 'ace/mode/coff } ]; this.positions = {}; - if (!this.parent) Scope.root = this; + if (!this.parent) { + Scope.root = this; + } } Scope.prototype.add = function(name, type, immediate) { - if (this.shared && !immediate) return this.parent.add(name, type, immediate); + if (this.shared && !immediate) { + return this.parent.add(name, type, immediate); + } if (Object.prototype.hasOwnProperty.call(this.positions, name)) { return this.variables[this.positions[name]].type = type; } else { @@ -7905,22 +7470,32 @@ define('ace/mode/coffee/scope', ['require', 'exports', 'module' , 'ace/mode/coff } }; - Scope.prototype.find = function(name, options) { - if (this.check(name, options)) return true; + Scope.prototype.namedMethod = function() { + var _ref1; + if (((_ref1 = this.method) != null ? _ref1.name : void 0) || !this.parent) { + return this.method; + } + return this.parent.namedMethod(); + }; + + Scope.prototype.find = function(name) { + if (this.check(name)) { + return true; + } this.add(name, 'var'); return false; }; Scope.prototype.parameter = function(name) { - if (this.shared && this.parent.check(name, true)) return; + if (this.shared && this.parent.check(name, true)) { + return; + } return this.add(name, 'param'); }; - Scope.prototype.check = function(name, immediate) { - var found, _ref1; - found = !!this.type(name); - if (found || immediate) return found; - return !!((_ref1 = this.parent) != null ? _ref1.check(name) : void 0); + Scope.prototype.check = function(name) { + var _ref1; + return !!(this.type(name) || ((_ref1 = this.parent) != null ? _ref1.check(name) : void 0)); }; Scope.prototype.temporary = function(name, index) { @@ -7936,19 +7511,25 @@ define('ace/mode/coffee/scope', ['require', 'exports', 'module' , 'ace/mode/coff _ref1 = this.variables; for (_i = 0, _len = _ref1.length; _i < _len; _i++) { v = _ref1[_i]; - if (v.name === name) return v.type; + if (v.name === name) { + return v.type; + } } return null; }; Scope.prototype.freeVariable = function(name, reserve) { var index, temp; - if (reserve == null) reserve = true; + if (reserve == null) { + reserve = true; + } index = 0; while (this.check((temp = this.temporary(name, index)))) { index++; } - if (reserve) this.add(temp, 'var', true); + if (reserve) { + this.add(temp, 'var', true); + } return temp; }; @@ -7984,7 +7565,9 @@ define('ace/mode/coffee/scope', ['require', 'exports', 'module' , 'ace/mode/coff _results = []; for (_i = 0, _len = _ref1.length; _i < _len; _i++) { v = _ref1[_i]; - if (v.type.assigned) _results.push("" + v.name + " = " + v.type.value); + if (v.type.assigned) { + _results.push("" + v.name + " = " + v.type.value); + } } return _results; }; @@ -7994,4 +7577,4 @@ define('ace/mode/coffee/scope', ['require', 'exports', 'module' , 'ace/mode/coff })(); -}); +}); \ No newline at end of file diff --git a/public/ace_editor/worker-css.js b/public/ace_editor/worker-css.js old mode 100644 new mode 100755 index a86bbcb..e56dd1c --- a/public/ace_editor/worker-css.js +++ b/public/ace_editor/worker-css.js @@ -1,94 +1,126 @@ "no use strict"; +;(function(window) { +if (typeof window.window != "undefined" && window.document) { + return; +} -var console = { - log: function(msg) { - postMessage({type: "log", data: msg}); - } +window.console = function() { + var msgs = Array.prototype.slice.call(arguments, 0); + postMessage({type: "log", data: msgs}); }; -var window = { - console: console +window.console.error = +window.console.warn = +window.console.log = +window.console.trace = window.console; + +window.window = window; +window.ace = window; + +window.onerror = function(message, file, line, col, err) { + console.error("Worker " + (err ? err.stack : message)); }; -var normalizeModule = function(parentId, moduleName) { - // normalize plugin requires +window.normalizeModule = function(parentId, moduleName) { if (moduleName.indexOf("!") !== -1) { var chunks = moduleName.split("!"); - return normalizeModule(parentId, chunks[0]) + "!" + normalizeModule(parentId, chunks[1]); + return window.normalizeModule(parentId, chunks[0]) + "!" + window.normalizeModule(parentId, chunks[1]); } - // normalize relative requires if (moduleName.charAt(0) == ".") { var base = parentId.split("/").slice(0, -1).join("/"); - var moduleName = base + "/" + moduleName; + moduleName = (base ? base + "/" : "") + moduleName; while(moduleName.indexOf(".") !== -1 && previous != moduleName) { var previous = moduleName; - var moduleName = moduleName.replace(/\/\.\//, "/").replace(/[^\/]+\/\.\.\//, ""); + moduleName = moduleName.replace(/^\.\//, "").replace(/\/\.\//, "/").replace(/[^\/]+\/\.\.\//, ""); } } return moduleName; }; -var require = function(parentId, id) { - var id = normalizeModule(parentId, id); - - var module = require.modules[id]; +window.require = function(parentId, id) { + if (!id) { + id = parentId; + parentId = null; + } + if (!id.charAt) + throw new Error("worker.js require() accepts only (parentId, id) as arguments"); + + id = window.normalizeModule(parentId, id); + + var module = window.require.modules[id]; if (module) { if (!module.initialized) { - module.exports = module.factory().exports; module.initialized = true; + module.exports = module.factory().exports; } return module.exports; } var chunks = id.split("/"); - chunks[0] = require.tlns[chunks[0]] || chunks[0]; + if (!window.require.tlns) + return console.log("unable to load " + id); + chunks[0] = window.require.tlns[chunks[0]] || chunks[0]; var path = chunks.join("/") + ".js"; - require.id = id; + window.require.id = id; importScripts(path); - return require(parentId, id); + return window.require(parentId, id); }; +window.require.modules = {}; +window.require.tlns = {}; -require.modules = {}; -require.tlns = {}; - -var define = function(id, deps, factory) { +window.define = function(id, deps, factory) { if (arguments.length == 2) { factory = deps; + if (typeof id != "string") { + deps = id; + id = window.require.id; + } } else if (arguments.length == 1) { factory = id; - id = require.id; + deps = []; + id = window.require.id; } + if (!deps.length) + deps = ['require', 'exports', 'module']; + if (id.indexOf("text!") === 0) return; - var req = function(deps, factory) { - return require(id, deps, factory); + var req = function(childId) { + return window.require(id, childId); }; - require.modules[id] = { + window.require.modules[id] = { + exports: {}, factory: function() { - var module = { - exports: {} - }; - var returnExports = factory(req, module.exports, module); + var module = this; + var returnExports = factory.apply(this, deps.map(function(dep) { + switch(dep) { + case 'require': return req; + case 'exports': return module.exports; + case 'module': return module; + default: return req(dep); + } + })); if (returnExports) module.exports = returnExports; return module; } }; }; +window.define.amd = {}; -function initBaseUrls(topLevelNamespaces) { +window.initBaseUrls = function initBaseUrls(topLevelNamespaces) { require.tlns = topLevelNamespaces; -} +}; -function initSender() { +window.initSender = function initSender() { - var EventEmitter = require(null, "ace/lib/event_emitter").EventEmitter; - var oop = require(null, "ace/lib/oop"); + var EventEmitter = window.require("ace/lib/event_emitter").EventEmitter; + var oop = window.require("ace/lib/oop"); var Sender = function() {}; @@ -115,275 +147,57 @@ function initSender() { }).call(Sender.prototype); return new Sender(); -} +}; -var main; -var sender; +var main = window.main = null; +var sender = window.sender = null; -onmessage = function(e) { +window.onmessage = function(e) { var msg = e.data; if (msg.command) { - main[msg.command].apply(main, msg.args); + if (main[msg.command]) + main[msg.command].apply(main, msg.args); + else + throw new Error("Unknown command:" + msg.command); } else if (msg.init) { initBaseUrls(msg.tlns); - require(null, "ace/lib/fixoldbrowsers"); - sender = initSender(); - var clazz = require(null, msg.module)[msg.classname]; - main = new clazz(sender); + require("ace/lib/es5-shim"); + sender = window.sender = initSender(); + var clazz = require(msg.module)[msg.classname]; + main = window.main = new clazz(sender); } else if (msg.event && sender) { - sender._emit(msg.event, msg.data); + sender._signal(msg.event, msg.data); } }; -// vim:set ts=4 sts=4 sw=4 st: -// -- kriskowal Kris Kowal Copyright (C) 2009-2010 MIT License -// -- tlrobinson Tom Robinson Copyright (C) 2009-2010 MIT License (Narwhal Project) -// -- dantman Daniel Friesen Copyright(C) 2010 XXX No License Specified -// -- fschaefer Florian Schäfer Copyright (C) 2010 MIT License -// -- Irakli Gozalishvili Copyright (C) 2010 MIT License +})(this);// https://github.com/kriskowal/es5-shim -/*! - Copyright (c) 2009, 280 North Inc. http://280north.com/ - MIT License. http://github.com/280north/narwhal/blob/master/README.md -*/ +ace.define('ace/lib/es5-shim', ['require', 'exports', 'module' ], function(require, exports, module) { -define('ace/lib/fixoldbrowsers', ['require', 'exports', 'module' , 'ace/lib/regexp', 'ace/lib/es5-shim'], function(require, exports, module) { -"use strict"; - -require("./regexp"); -require("./es5-shim"); - -}); -/* - * Based on code from: - * - * XRegExp 1.5.0 - * (c) 2007-2010 Steven Levithan - * MIT License - * - * Provides an augmented, extensible, cross-browser implementation of regular expressions, - * including support for additional syntax, flags, and methods - */ - -define('ace/lib/regexp', ['require', 'exports', 'module' ], function(require, exports, module) { -"use strict"; - - //--------------------------------- - // Private variables - //--------------------------------- - - var real = { - exec: RegExp.prototype.exec, - test: RegExp.prototype.test, - match: String.prototype.match, - replace: String.prototype.replace, - split: String.prototype.split - }, - compliantExecNpcg = real.exec.call(/()??/, "")[1] === undefined, // check `exec` handling of nonparticipating capturing groups - compliantLastIndexIncrement = function () { - var x = /^/g; - real.test.call(x, ""); - return !x.lastIndex; - }(); - - //--------------------------------- - // Overriden native methods - //--------------------------------- - - // Adds named capture support (with backreferences returned as `result.name`), and fixes two - // cross-browser issues per ES3: - // - Captured values for nonparticipating capturing groups should be returned as `undefined`, - // rather than the empty string. - // - `lastIndex` should not be incremented after zero-length matches. - RegExp.prototype.exec = function (str) { - var match = real.exec.apply(this, arguments), - name, r2; - if ( typeof(str) == 'string' && match) { - // Fix browsers whose `exec` methods don't consistently return `undefined` for - // nonparticipating capturing groups - if (!compliantExecNpcg && match.length > 1 && indexOf(match, "") > -1) { - r2 = RegExp(this.source, real.replace.call(getNativeFlags(this), "g", "")); - // Using `str.slice(match.index)` rather than `match[0]` in case lookahead allowed - // matching due to characters outside the match - real.replace.call(str.slice(match.index), r2, function () { - for (var i = 1; i < arguments.length - 2; i++) { - if (arguments[i] === undefined) - match[i] = undefined; - } - }); - } - // Attach named capture properties - if (this._xregexp && this._xregexp.captureNames) { - for (var i = 1; i < match.length; i++) { - name = this._xregexp.captureNames[i - 1]; - if (name) - match[name] = match[i]; - } - } - // Fix browsers that increment `lastIndex` after zero-length matches - if (!compliantLastIndexIncrement && this.global && !match[0].length && (this.lastIndex > match.index)) - this.lastIndex--; - } - return match; - }; - - // Don't override `test` if it won't change anything - if (!compliantLastIndexIncrement) { - // Fix browser bug in native method - RegExp.prototype.test = function (str) { - // Use the native `exec` to skip some processing overhead, even though the overriden - // `exec` would take care of the `lastIndex` fix - var match = real.exec.call(this, str); - // Fix browsers that increment `lastIndex` after zero-length matches - if (match && this.global && !match[0].length && (this.lastIndex > match.index)) - this.lastIndex--; - return !!match; - }; - } - - //--------------------------------- - // Private helper functions - //--------------------------------- - - function getNativeFlags (regex) { - return (regex.global ? "g" : "") + - (regex.ignoreCase ? "i" : "") + - (regex.multiline ? "m" : "") + - (regex.extended ? "x" : "") + // Proposed for ES4; included in AS3 - (regex.sticky ? "y" : ""); - }; - - function indexOf (array, item, from) { - if (Array.prototype.indexOf) // Use the native array method if available - return array.indexOf(item, from); - for (var i = from || 0; i < array.length; i++) { - if (array[i] === item) - return i; - } - return -1; - }; - -}); -// vim: ts=4 sts=4 sw=4 expandtab -// -- kriskowal Kris Kowal Copyright (C) 2009-2011 MIT License -// -- tlrobinson Tom Robinson Copyright (C) 2009-2010 MIT License (Narwhal Project) -// -- dantman Daniel Friesen Copyright (C) 2010 XXX TODO License or CLA -// -- fschaefer Florian Schäfer Copyright (C) 2010 MIT License -// -- Gozala Irakli Gozalishvili Copyright (C) 2010 MIT License -// -- kitcambridge Kit Cambridge Copyright (C) 2011 MIT License -// -- kossnocorp Sasha Koss XXX TODO License or CLA -// -- bryanforbes Bryan Forbes XXX TODO License or CLA -// -- killdream Quildreen Motta Copyright (C) 2011 MIT Licence -// -- michaelficarra Michael Ficarra Copyright (C) 2011 3-clause BSD License -// -- sharkbrainguy Gerard Paapu Copyright (C) 2011 MIT License -// -- bbqsrc Brendan Molloy (C) 2011 Creative Commons Zero (public domain) -// -- iwyg XXX TODO License or CLA -// -- DomenicDenicola Domenic Denicola Copyright (C) 2011 MIT License -// -- xavierm02 Montillet Xavier XXX TODO License or CLA -// -- Raynos Raynos XXX TODO License or CLA -// -- samsonjs Sami Samhuri Copyright (C) 2010 MIT License -// -- rwldrn Rick Waldron Copyright (C) 2011 MIT License -// -- lexer Alexey Zakharov XXX TODO License or CLA - -/*! - Copyright (c) 2009, 280 North Inc. http://280north.com/ - MIT License. http://github.com/280north/narwhal/blob/master/README.md -*/ - -define('ace/lib/es5-shim', ['require', 'exports', 'module' ], function(require, exports, module) { - -/* - * Brings an environment as close to ECMAScript 5 compliance - * as is possible with the facilities of erstwhile engines. - * - * Annotated ES5: http://es5.github.com/ (specific links below) - * ES5 Spec: http://www.ecma-international.org/publications/files/ECMA-ST/Ecma-262.pdf - * - * @module - */ - -/*whatsupdoc*/ - -// -// Function -// ======== -// - -// ES-5 15.3.4.5 -// http://es5.github.com/#x15.3.4.5 +function Empty() {} if (!Function.prototype.bind) { Function.prototype.bind = function bind(that) { // .length is 1 - // 1. Let Target be the this value. var target = this; - // 2. If IsCallable(Target) is false, throw a TypeError exception. - if (typeof target != "function") - throw new TypeError(); // TODO message - // 3. Let A be a new (possibly empty) internal list of all of the - // argument values provided after thisArg (arg1, arg2 etc), in order. - // XXX slicedArgs will stand in for "A" if used + if (typeof target != "function") { + throw new TypeError("Function.prototype.bind called on incompatible " + target); + } var args = slice.call(arguments, 1); // for normal call - // 4. Let F be a new native ECMAScript object. - // 11. Set the [[Prototype]] internal property of F to the standard - // built-in Function prototype object as specified in 15.3.3.1. - // 12. Set the [[Call]] internal property of F as described in - // 15.3.4.5.1. - // 13. Set the [[Construct]] internal property of F as described in - // 15.3.4.5.2. - // 14. Set the [[HasInstance]] internal property of F as described in - // 15.3.4.5.3. var bound = function () { if (this instanceof bound) { - // 15.3.4.5.2 [[Construct]] - // When the [[Construct]] internal method of a function object, - // F that was created using the bind function is called with a - // list of arguments ExtraArgs, the following steps are taken: - // 1. Let target be the value of F's [[TargetFunction]] - // internal property. - // 2. If target has no [[Construct]] internal method, a - // TypeError exception is thrown. - // 3. Let boundArgs be the value of F's [[BoundArgs]] internal - // property. - // 4. Let args be a new list containing the same values as the - // list boundArgs in the same order followed by the same - // values as the list ExtraArgs in the same order. - // 5. Return the result of calling the [[Construct]] internal - // method of target providing args as the arguments. - - var F = function(){}; - F.prototype = target.prototype; - var self = new F; var result = target.apply( - self, + this, args.concat(slice.call(arguments)) ); - if (result !== null && Object(result) === result) + if (Object(result) === result) { return result; - return self; + } + return this; } else { - // 15.3.4.5.1 [[Call]] - // When the [[Call]] internal method of a function object, F, - // which was created using the bind function is called with a - // this value and a list of arguments ExtraArgs, the following - // steps are taken: - // 1. Let boundArgs be the value of F's [[BoundArgs]] internal - // property. - // 2. Let boundThis be the value of F's [[BoundThis]] internal - // property. - // 3. Let target be the value of F's [[TargetFunction]] internal - // property. - // 4. Let args be a new list containing the same values as the - // list boundArgs in the same order followed by the same - // values as the list ExtraArgs in the same order. - // 5. Return the result of calling the [[Call]] internal method - // of target providing boundThis as the this value and - // providing args as the arguments. - - // equiv: target.call(this, ...boundArgs, ...args) return target.apply( that, args.concat(slice.call(arguments)) @@ -392,53 +206,20 @@ if (!Function.prototype.bind) { } }; - // XXX bound.length is never writable, so don't even try - // - // 15. If the [[Class]] internal property of Target is "Function", then - // a. Let L be the length property of Target minus the length of A. - // b. Set the length own property of F to either 0 or L, whichever is - // larger. - // 16. Else set the length own property of F to 0. - // 17. Set the attributes of the length own property of F to the values - // specified in 15.3.5.1. - - // TODO - // 18. Set the [[Extensible]] internal property of F to true. - - // TODO - // 19. Let thrower be the [[ThrowTypeError]] function Object (13.2.3). - // 20. Call the [[DefineOwnProperty]] internal method of F with - // arguments "caller", PropertyDescriptor {[[Get]]: thrower, [[Set]]: - // thrower, [[Enumerable]]: false, [[Configurable]]: false}, and - // false. - // 21. Call the [[DefineOwnProperty]] internal method of F with - // arguments "arguments", PropertyDescriptor {[[Get]]: thrower, - // [[Set]]: thrower, [[Enumerable]]: false, [[Configurable]]: false}, - // and false. - - // TODO - // NOTE Function objects created using Function.prototype.bind do not - // have a prototype property or the [[Code]], [[FormalParameters]], and - // [[Scope]] internal properties. - // XXX can't delete prototype in pure-js. - - // 22. Return F. + if(target.prototype) { + Empty.prototype = target.prototype; + bound.prototype = new Empty(); + Empty.prototype = null; + } return bound; }; } - -// Shortcut to an often accessed properties, in order to avoid multiple -// dereference that costs universally. -// _Please note: Shortcuts are defined after `Function.prototype.bind` as we -// us it in defining shortcuts. var call = Function.prototype.call; var prototypeOfArray = Array.prototype; var prototypeOfObject = Object.prototype; var slice = prototypeOfArray.slice; -var toString = call.bind(prototypeOfObject.toString); +var _toString = call.bind(prototypeOfObject.toString); var owns = call.bind(prototypeOfObject.hasOwnProperty); - -// If JS engine supports accessors creating shortcuts. var defineGetter; var defineSetter; var lookupGetter; @@ -450,165 +231,217 @@ if ((supportsAccessors = owns(prototypeOfObject, "__defineGetter__"))) { lookupGetter = call.bind(prototypeOfObject.__lookupGetter__); lookupSetter = call.bind(prototypeOfObject.__lookupSetter__); } +if ([1,2].splice(0).length != 2) { + if(function() { // test IE < 9 to splice bug - see issue #138 + function makeArray(l) { + var a = new Array(l+2); + a[0] = a[1] = 0; + return a; + } + var array = [], lengthBefore; + + array.splice.apply(array, makeArray(20)); + array.splice.apply(array, makeArray(26)); -// -// Array -// ===== -// + lengthBefore = array.length; //46 + array.splice(5, 0, "XXX"); // add one element -// ES5 15.4.3.2 -// http://es5.github.com/#x15.4.3.2 -// https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/isArray + lengthBefore + 1 == array.length + + if (lengthBefore + 1 == array.length) { + return true;// has right splice implementation without bugs + } + }()) {//IE 6/7 + var array_splice = Array.prototype.splice; + Array.prototype.splice = function(start, deleteCount) { + if (!arguments.length) { + return []; + } else { + return array_splice.apply(this, [ + start === void 0 ? 0 : start, + deleteCount === void 0 ? (this.length - start) : deleteCount + ].concat(slice.call(arguments, 2))) + } + }; + } else {//IE8 + Array.prototype.splice = function(pos, removeCount){ + var length = this.length; + if (pos > 0) { + if (pos > length) + pos = length; + } else if (pos == void 0) { + pos = 0; + } else if (pos < 0) { + pos = Math.max(length + pos, 0); + } + + if (!(pos+removeCount < length)) + removeCount = length - pos; + + var removed = this.slice(pos, pos+removeCount); + var insert = slice.call(arguments, 2); + var add = insert.length; + if (pos === length) { + if (add) { + this.push.apply(this, insert); + } + } else { + var remove = Math.min(removeCount, length - pos); + var tailOldPos = pos + remove; + var tailNewPos = tailOldPos + add - remove; + var tailCount = length - tailOldPos; + var lengthAfterRemove = length - remove; + + if (tailNewPos < tailOldPos) { // case A + for (var i = 0; i < tailCount; ++i) { + this[tailNewPos+i] = this[tailOldPos+i]; + } + } else if (tailNewPos > tailOldPos) { // case B + for (i = tailCount; i--; ) { + this[tailNewPos+i] = this[tailOldPos+i]; + } + } // else, add == remove (nothing to do) + + if (add && pos === lengthAfterRemove) { + this.length = lengthAfterRemove; // truncate array + this.push.apply(this, insert); + } else { + this.length = lengthAfterRemove + add; // reserves space + for (i = 0; i < add; ++i) { + this[pos+i] = insert[i]; + } + } + } + return removed; + }; + } +} if (!Array.isArray) { Array.isArray = function isArray(obj) { - return toString(obj) == "[object Array]"; + return _toString(obj) == "[object Array]"; }; } +var boxedString = Object("a"), + splitString = boxedString[0] != "a" || !(0 in boxedString); -// The IsCallable() check in the Array functions -// has been replaced with a strict check on the -// internal class of the object to trap cases where -// the provided function was actually a regular -// expression literal, which in V8 and -// JavaScriptCore is a typeof "function". Only in -// V8 are regular expression literals permitted as -// reduce parameters, so it is desirable in the -// general case for the shim to match the more -// strict and common behavior of rejecting regular -// expressions. - -// ES5 15.4.4.18 -// http://es5.github.com/#x15.4.4.18 -// https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/array/forEach if (!Array.prototype.forEach) { Array.prototype.forEach = function forEach(fun /*, thisp*/) { - var self = toObject(this), + var object = toObject(this), + self = splitString && _toString(this) == "[object String]" ? + this.split("") : + object, thisp = arguments[1], - i = 0, + i = -1, length = self.length >>> 0; - - // If no callback function or if callback is not a callable function - if (toString(fun) != "[object Function]") { + if (_toString(fun) != "[object Function]") { throw new TypeError(); // TODO message } - while (i < length) { + while (++i < length) { if (i in self) { - // Invoke the callback function with call, passing arguments: - // context, property value, property key, thisArg object context - fun.call(thisp, self[i], i, self); + fun.call(thisp, self[i], i, object); } - i++; } }; } - -// ES5 15.4.4.19 -// http://es5.github.com/#x15.4.4.19 -// https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Objects/Array/map if (!Array.prototype.map) { Array.prototype.map = function map(fun /*, thisp*/) { - var self = toObject(this), + var object = toObject(this), + self = splitString && _toString(this) == "[object String]" ? + this.split("") : + object, length = self.length >>> 0, result = Array(length), thisp = arguments[1]; - - // If no callback function or if callback is not a callable function - if (toString(fun) != "[object Function]") { - throw new TypeError(); // TODO message + if (_toString(fun) != "[object Function]") { + throw new TypeError(fun + " is not a function"); } for (var i = 0; i < length; i++) { if (i in self) - result[i] = fun.call(thisp, self[i], i, self); + result[i] = fun.call(thisp, self[i], i, object); } return result; }; } - -// ES5 15.4.4.20 -// http://es5.github.com/#x15.4.4.20 -// https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Objects/Array/filter if (!Array.prototype.filter) { Array.prototype.filter = function filter(fun /*, thisp */) { - var self = toObject(this), + var object = toObject(this), + self = splitString && _toString(this) == "[object String]" ? + this.split("") : + object, length = self.length >>> 0, result = [], + value, thisp = arguments[1]; - - // If no callback function or if callback is not a callable function - if (toString(fun) != "[object Function]") { - throw new TypeError(); // TODO message + if (_toString(fun) != "[object Function]") { + throw new TypeError(fun + " is not a function"); } for (var i = 0; i < length; i++) { - if (i in self && fun.call(thisp, self[i], i, self)) - result.push(self[i]); + if (i in self) { + value = self[i]; + if (fun.call(thisp, value, i, object)) { + result.push(value); + } + } } return result; }; } - -// ES5 15.4.4.16 -// http://es5.github.com/#x15.4.4.16 -// https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/every if (!Array.prototype.every) { Array.prototype.every = function every(fun /*, thisp */) { - var self = toObject(this), + var object = toObject(this), + self = splitString && _toString(this) == "[object String]" ? + this.split("") : + object, length = self.length >>> 0, thisp = arguments[1]; - - // If no callback function or if callback is not a callable function - if (toString(fun) != "[object Function]") { - throw new TypeError(); // TODO message + if (_toString(fun) != "[object Function]") { + throw new TypeError(fun + " is not a function"); } for (var i = 0; i < length; i++) { - if (i in self && !fun.call(thisp, self[i], i, self)) + if (i in self && !fun.call(thisp, self[i], i, object)) { return false; + } } return true; }; } - -// ES5 15.4.4.17 -// http://es5.github.com/#x15.4.4.17 -// https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/some if (!Array.prototype.some) { Array.prototype.some = function some(fun /*, thisp */) { - var self = toObject(this), + var object = toObject(this), + self = splitString && _toString(this) == "[object String]" ? + this.split("") : + object, length = self.length >>> 0, thisp = arguments[1]; - - // If no callback function or if callback is not a callable function - if (toString(fun) != "[object Function]") { - throw new TypeError(); // TODO message + if (_toString(fun) != "[object Function]") { + throw new TypeError(fun + " is not a function"); } for (var i = 0; i < length; i++) { - if (i in self && fun.call(thisp, self[i], i, self)) + if (i in self && fun.call(thisp, self[i], i, object)) { return true; + } } return false; }; } - -// ES5 15.4.4.21 -// http://es5.github.com/#x15.4.4.21 -// https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Objects/Array/reduce if (!Array.prototype.reduce) { Array.prototype.reduce = function reduce(fun /*, initial*/) { - var self = toObject(this), + var object = toObject(this), + self = splitString && _toString(this) == "[object String]" ? + this.split("") : + object, length = self.length >>> 0; - - // If no callback function or if callback is not a callable function - if (toString(fun) != "[object Function]") { - throw new TypeError(); // TODO message + if (_toString(fun) != "[object Function]") { + throw new TypeError(fun + " is not a function"); + } + if (!length && arguments.length == 1) { + throw new TypeError("reduce of empty array with no initial value"); } - - // no value to return if no initial value and an empty array - if (!length && arguments.length == 1) - throw new TypeError(); // TODO message var i = 0; var result; @@ -620,38 +453,34 @@ if (!Array.prototype.reduce) { result = self[i++]; break; } - - // if array contains no values, no initial value to return - if (++i >= length) - throw new TypeError(); // TODO message + if (++i >= length) { + throw new TypeError("reduce of empty array with no initial value"); + } } while (true); } for (; i < length; i++) { - if (i in self) - result = fun.call(void 0, result, self[i], i, self); + if (i in self) { + result = fun.call(void 0, result, self[i], i, object); + } } return result; }; } - -// ES5 15.4.4.22 -// http://es5.github.com/#x15.4.4.22 -// https://developer.mozilla.org/en/Core_JavaScript_1.5_Reference/Objects/Array/reduceRight if (!Array.prototype.reduceRight) { Array.prototype.reduceRight = function reduceRight(fun /*, initial*/) { - var self = toObject(this), + var object = toObject(this), + self = splitString && _toString(this) == "[object String]" ? + this.split("") : + object, length = self.length >>> 0; - - // If no callback function or if callback is not a callable function - if (toString(fun) != "[object Function]") { - throw new TypeError(); // TODO message + if (_toString(fun) != "[object Function]") { + throw new TypeError(fun + " is not a function"); + } + if (!length && arguments.length == 1) { + throw new TypeError("reduceRight of empty array with no initial value"); } - - // no value to return if no initial value, empty array - if (!length && arguments.length == 1) - throw new TypeError(); // TODO message var result, i = length - 1; if (arguments.length >= 2) { @@ -662,38 +491,36 @@ if (!Array.prototype.reduceRight) { result = self[i--]; break; } - - // if array contains no values, no initial value to return - if (--i < 0) - throw new TypeError(); // TODO message + if (--i < 0) { + throw new TypeError("reduceRight of empty array with no initial value"); + } } while (true); } do { - if (i in this) - result = fun.call(void 0, result, self[i], i, self); + if (i in this) { + result = fun.call(void 0, result, self[i], i, object); + } } while (i--); return result; }; } - -// ES5 15.4.4.14 -// http://es5.github.com/#x15.4.4.14 -// https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/indexOf -if (!Array.prototype.indexOf) { +if (!Array.prototype.indexOf || ([0, 1].indexOf(1, 2) != -1)) { Array.prototype.indexOf = function indexOf(sought /*, fromIndex */ ) { - var self = toObject(this), + var self = splitString && _toString(this) == "[object String]" ? + this.split("") : + toObject(this), length = self.length >>> 0; - if (!length) + if (!length) { return -1; + } var i = 0; - if (arguments.length > 1) + if (arguments.length > 1) { i = toInteger(arguments[1]); - - // handle negative indices + } i = i >= 0 ? i : Math.max(0, length + i); for (; i < length; i++) { if (i in self && self[i] === sought) { @@ -703,41 +530,30 @@ if (!Array.prototype.indexOf) { return -1; }; } - -// ES5 15.4.4.15 -// http://es5.github.com/#x15.4.4.15 -// https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/lastIndexOf -if (!Array.prototype.lastIndexOf) { +if (!Array.prototype.lastIndexOf || ([0, 1].lastIndexOf(0, -3) != -1)) { Array.prototype.lastIndexOf = function lastIndexOf(sought /*, fromIndex */) { - var self = toObject(this), + var self = splitString && _toString(this) == "[object String]" ? + this.split("") : + toObject(this), length = self.length >>> 0; - if (!length) + if (!length) { return -1; + } var i = length - 1; - if (arguments.length > 1) + if (arguments.length > 1) { i = Math.min(i, toInteger(arguments[1])); - // handle negative indices + } i = i >= 0 ? i : length - Math.abs(i); for (; i >= 0; i--) { - if (i in self && sought === self[i]) + if (i in self && sought === self[i]) { return i; + } } return -1; }; } - -// -// Object -// ====== -// - -// ES5 15.2.3.2 -// http://es5.github.com/#x15.2.3.2 if (!Object.getPrototypeOf) { - // https://github.com/kriskowal/es5-shim/issues#issue/2 - // http://ejohn.org/blog/objectgetprototypeof/ - // recommended by fschaefer on github Object.getPrototypeOf = function getPrototypeOf(object) { return object.__proto__ || ( object.constructor ? @@ -746,84 +562,73 @@ if (!Object.getPrototypeOf) { ); }; } - -// ES5 15.2.3.3 -// http://es5.github.com/#x15.2.3.3 if (!Object.getOwnPropertyDescriptor) { var ERR_NON_OBJECT = "Object.getOwnPropertyDescriptor called on a " + "non-object: "; Object.getOwnPropertyDescriptor = function getOwnPropertyDescriptor(object, property) { if ((typeof object != "object" && typeof object != "function") || object === null) throw new TypeError(ERR_NON_OBJECT + object); - // If object does not owns property return undefined immediately. if (!owns(object, property)) return; var descriptor, getter, setter; - - // If object has a property then it's for sure both `enumerable` and - // `configurable`. descriptor = { enumerable: true, configurable: true }; - - // If JS engine supports accessor properties then property may be a - // getter or setter. if (supportsAccessors) { - // Unfortunately `__lookupGetter__` will return a getter even - // if object has own non getter property along with a same named - // inherited getter. To avoid misbehavior we temporary remove - // `__proto__` so that `__lookupGetter__` will return getter only - // if it's owned by an object. var prototype = object.__proto__; object.__proto__ = prototypeOfObject; var getter = lookupGetter(object, property); var setter = lookupSetter(object, property); - - // Once we have getter and setter we can put values back. object.__proto__ = prototype; if (getter || setter) { if (getter) descriptor.get = getter; if (setter) descriptor.set = setter; - - // If it was accessor property we're done and return here - // in order to avoid adding `value` to the descriptor. return descriptor; } } - - // If we got this far we know that object has an own property that is - // not an accessor so we set it as a value and return descriptor. descriptor.value = object[property]; return descriptor; }; } - -// ES5 15.2.3.4 -// http://es5.github.com/#x15.2.3.4 if (!Object.getOwnPropertyNames) { Object.getOwnPropertyNames = function getOwnPropertyNames(object) { return Object.keys(object); }; } - -// ES5 15.2.3.5 -// http://es5.github.com/#x15.2.3.5 if (!Object.create) { + var createEmpty; + if (Object.prototype.__proto__ === null) { + createEmpty = function () { + return { "__proto__": null }; + }; + } else { + createEmpty = function () { + var empty = {}; + for (var i in empty) + empty[i] = null; + empty.constructor = + empty.hasOwnProperty = + empty.propertyIsEnumerable = + empty.isPrototypeOf = + empty.toLocaleString = + empty.toString = + empty.valueOf = + empty.__proto__ = null; + return empty; + } + } + Object.create = function create(prototype, properties) { var object; if (prototype === null) { - object = { "__proto__": null }; + object = createEmpty(); } else { if (typeof prototype != "object") throw new TypeError("typeof prototype["+(typeof prototype)+"] != 'object'"); var Type = function () {}; Type.prototype = prototype; object = new Type(); - // IE has no built-in implementation of `Object.getPrototypeOf` - // neither `__proto__`, but this manually setting `__proto__` will - // guarantee that `Object.getPrototypeOf` will work as expected with - // objects created using `Object.create` object.__proto__ = prototype; } if (properties !== void 0) @@ -832,29 +637,13 @@ if (!Object.create) { }; } -// ES5 15.2.3.6 -// http://es5.github.com/#x15.2.3.6 - -// Patch for WebKit and IE8 standard mode -// Designed by hax -// related issue: https://github.com/kriskowal/es5-shim/issues#issue/5 -// IE8 Reference: -// http://msdn.microsoft.com/en-us/library/dd282900.aspx -// http://msdn.microsoft.com/en-us/library/dd229916.aspx -// WebKit Bugs: -// https://bugs.webkit.org/show_bug.cgi?id=36423 - function doesDefinePropertyWork(object) { try { Object.defineProperty(object, "sentinel", {}); return "sentinel" in object; } catch (exception) { - // returns falsy } } - -// check whether defineProperty works if it's given. Otherwise, -// shim partially. if (Object.defineProperty) { var definePropertyWorksOnObject = doesDefinePropertyWork({}); var definePropertyWorksOnDom = typeof document == "undefined" || @@ -875,48 +664,21 @@ if (!Object.defineProperty || definePropertyFallback) { throw new TypeError(ERR_NON_OBJECT_TARGET + object); if ((typeof descriptor != "object" && typeof descriptor != "function") || descriptor === null) throw new TypeError(ERR_NON_OBJECT_DESCRIPTOR + descriptor); - - // make a valiant attempt to use the real defineProperty - // for I8's DOM elements. if (definePropertyFallback) { try { return definePropertyFallback.call(Object, object, property, descriptor); } catch (exception) { - // try the shim if the real one doesn't work } } - - // If it's a data property. if (owns(descriptor, "value")) { - // fail silently if "writable", "enumerable", or "configurable" - // are requested but not supported - /* - // alternate approach: - if ( // can't implement these features; allow false but not true - !(owns(descriptor, "writable") ? descriptor.writable : true) || - !(owns(descriptor, "enumerable") ? descriptor.enumerable : true) || - !(owns(descriptor, "configurable") ? descriptor.configurable : true) - ) - throw new RangeError( - "This implementation of Object.defineProperty does not " + - "support configurable, enumerable, or writable." - ); - */ if (supportsAccessors && (lookupGetter(object, property) || lookupSetter(object, property))) { - // As accessors are supported only on engines implementing - // `__proto__` we can safely override `__proto__` while defining - // a property to make sure that we don't hit an inherited - // accessor. var prototype = object.__proto__; object.__proto__ = prototypeOfObject; - // Deleting a property anyway since getter / setter may be - // defined on object itself. delete object[property]; object[property] = descriptor.value; - // Setting original `__proto__` back now. object.__proto__ = prototype; } else { object[property] = descriptor.value; @@ -924,7 +686,6 @@ if (!Object.defineProperty || definePropertyFallback) { } else { if (!supportsAccessors) throw new TypeError(ERR_ACCESSORS_NOT_SUPPORTED); - // If we got that far then getters and setters can be defined !! if (owns(descriptor, "get")) defineGetter(object, property, descriptor.get); if (owns(descriptor, "set")) @@ -934,9 +695,6 @@ if (!Object.defineProperty || definePropertyFallback) { return object; }; } - -// ES5 15.2.3.7 -// http://es5.github.com/#x15.2.3.7 if (!Object.defineProperties) { Object.defineProperties = function defineProperties(object, properties) { for (var property in properties) { @@ -946,30 +704,16 @@ if (!Object.defineProperties) { return object; }; } - -// ES5 15.2.3.8 -// http://es5.github.com/#x15.2.3.8 if (!Object.seal) { Object.seal = function seal(object) { - // this is misleading and breaks feature-detection, but - // allows "securable" code to "gracefully" degrade to working - // but insecure code. return object; }; } - -// ES5 15.2.3.9 -// http://es5.github.com/#x15.2.3.9 if (!Object.freeze) { Object.freeze = function freeze(object) { - // this is misleading and breaks feature-detection, but - // allows "securable" code to "gracefully" degrade to working - // but insecure code. return object; }; } - -// detect a Rhino bug and patch it try { Object.freeze(function () {}); } catch (exception) { @@ -983,43 +727,26 @@ try { }; })(Object.freeze); } - -// ES5 15.2.3.10 -// http://es5.github.com/#x15.2.3.10 if (!Object.preventExtensions) { Object.preventExtensions = function preventExtensions(object) { - // this is misleading and breaks feature-detection, but - // allows "securable" code to "gracefully" degrade to working - // but insecure code. return object; }; } - -// ES5 15.2.3.11 -// http://es5.github.com/#x15.2.3.11 if (!Object.isSealed) { Object.isSealed = function isSealed(object) { return false; }; } - -// ES5 15.2.3.12 -// http://es5.github.com/#x15.2.3.12 if (!Object.isFrozen) { Object.isFrozen = function isFrozen(object) { return false; }; } - -// ES5 15.2.3.13 -// http://es5.github.com/#x15.2.3.13 if (!Object.isExtensible) { Object.isExtensible = function isExtensible(object) { - // 1. If Type(O) is not Object throw a TypeError exception. if (Object(object) === object) { throw new TypeError(); // TODO message } - // 2. Return the Boolean value of the [[Extensible]] internal property of O. var name = ''; while (owns(object, name)) { name += '?'; @@ -1030,11 +757,7 @@ if (!Object.isExtensible) { return returnValue; }; } - -// ES5 15.2.3.14 -// http://es5.github.com/#x15.2.3.14 if (!Object.keys) { - // http://whattheheadsaid.com/2010/10/a-safer-object-keys-compatibility-implementation var hasDontEnumBug = true, dontEnums = [ "toString", @@ -1047,13 +770,18 @@ if (!Object.keys) { ], dontEnumsLength = dontEnums.length; - for (var key in {"toString": null}) + for (var key in {"toString": null}) { hasDontEnumBug = false; + } Object.keys = function keys(object) { - if ((typeof object != "object" && typeof object != "function") || object === null) + if ( + (typeof object != "object" && typeof object != "function") || + object === null + ) { throw new TypeError("Object.keys called on a non-object"); + } var keys = []; for (var name in object) { @@ -1070,220 +798,19 @@ if (!Object.keys) { } } } - return keys; }; } - -// -// Date -// ==== -// - -// ES5 15.9.5.43 -// http://es5.github.com/#x15.9.5.43 -// This function returns a String value represent the instance in time -// represented by this Date object. The format of the String is the Date Time -// string format defined in 15.9.1.15. All fields are present in the String. -// The time zone is always UTC, denoted by the suffix Z. If the time value of -// this object is not a finite Number a RangeError exception is thrown. -if (!Date.prototype.toISOString || (new Date(-62198755200000).toISOString().indexOf('-000001') === -1)) { - Date.prototype.toISOString = function toISOString() { - var result, length, value, year; - if (!isFinite(this)) - throw new RangeError; - - // the date time string format is specified in 15.9.1.15. - result = [this.getUTCMonth() + 1, this.getUTCDate(), - this.getUTCHours(), this.getUTCMinutes(), this.getUTCSeconds()]; - year = this.getUTCFullYear(); - year = (year < 0 ? '-' : (year > 9999 ? '+' : '')) + ('00000' + Math.abs(year)).slice(0 <= year && year <= 9999 ? -4 : -6); - - length = result.length; - while (length--) { - value = result[length]; - // pad months, days, hours, minutes, and seconds to have two digits. - if (value < 10) - result[length] = "0" + value; - } - // pad milliseconds to have three digits. - return year + "-" + result.slice(0, 2).join("-") + "T" + result.slice(2).join(":") + "." + - ("000" + this.getUTCMilliseconds()).slice(-3) + "Z"; - } -} - -// ES5 15.9.4.4 -// http://es5.github.com/#x15.9.4.4 if (!Date.now) { Date.now = function now() { return new Date().getTime(); }; } - -// ES5 15.9.5.44 -// http://es5.github.com/#x15.9.5.44 -// This function provides a String representation of a Date object for use by -// JSON.stringify (15.12.3). -if (!Date.prototype.toJSON) { - Date.prototype.toJSON = function toJSON(key) { - // When the toJSON method is called with argument key, the following - // steps are taken: - - // 1. Let O be the result of calling ToObject, giving it the this - // value as its argument. - // 2. Let tv be ToPrimitive(O, hint Number). - // 3. If tv is a Number and is not finite, return null. - // XXX - // 4. Let toISO be the result of calling the [[Get]] internal method of - // O with argument "toISOString". - // 5. If IsCallable(toISO) is false, throw a TypeError exception. - if (typeof this.toISOString != "function") - throw new TypeError(); // TODO message - // 6. Return the result of calling the [[Call]] internal method of - // toISO with O as the this value and an empty argument list. - return this.toISOString(); - - // NOTE 1 The argument is ignored. - - // NOTE 2 The toJSON function is intentionally generic; it does not - // require that its this value be a Date object. Therefore, it can be - // transferred to other kinds of objects for use as a method. However, - // it does require that any such object have a toISOString method. An - // object is free to use the argument key to filter its - // stringification. - }; -} - -// ES5 15.9.4.2 -// http://es5.github.com/#x15.9.4.2 -// based on work shared by Daniel Friesen (dantman) -// http://gist.github.com/303249 -if (Date.parse("+275760-09-13T00:00:00.000Z") !== 8.64e15) { - // XXX global assignment won't work in embeddings that use - // an alternate object for the context. - Date = (function(NativeDate) { - - // Date.length === 7 - var Date = function Date(Y, M, D, h, m, s, ms) { - var length = arguments.length; - if (this instanceof NativeDate) { - var date = length == 1 && String(Y) === Y ? // isString(Y) - // We explicitly pass it through parse: - new NativeDate(Date.parse(Y)) : - // We have to manually make calls depending on argument - // length here - length >= 7 ? new NativeDate(Y, M, D, h, m, s, ms) : - length >= 6 ? new NativeDate(Y, M, D, h, m, s) : - length >= 5 ? new NativeDate(Y, M, D, h, m) : - length >= 4 ? new NativeDate(Y, M, D, h) : - length >= 3 ? new NativeDate(Y, M, D) : - length >= 2 ? new NativeDate(Y, M) : - length >= 1 ? new NativeDate(Y) : - new NativeDate(); - // Prevent mixups with unfixed Date object - date.constructor = Date; - return date; - } - return NativeDate.apply(this, arguments); - }; - - // 15.9.1.15 Date Time String Format. - var isoDateExpression = new RegExp("^" + - "(\\d{4}|[\+\-]\\d{6})" + // four-digit year capture or sign + 6-digit extended year - "(?:-(\\d{2})" + // optional month capture - "(?:-(\\d{2})" + // optional day capture - "(?:" + // capture hours:minutes:seconds.milliseconds - "T(\\d{2})" + // hours capture - ":(\\d{2})" + // minutes capture - "(?:" + // optional :seconds.milliseconds - ":(\\d{2})" + // seconds capture - "(?:\\.(\\d{3}))?" + // milliseconds capture - ")?" + - "(?:" + // capture UTC offset component - "Z|" + // UTC capture - "(?:" + // offset specifier +/-hours:minutes - "([-+])" + // sign capture - "(\\d{2})" + // hours offset capture - ":(\\d{2})" + // minutes offset capture - ")" + - ")?)?)?)?" + - "$"); - - // Copy any custom methods a 3rd party library may have added - for (var key in NativeDate) - Date[key] = NativeDate[key]; - - // Copy "native" methods explicitly; they may be non-enumerable - Date.now = NativeDate.now; - Date.UTC = NativeDate.UTC; - Date.prototype = NativeDate.prototype; - Date.prototype.constructor = Date; - - // Upgrade Date.parse to handle simplified ISO 8601 strings - Date.parse = function parse(string) { - var match = isoDateExpression.exec(string); - if (match) { - match.shift(); // kill match[0], the full match - // parse months, days, hours, minutes, seconds, and milliseconds - for (var i = 1; i < 7; i++) { - // provide default values if necessary - match[i] = +(match[i] || (i < 3 ? 1 : 0)); - // match[1] is the month. Months are 0-11 in JavaScript - // `Date` objects, but 1-12 in ISO notation, so we - // decrement. - if (i == 1) - match[i]--; - } - - // parse the UTC offset component - var minuteOffset = +match.pop(), hourOffset = +match.pop(), sign = match.pop(); - - // compute the explicit time zone offset if specified - var offset = 0; - if (sign) { - // detect invalid offsets and return early - if (hourOffset > 23 || minuteOffset > 59) - return NaN; - - // express the provided time zone offset in minutes. The offset is - // negative for time zones west of UTC; positive otherwise. - offset = (hourOffset * 60 + minuteOffset) * 6e4 * (sign == "+" ? -1 : 1); - } - - // Date.UTC for years between 0 and 99 converts year to 1900 + year - // The Gregorian calendar has a 400-year cycle, so - // to Date.UTC(year + 400, .... ) - 12622780800000 == Date.UTC(year, ...), - // where 12622780800000 - number of milliseconds in Gregorian calendar 400 years - var year = +match[0]; - if (0 <= year && year <= 99) { - match[0] = year + 400; - return NativeDate.UTC.apply(this, match) + offset - 12622780800000; - } - - // compute a new UTC date value, accounting for the optional offset - return NativeDate.UTC.apply(this, match) + offset; - } - return NativeDate.parse.apply(this, arguments); - }; - - return Date; - })(Date); -} - -// -// String -// ====== -// - -// ES5 15.5.4.20 -// http://es5.github.com/#x15.5.4.20 var ws = "\x09\x0A\x0B\x0C\x0D\x20\xA0\u1680\u180E\u2000\u2001\u2002\u2003" + "\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028" + "\u2029\uFEFF"; if (!String.prototype.trim || ws.trim()) { - // http://blog.stevenlevithan.com/archives/faster-trim-javascript - // http://perfectionkills.com/whitespace-deviations/ ws = "[" + ws + "]"; var trimBeginRegexp = new RegExp("^" + ws + ws + "*"), trimEndRegexp = new RegExp(ws + ws + "*$"); @@ -1292,213 +819,145 @@ if (!String.prototype.trim || ws.trim()) { }; } -// -// Util -// ====== -// - -// ES5 9.4 -// http://es5.github.com/#x9.4 -// http://jsperf.com/to-integer -var toInteger = function (n) { +function toInteger(n) { n = +n; - if (n !== n) // isNaN + if (n !== n) { // isNaN n = 0; - else if (n !== 0 && n !== (1/0) && n !== -(1/0)) + } else if (n !== 0 && n !== (1/0) && n !== -(1/0)) { n = (n > 0 || -1) * Math.floor(Math.abs(n)); + } return n; -}; +} -var prepareString = "a"[0] != "a", - // ES5 9.9 - // http://es5.github.com/#x9.9 - toObject = function (o) { - if (o == null) { // this matches both null and undefined - throw new TypeError(); // TODO message +function isPrimitive(input) { + var type = typeof input; + return ( + input === null || + type === "undefined" || + type === "boolean" || + type === "number" || + type === "string" + ); +} + +function toPrimitive(input) { + var val, valueOf, toString; + if (isPrimitive(input)) { + return input; + } + valueOf = input.valueOf; + if (typeof valueOf === "function") { + val = valueOf.call(input); + if (isPrimitive(val)) { + return val; } - // If the implementation doesn't support by-index access of - // string characters (ex. IE < 7), split the string - if (prepareString && typeof o == "string" && o) { - return o.split(""); + } + toString = input.toString; + if (typeof toString === "function") { + val = toString.call(input); + if (isPrimitive(val)) { + return val; } - return Object(o); - }; -}); -/* vim:ts=4:sts=4:sw=4: - * ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla Public License Version - * 1.1 (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * http://www.mozilla.org/MPL/ - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - * - * The Original Code is Ajax.org Code Editor (ACE). - * - * The Initial Developer of the Original Code is - * Ajax.org B.V. - * Portions created by the Initial Developer are Copyright (C) 2010 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Fabian Jakobs - * Irakli Gozalishvili (http://jeditoolkit.com) - * Mike de Boer - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -define('ace/lib/event_emitter', ['require', 'exports', 'module' ], function(require, exports, module) { -"use strict"; - -var EventEmitter = {}; - -EventEmitter._emit = -EventEmitter._dispatchEvent = function(eventName, e) { - this._eventRegistry = this._eventRegistry || {}; - this._defaultHandlers = this._defaultHandlers || {}; - - var listeners = this._eventRegistry[eventName] || []; - var defaultHandler = this._defaultHandlers[eventName]; - if (!listeners.length && !defaultHandler) - return; - - e = e || {}; - e.type = eventName; - - if (!e.stopPropagation) { - e.stopPropagation = function() { - this.propagationStopped = true; - }; } - - if (!e.preventDefault) { - e.preventDefault = function() { - this.defaultPrevented = true; - }; + throw new TypeError(); +} +var toObject = function (o) { + if (o == null) { // this matches both null and undefined + throw new TypeError("can't convert "+o+" to object"); } - - for (var i=0; i - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ -define('ace/lib/oop', ['require', 'exports', 'module' ], function(require, exports, module) { -"use strict"; +ace.define('ace/mode/css_worker', ['require', 'exports', 'module' , 'ace/lib/oop', 'ace/lib/lang', 'ace/worker/mirror', 'ace/mode/css/csslint'], function(require, exports, module) { -exports.inherits = (function() { - var tempCtor = function() {}; - return function(ctor, superCtor) { - tempCtor.prototype = superCtor.prototype; - ctor.super_ = superCtor.prototype; - ctor.prototype = new tempCtor(); - ctor.prototype.constructor = ctor; + +var oop = require("../lib/oop"); +var lang = require("../lib/lang"); +var Mirror = require("../worker/mirror").Mirror; +var CSSLint = require("./css/csslint").CSSLint; + +var Worker = exports.Worker = function(sender) { + Mirror.call(this, sender); + this.setTimeout(400); + this.ruleset = null; + this.setDisabledRules("ids"); + this.setInfoRules("adjoining-classes|qualified-headings|zero-units|gradients|import|outline-none"); +}; + +oop.inherits(Worker, Mirror); + +(function() { + this.setInfoRules = function(ruleNames) { + if (typeof ruleNames == "string") + ruleNames = ruleNames.split("|"); + this.infoRules = lang.arrayToMap(ruleNames); + this.doc.getValue() && this.deferredUpdate.schedule(100); }; -}()); + + this.setDisabledRules = function(ruleNames) { + if (!ruleNames) { + this.ruleset = null; + } else { + if (typeof ruleNames == "string") + ruleNames = ruleNames.split("|"); + var all = {}; + + CSSLint.getRules().forEach(function(x){ + all[x.id] = true; + }); + ruleNames.forEach(function(x) { + delete all[x]; + }); + + this.ruleset = all; + } + this.doc.getValue() && this.deferredUpdate.schedule(100); + }; + + this.onUpdate = function() { + var value = this.doc.getValue(); + if (!value) + return this.sender.emit("csslint", []); + var infoRules = this.infoRules; + + var result = CSSLint.verify(value, this.ruleset); + this.sender.emit("csslint", result.messages.map(function(msg) { + return { + row: msg.line - 1, + column: msg.col - 1, + text: msg.message, + type: infoRules[msg.rule.id] ? "info" : msg.type, + rule: msg.rule.name + } + })); + }; + +}).call(Worker.prototype); + +}); + +ace.define('ace/lib/oop', ['require', 'exports', 'module' ], function(require, exports, module) { + + +exports.inherits = function(ctor, superCtor) { + ctor.super_ = superCtor; + ctor.prototype = Object.create(superCtor.prototype, { + constructor: { + value: ctor, + enumerable: false, + writable: true, + configurable: true + } + }); +}; exports.mixin = function(obj, mixin) { for (var key in mixin) { obj[key] = mixin[key]; } + return obj; }; exports.implement = function(proto, mixin) { @@ -1506,1608 +965,28 @@ exports.implement = function(proto, mixin) { }; }); -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla Public License Version - * 1.1 (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * http://www.mozilla.org/MPL/ - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - * - * The Original Code is Ajax.org Code Editor (ACE). - * - * The Initial Developer of the Original Code is - * Ajax.org B.V. - * Portions created by the Initial Developer are Copyright (C) 2010 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Fabian Jakobs - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -define('ace/mode/css_worker', ['require', 'exports', 'module' , 'ace/lib/oop', 'ace/worker/mirror', 'ace/mode/css/csslint'], function(require, exports, module) { -"use strict"; -var oop = require("../lib/oop"); -var Mirror = require("../worker/mirror").Mirror; -var CSSLint = require("./css/csslint").CSSLint; +ace.define('ace/lib/lang', ['require', 'exports', 'module' ], function(require, exports, module) { -var Worker = exports.Worker = function(sender) { - Mirror.call(this, sender); - this.setTimeout(200); + +exports.last = function(a) { + return a[a.length - 1]; }; -oop.inherits(Worker, Mirror); - -(function() { - - this.onUpdate = function() { - var value = this.doc.getValue(); - - var result = CSSLint.verify(value); - this.sender.emit("csslint", result.messages.map(function(msg) { - delete msg.rule; - return msg; - })); - }; - -}).call(Worker.prototype); - -}); -define('ace/worker/mirror', ['require', 'exports', 'module' , 'ace/document', 'ace/lib/lang'], function(require, exports, module) { -"use strict"; - -var Document = require("../document").Document; -var lang = require("../lib/lang"); - -var Mirror = exports.Mirror = function(sender) { - this.sender = sender; - var doc = this.doc = new Document(""); - - var deferredUpdate = this.deferredUpdate = lang.deferredCall(this.onUpdate.bind(this)); - - var _self = this; - sender.on("change", function(e) { - doc.applyDeltas([e.data]); - deferredUpdate.schedule(_self.$timeout); - }); -}; - -(function() { - - this.$timeout = 500; - - this.setTimeout = function(timeout) { - this.$timeout = timeout; - }; - - this.setValue = function(value) { - this.doc.setValue(value); - this.deferredUpdate.schedule(this.$timeout); - }; - - this.getValue = function(callbackId) { - this.sender.callback(this.doc.getValue(), callbackId); - }; - - this.onUpdate = function() { - // abstract method - }; - -}).call(Mirror.prototype); - -}); -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla Public License Version - * 1.1 (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * http://www.mozilla.org/MPL/ - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - * - * The Original Code is Ajax.org Code Editor (ACE). - * - * The Initial Developer of the Original Code is - * Ajax.org B.V. - * Portions created by the Initial Developer are Copyright (C) 2010 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Fabian Jakobs - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -define('ace/document', ['require', 'exports', 'module' , 'ace/lib/oop', 'ace/lib/event_emitter', 'ace/range', 'ace/anchor'], function(require, exports, module) { -"use strict"; - -var oop = require("./lib/oop"); -var EventEmitter = require("./lib/event_emitter").EventEmitter; -var Range = require("./range").Range; -var Anchor = require("./anchor").Anchor; - -/** - * class Document - * - * Contains the text of the document. Documents are controlled by a single [[EditSession `EditSession`]]. At its core, `Document`s are just an array of strings, with each row in the document matching up to the array index. - * - * - **/ - - /** - * new Document([text]) - * - text (String | Array): The starting text - * - * Creates a new `Document`. If `text` is included, the `Document` contains those strings; otherwise, it's empty. - * - **/ -var Document = function(text) { - this.$lines = []; - - if (Array.isArray(text)) { - this.insertLines(0, text); - } - // There has to be one line at least in the document. If you pass an empty - // string to the insert function, nothing will happen. Workaround. - else if (text.length == 0) { - this.$lines = [""]; - } else { - this.insert({row: 0, column:0}, text); - } -}; - -(function() { - - oop.implement(this, EventEmitter); - - /** - * Document.setValue(text) -> Void - * - text (String): The text to use - * - * Replaces all the lines in the current `Document` with the value of `text`. - **/ - this.setValue = function(text) { - var len = this.getLength(); - this.remove(new Range(0, 0, len, this.getLine(len-1).length)); - this.insert({row: 0, column:0}, text); - }; - - /** - * Document.getValue() -> String - * - * Returns all the lines in the document as a single string, split by the new line character. - **/ - this.getValue = function() { - return this.getAllLines().join(this.getNewLineCharacter()); - }; - - /** - * Document.createAnchor(row, column) -> Anchor - * - row (Number): The row number to use - * - column (Number): The column number to use - * - * Creates a new `Anchor` to define a floating point in the document. - **/ - this.createAnchor = function(row, column) { - return new Anchor(this, row, column); - }; - - /** internal, hide - * Document.$split(text) -> [String] - * - text (String): The text to work with - * + ([String]): A String array, with each index containing a piece of the original `text` string. - * - * Splits a string of text on any newline (`\n`) or carriage-return ('\r') characters. - * - * - **/ - - // check for IE split bug - if ("aaa".split(/a/).length == 0) - this.$split = function(text) { - return text.replace(/\r\n|\r/g, "\n").split("\n"); - } - else - this.$split = function(text) { - return text.split(/\r\n|\r|\n/); - }; - - - /** internal, hide - * Document.$detectNewLine(text) -> Void - * - * - **/ - this.$detectNewLine = function(text) { - var match = text.match(/^.*?(\r\n|\r|\n)/m); - if (match) { - this.$autoNewLine = match[1]; - } else { - this.$autoNewLine = "\n"; - } - }; - - /** - * Document.getNewLineCharacter() -> String - * + (String): If `newLineMode == windows`, `\r\n` is returned.
          - * If `newLineMode == unix`, `\n` is returned.
          - * If `newLineMode == auto`, the value of `autoNewLine` is returned. - * - * Returns the newline character that's being used, depending on the value of `newLineMode`. - * - * - * - **/ - this.getNewLineCharacter = function() { - switch (this.$newLineMode) { - case "windows": - return "\r\n"; - - case "unix": - return "\n"; - - case "auto": - return this.$autoNewLine; - } - }; - - this.$autoNewLine = "\n"; - this.$newLineMode = "auto"; - /** - * Document.setNewLineMode(newLineMode) -> Void - * - newLineMode(String): [The newline mode to use; can be either `windows`, `unix`, or `auto`]{: #Document.setNewLineMode.param} - * - * [Sets the new line mode.]{: #Document.setNewLineMode.desc} - **/ - this.setNewLineMode = function(newLineMode) { - if (this.$newLineMode === newLineMode) - return; - - this.$newLineMode = newLineMode; - }; - - /** - * Document.getNewLineMode() -> String - * - * [Returns the type of newlines being used; either `windows`, `unix`, or `auto`]{: #Document.getNewLineMode} - * - **/ - this.getNewLineMode = function() { - return this.$newLineMode; - }; - - /** - * Document.isNewLine(text) -> Boolean - * - text (String): The text to check - * - * Returns `true` if `text` is a newline character (either `\r\n`, `\r`, or `\n`). - * - **/ - this.isNewLine = function(text) { - return (text == "\r\n" || text == "\r" || text == "\n"); - }; - - /** - * Document.getLine(row) -> String - * - row (Number): The row index to retrieve - * - * Returns a verbatim copy of the given line as it is in the document - * - **/ - this.getLine = function(row) { - return this.$lines[row] || ""; - }; - - /** - * Document.getLines(firstRow, lastRow) -> [String] - * - firstRow (Number): The first row index to retrieve - * - lastRow (Number): The final row index to retrieve - * - * Returns an array of strings of the rows between `firstRow` and `lastRow`. This function is inclusive of `lastRow`. - * - **/ - this.getLines = function(firstRow, lastRow) { - return this.$lines.slice(firstRow, lastRow + 1); - }; - - /** - * Document.getAllLines() -> [String] - * - * Returns all lines in the document as string array. Warning: The caller should not modify this array! - **/ - this.getAllLines = function() { - return this.getLines(0, this.getLength()); - }; - - /** - * Document.getLength() -> Number - * - * Returns the number of rows in the document. - **/ - this.getLength = function() { - return this.$lines.length; - }; - - /** - * Document.getTextRange(range) -> String - * - range (Range): The range to work with - * - * [Given a range within the document, this function returns all the text within that range as a single string.]{: #Document.getTextRange.desc} - **/ - this.getTextRange = function(range) { - if (range.start.row == range.end.row) { - return this.$lines[range.start.row].substring(range.start.column, - range.end.column); - } - else { - var lines = this.getLines(range.start.row+1, range.end.row-1); - lines.unshift((this.$lines[range.start.row] || "").substring(range.start.column)); - lines.push((this.$lines[range.end.row] || "").substring(0, range.end.column)); - return lines.join(this.getNewLineCharacter()); - } - }; - - /** internal, hide - * Document.$clipPosition(position) -> Number - * - * - **/ - this.$clipPosition = function(position) { - var length = this.getLength(); - if (position.row >= length) { - position.row = Math.max(0, length - 1); - position.column = this.getLine(length-1).length; - } - return position; - }; - - /** - * Document.insert(position, text) -> Number - * - position (Number): The position to start inserting at - * - text (String): A chunk of text to insert - * + (Number): The position of the last line of `text`. If the length of `text` is 0, this function simply returns `position`. - * Inserts a block of `text` and the indicated `position`. - * - * - **/ - this.insert = function(position, text) { - if (!text || text.length === 0) - return position; - - position = this.$clipPosition(position); - - // only detect new lines if the document has no line break yet - if (this.getLength() <= 1) - this.$detectNewLine(text); - - var lines = this.$split(text); - var firstLine = lines.splice(0, 1)[0]; - var lastLine = lines.length == 0 ? null : lines.splice(lines.length - 1, 1)[0]; - - position = this.insertInLine(position, firstLine); - if (lastLine !== null) { - position = this.insertNewLine(position); // terminate first line - position = this.insertLines(position.row, lines); - position = this.insertInLine(position, lastLine || ""); - } - return position; - }; - - /** - * Document.insertLines(row, lines) -> Object - * - row (Number): The index of the row to insert at - * - lines (Array): An array of strings - * + (Object): Returns an object containing the final row and column, like this:
          - * ```{row: endRow, column: 0}```
          - * If `lines` is empty, this function returns an object containing the current row, and column, like this:
          - * ```{row: row, column: 0}``` - * - * Inserts the elements in `lines` into the document, starting at the row index given by `row`. This method also triggers the `'change'` event. - * - * - **/ - this.insertLines = function(row, lines) { - if (lines.length == 0) - return {row: row, column: 0}; - - var args = [row, 0]; - args.push.apply(args, lines); - this.$lines.splice.apply(this.$lines, args); - - var range = new Range(row, 0, row + lines.length, 0); - var delta = { - action: "insertLines", - range: range, - lines: lines - }; - this._emit("change", { data: delta }); - return range.end; - }; - - /** - * Document.insertNewLine(position) -> Object - * - position (String): The position to insert at - * + (Object): Returns an object containing the final row and column, like this:
          - * ```{row: endRow, column: 0}``` - * - * Inserts a new line into the document at the current row's `position`. This method also triggers the `'change'` event. - * - * - * - **/ - this.insertNewLine = function(position) { - position = this.$clipPosition(position); - var line = this.$lines[position.row] || ""; - - this.$lines[position.row] = line.substring(0, position.column); - this.$lines.splice(position.row + 1, 0, line.substring(position.column, line.length)); - - var end = { - row : position.row + 1, - column : 0 - }; - - var delta = { - action: "insertText", - range: Range.fromPoints(position, end), - text: this.getNewLineCharacter() - }; - this._emit("change", { data: delta }); - - return end; - }; - - /** - * Document.insertInLine(position, text) -> Object | Number - * - position (Number): The position to insert at - * - text (String): A chunk of text - * + (Object): Returns an object containing the final row and column, like this:
          - * ```{row: endRow, column: 0}``` - * + (Number): If `text` is empty, this function returns the value of `position` - * - * Inserts `text` into the `position` at the current row. This method also triggers the `'change'` event. - * - * - * - **/ - this.insertInLine = function(position, text) { - if (text.length == 0) - return position; - - var line = this.$lines[position.row] || ""; - - this.$lines[position.row] = line.substring(0, position.column) + text - + line.substring(position.column); - - var end = { - row : position.row, - column : position.column + text.length - }; - - var delta = { - action: "insertText", - range: Range.fromPoints(position, end), - text: text - }; - this._emit("change", { data: delta }); - - return end; - }; - - /** - * Document.remove(range) -> Object - * - range (Range): A specified Range to remove - * + (Object): Returns the new `start` property of the range, which contains `startRow` and `startColumn`. If `range` is empty, this function returns the unmodified value of `range.start`. - * - * Removes the `range` from the document. - * - * - **/ - this.remove = function(range) { - // clip to document - range.start = this.$clipPosition(range.start); - range.end = this.$clipPosition(range.end); - - if (range.isEmpty()) - return range.start; - - var firstRow = range.start.row; - var lastRow = range.end.row; - - if (range.isMultiLine()) { - var firstFullRow = range.start.column == 0 ? firstRow : firstRow + 1; - var lastFullRow = lastRow - 1; - - if (range.end.column > 0) - this.removeInLine(lastRow, 0, range.end.column); - - if (lastFullRow >= firstFullRow) - this.removeLines(firstFullRow, lastFullRow); - - if (firstFullRow != firstRow) { - this.removeInLine(firstRow, range.start.column, this.getLine(firstRow).length); - this.removeNewLine(range.start.row); - } - } - else { - this.removeInLine(firstRow, range.start.column, range.end.column); - } - return range.start; - }; - - /** - * Document.removeInLine(row, startColumn, endColumn) -> Object - * - row (Number): The row to remove from - * - startColumn (Number): The column to start removing at - * - endColumn (Number): The column to stop removing at - * + (Object): Returns an object containing `startRow` and `startColumn`, indicating the new row and column values.
          If `startColumn` is equal to `endColumn`, this function returns nothing. - * - * Removes the specified columns from the `row`. This method also triggers the `'change'` event. - * - * - **/ - this.removeInLine = function(row, startColumn, endColumn) { - if (startColumn == endColumn) - return; - - var range = new Range(row, startColumn, row, endColumn); - var line = this.getLine(row); - var removed = line.substring(startColumn, endColumn); - var newLine = line.substring(0, startColumn) + line.substring(endColumn, line.length); - this.$lines.splice(row, 1, newLine); - - var delta = { - action: "removeText", - range: range, - text: removed - }; - this._emit("change", { data: delta }); - return range.start; - }; - - /** - * Document.removeLines(firstRow, lastRow) -> [String] - * - firstRow (Number): The first row to be removed - * - lastRow (Number): The last row to be removed - * + ([String]): Returns all the removed lines. - * - * Removes a range of full lines. This method also triggers the `'change'` event. - * - * - **/ - this.removeLines = function(firstRow, lastRow) { - var range = new Range(firstRow, 0, lastRow + 1, 0); - var removed = this.$lines.splice(firstRow, lastRow - firstRow + 1); - - var delta = { - action: "removeLines", - range: range, - nl: this.getNewLineCharacter(), - lines: removed - }; - this._emit("change", { data: delta }); - return removed; - }; - - /** - * Document.removeNewLine(row) -> Void - * - row (Number): The row to check - * - * Removes the new line between `row` and the row immediately following it. This method also triggers the `'change'` event. - * - **/ - this.removeNewLine = function(row) { - var firstLine = this.getLine(row); - var secondLine = this.getLine(row+1); - - var range = new Range(row, firstLine.length, row+1, 0); - var line = firstLine + secondLine; - - this.$lines.splice(row, 2, line); - - var delta = { - action: "removeText", - range: range, - text: this.getNewLineCharacter() - }; - this._emit("change", { data: delta }); - }; - - /** - * Document.replace(range, text) -> Object - * - range (Range): A specified Range to replace - * - text (String): The new text to use as a replacement - * + (Object): Returns an object containing the final row and column, like this: - * {row: endRow, column: 0} - * If the text and range are empty, this function returns an object containing the current `range.start` value. - * If the text is the exact same as what currently exists, this function returns an object containing the current `range.end` value. - * - * Replaces a range in the document with the new `text`. - * - **/ - this.replace = function(range, text) { - if (text.length == 0 && range.isEmpty()) - return range.start; - - // Shortcut: If the text we want to insert is the same as it is already - // in the document, we don't have to replace anything. - if (text == this.getTextRange(range)) - return range.end; - - this.remove(range); - if (text) { - var end = this.insert(range.start, text); - } - else { - end = range.start; - } - - return end; - }; - - /** - * Document.applyDeltas(deltas) -> Void - * - * Applies all the changes previously accumulated. These can be either `'includeText'`, `'insertLines'`, `'removeText'`, and `'removeLines'`. - **/ - this.applyDeltas = function(deltas) { - for (var i=0; i Void - * - * Reverts any changes previously applied. These can be either `'includeText'`, `'insertLines'`, `'removeText'`, and `'removeLines'`. - **/ - this.revertDeltas = function(deltas) { - for (var i=deltas.length-1; i>=0; i--) { - var delta = deltas[i]; - - var range = Range.fromPoints(delta.range.start, delta.range.end); - - if (delta.action == "insertLines") - this.removeLines(range.start.row, range.end.row - 1); - else if (delta.action == "insertText") - this.remove(range); - else if (delta.action == "removeLines") - this.insertLines(range.start.row, delta.lines); - else if (delta.action == "removeText") - this.insert(range.start, delta.text); - } - }; - -}).call(Document.prototype); - -exports.Document = Document; -}); -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla Public License Version - * 1.1 (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * http://www.mozilla.org/MPL/ - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - * - * The Original Code is Ajax.org Code Editor (ACE). - * - * The Initial Developer of the Original Code is - * Ajax.org B.V. - * Portions created by the Initial Developer are Copyright (C) 2010 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Fabian Jakobs - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -define('ace/range', ['require', 'exports', 'module' ], function(require, exports, module) { -"use strict"; - -/** - * class Range - * - * This object is used in various places to indicate a region within the editor. To better visualize how this works, imagine a rectangle. Each quadrant of the rectangle is analogus to a range, as ranges contain a starting row and starting column, and an ending row, and ending column. - * - **/ - -/** - * new Range(startRow, startColumn, endRow, endColumn) - * - startRow (Number): The starting row - * - startColumn (Number): The starting column - * - endRow (Number): The ending row - * - endColumn (Number): The ending column - * - * Creates a new `Range` object with the given starting and ending row and column points. - * - **/ -var Range = function(startRow, startColumn, endRow, endColumn) { - this.start = { - row: startRow, - column: startColumn - }; - - this.end = { - row: endRow, - column: endColumn - }; -}; - -(function() { - /** - * Range.isEqual(range) -> Boolean - * - range (Range): A range to check against - * - * Returns `true` if and only if the starting row and column, and ending tow and column, are equivalent to those given by `range`. - * - **/ - this.isEqual = function(range) { - return this.start.row == range.start.row && - this.end.row == range.end.row && - this.start.column == range.start.column && - this.end.column == range.end.column - }; - - /** - * Range.toString() -> String - * - * Returns a string containing the range's row and column information, given like this: - * - * [start.row/start.column] -> [end.row/end.column] - * - **/ - - this.toString = function() { - return ("Range: [" + this.start.row + "/" + this.start.column + - "] -> [" + this.end.row + "/" + this.end.column + "]"); - }; - - /** related to: Range.compare - * Range.contains(row, column) -> Boolean - * - row (Number): A row to check for - * - column (Number): A column to check for - * - * Returns `true` if the `row` and `column` provided are within the given range. This can better be expressed as returning `true` if: - * - * this.start.row <= row <= this.end.row && - * this.start.column <= column <= this.end.column - * - **/ - - this.contains = function(row, column) { - return this.compare(row, column) == 0; - }; - - /** related to: Range.compare - * Range.compareRange(range) -> Number - * - range (Range): A range to compare with - * + (Number): This method returns one of the following numbers:
          - *
          - * * `-2`: (B) is in front of (A), and doesn't intersect with (A)
          - * * `-1`: (B) begins before (A) but ends inside of (A)
          - * * `0`: (B) is completely inside of (A) OR (A) is completely inside of (B)
          - * * `+1`: (B) begins inside of (A) but ends outside of (A)
          - * * `+2`: (B) is after (A) and doesn't intersect with (A)
          - * * `42`: FTW state: (B) ends in (A) but starts outside of (A) - * - * Compares `this` range (A) with another range (B). - * - **/ - this.compareRange = function(range) { - var cmp, - end = range.end, - start = range.start; - - cmp = this.compare(end.row, end.column); - if (cmp == 1) { - cmp = this.compare(start.row, start.column); - if (cmp == 1) { - return 2; - } else if (cmp == 0) { - return 1; - } else { - return 0; - } - } else if (cmp == -1) { - return -2; - } else { - cmp = this.compare(start.row, start.column); - if (cmp == -1) { - return -1; - } else if (cmp == 1) { - return 42; - } else { - return 0; - } - } - } - - /** related to: Range.compare - * Range.comparePoint(p) -> Number - * - p (Range): A point to compare with - * + (Number): This method returns one of the following numbers:
          - * * `0` if the two points are exactly equal
          - * * `-1` if `p.row` is less then the calling range
          - * * `1` if `p.row` is greater than the calling range
          - *
          - * If the starting row of the calling range is equal to `p.row`, and:
          - * * `p.column` is greater than or equal to the calling range's starting column, this returns `0`
          - * * Otherwise, it returns -1
          - *
          - * If the ending row of the calling range is equal to `p.row`, and:
          - * * `p.column` is less than or equal to the calling range's ending column, this returns `0`
          - * * Otherwise, it returns 1
          - * - * Checks the row and column points of `p` with the row and column points of the calling range. - * - * - * - **/ - this.comparePoint = function(p) { - return this.compare(p.row, p.column); - } - - /** related to: Range.comparePoint - * Range.containsRange(range) -> Boolean - * - range (Range): A range to compare with - * - * Checks the start and end points of `range` and compares them to the calling range. Returns `true` if the `range` is contained within the caller's range. - * - **/ - this.containsRange = function(range) { - return this.comparePoint(range.start) == 0 && this.comparePoint(range.end) == 0; - } - - /** - * Range.intersects(range) -> Boolean - * - range (Range): A range to compare with - * - * Returns `true` if passed in `range` intersects with the one calling this method. - * - **/ - this.intersects = function(range) { - var cmp = this.compareRange(range); - return (cmp == -1 || cmp == 0 || cmp == 1); - } - - /** - * Range.isEnd(row, column) -> Boolean - * - row (Number): A row point to compare with - * - column (Number): A column point to compare with - * - * Returns `true` if the caller's ending row point is the same as `row`, and if the caller's ending column is the same as `column`. - * - **/ - this.isEnd = function(row, column) { - return this.end.row == row && this.end.column == column; - } - - /** - * Range.isStart(row, column) -> Boolean - * - row (Number): A row point to compare with - * - column (Number): A column point to compare with - * - * Returns `true` if the caller's starting row point is the same as `row`, and if the caller's starting column is the same as `column`. - * - **/ - this.isStart = function(row, column) { - return this.start.row == row && this.start.column == column; - } - - /** - * Range.setStart(row, column) - * - row (Number): A row point to set - * - column (Number): A column point to set - * - * Sets the starting row and column for the range. - * - **/ - this.setStart = function(row, column) { - if (typeof row == "object") { - this.start.column = row.column; - this.start.row = row.row; - } else { - this.start.row = row; - this.start.column = column; - } - } - - /** - * Range.setEnd(row, column) - * - row (Number): A row point to set - * - column (Number): A column point to set - * - * Sets the starting row and column for the range. - * - **/ - this.setEnd = function(row, column) { - if (typeof row == "object") { - this.end.column = row.column; - this.end.row = row.row; - } else { - this.end.row = row; - this.end.column = column; - } - } - - /** related to: Range.compare - * Range.inside(row, column) -> Boolean - * - row (Number): A row point to compare with - * - column (Number): A column point to compare with - * - * Returns `true` if the `row` and `column` are within the given range. - * - **/ - this.inside = function(row, column) { - if (this.compare(row, column) == 0) { - if (this.isEnd(row, column) || this.isStart(row, column)) { - return false; - } else { - return true; - } - } - return false; - } - - /** related to: Range.compare - * Range.insideStart(row, column) -> Boolean - * - row (Number): A row point to compare with - * - column (Number): A column point to compare with - * - * Returns `true` if the `row` and `column` are within the given range's starting points. - * - **/ - this.insideStart = function(row, column) { - if (this.compare(row, column) == 0) { - if (this.isEnd(row, column)) { - return false; - } else { - return true; - } - } - return false; - } - - /** related to: Range.compare - * Range.insideEnd(row, column) -> Boolean - * - row (Number): A row point to compare with - * - column (Number): A column point to compare with - * - * Returns `true` if the `row` and `column` are within the given range's ending points. - * - **/ - this.insideEnd = function(row, column) { - if (this.compare(row, column) == 0) { - if (this.isStart(row, column)) { - return false; - } else { - return true; - } - } - return false; - } - - /** - * Range.compare(row, column) -> Number - * - row (Number): A row point to compare with - * - column (Number): A column point to compare with - * + (Number): This method returns one of the following numbers:
          - * * `0` if the two points are exactly equal
          - * * `-1` if `p.row` is less then the calling range
          - * * `1` if `p.row` is greater than the calling range
          - *
          - * If the starting row of the calling range is equal to `p.row`, and:
          - * * `p.column` is greater than or equal to the calling range's starting column, this returns `0`
          - * * Otherwise, it returns -1
          - *
          - * If the ending row of the calling range is equal to `p.row`, and:
          - * * `p.column` is less than or equal to the calling range's ending column, this returns `0`
          - * * Otherwise, it returns 1 - * - * Checks the row and column points with the row and column points of the calling range. - * - * - **/ - this.compare = function(row, column) { - if (!this.isMultiLine()) { - if (row === this.start.row) { - return column < this.start.column ? -1 : (column > this.end.column ? 1 : 0); - }; - } - - if (row < this.start.row) - return -1; - - if (row > this.end.row) - return 1; - - if (this.start.row === row) - return column >= this.start.column ? 0 : -1; - - if (this.end.row === row) - return column <= this.end.column ? 0 : 1; - - return 0; - }; - - /** - * Range.compareStart(row, column) -> Number - * - row (Number): A row point to compare with - * - column (Number): A column point to compare with - * + (Number): This method returns one of the following numbers:
          - *
          - * * `0` if the two points are exactly equal
          - * * `-1` if `p.row` is less then the calling range
          - * * `1` if `p.row` is greater than the calling range, or if `isStart` is `true`.
          - *
          - * If the starting row of the calling range is equal to `p.row`, and:
          - * * `p.column` is greater than or equal to the calling range's starting column, this returns `0`
          - * * Otherwise, it returns -1
          - *
          - * If the ending row of the calling range is equal to `p.row`, and:
          - * * `p.column` is less than or equal to the calling range's ending column, this returns `0`
          - * * Otherwise, it returns 1 - * - * Checks the row and column points with the row and column points of the calling range. - * - * - * - **/ - this.compareStart = function(row, column) { - if (this.start.row == row && this.start.column == column) { - return -1; - } else { - return this.compare(row, column); - } - } - - /** - * Range.compareEnd(row, column) -> Number - * - row (Number): A row point to compare with - * - column (Number): A column point to compare with - * + (Number): This method returns one of the following numbers:
          - * * `0` if the two points are exactly equal
          - * * `-1` if `p.row` is less then the calling range
          - * * `1` if `p.row` is greater than the calling range, or if `isEnd` is `true.
          - *
          - * If the starting row of the calling range is equal to `p.row`, and:
          - * * `p.column` is greater than or equal to the calling range's starting column, this returns `0`
          - * * Otherwise, it returns -1
          - *
          - * If the ending row of the calling range is equal to `p.row`, and:
          - * * `p.column` is less than or equal to the calling range's ending column, this returns `0`
          - * * Otherwise, it returns 1 - * - * Checks the row and column points with the row and column points of the calling range. - * - * - **/ - this.compareEnd = function(row, column) { - if (this.end.row == row && this.end.column == column) { - return 1; - } else { - return this.compare(row, column); - } - } - - /** - * Range.compareInside(row, column) -> Number - * - row (Number): A row point to compare with - * - column (Number): A column point to compare with - * + (Number): This method returns one of the following numbers:
          - * * `1` if the ending row of the calling range is equal to `row`, and the ending column of the calling range is equal to `column`
          - * * `-1` if the starting row of the calling range is equal to `row`, and the starting column of the calling range is equal to `column`
          - *
          - * Otherwise, it returns the value after calling [[Range.compare `compare()`]]. - * - * Checks the row and column points with the row and column points of the calling range. - * - * - * - **/ - this.compareInside = function(row, column) { - if (this.end.row == row && this.end.column == column) { - return 1; - } else if (this.start.row == row && this.start.column == column) { - return -1; - } else { - return this.compare(row, column); - } - } - - /** - * Range.clipRows(firstRow, lastRow) -> Range - * - firstRow (Number): The starting row - * - lastRow (Number): The ending row - * - * Returns the part of the current `Range` that occurs within the boundaries of `firstRow` and `lastRow` as a new `Range` object. - * - **/ - this.clipRows = function(firstRow, lastRow) { - if (this.end.row > lastRow) { - var end = { - row: lastRow+1, - column: 0 - }; - } - - if (this.start.row > lastRow) { - var start = { - row: lastRow+1, - column: 0 - }; - } - - if (this.start.row < firstRow) { - var start = { - row: firstRow, - column: 0 - }; - } - - if (this.end.row < firstRow) { - var end = { - row: firstRow, - column: 0 - }; - } - return Range.fromPoints(start || this.start, end || this.end); - }; - - /** - * Range.extend(row, column) -> Range - * - row (Number): A new row to extend to - * - column (Number): A new column to extend to - * - * Changes the row and column points for the calling range for both the starting and ending points. This method returns that range with a new row. - * - **/ - this.extend = function(row, column) { - var cmp = this.compare(row, column); - - if (cmp == 0) - return this; - else if (cmp == -1) - var start = {row: row, column: column}; - else - var end = {row: row, column: column}; - - return Range.fromPoints(start || this.start, end || this.end); - }; - - this.isEmpty = function() { - return (this.start.row == this.end.row && this.start.column == this.end.column); - }; - - /** - * Range.isMultiLine() -> Boolean - * - * Returns true if the range spans across multiple lines. - * - **/ - this.isMultiLine = function() { - return (this.start.row !== this.end.row); - }; - - /** - * Range.clone() -> Range - * - * Returns a duplicate of the calling range. - * - **/ - this.clone = function() { - return Range.fromPoints(this.start, this.end); - }; - - /** - * Range.collapseRows() -> Range - * - * Returns a range containing the starting and ending rows of the original range, but with a column value of `0`. - * - **/ - this.collapseRows = function() { - if (this.end.column == 0) - return new Range(this.start.row, 0, Math.max(this.start.row, this.end.row-1), 0) - else - return new Range(this.start.row, 0, this.end.row, 0) - }; - - /** - * Range.toScreenRange(session) -> Range - * - session (EditSession): The `EditSession` to retrieve coordinates from - * - * Given the current `Range`, this function converts those starting and ending points into screen positions, and then returns a new `Range` object. - **/ - this.toScreenRange = function(session) { - var screenPosStart = - session.documentToScreenPosition(this.start); - var screenPosEnd = - session.documentToScreenPosition(this.end); - - return new Range( - screenPosStart.row, screenPosStart.column, - screenPosEnd.row, screenPosEnd.column - ); - }; - -}).call(Range.prototype); - -/** - * Range.fromPoints(start, end) -> Range - * - start (Range): A starting point to use - * - end (Range): An ending point to use - * - * Creates and returns a new `Range` based on the row and column of the given parameters. - * -**/ -Range.fromPoints = function(start, end) { - return new Range(start.row, start.column, end.row, end.column); -}; - -exports.Range = Range; -}); -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla Public License Version - * 1.1 (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * http://www.mozilla.org/MPL/ - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - * - * The Original Code is Ajax.org Code Editor (ACE). - * - * The Initial Developer of the Original Code is - * Ajax.org B.V. - * Portions created by the Initial Developer are Copyright (C) 2010 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Fabian Jakobs - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -define('ace/anchor', ['require', 'exports', 'module' , 'ace/lib/oop', 'ace/lib/event_emitter'], function(require, exports, module) { -"use strict"; - -var oop = require("./lib/oop"); -var EventEmitter = require("./lib/event_emitter").EventEmitter; - -/** - * class Anchor - * - * Defines the floating pointer in the document. Whenever text is inserted or deleted before the cursor, the position of the cursor is updated - * - **/ - -/** - * new Anchor(doc, row, column) - * - doc (Document): The document to associate with the anchor - * - row (Number): The starting row position - * - column (Number): The starting column position - * - * Creates a new `Anchor` and associates it with a document. - * - **/ - -var Anchor = exports.Anchor = function(doc, row, column) { - this.document = doc; - - if (typeof column == "undefined") - this.setPosition(row.row, row.column); - else - this.setPosition(row, column); - - this.$onChange = this.onChange.bind(this); - doc.on("change", this.$onChange); -}; - -(function() { - - oop.implement(this, EventEmitter); - - /** - * Anchor.getPosition() -> Object - * - * Returns an object identifying the `row` and `column` position of the current anchor. - * - **/ - - this.getPosition = function() { - return this.$clipPositionToDocument(this.row, this.column); - }; - - /** - * Anchor.getDocument() -> Document - * - * Returns the current document. - * - **/ - - this.getDocument = function() { - return this.document; - }; - - /** - * Anchor@onChange(e) - * - e (Event): Contains data about the event - * - * Fires whenever the anchor position changes. Events that can trigger this function include `'includeText'`, `'insertLines'`, `'removeText'`, and `'removeLines'`. - * - **/ - - this.onChange = function(e) { - var delta = e.data; - var range = delta.range; - - if (range.start.row == range.end.row && range.start.row != this.row) - return; - - if (range.start.row > this.row) - return; - - if (range.start.row == this.row && range.start.column > this.column) - return; - - var row = this.row; - var column = this.column; - - if (delta.action === "insertText") { - if (range.start.row === row && range.start.column <= column) { - if (range.start.row === range.end.row) { - column += range.end.column - range.start.column; - } - else { - column -= range.start.column; - row += range.end.row - range.start.row; - } - } - else if (range.start.row !== range.end.row && range.start.row < row) { - row += range.end.row - range.start.row; - } - } else if (delta.action === "insertLines") { - if (range.start.row <= row) { - row += range.end.row - range.start.row; - } - } - else if (delta.action == "removeText") { - if (range.start.row == row && range.start.column < column) { - if (range.end.column >= column) - column = range.start.column; - else - column = Math.max(0, column - (range.end.column - range.start.column)); - - } else if (range.start.row !== range.end.row && range.start.row < row) { - if (range.end.row == row) { - column = Math.max(0, column - range.end.column) + range.start.column; - } - row -= (range.end.row - range.start.row); - } - else if (range.end.row == row) { - row -= range.end.row - range.start.row; - column = Math.max(0, column - range.end.column) + range.start.column; - } - } else if (delta.action == "removeLines") { - if (range.start.row <= row) { - if (range.end.row <= row) - row -= range.end.row - range.start.row; - else { - row = range.start.row; - column = 0; - } - } - } - - this.setPosition(row, column, true); - }; - - /** - * Anchor.setPosition(row, column, noClip) - * - row (Number): The row index to move the anchor to - * - column (Number): The column index to move the anchor to - * - noClip (Boolean): Identifies if you want the position to be clipped - * - * Sets the anchor position to the specified row and column. If `noClip` is `true`, the position is not clipped. - * - **/ - - this.setPosition = function(row, column, noClip) { - var pos; - if (noClip) { - pos = { - row: row, - column: column - }; - } - else { - pos = this.$clipPositionToDocument(row, column); - } - - if (this.row == pos.row && this.column == pos.column) - return; - - var old = { - row: this.row, - column: this.column - }; - - this.row = pos.row; - this.column = pos.column; - this._emit("change", { - old: old, - value: pos - }); - }; - - /** - * Anchor.detach() - * - * When called, the `'change'` event listener is removed. - * - **/ - - this.detach = function() { - this.document.removeEventListener("change", this.$onChange); - }; - - /** internal, hide - * Anchor.clipPositionToDocument(row, column) - * - row (Number): The row index to clip the anchor to - * - column (Number): The column index to clip the anchor to - * - * Clips the anchor position to the specified row and column. - * - **/ - - this.$clipPositionToDocument = function(row, column) { - var pos = {}; - - if (row >= this.document.getLength()) { - pos.row = Math.max(0, this.document.getLength() - 1); - pos.column = this.document.getLine(pos.row).length; - } - else if (row < 0) { - pos.row = 0; - pos.column = 0; - } - else { - pos.row = row; - pos.column = Math.min(this.document.getLine(pos.row).length, Math.max(0, column)); - } - - if (column < 0) - pos.column = 0; - - return pos; - }; - -}).call(Anchor.prototype); - -}); -/* ***** BEGIN LICENSE BLOCK ***** - * Version: MPL 1.1/GPL 2.0/LGPL 2.1 - * - * The contents of this file are subject to the Mozilla Public License Version - * 1.1 (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * http://www.mozilla.org/MPL/ - * - * Software distributed under the License is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License - * for the specific language governing rights and limitations under the - * License. - * - * The Original Code is Ajax.org Code Editor (ACE). - * - * The Initial Developer of the Original Code is - * Ajax.org B.V. - * Portions created by the Initial Developer are Copyright (C) 2010 - * the Initial Developer. All Rights Reserved. - * - * Contributor(s): - * Fabian Jakobs - * - * Alternatively, the contents of this file may be used under the terms of - * either the GNU General Public License Version 2 or later (the "GPL"), or - * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), - * in which case the provisions of the GPL or the LGPL are applicable instead - * of those above. If you wish to allow use of your version of this file only - * under the terms of either the GPL or the LGPL, and not to allow others to - * use your version of this file under the terms of the MPL, indicate your - * decision by deleting the provisions above and replace them with the notice - * and other provisions required by the GPL or the LGPL. If you do not delete - * the provisions above, a recipient may use your version of this file under - * the terms of any one of the MPL, the GPL or the LGPL. - * - * ***** END LICENSE BLOCK ***** */ - -define('ace/lib/lang', ['require', 'exports', 'module' ], function(require, exports, module) { -"use strict"; - exports.stringReverse = function(string) { return string.split("").reverse().join(""); }; exports.stringRepeat = function (string, count) { - return new Array(count + 1).join(string); + var result = ''; + while (count > 0) { + if (count & 1) + result += string; + + if (count >>= 1) + string += string; + } + return result; }; var trimBeginRegexp = /^\s\s*/; @@ -3141,14 +1020,16 @@ exports.copyArray = function(array){ }; exports.deepCopy = function (obj) { - if (typeof obj != "object") { + if (typeof obj !== "object" || !obj) + return obj; + var cons = obj.constructor; + if (cons === RegExp) return obj; - } - var copy = obj.constructor(); + var copy = cons(); for (var key in obj) { - if (typeof obj[key] == "object") { - copy[key] = this.deepCopy(obj[key]); + if (typeof obj[key] === "object") { + copy[key] = exports.deepCopy(obj[key]); } else { copy[key] = obj[key]; } @@ -3165,9 +1046,13 @@ exports.arrayToMap = function(arr) { }; -/* - * splice out of 'array' anything that === 'value' - */ +exports.createMap = function(props) { + var map = Object.create(null); + for (var i in props) { + map[i] = props[i]; + } + return map; +}; exports.arrayRemove = function(array, value) { for (var i = 0; i <= array.length; i++) { if (value === array[i]) { @@ -3180,6 +1065,22 @@ exports.escapeRegExp = function(str) { return str.replace(/([.*+?^${}()|[\]\/\\])/g, '\\$1'); }; +exports.escapeHTML = function(str) { + return str.replace(/&/g, "&").replace(/"/g, """).replace(/'/g, "'").replace(/= length) { + position.row = Math.max(0, length - 1); + position.column = this.getLine(length-1).length; + } else if (position.row < 0) + position.row = 0; + return position; + }; + this.insert = function(position, text) { + if (!text || text.length === 0) + return position; + + position = this.$clipPosition(position); + if (this.getLength() <= 1) + this.$detectNewLine(text); + + var lines = this.$split(text); + var firstLine = lines.splice(0, 1)[0]; + var lastLine = lines.length == 0 ? null : lines.splice(lines.length - 1, 1)[0]; + + position = this.insertInLine(position, firstLine); + if (lastLine !== null) { + position = this.insertNewLine(position); // terminate first line + position = this._insertLines(position.row, lines); + position = this.insertInLine(position, lastLine || ""); + } + return position; + }; + this.insertLines = function(row, lines) { + if (row >= this.getLength()) + return this.insert({row: row, column: 0}, "\n" + lines.join("\n")); + return this._insertLines(Math.max(row, 0), lines); + }; + this._insertLines = function(row, lines) { + if (lines.length == 0) + return {row: row, column: 0}; + while (lines.length > 0xF000) { + var end = this._insertLines(row, lines.slice(0, 0xF000)); + lines = lines.slice(0xF000); + row = end.row; + } + + var args = [row, 0]; + args.push.apply(args, lines); + this.$lines.splice.apply(this.$lines, args); + + var range = new Range(row, 0, row + lines.length, 0); + var delta = { + action: "insertLines", + range: range, + lines: lines + }; + this._signal("change", { data: delta }); + return range.end; + }; + this.insertNewLine = function(position) { + position = this.$clipPosition(position); + var line = this.$lines[position.row] || ""; + + this.$lines[position.row] = line.substring(0, position.column); + this.$lines.splice(position.row + 1, 0, line.substring(position.column, line.length)); + + var end = { + row : position.row + 1, + column : 0 + }; + + var delta = { + action: "insertText", + range: Range.fromPoints(position, end), + text: this.getNewLineCharacter() + }; + this._signal("change", { data: delta }); + + return end; + }; + this.insertInLine = function(position, text) { + if (text.length == 0) + return position; + + var line = this.$lines[position.row] || ""; + + this.$lines[position.row] = line.substring(0, position.column) + text + + line.substring(position.column); + + var end = { + row : position.row, + column : position.column + text.length + }; + + var delta = { + action: "insertText", + range: Range.fromPoints(position, end), + text: text + }; + this._signal("change", { data: delta }); + + return end; + }; + this.remove = function(range) { + if (!(range instanceof Range)) + range = Range.fromPoints(range.start, range.end); + range.start = this.$clipPosition(range.start); + range.end = this.$clipPosition(range.end); + + if (range.isEmpty()) + return range.start; + + var firstRow = range.start.row; + var lastRow = range.end.row; + + if (range.isMultiLine()) { + var firstFullRow = range.start.column == 0 ? firstRow : firstRow + 1; + var lastFullRow = lastRow - 1; + + if (range.end.column > 0) + this.removeInLine(lastRow, 0, range.end.column); + + if (lastFullRow >= firstFullRow) + this._removeLines(firstFullRow, lastFullRow); + + if (firstFullRow != firstRow) { + this.removeInLine(firstRow, range.start.column, this.getLine(firstRow).length); + this.removeNewLine(range.start.row); + } + } + else { + this.removeInLine(firstRow, range.start.column, range.end.column); + } + return range.start; + }; + this.removeInLine = function(row, startColumn, endColumn) { + if (startColumn == endColumn) + return; + + var range = new Range(row, startColumn, row, endColumn); + var line = this.getLine(row); + var removed = line.substring(startColumn, endColumn); + var newLine = line.substring(0, startColumn) + line.substring(endColumn, line.length); + this.$lines.splice(row, 1, newLine); + + var delta = { + action: "removeText", + range: range, + text: removed + }; + this._signal("change", { data: delta }); + return range.start; + }; + this.removeLines = function(firstRow, lastRow) { + if (firstRow < 0 || lastRow >= this.getLength()) + return this.remove(new Range(firstRow, 0, lastRow + 1, 0)); + return this._removeLines(firstRow, lastRow); + }; + + this._removeLines = function(firstRow, lastRow) { + var range = new Range(firstRow, 0, lastRow + 1, 0); + var removed = this.$lines.splice(firstRow, lastRow - firstRow + 1); + + var delta = { + action: "removeLines", + range: range, + nl: this.getNewLineCharacter(), + lines: removed + }; + this._signal("change", { data: delta }); + return removed; + }; + this.removeNewLine = function(row) { + var firstLine = this.getLine(row); + var secondLine = this.getLine(row+1); + + var range = new Range(row, firstLine.length, row+1, 0); + var line = firstLine + secondLine; + + this.$lines.splice(row, 2, line); + + var delta = { + action: "removeText", + range: range, + text: this.getNewLineCharacter() + }; + this._signal("change", { data: delta }); + }; + this.replace = function(range, text) { + if (!(range instanceof Range)) + range = Range.fromPoints(range.start, range.end); + if (text.length == 0 && range.isEmpty()) + return range.start; + if (text == this.getTextRange(range)) + return range.end; + + this.remove(range); + if (text) { + var end = this.insert(range.start, text); + } + else { + end = range.start; + } + + return end; + }; + this.applyDeltas = function(deltas) { + for (var i=0; i=0; i--) { + var delta = deltas[i]; + + var range = Range.fromPoints(delta.range.start, delta.range.end); + + if (delta.action == "insertLines") + this._removeLines(range.start.row, range.end.row - 1); + else if (delta.action == "insertText") + this.remove(range); + else if (delta.action == "removeLines") + this._insertLines(range.start.row, delta.lines); + else if (delta.action == "removeText") + this.insert(range.start, delta.text); + } + }; + this.indexToPosition = function(index, startRow) { + var lines = this.$lines || this.getAllLines(); + var newlineLength = this.getNewLineCharacter().length; + for (var i = startRow || 0, l = lines.length; i < l; i++) { + index -= lines[i].length + newlineLength; + if (index < 0) + return {row: i, column: index + lines[i].length + newlineLength}; + } + return {row: l-1, column: lines[l-1].length}; + }; + this.positionToIndex = function(pos, startRow) { + var lines = this.$lines || this.getAllLines(); + var newlineLength = this.getNewLineCharacter().length; + var index = 0; + var row = Math.min(pos.row, lines.length); + for (var i = startRow || 0; i < row; ++i) + index += lines[i].length + newlineLength; + + return index + pos.column; + }; + +}).call(Document.prototype); + +exports.Document = Document; +}); + +ace.define('ace/lib/event_emitter', ['require', 'exports', 'module' ], function(require, exports, module) { + + +var EventEmitter = {}; +var stopPropagation = function() { this.propagationStopped = true; }; +var preventDefault = function() { this.defaultPrevented = true; }; + +EventEmitter._emit = +EventEmitter._dispatchEvent = function(eventName, e) { + this._eventRegistry || (this._eventRegistry = {}); + this._defaultHandlers || (this._defaultHandlers = {}); + + var listeners = this._eventRegistry[eventName] || []; + var defaultHandler = this._defaultHandlers[eventName]; + if (!listeners.length && !defaultHandler) + return; + + if (typeof e != "object" || !e) + e = {}; + + if (!e.type) + e.type = eventName; + if (!e.stopPropagation) + e.stopPropagation = stopPropagation; + if (!e.preventDefault) + e.preventDefault = preventDefault; + + listeners = listeners.slice(); + for (var i=0; i [" + this.end.row + "/" + this.end.column + "]"); + }; + + this.contains = function(row, column) { + return this.compare(row, column) == 0; + }; + this.compareRange = function(range) { + var cmp, + end = range.end, + start = range.start; + + cmp = this.compare(end.row, end.column); + if (cmp == 1) { + cmp = this.compare(start.row, start.column); + if (cmp == 1) { + return 2; + } else if (cmp == 0) { + return 1; + } else { + return 0; + } + } else if (cmp == -1) { + return -2; + } else { + cmp = this.compare(start.row, start.column); + if (cmp == -1) { + return -1; + } else if (cmp == 1) { + return 42; + } else { + return 0; + } + } + }; + this.comparePoint = function(p) { + return this.compare(p.row, p.column); + }; + this.containsRange = function(range) { + return this.comparePoint(range.start) == 0 && this.comparePoint(range.end) == 0; + }; + this.intersects = function(range) { + var cmp = this.compareRange(range); + return (cmp == -1 || cmp == 0 || cmp == 1); + }; + this.isEnd = function(row, column) { + return this.end.row == row && this.end.column == column; + }; + this.isStart = function(row, column) { + return this.start.row == row && this.start.column == column; + }; + this.setStart = function(row, column) { + if (typeof row == "object") { + this.start.column = row.column; + this.start.row = row.row; + } else { + this.start.row = row; + this.start.column = column; + } + }; + this.setEnd = function(row, column) { + if (typeof row == "object") { + this.end.column = row.column; + this.end.row = row.row; + } else { + this.end.row = row; + this.end.column = column; + } + }; + this.inside = function(row, column) { + if (this.compare(row, column) == 0) { + if (this.isEnd(row, column) || this.isStart(row, column)) { + return false; + } else { + return true; + } + } + return false; + }; + this.insideStart = function(row, column) { + if (this.compare(row, column) == 0) { + if (this.isEnd(row, column)) { + return false; + } else { + return true; + } + } + return false; + }; + this.insideEnd = function(row, column) { + if (this.compare(row, column) == 0) { + if (this.isStart(row, column)) { + return false; + } else { + return true; + } + } + return false; + }; + this.compare = function(row, column) { + if (!this.isMultiLine()) { + if (row === this.start.row) { + return column < this.start.column ? -1 : (column > this.end.column ? 1 : 0); + }; + } + + if (row < this.start.row) + return -1; + + if (row > this.end.row) + return 1; + + if (this.start.row === row) + return column >= this.start.column ? 0 : -1; + + if (this.end.row === row) + return column <= this.end.column ? 0 : 1; + + return 0; + }; + this.compareStart = function(row, column) { + if (this.start.row == row && this.start.column == column) { + return -1; + } else { + return this.compare(row, column); + } + }; + this.compareEnd = function(row, column) { + if (this.end.row == row && this.end.column == column) { + return 1; + } else { + return this.compare(row, column); + } + }; + this.compareInside = function(row, column) { + if (this.end.row == row && this.end.column == column) { + return 1; + } else if (this.start.row == row && this.start.column == column) { + return -1; + } else { + return this.compare(row, column); + } + }; + this.clipRows = function(firstRow, lastRow) { + if (this.end.row > lastRow) + var end = {row: lastRow + 1, column: 0}; + else if (this.end.row < firstRow) + var end = {row: firstRow, column: 0}; + + if (this.start.row > lastRow) + var start = {row: lastRow + 1, column: 0}; + else if (this.start.row < firstRow) + var start = {row: firstRow, column: 0}; + + return Range.fromPoints(start || this.start, end || this.end); + }; + this.extend = function(row, column) { + var cmp = this.compare(row, column); + + if (cmp == 0) + return this; + else if (cmp == -1) + var start = {row: row, column: column}; + else + var end = {row: row, column: column}; + + return Range.fromPoints(start || this.start, end || this.end); + }; + + this.isEmpty = function() { + return (this.start.row === this.end.row && this.start.column === this.end.column); + }; + this.isMultiLine = function() { + return (this.start.row !== this.end.row); + }; + this.clone = function() { + return Range.fromPoints(this.start, this.end); + }; + this.collapseRows = function() { + if (this.end.column == 0) + return new Range(this.start.row, 0, Math.max(this.start.row, this.end.row-1), 0) + else + return new Range(this.start.row, 0, this.end.row, 0) + }; + this.toScreenRange = function(session) { + var screenPosStart = session.documentToScreenPosition(this.start); + var screenPosEnd = session.documentToScreenPosition(this.end); + + return new Range( + screenPosStart.row, screenPosStart.column, + screenPosEnd.row, screenPosEnd.column + ); + }; + this.moveBy = function(row, column) { + this.start.row += row; + this.start.column += column; + this.end.row += row; + this.end.column += column; + }; + +}).call(Range.prototype); +Range.fromPoints = function(start, end) { + return new Range(start.row, start.column, end.row, end.column); +}; +Range.comparePoints = comparePoints; + +Range.comparePoints = function(p1, p2) { + return p1.row - p2.row || p1.column - p2.column; +}; + + +exports.Range = Range; +}); + +ace.define('ace/anchor', ['require', 'exports', 'module' , 'ace/lib/oop', 'ace/lib/event_emitter'], function(require, exports, module) { + + +var oop = require("./lib/oop"); +var EventEmitter = require("./lib/event_emitter").EventEmitter; + +var Anchor = exports.Anchor = function(doc, row, column) { + this.$onChange = this.onChange.bind(this); + this.attach(doc); + + if (typeof column == "undefined") + this.setPosition(row.row, row.column); + else + this.setPosition(row, column); +}; + +(function() { + + oop.implement(this, EventEmitter); + this.getPosition = function() { + return this.$clipPositionToDocument(this.row, this.column); + }; + this.getDocument = function() { + return this.document; + }; + this.$insertRight = false; + this.onChange = function(e) { + var delta = e.data; + var range = delta.range; + + if (range.start.row == range.end.row && range.start.row != this.row) + return; + + if (range.start.row > this.row) + return; + + if (range.start.row == this.row && range.start.column > this.column) + return; + + var row = this.row; + var column = this.column; + var start = range.start; + var end = range.end; + + if (delta.action === "insertText") { + if (start.row === row && start.column <= column) { + if (start.column === column && this.$insertRight) { + } else if (start.row === end.row) { + column += end.column - start.column; + } else { + column -= start.column; + row += end.row - start.row; + } + } else if (start.row !== end.row && start.row < row) { + row += end.row - start.row; + } + } else if (delta.action === "insertLines") { + if (start.row === row && column === 0 && this.$insertRight) { + } + else if (start.row <= row) { + row += end.row - start.row; + } + } else if (delta.action === "removeText") { + if (start.row === row && start.column < column) { + if (end.column >= column) + column = start.column; + else + column = Math.max(0, column - (end.column - start.column)); + + } else if (start.row !== end.row && start.row < row) { + if (end.row === row) + column = Math.max(0, column - end.column) + start.column; + row -= (end.row - start.row); + } else if (end.row === row) { + row -= end.row - start.row; + column = Math.max(0, column - end.column) + start.column; + } + } else if (delta.action == "removeLines") { + if (start.row <= row) { + if (end.row <= row) + row -= end.row - start.row; + else { + row = start.row; + column = 0; + } + } + } + + this.setPosition(row, column, true); + }; + this.setPosition = function(row, column, noClip) { + var pos; + if (noClip) { + pos = { + row: row, + column: column + }; + } else { + pos = this.$clipPositionToDocument(row, column); + } + + if (this.row == pos.row && this.column == pos.column) + return; + + var old = { + row: this.row, + column: this.column + }; + + this.row = pos.row; + this.column = pos.column; + this._signal("change", { + old: old, + value: pos + }); + }; + this.detach = function() { + this.document.removeEventListener("change", this.$onChange); + }; + this.attach = function(doc) { + this.document = doc || this.document; + this.document.on("change", this.$onChange); + }; + this.$clipPositionToDocument = function(row, column) { + var pos = {}; + + if (row >= this.document.getLength()) { + pos.row = Math.max(0, this.document.getLength() - 1); + pos.column = this.document.getLine(pos.row).length; + } + else if (row < 0) { + pos.row = 0; + pos.column = 0; + } + else { + pos.row = row; + pos.column = Math.min(this.document.getLine(pos.row).length, Math.max(0, column)); + } + + if (column < 0) + pos.column = 0; + + return pos; + }; + +}).call(Anchor.prototype); + +}); +ace.define('ace/mode/css/csslint', ['require', 'exports', 'module' ], function(require, exports, module) { var parserlib = {}; (function(){ - - -/** - * A generic base to inherit from for any object - * that needs event handling. - * @class EventTarget - * @constructor - */ function EventTarget(){ - - /** - * The array of listeners for various events. - * @type Object - * @property _listeners - * @private - */ - this._listeners = {}; + this._listeners = {}; } EventTarget.prototype = { - - //restore constructor constructor: EventTarget, - - /** - * Adds a listener for a given event type. - * @param {String} type The type of event to add a listener for. - * @param {Function} listener The function to call when the event occurs. - * @return {void} - * @method addListener - */ addListener: function(type, listener){ if (!this._listeners[type]){ this._listeners[type] = []; @@ -3302,14 +2089,6 @@ EventTarget.prototype = { this._listeners[type].push(listener); }, - - /** - * Fires an event based on the passed-in object. - * @param {Object|String} event An object with at least a 'type' attribute - * or a string indicating the event name. - * @return {void} - * @method fire - */ fire: function(event){ if (typeof event == "string"){ event = { type: event }; @@ -3317,28 +2096,18 @@ EventTarget.prototype = { if (typeof event.target != "undefined"){ event.target = this; } - + if (typeof event.type == "undefined"){ throw new Error("Event object missing 'type' property."); } - + if (this._listeners[event.type]){ - - //create a copy of the array and use that so listeners can't chane var listeners = this._listeners[event.type].concat(); for (var i=0, len=listeners.length; i < len; i++){ listeners[i].call(this, event); } - } + } }, - - /** - * Removes a listener for a given event type. - * @param {String} type The type of event to remove a listener from. - * @param {Function} listener The function to remove from the event. - * @return {void} - * @method removeListener - */ removeListener: function(type, listener){ if (this._listeners[type]){ var listeners = this._listeners[type]; @@ -3348,152 +2117,52 @@ EventTarget.prototype = { break; } } - - - } + + + } } }; -/** - * Convenient way to read through strings. - * @namespace parserlib.util - * @class StringReader - * @constructor - * @param {String} text The text to read. - */ function StringReader(text){ - - /** - * The input text with line endings normalized. - * @property _input - * @type String - * @private - */ this._input = text.replace(/\n\r?/g, "\n"); - - - /** - * The row for the character to be read next. - * @property _line - * @type int - * @private - */ this._line = 1; - - - /** - * The column for the character to be read next. - * @property _col - * @type int - * @private - */ this._col = 1; - - /** - * The index of the character in the input to be read next. - * @property _cursor - * @type int - * @private - */ this._cursor = 0; } StringReader.prototype = { - - //restore constructor constructor: StringReader, - - //------------------------------------------------------------------------- - // Position info - //------------------------------------------------------------------------- - - /** - * Returns the column of the character to be read next. - * @return {int} The column of the character to be read next. - * @method getCol - */ getCol: function(){ return this._col; }, - - /** - * Returns the row of the character to be read next. - * @return {int} The row of the character to be read next. - * @method getLine - */ getLine: function(){ return this._line ; }, - - /** - * Determines if you're at the end of the input. - * @return {Boolean} True if there's no more input, false otherwise. - * @method eof - */ eof: function(){ return (this._cursor == this._input.length); }, - - //------------------------------------------------------------------------- - // Basic reading - //------------------------------------------------------------------------- - - /** - * Reads the next character without advancing the cursor. - * @param {int} count How many characters to look ahead (default is 1). - * @return {String} The next character or null if there is no next character. - * @method peek - */ peek: function(count){ var c = null; count = (typeof count == "undefined" ? 1 : count); - - //if we're not at the end of the input... if (this._cursor < this._input.length){ - - //get character and increment cursor and column c = this._input.charAt(this._cursor + count - 1); } return c; }, - - /** - * Reads the next character from the input and adjusts the row and column - * accordingly. - * @return {String} The next character or null if there is no next character. - * @method read - */ read: function(){ var c = null; - - //if we're not at the end of the input... if (this._cursor < this._input.length){ - - //if the last character was a newline, increment row count - //and reset column count if (this._input.charAt(this._cursor) == "\n"){ this._line++; this._col=1; } else { this._col++; } - - //get character and increment cursor and column c = this._input.charAt(this._cursor++); } return c; }, - - //------------------------------------------------------------------------- - // Misc - //------------------------------------------------------------------------- - - /** - * Saves the current location so it can be returned to later. - * @method mark - * @return {void} - */ mark: function(){ this._bookmark = { cursor: this._cursor, @@ -3510,29 +2179,10 @@ StringReader.prototype = { delete this._bookmark; } }, - - //------------------------------------------------------------------------- - // Advanced reading - //------------------------------------------------------------------------- - - /** - * Reads up to and including the given string. Throws an error if that - * string is not found. - * @param {String} pattern The string to read. - * @return {String} The string when it is found. - * @throws Error when the string pattern is not found. - * @method readTo - */ readTo: function(pattern){ var buffer = "", c; - - /* - * First, buffer must be the same length as the pattern. - * Then, buffer must end with the pattern or else reach the - * end of the input. - */ while (buffer.length < pattern.length || buffer.lastIndexOf(pattern) != buffer.length - pattern.length){ c = this.read(); if (c){ @@ -3545,17 +2195,6 @@ StringReader.prototype = { return buffer; }, - - /** - * Reads characters while each character causes the given - * filter function to return true. The function is passed - * in each character and either returns true to continue - * reading or false to stop. - * @param {Function} filter The function to read on each character. - * @return {String} The string made up of all characters that passed the - * filter check. - * @method readWhile - */ readWhile: function(filter){ var buffer = "", @@ -3569,25 +2208,10 @@ StringReader.prototype = { return buffer; }, - - /** - * Reads characters that match either text or a regular expression and - * returns those characters. If a match is found, the row and column - * are adjusted; if no match is found, the reader's state is unchanged. - * reading or false to stop. - * @param {String|RegExp} matchter If a string, then the literal string - * value is searched for. If a regular expression, then any string - * matching the pattern is search for. - * @return {String} The string made up of all characters that matched or - * null if there was no match. - * @method readMatch - */ readMatch: function(matcher){ var source = this._input.substring(this._cursor), value = null; - - //if it's a string, just do a straight match if (typeof matcher == "string"){ if (source.indexOf(matcher) === 0){ value = this.readCount(matcher.length); @@ -3600,15 +2224,6 @@ StringReader.prototype = { return value; }, - - - /** - * Reads a given number of characters. If the end of the input is reached, - * it reads only the remaining characters and does not throw an error. - * @param {int} count The number of characters to read. - * @return {String} The string made up the read characters. - * @method readCount - */ readCount: function(count){ var buffer = ""; @@ -3620,184 +2235,42 @@ StringReader.prototype = { } }; -/** - * Type to use when a syntax error occurs. - * @class SyntaxError - * @namespace parserlib.util - * @constructor - * @param {String} message The error message. - * @param {int} line The line at which the error occurred. - * @param {int} col The column at which the error occurred. - */ function SyntaxError(message, line, col){ - - /** - * The column at which the error occurred. - * @type int - * @property col - */ this.col = col; - - /** - * The line at which the error occurred. - * @type int - * @property line - */ this.line = line; - - /** - * The text representation of the unit. - * @type String - * @property text - */ this.message = message; } - -//inherit from Error SyntaxError.prototype = new Error(); -/** - * Base type to represent a single syntactic unit. - * @class SyntaxUnit - * @namespace parserlib.util - * @constructor - * @param {String} text The text of the unit. - * @param {int} line The line of text on which the unit resides. - * @param {int} col The column of text on which the unit resides. - */ function SyntaxUnit(text, line, col, type){ - - - /** - * The column of text on which the unit resides. - * @type int - * @property col - */ this.col = col; - - /** - * The line of text on which the unit resides. - * @type int - * @property line - */ this.line = line; - - /** - * The text representation of the unit. - * @type String - * @property text - */ this.text = text; - - /** - * The type of syntax unit. - * @type int - * @property type - */ this.type = type; } - -/** - * Create a new syntax unit based solely on the given token. - * Convenience method for creating a new syntax unit when - * it represents a single token instead of multiple. - * @param {Object} token The token object to represent. - * @return {parserlib.util.SyntaxUnit} The object representing the token. - * @static - * @method fromToken - */ SyntaxUnit.fromToken = function(token){ return new SyntaxUnit(token.value, token.startLine, token.startCol); }; SyntaxUnit.prototype = { - - //restore constructor constructor: SyntaxUnit, - - /** - * Returns the text representation of the unit. - * @return {String} The text representation of the unit. - * @method valueOf - */ valueOf: function(){ return this.toString(); }, - - /** - * Returns the text representation of the unit. - * @return {String} The text representation of the unit. - * @method toString - */ toString: function(){ return this.text; } }; -/*global StringReader, SyntaxError*/ - -/** - * Generic TokenStream providing base functionality. - * @class TokenStreamBase - * @namespace parserlib.util - * @constructor - * @param {String|StringReader} input The text to tokenize or a reader from - * which to read the input. - */ function TokenStreamBase(input, tokenData){ - - /** - * The string reader for easy access to the text. - * @type StringReader - * @property _reader - * @private - */ this._reader = input ? new StringReader(input.toString()) : null; - - /** - * Token object for the last consumed token. - * @type Token - * @property _token - * @private - */ - this._token = null; - - /** - * The array of token information. - * @type Array - * @property _tokenData - * @private - */ + this._token = null; this._tokenData = tokenData; - - /** - * Lookahead token buffer. - * @type Array - * @property _lt - * @private - */ this._lt = []; - - /** - * Lookahead token buffer index. - * @type int - * @property _ltIndex - * @private - */ this._ltIndex = 0; - + this._ltIndexCache = []; } - -/** - * Accepts an array of token information and outputs - * an array of token data containing key-value mappings - * and matching functions that the TokenStream needs. - * @param {Array} tokens An array of token descriptors. - * @return {Array} An array of processed token data. - * @method createTokenData - * @static - */ TokenStreamBase.createTokenData = function(tokens){ var nameMap = [], @@ -3805,7 +2278,7 @@ TokenStreamBase.createTokenData = function(tokens){ tokenData = tokens.concat([]), i = 0, len = tokenData.length+1; - + tokenData.UNKNOWN = -1; tokenData.unshift({name:"EOF"}); @@ -3816,121 +2289,60 @@ TokenStreamBase.createTokenData = function(tokens){ typeMap[tokenData[i].text] = i; } } - + tokenData.name = function(tt){ return nameMap[tt]; }; - + tokenData.type = function(c){ return typeMap[c]; }; - + return tokenData; }; TokenStreamBase.prototype = { - - //restore constructor - constructor: TokenStreamBase, - - //------------------------------------------------------------------------- - // Matching methods - //------------------------------------------------------------------------- - - /** - * Determines if the next token matches the given token type. - * If so, that token is consumed; if not, the token is placed - * back onto the token stream. You can pass in any number of - * token types and this will return true if any of the token - * types is found. - * @param {int|int[]} tokenTypes Either a single token type or an array of - * token types that the next token might be. If an array is passed, - * it's assumed that the token can be any of these. - * @param {variant} channel (Optional) The channel to read from. If not - * provided, reads from the default (unnamed) channel. - * @return {Boolean} True if the token type matches, false if not. - * @method match - */ + constructor: TokenStreamBase, match: function(tokenTypes, channel){ - - //always convert to an array, makes things easier if (!(tokenTypes instanceof Array)){ tokenTypes = [tokenTypes]; } - + var tt = this.get(channel), i = 0, len = tokenTypes.length; - + while(i < len){ if (tt == tokenTypes[i++]){ return true; } } - - //no match found, put the token back this.unget(); return false; - }, - - /** - * Determines if the next token matches the given token type. - * If so, that token is consumed; if not, an error is thrown. - * @param {int|int[]} tokenTypes Either a single token type or an array of - * token types that the next token should be. If an array is passed, - * it's assumed that the token must be one of these. - * @param {variant} channel (Optional) The channel to read from. If not - * provided, reads from the default (unnamed) channel. - * @return {void} - * @method mustMatch - */ + }, mustMatch: function(tokenTypes, channel){ var token; - - //always convert to an array, makes things easier if (!(tokenTypes instanceof Array)){ tokenTypes = [tokenTypes]; } - if (!this.match.apply(this, arguments)){ + if (!this.match.apply(this, arguments)){ token = this.LT(1); - throw new SyntaxError("Expected " + this._tokenData[tokenTypes[0]].name + + throw new SyntaxError("Expected " + this._tokenData[tokenTypes[0]].name + " at line " + token.startLine + ", col " + token.startCol + ".", token.startLine, token.startCol); } }, - - //------------------------------------------------------------------------- - // Consuming methods - //------------------------------------------------------------------------- - - /** - * Keeps reading from the token stream until either one of the specified - * token types is found or until the end of the input is reached. - * @param {int|int[]} tokenTypes Either a single token type or an array of - * token types that the next token should be. If an array is passed, - * it's assumed that the token must be one of these. - * @param {variant} channel (Optional) The channel to read from. If not - * provided, reads from the default (unnamed) channel. - * @return {void} - * @method advance - */ advance: function(tokenTypes, channel){ - + while(this.LA(0) !== 0 && !this.match(tokenTypes, channel)){ this.get(); } - return this.LA(0); + return this.LA(0); }, - - /** - * Consumes the next token from the token stream. - * @return {int} The token type of the token that was just consumed. - * @method get - */ get: function(channel){ - + var tokenInfo = this._tokenData, reader = this._reader, value, @@ -3939,167 +2351,86 @@ TokenStreamBase.prototype = { found = false, token, info; - - //check the lookahead buffer first - if (this._lt.length && this._ltIndex >= 0 && this._ltIndex < this._lt.length){ - + if (this._lt.length && this._ltIndex >= 0 && this._ltIndex < this._lt.length){ + i++; this._token = this._lt[this._ltIndex++]; info = tokenInfo[this._token.type]; - - //obey channels logic while((info.channel !== undefined && channel !== info.channel) && this._ltIndex < this._lt.length){ this._token = this._lt[this._ltIndex++]; info = tokenInfo[this._token.type]; i++; } - - //here be dragons if ((info.channel === undefined || channel === info.channel) && this._ltIndex <= this._lt.length){ this._ltIndexCache.push(i); return this._token.type; } } - - //call token retriever method token = this._getToken(); - - //if it should be hidden, don't save a token if (token.type > -1 && !tokenInfo[token.type].hide){ - - //apply token channel token.channel = tokenInfo[token.type].channel; - - //save for later this._token = token; this._lt.push(token); - - //save space that will be moved (must be done before array is truncated) - this._ltIndexCache.push(this._lt.length - this._ltIndex + i); - - //keep the buffer under 5 items + this._ltIndexCache.push(this._lt.length - this._ltIndex + i); if (this._lt.length > 5){ - this._lt.shift(); + this._lt.shift(); } - - //also keep the shift buffer under 5 items if (this._ltIndexCache.length > 5){ this._ltIndexCache.shift(); } - - //update lookahead index this._ltIndex = this._lt.length; } - - /* - * Skip to the next token if: - * 1. The token type is marked as hidden. - * 2. The token type has a channel specified and it isn't the current channel. - */ info = tokenInfo[token.type]; - if (info && - (info.hide || + if (info && + (info.hide || (info.channel !== undefined && channel !== info.channel))){ return this.get(channel); } else { - //return just the type return token.type; } }, - - /** - * Looks ahead a certain number of tokens and returns the token type at - * that position. This will throw an error if you lookahead past the - * end of input, past the size of the lookahead buffer, or back past - * the first token in the lookahead buffer. - * @param {int} The index of the token type to retrieve. 0 for the - * current token, 1 for the next, -1 for the previous, etc. - * @return {int} The token type of the token in the given position. - * @method LA - */ LA: function(index){ var total = index, tt; if (index > 0){ - //TODO: Store 5 somewhere if (index > 5){ throw new Error("Too much lookahead."); } - - //get all those tokens while(total){ - tt = this.get(); - total--; + tt = this.get(); + total--; } - - //unget all those tokens while(total < index){ this.unget(); total++; } } else if (index < 0){ - + if(this._lt[this._ltIndex+index]){ tt = this._lt[this._ltIndex+index].type; } else { throw new Error("Too much lookbehind."); } - + } else { tt = this._token.type; } - + return tt; - + }, - - /** - * Looks ahead a certain number of tokens and returns the token at - * that position. This will throw an error if you lookahead past the - * end of input, past the size of the lookahead buffer, or back past - * the first token in the lookahead buffer. - * @param {int} The index of the token type to retrieve. 0 for the - * current token, 1 for the next, -1 for the previous, etc. - * @return {Object} The token of the token in the given position. - * @method LA - */ LT: function(index){ - - //lookahead first to prime the token buffer this.LA(index); - - //now find the token, subtract one because _ltIndex is already at the next index - return this._lt[this._ltIndex+index-1]; + return this._lt[this._ltIndex+index-1]; }, - - /** - * Returns the token type for the next token in the stream without - * consuming it. - * @return {int} The token type of the next token in the stream. - * @method peek - */ peek: function(){ return this.LA(1); }, - - /** - * Returns the actual token object for the last consumed token. - * @return {Token} The token object for the last consumed token. - * @method token - */ token: function(){ return this._token; }, - - /** - * Returns the name of the token for the given token type. - * @param {int} tokenType The type of token to get the name of. - * @return {String} The name of the token or "UNKNOWN_TOKEN" for any - * invalid token type. - * @method tokenName - */ tokenName: function(tokenType){ if (tokenType < 0 || tokenType > this._tokenData.length){ return "UNKNOWN_TOKEN"; @@ -4107,24 +2438,10 @@ TokenStreamBase.prototype = { return this._tokenData[tokenType].name; } }, - - /** - * Returns the token type value for the given token name. - * @param {String} tokenName The name of the token whose value should be returned. - * @return {int} The token type value for the given token name or -1 - * for an unknown token. - * @method tokenName - */ tokenType: function(tokenName){ return this._tokenData[tokenName] || -1; }, - - /** - * Returns the last consumed token to the token stream. - * @method unget - */ unget: function(){ - //if (this._ltIndex > -1){ if (this._ltIndexCache.length){ this._ltIndex -= this._ltIndexCache.pop();//--; this._token = this._lt[this._ltIndex - 1]; @@ -4146,32 +2463,6 @@ EventTarget : EventTarget, TokenStreamBase : TokenStreamBase }; })(); - - -/* -Parser-Lib -Copyright (c) 2009-2011 Nicholas C. Zakas. All rights reserved. - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. - -*/ -/* Version v0.1.6, Build time: 2-March-2012 02:44:32 */ (function(){ var EventTarget = parserlib.util.EventTarget, TokenStreamBase = parserlib.util.TokenStreamBase, @@ -4206,6 +2497,7 @@ var Colors = { darkcyan :"#008b8b", darkgoldenrod :"#b8860b", darkgray :"#a9a9a9", + darkgrey :"#a9a9a9", darkgreen :"#006400", darkkhaki :"#bdb76b", darkmagenta :"#8b008b", @@ -4217,11 +2509,13 @@ var Colors = { darkseagreen :"#8fbc8f", darkslateblue :"#483d8b", darkslategray :"#2f4f4f", + darkslategrey :"#2f4f4f", darkturquoise :"#00ced1", darkviolet :"#9400d3", deeppink :"#ff1493", deepskyblue :"#00bfff", dimgray :"#696969", + dimgrey :"#696969", dodgerblue :"#1e90ff", firebrick :"#b22222", floralwhite :"#fffaf0", @@ -4232,6 +2526,7 @@ var Colors = { gold :"#ffd700", goldenrod :"#daa520", gray :"#808080", + grey :"#808080", green :"#008000", greenyellow :"#adff2f", honeydew :"#f0fff0", @@ -4249,12 +2544,14 @@ var Colors = { lightcyan :"#e0ffff", lightgoldenrodyellow :"#fafad2", lightgray :"#d3d3d3", + lightgrey :"#d3d3d3", lightgreen :"#90ee90", lightpink :"#ffb6c1", lightsalmon :"#ffa07a", lightseagreen :"#20b2aa", lightskyblue :"#87cefa", lightslategray :"#778899", + lightslategrey :"#778899", lightsteelblue :"#b0c4de", lightyellow :"#ffffe0", lime :"#00ff00", @@ -4307,6 +2604,7 @@ var Colors = { skyblue :"#87ceeb", slateblue :"#6a5acd", slategray :"#708090", + slategrey :"#708090", snow :"#fffafa", springgreen :"#00ff7f", steelblue :"#4682b4", @@ -4320,31 +2618,41 @@ var Colors = { white :"#ffffff", whitesmoke :"#f5f5f5", yellow :"#ffff00", - yellowgreen :"#9acd32" + yellowgreen :"#9acd32", + activeBorder :"Active window border.", + activecaption :"Active window caption.", + appworkspace :"Background color of multiple document interface.", + background :"Desktop background.", + buttonface :"The face background color for 3-D elements that appear 3-D due to one layer of surrounding border.", + buttonhighlight :"The color of the border facing the light source for 3-D elements that appear 3-D due to one layer of surrounding border.", + buttonshadow :"The color of the border away from the light source for 3-D elements that appear 3-D due to one layer of surrounding border.", + buttontext :"Text on push buttons.", + captiontext :"Text in caption, size box, and scrollbar arrow box.", + graytext :"Grayed (disabled) text. This color is set to #000 if the current display driver does not support a solid gray color.", + greytext :"Greyed (disabled) text. This color is set to #000 if the current display driver does not support a solid grey color.", + highlight :"Item(s) selected in a control.", + highlighttext :"Text of item(s) selected in a control.", + inactiveborder :"Inactive window border.", + inactivecaption :"Inactive window caption.", + inactivecaptiontext :"Color of text in an inactive caption.", + infobackground :"Background color for tooltip controls.", + infotext :"Text color for tooltip controls.", + menu :"Menu background.", + menutext :"Text in menus.", + scrollbar :"Scroll bar gray area.", + threeddarkshadow :"The color of the darker (generally outer) of the two borders away from the light source for 3-D elements that appear 3-D due to two concentric layers of surrounding border.", + threedface :"The face background color for 3-D elements that appear 3-D due to two concentric layers of surrounding border.", + threedhighlight :"The color of the lighter (generally outer) of the two borders facing the light source for 3-D elements that appear 3-D due to two concentric layers of surrounding border.", + threedlightshadow :"The color of the darker (generally inner) of the two borders facing the light source for 3-D elements that appear 3-D due to two concentric layers of surrounding border.", + threedshadow :"The color of the lighter (generally inner) of the two borders away from the light source for 3-D elements that appear 3-D due to two concentric layers of surrounding border.", + window :"Window background.", + windowframe :"Window frame.", + windowtext :"Text in windows." }; -/*global SyntaxUnit, Parser*/ -/** - * Represents a selector combinator (whitespace, +, >). - * @namespace parserlib.css - * @class Combinator - * @extends parserlib.util.SyntaxUnit - * @constructor - * @param {String} text The text representation of the unit. - * @param {int} line The line of text on which the unit resides. - * @param {int} col The column of text on which the unit resides. - */ function Combinator(text, line, col){ - - SyntaxUnit.call(this, text, line, col, Parser.COMBINATOR_TYPE); - /** - * The type of modifier. - * @type String - * @property type - */ + SyntaxUnit.call(this, text, line, col, Parser.COMBINATOR_TYPE); this.type = "unknown"; - - //pretty simple if (/^\s+$/.test(text)){ this.type = "descendant"; } else if (text == ">"){ @@ -4359,104 +2667,27 @@ function Combinator(text, line, col){ Combinator.prototype = new SyntaxUnit(); Combinator.prototype.constructor = Combinator; - - -/*global SyntaxUnit, Parser*/ -/** - * Represents a media feature, such as max-width:500. - * @namespace parserlib.css - * @class MediaFeature - * @extends parserlib.util.SyntaxUnit - * @constructor - * @param {SyntaxUnit} name The name of the feature. - * @param {SyntaxUnit} value The value of the feature or null if none. - */ function MediaFeature(name, value){ - + SyntaxUnit.call(this, "(" + name + (value !== null ? ":" + value : "") + ")", name.startLine, name.startCol, Parser.MEDIA_FEATURE_TYPE); - - /** - * The name of the media feature - * @type String - * @property name - */ this.name = name; - - /** - * The value for the feature or null if there is none. - * @type SyntaxUnit - * @property value - */ this.value = value; } MediaFeature.prototype = new SyntaxUnit(); MediaFeature.prototype.constructor = MediaFeature; - - -/*global SyntaxUnit, Parser*/ -/** - * Represents an individual media query. - * @namespace parserlib.css - * @class MediaQuery - * @extends parserlib.util.SyntaxUnit - * @constructor - * @param {String} modifier The modifier "not" or "only" (or null). - * @param {String} mediaType The type of media (i.e., "print"). - * @param {Array} parts Array of selectors parts making up this selector. - * @param {int} line The line of text on which the unit resides. - * @param {int} col The column of text on which the unit resides. - */ function MediaQuery(modifier, mediaType, features, line, col){ - - SyntaxUnit.call(this, (modifier ? modifier + " ": "") + (mediaType ? mediaType + " " : "") + features.join(" and "), line, col, Parser.MEDIA_QUERY_TYPE); - /** - * The media modifier ("not" or "only") - * @type String - * @property modifier - */ + SyntaxUnit.call(this, (modifier ? modifier + " ": "") + (mediaType ? mediaType : "") + (mediaType && features.length > 0 ? " and " : "") + features.join(" and "), line, col, Parser.MEDIA_QUERY_TYPE); this.modifier = modifier; - - /** - * The mediaType (i.e., "print") - * @type String - * @property mediaType - */ - this.mediaType = mediaType; - - /** - * The parts that make up the selector. - * @type Array - * @property features - */ + this.mediaType = mediaType; this.features = features; } MediaQuery.prototype = new SyntaxUnit(); MediaQuery.prototype.constructor = MediaQuery; - - -/*global Tokens, TokenStream, SyntaxError, Properties, Validation, ValidationError, SyntaxUnit, - PropertyValue, PropertyValuePart, SelectorPart, SelectorSubPart, Selector, - PropertyName, Combinator, MediaFeature, MediaQuery, EventTarget */ - -/** - * A CSS3 parser. - * @namespace parserlib.css - * @class Parser - * @constructor - * @param {Object} options (Optional) Various options for the parser: - * starHack (true|false) to allow IE6 star hack as valid, - * underscoreHack (true|false) to interpret leading underscores - * as IE6-7 targeting for known properties, ieFilters (true|false) - * to indicate that IE < 8 filters should be accepted and not throw - * syntax errors. - */ function Parser(options){ - - //inherit event functionality EventTarget.call(this); @@ -4464,8 +2695,6 @@ function Parser(options){ this._tokenStream = null; } - -//Static constants Parser.DEFAULT_TYPE = 0; Parser.COMBINATOR_TYPE = 1; Parser.MEDIA_FEATURE_TYPE = 2; @@ -4482,11 +2711,7 @@ Parser.prototype = function(){ var proto = new EventTarget(), //new prototype prop, additions = { - - //restore constructor constructor: Parser, - - //instance constants - yuck DEFAULT_TYPE : 0, COMBINATOR_TYPE : 1, MEDIA_FEATURE_TYPE : 2, @@ -4496,109 +2721,83 @@ Parser.prototype = function(){ PROPERTY_VALUE_PART_TYPE : 6, SELECTOR_TYPE : 7, SELECTOR_PART_TYPE : 8, - SELECTOR_SUB_PART_TYPE : 9, - - //----------------------------------------------------------------- - // Grammar - //----------------------------------------------------------------- - + SELECTOR_SUB_PART_TYPE : 9, + _stylesheet: function(){ - - /* - * stylesheet - * : [ CHARSET_SYM S* STRING S* ';' ]? - * [S|CDO|CDC]* [ import [S|CDO|CDC]* ]* - * [ namespace [S|CDO|CDC]* ]* - * [ [ ruleset | media | page | font_face | keyframes ] [S|CDO|CDC]* ]* - * ; - */ - + var tokenStream = this._tokenStream, charset = null, count, token, tt; - - this.fire("startstylesheet"); - - //try to read character set - this._charset(); - - this._skipCruft(); - //try to read imports - may be more than one + this.fire("startstylesheet"); + this._charset(); + + this._skipCruft(); while (tokenStream.peek() == Tokens.IMPORT_SYM){ this._import(); this._skipCruft(); } - - //try to read namespaces - may be more than one while (tokenStream.peek() == Tokens.NAMESPACE_SYM){ this._namespace(); this._skipCruft(); } - - //get the next token tt = tokenStream.peek(); - - //try to read the rest while(tt > Tokens.EOF){ - + try { - + switch(tt){ case Tokens.MEDIA_SYM: this._media(); this._skipCruft(); break; case Tokens.PAGE_SYM: - this._page(); + this._page(); this._skipCruft(); - break; + break; case Tokens.FONT_FACE_SYM: - this._font_face(); + this._font_face(); this._skipCruft(); - break; + break; case Tokens.KEYFRAMES_SYM: - this._keyframes(); + this._keyframes(); this._skipCruft(); - break; + break; + case Tokens.VIEWPORT_SYM: + this._viewport(); + this._skipCruft(); + break; case Tokens.UNKNOWN_SYM: //unknown @ rule tokenStream.get(); if (!this.options.strict){ - - //fire error event this.fire({ type: "error", error: null, message: "Unknown @ rule: " + tokenStream.LT(0).value + ".", line: tokenStream.LT(0).startLine, col: tokenStream.LT(0).startCol - }); - - //skip braces + }); count=0; while (tokenStream.advance([Tokens.LBRACE, Tokens.RBRACE]) == Tokens.LBRACE){ count++; //keep track of nesting depth } - + while(count){ tokenStream.advance([Tokens.RBRACE]); count--; } - + } else { - //not a syntax error, rethrow it throw new SyntaxError("Unknown @ rule.", tokenStream.LT(0).startLine, tokenStream.LT(0).startCol); - } + } break; case Tokens.S: this._readWhitespace(); break; - default: + default: if(!this._ruleset()){ - - //error handling for known issues switch(tt){ case Tokens.CHARSET_SYM: token = tokenStream.LT(1); @@ -4616,7 +2815,7 @@ Parser.prototype = function(){ tokenStream.get(); //get the last token this._unexpectedToken(tokenStream.token()); } - + } } } catch(ex) { @@ -4627,84 +2826,73 @@ Parser.prototype = function(){ message: ex.message, line: ex.line, col: ex.col - }); + }); } else { throw ex; } } - + tt = tokenStream.peek(); } - + if (tt != Tokens.EOF){ this._unexpectedToken(tokenStream.token()); } - + this.fire("endstylesheet"); }, - + _charset: function(emit){ var tokenStream = this._tokenStream, charset, token, line, col; - + if (tokenStream.match(Tokens.CHARSET_SYM)){ line = tokenStream.token().startLine; col = tokenStream.token().startCol; - + this._readWhitespace(); tokenStream.mustMatch(Tokens.STRING); - + token = tokenStream.token(); charset = token.value; - + this._readWhitespace(); tokenStream.mustMatch(Tokens.SEMICOLON); - + if (emit !== false){ - this.fire({ + this.fire({ type: "charset", charset:charset, line: line, col: col }); } - } + } }, - + _import: function(emit){ - /* - * import - * : IMPORT_SYM S* - * [STRING|URI] S* media_query_list? ';' S* - */ - + var tokenStream = this._tokenStream, tt, uri, importToken, mediaList = []; - - //read import symbol tokenStream.mustMatch(Tokens.IMPORT_SYM); importToken = tokenStream.token(); this._readWhitespace(); - + tokenStream.mustMatch([Tokens.STRING, Tokens.URI]); - - //grab the URI value - uri = tokenStream.token().value.replace(/(?:url\()?["']([^"']+)["']\)?/, "$1"); + uri = tokenStream.token().value.replace(/(?:url\()?["']([^"']+)["']\)?/, "$1"); this._readWhitespace(); - + mediaList = this._media_query_list(); - - //must end with a semicolon tokenStream.mustMatch(Tokens.SEMICOLON); this._readWhitespace(); - + if (emit !== false){ this.fire({ type: "import", @@ -4714,47 +2902,32 @@ Parser.prototype = function(){ col: importToken.startCol }); } - + }, - + _namespace: function(emit){ - /* - * namespace - * : NAMESPACE_SYM S* [namespace_prefix S*]? [STRING|URI] S* ';' S* - */ - + var tokenStream = this._tokenStream, line, col, prefix, uri; - - //read import symbol tokenStream.mustMatch(Tokens.NAMESPACE_SYM); line = tokenStream.token().startLine; col = tokenStream.token().startCol; this._readWhitespace(); - - //it's a namespace prefix - no _namespace_prefix() method because it's just an IDENT if (tokenStream.match(Tokens.IDENT)){ prefix = tokenStream.token().value; this._readWhitespace(); } - + tokenStream.mustMatch([Tokens.STRING, Tokens.URI]); - /*if (!tokenStream.match(Tokens.STRING)){ - tokenStream.mustMatch(Tokens.URI); - }*/ - - //grab the URI value - uri = tokenStream.token().value.replace(/(?:url\()?["']([^"']+)["']\)?/, "$1"); + uri = tokenStream.token().value.replace(/(?:url\()?["']([^"']+)["']\)?/, "$1"); this._readWhitespace(); - - //must end with a semicolon tokenStream.mustMatch(Tokens.SEMICOLON); this._readWhitespace(); - + if (emit !== false){ this.fire({ type: "namespace", @@ -4764,106 +2937,79 @@ Parser.prototype = function(){ col: col }); } - - }, - + + }, + _media: function(){ - /* - * media - * : MEDIA_SYM S* media_query_list S* '{' S* ruleset* '}' S* - * ; - */ var tokenStream = this._tokenStream, line, col, mediaList;// = []; - - //look for @media tokenStream.mustMatch(Tokens.MEDIA_SYM); line = tokenStream.token().startLine; col = tokenStream.token().startCol; - - this._readWhitespace(); + + this._readWhitespace(); mediaList = this._media_query_list(); tokenStream.mustMatch(Tokens.LBRACE); this._readWhitespace(); - + this.fire({ type: "startmedia", media: mediaList, line: line, col: col }); - + while(true) { if (tokenStream.peek() == Tokens.PAGE_SYM){ this._page(); + } else if (tokenStream.peek() == Tokens.FONT_FACE_SYM){ + this._font_face(); } else if (!this._ruleset()){ break; - } + } } - + tokenStream.mustMatch(Tokens.RBRACE); this._readWhitespace(); - + this.fire({ type: "endmedia", media: mediaList, line: line, col: col }); - }, - - - //CSS3 Media Queries + }, _media_query_list: function(){ - /* - * media_query_list - * : S* [media_query [ ',' S* media_query ]* ]? - * ; - */ var tokenStream = this._tokenStream, mediaList = []; - - + + this._readWhitespace(); - + if (tokenStream.peek() == Tokens.IDENT || tokenStream.peek() == Tokens.LPAREN){ mediaList.push(this._media_query()); } - + while(tokenStream.match(Tokens.COMMA)){ this._readWhitespace(); mediaList.push(this._media_query()); } - + return mediaList; }, - - /* - * Note: "expression" in the grammar maps to the _media_expression - * method. - - */ _media_query: function(){ - /* - * media_query - * : [ONLY | NOT]? S* media_type S* [ AND S* expression ]* - * | expression [ AND S* expression ]* - * ; - */ var tokenStream = this._tokenStream, type = null, ident = null, token = null, expressions = []; - + if (tokenStream.match(Tokens.IDENT)){ ident = tokenStream.token().value.toLowerCase(); - - //since there's no custom tokens for these, need to manually check if (ident != "only" && ident != "not"){ tokenStream.unget(); ident = null; @@ -4871,9 +3017,9 @@ Parser.prototype = function(){ token = tokenStream.token(); } } - + this._readWhitespace(); - + if (tokenStream.peek() == Tokens.IDENT){ type = this._media_type(); if (token === null){ @@ -4884,17 +3030,17 @@ Parser.prototype = function(){ token = tokenStream.LT(1); } expressions.push(this._media_expression()); - } - + } + if (type === null && expressions.length === 0){ return null; - } else { + } else { this._readWhitespace(); while (tokenStream.match(Tokens.IDENT)){ if (tokenStream.token().value.toLowerCase() != "and"){ this._unexpectedToken(tokenStream.token()); } - + this._readWhitespace(); expressions.push(this._media_expression()); } @@ -4902,131 +3048,82 @@ Parser.prototype = function(){ return new MediaQuery(ident, type, expressions, token.startLine, token.startCol); }, - - //CSS3 Media Queries _media_type: function(){ - /* - * media_type - * : IDENT - * ; - */ - return this._media_feature(); + return this._media_feature(); }, - - /** - * Note: in CSS3 Media Queries, this is called "expression". - * Renamed here to avoid conflict with CSS3 Selectors - * definition of "expression". Also note that "expr" in the - * grammar now maps to "expression" from CSS3 selectors. - * @method _media_expression - * @private - */ _media_expression: function(){ - /* - * expression - * : '(' S* media_feature S* [ ':' S* expr ]? ')' S* - * ; - */ var tokenStream = this._tokenStream, feature = null, token, expression = null; - + tokenStream.mustMatch(Tokens.LPAREN); - + feature = this._media_feature(); this._readWhitespace(); - + if (tokenStream.match(Tokens.COLON)){ this._readWhitespace(); token = tokenStream.LT(1); expression = this._expression(); } - + tokenStream.mustMatch(Tokens.RPAREN); this._readWhitespace(); - return new MediaFeature(feature, (expression ? new SyntaxUnit(expression, token.startLine, token.startCol) : null)); + return new MediaFeature(feature, (expression ? new SyntaxUnit(expression, token.startLine, token.startCol) : null)); }, - - //CSS3 Media Queries _media_feature: function(){ - /* - * media_feature - * : IDENT - * ; - */ var tokenStream = this._tokenStream; - + tokenStream.mustMatch(Tokens.IDENT); - - return SyntaxUnit.fromToken(tokenStream.token()); + + return SyntaxUnit.fromToken(tokenStream.token()); }, - - //CSS3 Paged Media _page: function(){ - /* - * page: - * PAGE_SYM S* IDENT? pseudo_page? S* - * '{' S* [ declaration | margin ]? [ ';' S* [ declaration | margin ]? ]* '}' S* - * ; - */ var tokenStream = this._tokenStream, line, col, identifier = null, pseudoPage = null; - - //look for @page tokenStream.mustMatch(Tokens.PAGE_SYM); line = tokenStream.token().startLine; col = tokenStream.token().startCol; - + this._readWhitespace(); - + if (tokenStream.match(Tokens.IDENT)){ identifier = tokenStream.token().value; - - //The value 'auto' may not be used as a page name and MUST be treated as a syntax error. if (identifier.toLowerCase() === "auto"){ this._unexpectedToken(tokenStream.token()); } - } - - //see if there's a colon upcoming + } if (tokenStream.peek() == Tokens.COLON){ pseudoPage = this._pseudo_page(); } - + this._readWhitespace(); - + this.fire({ type: "startpage", id: identifier, pseudo: pseudoPage, line: line, col: col - }); + }); + + this._readDeclarations(true, true); - this._readDeclarations(true, true); - this.fire({ type: "endpage", id: identifier, pseudo: pseudoPage, line: line, col: col - }); - + }); + }, - - //CSS3 Paged Media _margin: function(){ - /* - * margin : - * margin_sym S* '{' declaration [ ';' S* declaration? ]* '}' S* - * ; - */ var tokenStream = this._tokenStream, line, col, @@ -5035,14 +3132,14 @@ Parser.prototype = function(){ if (marginSym){ line = tokenStream.token().startLine; col = tokenStream.token().startCol; - + this.fire({ type: "startpagemargin", margin: marginSym, line: line, col: col - }); - + }); + this._readDeclarations(true); this.fire({ @@ -5050,169 +3147,135 @@ Parser.prototype = function(){ margin: marginSym, line: line, col: col - }); + }); return true; } else { return false; } }, - - //CSS3 Paged Media _margin_sym: function(){ - - /* - * margin_sym : - * TOPLEFTCORNER_SYM | - * TOPLEFT_SYM | - * TOPCENTER_SYM | - * TOPRIGHT_SYM | - * TOPRIGHTCORNER_SYM | - * BOTTOMLEFTCORNER_SYM | - * BOTTOMLEFT_SYM | - * BOTTOMCENTER_SYM | - * BOTTOMRIGHT_SYM | - * BOTTOMRIGHTCORNER_SYM | - * LEFTTOP_SYM | - * LEFTMIDDLE_SYM | - * LEFTBOTTOM_SYM | - * RIGHTTOP_SYM | - * RIGHTMIDDLE_SYM | - * RIGHTBOTTOM_SYM - * ; - */ - + var tokenStream = this._tokenStream; - + if(tokenStream.match([Tokens.TOPLEFTCORNER_SYM, Tokens.TOPLEFT_SYM, Tokens.TOPCENTER_SYM, Tokens.TOPRIGHT_SYM, Tokens.TOPRIGHTCORNER_SYM, - Tokens.BOTTOMLEFTCORNER_SYM, Tokens.BOTTOMLEFT_SYM, + Tokens.BOTTOMLEFTCORNER_SYM, Tokens.BOTTOMLEFT_SYM, Tokens.BOTTOMCENTER_SYM, Tokens.BOTTOMRIGHT_SYM, - Tokens.BOTTOMRIGHTCORNER_SYM, Tokens.LEFTTOP_SYM, + Tokens.BOTTOMRIGHTCORNER_SYM, Tokens.LEFTTOP_SYM, Tokens.LEFTMIDDLE_SYM, Tokens.LEFTBOTTOM_SYM, Tokens.RIGHTTOP_SYM, Tokens.RIGHTMIDDLE_SYM, Tokens.RIGHTBOTTOM_SYM])) { - return SyntaxUnit.fromToken(tokenStream.token()); + return SyntaxUnit.fromToken(tokenStream.token()); } else { return null; } - + }, - + _pseudo_page: function(){ - /* - * pseudo_page - * : ':' IDENT - * ; - */ - + var tokenStream = this._tokenStream; - + tokenStream.mustMatch(Tokens.COLON); tokenStream.mustMatch(Tokens.IDENT); - - //TODO: CSS3 Paged Media says only "left", "center", and "right" are allowed - + return tokenStream.token().value; }, - + _font_face: function(){ - /* - * font_face - * : FONT_FACE_SYM S* - * '{' S* declaration [ ';' S* declaration ]* '}' S* - * ; - */ var tokenStream = this._tokenStream, line, col; - - //look for @page tokenStream.mustMatch(Tokens.FONT_FACE_SYM); line = tokenStream.token().startLine; col = tokenStream.token().startCol; - + this._readWhitespace(); this.fire({ type: "startfontface", line: line, col: col - }); - + }); + this._readDeclarations(true); - + this.fire({ type: "endfontface", line: line, col: col - }); + }); }, - _operator: function(){ - - /* - * operator - * : '/' S* | ',' S* | /( empty )/ - * ; - */ - + _viewport: function(){ + var tokenStream = this._tokenStream, + line, + col; + + tokenStream.mustMatch(Tokens.VIEWPORT_SYM); + line = tokenStream.token().startLine; + col = tokenStream.token().startCol; + + this._readWhitespace(); + + this.fire({ + type: "startviewport", + line: line, + col: col + }); + + this._readDeclarations(true); + + this.fire({ + type: "endviewport", + line: line, + col: col + }); + + }, + + _operator: function(inFunction){ + var tokenStream = this._tokenStream, token = null; - - if (tokenStream.match([Tokens.SLASH, Tokens.COMMA])){ + + if (tokenStream.match([Tokens.SLASH, Tokens.COMMA]) || + (inFunction && tokenStream.match([Tokens.PLUS, Tokens.STAR, Tokens.MINUS]))){ token = tokenStream.token(); this._readWhitespace(); - } + } return token ? PropertyValuePart.fromToken(token) : null; - + }, - + _combinator: function(){ - - /* - * combinator - * : PLUS S* | GREATER S* | TILDE S* | S+ - * ; - */ - + var tokenStream = this._tokenStream, value = null, token; - - if(tokenStream.match([Tokens.PLUS, Tokens.GREATER, Tokens.TILDE])){ + + if(tokenStream.match([Tokens.PLUS, Tokens.GREATER, Tokens.TILDE])){ token = tokenStream.token(); value = new Combinator(token.value, token.startLine, token.startCol); this._readWhitespace(); } - + return value; }, - + _unary_operator: function(){ - - /* - * unary_operator - * : '-' | '+' - * ; - */ - + var tokenStream = this._tokenStream; - + if (tokenStream.match([Tokens.MINUS, Tokens.PLUS])){ return tokenStream.token().value; } else { return null; - } + } }, - + _property: function(){ - - /* - * property - * : IDENT S* - * ; - */ - + var tokenStream = this._tokenStream, value = null, hack = null, @@ -5220,8 +3283,6 @@ Parser.prototype = function(){ token, line, col; - - //check for star hack - throws error if not allowed if (tokenStream.peek() == Tokens.STAR && this.options.starHack){ tokenStream.get(); token = tokenStream.token(); @@ -5229,114 +3290,79 @@ Parser.prototype = function(){ line = token.startLine; col = token.startCol; } - + if(tokenStream.match(Tokens.IDENT)){ token = tokenStream.token(); tokenValue = token.value; - - //check for underscore hack - no error if not allowed because it's valid CSS syntax if (tokenValue.charAt(0) == "_" && this.options.underscoreHack){ hack = "_"; tokenValue = tokenValue.substring(1); } - + value = new PropertyName(tokenValue, hack, (line||token.startLine), (col||token.startCol)); this._readWhitespace(); } - + return value; }, - - //Augmented with CSS3 Selectors _ruleset: function(){ - /* - * ruleset - * : selectors_group - * '{' S* declaration? [ ';' S* declaration? ]* '}' S* - * ; - */ - + var tokenStream = this._tokenStream, tt, selectors; - - - /* - * Error Recovery: If even a single selector fails to parse, - * then the entire ruleset should be thrown away. - */ try { selectors = this._selectors_group(); } catch (ex){ if (ex instanceof SyntaxError && !this.options.strict){ - - //fire error event this.fire({ type: "error", error: ex, message: ex.message, line: ex.line, col: ex.col - }); - - //skip over everything until closing brace + }); tt = tokenStream.advance([Tokens.RBRACE]); if (tt == Tokens.RBRACE){ - //if there's a right brace, the rule is finished so don't do anything } else { - //otherwise, rethrow the error because it wasn't handled properly throw ex; - } - + } + } else { - //not a syntax error, rethrow it throw ex; - } - - //trigger parser to continue + } return true; } - - //if it got here, all selectors parsed - if (selectors){ - + if (selectors){ + this.fire({ type: "startrule", selectors: selectors, line: selectors[0].line, col: selectors[0].col - }); - - this._readDeclarations(true); - + }); + + this._readDeclarations(true); + this.fire({ type: "endrule", selectors: selectors, line: selectors[0].line, col: selectors[0].col - }); - - } - - return selectors; - - }, + }); - //CSS3 Selectors + } + + return selectors; + + }, _selectors_group: function(){ - - /* - * selectors_group - * : selector [ COMMA S* selector ]* - * ; - */ var tokenStream = this._tokenStream, selectors = [], selector; - + selector = this._selector(); if (selector !== null){ - + selectors.push(selector); while(tokenStream.match(Tokens.COMMA)){ this._readWhitespace(); @@ -5351,105 +3377,66 @@ Parser.prototype = function(){ return selectors.length ? selectors : null; }, - - //CSS3 Selectors _selector: function(){ - /* - * selector - * : simple_selector_sequence [ combinator simple_selector_sequence ]* - * ; - */ - + var tokenStream = this._tokenStream, selector = [], nextSelector = null, combinator = null, ws = null; - - //if there's no simple selector, then there's no selector nextSelector = this._simple_selector_sequence(); if (nextSelector === null){ return null; } - + selector.push(nextSelector); - + do { - - //look for a combinator combinator = this._combinator(); - + if (combinator !== null){ selector.push(combinator); nextSelector = this._simple_selector_sequence(); - - //there must be a next selector if (nextSelector === null){ - this._unexpectedToken(this.LT(1)); + this._unexpectedToken(tokenStream.LT(1)); } else { - - //nextSelector is an instance of SelectorPart selector.push(nextSelector); } } else { - - //if there's not whitespace, we're done - if (this._readWhitespace()){ - - //add whitespace separator + if (this._readWhitespace()){ ws = new Combinator(tokenStream.token().value, tokenStream.token().startLine, tokenStream.token().startCol); - - //combinator is not required combinator = this._combinator(); - - //selector is required if there's a combinator nextSelector = this._simple_selector_sequence(); - if (nextSelector === null){ + if (nextSelector === null){ if (combinator !== null){ this._unexpectedToken(tokenStream.LT(1)); } } else { - + if (combinator !== null){ selector.push(combinator); } else { selector.push(ws); } - + selector.push(nextSelector); - } + } } else { break; - } - + } + } } while(true); - + return new Selector(selector, selector[0].line, selector[0].col); }, - - //CSS3 Selectors _simple_selector_sequence: function(){ - /* - * simple_selector_sequence - * : [ type_selector | universal ] - * [ HASH | class | attrib | pseudo | negation ]* - * | [ HASH | class | attrib | pseudo | negation ]+ - * ; - */ - + var tokenStream = this._tokenStream, - - //parts of a simple selector elementName = null, modifiers = [], - - //complete selector text selectorText= "", - - //the different parts after the element name to search for components = [ - //HASH function(){ return tokenStream.match(Tokens.HASH) ? new SelectorSubPart(tokenStream.token().value, "id", tokenStream.token().startLine, tokenStream.token().startCol) : @@ -5466,36 +3453,27 @@ Parser.prototype = function(){ found = false, line, col; - - - //get starting line and column for the selector line = tokenStream.LT(1).startLine; col = tokenStream.LT(1).startCol; - + elementName = this._type_selector(); if (!elementName){ elementName = this._universal(); } - + if (elementName !== null){ selectorText += elementName; - } - - while(true){ + } - //whitespace means we're done + while(true){ if (tokenStream.peek() === Tokens.S){ break; } - - //check for each component while(i < len && component === null){ component = components[i++].call(this); } - + if (component === null){ - - //we don't have a selector if (selectorText === ""){ return null; } else { @@ -5504,45 +3482,32 @@ Parser.prototype = function(){ } else { i = 0; modifiers.push(component); - selectorText += component.toString(); + selectorText += component.toString(); component = null; } } - + return selectorText !== "" ? new SelectorPart(elementName, modifiers, selectorText, line, col) : null; - }, - - //CSS3 Selectors + }, _type_selector: function(){ - /* - * type_selector - * : [ namespace_prefix ]? element_name - * ; - */ - + var tokenStream = this._tokenStream, ns = this._namespace_prefix(), elementName = this._element_name(); - - if (!elementName){ - /* - * Need to back out the namespace that was read due to both - * type_selector and universal reading namespace_prefix - * first. Kind of hacky, but only way I can figure out - * right now how to not change the grammar. - */ + + if (!elementName){ if (ns){ tokenStream.unget(); if (ns.length > 1){ tokenStream.unget(); } } - + return null; - } else { + } else { if (ns){ elementName.text = ns + elementName.text; elementName.col -= ns.length; @@ -5550,172 +3515,120 @@ Parser.prototype = function(){ return elementName; } }, - - //CSS3 Selectors _class: function(){ - /* - * class - * : '.' IDENT - * ; - */ - + var tokenStream = this._tokenStream, token; - + if (tokenStream.match(Tokens.DOT)){ - tokenStream.mustMatch(Tokens.IDENT); + tokenStream.mustMatch(Tokens.IDENT); token = tokenStream.token(); - return new SelectorSubPart("." + token.value, "class", token.startLine, token.startCol - 1); + return new SelectorSubPart("." + token.value, "class", token.startLine, token.startCol - 1); } else { return null; } - + }, - - //CSS3 Selectors _element_name: function(){ - /* - * element_name - * : IDENT - * ; - */ - + var tokenStream = this._tokenStream, token; - + if (tokenStream.match(Tokens.IDENT)){ token = tokenStream.token(); - return new SelectorSubPart(token.value, "elementName", token.startLine, token.startCol); - + return new SelectorSubPart(token.value, "elementName", token.startLine, token.startCol); + } else { return null; } }, - - //CSS3 Selectors _namespace_prefix: function(){ - /* - * namespace_prefix - * : [ IDENT | '*' ]? '|' - * ; - */ var tokenStream = this._tokenStream, value = ""; - - //verify that this is a namespace prefix if (tokenStream.LA(1) === Tokens.PIPE || tokenStream.LA(2) === Tokens.PIPE){ - + if(tokenStream.match([Tokens.IDENT, Tokens.STAR])){ value += tokenStream.token().value; } - + tokenStream.mustMatch(Tokens.PIPE); value += "|"; - + } - - return value.length ? value : null; + + return value.length ? value : null; }, - - //CSS3 Selectors _universal: function(){ - /* - * universal - * : [ namespace_prefix ]? '*' - * ; - */ var tokenStream = this._tokenStream, value = "", ns; - + ns = this._namespace_prefix(); if(ns){ value += ns; } - + if(tokenStream.match(Tokens.STAR)){ value += "*"; } - + return value.length ? value : null; - + }, - - //CSS3 Selectors _attrib: function(){ - /* - * attrib - * : '[' S* [ namespace_prefix ]? IDENT S* - * [ [ PREFIXMATCH | - * SUFFIXMATCH | - * SUBSTRINGMATCH | - * '=' | - * INCLUDES | - * DASHMATCH ] S* [ IDENT | STRING ] S* - * ]? ']' - * ; - */ - + var tokenStream = this._tokenStream, value = null, ns, token; - + if (tokenStream.match(Tokens.LBRACKET)){ token = tokenStream.token(); value = token.value; value += this._readWhitespace(); - + ns = this._namespace_prefix(); - + if (ns){ value += ns; } - + tokenStream.mustMatch(Tokens.IDENT); - value += tokenStream.token().value; + value += tokenStream.token().value; value += this._readWhitespace(); - + if(tokenStream.match([Tokens.PREFIXMATCH, Tokens.SUFFIXMATCH, Tokens.SUBSTRINGMATCH, Tokens.EQUALS, Tokens.INCLUDES, Tokens.DASHMATCH])){ - - value += tokenStream.token().value; + + value += tokenStream.token().value; value += this._readWhitespace(); - + tokenStream.mustMatch([Tokens.IDENT, Tokens.STRING]); - value += tokenStream.token().value; + value += tokenStream.token().value; value += this._readWhitespace(); } - + tokenStream.mustMatch(Tokens.RBRACKET); - + return new SelectorSubPart(value + "]", "attribute", token.startLine, token.startCol); } else { return null; } }, - - //CSS3 Selectors _pseudo: function(){ - - /* - * pseudo - * : ':' ':'? [ IDENT | functional_pseudo ] - * ; - */ - + var tokenStream = this._tokenStream, pseudo = null, colons = ":", line, col; - + if (tokenStream.match(Tokens.COLON)){ - + if (tokenStream.match(Tokens.COLON)){ colons += ":"; } - + if (tokenStream.match(Tokens.IDENT)){ pseudo = tokenStream.token().value; line = tokenStream.token().startLine; @@ -5725,26 +3638,19 @@ Parser.prototype = function(){ col = tokenStream.LT(1).startCol - colons.length; pseudo = this._functional_pseudo(); } - + if (pseudo){ pseudo = new SelectorSubPart(colons + pseudo, "pseudo", line, col); } } - + return pseudo; }, - - //CSS3 Selectors _functional_pseudo: function(){ - /* - * functional_pseudo - * : FUNCTION S* expression ')' - * ; - */ - + var tokenStream = this._tokenStream, value = null; - + if(tokenStream.match(Tokens.FUNCTION)){ value = tokenStream.token().value; value += this._readWhitespace(); @@ -5752,41 +3658,27 @@ Parser.prototype = function(){ tokenStream.mustMatch(Tokens.RPAREN); value += ")"; } - + return value; }, - - //CSS3 Selectors _expression: function(){ - /* - * expression - * : [ [ PLUS | '-' | DIMENSION | NUMBER | STRING | IDENT ] S* ]+ - * ; - */ - + var tokenStream = this._tokenStream, value = ""; - + while(tokenStream.match([Tokens.PLUS, Tokens.MINUS, Tokens.DIMENSION, Tokens.NUMBER, Tokens.STRING, Tokens.IDENT, Tokens.LENGTH, Tokens.FREQ, Tokens.ANGLE, Tokens.TIME, - Tokens.RESOLUTION])){ - - value += tokenStream.token().value; - value += this._readWhitespace(); - } - - return value.length ? value : null; - - }, + Tokens.RESOLUTION, Tokens.SLASH])){ - //CSS3 Selectors + value += tokenStream.token().value; + value += this._readWhitespace(); + } + + return value.length ? value : null; + + }, _negation: function(){ - /* - * negation - * : NOT S* negation_arg S* ')' - * ; - */ var tokenStream = this._tokenStream, line, @@ -5794,7 +3686,7 @@ Parser.prototype = function(){ value = "", arg, subpart = null; - + if (tokenStream.match(Tokens.NOT)){ value = tokenStream.token().value; line = tokenStream.token().startLine; @@ -5805,22 +3697,15 @@ Parser.prototype = function(){ value += this._readWhitespace(); tokenStream.match(Tokens.RPAREN); value += tokenStream.token().value; - + subpart = new SelectorSubPart(value, "not", line, col); subpart.args.push(arg); } - + return subpart; }, - - //CSS3 Selectors - _negation_arg: function(){ - /* - * negation_arg - * : type_selector | universal | HASH | class | attrib | pseudo - * ; - */ - + _negation_arg: function(){ + var tokenStream = this._tokenStream, args = [ this._type_selector, @@ -5828,11 +3713,11 @@ Parser.prototype = function(){ function(){ return tokenStream.match(Tokens.HASH) ? new SelectorSubPart(tokenStream.token().value, "id", tokenStream.token().startLine, tokenStream.token().startCol) : - null; + null; }, this._class, this._attrib, - this._pseudo + this._pseudo ], arg = null, i = 0, @@ -5841,68 +3726,62 @@ Parser.prototype = function(){ line, col, part; - + line = tokenStream.LT(1).startLine; col = tokenStream.LT(1).startCol; - + while(i < len && arg === null){ - + arg = args[i].call(this); i++; } - - //must be a negation arg if (arg === null){ this._unexpectedToken(tokenStream.LT(1)); } - - //it's an element name if (arg.type == "elementName"){ part = new SelectorPart(arg, [], arg.toString(), line, col); } else { part = new SelectorPart(null, [arg], arg.toString(), line, col); } - - return part; + + return part; }, - + _declaration: function(){ - - /* - * declaration - * : property ':' S* expr prio? - * | /( empty )/ - * ; - */ - + var tokenStream = this._tokenStream, property = null, expr = null, prio = null, error = null, - invalid = null; - + invalid = null, + propertyName= ""; + property = this._property(); if (property !== null){ tokenStream.mustMatch(Tokens.COLON); this._readWhitespace(); - + expr = this._expr(); - - //if there's no parts for the value, it's an error if (!expr || expr.length === 0){ this._unexpectedToken(tokenStream.LT(1)); } - + prio = this._prio(); - + propertyName = property.toString(); + if (this.options.starHack && property.hack == "*" || + this.options.underscoreHack && property.hack == "_") { + + propertyName = property.text; + } + try { - this._validateProperty(property, expr); + this._validateProperty(propertyName, expr); } catch (ex) { invalid = ex; } - + this.fire({ type: "property", property: property, @@ -5911,60 +3790,46 @@ Parser.prototype = function(){ line: property.line, col: property.col, invalid: invalid - }); - + }); + return true; } else { return false; } }, - + _prio: function(){ - /* - * prio - * : IMPORTANT_SYM S* - * ; - */ - + var tokenStream = this._tokenStream, result = tokenStream.match(Tokens.IMPORTANT_SYM); - + this._readWhitespace(); return result; }, - - _expr: function(){ - /* - * expr - * : term [ operator term ]* - * ; - */ - + + _expr: function(inFunction){ + var tokenStream = this._tokenStream, values = [], - //valueParts = [], value = null, operator = null; - + value = this._term(); if (value !== null){ - + values.push(value); - + do { - operator = this._operator(); - - //if there's an operator, keep building up the value parts + operator = this._operator(inFunction); if (operator){ values.push(operator); } /*else { - //if there's not an operator, you have a full value - values.push(new PropertyValue(valueParts, valueParts[0].line, valueParts[0].col)); - valueParts = []; - }*/ - + values.push(new PropertyValue(valueParts, valueParts[0].line, valueParts[0].col)); + valueParts = []; + }*/ + value = this._term(); - + if (value === null){ break; } else { @@ -5972,54 +3837,34 @@ Parser.prototype = function(){ } } while(true); } - - //cleanup - /*if (valueParts.length){ - values.push(new PropertyValue(valueParts, valueParts[0].line, valueParts[0].col)); - }*/ - + return values.length > 0 ? new PropertyValue(values, values[0].line, values[0].col) : null; }, - - _term: function(){ - - /* - * term - * : unary_operator? - * [ NUMBER S* | PERCENTAGE S* | LENGTH S* | ANGLE S* | - * TIME S* | FREQ S* | function | ie_function ] - * | STRING S* | IDENT S* | URI S* | UNICODERANGE S* | hexcolor - * ; - */ - + + _term: function(){ + var tokenStream = this._tokenStream, unary = null, value = null, token, line, col; - - //returns the operator or null unary = this._unary_operator(); if (unary !== null){ line = tokenStream.token().startLine; col = tokenStream.token().startCol; - } - - //exception for IE filters + } if (tokenStream.peek() == Tokens.IE_FUNCTION && this.options.ieFilters){ - + value = this._ie_function(); if (unary === null){ line = tokenStream.token().startLine; col = tokenStream.token().startCol; } - - //see if there's a simple match } else if (tokenStream.match([Tokens.NUMBER, Tokens.PERCENTAGE, Tokens.LENGTH, Tokens.ANGLE, Tokens.TIME, Tokens.FREQ, Tokens.STRING, Tokens.IDENT, Tokens.URI, Tokens.UNICODE_RANGE])){ - + value = tokenStream.token().value; if (unary === null){ line = tokenStream.token().startLine; @@ -6027,24 +3872,13 @@ Parser.prototype = function(){ } this._readWhitespace(); } else { - - //see if it's a color token = this._hexcolor(); if (token === null){ - - //if there's no unary, get the start of the next token for line/col info if (unary === null){ line = tokenStream.LT(1).startLine; col = tokenStream.LT(1).startCol; - } - - //has to be a function + } if (value === null){ - - /* - * This checks for alpha(opacity=0) style of IE - * functions. IE_FUNCTION only presents progid: style. - */ if (tokenStream.LA(3) == Tokens.EQUALS && this.options.ieFilters){ value = this._ie_function(); } else { @@ -6052,66 +3886,49 @@ Parser.prototype = function(){ } } - /*if (value === null){ - return null; - //throw new Error("Expected identifier at line " + tokenStream.token().startLine + ", character " + tokenStream.token().startCol + "."); - }*/ - } else { value = token.value; if (unary === null){ line = token.startLine; col = token.startCol; - } + } } - - } - + + } + return value !== null ? new PropertyValuePart(unary !== null ? unary + value : value, line, col) : null; - + }, - + _function: function(){ - - /* - * function - * : FUNCTION S* expr ')' S* - * ; - */ - + var tokenStream = this._tokenStream, functionText = null, expr = null, lt; - + if (tokenStream.match(Tokens.FUNCTION)){ functionText = tokenStream.token().value; this._readWhitespace(); - expr = this._expr(); + expr = this._expr(true); functionText += expr; - - //START: Horrible hack in case it's an IE filter if (this.options.ieFilters && tokenStream.peek() == Tokens.EQUALS){ do { - + if (this._readWhitespace()){ functionText += tokenStream.token().value; } - - //might be second time in the loop if (tokenStream.LA(0) == Tokens.COMMA){ functionText += tokenStream.token().value; } - + tokenStream.match(Tokens.IDENT); functionText += tokenStream.token().value; - + tokenStream.match(Tokens.EQUALS); functionText += tokenStream.token().value; - - //functionText += this._term(); lt = tokenStream.peek(); while(lt != Tokens.COMMA && lt != Tokens.S && lt != Tokens.RPAREN){ tokenStream.get(); @@ -6121,86 +3938,61 @@ Parser.prototype = function(){ } while(tokenStream.match([Tokens.COMMA, Tokens.S])); } - //END: Horrible Hack - - tokenStream.match(Tokens.RPAREN); + tokenStream.match(Tokens.RPAREN); functionText += ")"; this._readWhitespace(); - } - + } + return functionText; - }, - + }, + _ie_function: function(){ - - /* (My own extension) - * ie_function - * : IE_FUNCTION S* IDENT '=' term [S* ','? IDENT '=' term]+ ')' S* - * ; - */ - + var tokenStream = this._tokenStream, functionText = null, expr = null, lt; - - //IE function can begin like a regular function, too if (tokenStream.match([Tokens.IE_FUNCTION, Tokens.FUNCTION])){ functionText = tokenStream.token().value; - + do { - + if (this._readWhitespace()){ functionText += tokenStream.token().value; } - - //might be second time in the loop if (tokenStream.LA(0) == Tokens.COMMA){ functionText += tokenStream.token().value; } - + tokenStream.match(Tokens.IDENT); functionText += tokenStream.token().value; - + tokenStream.match(Tokens.EQUALS); functionText += tokenStream.token().value; - - //functionText += this._term(); lt = tokenStream.peek(); while(lt != Tokens.COMMA && lt != Tokens.S && lt != Tokens.RPAREN){ tokenStream.get(); functionText += tokenStream.token().value; lt = tokenStream.peek(); } - } while(tokenStream.match([Tokens.COMMA, Tokens.S])); - - tokenStream.match(Tokens.RPAREN); + } while(tokenStream.match([Tokens.COMMA, Tokens.S])); + + tokenStream.match(Tokens.RPAREN); functionText += ")"; this._readWhitespace(); - } - + } + return functionText; - }, - + }, + _hexcolor: function(){ - /* - * There is a constraint on the color that it must - * have either 3 or 6 hex-digits (i.e., [0-9a-fA-F]) - * after the "#"; e.g., "#000" is OK, but "#abcd" is not. - * - * hexcolor - * : HASH S* - * ; - */ - + var tokenStream = this._tokenStream, token = null, color; - + if(tokenStream.match(Tokens.HASH)){ - - //need to do some validation here - + token = tokenStream.token(); color = token.value; if (!/#[a-f0-9]{3,6}/i.test(color)){ @@ -6208,124 +4000,98 @@ Parser.prototype = function(){ } this._readWhitespace(); } - + return token; }, - - //----------------------------------------------------------------- - // Animations methods - //----------------------------------------------------------------- - + _keyframes: function(){ - - /* - * keyframes: - * : KEYFRAMES_SYM S* keyframe_name S* '{' S* keyframe_rule* '}' { - * ; - */ var tokenStream = this._tokenStream, token, tt, - name; - + name, + prefix = ""; + tokenStream.mustMatch(Tokens.KEYFRAMES_SYM); + token = tokenStream.token(); + if (/^@\-([^\-]+)\-/.test(token.value)) { + prefix = RegExp.$1; + } + this._readWhitespace(); name = this._keyframe_name(); - + this._readWhitespace(); tokenStream.mustMatch(Tokens.LBRACE); - + this.fire({ type: "startkeyframes", name: name, - line: name.line, - col: name.col - }); - + prefix: prefix, + line: token.startLine, + col: token.startCol + }); + this._readWhitespace(); tt = tokenStream.peek(); - - //check for key while(tt == Tokens.IDENT || tt == Tokens.PERCENTAGE) { this._keyframe_rule(); this._readWhitespace(); tt = tokenStream.peek(); - } - + } + this.fire({ type: "endkeyframes", name: name, - line: name.line, - col: name.col - }); - + prefix: prefix, + line: token.startLine, + col: token.startCol + }); + this._readWhitespace(); - tokenStream.mustMatch(Tokens.RBRACE); - + tokenStream.mustMatch(Tokens.RBRACE); + }, - + _keyframe_name: function(){ - - /* - * keyframe_name: - * : IDENT - * | STRING - * ; - */ var tokenStream = this._tokenStream, token; tokenStream.mustMatch([Tokens.IDENT, Tokens.STRING]); - return SyntaxUnit.fromToken(tokenStream.token()); + return SyntaxUnit.fromToken(tokenStream.token()); }, - + _keyframe_rule: function(){ - - /* - * keyframe_rule: - * : key_list S* - * '{' S* declaration [ ';' S* declaration ]* '}' S* - * ; - */ var tokenStream = this._tokenStream, token, keyList = this._key_list(); - + this.fire({ type: "startkeyframerule", keys: keyList, line: keyList[0].line, col: keyList[0].col - }); - - this._readDeclarations(true); - + }); + + this._readDeclarations(true); + this.fire({ type: "endkeyframerule", keys: keyList, line: keyList[0].line, col: keyList[0].col - }); - + }); + }, - + _key_list: function(){ - - /* - * key_list: - * : key [ S* ',' S* key]* - * ; - */ var tokenStream = this._tokenStream, token, key, keyList = []; - - //must be least one key keyList.push(this._key()); - + this._readWhitespace(); - + while(tokenStream.match(Tokens.COMMA)){ this._readWhitespace(); keyList.push(this._key()); @@ -6334,93 +4100,47 @@ Parser.prototype = function(){ return keyList; }, - + _key: function(){ - /* - * There is a restriction that IDENT can be only "from" or "to". - * - * key - * : PERCENTAGE - * | IDENT - * ; - */ - + var tokenStream = this._tokenStream, token; - + if (tokenStream.match(Tokens.PERCENTAGE)){ return SyntaxUnit.fromToken(tokenStream.token()); } else if (tokenStream.match(Tokens.IDENT)){ - token = tokenStream.token(); - + token = tokenStream.token(); + if (/from|to/i.test(token.value)){ return SyntaxUnit.fromToken(token); } - + tokenStream.unget(); } - - //if it gets here, there wasn't a valid token, so time to explode this._unexpectedToken(tokenStream.LT(1)); }, - - //----------------------------------------------------------------- - // Helper methods - //----------------------------------------------------------------- - - /** - * Not part of CSS grammar, but useful for skipping over - * combination of white space and HTML-style comments. - * @return {void} - * @method _skipCruft - * @private - */ _skipCruft: function(){ while(this._tokenStream.match([Tokens.S, Tokens.CDO, Tokens.CDC])){ - //noop } }, - - /** - * Not part of CSS grammar, but this pattern occurs frequently - * in the official CSS grammar. Split out here to eliminate - * duplicate code. - * @param {Boolean} checkStart Indicates if the rule should check - * for the left brace at the beginning. - * @param {Boolean} readMargins Indicates if the rule should check - * for margin patterns. - * @return {void} - * @method _readDeclarations - * @private - */ _readDeclarations: function(checkStart, readMargins){ - /* - * Reads the pattern - * S* '{' S* declaration [ ';' S* declaration ]* '}' S* - * or - * S* '{' S* [ declaration | margin ]? [ ';' S* [ declaration | margin ]? ]* '}' S* - * Note that this is how it is described in CSS3 Paged Media, but is actually incorrect. - * A semicolon is only necessary following a delcaration is there's another declaration - * or margin afterwards. - */ var tokenStream = this._tokenStream, tt; - + this._readWhitespace(); - + if (checkStart){ - tokenStream.mustMatch(Tokens.LBRACE); + tokenStream.mustMatch(Tokens.LBRACE); } - + this._readWhitespace(); try { - + while(true){ - + if (tokenStream.match(Tokens.SEMICOLON) || (readMargins && this._margin())){ - //noop } else if (this._declaration()){ if (!tokenStream.match(Tokens.SEMICOLON)){ break; @@ -6428,233 +4148,122 @@ Parser.prototype = function(){ } else { break; } - - //if ((!this._margin() && !this._declaration()) || !tokenStream.match(Tokens.SEMICOLON)){ - // break; - //} this._readWhitespace(); } - + tokenStream.mustMatch(Tokens.RBRACE); this._readWhitespace(); - + } catch (ex) { if (ex instanceof SyntaxError && !this.options.strict){ - - //fire error event this.fire({ type: "error", error: ex, message: ex.message, line: ex.line, col: ex.col - }); - - //see if there's another declaration + }); tt = tokenStream.advance([Tokens.SEMICOLON, Tokens.RBRACE]); if (tt == Tokens.SEMICOLON){ - //if there's a semicolon, then there might be another declaration - this._readDeclarations(false, readMargins); + this._readDeclarations(false, readMargins); } else if (tt != Tokens.RBRACE){ - //if there's a right brace, the rule is finished so don't do anything - //otherwise, rethrow the error because it wasn't handled properly throw ex; - } - + } + } else { - //not a syntax error, rethrow it throw ex; } - } - - }, - - /** - * In some cases, you can end up with two white space tokens in a - * row. Instead of making a change in every function that looks for - * white space, this function is used to match as much white space - * as necessary. - * @method _readWhitespace - * @return {String} The white space if found, empty string if not. - * @private - */ + } + + }, _readWhitespace: function(){ - + var tokenStream = this._tokenStream, ws = ""; - + while(tokenStream.match(Tokens.S)){ ws += tokenStream.token().value; } - + return ws; }, - - - /** - * Throws an error when an unexpected token is found. - * @param {Object} token The token that was found. - * @method _unexpectedToken - * @return {void} - * @private - */ _unexpectedToken: function(token){ throw new SyntaxError("Unexpected token '" + token.value + "' at line " + token.startLine + ", col " + token.startCol + ".", token.startLine, token.startCol); }, - - /** - * Helper method used for parsing subparts of a style sheet. - * @return {void} - * @method _verifyEnd - * @private - */ _verifyEnd: function(){ if (this._tokenStream.LA(1) != Tokens.EOF){ this._unexpectedToken(this._tokenStream.LT(1)); - } + } }, - - //----------------------------------------------------------------- - // Validation methods - //----------------------------------------------------------------- _validateProperty: function(property, value){ Validation.validate(property, value); }, - - //----------------------------------------------------------------- - // Parsing methods - //----------------------------------------------------------------- - - parse: function(input){ + + parse: function(input){ this._tokenStream = new TokenStream(input, Tokens); this._stylesheet(); }, - + parseStyleSheet: function(input){ - //just passthrough return this.parse(input); }, - + parseMediaQuery: function(input){ this._tokenStream = new TokenStream(input, Tokens); var result = this._media_query(); - - //if there's anything more, then it's an invalid selector this._verifyEnd(); - - //otherwise return result - return result; - }, - - /** - * Parses a property value (everything after the semicolon). - * @return {parserlib.css.PropertyValue} The property value. - * @throws parserlib.util.SyntaxError If an unexpected token is found. - * @method parserPropertyValue - */ - parsePropertyValue: function(input){ - - this._tokenStream = new TokenStream(input, Tokens); - this._readWhitespace(); - - var result = this._expr(); - - //okay to have a trailing white space - this._readWhitespace(); - - //if there's anything more, then it's an invalid selector - this._verifyEnd(); - - //otherwise return result return result; }, - - /** - * Parses a complete CSS rule, including selectors and - * properties. - * @param {String} input The text to parser. - * @return {Boolean} True if the parse completed successfully, false if not. - * @method parseRule - */ + parsePropertyValue: function(input){ + + this._tokenStream = new TokenStream(input, Tokens); + this._readWhitespace(); + + var result = this._expr(); + this._readWhitespace(); + this._verifyEnd(); + return result; + }, parseRule: function(input){ this._tokenStream = new TokenStream(input, Tokens); - - //skip any leading white space this._readWhitespace(); - + var result = this._ruleset(); - - //skip any trailing white space this._readWhitespace(); - - //if there's anything more, then it's an invalid selector this._verifyEnd(); - - //otherwise return result - return result; - }, - - /** - * Parses a single CSS selector (no comma) - * @param {String} input The text to parse as a CSS selector. - * @return {Selector} An object representing the selector. - * @throws parserlib.util.SyntaxError If an unexpected token is found. - * @method parseSelector - */ - parseSelector: function(input){ - - this._tokenStream = new TokenStream(input, Tokens); - - //skip any leading white space - this._readWhitespace(); - - var result = this._selector(); - - //skip any trailing white space - this._readWhitespace(); - - //if there's anything more, then it's an invalid selector - this._verifyEnd(); - - //otherwise return result return result; }, + parseSelector: function(input){ - /** - * Parses an HTML style attribute: a set of CSS declarations - * separated by semicolons. - * @param {String} input The text to parse as a style attribute - * @return {void} - * @method parseStyleAttribute - */ + this._tokenStream = new TokenStream(input, Tokens); + this._readWhitespace(); + + var result = this._selector(); + this._readWhitespace(); + this._verifyEnd(); + return result; + }, parseStyleAttribute: function(input){ input += "}"; // for error recovery in _readDeclarations() this._tokenStream = new TokenStream(input, Tokens); this._readDeclarations(); } }; - - //copy over onto prototype for (prop in additions){ if (additions.hasOwnProperty(prop)){ proto[prop] = additions[prop]; } - } - + } + return proto; }(); - - -/* -nth - : S* [ ['-'|'+']? INTEGER? {N} [ S* ['-'|'+'] S* INTEGER ]? | - ['-'|'+']? INTEGER | {O}{D}{D} | {E}{V}{E}{N} ] S* - ; -*/ -/*global Validation, ValidationTypes, ValidationError*/ var Properties = { - - //A + "align-items" : "flex-start | flex-end | center | baseline | stretch", + "align-content" : "flex-start | flex-end | center | space-between | space-around | stretch", + "align-self" : "auto | flex-start | flex-end | center | baseline | stretch", + "-webkit-align-items" : "flex-start | flex-end | center | baseline | stretch", + "-webkit-align-content" : "flex-start | flex-end | center | space-between | space-around | stretch", + "-webkit-align-self" : "auto | flex-start | flex-end | center | baseline | stretch", "alignment-adjust" : "auto | baseline | before-edge | text-before-edge | middle | central | after-edge | text-after-edge | ideographic | alphabetic | hanging | mathematical | | ", "alignment-baseline" : "baseline | use-script | before-edge | text-before-edge | after-edge | text-after-edge | central | middle | ideographic | alphabetic | hanging | mathematical", "animation" : 1, @@ -6665,50 +4274,48 @@ var Properties = { "animation-name" : { multi: "none | ", comma: true }, "animation-play-state" : { multi: "running | paused", comma: true }, "animation-timing-function" : 1, - - //vendor prefixed "-moz-animation-delay" : { multi: "
          Demande de documents pour Convention de Formation EFT

          -
          -Email:

          -Prénom:

          -Nom:

          -adresse:

          -cpl adresse:

          -code postal:

          -ville:

          -nom et adresse de votre entreprise (ou organisme) payeur:

          -profession:

          -Tel:

          -Dates de stage souhaitees:
          ${6}\n\ +snippet tfoot\n\ +
          ${1}${2}${2}${1}
          ${1}