musicality-0.1.0

https://rubygems.org

musicality

quick gemspec

.gem

.gem metadata (gemspec)

.gemspec

id: 743197

number: 0.1.0

platform: ruby

spec_sha256: cbe0e1cac8a0d303f92c13bf77d7af2d64cb5754f4350ffcfeaba990f11bf21d

sha256: dc4b236f9ec128ba461cde700a05bd2b02e1bf20448d0f43ab91f71e5af3cb91

created_at: 2024-05-13 08:25:05 UTC

updated_at: 2024-06-10 09:11:39 UTC

position: 16

version_data_entries_count: 139

uploaded_at: 2014-11-23 23:47:06 UTC

indexed: true

has_extensions:

extensions:

Gem size: 57.5 KB

Version Data Entries

Total: 139

Unpacked size: 278 KB

Full NameModeUIDGIDMtimeLinknameSizeSHA
examples/song2.rb10064400732 Bytes18e7735dffbf7f652b21a765f97840fe8886c462fad96935b5b60e95afd90438
lib/musicality.rb100644003.28 KBf0a33cb1687b1aa0957522c4f4bbd30e4642cbccd8069468d9e9682c41bd78ac
.gitignore10064400125 Bytes71b14209036c2fb0fc1b5fa5f174d51177c768624ebc812c09fa24848e3343ec
.rspec1006440026 Bytes6f8fcfc5bfd33096b5db508443f3d8bcd0a1561afceedec438b31bac3edc8571
.ruby-version100644006 Bytesc28fcca53637bc88e124af1725df13cb98c69dedefd62fb3cdbe1cdb6b760624
Gemfile1006440095 Bytes26debfeeaa8ab57510485482c0dca75427dd20831ecd0d8d2a6505cffaa4e543
LICENSE.txt100644001.04 KB3154bcc20cd49264ec8a3b4be2bd577b2b72fd48ed55f97f0ad70c2bed90f934
README.md100644001.14 KB5700d90e41d2a29552f4725ccd20c92f75682a6cc1989efaa3d50f15f488a476
Rakefile100644001.32 KBc037c81a4484628e9881470d983efaac5984b63a9d6748dee44c8b7fbe88c5b1
bin/midify100755001.93 KB9f7d059675226e29296b4a2613666f500c4cf1f9917e2250400c83acc67357d9
examples/hip.rb10064400866 Bytes4e375ce01a730fc6c2797a7c70525db75fb9175e0f71e5d930d41d2f062d3aa0
examples/missed_connection.rb10064400655 Bytes6db30a5a9671b87cb5aab9e120a0a2828444d40dc671d86124da70dcc3e79709
examples/song1.rb10064400846 Bytes5cf74808816c823831edc39474e5bc65e27f9e4d2f1ddf2760535d086338cea3
lib/musicality/errors.rb10064400334 Bytes451e2c70656304db6302db80478e63c6ac876f4ebda13c8ca06d0cf4834d6dd1
lib/musicality/notation/conversion/change_conversion.rb10064400344 Bytes9935724535661f69d8884d5daebc4756ee1548510b11d3cf9deb7517a49602e9
lib/musicality/notation/conversion/measure_note_map.rb100644001.16 KB973dd6b6344ff3da3b59aa1b9616b7fdad45da11ca360b63562fb395cff391fe
lib/musicality/notation/conversion/measured_score_conversion.rb100644001.71 KB992bf513f91dd9ced74433e4a8945c22b5a32411a5eb3cc53fb776bbb64090c9
lib/musicality/notation/conversion/measured_score_converter.rb100644003.12 KBf6bcf7d6869cfcd411cbd8f0bad35d8cd9d249850724730307d71f1f5ab5c1ca
lib/musicality/notation/conversion/note_time_converter.rb100644002.3 KBa38f485a26f01ca642934fbab18d7a8d1e58c4ea2445d0b0a2fc445b1713b885
lib/musicality/notation/conversion/tempo_conversion.rb10064400362 Bytesc196fc618df9b49e491853ec2e2e6bcfc27a9e226c55b165645c19ce9b0b99e7
lib/musicality/notation/conversion/unmeasured_score_conversion.rb100644001.21 KBcbb36f5a166d495124ac73c83bd25cd64e3fbe92d6b619d5e4653966d009d932
lib/musicality/notation/conversion/unmeasured_score_converter.rb100644001.84 KB7aa45c4f0dd5501522149f05a2e31f1926a13d49d0662fa50e55849e97921d87
lib/musicality/notation/model/articulations.rb10064400197 Bytes38e1c3ee8702c924c52d8df313641bcb02a00b899ddf53332ae0e11eb6a62c45
lib/musicality/notation/model/change.rb100644001.26 KB005baba70d6c1c095c90e71a984a0374d9d48a2e5a26df3ab03bfdf4588186ec
lib/musicality/notation/model/dynamics.rb10064400139 Bytes34e24b277398b7ec436ccc2d5cd4213210c33607b132bdac3349dbb057842385
lib/musicality/notation/model/link.rb100644001.28 KBbb6e2095c36e86e34033785646307390166e51e8c4b185a87a546c16d5f10cc6
lib/musicality/notation/model/meter.rb100644001.34 KB164ed5452987962bd8d9397ad3b0fdca077efa60c67ee41ec7b0fccd8c39f254
lib/musicality/notation/model/meters.rb10064400227 Bytesd7ad010170d301dd7636dffe597c232635422289d1dba61339012ec0b318604b
lib/musicality/notation/model/note.rb100644002.78 KB21540bac785943fa6f0e304be1331ac0839f8aec091b44e52ac674b9bc157274
lib/musicality/notation/model/part.rb100644001.16 KB065c58c8784aa1778ff9e051c4b7f8834e4d49dae4b48f2a09ea97170b22db94
lib/musicality/notation/model/pitch.rb100644004.22 KB8185593b4d7c58449ca2f3442c1d7b6deebf066969c659e52aebfbb1ab48aa55
lib/musicality/notation/model/pitches.rb10064400429 Bytes4053e8a56315ce88e071b3732b2c84209691139b82d92d9f7b3e1655f65239be
lib/musicality/notation/model/program.rb100644001.2 KB3ba7f7ac4dd84d7e776c2447bc868e9390d6df1836276586feb76686f4935e99
lib/musicality/notation/model/score.rb100644003.54 KB17f980dede02b4b6e0167c1f2ba68b00ae54819d478f52dc9403162375ff7c8c
lib/musicality/notation/packing/change_packing.rb10064400880 Bytesf1e66bfbcf24f01a097f2d46d187c37da52e03a7fbe8f3d3c00d105850638038
lib/musicality/notation/packing/part_packing.rb10064400670 Bytesebc3e5dff0a499067b40df86544f40f1af6fa6141ac8c69e27e9cca9803f6117
lib/musicality/notation/packing/program_packing.rb10064400215 Bytesce044c2a6b3a37479628009a7901bfdc2071bef04fdc13ea22adb0c2564cb41d
lib/musicality/notation/packing/score_packing.rb100644002.51 KB650ac55261bc340aa81908ea00d0f3b46e6e12f13d830c456f345af85e2b2bee
lib/musicality/notation/parsing/articulation_parsing.rb100644005.99 KB3fe9691fe6fa8b43fbad02b324009352fcfc5a5d7432f5773ada3f2b16530123
lib/musicality/notation/parsing/articulation_parsing.treetop10064400871 Bytes4e6ea03d1913b097ab94b9e47d253d8b4298edc7e4d5863fe113da34ad83fd60
lib/musicality/notation/parsing/convenience_methods.rb100644001.36 KBca7217d360c9b27d859c66c7cb2bd93d125aa7a12a8381a19030ee0835dc7d3e
lib/musicality/notation/parsing/duration_nodes.rb10064400389 Bytesdd3c2fb5dd16a8a1dcfb3db9727c2b9a004401b691da984d12dbd98c5d5d0d1b
lib/musicality/notation/parsing/duration_parsing.rb100644004.01 KB8117c823dff0fad67fb6bf8f36b4bd1786f3e43c30fd81e1ad2db8907f7aeca1
lib/musicality/notation/parsing/duration_parsing.treetop10064400386 Bytesb2c5b0bf07751b0aedc8f1cc73911165da49b244802ed143e7b569b52210c0ce
lib/musicality/notation/parsing/link_nodes.rb10064400655 Bytes9baf10338f9c0a76f11f3fcb604b70876b7b597d9ea0bf002a41ec3a4bb76363
lib/musicality/notation/parsing/link_parsing.rb100644005.45 KB7658b777d3d0bac04e2fde1cb7887490f79a1af095e162ac684abe821138fa4b
lib/musicality/notation/parsing/link_parsing.treetop10064400439 Bytes73bd82a8d09fd0c1fae23194e2bf20fc800de3fdbf40065611e06b9255b42cf0
lib/musicality/notation/parsing/meter_parsing.rb100644003.52 KB9b783094ce990f3d2c5aa6d2d5358d4c6c2de1f8bac073d549f60b18f63456d0
lib/musicality/notation/parsing/meter_parsing.treetop10064400502 Bytes88038b444f0ee8d4816ddeef504770fc21c44303788b546be3415a6c220c9a7e
lib/musicality/notation/parsing/note_node.rb10064400982 Bytesf3d6591aae353a12f36252c591132d9a5dc36966b46e3d74b5df9ff9830c8544
lib/musicality/notation/parsing/note_parsing.rb100644004.28 KB7a450da3b7b321319dbbc4054a2a155595444a6a5cab8432e08b731549540424
lib/musicality/notation/parsing/note_parsing.treetop10064400360 Bytes15c15123a28d0d4107cdb48f76eb20f978c62433ed3199b06315d9c57aa94682
lib/musicality/notation/parsing/numbers/nonnegative_float_parsing.rb100644005.93 KB43581cc019d59a9a49ba4a080976eab826e848493dd8adc82462d2be8ebdbd2b
lib/musicality/notation/parsing/numbers/nonnegative_float_parsing.treetop10064400356 Bytes0412b46ea3619e341135cfdbbc042837d78ccee6d703d9b086cd6ad60b65515d
lib/musicality/notation/parsing/numbers/nonnegative_integer_parsing.rb100644001.24 KBfeffb2996e7c6abcdf41473c7a76022467fcfa9fea2d09d75d8a05fc67ea7ff5
lib/musicality/notation/parsing/numbers/nonnegative_integer_parsing.treetop10064400207 Bytes7c89ca71870e8666ce4c4d18fc47b5400a1f9c30ae4f05a1c09ebe511a60c320
lib/musicality/notation/parsing/numbers/nonnegative_rational_parsing.rb100644001.6 KBcc4479dd280a10b2fbdcd82c6c00bfe16e94198f6baef67a9028137c0e7d1d8d
lib/musicality/notation/parsing/numbers/nonnegative_rational_parsing.treetop10064400301 Bytes0991550c2839cd4b0c12fa0c98f51648ba938bd335ee679c8829078278f4b3cd
lib/musicality/notation/parsing/numbers/positive_float_parsing.rb1006440011.1 KBedf3104f434c45dac0b00a5dda009b1b39df334835e7193542c3254dd4f46192
lib/musicality/notation/parsing/numbers/positive_float_parsing.treetop10064400446 Bytese0716401daf4d4db412db9fad2f89d3cbd869a51c13387f84afbb5b295d2f4b0
lib/musicality/notation/parsing/numbers/positive_integer_parsing.rb100644001.82 KB9e56c4a1ce4f6bd393982ecb0405892d33b3b0086794640c72ae10adec27dc28
lib/musicality/notation/parsing/numbers/positive_integer_parsing.treetop10064400257 Bytes949183e8145debc577291a957227a969e92984704d956d067bd2cceee490e4f4
lib/musicality/notation/parsing/numbers/positive_rational_parsing.rb100644001.53 KB3af72b6e30bbced0bec3e092013207c99a4aef80801ecad83b13858e8db5e0ec
lib/musicality/notation/parsing/numbers/positive_rational_parsing.treetop10064400263 Bytes6e12435a5d42d643bed9257b44f107eee1d70d997713175c70ce3e0139dd31ce
lib/musicality/notation/parsing/parseable.rb10064400569 Bytes73df1d017b67112b7f6aa2b680724b9bd342c9595556861ff3ce8e18e49c9949
lib/musicality/notation/parsing/pitch_node.rb10064400476 Bytes0cd6c8aa075e9266184f516ff1171d6c231953f1dc3ae9c0ba3df5ce2c5ae70a
lib/musicality/notation/parsing/pitch_parsing.rb100644009.73 KBbc3bdc16acfeea2f57012914cc819d650052edae59161e00abe4ac761672e9ce
lib/musicality/notation/parsing/pitch_parsing.treetop10064400871 Bytesbdb7a948e5e96de2e8b5aab772565a015f379337448772ceeddf67d455d82997
lib/musicality/notation/parsing/segment_parsing.rb100644002.69 KB9ea96dda08e3443fa17de7f96f5eaa9dd25c808a885048f06a4eb8a6e894efc0
lib/musicality/notation/parsing/segment_parsing.treetop10064400408 Bytes1440fcb37698acbdc8a54e040bd88e5444884b32dea154a3b59afb1db1f7ace1
lib/musicality/notation/util/interpolation.rb10064400484 Bytesdb86c826a8b1c15554503bc95615946cca57878890df11fa24cf0cbcf0388cd2
lib/musicality/notation/util/piecewise_function.rb100644003.25 KBb98b653c696c3d16faabcaf9a6ae64a6f7b736a3e2801104a4ed99446251b3c8
lib/musicality/notation/util/value_computer.rb100644004.82 KB5eb7f501ae64a0d1e15877ffa447f59b252dd74f94a037dad8982cd52c7cb26b
lib/musicality/performance/conversion/glissando_converter.rb10064400875 Bytesab7c3784560287c8e511daaabd93e06a0ed0a86a8e15bc8870674b6e494e4c81
lib/musicality/performance/conversion/note_sequence_extractor.rb100644002.89 KB594477187d10bcf1bc8fa3c6abd594f9d8ae8c1f7a8803121ff830c5dfd09d5f
lib/musicality/performance/conversion/portamento_converter.rb10064400761 Bytesf622b6d5f21f0fc3c3fd694263107019e3b308534b0cc143270086b4e275bf75
lib/musicality/performance/conversion/score_collator.rb100644003.48 KB85ff19220b2831a39b0d6ae35e6f7fc618c245d73f2a2d4bbc3acf24a5ad63b2
lib/musicality/performance/midi/midi_events.rb10064400579 Bytesc78ef2370e312d7edb5f7ba7a8b1944f8eafd68275ea24addafaa18aff10cfa2
lib/musicality/performance/midi/midi_util.rb10064400601 Bytes39d422abe233f162a415ba0372e9acf6671e9a6a225d9bc9d0b898d4b82a0eef
lib/musicality/performance/midi/part_sequencer.rb100644003.46 KB1f13d8e9c965594799487b0d15b15a8540bf0963f5062a159f541f72a0e4dd0f
lib/musicality/performance/midi/score_sequencer.rb100644001.32 KB4a4059a94b1df37be751c0ad667629d6ab3bd712001136f9811474af044e37fb
lib/musicality/performance/model/note_attacks.rb10064400286 Bytes242033617c54322e055e4503ac23fbd8a3665c85368ac253be18144ea96e6e8c
lib/musicality/performance/model/note_sequence.rb100644002.77 KB4544f258b730e9b0a6356feb13f46c4500a8c96512398ccf71ed646b6e202a29
lib/musicality/performance/util/note_linker.rb10064400792 Bytese91f8e24dee545940963cf3a0346e8a9731fb98444cc44d66b63704db4e66de9
lib/musicality/performance/util/optimization.rb10064400630 Byteseaec12f688d1c7e0726af948f42ec3f1a17a3c0e3600e3c048dc79018b0eb26b
lib/musicality/validatable.rb10064400680 Bytesbffd062657db030bb1d8d1cebef322d34d5d4938e921e31590aff00f206b9b41
lib/musicality/version.rb1006440042 Bytes037c42d58281a7e8b47136472dfa4f62b683b5d40c1b5aa3af1ec31992e6f504
musicality.gemspec100644001.38 KBffd8487843d79de93efbe0add2a4e1f0644fa70c6623484e4ddc266fe5b9dd48
spec/musicality_spec.rb10064400150 Bytes72c478dea6ea1f77d765e854a2ed119f094a419a080808fa66f57915ab8cb0de
spec/notation/conversion/change_conversion_spec.rb100644001.06 KB31086099520990f3a136b0cbb8b62fdf68a57ff423ea593ccbdc26645c5fc4e4
spec/notation/conversion/measure_note_map_spec.rb100644002.62 KBd7576a6b2e6dfb3d30b7bb162daac7ec7c1fe378e7998014bb81959649aa57fd
spec/notation/conversion/measured_score_conversion_spec.rb100644004.02 KB71e3538c058769aed1d83c1df255cf8a95564a4124a537915a3a9198aff150ed
spec/notation/conversion/measured_score_converter_spec.rb1006440013.1 KB09893beba8eb7024bcb2fca41ba3ba64b30a6541d43babfe336858886e4354d6
spec/notation/conversion/note_time_converter_spec.rb100644002.56 KB05d2ec30bfe40c57fa1f01027e656ca40a7a4a51030d19c3dd7dbdd161157f73
spec/notation/conversion/tempo_conversion_spec.rb100644001023 Bytesaf44bca10d1866984d4c1165fd1151ed035c445af58c387803b7133cdacdd9ee
spec/notation/conversion/unmeasured_score_conversion_spec.rb100644002.06 KB298b314389384a0b50567111a61bc55d6ab69e723117ab7bf118bb43d018ba3e
spec/notation/conversion/unmeasured_score_converter_spec.rb100644004.07 KBac459dd0ea21201d2d54d6f40f802eae9b546572ec7327da2346db77308ecba1
spec/notation/model/change_spec.rb100644002.71 KBf574f27d0b7dbc143c381899e769fd8daf6c682d2159fa1cf1c6f1e2a8d7564b
spec/notation/model/link_spec.rb100644002.05 KBc1f8acb963585edc25dad65836ee75073a6a4e5f9c52048598af49da0f513f23
spec/notation/model/meter_spec.rb100644002.71 KB78fe9b2e2d52a87a11abf6cae2cd009a73aefd93cfe768e217e5f1d8eaeab17f
spec/notation/model/note_spec.rb100644005.06 KBb99cb8c73c8e8c3704262575790b4427eaac2393301756179175c311dd1c01f8
spec/notation/model/part_spec.rb100644002.35 KB22df89bba3b6df3c3c88800cbcebc581deea47b89e618926720d5fdc537d9e98
spec/notation/model/pitch_spec.rb100644005.84 KBb3d137f67d125069e4a1fc750ddf59d3ada4e614f7fcb3a341c0ee0f32736327
spec/notation/model/program_spec.rb100644001.38 KBb08c2d5825bc06072425008e4e9e3e0b70264365d90a04323b988a98f0dde482
spec/notation/model/score_spec.rb100644006.67 KBe2f4a3083f3945016177d360530450dd9283e00f187e39f217c5cbde7d804539
spec/notation/packing/change_packing_spec.rb100644003.92 KBc4bbb59ea7312032e774065a096437414f8b37ba2afc72379f63aca7927b6ed3
spec/notation/packing/part_packing_spec.rb100644001.67 KB300055a4d154dbd3adf5899c624776a7f7e30a59daeaada47cb77ef0d0762b71
spec/notation/packing/program_packing_spec.rb10064400774 Bytesed83919a51a3f6ed3211b6cbb256000187e11203f0b09b172da3516db0bd6270
spec/notation/packing/score_packing_spec.rb100644007.83 KBe8f1ee25f6b8696eee729f5c443ce12e12633a86c02b364561a41f05426cff0e
spec/notation/parsing/articulation_parsing_spec.rb10064400542 Bytes188b0d1dd61fcc4ea3bbfc3cc5a2aaef701b94fb36673d11ec8b6e0ed226ef4e
spec/notation/parsing/convenience_methods_spec.rb100644002.58 KBd3a1bdbc726cf7a87521bc2d81a3272839427239dd9df89bb9d1883b41120cc0
spec/notation/parsing/duration_nodes_spec.rb100644001.84 KB578efb6bbfa6204cfed2db4a6cec443865fd3759215779c7de47a43b197e053e
spec/notation/parsing/duration_parsing_spec.rb100644001.92 KBc6e03cb8d668bff44362bf2225fb9a6e999f4dd05cf795f97f5d471f6d5f6784
spec/notation/parsing/link_nodes_spec.rb10064400736 Bytesddccc878467072e5f2c4f339f53aeacc427d52606bb0d77421fd7ca43a89b906
spec/notation/parsing/link_parsing_spec.rb10064400293 Bytese8fa5c299f612fd1d835f61efc804ed09b7d115bee4fc69d3c91eb6c7a566521
spec/notation/parsing/meter_parsing_spec.rb10064400546 Bytes260c5f78c17a9d36e6e7dd16e0eb259ea17c376d49a82f7b551f6bb99e1cf038
spec/notation/parsing/note_node_spec.rb100644002.48 KB041e3838fd83f3dacb9a32a248c5aa7faf5fca5c80aa3814f7f2c2ff92dde477
spec/notation/parsing/note_parsing_spec.rb100644001.51 KB97f7ec988a4e93f7e9adbe6b0ff07fafa08560cd0d3ee441fc77f5daf233db26
spec/notation/parsing/numbers/nonnegative_float_spec.rb10064400772 Bytes2f0a402ba9e3e941058e99aa4b6f8631c19a542367749b6aad1e748304b62b8b
spec/notation/parsing/numbers/nonnegative_integer_spec.rb10064400311 Bytesa9e69af3d504d1f966f9926c5ceaa01ddca75cba4c8352f49172de8447ef78ba
spec/notation/parsing/numbers/nonnegative_rational_spec.rb10064400325 Bytes7f2cd4414cc28bde171e3990b535075810611c21f3593e78344682ffa55e509b
spec/notation/parsing/numbers/positive_float_spec.rb10064400769 Bytes6c3d2ad4033c5c069eb23c1a49513e33cbbc7c288e59865070cc2f7562310bde
spec/notation/parsing/numbers/positive_integer_spec.rb10064400691 Bytesafc108acfce7ff1757a8282afe837141e57eb2a600c413b28ec3adb0b9d8b627
spec/notation/parsing/numbers/positive_rational_spec.rb10064400732 Bytes81a0df8ce79902239cbc04c2c85f3c193b530799b4f2ede77b90b1ce93a6abef
spec/notation/parsing/pitch_node_spec.rb10064400946 Bytesd924af950ed9a5004b292af394f4d5107dc742c04e71e35435862bbbf504e80b
spec/notation/parsing/pitch_parsing_spec.rb10064400335 Bytes6ced42a780ab6cded6f946a24051eee79476529823c78d0ae9e4343e8016b144
spec/notation/parsing/segment_parsing_spec.rb10064400810 Bytesa9fddc9372474f0ec61a797b1c008858f61322d25bbf9cb86e1624d2e3d79730
spec/notation/util/value_computer_spec.rb100644005.63 KBfab6d9de133870dcf25964ac50f410794b8413ffaf1093f892efefd318da1a3a
spec/performance/conversion/glissando_converter_spec.rb100644002.89 KB2ca37bc71f960b62a67805c87070e261c28c8c67c9248d2cb9393bc77e7184d4
spec/performance/conversion/note_sequence_extractor_spec.rb100644007.32 KB1c16874838b3f0225745d8ca862b3b7969c4d97944e82ee295fe9b1eece86a9e
spec/performance/conversion/portamento_converter_spec.rb100644002.94 KBd23b93114ce6c26ab90122979cdd38ba94c4af861b278c4014573ad0e50aba2b
spec/performance/conversion/score_collator_spec.rb100644006.55 KB3db05d2c4f3d65033985bbd94bcaa8705cf2c44b4df0364ebda5472afa8eb217
spec/performance/midi/midi_util_spec.rb100644002.85 KB977115a1f1ed4e5433e5417f509972f25a1cafe91fc6c92de45c82d07d6ec912
spec/performance/midi/part_sequencer_spec.rb100644001.2 KB73b507f5736b047858c1e6aec0fabaaed20d62b80e34a67d5f10926fa9145bb3
spec/performance/midi/score_sequencer_spec.rb100644001.81 KBc96016402680c1b07b13fae1dd914ef6112e7b35ec757c5f3935d0e4bdbbc990
spec/performance/model/note_sequence_spec.rb100644004.81 KBbf7ed81817ed9c7ccff2b635e90546cfa3d9c251529421dea5cff4aa66b2e7d9
spec/performance/util/note_linker_spec.rb100644003.35 KB42d530095be6c50d2aeebcdad6e9ff54565702b8efceacc12eb45fc3ce664e92
spec/performance/util/optimization_spec.rb100644002.64 KB9840823240b052dc636ed7ea2c31ef7e3609d15501fc6fb4fec5d073c0e9a44d
spec/spec_helper.rb10064400740 Bytescd9d980bf2043a5088f2e1aac0264043df000ce013cd21cc53911d22007fbcff